public abstract class EventServer extends java.lang.Object implements LifeCycle, Sensing, Acting, RouterClient
| Modifier and Type | Class and Description |
|---|---|
private class |
EventServer.HybridScheduler
The Class HybridScheduler.
|
private class |
EventServer.PeriodicScheduler
The Class PeriodicScheduler.
|
| Modifier and Type | Field and Description |
|---|---|
protected java.util.concurrent.ConcurrentHashMap<java.lang.String,Parameters> |
actuators
The actuators.
|
protected VirtualClockHelper |
clock
The clock.
|
protected Comm |
comm
The comm.
|
private java.lang.String |
commType
The comm type.
|
protected java.util.ArrayList<Event> |
earlyEvents
The early events.
|
protected EnvironmentAgent |
envAgent
The env agent.
|
private java.lang.String |
eventExchange
The event exchange.
|
protected java.util.concurrent.ConcurrentHashMap<java.lang.String,Parameters> |
eventHandlers
The event handlers.
|
private Constants.ES_STATE |
eventServerState
The event server state.
|
private java.lang.String |
eventType
The event type.
|
protected long |
frameTime
The frame time.
|
protected int |
happeningFrame
The happening frame.
|
private java.util.ArrayList<Event> |
inputEvents
The input events.
|
private boolean |
isBatch
The is batch.
|
private java.util.concurrent.locks.Lock |
lock
The lock.
|
protected Actuator |
myActuator
The my actuator.
|
protected Sensor |
mySensor
The my sensor.
|
private long |
nextStateChange
The next state change.
|
private java.util.ArrayList<Event> |
outputEvents
The output events.
|
private java.util.concurrent.locks.Lock |
outputLock
The output lock.
|
protected Parameters |
parameters
The parameters.
|
protected long |
period
The period.
|
protected long |
periodDeadline
The period deadline.
|
protected long |
receiveDeadline
The receive deadline.
|
protected int |
receivingFrame
The receiving frame.
|
protected long |
sendDeadline
The send deadline.
|
protected java.util.concurrent.ConcurrentHashMap<java.lang.String,Parameters> |
sensors
The sensors.
|
protected long |
startTime
The start time.
|
protected long |
waitTime
The wait time.
|
protected int |
workingFrame
The working frame.
|
| Constructor and Description |
|---|
EventServer() |
| Modifier and Type | Method and Description |
|---|---|
void |
act()
Sends automatically all events in the outputEvents queue.
|
protected void |
actuatorDeregistered(java.lang.String agentName,
java.lang.String actuatorName)
Actuator deregistered.
|
protected Parameters |
actuatorRegistered(java.lang.String agentName,
java.lang.String actuatorName,
Parameters userParam)
Actuator registered.
|
protected void |
addOutputEvent(java.lang.String destAgentName,
java.lang.String destCompName,
Event evt)
Adds a event to a queue to be sent the next time act() is called.
|
void |
addParameter(java.lang.String key,
java.lang.String value)
Adds the parameter.
|
void |
addParameters(Parameters newParameters)
Adds the parameters.
|
Memory |
createMemory(java.lang.String name,
Parameters parameters)
Creates the memory.
|
void |
deregisterEventHandler(java.lang.String agentName,
java.lang.String eventHandlerName,
java.lang.String eventHandlerType)
Deregister event handler.
|
boolean |
finit()
User-implemented finalization method, called by stop().
|
java.lang.String |
getAddress()
Returns this component framework address.
|
java.lang.String |
getCommType()
Gets the comm type.
|
java.lang.String |
getEventExchange()
Gets the event exchange.
|
java.lang.String |
getEventType()
Gets the event type.
|
java.lang.String |
getParameter(java.lang.String key)
Gets the parameter.
|
java.lang.String |
getParameter(java.lang.String key,
java.lang.String defaultValue)
Gets the parameter.
|
Parameters |
getParameters()
Returns all configured parameters.
|
boolean |
init()
User-implemented initialization method, called by start().
|
boolean |
parameterUpdate(java.lang.String name,
java.lang.String newValue)
User-implement method called when a parameter has been updated.
|
protected void |
process()
Método chamado para efetuar algum processamento sobre os eventos recebidos, e enviar eventos em seguida.
|
protected Event |
processAction(Event evt)
Método chamado para enviar um evento pelo process().
|
void |
processCommand(Command cmd)
An user-implemented method to process a received command.
|
protected void |
processSense(Event evt)
Método chamado ao receber um evento.
|
void |
receiveCommand(Command cmd)
A framework-implemented method that receives a command sent by the RouterAgent and calls processCommand.
|
void |
registerEventHandler(java.lang.String agentName,
java.lang.String eventHandlerName,
java.lang.String eventHandlerType,
Parameters userParameters)
Register event handler.
|
java.lang.String[] |
searchRegisteredEventHandler(java.lang.String agentName,
java.lang.String componentName,
java.lang.String eventType,
java.lang.String ehType)
Searches the registered event handlers using filters.
|
void |
sendCommand(Command cmd)
A framework-implemented method that sends a command to its destination, via RouterAgent if the recipient is another agent.
|
protected void |
sendEvent(Event evt)
Sends a single Event.
|
void |
sense(Event evt)
Sense.
|
protected void |
senseEarlyEvents(Event evt)
Sense early events.
|
protected void |
sensorDeregistered(java.lang.String agentName,
java.lang.String sensorName)
Sensor deregistered.
|
protected Parameters |
sensorRegistered(java.lang.String agentName,
java.lang.String sensorName,
Parameters userParam)
Sensor registered.
|
void |
setCommType(java.lang.String commType)
Sets the comm type.
|
void |
setEnvAgent(EnvironmentAgent envAgent)
Sets the env agent.
|
void |
setEventExchange(long period,
long waitTime)
Sets the event exchange.
|
boolean |
setEventExchange(long period,
long receiveDeadline,
long sendDeadline,
long waitTime)
Sets the event exchange.
|
void |
setEventType(java.lang.String eventType)
Sets the event type.
|
void |
setParameters(Parameters parameters)
Framework-implemented method that sets system and user parameters.
|
boolean |
start()
Called by the system to initalize an EventServer.
|
boolean |
stop()
Framework-implemented finalization method.
|
private java.util.concurrent.locks.Lock lock
private java.util.concurrent.locks.Lock outputLock
protected Parameters parameters
protected EnvironmentAgent envAgent
protected VirtualClockHelper clock
private Constants.ES_STATE eventServerState
private java.lang.String eventType
private java.lang.String eventExchange
private java.lang.String commType
private boolean isBatch
protected long period
protected long sendDeadline
protected long receiveDeadline
protected long periodDeadline
protected long startTime
protected long frameTime
protected long waitTime
protected int workingFrame
protected int happeningFrame
protected int receivingFrame
private long nextStateChange
protected java.util.concurrent.ConcurrentHashMap<java.lang.String,Parameters> actuators
protected java.util.concurrent.ConcurrentHashMap<java.lang.String,Parameters> sensors
protected java.util.concurrent.ConcurrentHashMap<java.lang.String,Parameters> eventHandlers
protected java.util.ArrayList<Event> earlyEvents
protected Comm comm
protected Sensor mySensor
protected Actuator myActuator
private java.util.ArrayList<Event> inputEvents
private java.util.ArrayList<Event> outputEvents
public final boolean start()
public final boolean stop()
LifeCyclepublic final void addParameter(java.lang.String key,
java.lang.String value)
key - the keyvalue - the valuepublic final void addParameters(Parameters newParameters)
newParameters - the new parameterspublic final java.lang.String getParameter(java.lang.String key)
key - the keypublic final java.lang.String getParameter(java.lang.String key,
java.lang.String defaultValue)
key - the keydefaultValue - the default valuepublic void setParameters(Parameters parameters)
LifeCyclesetParameters in interface LifeCycleparameters - a Parameters object with all user and system Parameters for this objectpublic Parameters getParameters()
LifeCyclegetParameters in interface LifeCyclepublic void setEnvAgent(EnvironmentAgent envAgent)
envAgent - the new env agentpublic void setCommType(java.lang.String commType)
commType - the new comm typepublic java.lang.String getCommType()
public void setEventType(java.lang.String eventType)
eventType - the new event typepublic java.lang.String getEventType()
public void setEventExchange(long period,
long waitTime)
period - the periodwaitTime - the wait timepublic boolean setEventExchange(long period,
long receiveDeadline,
long sendDeadline,
long waitTime)
period - the periodreceiveDeadline - the receive deadlinesendDeadline - the send deadlinewaitTime - the wait timepublic java.lang.String getEventExchange()
public java.lang.String[] searchRegisteredEventHandler(java.lang.String agentName,
java.lang.String componentName,
java.lang.String eventType,
java.lang.String ehType)
agentName - the agent namecomponentName - the component nameeventType - the event typeehType - the eh typepublic void registerEventHandler(java.lang.String agentName,
java.lang.String eventHandlerName,
java.lang.String eventHandlerType,
Parameters userParameters)
agentName - the agent nameeventHandlerName - the event handler nameeventHandlerType - the event handler typeuserParameters - the user parameterspublic void deregisterEventHandler(java.lang.String agentName,
java.lang.String eventHandlerName,
java.lang.String eventHandlerType)
agentName - the agent nameeventHandlerName - the event handler nameeventHandlerType - the event handler typepublic Memory createMemory(java.lang.String name, Parameters parameters)
name - the nameparameters - the parametersprotected void senseEarlyEvents(Event evt)
evt - the evtpublic void act()
protected void sendEvent(Event evt)
evt - the evtprotected void addOutputEvent(java.lang.String destAgentName,
java.lang.String destCompName,
Event evt)
destAgentName - the dest agent namedestCompName - the dest comp nameevt - the evtpublic final java.lang.String getAddress()
RouterClientgetAddress in interface RouterClientpublic final void receiveCommand(Command cmd)
RouterClientreceiveCommand in interface RouterClientcmd - the cmdpublic final void sendCommand(Command cmd)
RouterClientsendCommand in interface RouterClientcmd - the cmdpublic boolean init()
LifeCyclepublic boolean parameterUpdate(java.lang.String name,
java.lang.String newValue)
LifeCycleparameterUpdate in interface LifeCyclename - the namenewValue - the new valuepublic boolean finit()
LifeCycleprotected void processSense(Event evt) throws java.lang.Exception
evt - the evtjava.lang.Exception - the exceptionprotected Event processAction(Event evt) throws java.lang.Exception
evt - the evtjava.lang.Exception - the exceptionprotected void process()
throws java.lang.Exception
java.lang.Exception - the exceptionprotected Parameters actuatorRegistered(java.lang.String agentName, java.lang.String actuatorName, Parameters userParam) throws java.lang.Exception
agentName - the agent nameactuatorName - the actuator nameuserParam - the user paramjava.lang.Exception - the exceptionprotected void actuatorDeregistered(java.lang.String agentName,
java.lang.String actuatorName)
throws java.lang.Exception
agentName - the agent nameactuatorName - the actuator namejava.lang.Exception - the exceptionprotected Parameters sensorRegistered(java.lang.String agentName, java.lang.String sensorName, Parameters userParam) throws java.lang.Exception
agentName - the agent namesensorName - the sensor nameuserParam - the user paramjava.lang.Exception - the exceptionprotected void sensorDeregistered(java.lang.String agentName,
java.lang.String sensorName)
throws java.lang.Exception
agentName - the agent namesensorName - the sensor namejava.lang.Exception - the exceptionpublic void processCommand(Command cmd)
RouterClientprocessCommand in interface RouterClientcmd - the cmd