y25.base
Interface EdgeMap

All Superinterfaces:
DataAcceptor, DataProvider, EdgeMap
All Known Implementing Classes:
LayeredGraph.EdgeMapImpl

public interface EdgeMap
extends EdgeMap

Provides access to data associated with an edge. A edge map can be considered as a map that allows only edges as keys. The edges used as keys for the getter/setter methods must belong to the same layered graph.

The values bound to the edges are initialized with Java(TM) default values(null, 0, 0.0, false) upon initialization.

This interface exists primarily because the original interface y.base.EdgeMap only allows edges that belong to the same graph as keys. This restriction is not posed by this interface. When working with layered graphs, there might be a situation where one EdgeMap should store information about edges from different graphs (wich all belong to the same layered graph) - and this is where this interface comes into play.

There is also another reason why this interface exists: orthogonality. The newly defined interfaces GraphMap and LayerEdgeMap both have a remove method, which is not true for the original y.base.NodeMap or y.base.EdgeMap.


Method Summary
 Object get(Object edge)
          Returns the value bound to the given edge.
 boolean getBool(Object edge)
          Returns the boolean value bound to the given edge.
 double getDouble(Object edge)
          Returns the double value bound to the given edge.
 int getInt(Object edge)
          Returns the integer value bound to the given edge.
 Object remove(Object edge)
          Removes the value stored for the given edge, if present.
 void set(Object edge, Object value)
          Associates the given value to the given edge.
 void setBool(Object edge, boolean value)
          Associates the given boolean value to the given edge.
 void setDouble(Object edge, double value)
          Associates the given double value to the given edge.
 void setInt(Object edge, int value)
          Associates the given integer value to the given edge.
 

Method Detail

remove

public Object remove(Object edge)
Removes the value stored for the given edge, if present. Returns the value that was previously stored for the graph, or null if there was no mapping for that edge. A null return can also mean that the map previously associated null with the given edge.


get

public Object get(Object edge)
Returns the value bound to the given edge. The value must have been assiciated to the given edge by a call to set. Returns null if the map contains no mapping for this key. A return value of null does not necessarily indicate that the map contains no mapping for the key; it is also possible that the map explicitly maps the key to null.

Specified by:
get in interface EdgeMap

getBool

public boolean getBool(Object edge)
Returns the boolean value bound to the given edge. The value must have been assiciated to the given edge by a call to setBool. Returns false if the map contains no mapping for this key. A return value of false does not necessarily indicate that the map contains no mapping for the key; it is also possible that the map explicitly maps the key to false.

Specified by:
getBool in interface EdgeMap

getDouble

public double getDouble(Object edge)
Returns the double value bound to the given edge. The value must have been assiciated to the given edge by a call to setDouble. Returns 0.0 if the map contains no mapping for this key. A return value of 0.0 does not necessarily indicate that the map contains no mapping for the key; it is also possible that the map explicitly maps the key to 0.0.

Specified by:
getDouble in interface EdgeMap

getInt

public int getInt(Object edge)
Returns the integer value bound to the given edge. The value must have been assiciated to the given edge by a call to setInt. Returns 0 if the map contains no mapping for this key. A return value of 0 does not necessarily indicate that the map contains no mapping for the key; it is also possible that the map explicitly maps the key to 0.

Specified by:
getInt in interface EdgeMap

set

public void set(Object edge,
                Object value)
Associates the given value to the given edge.

Specified by:
set in interface EdgeMap

setBool

public void setBool(Object edge,
                    boolean value)
Associates the given boolean value to the given edge.

Specified by:
setBool in interface EdgeMap

setDouble

public void setDouble(Object edge,
                      double value)
Associates the given double value to the given edge.

Specified by:
setDouble in interface EdgeMap

setInt

public void setInt(Object edge,
                   int value)
Associates the given integer value to the given edge.

Specified by:
setInt in interface EdgeMap