|
Ice 3.7 Slice API Reference
|
Publishers publish information on a particular topic. More...
defined in <IceStorm/IceStorm.ice>
interface Topic { ... }
Operations | |
| void | destroy () |
| Destroy the topic. More... | |
| idempotent LinkInfoSeq | getLinkInfoSeq () |
| Retrieve information on the current links. More... | |
| idempotent string | getName () |
| Get the name of this topic. More... | |
| idempotent Object * | getNonReplicatedPublisher () |
| Get a non-replicated proxy to a publisher object for this topic. More... | |
| idempotent Object * | getPublisher () |
| Get a proxy to a publisher object for this topic. More... | |
| Ice::IdentitySeq | getSubscribers () |
| Retrieve the list of subscribers for this topic. More... | |
| void | link (Topic *linkTo, int cost) throws LinkExists |
| Create a link to the given topic. More... | |
| Object * | subscribeAndGetPublisher (QoS theQoS, Object *subscriber) throws AlreadySubscribed, InvalidSubscriber, BadQoS |
Subscribe with the given qos to this topic. More... | |
| void | unlink (Topic *linkTo) throws NoSuchLink |
Destroy the link from this topic to the given topic linkTo. More... | |
| idempotent void | unsubscribe (Object *subscriber) |
Unsubscribe the given subscriber. More... | |
Publishers publish information on a particular topic.
A topic logically represents a type.
| void destroy | ( | ) |
Destroy the topic.
| idempotent LinkInfoSeq getLinkInfoSeq | ( | ) |
Retrieve information on the current links.
| idempotent string getName | ( | ) |
| idempotent Object* getNonReplicatedPublisher | ( | ) |
Get a non-replicated proxy to a publisher object for this topic.
To publish data to a topic, the publisher calls getPublisher and then casts to the topic type. An unchecked cast must be used on this proxy.
| idempotent Object* getPublisher | ( | ) |
Get a proxy to a publisher object for this topic.
To publish data to a topic, the publisher calls getPublisher and then casts to the topic type. An unchecked cast must be used on this proxy. If a replicated IceStorm deployment is used this call may return a replicated proxy.
| Ice::IdentitySeq getSubscribers | ( | ) |
Retrieve the list of subscribers for this topic.
| void link | ( | Topic * | linkTo, |
| int | cost | ||
| ) | throws LinkExists |
Create a link to the given topic.
All events originating on this topic will also be sent to linkTo.
| linkTo | The topic to link to. |
| cost | The cost to the linked topic. |
| LinkExists | Raised if a link to the same topic already exists. |
| Object* subscribeAndGetPublisher | ( | QoS | theQoS, |
| Object * | subscriber | ||
| ) | throws AlreadySubscribed, InvalidSubscriber, BadQoS |
Subscribe with the given qos to this topic.
A per-subscriber publisher object is returned.
| theQoS | The quality of service parameters for this subscription. |
| subscriber | The subscriber's proxy. |
| AlreadySubscribed | Raised if the subscriber object is already subscribed. |
| InvalidSubscriber | Raised if the subscriber object is null. |
| BadQoS | Raised if the requested quality of service is unavailable or invalid. |
| void unlink | ( | Topic * | linkTo | ) | throws NoSuchLink |
Destroy the link from this topic to the given topic linkTo.
| linkTo | The topic to destroy the link to. |
| NoSuchLink | Raised if a link to the topic does not exist. |
| idempotent void unsubscribe | ( | Object * | subscriber | ) |
Unsubscribe the given subscriber.
| subscriber | The proxy of an existing subscriber. |