Interface Topic

All Superinterfaces:
Object

public interface Topic extends Object
Publishers publish information on a particular topic. A topic logically represents a type.
See Also:
  • Method Details

    • getName

      String getName(Current current)
      Get the name of this topic.
      Parameters:
      current - The Current object for the invocation.
      Returns:
      The name of the topic.
      See Also:
    • getPublisher

      ObjectPrx getPublisher(Current current)
      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.
      Parameters:
      current - The Current object for the invocation.
      Returns:
      A proxy to publish data on this topic.
    • getNonReplicatedPublisher

      ObjectPrx getNonReplicatedPublisher(Current current)
      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.
      Parameters:
      current - The Current object for the invocation.
      Returns:
      A proxy to publish data on this topic.
    • subscribeAndGetPublisher

      ObjectPrx subscribeAndGetPublisher(Map<String,String> theQoS, ObjectPrx subscriber, Current current) throws AlreadySubscribed, BadQoS, InvalidSubscriber
      Subscribe with the given qos to this topic. A per-subscriber publisher object is returned.
      Parameters:
      theQoS - The quality of service parameters for this subscription.
      subscriber - The subscriber's proxy.
      current - The Current object for the invocation.
      Returns:
      The per-subscriber publisher object.
      Throws:
      AlreadySubscribed - Raised if the subscriber object is already subscribed.
      BadQoS - Raised if the requested quality of service is unavailable or invalid.
      InvalidSubscriber - Raised if the subscriber object is null.
      See Also:
    • unsubscribe

      void unsubscribe(ObjectPrx subscriber, Current current)
      Unsubscribe the given subscriber.
      Parameters:
      subscriber - The proxy of an existing subscriber.
      current - The Current object for the invocation.
      See Also:
    • link

      void link(TopicPrx linkTo, int cost, Current current) throws LinkExists
      Create a link to the given topic. All events originating on this topic will also be sent to linkTo.
      Parameters:
      linkTo - The topic to link to.
      cost - The cost to the linked topic.
      current - The Current object for the invocation.
      Throws:
      LinkExists - Raised if a link to the same topic already exists.
    • unlink

      void unlink(TopicPrx linkTo, Current current) throws NoSuchLink
      Destroy the link from this topic to the given topic linkTo.
      Parameters:
      linkTo - The topic to destroy the link to.
      current - The Current object for the invocation.
      Throws:
      NoSuchLink - Raised if a link to the topic does not exist.
    • getLinkInfoSeq

      LinkInfo[] getLinkInfoSeq(Current current)
      Retrieve information on the current links.
      Parameters:
      current - The Current object for the invocation.
      Returns:
      A sequence of LinkInfo objects.
    • getSubscribers

      Identity[] getSubscribers(Current current)
      Retrieve the list of subscribers for this topic.
      Parameters:
      current - The Current object for the invocation.
      Returns:
      The sequence of Ice identities for the subscriber objects.
    • destroy

      void destroy(Current current)
      Destroy the topic.
      Parameters:
      current - The Current object for the invocation.
    • ice_ids

      default String[] ice_ids(Current current)
      Description copied from interface: Object
      Returns the Slice type IDs of the interfaces supported by this object.
      Specified by:
      ice_ids in interface Object
      Parameters:
      current - The Current object for the invocation.
      Returns:
      The Slice type IDs of the interfaces supported by this object, in base-to-derived order. The first element of the returned array is always ::Ice::Object.
    • ice_id

      default String ice_id(Current current)
      Description copied from interface: Object
      Returns the Slice type ID of the most-derived interface supported by this object.
      Specified by:
      ice_id in interface Object
      Parameters:
      current - The Current object for the invocation.
      Returns:
      The Slice type ID of the most-derived interface.
    • ice_staticId

      static String ice_staticId()
      Description copied from interface: Object
      Returns the Slice type ID of the interface supported by this object.
      Returns:
      The return value is always ::Ice::Object.