- All Superinterfaces:
Object
Represents an IceStorm topic. Publishers publish data to a topic (via the topic's publisher object), and
subscribers subscribe to a topic.
Remarks:
The Slice compiler generated this skeleton interface from Slice interface ::IceStorm::Topic.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.zeroc.Ice.Object
Object.Ice_invokeResult -
Method Summary
Modifier and TypeMethodDescriptiondestroyAsync(Current current) Destroys this topic.default CompletionStage<OutgoingResponse>dispatch(IncomingRequest request) Dispatches an incoming request to one of the methods of this generated interface, based on the operation name carried by the request.getLinkInfoSeqAsync(Current current) Gets information on the current links.getNameAsync(Current current) Gets the name of this topic.getNonReplicatedPublisherAsync(Current current) Gets a non-replicated proxy to a publisher object for this topic.getPublisherAsync(Current current) Gets a proxy to a publisher object for this topic.getSubscribersAsync(Current current) Gets the list of subscribers for this topic.static StringGets the type ID of the associated Slice interface.Creates a link to another topic.Subscribes to this topic.unlinkAsync(TopicPrx linkTo, Current current) Destroys a link from this topic to the provided topic.unsubscribeAsync(ObjectPrx subscriber, Current current) Unsubscribes the providedsubscriberfrom this topic.
-
Method Details
-
getNameAsync
Gets the name of this topic.- Parameters:
current- the Current object of the incoming request- Returns:
- The name of the topic.
- See Also:
-
getPublisherAsync
Gets a proxy to a publisher object for this topic. To publish data to a topic, a publisher calls this operation and then creates a proxy with the publisher type from this proxy. If a replicated IceStorm deployment is used, this call may return a replicated proxy.- Parameters:
current- the Current object of the incoming request- Returns:
- A proxy to publish data on this topic. This proxy is never null.
-
getNonReplicatedPublisherAsync
Gets a non-replicated proxy to a publisher object for this topic. To publish data to a topic, a publisher calls this operation and then creates a proxy with the publisher type from this proxy.- Parameters:
current- the Current object of the incoming request- Returns:
- A proxy to publish data on this topic. This proxy is never null.
-
subscribeAndGetPublisherAsync
CompletionStage<ObjectPrx> subscribeAndGetPublisherAsync(Map<String, String> theQoS, ObjectPrx subscriber, Current current) throws AlreadySubscribed, BadQoSSubscribes to this topic.- Parameters:
theQoS- The quality of service parameters for this subscription.subscriber- The subscriber's proxy. This proxy cannot be null.current- the Current object of the incoming request- Returns:
- The per-subscriber publisher proxy. This proxy is never null.
- Throws:
AlreadySubscribed- Thrown whensubscriberis already subscribed.BadQoS- Thrown whentheQoSis unavailable or invalid.- See Also:
-
unsubscribeAsync
Unsubscribes the providedsubscriberfrom this topic.- Parameters:
subscriber- A proxy to an existing subscriber. This proxy is never null.current- the Current object of the incoming request- Returns:
- a completion stage that the servant will complete when the invocation completes
- See Also:
-
linkAsync
Creates a link to another topic. All events originating on this topic will also be sent to the other topic.- Parameters:
linkTo- The topic to link to. This proxy cannot be null.cost- The cost of the link.current- the Current object of the incoming request- Returns:
- a completion stage that the servant will complete when the invocation completes
- Throws:
LinkExists- Thrown when a link tolinkToalready exists.
-
unlinkAsync
Destroys a link from this topic to the provided topic.- Parameters:
linkTo- The topic to destroy the link to. This proxy cannot be null.current- the Current object of the incoming request- Returns:
- a completion stage that the servant will complete when the invocation completes
- Throws:
NoSuchLink- Thrown when a link tolinkTodoes not exist.
-
getLinkInfoSeqAsync
Gets information on the current links.- Parameters:
current- the Current object of the incoming request- Returns:
- A sequence of LinkInfo objects.
-
getSubscribersAsync
Gets the list of subscribers for this topic.- Parameters:
current- the Current object of the incoming request- Returns:
- The sequence of Ice identities for the subscriber objects.
-
destroyAsync
Destroys this topic.- Parameters:
current- the Current object of the incoming request- Returns:
- a completion stage that the servant will complete when the invocation completes
-
ice_staticId
Gets the type ID of the associated Slice interface.- Returns:
- the string "::IceStorm::Topic"
-
dispatch
Dispatches an incoming request to one of the methods of this generated interface, based on the operation name carried by the request.- Specified by:
dispatchin interfaceObject- Parameters:
request- the incoming request- Returns:
- the outgoing response
- Throws:
UserException- if aUserExceptionis thrown, Ice will marshal it as the response payload.
-