Public Member Functions | Protected Member Functions | Protected Attributes

alma.ACS.impl.CommonMonitorImpl Class Reference

Inheritance diagram for alma.ACS.impl.CommonMonitorImpl:
alma.ACS.jbaci.BACITimer.TimerRunnable alma.ACS.jbaci.PrioritizedRunnable alma.ACS.jbaci.BACIDispatchAction.DispatchFailedListener alma.ACS.impl.CommonComparableMonitorImpl alma.ACS.impl.HistoryMonitorImpl alma.ACS.impl.MonitordoubleImpl alma.ACS.impl.MonitorfloatImpl alma.ACS.impl.MonitorlongImpl alma.ACS.impl.MonitorlongLongImpl alma.ACS.impl.MonitorpatternImpl alma.ACS.impl.MonitorstringImpl alma.ACS.impl.MonitorstringSeqImpl alma.ACS.impl.MonitoruLongLongImpl

List of all members.

Public Member Functions

 CommonMonitorImpl (CommonPropertyImpl property, Callback callback, CBDescIn descIn)
 CommonMonitorImpl (CommonPropertyImpl property, Callback callback, CBDescIn descIn, long startTime)
void dispatchFailed (BACIDispatchAction action, DispatchRequest failedRequest)
void schedule ()
BACIPriority getPriority ()
void timeout (long timeToRun)
void run ()
long start_time ()
void set_timer_trigger (long timeInterval)
void get_timer_trigger (LongHolder timeIntervalHolder)
synchronized void suspend ()
synchronized void resume ()
synchronized void destroy ()

Protected Member Functions

 CommonMonitorImpl ()
void initialize ()
void setTimeTrigger (long timeInterval)
void alignStartTime ()
void retrieveValueAndDispatch (long keyTime, boolean done)

Protected Attributes

Object monitorTimerTask
CommonPropertyImpl property
BACIDispatchAction dispatchAction
long timeTrigger
long startTime
boolean isSuspended
boolean isDestroyed
boolean userControlledStartTime
AtomicLong queuedKeyTime = new AtomicLong(0)

Detailed Description

Implementation of common monitor.

Author:
Matej Sekoranja
Version:
$id$

Constructor & Destructor Documentation

alma.ACS.impl.CommonMonitorImpl.CommonMonitorImpl (  )  [protected]

Default constructor.

alma.ACS.impl.CommonMonitorImpl.CommonMonitorImpl ( CommonPropertyImpl  property,
Callback  callback,
CBDescIn  descIn 
)

Constructor with immediate monitor notification (synchronized monitors supported).

Parameters:
property property to be monitored, non-null.
callback callback, non-null.
descIn callback in-descriptor.
alma.ACS.impl.CommonMonitorImpl.CommonMonitorImpl ( CommonPropertyImpl  property,
Callback  callback,
CBDescIn  descIn,
long  startTime 
)

Constructor.

Parameters:
property property to be monitored, non-null.
callback callback, non-null.
descIn callback in-descriptor.
startTime startTime (OMG time), values less or equal to current time mean immediately, value 0 means that start time should be controlled automatically (synchronized monitors).

References alma.ACS.jbaci.BACIDispatchAction.addDispatchFailedListener(), alma.ACS.impl.CommonMonitorImpl.dispatchAction, alma.ACS.impl.CommonMonitorImpl.getPriority(), and alma.ACS.impl.CommonMonitorImpl.initialize().


Member Function Documentation

void alma.ACS.impl.CommonMonitorImpl.alignStartTime (  )  [protected]
void alma.ACS.impl.CommonMonitorImpl.get_timer_trigger ( LongHolder  timeIntervalHolder  ) 
See also:
alma.ACS.MonitorOperations.get_timer_trigger(org.omg.CORBA.LongHolder)

References alma.ACS.impl.CommonMonitorImpl.timeTrigger.

void alma.ACS.impl.CommonMonitorImpl.retrieveValueAndDispatch ( long  keyTime,
boolean  done 
) [protected]
void alma.ACS.impl.CommonMonitorImpl.run (  ) 
void alma.ACS.impl.CommonMonitorImpl.schedule (  ) 
void alma.ACS.impl.CommonMonitorImpl.set_timer_trigger ( long  timeInterval  ) 
See also:
alma.ACS.MonitorOperations.set_timer_trigger(long)

References alma.ACS.impl.CommonMonitorImpl.setTimeTrigger().

void alma.ACS.impl.CommonMonitorImpl.setTimeTrigger ( long  timeInterval  )  [protected]

Set time trigger. If userControlledStartTime == false also aligns (fixes) start time required for synchronized monitors.

Parameters:
timeTtrigger time trigger (monitor interval in ms), if <= 0 monitoring is disabled but not resumed since there still might be on-change trigger enabled. timeTrigger is limited with lower bound property.min_timer_trigger().

References alma.ACS.impl.CommonMonitorImpl.alignStartTime(), alma.ACS.impl.CommonPropertyImpl.min_timer_trigger(), alma.ACS.impl.CommonMonitorImpl.property, alma.ACS.impl.CommonMonitorImpl.schedule(), and alma.ACS.impl.CommonMonitorImpl.timeTrigger.

Referenced by alma.ACS.impl.CommonMonitorImpl.initialize(), and alma.ACS.impl.CommonMonitorImpl.set_timer_trigger().

long alma.ACS.impl.CommonMonitorImpl.start_time (  ) 
See also:
alma.ACS.MonitorOperations.start_time()

References alma.ACS.impl.CommonMonitorImpl.startTime.

synchronized void alma.ACS.impl.CommonMonitorImpl.suspend (  ) 
void alma.ACS.impl.CommonMonitorImpl.timeout ( long  timeToRun  ) 

Timer implementation - it stores time when triggered and delegates value retrival to BACIExecutor.

See also:
alma.ACS.jbaci.BACITimer.TimerRunnable.timeout(long)

References alma.ACS.impl.CommonMonitorImpl.queuedKeyTime.


Member Data Documentation

AtomicLong alma.ACS.impl.CommonMonitorImpl.queuedKeyTime = new AtomicLong(0) [protected]

Key time to process, 0 means none.

Referenced by alma.ACS.impl.CommonMonitorImpl.run(), and alma.ACS.impl.CommonMonitorImpl.timeout().


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations Properties