io.sarl.sre.janus.services.probing.service
Class AbstractProbeService
All Superinterfaces:
IProbeReleaseListener, ProbeService, java.util.EventListener, org.arakhne.afc.services.IService
All Known Subclasses:
AsynchronousProbeService, SynchronousProbeService
abstract class AbstractProbeService
extends java.lang.Object
implements ProbeService, IProbeReleaseListener
This class is the standard implementation of a probe service.
Maven Group Identifier:
io.sarl.sre.janus
Maven Artifact Identifier:
janus.kernel
Since:
0.10
Property Summary
Modifier and type Property and description
java.util.Collection<E> probes
java.lang.Class<T> referenceType
Constructor Summary
Constructor and description
new(Map<K,V>,NamespaceService,INameParser,Provider<T>)
Constructor.
Action Summary
Modifier and type Action and description
java.util.Collection<E> getProbes
java.lang.Class<T> getReferenceType
protected void internalSync
Force synchronization.
protected Probe<T> newProbe(Object,Class<T>,URI,String)
Create an instance of the probe.
protected void onFirstProbe
Invoked when the first probe is added into the service.
protected void onLastProbe
Invoked when the last probe is removed from the service.
void onProbeReleasedProbe(Probe<T>)
void onStop
Probe<T> probe(SarlName,Class<T>,[String])
Probe<T> probe(String,Class<T>,[String])
Probe<T> probe(URI,Class<T>,[String])
void releaseAllProbes
void sync
Property Details
probes
val probes : java.util.Collection<E>

This property is an alias for the action: getProbes

referenceType
val referenceType : java.lang.Class<T>

This property is an alias for the action: getReferenceType

Constructor Details
new(Map<K,V>,NamespaceService,INameParser,Provider<T>)
protected new(Map<K,V>,NamespaceService,INameParser,Provider<T>)
Constructor.
Parameters:
internalStructure - is the internal structure for storing the probes.
namespaceService - the service that is giving access to the namespaces.
nameParser - the object that is able to parse resource names.
factories - the provider of factories tool.
Action Details
getProbes
def getProbes : java.util.Collection<E>
getReferenceType
def getReferenceType : java.lang.Class<T>
internalSync
protected def internalSync
Force synchronization. It is for internal usage only.
newProbe(Object,Class<T>,URI,String)
protected def newProbe(Object,Class<T>,URI,String) : Probe<T>

with T

Create an instance of the probe.
Parameters:
<T> - the expected type of the probed values.
probedElement - the element to which the probe must be associated, never null.
valueType - the expected type of the probed values, never null.
probeUri - the URI of the probe, never null.
probeName - the name of the probe, never null.
Throws exception:
  • java.lang.IllegalArgumentException: if the type of the data is not supported.
onFirstProbe
protected def onFirstProbe
Invoked when the first probe is added into the service.
onLastProbe
protected def onLastProbe
Invoked when the last probe is removed from the service.
onProbeReleasedProbe(Probe<T>)
def onProbeReleasedProbe(Probe<T>)
onStop
def onStop
probe(SarlName,Class<T>,[String])
def probe(SarlName,Class<T>,[String]) : Probe<T>

with T

probe(String,Class<T>,[String])
def probe(String,Class<T>,[String]) : Probe<T>

with T

probe(URI,Class<T>,[String])
def probe(URI,Class<T>,[String]) : Probe<T>

with T

releaseAllProbes
def releaseAllProbes
sync
def sync