|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.jackrabbit.core.state.LocalItemStateManager
org.apache.jackrabbit.core.state.TransactionalItemStateManager
Extension to LocalItemStateManager
that remembers changes on
multiple save() requests and commits them only when an associated transaction
is itself committed.
Field Summary |
Fields inherited from class org.apache.jackrabbit.core.state.LocalItemStateManager |
sharedStateMgr, wspImpl |
Constructor Summary | |
TransactionalItemStateManager(SharedItemStateManager sharedStateMgr,
WorkspaceImpl wspImpl)
Creates a new LocalItemStateManager instance. |
Method Summary | |
void |
commit(TransactionContext tx)
Commit changes made within a transaction |
ItemState |
getItemState(ItemId id)
Return an item state, given its item id. If this state manager is committing changes, this method first checks the commitLog ThreadLocal. |
NodeReferences |
getNodeReferences(NodeReferencesId id)
Return a node references object, given its target id If this state manager is committing changes, this method first checks the commitLog ThreadLocal. |
boolean |
hasItemState(ItemId id)
Return a flag indicating whether an item state for a given item id exists. If this state manager is committing changes, this method first checks the commitLog ThreadLocal. |
boolean |
hasNodeReferences(NodeReferencesId id)
Return a flag indicating whether a node references object for a given target id exists. If this state manager is committing changes, this method first checks the commitLog ThreadLocal. |
void |
prepare(TransactionContext tx)
Prepare a transaction |
void |
rollback(TransactionContext tx)
Rollback changes made within a transaction |
void |
setTransactionContext(TransactionContext tx)
Set transaction context. |
protected void |
update(ChangeLog changeLog)
End an update operation. Fetch the states and references from the parent (shared) item manager, reconnect them to the items collected in our (local) change log and overwrite the shared items with our copies. If associated to a transaction, simply merge the changes given to the ones already known (removing items that were first added and then again deleted). |
Methods inherited from class org.apache.jackrabbit.core.state.LocalItemStateManager |
cancel, createNew, createNew, destroy, dispose, edit, getNodeState, getPropertyState, inEditMode, stateCreated, stateDestroyed, stateDiscarded, stateModified, store, store, update |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public TransactionalItemStateManager(SharedItemStateManager sharedStateMgr, WorkspaceImpl wspImpl)
LocalItemStateManager
instance.
sharedStateMgr
- shared state managerMethod Detail |
public void setTransactionContext(TransactionContext tx)
tx
- transaction context.public void prepare(TransactionContext tx) throws TransactionException
tx
- transaction context
TransactionException
- if an error occurspublic void commit(TransactionContext tx) throws TransactionException
tx
- transaction context
TransactionException
- if an error occurspublic void rollback(TransactionContext tx)
tx
- transaction contextpublic ItemState getItemState(ItemId id) throws NoSuchItemStateException, ItemStateException
getItemState
in interface ItemStateManager
getItemState
in class LocalItemStateManager
NoSuchItemStateException
ItemStateException
public boolean hasItemState(ItemId id)
hasItemState
in interface ItemStateManager
hasItemState
in class LocalItemStateManager
public NodeReferences getNodeReferences(NodeReferencesId id) throws NoSuchItemStateException, ItemStateException
getNodeReferences
in interface ItemStateManager
getNodeReferences
in class LocalItemStateManager
NoSuchItemStateException
ItemStateException
public boolean hasNodeReferences(NodeReferencesId id)
hasNodeReferences
in interface ItemStateManager
hasNodeReferences
in class LocalItemStateManager
protected void update(ChangeLog changeLog) throws StaleItemStateException, ItemStateException
update
in class LocalItemStateManager
changeLog
- change log containing local states and references
ItemStateException
- if an error occurs
StaleItemStateException
- if at least one of the affected item
states has become stale in the meantime
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |