Package org.jcsp.net2

Class NetChannelLocation

java.lang.Object
org.jcsp.net2.NetLocation
org.jcsp.net2.NetChannelLocation
All Implemented Interfaces:
Serializable

public final class NetChannelLocation extends NetLocation implements Serializable
This class is a data structure representing the location of a NetChannelInput in a network. The NetChannelLocation consists of the NodeID of the Node on which the NetChannelInput resides, and its Virtual Channel Number, which is the number uniquely identifying the NetChannelInput on said Node.

To acquire the NetChannelLocation of a NetBarrier, use the getLocation method:

NetChannelLocation location = (NetChannelLocation)chan.getLocation();

The location returned depends on whether the channel is a NetChannelInput or a NetChannelOutput end. An input end will return its own location. An output end will return the location of the input end it is connected to. This is because we consider a networked channel to be a single, virtual construct, with only one location. That location is where the input end is located.

See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      The SUID representing this class
      See Also:
    • nodeID

      private final NodeID nodeID
      The NodeID portion of the location
    • vcn

      private final int vcn
      The vcn portion of the location
  • Constructor Details

    • NetChannelLocation

      public NetChannelLocation(NodeID aNodeID, int aVCN)
      Creates a new NetChannelLocation
      Parameters:
      aNodeID - The NodeID part of the location
      aVCN - The vcn part of the location
  • Method Details

    • getNodeID

      public NodeID getNodeID()
      Gets the NodeID part of the location
      Specified by:
      getNodeID in class NetLocation
      Returns:
      The NodeID part of the NetChannelLocation
    • getNodeAddress

      public NodeAddress getNodeAddress()
      Gets the NodeAddress part of the location
      Specified by:
      getNodeAddress in class NetLocation
      Returns:
      The NodeAddress part of the NetChannelLocation
    • getVCN

      public int getVCN()
      Gets the vcn part of the location
      Returns:
      The VCN part of the NetChannelLocation
    • toString

      public String toString()
      Converts the NetChannelLocation object into a string representation of the form ncl://[NodeID]/[VCN]
      Overrides:
      toString in class Object
      Returns:
      The String form of the NetChannelLocation
    • parse

      public static NetChannelLocation parse(String str)
      Converts the string form of a NetChannelLocation back into its object form
      Parameters:
      str - The string representation of a NetChannelLocation
      Returns:
      A new NetChannelLocation created from the String representation