Archived Website:
This website is a static snapshot for archival purposes only.
It is no longer maintained or updated.
operators
Class CompoundOperator
java.lang.Object
|
+--dataanalysis.databases.DatabaseElement
|
+--operators.Operator
|
+--operators.CompoundOperator
- Direct Known Subclasses:
- PrintlnCompoundOperator
- public class CompoundOperator
- extends Operator
- implements java.util.List
Diese Klasse repr?sentiert zusammengesetzte Operatoren wie sie z.B. vom
OperatorLearner gebildet werden.
Sie k?nnen aus Operator,
ClassifierOperator oder
CompoundOperatorbestehen.
Bei der Erstellung eines CompoundOperators m?ssen folgende
Dinge beachtet werden:
- Dem
CompoundOperator steht als Wissensbasis nur
das zur Verf?gung, was er in der Vorbedingung vorfindet und sich
selbst w?hrend des Abarbeitens der Operatorenkomponenten erzeugt.
- Weil innerhalb des
CompoundOperators keine Belegung
der Vor- und Nachbedingungen der Operatorkomponenten stattfindet, hat der
Erbauer des KomponentenOperators daf?r Sorge zu tragen, dass die
Verzeigerung der PredArguments so erfolgt, dass der
Instanzenfluss zwischen den Operatoren gew?hrleistet ist.
- Die Komponentenoperatoren werden nacheinander ausgef?hrt. Dabei
kann jeweils nur genau ein Nachbedingungszweig des jeweiligen
Komponentenoperators ber?cksichtigt werden. Verzweigungen innerhalb
des
CompoundOperators werden nicht unterst?tzt.
- Der Nachbedingungsindex, der am
Ende der Ausf?hrung dieses Operators gilt, stimmt mit dem Index der
Nachbedingung des letzten ausgef?hrten Operatorkomponente ?berein, d.h.
der
CompoundOperator muss exakt soviele Nachbedingungen
haben wie seine letzte Komponente.
- Scheitert eine Operatorkomponente, so scheitert der gesamte Operator
Die allgemeinen Bemerkungen f?r Operatoren
gelten auch f?r diesen Operatortyp.
- Version:
- 1.5
- Author:
- Nils Malzahn
- See Also:
OperatorLearner,
Operator, Serialized Form
|
Field Summary |
private java.util.LinkedList |
operatorComponents
Diese Variable stellt den Zeiger auf die Datenstruktur zur Speicherung
der Operatoren des Verbunds dar. |
| Fields inherited from class operators.Operator |
added,
deleted,
OPCLASSIC,
OPCLASSIFIER,
OPCONDITIONAL,
opID,
OPREACTIVE,
OPTARGETMATCH,
opType,
postcondFullfilled,
postconds,
precond,
predicateIndexToVerify,
weight |
|
Constructor Summary |
CompoundOperator()
Dieser Konstruktor initialisiert die operatorComponents
des CompoundOperators mit einer leeren Liste. |
|
Method Summary |
void |
add(int index,
java.lang.Object element)
|
boolean |
add(java.lang.Object o)
Diese Methode soll genutzt werden, um Operatoren zum Compound
hinzugef?gt werden soll. |
boolean |
addAll(java.util.Collection c)
|
boolean |
addAll(int index,
java.util.Collection c)
|
void |
clear()
|
java.lang.Object |
clone()
Diese Methode erzeugt ein Deepcopy des CompoundOperator. |
boolean |
contains(java.lang.Object o)
|
boolean |
containsAll(java.util.Collection c)
|
Operator |
deepClone()
Deprecated. |
boolean |
equals(java.lang.Object o)
|
void |
eval()
Diese Methode veranlasst den Operator seine Arbeit zu tun, das heisst,
er versucht eine seiner Nachbedingungen zu erf?llen und erfolgreich zu
belegen. |
java.lang.Object |
get(int index)
|
int |
getNumberOfComponents()
Diese Methode |
int |
hashcode()
|
int |
indexOf(java.lang.Object o)
|
boolean |
isEmpty()
|
java.util.Iterator |
iterator()
|
int |
lastIndexOf(java.lang.Object o)
|
java.util.ListIterator |
listIterator()
|
java.util.ListIterator |
listIterator(int index)
|
java.lang.Object |
remove(int index)
|
boolean |
remove(java.lang.Object o)
|
boolean |
removeAll(java.util.Collection c)
|
boolean |
retainAll(java.util.Collection c)
|
java.lang.Object |
set(int index,
java.lang.Object element)
|
int |
size()
|
java.util.LinkedList |
splitCompound()
Diese Methode zerteilt den Operator in seine Einzelteile. |
java.util.List |
subList(int fromIndex,
int toIndex)
|
java.lang.Object[] |
toArray()
|
java.lang.Object[] |
toArray(java.lang.Object[] a)
|
java.lang.String |
toString()
Diese Methode gibt den Zustand des CompoundOperators inkl. |
| Methods inherited from class operators.Operator |
deepPointerClone,
getAdded,
getDeleted,
getFullfilledPostcondition,
getOpID,
getOpType,
getPostcond,
getPostcondFullfilled,
getPrecond,
getUnverifiedPrecondPred,
getWeight,
setAdded,
setDeleted,
setOpID,
setOpType,
setPostcond,
setPostcondFullfilled,
setPrecond,
setPredicateIndexToVerify,
setVerifiedPrecondPred,
setWeight |
| Methods inherited from class java.lang.Object |
,
finalize,
getClass,
hashCode,
notify,
notifyAll,
registerNatives,
wait,
wait,
wait |
operatorComponents
private java.util.LinkedList operatorComponents
- Diese Variable stellt den Zeiger auf die Datenstruktur zur Speicherung
der Operatoren des Verbunds dar.
- Since:
- 1.0
CompoundOperator
public CompoundOperator()
- Dieser Konstruktor initialisiert die
operatorComponents
des CompoundOperators mit einer leeren Liste.
- Since:
- 1.0
getNumberOfComponents
public int getNumberOfComponents()
- Diese Methode
- Returns:
int gibt die Anzahl der Operatoren, aus denen
der Operator zusammengesetzt ist, zur?ck- Since:
- 1.0
splitCompound
public java.util.LinkedList splitCompound()
- Diese Methode zerteilt den Operator in seine Einzelteile.
Dabei werden
CompoundOperator innerhalb dieses
CompoundOperator nicht zerteilt.
Die Methode k?nnte bei einem Planer, der Planning by Rewriting
beherrscht verwendet werden.
- Returns:
LinkedList Die Liste der Einzeloperatoren.- Since:
- 1.0
eval
public void eval()
throws OperatorFailedException
- Diese Methode veranlasst den Operator seine Arbeit zu tun, das heisst,
er versucht eine seiner Nachbedingungen zu erf?llen und erfolgreich zu
belegen.
Wenn der
Operator.opType Operator.OPTARGETMATCH ist, so scheitert
der Operator nicht, wenn keine Komponentenoperatoren existieren.
Bei jedem anderen Typ scheitert die Ausf?hrung in diesem Fall.
- Overrides:
- eval in class Operator
- Since:
- 1.0
add
public void add(int index,
java.lang.Object element)
- Specified by:
- add in interface java.util.List
add
public boolean add(java.lang.Object o)
- Diese Methode soll genutzt werden, um Operatoren zum Compound
hinzugef?gt werden soll. Der Operator wird nach allen Operatoren,
die zuvor hinzuge?gt wurden in den Verbund eingereiht.
- Specified by:
- add in interface java.util.List
- Parameters:
o - der Operator, der zum Compound hinzugef?gt werden soll.- Returns:
- true
addAll
public boolean addAll(java.util.Collection c)
- Specified by:
- addAll in interface java.util.List
addAll
public boolean addAll(int index,
java.util.Collection c)
- Specified by:
- addAll in interface java.util.List
clear
public void clear()
- Specified by:
- clear in interface java.util.List
- Overrides:
- clear in class Operator
contains
public boolean contains(java.lang.Object o)
- Specified by:
- contains in interface java.util.List
containsAll
public boolean containsAll(java.util.Collection c)
- Specified by:
- containsAll in interface java.util.List
get
public java.lang.Object get(int index)
- Specified by:
- get in interface java.util.List
hashcode
public int hashcode()
indexOf
public int indexOf(java.lang.Object o)
- Specified by:
- indexOf in interface java.util.List
isEmpty
public boolean isEmpty()
- Specified by:
- isEmpty in interface java.util.List
iterator
public java.util.Iterator iterator()
- Specified by:
- iterator in interface java.util.List
lastIndexOf
public int lastIndexOf(java.lang.Object o)
- Specified by:
- lastIndexOf in interface java.util.List
listIterator
public java.util.ListIterator listIterator()
- Specified by:
- listIterator in interface java.util.List
listIterator
public java.util.ListIterator listIterator(int index)
- Specified by:
- listIterator in interface java.util.List
remove
public java.lang.Object remove(int index)
- Specified by:
- remove in interface java.util.List
remove
public boolean remove(java.lang.Object o)
- Specified by:
- remove in interface java.util.List
removeAll
public boolean removeAll(java.util.Collection c)
- Specified by:
- removeAll in interface java.util.List
retainAll
public boolean retainAll(java.util.Collection c)
- Specified by:
- retainAll in interface java.util.List
set
public java.lang.Object set(int index,
java.lang.Object element)
- Specified by:
- set in interface java.util.List
size
public int size()
- Specified by:
- size in interface java.util.List
subList
public java.util.List subList(int fromIndex,
int toIndex)
- Specified by:
- subList in interface java.util.List
toArray
public java.lang.Object[] toArray()
- Specified by:
- toArray in interface java.util.List
toArray
public java.lang.Object[] toArray(java.lang.Object[] a)
- Specified by:
- toArray in interface java.util.List
toString
public java.lang.String toString()
- Diese Methode gibt den Zustand des CompoundOperators inkl. der
Zust?nde seiner KomponentenOperatoren in einen aus.
- Returns:
- String, der den Zustand repr?sentiert
- Overrides:
- toString in class Operator
- Since:
- 1.1
equals
public boolean equals(java.lang.Object o)
- Specified by:
- equals in interface java.util.List
- Overrides:
- equals in class Operator
clone
public java.lang.Object clone()
throws java.lang.CloneNotSupportedException
- Diese Methode erzeugt ein Deepcopy des
CompoundOperator.
- Returns:
- Klon des CompoundOperators
- Overrides:
- clone in class Operator
- Since:
- 1.4
deepClone
public Operator deepClone()
throws java.lang.CloneNotSupportedException
- Deprecated.
- Diese Methode erzeugt ein Deepcopy des CompoundOperators.
- Returns:
- Klon des CompoundOperators
- Overrides:
- deepClone in class Operator
- Since:
- 1.5