Package org.jcsp.net
Class Profile
- java.lang.Object
-
- org.jcsp.net.Profile
-
public class Profile extends java.lang.Object
This class is used to hold profiles of Nodes and Links.
Node profiles are not currently used.
Profile functionality is still being implemented.
-
-
Field Summary
Fields Modifier and Type Field Description private static Profile
alwaysMatchProfile
private boolean
exact
private static java.util.Hashtable
linkProfiles
private java.lang.String
name
private static java.util.Hashtable
nodeProfiles
private Requirement[]
requirements
private boolean
system
-
Constructor Summary
Constructors Modifier Constructor Description private
Profile(java.lang.String name, Requirement[] requirements, boolean exact, boolean system)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) static void
createNewLinkProfile(java.lang.String name, Requirement[] requirements, boolean exact)
(package private) static void
createNewNodeProfile(java.lang.String name, Requirement[] requirements, boolean exact)
boolean
equals(java.lang.Object o)
Compares this Profile with another object.(package private) static Profile
getAlwaysMatchProfile()
static Profile
getLinkProfile(java.lang.String name)
Returns a link profile of a certain name from a static collection of link profiles.static Profile
getNodeProfile(java.lang.String name)
Returns a Node profile of a certain name from a static collection of Node profiles.(package private) static Profile
getProtocolProfile(ProtocolID protocolID)
int
hashCode()
Returns a hash code for this object that follows the standard rule for hash codes stated in theObject
class.(package private) int
matches(Specification[] specs)
This tests whether a an array of Specification objects meet the requirements of this profile.(package private) boolean
requiresExactMatch()
-
-
-
Field Detail
-
alwaysMatchProfile
private static Profile alwaysMatchProfile
-
linkProfiles
private static java.util.Hashtable linkProfiles
-
nodeProfiles
private static java.util.Hashtable nodeProfiles
-
name
private java.lang.String name
-
exact
private boolean exact
-
system
private boolean system
-
requirements
private Requirement[] requirements
-
-
Constructor Detail
-
Profile
private Profile(java.lang.String name, Requirement[] requirements, boolean exact, boolean system)
-
-
Method Detail
-
createNewLinkProfile
static void createNewLinkProfile(java.lang.String name, Requirement[] requirements, boolean exact)
-
createNewNodeProfile
static void createNewNodeProfile(java.lang.String name, Requirement[] requirements, boolean exact)
-
getLinkProfile
public static Profile getLinkProfile(java.lang.String name)
Returns a link profile of a certain name from a static collection of link profiles.- Parameters:
name
- the name of theProfile
to obtain.- Returns:
- a matching link profile or null if no match is found.
-
getNodeProfile
public static Profile getNodeProfile(java.lang.String name)
Returns a Node profile of a certain name from a static collection of Node profiles.- Parameters:
name
- the name of theProfile
to obtain.- Returns:
- a matching Node profile or null if no match is found.
-
getAlwaysMatchProfile
static Profile getAlwaysMatchProfile()
-
getProtocolProfile
static Profile getProtocolProfile(ProtocolID protocolID)
-
matches
int matches(Specification[] specs)
This tests whether a an array of Specification objects meet the requirements of this profile. This method will sort the array of specs in order of name. This sort will change the original array.
-
requiresExactMatch
boolean requiresExactMatch()
-
equals
public boolean equals(java.lang.Object o)
Compares this Profile with another object.- Overrides:
equals
in classjava.lang.Object
- Parameters:
o
- another object to compare with this object.- Returns:
true
iff the supplied object is aProfile
object that is exactly equal.
-
hashCode
public int hashCode()
Returns a hash code for this object that follows the standard rule for hash codes stated in theObject
class.- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- an
int
hash code for this object.
-
-