edu.usc.alfa.xalfa.ast.primitive
Class PortalNode

java.lang.Object
  extended byedu.usc.alfa.xalfa.ast.Node
      extended byedu.usc.alfa.xalfa.ast.NamedNode
          extended byedu.usc.alfa.xalfa.ast.primitive.PortalNode
Direct Known Subclasses:
InputNode, OutputNode

public abstract class PortalNode
extends NamedNode

A portal is the entry or exit point for data and control. It defines a particular allowed datum as well as supports mapping to an internal portal of the same type. Every portal belongs to one portal group, and may also be the end point of one duct.


Field Summary
static java.lang.String AUTO
           
 
Constructor Summary
PortalNode(java.lang.String ID, java.lang.String label, java.lang.String behavior)
          Creates a new instance of PortalNode
 
Method Summary
abstract  void accept(edu.usc.alfa.xalfa.visitor.NodeVisitor v)
          The visitor method to analyze xAlfa objects.
 java.lang.String getAction()
          Find the action that can be performed at this portal
 DatumNode getAllows()
          Find the allowed datum for this portal
 DuctNode getDuct()
          Find a duct of which this portal is an end
 PortalGroupNode getGroup()
          Find the portal group of which this portal is a part
 PortalNode getMapping()
          Getter for property mapping.
 PortalNode getTemplate()
          Getter for property template.
 void setAllows(DatumNode allows)
          Setter for property allows.
 void setDuct(DuctNode duct)
          Setter for property duct.
 void setGroup(PortalGroupNode group)
          Setter for property twoWay.
 void setMapping(PortalNode mapping)
          Setter for property mapping.
 void setTemplate(PortalNode template)
          Setter for property template.
 java.lang.String toDebugString(int level)
          Generate debug information for this node.
 
Methods inherited from class edu.usc.alfa.xalfa.ast.NamedNode
getName
 
Methods inherited from class edu.usc.alfa.xalfa.ast.Node
equals, getID, getTabs, hashCode, nodeSequenceString, nodeSequenceString, toDebugString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

AUTO

public static final java.lang.String AUTO
See Also:
Constant Field Values
Constructor Detail

PortalNode

public PortalNode(java.lang.String ID,
                  java.lang.String label,
                  java.lang.String behavior)
Creates a new instance of PortalNode

Method Detail

accept

public abstract void accept(edu.usc.alfa.xalfa.visitor.NodeVisitor v)
Description copied from class: Node
The visitor method to analyze xAlfa objects. This method is part of the Visitor pattern from GOF.

Specified by:
accept in class Node
Parameters:
v - Node Visitor that wants to visit this node.

getAllows

public DatumNode getAllows()
Find the allowed datum for this portal

Returns:
DatumNode allowed datum

getDuct

public DuctNode getDuct()
Find a duct of which this portal is an end

Returns:
DuctNode ending at this portal

getGroup

public PortalGroupNode getGroup()
Find the portal group of which this portal is a part

Returns:
PortalGroupNode group of portals to which this portal belongs

getAction

public java.lang.String getAction()
Find the action that can be performed at this portal

Returns:
String action that can be performed at this portal

setDuct

public final void setDuct(DuctNode duct)
Setter for property duct.

Parameters:
duct - New value of property duct.

setAllows

public final void setAllows(DatumNode allows)
Setter for property allows.


setGroup

public final void setGroup(PortalGroupNode group)
Setter for property twoWay.


toDebugString

public java.lang.String toDebugString(int level)
Description copied from class: Node
Generate debug information for this node. Nesting levels are provided so that hierarchical information can be easily debugged. Typically, debugging information includes values of various parameters and the debugging information for internal objects

Specified by:
toDebugString in class Node
Parameters:
level - The level of visual nesting to produce in the output
Returns:
A String containing debugging information about the object.

getTemplate

public PortalNode getTemplate()
Getter for property template.

Returns:
Value of property template.

setTemplate

public void setTemplate(PortalNode template)
Setter for property template.

Parameters:
template - New value of property template.

getMapping

public PortalNode getMapping()
Getter for property mapping.

Returns:
Value of property mapping.

setMapping

public void setMapping(PortalNode mapping)
Setter for property mapping.

Parameters:
mapping - New value of property mapping.