org.sandev.generator.tags
Class NodeTagCall

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.NodeTagCall
All Implemented Interfaces:
com.sun.tools.doclets.Taglet

public class NodeTagCall
extends AbstractSandNodeTag

Handle @sand.call declarations.

Declares that this node makes a synchronous call to another node (as configured) with the specified message type.

parameters:

  1. fully qualified outbound message class name.
  2. fully qualified return message class name.
  3. unique name used as a root for the messaging method name, and the node instance configuration field. We recommend using the uncapitalized short name of the outbound message, unless you are calling more than one target with the same message, in which case you will need different unique names that make sense for that situation.
  4. comment (optional).

example effect: A corresponding query method is generated in the node base class, with a corresponding messaging configuration 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 outboundMessage
          The fully qualified name of the outbound message class for this synchronous call.
protected  java.lang.String returnMessage
          The fully qualified name of the returned message class from this synchronous 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
NodeTagCall()
           
 
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 getCoreMethodSig(boolean shortNames)
          Return the undecorated signature of the messaging method generated for this tag.
 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 NodeTagCall[] getNodeTagCalls(com.sun.javadoc.ClassDoc cd)
          Factory method to return the NodeTagCall elements of a class.
 java.lang.String getOutboundMessage()
          accessor for outboundMessage
 java.lang.String getOutboundMessageShortName()
          Return the short name of the outbound message name
 java.lang.String getReturnMessage()
          accessor for returnMessage
 java.lang.String getReturnMessageShortName()
          Return the short name of the returned message name
 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 setOutboundMessage(java.lang.String text)
          mutator for outboundMessage
 void setReturnMessage(java.lang.String text)
          mutator for returnMessage
 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

outboundMessage

protected java.lang.String outboundMessage
The fully qualified name of the outbound message class for this synchronous call.


returnMessage

protected java.lang.String returnMessage
The fully qualified name of the returned message class from this synchronous 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

NodeTagCall

public NodeTagCall()
Method Detail

getOutboundMessage

public java.lang.String getOutboundMessage()
accessor for outboundMessage


setOutboundMessage

public void setOutboundMessage(java.lang.String text)
mutator for outboundMessage


getReturnMessage

public java.lang.String getReturnMessage()
accessor for returnMessage


setReturnMessage

public void setReturnMessage(java.lang.String text)
mutator for returnMessage


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.


getCoreMethodSig

public java.lang.String getCoreMethodSig(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.


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.

getNodeTagCalls

public static NodeTagCall[] getNodeTagCalls(com.sun.javadoc.ClassDoc cd)
Factory method to return the NodeTagCall 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.


getOutboundMessageShortName

public java.lang.String getOutboundMessageShortName()
Return the short name of the outbound message name


getReturnMessageShortName

public java.lang.String getReturnMessageShortName()
Return the short name of the returned message name