1 19 package org.apache.avalon.excalibur.monitor.test; 20 21 import java.beans.PropertyChangeEvent ; 22 import java.beans.PropertyChangeListener ; 23 24 import org.apache.avalon.framework.logger.AbstractLogEnabled; 25 26 29 class MonitorTCListener 30 extends AbstractLogEnabled 31 implements PropertyChangeListener 32 { 33 private volatile boolean m_hasChanged = false; 34 35 public boolean hasBeenModified() 36 { 37 return m_hasChanged; 38 } 39 40 public void reset() 41 { 42 m_hasChanged = false; 43 } 44 45 public void propertyChange( final PropertyChangeEvent propertyChangeEvent ) 46 { 47 m_hasChanged = true; 48 49 if( getLogger().isInfoEnabled() ) 50 { 51 getLogger().info( "NOTIFICATION LATENCY: " + ( System.currentTimeMillis() - 52 ( (Long )propertyChangeEvent.getNewValue() ).longValue() ) + 53 "ms" ); 54 getLogger().info( "Received notification for " + 55 ( (MockResource)propertyChangeEvent.getSource() ).getResourceKey() ); 56 getLogger().info( propertyChangeEvent.getPropertyName() + 57 "\n IS::" + (Long )propertyChangeEvent.getNewValue() + 58 "\n WAS::" + (Long )propertyChangeEvent.getOldValue() + 59 "\n TIME SINCE LAST MOD::" + 60 ( ( (Long )propertyChangeEvent.getNewValue() ).longValue() - 61 ( (Long )propertyChangeEvent.getOldValue() ).longValue() ) ); 62 } 63 } 64 } 65 | Popular Tags |