org.rdtdm.helpers.graph
Class Node

java.lang.Object
  |
  +--org.rdtdm.helpers.graph.Node
Direct Known Subclasses:
RSNode

public class Node
extends java.lang.Object

Node stellt genau einen Knoten in der Hierarchie des Suchraumes dar. In diesem Knoten werden Referenzen auf die ?ber- und untergeordneten Knoten verwalten. Ausserdem werden die Substitutionen zum ?bergang zu den untergeordneten Knoten gespeichert.



Copyright (c) 2001 by Dirk Münstermann
All Rights Reserved

Version:
$Revision: 1.1 $ ($Date: 2001/10/03 15:00:33 $)
Changelog:
 $Log: Node.java,v $
 Revision 1.1  2001/10/03 15:00:33  dirk
 init

 


Author:
Dirk Münstermann

Field Summary
private  java.util.Collection childs
           
private  java.lang.Object content
           
private  NodeAction na
           
private  java.util.ArrayList parents
           
private  boolean visited
           
 
Constructor Summary
Node()
           
Node(java.lang.Object obj)
           
 
Method Summary
 void addChild(Node child)
          F?gt einen untergeordneten Knoten hinzu.
 void addParent(Node parent)
          F?gt eine Referenz auf einen ?bergeordneten Knoten hinzu.
 java.lang.Object bfs()
           
private  boolean canTrim()
           
 java.lang.Object dfs()
           
 boolean equals(java.lang.Object obj)
          Liefert true, wenn das ?bergebene Objekt vom Typ Node ist und die Objekte identisch sind.
 java.util.Collection getChilds()
          Liefert eine Auflistung aller untergeordneter Knoten zurueck.
 java.lang.Object getContent()
           
 java.util.Collection getParents()
          Liefert aller untergeordneter Knoten als Liste zurueck.
private  boolean hasFound()
           
 boolean isLeaf()
          Liefert true, wenn der Knoten keine untergeordneten Knoten besitzt.
 boolean isRoot()
          Liefert true, wenn der Knoten keine ?bergeordneten Knoten besitzt.
 boolean isVisited()
          Liefert true, wenn der Knoten als bereits besucht markiert ist.
private  void postprocessing()
           
private  void preprocessing()
           
 void setContent(java.lang.Object obj)
           
 void setNodeAction(NodeAction na)
           
 void setVisited(boolean visited)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

content

private java.lang.Object content

parents

private java.util.ArrayList parents

childs

private java.util.Collection childs

visited

private boolean visited

na

private NodeAction na
Constructor Detail

Node

public Node()

Node

public Node(java.lang.Object obj)
Method Detail

equals

public boolean equals(java.lang.Object obj)
Liefert true, wenn das ?bergebene Objekt vom Typ Node ist und die Objekte identisch sind.

Overrides:
equals in class java.lang.Object
Parameters:
obj - Vergleichsobjekt
Returns:
true, wenn es identisch ist, sonst false.


toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

setContent

public void setContent(java.lang.Object obj)

getContent

public java.lang.Object getContent()

addParent

public void addParent(Node parent)
F?gt eine Referenz auf einen ?bergeordneten Knoten hinzu.

Parameters:
parent - ?bergeordneter Knoten


addChild

public void addChild(Node child)
F?gt einen untergeordneten Knoten hinzu.

Parameters:
child - untergeordneter Knoten


getChilds

public java.util.Collection getChilds()
Liefert eine Auflistung aller untergeordneter Knoten zurueck.

Returns:
Aufz?hlung vom Typ Collection mit Inhalten vom Typ Node


getParents

public java.util.Collection getParents()
Liefert aller untergeordneter Knoten als Liste zurueck.

Returns:
Liste vom Typ ArrayList mit Inhalten vom Typ Node .


isRoot

public boolean isRoot()
Liefert true, wenn der Knoten keine ?bergeordneten Knoten besitzt. D.h. er in der Hierarchie an der Spitze steht.

Returns:
true, wenn er root ist, sonst false.


isLeaf

public boolean isLeaf()
Liefert true, wenn der Knoten keine untergeordneten Knoten besitzt. D.h. er in der Hierarchie ganz unten steht.

Returns:
true, wenn er ein Blatt ist, sonst false.


isVisited

public boolean isVisited()
Liefert true, wenn der Knoten als bereits besucht markiert ist.

Returns:
true, wenn bereits besucht, sonst false.


setVisited

public void setVisited(boolean visited)

setNodeAction

public void setNodeAction(NodeAction na)

bfs

public java.lang.Object bfs()

dfs

public java.lang.Object dfs()

preprocessing

private void preprocessing()

postprocessing

private void postprocessing()

hasFound

private boolean hasFound()

canTrim

private boolean canTrim()