pl.edu.pjwstk.yaod.atoms
Class Atom

java.lang.Object
  |
  +--pl.edu.pjwstk.yaod.atoms.Atom
All Implemented Interfaces:
Bufferable, java.io.Serializable
Direct Known Subclasses:
BackwardAtom, BinaryAtom, DoubleAtom, IntegerAtom, ReferenceAtom, RingAtom, SpiderAtom, StringAtom

public abstract class Atom
extends java.lang.Object
implements java.io.Serializable, Bufferable

Klasa reprezentuje atom, czyli strukture danych reprezentujaca obiekt warstwy logicznej. TODO: serializacja atomow za pomoca wlasnego mechanizmu (nie Javy) zapewni kilkukrotne zmniejszenie objetosci zserializowanego atomu.

Author:
M. Lentner, raist@ertel.com.pl
See Also:
Serialized Form

Field Summary
static byte ALL_TYPES
           
 
Constructor Summary
Atom(java.lang.String name)
          Tworzy nowy atom.
 
Method Summary
 AtomID getAID()
          Zwraca identyfikator atomu.
 java.lang.String getName()
          Zwraca nazwe atomu.
 AtomID getNext()
          Pobiera nastepny atom w grafie warstwy logicznej (nie dotyczy niektorych typow atomow nadrzednych).
 AtomID getOwner()
          Zwraca identyfikator atomu nadrzednego. (nie dotyczy niektorych typow atomow nadrzednych).
 AtomID getPrevious()
          Pobiera identyfikator poprzedniego atomu w grafie warstwy logicznej (nie dotyczy niektorych typow atomow nadrzednych).
 int getType()
          Zwraca typ atomu.
 boolean isModified()
          Sprawdza czy atom jest brudny (wymaga zapisania na dysku).
 void setAID(AtomID aid)
          Ustala identyfikator atomu.
 void setModified(boolean val)
          Ustala flage mowiaca, czy atom zostal zmodyfikowany i nalezy zapisac go na dysku przy najblizszym punkcie kontrolnym.
 void setName(java.lang.String newName)
          Ustala nowa nazwe atomu.
 void setNext(AtomID ptr)
          Ustala nastepny atom w grafie warstwy logicznej (nie dotyczy niektorych typow atomow nadrzednych).
 void setOwner(AtomID ptr)
          Ustala atom nadrzedny.
 void setPrevious(AtomID ptr)
          Ustala atom poprzedni w grafie warstwy logicznej. (nie dotyczy niektorych typow atomow nadrzednych).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ALL_TYPES

public static final byte ALL_TYPES
Constructor Detail

Atom

public Atom(java.lang.String name)
Tworzy nowy atom.
Parameters:
name - nazwa atomu.
Method Detail

getAID

public AtomID getAID()
Zwraca identyfikator atomu.
Returns:
identyfikator atomu.

setAID

public void setAID(AtomID aid)
Ustala identyfikator atomu.
Parameters:
aid - nowy identyfikator atomu.

setOwner

public void setOwner(AtomID ptr)
Ustala atom nadrzedny.
Parameters:
ptr - identyfikator atomu nadrzednego.

getOwner

public AtomID getOwner()
Zwraca identyfikator atomu nadrzednego. (nie dotyczy niektorych typow atomow nadrzednych).
Returns:
identyfikator atomu nadrzednego.

setPrevious

public void setPrevious(AtomID ptr)
Ustala atom poprzedni w grafie warstwy logicznej. (nie dotyczy niektorych typow atomow nadrzednych).
Parameters:
ptr - identyfikator poprzedniego atomu.

getPrevious

public AtomID getPrevious()
Pobiera identyfikator poprzedniego atomu w grafie warstwy logicznej (nie dotyczy niektorych typow atomow nadrzednych).
Returns:
identyfikator poprzedniego atomu.

setNext

public void setNext(AtomID ptr)
Ustala nastepny atom w grafie warstwy logicznej (nie dotyczy niektorych typow atomow nadrzednych).
Parameters:
ptr - identyfikator nastepnego atomu.

getNext

public AtomID getNext()
Pobiera nastepny atom w grafie warstwy logicznej (nie dotyczy niektorych typow atomow nadrzednych).
Returns:
identyfikator nastepnego atomu.

getName

public java.lang.String getName()
Zwraca nazwe atomu.
Returns:
nazwa atomu.

setName

public void setName(java.lang.String newName)
Ustala nowa nazwe atomu.
Parameters:
newName - nowa nazwa atomu.

getType

public int getType()
Zwraca typ atomu. Obecnie nie dziala - sprawdzanie typu za pomoca instanceof.
Returns:
identyfikator typu atomu.

setModified

public void setModified(boolean val)
Ustala flage mowiaca, czy atom zostal zmodyfikowany i nalezy zapisac go na dysku przy najblizszym punkcie kontrolnym.
Specified by:
setModified in interface Bufferable
Parameters:
val - zmodyfikowany (true), nie (false)

isModified

public boolean isModified()
Sprawdza czy atom jest brudny (wymaga zapisania na dysku).
Specified by:
isModified in interface Bufferable
Returns:
flaga oznaczajaca czy atom wymaga zapisu na dysku.