Package org.jcsp.net

# Class AbstractID

java.lang.Object
org.jcsp.net.AbstractID

All Implemented Interfaces:
  `Serializable`

Direct Known Subclasses:
  `ApplicationID`, `DomainID`, `GlobalID`, `NodeID`

public abstract class AbstractID extends Object implements Serializable

This is an abstract class that is sub-classed by classes whose instances should represent some kind of identifier and be part of a hierarchy of `AbstractID` objects.

This class has no public or protected constructor so it may not be sub-classed by JCSP users. JCSP.NET defines four implementations of this class; ``ApplicationID``, ``NodeID``, ``DomainID`` and ``GlobalID``.

An `ApplicationID` object identifies a JCSP application. A JCSP Application is formed of a process network initiated at a particular Node, but processes launched on a remote Node may also be part of the same application. The parent `AbstractIDinvalid input: '<'/code of `ApplicationID` objects are `NodeID` objects.`

A `NodeID` object identifies a particular JCSP Node. A JCSP Node is a Java Virtual Machine that has been initialized to form part of a JCSP.NET network. The parent `AbstractIDinvalid input: '<'/code of `NodeID` objects are `DomainID` objects.`

A `DomainID` object represents a domain of JCSP Nodes. Node Domains are not presently implemented but this class is included for completeness. In the future, it is envisaged that domain controllers will be introduced. At present, all `NodeID` objects have a parent `DomainID` equal to the Null Domain (this has a zero length string name).

A `GlobalID` object represents the global Node domain. This includes all domains, their sub-domains, and all Nodes within sub-domains. There only ever needs to be a single instance of this class. The parent of the Null Domain is a `GlobalID` object.

Author:
  Quickstone Technologies Limited
See Also:
  - Serialized Form

## Method Summary

Modifier and Type
Method
Description
`abstract AbstractID`
`getParentID()`
Returns this instance's parent `AbstractID` object.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Method Details

### getParentID

public abstract AbstractID getParentID()
Returns this instance's parent `AbstractID` object.

Returns:
  the parent `AbstractID` of this object.