org.sandev.generator.tags
Class NodeTagSubscribe

java.lang.Object
  extended by org.sandev.generator.tags.AbstractSandBaseTag
      extended by org.sandev.generator.tags.AbstractSandClassTag
          extended by org.sandev.generator.tags.AbstractSandNodeTag
              extended by org.sandev.generator.tags.NodeTagSubscribe
All Implemented Interfaces:
com.sun.tools.doclets.Taglet

public class NodeTagSubscribe
extends AbstractSandNodeTag

Handle @sand.subscribe declarations.

Declares that this node receives messages of the specified message class sent from a broadcasting node (as configured).

parameters:

  1. fully qualfied inbound message class name.
  2. unique name used as a root for the messaging method subscription configuration. We recommend using the uncapitalized short name of the inbound message, unless you are subscribing to more than one source for the same message class, in which case you will need different unique names that make sense for that situation.
  3. comment (optional)

example effect: An onDelivery method is generated in the node base class, and called when the specified message type is received via asynchronous send. A corresponding messaging configuration parameter is generated in the node instance class.


Field Summary
protected  java.lang.String comment
          Any comment text that was specified for this tag declaration
protected  java.lang.String configParam
          The configuration parameter that holds the messaging setup for a declared node instance.
static java.lang.String CORENAME
          The core name of this tag.
protected  java.lang.String inboundMessage
          The fully qualified name of the inbound message class for this asynchronous call.
static java.lang.String TAGNAME
          Our fixed name, used for hash lookup and text parsing.
 
Fields inherited from class org.sandev.generator.tags.AbstractSandBaseTag
PREFIX
 
Constructor Summary
NodeTagSubscribe()
           
 
Method Summary
static boolean exists(com.sun.javadoc.ClassDoc cd)
          Returns true if the given class contains this tag, false otherwise.
 java.lang.String getComment()
          accessor for comment
 java.lang.String getConfigParam()
          accessor for configParam
 java.lang.String getFrameworkMethodSig(boolean shortNames)
          Return the undecorated signature of the messaging method generated for this tag.
 java.lang.String getInboundMessage()
          accessor for inboundMessage
 java.lang.String getInstanceConfigParam()
          Return the name of the NodeInstance data member which will hold the messaging configuration for this declaration.
 java.lang.String getName()
          Return our tag name
static NodeTagSubscribe[] getNodeTagSubscribes(com.sun.javadoc.ClassDoc cd)
          Factory method to return the NodeTagSubscribe elements of a class.
 java.lang.String getUserMethodSig(boolean shortNames)
          Return the undecorated signature of the messaging method generated for this tag, which the user would typically override.
 void init(com.sun.javadoc.Tag tag)
          Initialize this instance from the tag information.
static void register(java.util.Map tagletMap)
          Registers this taglet when triggered by the taglet declaration being loaded in as part of the build.
 void setComment(java.lang.String text)
          mutator for comment
 void setConfigParam(java.lang.String text)
          mutator for configParam
 void setInboundMessage(java.lang.String text)
          mutator for inboundMessage
 java.lang.String toString(com.sun.javadoc.Tag tag)
          Return a documentation description of this tag.
 java.lang.String toString(com.sun.javadoc.Tag[] tags)
          Return a documentation description of these tags.
 
Methods inherited from class org.sandev.generator.tags.AbstractSandClassTag
inType
 
Methods inherited from class org.sandev.generator.tags.AbstractSandBaseTag
inConstructor, inField, inMethod, inOverview, inPackage, isInlineTag, registerHelper
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CORENAME

public static final java.lang.String CORENAME
The core name of this tag.

See Also:
Constant Field Values

inboundMessage

protected java.lang.String inboundMessage
The fully qualified name of the inbound message class for this asynchronous call.


configParam

protected java.lang.String configParam
The configuration parameter that holds the messaging setup for a declared node instance.


comment

protected java.lang.String comment
Any comment text that was specified for this tag declaration


TAGNAME

public static final java.lang.String TAGNAME
Our fixed name, used for hash lookup and text parsing.

See Also:
Constant Field Values
Constructor Detail

NodeTagSubscribe

public NodeTagSubscribe()
Method Detail

getInboundMessage

public java.lang.String getInboundMessage()
accessor for inboundMessage


setInboundMessage

public void setInboundMessage(java.lang.String text)
mutator for inboundMessage


getConfigParam

public java.lang.String getConfigParam()
accessor for configParam


setConfigParam

public void setConfigParam(java.lang.String text)
mutator for configParam


getComment

public java.lang.String getComment()
accessor for comment


setComment

public void setComment(java.lang.String text)
mutator for comment


init

public void init(com.sun.javadoc.Tag tag)
Initialize this instance from the tag information.


getFrameworkMethodSig

public java.lang.String getFrameworkMethodSig(boolean shortNames)
Return the undecorated signature of the messaging method generated for this tag. If shortNames is true, then use the unqualified names of the message parameters.


getUserMethodSig

public java.lang.String getUserMethodSig(boolean shortNames)
Return the undecorated signature of the messaging method generated for this tag, which the user would typically override. If shortNames is true, then use the unqualified names of the message parameters.


getInstanceConfigParam

public java.lang.String getInstanceConfigParam()
Return the name of the NodeInstance data member which will hold the messaging configuration for this declaration.


getName

public java.lang.String getName()
Return our tag name


register

public static void register(java.util.Map tagletMap)
Registers this taglet when triggered by the taglet declaration being loaded in as part of the build.


toString

public java.lang.String toString(com.sun.javadoc.Tag tag)
Return a documentation description of this tag. Passthrough to toString(Tag[] tags) for consistent processing. We always want a listing, even with only one tag present.

Specified by:
toString in interface com.sun.tools.doclets.Taglet
Specified by:
toString in class AbstractSandBaseTag
Parameters:
tag - the Tag representation of this custom tag.

toString

public java.lang.String toString(com.sun.javadoc.Tag[] tags)
Return a documentation description of these tags. We essentially just init ourselves with each tag description and then dump out some descriptive text.

Specified by:
toString in interface com.sun.tools.doclets.Taglet
Specified by:
toString in class AbstractSandBaseTag
Parameters:
tags - the array of Tags representing of this custom tag.

getNodeTagSubscribes

public static NodeTagSubscribe[] getNodeTagSubscribes(com.sun.javadoc.ClassDoc cd)
Factory method to return the NodeTagSubscribe elements of a class. Returns an empty array if no elements were found.


exists

public static boolean exists(com.sun.javadoc.ClassDoc cd)
Returns true if the given class contains this tag, false otherwise.