public class MonitoringComponentFeature extends AbstractComponentFeature implements IMonitoringComponentFeature
Modifier and Type | Field and Description |
---|---|
protected IMonitoringService.PublishEventLevel |
emitlevelsub
The event emit level for subscriptions.
|
protected ServiceGetter<IMonitoringService> |
getter
The monitoring service getter.
|
protected java.util.Map<jadex.commons.future.SubscriptionIntermediateFuture<IMonitoringEvent>,jadex.commons.Tuple2<jadex.commons.IFilter<IMonitoringEvent>,IMonitoringService.PublishEventLevel>> |
subscriptions
The subscriptions (subscription future -> subscription info).
|
cinfo, component, guesser
Constructor and Description |
---|
MonitoringComponentFeature(IInternalAccess component,
ComponentCreationInfo cinfo)
Create the feature.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addSubscription(jadex.commons.future.SubscriptionIntermediateFuture<IMonitoringEvent> future,
jadex.commons.IFilter<IMonitoringEvent> filter,
IMonitoringService.PublishEventLevel emitlevel)
Add a new subscription.
|
java.util.List<IMonitoringEvent> |
getCurrentStateEvents()
Get the current state as events.
|
ServiceGetter<IMonitoringService> |
getMonitoringServiceGetter()
Get the monitoring service getter.
|
IMonitoringService.PublishEventLevel |
getPublishEmitLevelMonitoring()
Get the monitoring event emit level.
|
IMonitoringService.PublishEventLevel |
getPublishEmitLevelSubscriptions()
Get the monitoring event emit level for subscriptions.
|
boolean |
hasEventTargets(IMonitoringService.PublishTarget pt,
IMonitoringService.PublishEventLevel pi)
Check if event targets exist.
|
jadex.commons.future.IFuture<java.lang.Void> |
publishEvent(IMonitoringEvent event,
IMonitoringService.PublishTarget pt)
Publish a monitoring event.
|
static jadex.commons.future.IFuture<java.lang.Void> |
publishEvent(IMonitoringEvent event,
ServiceGetter<IMonitoringService> getter)
Publish a monitoring event to the monitoring service.
|
void |
publishLocalEvent(IMonitoringEvent event)
Forward event to all currently registered subscribers.
|
protected void |
publishLocalEvent(IMonitoringEvent event,
jadex.commons.future.SubscriptionIntermediateFuture<IMonitoringEvent> sub)
Forward event to one subscribers.
|
protected void |
removeSubscription(jadex.commons.future.SubscriptionIntermediateFuture<IMonitoringEvent> fut)
Remove an existing subscription.
|
jadex.commons.future.ISubscriptionIntermediateFuture<IMonitoringEvent> |
subscribeToEvents(jadex.commons.IFilter<IMonitoringEvent> filter,
boolean initial,
IMonitoringService.PublishEventLevel emitlevel)
Subscribe to monitoring events.
|
body, getComponent, getExternalFacade, getExternalFacadeType, getParameterGuesser, getValueFetcher, init, shutdown
protected java.util.Map<jadex.commons.future.SubscriptionIntermediateFuture<IMonitoringEvent>,jadex.commons.Tuple2<jadex.commons.IFilter<IMonitoringEvent>,IMonitoringService.PublishEventLevel>> subscriptions
protected ServiceGetter<IMonitoringService> getter
protected IMonitoringService.PublishEventLevel emitlevelsub
public MonitoringComponentFeature(IInternalAccess component, ComponentCreationInfo cinfo)
public jadex.commons.future.IFuture<java.lang.Void> publishEvent(IMonitoringEvent event, IMonitoringService.PublishTarget pt)
publishEvent
in interface IMonitoringComponentFeature
public static jadex.commons.future.IFuture<java.lang.Void> publishEvent(IMonitoringEvent event, ServiceGetter<IMonitoringService> getter)
public IMonitoringService.PublishEventLevel getPublishEmitLevelSubscriptions()
public ServiceGetter<IMonitoringService> getMonitoringServiceGetter()
public void publishLocalEvent(IMonitoringEvent event)
protected void publishLocalEvent(IMonitoringEvent event, jadex.commons.future.SubscriptionIntermediateFuture<IMonitoringEvent> sub)
public boolean hasEventTargets(IMonitoringService.PublishTarget pt, IMonitoringService.PublishEventLevel pi)
hasEventTargets
in interface IMonitoringComponentFeature
public IMonitoringService.PublishEventLevel getPublishEmitLevelMonitoring()
public jadex.commons.future.ISubscriptionIntermediateFuture<IMonitoringEvent> subscribeToEvents(jadex.commons.IFilter<IMonitoringEvent> filter, boolean initial, IMonitoringService.PublishEventLevel emitlevel)
subscribeToEvents
in interface IMonitoringComponentFeature
filter
- An optional filter.initial
- True, for receiving the current state.protected void addSubscription(jadex.commons.future.SubscriptionIntermediateFuture<IMonitoringEvent> future, jadex.commons.IFilter<IMonitoringEvent> filter, IMonitoringService.PublishEventLevel emitlevel)
future
- The subscription future.si
- The subscription info.protected void removeSubscription(jadex.commons.future.SubscriptionIntermediateFuture<IMonitoringEvent> fut)
fut
- The subscription future to remove.public java.util.List<IMonitoringEvent> getCurrentStateEvents()