pl.edu.pjwstk.yaod.objects
Class YSpider

java.lang.Object
  |
  +--pl.edu.pjwstk.yaod.objects.YObject
        |
        +--pl.edu.pjwstk.yaod.objects.YComplexObject
              |
              +--pl.edu.pjwstk.yaod.objects.YSpider
Direct Known Subclasses:
YProcedure

public class YSpider
extends YComplexObject

Klasa, ktorej zadaniem jest dodanie zachowania do statycznych struktur, jakimi sa atomy typu spider. Spider jest atomem umozliwiajacym modelowanie zlozonych struktur danych - jego zawartoscia sa referencje do innych obiektow. Kazdy YSpider posiada referencje do atomu, ktorego zawartoscia zarzadza. Podczas gdy w systemie moze istniec tylko jeden obiekt SpiderAtom reprezentujacy te sama jednostke danych, obiektow typu YSpider moze byc nieskonczona ilosc (rozroznienie to ma znaczenie przede wszystkim dla wspolbieznosci). Czesc metod realizowana jest poprzez delegacje (np. pobieranie nazwy), a czesc dodaje nowa funkcjonalnosc (np. zarzadzanie referencjami zwrotnymi). Poniewaz spider tworzy, odczytuje i usuwa obiekty, dlatego musi komunikowac sie z procesem uslugowym, ktory wykonuje dla niego te operacje.

Author:
M. Lentner, raist@ertel.com.pl

Method Summary
 ObjectID findMemberByName(java.lang.String name, ObjectID startPtr)
          Zwraca pierwszy obiekt podrzedny o podanej nazwie.
 ObjectID findMemberByNameAndType(java.lang.String name, byte type, ObjectID startPtr)
          Zwraca pierwszy obiekt podrzedny o podanej nazwie i typie.
 ObjectID findMemberByType(byte type, ObjectID startPtr)
          Zwraca pierwszy obiekt podrzedny o podanym typie.
 ObjectID getFirstSubordinate()
          Zwraca identyfikator pierwszego obiektu podrzednego.
 java.util.Enumeration getMembers()
          Zwraca wszystkie obiekty podrzedne.
 ObjectID getNextMember(ObjectID startID)
          Zwraca nastepny obiekt podrzedny w stosunku do podanego.
 ObjectID getNextSubordinate(ObjectID oid)
          Zwraca identyfikator nastepnego obiektu, ,,rowiesnika'' w hierarchii (na tym samym poziomie wzgledem obiektow podrzednych podanego obiektu nadrzednego).
 ObjectID getPreviousMember(ObjectID member)
          Zwraca identyfikator poprzedniego obiektu w grafie obiektow.
 java.util.Enumeration getSubordinates()
          Zwraca identyfikatory wszystkich obiektow lezacych na tym samym poziomie w hierarchii obiektow.
 
Methods inherited from class pl.edu.pjwstk.yaod.objects.YObject
connect, disconnect, getAtom, getBackward, getName, getNextSibling, getOID, getOwner, getPreviousSibling, getServer, reconnect, reconnectAfter, setName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getFirstSubordinate

public ObjectID getFirstSubordinate()
Zwraca identyfikator pierwszego obiektu podrzednego.
Returns:
identyfikator pierwszego obiektu podrzednego.

getSubordinates

public java.util.Enumeration getSubordinates()
Zwraca identyfikatory wszystkich obiektow lezacych na tym samym poziomie w hierarchii obiektow.
Overrides:
getSubordinates in class YComplexObject
Returns:
obiekt zawierajacy identyfikatory.

getNextSubordinate

public ObjectID getNextSubordinate(ObjectID oid)
                            throws NoSuchObjectException
Zwraca identyfikator nastepnego obiektu, ,,rowiesnika'' w hierarchii (na tym samym poziomie wzgledem obiektow podrzednych podanego obiektu nadrzednego).
Parameters:
oid - identyfikator poprzednika.
Returns:
comments
Throws:
-  

getMembers

public java.util.Enumeration getMembers()
Zwraca wszystkie obiekty podrzedne.
Overrides:
getMembers in class YComplexObject
Returns:
obiekt zawierajacy identyfikatory wszystkich obiektow podrzednych.

getNextMember

public ObjectID getNextMember(ObjectID startID)
Zwraca nastepny obiekt podrzedny w stosunku do podanego.
Overrides:
getNextMember in class YComplexObject
Parameters:
startID - identyfikator obiektu bazowego.
Returns:
oid nastepnego obiektu.

getPreviousMember

public ObjectID getPreviousMember(ObjectID member)
Zwraca identyfikator poprzedniego obiektu w grafie obiektow. TODO: do zaimplementowania
Overrides:
getPreviousMember in class YComplexObject
Parameters:
member - oid bazowego obiektu.
Returns:
oid poprzedniego obiektu.

findMemberByType

public ObjectID findMemberByType(byte type,
                                 ObjectID startPtr)
Zwraca pierwszy obiekt podrzedny o podanym typie. TODO: do zaimplementowania.
Parameters:
type - typ obiektu.
startPtr - identyfikator obiektu, od ktorego zaczac poszukiwania.
Returns:
oid znalezionego obiektu.

findMemberByName

public ObjectID findMemberByName(java.lang.String name,
                                 ObjectID startPtr)
Zwraca pierwszy obiekt podrzedny o podanej nazwie.
Parameters:
name - nazwa szukanego obiektu.
startPtr - identyfikator obiektu od ktorego zaczac poszukiwania.
Returns:
identyfikator znalezionego obiektu.

findMemberByNameAndType

public ObjectID findMemberByNameAndType(java.lang.String name,
                                        byte type,
                                        ObjectID startPtr)
Zwraca pierwszy obiekt podrzedny o podanej nazwie i typie.
Overrides:
findMemberByNameAndType in class YComplexObject
Parameters:
name - nazwa obiektu.
type - typ obiektu (obecnie nie jest obslugiwany).
strartPtr - identyfikator obiektu, od ktorego rozpoczac przeszukiwanie.
Returns:
identyfikator znalezionego obiektu.