Package com.tnsai.protocols.annotations
Annotation Interface PubSub
Enables publish-subscribe messaging for an Agent or Role.
Similar to Broadcast but supports multiple topics and message filtering.
Example:
@PubSub(
topics = {"research-findings", "questions"},
broker = "http://pubsub-broker:9090"
)
public class ResearchAgent extends Agent {
// Can pub/sub to multiple topics
}
-
Required Element Summary
Required Elements -
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionRemote message broker URL.booleanWhether this agent can publish to topics.booleanWhether this agent can subscribe to topics.Message filter expression (optional).Transport mode.
-
Element Details
-
topics
String[] topicsTopics this agent subscribes to or publishes. -
broker
String brokerRemote message broker URL. If empty, uses internal broker.- Default:
""
-
transport
TransportMode transportTransport mode.- Default:
AUTO
-
canPublish
boolean canPublishWhether this agent can publish to topics.- Default:
true
-
canSubscribe
boolean canSubscribeWhether this agent can subscribe to topics.- Default:
true
-
filter
String filterMessage filter expression (optional). Example: "type='data' AND priority>5"- Default:
""
-