io.sarl.sre.janus.internal.eventguard.reflect
Class ReflectBehaviorGuardEvaluatorRegistry
All Superinterfaces:
IBehaviorGuardEvaluatorRegistry
class ReflectBehaviorGuardEvaluatorRegistry
extends AbstractBehaviorGuardEvaluatorRegistry<REGT>
Registry of all BehaviorGuardEvaluator classes containing a method to evaluate the guard of a given behavior (on clause in SARL behavior).

This class is thread-safe.
Maven Group Identifier:
io.sarl.sre.janus
Maven Artifact Identifier:
janus.kernel
Property Summary
Modifier and type Property and description
java.util.concurrent.ConcurrentMap<K,V> internalDataStructureForDirectAccessListeners
Replies the internal data structure for the direct-access listeners.
java.util.concurrent.ConcurrentMap<K,V> internalDataStructureForRegisteredListeners
protected org.eclipse.xtext.xbase.lib.Functions.Function2<P1,P2,Result> internalEvaluatorFilterForRegisteredListeners
protected org.eclipse.xtext.xbase.lib.Functions.Function1<Param,Result> internalEvaluatorMapperForRegisteredListeners
Nested Type Summary
Modifier and type Type and description
protected class ReflectBehaviorGuardEvaluatorRegistry.Evaluator
Description of an single guard evaluator.
Field Summary
Inherited: factories
Constructor Summary
Constructor and description
new(Provider<T>)
Instanciates a new registry linked with the PerceptGuardEvaluator annotation.
Action Summary
Modifier and type Action and description
protected java.util.concurrent.ConcurrentMap<K,V> buildDirectAccessGuardEvaluators(Class<T>)
Build the list of the event handlers for a direct access to a listener.
ConcurrentCollection<T> getBehaviorGuardEvaluatorsForDirectAccessListener(Event,Object)
java.util.concurrent.ConcurrentMap<K,V> getInternalDataStructureForDirectAccessListeners
Replies the internal data structure for the direct-access listeners.
java.util.concurrent.ConcurrentMap<K,V> getInternalDataStructureForRegisteredListeners
protected org.eclipse.xtext.xbase.lib.Functions.Function2<P1,P2,Result> getInternalEvaluatorFilterForRegisteredListeners
protected org.eclipse.xtext.xbase.lib.Functions.Function1<Param,Result> getInternalEvaluatorMapperForDirectAccessListeners(Object)
Replies the mapper from the internal guard evaluator description of direct-access listeners to the public description.
protected org.eclipse.xtext.xbase.lib.Functions.Function1<Param,Result> getInternalEvaluatorMapperForRegisteredListeners
void register(Object,Function1<Param,Result>,[Procedure1<Param>])
void unregister(Object,Procedure1<Param>)
Property Details
internalDataStructureForDirectAccessListeners
val internalDataStructureForDirectAccessListeners : java.util.concurrent.ConcurrentMap<K,V>
Replies the internal data structure for the direct-access listeners.

This property is an alias for the action: getInternalDataStructureForDirectAccessListeners

Returns:
the internal data structure
Since:
0.12
internalDataStructureForRegisteredListeners
val internalDataStructureForRegisteredListeners : java.util.concurrent.ConcurrentMap<K,V>

This property is an alias for the action: getInternalDataStructureForRegisteredListeners

internalEvaluatorFilterForRegisteredListeners
protected val internalEvaluatorFilterForRegisteredListeners : org.eclipse.xtext.xbase.lib.Functions.Function2<P1,P2,Result>

This property is an alias for the action: getInternalEvaluatorFilterForRegisteredListeners

internalEvaluatorMapperForRegisteredListeners
protected val internalEvaluatorMapperForRegisteredListeners : org.eclipse.xtext.xbase.lib.Functions.Function1<Param,Result>

This property is an alias for the action: getInternalEvaluatorMapperForRegisteredListeners

Constructor Details
new(Provider<T>)
new(Provider<T>)
Instanciates a new registry linked with the PerceptGuardEvaluator annotation.

The registry will use concurrent data structures.
Action Details
buildDirectAccessGuardEvaluators(Class<T>)
protected def buildDirectAccessGuardEvaluators(Class<T>) : java.util.concurrent.ConcurrentMap<K,V>
Build the list of the event handlers for a direct access to a listener.
Parameters:
listenerType - is the listener to explore.
Returns:
the list oh guard evaluators.
getBehaviorGuardEvaluatorsForDirectAccessListener(Event,Object)
def getBehaviorGuardEvaluatorsForDirectAccessListener(Event,Object) : ConcurrentCollection<T>
getInternalDataStructureForDirectAccessListeners
def getInternalDataStructureForDirectAccessListeners : java.util.concurrent.ConcurrentMap<K,V>
Replies the internal data structure for the direct-access listeners.
Returns:
the internal data structure
Since:
0.12
getInternalDataStructureForRegisteredListeners
def getInternalDataStructureForRegisteredListeners : java.util.concurrent.ConcurrentMap<K,V>
getInternalEvaluatorFilterForRegisteredListeners
protected def getInternalEvaluatorFilterForRegisteredListeners : org.eclipse.xtext.xbase.lib.Functions.Function2<P1,P2,Result>
getInternalEvaluatorMapperForDirectAccessListeners(Object)
protected def getInternalEvaluatorMapperForDirectAccessListeners(Object) : org.eclipse.xtext.xbase.lib.Functions.Function1<Param,Result>
Replies the mapper from the internal guard evaluator description of direct-access listeners to the public description.
Parameters:
listener - the listener for which the guard evaluator should be replied.
Returns:
the internal data structure
Since:
0.12
getInternalEvaluatorMapperForRegisteredListeners
protected def getInternalEvaluatorMapperForRegisteredListeners : org.eclipse.xtext.xbase.lib.Functions.Function1<Param,Result>
register(Object,Function1<Param,Result>,[Procedure1<Param>])
def register(Object,Function1<Param,Result>,[Procedure1<Param>])
unregister(Object,Procedure1<Param>)
def unregister(Object,Procedure1<Param>)