|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface AccessCoordinator
A central point for tracking all shared objects accessed in the context
of a transaction, and managing any conflict these accesses may cause.
In this case, "shared object" means any object that is accessible within
any transaction on any node. An example would be a ManagedObject
as provided by the DataService.
Each sourceName determines a unique namespace of objects. Any
AccessReporter registered with the same sourceName
through a given AccessCoordinator instance, independent of the
objectIdType, is considered to report accesses to the same set
of shared objects. Conflicting accesses to a single object can be reported
to different AccessReporters if those reporters were obtained from
the same access coordinator using the same source name. Object accesses
reported to AccessReporters obtained from registering access
sources with different names will never conflict.
| Method Summary | ||
|---|---|---|
Transaction |
getConflictingTransaction(Transaction txn)
Find out what transaction, if still active, caused the given transaction to fail due to conflict. |
|
|
registerAccessSource(String sourceName,
Class<T> objectIdType)
Register as a provider of shared objects, and therefore a possible source of conflict between transactions. |
|
| Method Detail |
|---|
<T> AccessReporter<T> registerAccessSource(String sourceName,
Class<T> objectIdType)
DataService which provides access to
ManagedObjects and name bindings). This ensures that
conflict is managed for access to the reported objects, and
that a report of all accesses is available through profiling.
T - the type of the id object used to report accessessourceName - the name of the source of objects which may
cause conflict on accessobjectIdType - the type of the identifier that will be used
to identify accessed objects
AccessReporter used to notify the system
of access to shared objectsTransaction getConflictingTransaction(Transaction txn)
txn - a Transaction that failed due to conflict
Transaction that caused the provided
Transaction to fail due to conflict, or
null if there is no such active Transaction
|
RedDwarf, Version 0.10.1 2010-03-14 10:56:12 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||