AP&C API Reference
|
Public Member Functions | |
void | ProcessReadings (Apac.Monitoring.Readings readings) |
![]() | |
void | Initialize (Apac.Configuration.SupervisableConfig config, Supervisors.ISupervisor supervisor) |
Initializes the controller from configuration. More... | |
void | ResolveReferences () |
Resolves any references this component might hold to other supervisable components. More... | |
void | CheckReferencesStates () |
Checks the states of referenced components to be sure they are satisfactory for this component's operation. More... | |
void | Starting () |
Signals that the component will be starting on its own thread. This implementation uses this opportunity to CheckReferencesStates, change state to Starting, and signal subclasses with OnStarting. More... | |
void | Start () |
Starts the component. More... | |
void | Stop () |
Stops the component. More... | |
![]() | |
void | Initialize (Apac.Configuration.SupervisableConfig config, Supervisors.ISupervisor exec) |
Initializes the component with the given SupervisableConfig (or derivative) and ISupervisor. More... | |
![]() | |
void | ProcessReadings (Monitoring.Readings readings) |
Protected Member Functions | |
override void | OnInitialize (Apac.Configuration.SupervisableConfig config) |
override void | OnResolveReferences () |
Called when the supervisable component needs to resolve its runtime references to other components. More... | |
override void | OnCheckReferencesStates () |
Called when the supervisable component needs to check the state of its runtime reference components. More... | |
override void | OnStart () |
Called to start the supervisable component. More... | |
override void | OnStop () |
Called to stop the supervisable component. More... | |
abstract void | OnCompileReadings (Monitoring.Readings readings) |
abstract void | OnCompileHourlyAvgs (IList< WeightedMeasurementAvgs > avgs, DateTime timestamp) |
abstract void | OnCompileDailyAvgs (IList< WeightedMeasurementAvgs > avgs, DateTime timestamp) |
abstract void | OnCompileMonthlyAvgs (IList< WeightedMeasurementAvgs > avgs, DateTime timestamp) |
void | CompileHourlyAvgs (IList< WeightedMeasurementAvgs > avgs, DateTime timestamp) |
Useful for subclasses that want to usher compilation activities to another thread. More... | |
void | CompileDailyAvgs (IList< WeightedMeasurementAvgs > avgs, DateTime timestamp) |
Useful for subclasses that want to usher compilation activities to another thread. More... | |
void | CompileMonthyAvgs (IList< WeightedMeasurementAvgs > avgs, DateTime timestamp) |
Useful for subclasses that want to usher compilation activities to another thread. More... | |
virtual void | OnMeasurementsCompiled (Measurements measurements) |
virtual void | OnFiveMinAvgsCompiled (ITimeStamped avgs) |
virtual void | OnHourlyAvgsCompiled (ITimeStamped avgs) |
Provides asynchronous callout semantics for the HourlyAvgsCompiled event. More... | |
virtual void | OnDailyAvgsCompiled (ITimeStamped avgs) |
Provides asynchronous callout semantics for the DailyAvgsCompiled event. More... | |
virtual void | OnMonthlyAvgsCompiled (ITimeStamped avgs) |
Provides asynchronous callout semantics for the MonthlyAvgsCompiled event. More... | |
![]() | |
abstract void | OnInitialize (Apac.Configuration.SupervisableConfig config) |
Called when the supervisable component is intitialized. More... | |
virtual void | OnStarting () |
Called when the supervisable component is about to start. This differs from handling OnStart in that this method is called on the supervisor's thread, whereas Start is called on a new thread. Subclasses may override this to do work that is considered initialization work that should be done before all component threads are started. More... | |
virtual void | OnStateChanging (SupervisableState currentState, SupervisableState newState) |
Call chain for state changing notification. More... | |
virtual void | OnStateChanged (SupervisableState previousState, SupervisableState newState) |
Call chain for state changed notification. More... | |
virtual void | OnException (Exception ex) |
Call chain for exception notification. More... | |
void | SetState (SupervisableState newState) |
Changes the state of the controller to the new state. More... | |
virtual void | OnStateChangeStarting () |
virtual void | OnStateChangeRunning () |
virtual void | OnStateChangeStopping () |
virtual void | OnStateChangeStopped () |
virtual void | OnStateChangeInitializing () |
virtual void | OnStateChangeInitialized () |
virtual void | OnStateChangeErrored () |
virtual void | OnStateChangeImpaired () |
void | HandleException (string message, Exception e) |
Deals with the details of handling exceptions captured by the controller. More... | |
void | ResetException () |
Allows subclasses to reset the last exception to an empty state. More... | |
void | HandleImpairment (string message, Exception e) |
Deals with the details of handling non-critical problems captured by the controller. More... | |
Protected Attributes | |
volatile Configuration.CompilerConfig | _config = null |
Properties | |
IMeasurementStore | Store [get] |
Provide subclasses with access to the store. More... | |
ISettingsStore | SettingStore [get] |
Provide subclasses with access to the settings. More... | |
IDataAnalyzer | PostProcessor [get] |
Provide subclasses with access to the post processing agent. More... | |
![]() | |
string | Name [get] |
Gets the name of the controller, as specified by configuration. Note that if the name is not specified, then an index will be used. More... | |
string | Description [get] |
Gets the description of the controller, as specified by configuration. More... | |
bool | Prioritized [get] |
Indicates if the supervisable component should be executed on a higher thread priority. More... | |
DateTime | LastHeartbeat [get] |
The time of the last heartbeat. More... | |
Supervisors.ISupervisor | ExecutiveSupervisor [get] |
Walks the tree to find the top level supervisor. More... | |
bool | IsRunning [get] |
Gets a value indicating whether this instance is running. More... | |
SupervisableState | CurrentState [get] |
Gets the current overall state of the controller. More... | |
SupervisableState | PreviousState [get] |
Gets the previous overall state of the controller. More... | |
Exception | LastException [get] |
Gets the last exception encountered within the controller. More... | |
DateTime | StartTime [get] |
Gets the time this supervisable component was started. More... | |
DateTime | StopTime [get] |
Gets the time this supervisable component was stopped. More... | |
TimeSpan | UpTime [get] |
Gets the amount of time this supervisable component has been running, or did run before it was stopped (if IsRunning is false ). More... | |
Supervisors.ISupervisor | Supervisor [get] |
Gets the supervisor. More... | |
SupervisableConfig | Config [get] |
The configuration object used by the supervisable component. More... | |
log4net.ILog | Log [get] |
Lazy-initialized logger for subclass usage. More... | |
![]() | |
string | Name [get] |
The name of the component, for unique identification purposes. More... | |
string | Description [get] |
The description of the component, for human consumption. More... | |
bool | Prioritized [get] |
Indicates if the component should be high priority. More... | |
Supervisors.ISupervisor | ExecutiveSupervisor [get] |
Walks the tree to find the top level supervisor. More... | |
bool | IsRunning [get] |
Indicates that the component is running. More... | |
DateTime | LastHeartbeat [get] |
DateTime | StartTime [get] |
Gets the time this supervisable component was started. More... | |
DateTime | StopTime [get] |
Gets the time this supervisable component was stopped. More... | |
TimeSpan | UpTime [get] |
Gets the amount of time this supervisable component has been running, or did run before it was stopped (if IsRunning is false ). More... | |
SupervisableState | CurrentState [get] |
Gets the current SupervisableState of this component. More... | |
SupervisableState | PreviousState [get] |
Gets the previous SupervisableState of this component. More... | |
Exception | LastException [get] |
Gets the last exception to have occurred and been trapped by this component. More... | |
Events | |
MeasurementsCompiledHandler | MeasurementsCompiled |
FiveMinAvgsCompiledHandler | FiveMinAvgsCompiled |
HourlyAvgsCompiledHandler | HourlyAvgsCompiled |
DailyAvgsCompiledHandler | DailyAvgsCompiled |
MonthlyAvgsCompiledHandler | MonthlyAvgsCompiled |
![]() | |
SupervisableStateChangingHandler | SupervisableStateChanging |
Notifies listeners that the state is about to change. More... | |
SupervisableStateChangedHandler | SupervisableStateChanged |
Notifies listeners that the state has changed. More... | |
SupervisableErroredHandler | SupervisableErrored |
Notifies listeners that an error occured within the controller. More... | |
SupervisableHeartbeatHandler | SupervisableHeartbeat |
Notifies listeners that the component is still active. More... | |
![]() | |
SupervisableStateChangingHandler | SupervisableStateChanging |
Notifies listeners that the state is about to change. More... | |
SupervisableStateChangedHandler | SupervisableStateChanged |
Notifies listeners that the state has changed. More... | |
SupervisableErroredHandler | SupervisableErrored |
Notifies listeners that an error occured within the controller. More... | |
SupervisableHeartbeatHandler | SupervisableHeartbeat |
Notifies listeners that the component is still active. More... | |
![]() | |
MeasurementsCompiledHandler | MeasurementsCompiled |
FiveMinAvgsCompiledHandler | FiveMinAvgsCompiled |
DailyAvgsCompiledHandler | DailyAvgsCompiled |
HourlyAvgsCompiledHandler | HourlyAvgsCompiled |
MonthlyAvgsCompiledHandler | MonthlyAvgsCompiled |
|
inlineprotected |
Useful for subclasses that want to usher compilation activities to another thread.
avgs | The averages to be compiled. |
|
inlineprotected |
Useful for subclasses that want to usher compilation activities to another thread.
avgs | The averages to be compiled. |
|
inlineprotected |
Useful for subclasses that want to usher compilation activities to another thread.
avgs | The averages to be compiled. |
|
inlineprotectedvirtual |
Called when the supervisable component needs to check the state of its runtime reference components.
Implements Apac.Supervisable.
|
inlineprotectedvirtual |
Provides asynchronous callout semantics for the DailyAvgsCompiled event.
avgs | The ITimeStamped list of averages. |
Reimplemented in Apac.Data.StandardCompiler.
|
inlineprotectedvirtual |
Provides asynchronous callout semantics for the HourlyAvgsCompiled event.
avgs | The ITimeStamped list of averages. |
Reimplemented in Apac.Data.StandardCompiler.
|
inlineprotectedvirtual |
Provides asynchronous callout semantics for the MonthlyAvgsCompiled event.
avgs | The ITimeStamped list of averages. |
|
inlineprotectedvirtual |
Called when the supervisable component needs to resolve its runtime references to other components.
Implements Apac.Supervisable.
|
inlineprotectedvirtual |
Called to start the supervisable component.
Implements Apac.Supervisable.
|
inlineprotectedvirtual |
Called to stop the supervisable component.
Implements Apac.Supervisable.
|
getprotected |
Provide subclasses with access to the post processing agent.
|
getprotected |
Provide subclasses with access to the settings.
|
getprotected |
Provide subclasses with access to the store.