|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--Log
Implementa l'insieme log che fa parte dello stato di ogni RM.
Field Summary | |
private java.util.Set |
log
Implementa l'insieme log con un oggetto compatibile con l'interfaccia java.util.Set. |
Constructor Summary | |
Log()
Crea un'istanza di Log vuoto. |
Method Summary | |
void |
addRecord(LogRecord lr)
Aggiunge un log-record all'insieme log. |
boolean |
addUpdateRecord(UpdateRecord ur)
Aggiunge un UpdateRecord all'insieme se non e' gia' presente un LogRecord con lo stesso cid. |
java.util.SortedSet |
compare(MultipartTimestamp ts)
Ritorna Un insieme ORDINATO che contiene tutte le occorrenze di UpdateRecord contenute nel log che hanno il campo prev minore o uguale al MultipartTimestamp passato come argomento |
boolean |
containsAckWithCid(Cid cid)
Ritorna true se esiste nell'insieme log un record di tipo ack e il cui cid e' uguale a quello passato come argomento. |
boolean |
containsUpdateWithCid(Cid cid)
Ritorna true se esiste nell'insieme log un record di tipo update e il cui cid e' uguale a quello passato come argomento. |
private boolean |
isKnown(LogRecord r,
MultipartTimestamp[] ts_table)
Ritorna true se il log-record passato come argomento è conosciuto da tutti i RM. |
void |
logAckGC(MultipartTimestamp[] ts_table,
Inval inv)
Elimina dall'insieme log i log-record di tipo ack conosciuti da tutti i RM. |
void |
logUpdateGC(MultipartTimestamp[] ts_table)
Elimina dall'insieme log i log-record di tipo update conosciuti da tutti i RM. |
static void |
main(java.lang.String[] args)
Rende la classe un'applicazione stand-alone per il testing. |
void |
merge(Log l,
MultipartTimestamp rep_ts)
Effettua il merge con l'insieme Log passato come argomento. |
java.lang.String |
toString()
Ridefinisce l'omonimo metodo della classe java.lang.Object per rappresentare come stringa un'istanza di Log. |
Methods inherited from class java.lang.Object |
|
Field Detail |
private java.util.Set log
Constructor Detail |
public Log()
Method Detail |
public void addRecord(LogRecord lr)
lr
- LogRecord da aggiungere all'insieme log.public boolean addUpdateRecord(UpdateRecord ur)
ur
- UpdateRecord da aggiungere all'insieme.public void merge(Log l, MultipartTimestamp rep_ts)
l
- Log con cui fare il merge.rep_ts
- timestamp del RM che effettua il merge.public void logUpdateGC(MultipartTimestamp[] ts_table)
ts_table
- array dei multipart timestamp noti dei RM.public void logAckGC(MultipartTimestamp[] ts_table, Inval inv)
ts_table
- array dei multipart timestamp noti dei RM.inv
- insieme inval dello stato del RM.public boolean containsAckWithCid(Cid cid)
cid
- cid da controllare.public boolean containsUpdateWithCid(Cid cid)
cid
- cid da controllare.private boolean isKnown(LogRecord r, MultipartTimestamp[] ts_table)
r
- log-record da verificare.ts_table
- array dei multipart timestamp noti dei RM.public java.util.SortedSet compare(MultipartTimestamp ts)
ts
- MultipartTimestamp su cui effettuare il controllopublic java.lang.String toString()
log : <num_el> elementi :
logRecord_1
logRecord_2
...
logRecord_n
public static void main(java.lang.String[] args)
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |