uk.ed.inf.graph.compound.impl
Class CompoundGraphMoveBuilder

java.lang.Object
  extended by uk.ed.inf.graph.compound.base.BaseGraphMoveBuilder
      extended by uk.ed.inf.graph.compound.impl.CompoundGraphMoveBuilder
All Implemented Interfaces:
ICompoundGraphMoveBuilder<BaseCompoundNode,BaseCompoundEdge>

public class CompoundGraphMoveBuilder
extends BaseGraphMoveBuilder


Constructor Summary
CompoundGraphMoveBuilder()
           
 
Method Summary
protected  void additionalInitialisation()
          Provides a hook for super classes to initialise its data-structures before copying begins, but after this classes move data-structures have been initialised.
protected  void additionalMoveTasks()
          Provide a hook for super classes to perform additional operations after this class has completed moving the compound graph.
protected  BaseCompoundEdge createMoveOfEdge(BaseCompoundEdge srcEdge, BaseChildCompoundGraph edgeOwner, BaseCompoundNode outNode, BaseCompoundNode inNode)
          Create a new edge that us a copy of another, which may be in a different graph this this one.
protected  BaseCompoundNode createMoveOfNode(BaseCompoundNode srcNode, BaseCompoundNode destParentNode)
          Create a compound node.
 
Methods inherited from class uk.ed.inf.graph.compound.base.BaseGraphMoveBuilder
getDestinationChildGraph, getMovedComponents, getSourceSubgraph, makeMove, setDestinatChildCompoundGraph, setSourceSubgraph
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CompoundGraphMoveBuilder

CompoundGraphMoveBuilder()
Method Detail

createMoveOfNode

protected BaseCompoundNode createMoveOfNode(BaseCompoundNode srcNode,
                                            BaseCompoundNode destParentNode)
Description copied from class: BaseGraphMoveBuilder
Create a compound node. This node MUST be added to the child graph of the destParentNode.

Specified by:
createMoveOfNode in class BaseGraphMoveBuilder
Returns:

createMoveOfEdge

protected BaseCompoundEdge createMoveOfEdge(BaseCompoundEdge srcEdge,
                                            BaseChildCompoundGraph edgeOwner,
                                            BaseCompoundNode outNode,
                                            BaseCompoundNode inNode)
Description copied from class: BaseGraphMoveBuilder
Create a new edge that us a copy of another, which may be in a different graph this this one. This edge MUST be added to the destination child graph.

Specified by:
createMoveOfEdge in class BaseGraphMoveBuilder
Parameters:
srcEdge - The edge to copy.
edgeOwner - The compound node that will "own" this edge.
Returns:
The newly created edge.

additionalInitialisation

protected void additionalInitialisation()
Description copied from class: BaseGraphMoveBuilder
Provides a hook for super classes to initialise its data-structures before copying begins, but after this classes move data-structures have been initialised.

Specified by:
additionalInitialisation in class BaseGraphMoveBuilder

additionalMoveTasks

protected void additionalMoveTasks()
Description copied from class: BaseGraphMoveBuilder
Provide a hook for super classes to perform additional operations after this class has completed moving the compound graph.

Specified by:
additionalMoveTasks in class BaseGraphMoveBuilder