io.sarl.sre.janus.network.services
Class HazelcastEventTransportService
All Superinterfaces:
EventTransportService
@javax.inject.Singleton
class HazelcastEventTransportService
extends java.lang.Object
implements EventTransportService
Implementation of a MTS using Hazeclast topics to distribute messages over a network of SARL's SREs. For EventSpace, the Hazelcast topics' messages contains events

Topics' naming conventions (based on io.sarl.api.naming):
  • Context: io.sarl.topics.context.contextId
  • Space: io.sarl.topics.space.contextId.spaceId
  • Agent: io.sarl.topics.agent.contextId.spaceId.agentId
  • Skill: io.sarl.topics.skill.contextId.spaceId.agentId.capacityType
  • Behavior: io.sarl.topics.behavior.contextId.spaceId.agentId.behaviorType.behaviorIndex
  • Skill: io.sarl.topics.service.serviceType
Maven Group Identifier:
io.sarl.sre.janus
Maven Artifact Identifier:
janus.network
Since:
0.12
Property Summary
Modifier and type Property and description
com.hazelcast.core.HazelcastInstance hazelcastInstance
Nested Type Summary
Modifier and type Type and description
class HazelcastEventTransportService.TopicMessage
Envelope for Hazelcast messages.
protected class HazelcastEventTransportService.TopicMessageListener
Envelope for Hazelcast topic messages.
protected class HazelcastEventTransportService.TopicNameListener
Listener on Hazelcast events.
Field Summary
Modifier and type Field and description
public static val java.lang.String HAZELCAST_SARL_TOPICS_NAME_SET
public static val java.lang.String HAZELCAST_SARL_TOPICS_ROOTWILCARD
Constructor Summary
Action Summary
Modifier and type Action and description
com.hazelcast.core.HazelcastInstance getHazelcastInstance
static java.lang.String getTopicNameFromSpaceID(SpaceID)
boolean routeEvent(Event,EventSpace,Scope<T>)
Property Details
hazelcastInstance
val hazelcastInstance : com.hazelcast.core.HazelcastInstance

This property is an alias for the action: getHazelcastInstance

Field Details
HAZELCAST_SARL_TOPICS_NAME_SET
public static val HAZELCAST_SARL_TOPICS_NAME_SET : java.lang.String = "io.sarl.topics.distributedset"
HAZELCAST_SARL_TOPICS_ROOTWILCARD
public static val HAZELCAST_SARL_TOPICS_ROOTWILCARD : java.lang.String = "io.sarl.topics."
Constructor Details
new(HazelcastInstance,ContextService,LoggingService)
new(HazelcastInstance,ContextService,LoggingService)
Action Details
getHazelcastInstance
def getHazelcastInstance : com.hazelcast.core.HazelcastInstance
getTopicNameFromSpaceID(SpaceID)
def getTopicNameFromSpaceID(SpaceID) : java.lang.String
routeEvent(Event,EventSpace,Scope<T>)
def routeEvent(Event,EventSpace,Scope<T>) : boolean