> Can someone enlighten me... the ActiveMonitor does not report any file
> changes hear as he is supposed to... I just don't get the events :(

ok... I have been debugging the active monitor... and I run into this:


in FileResource.java:

    public long lastModified()
    {
        return m_file.lastModified();
    }


in Resource.java:

    public void testModifiedAfter( long time )
    {
        long lastModified = this.lastModified();
        if( lastModified > time )
        {
            m_eventSupport.firePropertyChange( Resource.MODIFIED,
                                               new Long( m_previousModified ),
                                               new Long( lastModified ) );
            m_previousModified = lastModified;
        }
    }

Now what the active monitor does is to call the "testModifiedAfter" with
the "System.currentTimeMillis()" as an argument. On a change the
"testModifierAfter" is supposed to fire the "Resource.MODIFIED" event.

But AFAICS the current code does something else.... If you break it down
you get:

   if ( file.lastModified() > System.currentTimeMillis() ) {
      // fire event
   }

Which is not much likely to happen... ;-)
Shouldn't it be:

  if ( file.lastModified() > m_previousModified ) {
    // fire event
    m_previousModified = file.lastModified()
  }

But then the "time" argument wouldn't make much sense...

Comments?
--
Torsten


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to