i3.dragos.gm.core.proxy
Class RelationEndProxy

java.lang.Object
  extended by i3.dragos.gm.core.proxy.GraphEntityProxy
      extended by i3.dragos.gm.core.proxy.RelationEndProxy
All Implemented Interfaces:
GraphEntity, RelationEnd, ExistenceCheckable, MetaAttributable

public class RelationEndProxy
extends GraphEntityProxy
implements RelationEnd

A RelationEndProxy delegates all method calls to the underlying relation end except for those that access fields which are used after a relation end has been deleted.

Author:
Boris Boehlen <boehlen@cs.rwth-aachen.de>

Field Summary
 
Fields inherited from class i3.dragos.gm.core.proxy.GraphEntityProxy
proxiedEntity
 
Constructor Summary
RelationEndProxy(RelationEnd r)
          Constructs a new wrapper for a relation end.
 
Method Summary
 Relation getRelation()
          Returns the relation the relation end belongs to.
 RelationEndClass getRelationEndClass()
          Returns the relation end's type.
 GraphEntity relatesTo()
          Returns the graph element the relation end is connected to.
 void relateTo(GraphEntity g)
          Sets the graph element the relation end is connected to.
 
Methods inherited from class i3.dragos.gm.core.proxy.GraphEntityProxy
checkExistence, checkExistenceOptional, equals, getAdjacentGraphEntities, getAdjacentRelations, getAdjacentRelations, getAllMetaAttributes, getAllValidAttributeValues, getAttributeValue, getDataSourceURL, getEdges, getEdges, getGraphEntityClass, getInternalIdentifier, getMetaAttribute, getParent, getProxyGraphEntity, getRelationEnds, getRelationEnds, getRelationEnds, getWrappedGraphEntity, hashCode, isAttributeValid, isIncident, isIncident, isMetaAttributeKeyReserved, isMetaAttributeSet, putAttributeValue, setAttributeInvalid, setMetaAttribute, toString, unsetMetaAttribute
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface i3.dragos.gm.core.GraphEntity
equals, getAdjacentGraphEntities, getAdjacentRelations, getAdjacentRelations, getAllValidAttributeValues, getAttributeValue, getDataSourceURL, getEdges, getEdges, getGraphEntityClass, getInternalIdentifier, getParent, getRelationEnds, getRelationEnds, getRelationEnds, getWrappedGraphEntity, hashCode, isAttributeValid, isIncident, isIncident, putAttributeValue, setAttributeInvalid
 
Methods inherited from interface i3.dragos.gm.core.schema.MetaAttributable
getAllMetaAttributes, getMetaAttribute, isMetaAttributeKeyReserved, isMetaAttributeSet, setMetaAttribute, unsetMetaAttribute
 
Methods inherited from interface i3.dragos.gm.core.schema.ExistenceCheckable
checkExistence, checkExistenceOptional
 

Constructor Detail

RelationEndProxy

public RelationEndProxy(RelationEnd r)
Constructs a new wrapper for a relation end.

Parameters:
r - The relation end to wrap.
Method Detail

getRelationEndClass

public RelationEndClass getRelationEndClass()
                                     throws DragosException
Returns the relation end's type.

Specified by:
getRelationEndClass in interface RelationEnd
Returns:
the relation end's type.
Throws:
DragosException - if something went wrong.

getRelation

public Relation getRelation()
                     throws DragosException
Returns the relation the relation end belongs to.

Specified by:
getRelation in interface RelationEnd
Returns:
The relation
Throws:
DragosException - if something went wrong.

relatesTo

public GraphEntity relatesTo()
                      throws DragosException
Returns the graph element the relation end is connected to.

Specified by:
relatesTo in interface RelationEnd
Returns:
The referenced graph element (may be null)
Throws:
DragosException - if something went wrong.

relateTo

public void relateTo(GraphEntity g)
              throws EntityNotFoundException,
                     DragosException
Sets the graph element the relation end is connected to.

Specified by:
relateTo in interface RelationEnd
Parameters:
g - The graphelement to connect to (may be null).
Throws:
EntityNotFoundException - if the target was not null and could not be found.
DragosException - if something went wrong.


Copyright © 2002-2008 RWTH Aachen, Department of Computer Science 3 (Software Engineering). All Rights Reserved.