com.ibm.websphere.sib.wsn
Class TopicExpression

java.lang.Object
  extended by com.ibm.websphere.sib.wsn.TopicExpression

public class TopicExpression
extends java.lang.Object

This class represents the TopicExpressionType type from the WS-Notification Base Notification schema


Field Summary
protected  java.util.Map attributes
          A map of custom attributes set on the topic expression element.
static java.net.URI CONCRETE_TOPIC_PATH_EXPRESSION
          The Dialect value for a concrete topic path expression as defined by WS-Topics
protected  java.net.URI dialect
          The topic Dialect
static java.net.URI FULL_TOPIC_PATH_EXPRESSION
          The Dialect value for a fulle topic path expression as defined by WS-Topics
protected  java.util.Map prefixNSMappings
          A map of prefixes to namespaces for prefixes used in the topic expression.
static java.net.URI SIMPLE_TOPIC_EXPRESSION
          The Dialect value for a simple topic expression as defined by WS-Topics
protected  java.lang.String topic
          The value of the topic expression
 
Constructor Summary
TopicExpression()
          Default constructor.
TopicExpression(java.net.URI dialect, java.lang.String topic, java.util.Map prefixToNamespaceMappings)
           
 
Method Summary
 void addAttribute(javax.xml.soap.Name name, java.lang.String value)
          Add a custom attribute to the topic expression
 boolean equals(java.lang.Object obj)
           
 java.util.Iterator getAttributes()
          Get the names of the custom attributes defined on the topic expression.
 java.lang.String getAttributeValue(javax.xml.soap.Name name)
          Get the value for a custom attribute.
 java.net.URI getDialect()
          Get the Dialect value of this topic expression
 java.lang.String getNamespaceForPrefix(java.lang.String prefix)
          Get the namespace for a given prefix defined for this topic expression
 java.util.Iterator getNamespacePrefixes()
          Get an iterator over all the prefix values defined in the prefix to namespace map
 java.util.Map getNamespacePrefixesMap()
          Get the prefix to namespace map
 java.lang.String getTopic()
          Get the contents of the topic expression
 int hashCode()
           
 void setDialect(java.net.URI uri)
          Set the Dialect value of this topic expression.
 void setTopic(java.lang.String topic, java.util.Map prefixToNamespaceMappings)
          Set the contents of the topic expression
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

SIMPLE_TOPIC_EXPRESSION

public static final java.net.URI SIMPLE_TOPIC_EXPRESSION
The Dialect value for a simple topic expression as defined by WS-Topics


CONCRETE_TOPIC_PATH_EXPRESSION

public static final java.net.URI CONCRETE_TOPIC_PATH_EXPRESSION
The Dialect value for a concrete topic path expression as defined by WS-Topics


FULL_TOPIC_PATH_EXPRESSION

public static final java.net.URI FULL_TOPIC_PATH_EXPRESSION
The Dialect value for a fulle topic path expression as defined by WS-Topics


dialect

protected java.net.URI dialect
The topic Dialect


topic

protected java.lang.String topic
The value of the topic expression


prefixNSMappings

protected java.util.Map prefixNSMappings
A map of prefixes to namespaces for prefixes used in the topic expression. The keys and values in the map are Strings.


attributes

protected java.util.Map attributes
A map of custom attributes set on the topic expression element. The keys are javax.xml.soap.Name objects and the values are Strings.

Constructor Detail

TopicExpression

public TopicExpression()
Default constructor. If this constructor is used, it will be necessary to make a subsequent call to setDialect(URI) to set the required Dialect value.


TopicExpression

public TopicExpression(java.net.URI dialect,
                       java.lang.String topic,
                       java.util.Map prefixToNamespaceMappings)
Parameters:
dialect - The topic expression dialect. Three standard values are defined
  • http://docs.oasis-open.org/wsn/t-1/TopicExpression/Simple for simple topic expressions
  • http://docs.oasis-open.org/wsn/t-1/TopicExpression/Concrete for concrete topic path expressions
  • http://docs.oasis-open.org/wsn/t-1/TopicExpression/Full for full topic path expressions
topic - The contents of the topic expression in a format which is valid for the specified dialect
prefixToNamespaceMappings - A String (key) to String (value) map of prefix names to their corresponding namespaces. Mappings need to be specified for each prefix used in the topic expression content
Method Detail

getDialect

public java.net.URI getDialect()
Get the Dialect value of this topic expression

Returns:
The topic expression dialect

setDialect

public void setDialect(java.net.URI uri)
Set the Dialect value of this topic expression.

Parameters:
uri - The topic expression dialect

getTopic

public java.lang.String getTopic()
Get the contents of the topic expression

Returns:
The topic expression content

setTopic

public void setTopic(java.lang.String topic,
                     java.util.Map prefixToNamespaceMappings)
Set the contents of the topic expression

Parameters:
topic - The topic expression content
prefixToNamespaceMappings - A String (key) to String (value) map of prefix names to their corresponding namespaces. Mappings need to be specified for each prefix used in the topic expression content

getNamespacePrefixes

public java.util.Iterator getNamespacePrefixes()
Get an iterator over all the prefix values defined in the prefix to namespace map

Returns:
An iterator of the prefixes defined in the prefix to namespace map

getNamespacePrefixesMap

public java.util.Map getNamespacePrefixesMap()
Get the prefix to namespace map

Returns:
The prefix to namespace map

getNamespaceForPrefix

public java.lang.String getNamespaceForPrefix(java.lang.String prefix)
Get the namespace for a given prefix defined for this topic expression

Parameters:
prefix - The prefix for which the namespace is required
Returns:
The namespace corresponding to the prefix or null if no corresponding namespace exists

addAttribute

public void addAttribute(javax.xml.soap.Name name,
                         java.lang.String value)
                  throws java.lang.Exception
Add a custom attribute to the topic expression

Parameters:
name - The name of the custom attribute
value - The value of the custom attribute
Throws:
java.lang.Exception

getAttributes

public java.util.Iterator getAttributes()
Get the names of the custom attributes defined on the topic expression. This does not include the Dialect attribute. To get the Dialect use @see #getDialect()

Returns:
An iterator over the names of the custom attributes

getAttributeValue

public java.lang.String getAttributeValue(javax.xml.soap.Name name)
Get the value for a custom attribute. To get the Dialect use @see #getDialect()

Parameters:
name - The name of the custom attribute
Returns:
The value of the custom attribute

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object
See Also:
Object.hashCode()

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object
See Also:
Object.equals(java.lang.Object)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object
See Also:
Object.toString()