org.apache.muse.ws.notification.topics
Interface Topic

All Superinterfaces:
XmlSerializable
All Known Implementing Classes:
SimpleTopic

public interface Topic
extends XmlSerializable

Topic is an interface that represents the wsnt:Topic data structure described in WS-Notification v1.3 and WS-Topics v1.3. Instances of this type are collected by WS-N NotificationProducer implementations to implement topic filters on subscriptions.

Author:
Dan Jemiolo (danj)

Method Summary
 void addMessageType(QName messageType)
           
 void addTopic(Topic childTopic)
          Adds a child topic to the topic.
 QName getConcretePath()
           
 NotificationMessage getCurrentMessage()
           
 java.lang.String getMessagePattern()
           
 java.lang.String getMessagePatternDialect()
           
 java.util.Set getMessageTypes()
           
 java.lang.String getName()
           
 Topic getParentTopic()
           
 Topic getTopic(java.lang.String topicName)
           
 TopicNamespace getTopicNamespace()
           
 java.util.Collection getTopics()
           
 boolean hasTopic(java.lang.String topicName)
           
 boolean isFinal()
           
 boolean isRootTopic()
           
 void removeAllTopics()
           
 void removeMessageType(QName messageType)
           
 void removeTopic(java.lang.String topicName)
           
 void setCurrentMessage(NotificationMessage message)
           
 void setFinal(boolean isFinal)
           
 void setMessagePattern(java.lang.String messagePattern)
           
 void setParentTopic(Topic parentTopic)
           
 
Methods inherited from interface org.apache.muse.util.xml.XmlSerializable
toXML, toXML
 

Method Detail

addMessageType

public void addMessageType(QName messageType)

addTopic

public void addTopic(Topic childTopic)
              throws BaseFault
Adds a child topic to the topic.

Parameters:
childTopic -
Throws:
BaseFault

getConcretePath

public QName getConcretePath()
Returns:
A fully-qualified name for the topic.

getCurrentMessage

public NotificationMessage getCurrentMessage()
Returns:
The last message published to this topic.

getMessagePattern

public java.lang.String getMessagePattern()

getMessagePatternDialect

public java.lang.String getMessagePatternDialect()

getMessageTypes

public java.util.Set getMessageTypes()

getName

public java.lang.String getName()
Returns:
The local name of the topic.

getParentTopic

public Topic getParentTopic()

getTopic

public Topic getTopic(java.lang.String topicName)
Parameters:
topicName -
Returns:
The child topic with the given name, or null if no such topic exists.

getTopicNamespace

public TopicNamespace getTopicNamespace()
Returns:
The TopicNamespace that contains this Topic.

getTopics

public java.util.Collection getTopics()
Returns:
All of the child topics under this topic.

hasTopic

public boolean hasTopic(java.lang.String topicName)
Parameters:
topicName -
Returns:
True if this topic has a child topic with the given name.

isFinal

public boolean isFinal()
Returns:
True if the topic does not allow addition of child topics.

isRootTopic

public boolean isRootTopic()
Returns:
True if the topic has no parent topic.

removeAllTopics

public void removeAllTopics()

removeMessageType

public void removeMessageType(QName messageType)

removeTopic

public void removeTopic(java.lang.String topicName)

setCurrentMessage

public void setCurrentMessage(NotificationMessage message)
Parameters:
message - The last message published to this topic.

setFinal

public void setFinal(boolean isFinal)

setMessagePattern

public void setMessagePattern(java.lang.String messagePattern)

setParentTopic

public void setParentTopic(Topic parentTopic)
                    throws BaseFault
Throws:
BaseFault