Plexus v0.13.1

com.phoenixst.plexus
Interface Graph.Edge

All Known Implementing Classes:
AbstractIntegerNodeGraph.EdgeImpl, DefaultEdge, DefaultObjectEdge, DefaultSimpleEdge
Enclosing interface:
Graph

public static interface Graph.Edge

An interface describing an edge in a Graph. Please see equals( Object ) for important information on implementing this interface.


Method Summary
 boolean equals(Object object)
          Returns whether or not some other object is equal to this one.
 Object getHead()
          Returns the node which is the head of this Graph.Edge.
 Object getOtherEndpoint(Object node)
          Returns the node which is at the other end of this Graph.Edge than the specified node.
 Object getTail()
          Returns the node which is the tail of this Graph.Edge.
 Object getUserObject()
          Returns the user object contained in this Graph.Edge.
 int hashCode()
          Returns the hash code for this Graph.Edge.
 boolean isDirected()
          Returns whether or not this Graph.Edge is directed.
 void setUserObject(Object object)
          Sets the user object contained in this Graph.Edge.
 

Method Detail

isDirected

boolean isDirected()
Returns whether or not this Graph.Edge is directed.

Returns:
whether or not this Graph.Edge is directed.

getUserObject

Object getUserObject()
Returns the user object contained in this Graph.Edge.

Returns:
the user object contained in this Graph.Edge.

setUserObject

void setUserObject(Object object)
Sets the user object contained in this Graph.Edge.

Parameters:
object - the user object to replace the one in this Graph.Edge.
Throws:
ClassCastException - if the class of object prevents it from being added to the Graph containing this Graph.Edge.
IllegalArgumentException - if some aspect of object prevents it from being added to the Graph containing this Graph.Edge.
IllegalArgumentException - if object is null and the Graph containing this Graph.Edge does not not permit null edges.
UnsupportedOperationException - if this method is not supported by this Graph.Edge.

getTail

Object getTail()
Returns the node which is the tail of this Graph.Edge.

Returns:
the node which is the tail of this Graph.Edge.

getHead

Object getHead()
Returns the node which is the head of this Graph.Edge.

Returns:
the node which is the head of this Graph.Edge.

getOtherEndpoint

Object getOtherEndpoint(Object node)
Returns the node which is at the other end of this Graph.Edge than the specified node.

Parameters:
node - the node which is the endpoint of this Graph.Edge not to return.
Returns:
the node which is at the other end of this Graph.Edge than the specified node.
Throws:
IllegalArgumentException - if this Graph.Edge is not incident on the specified node.

equals

boolean equals(Object object)
Returns whether or not some other object is equal to this one. It is vitally important that two Graph.Edges only be .equals() when they refer to the same actual edge in the graph. Which edge this is does not change when the contained user-defined object changes. In a multigraph, the endpoints and contained user-defined object are generally not sufficiently distinguishing characteristics. Accepting the default implementation from Object, which uses reference equality, should be preferred unless Graph.Edges are lazily created on demand.

Description copied from class: Object

Overrides:
equals in class Object

hashCode

int hashCode()
Returns the hash code for this Graph.Edge. Since it is mutable, the contained user-defined object should not be used when computing the hash code.

Description copied from class: Object

Overrides:
hashCode in class Object

Plexus v0.13.1

See the Plexus project home, hosted by SourceForge.
Copyright ? 1994-2006, by Phoenix Software Technologists, Inc. and others. All Rights Reserved. Use is subject to license terms.