org.apache.jackrabbit.jcr2spi.state
Class SessionItemStateManager

java.lang.Object
  extended by org.apache.jackrabbit.jcr2spi.state.SessionItemStateManager
All Implemented Interfaces:
OperationVisitor, UpdatableItemStateManager

public class SessionItemStateManager
extends Object
implements UpdatableItemStateManager, OperationVisitor

SessionItemStateManager ...


Constructor Summary
SessionItemStateManager(UpdatableItemStateManager workspaceItemStateMgr, ItemStateValidator validator, QValueFactory qValueFactory, ItemStateFactory isf, ManagerProvider mgrProvider)
          Creates a new SessionItemStateManager instance.
 
Method Summary
 void adjustReferences(ReferenceChangeTracker refTracker)
          Adjust references at the end of a successful XML import.
 void dispose()
          Disposes this UpdatableItemStateManager and frees resources.
 void execute(ChangeLog changes)
          Executes the operations passed with the given change log and modifies the affected item states accordingly.
 void execute(Operation operation)
          Executes the given operation and modifies the affected item states accordingly.
 boolean hasPendingChanges()
           
 void save(ItemState state)
          This will save state and all descendants items of state that are transiently modified in a single step.
 void undo(ItemState itemState)
          This will undo all changes made to state and descendant items of state inside this item state manager.
 void visit(AddLabel operation)
           
 void visit(AddNode operation)
           
 void visit(AddProperty operation)
           
 void visit(Checkin operation)
           
 void visit(Checkout operation)
           
 void visit(Clone operation)
           
 void visit(Copy operation)
           
 void visit(LockOperation operation)
           
 void visit(LockRefresh operation)
           
 void visit(LockRelease operation)
           
 void visit(Merge operation)
           
 void visit(Move operation)
           
 void visit(Remove operation)
           
 void visit(RemoveLabel operation)
           
 void visit(RemoveVersion operation)
           
 void visit(ReorderNodes operation)
           
 void visit(ResolveMergeConflict operation)
           
 void visit(Restore operation)
           
 void visit(SetMixin operation)
           
 void visit(SetPropertyValue operation)
           
 void visit(Update operation)
           
 void visit(WorkspaceImport operation)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SessionItemStateManager

public SessionItemStateManager(UpdatableItemStateManager workspaceItemStateMgr,
                               ItemStateValidator validator,
                               QValueFactory qValueFactory,
                               ItemStateFactory isf,
                               ManagerProvider mgrProvider)
Creates a new SessionItemStateManager instance.

Parameters:
workspaceItemStateMgr -
validator -
qValueFactory -
isf -
mgrProvider -
Method Detail

hasPendingChanges

public boolean hasPendingChanges()
Returns:
true if this manager has any transient state; false otherwise.

save

public void save(ItemState state)
          throws ReferentialIntegrityException,
                 InvalidItemStateException,
                 RepositoryException
This will save state and all descendants items of state that are transiently modified in a single step. If this operation fails, no item will have been saved.

Parameters:
state - the root state of the update operation
Throws:
ReferentialIntegrityException
InvalidItemStateException
RepositoryException

undo

public void undo(ItemState itemState)
          throws ConstraintViolationException,
                 RepositoryException
This will undo all changes made to state and descendant items of state inside this item state manager.

Parameters:
itemState - the root state of the cancel operation.
Throws:
ConstraintViolationException
RepositoryException - if undoing changes made to state and descendant items is not a closed set of changes. That is, at least another item needs to be canceled as well in another sub-tree.

adjustReferences

public void adjustReferences(ReferenceChangeTracker refTracker)
                      throws ConstraintViolationException,
                             RepositoryException
Adjust references at the end of a successful XML import.

Parameters:
refTracker -
Throws:
ConstraintViolationException
RepositoryException

execute

public void execute(Operation operation)
             throws RepositoryException
Executes the given operation and modifies the affected item states accordingly.

Specified by:
execute in interface UpdatableItemStateManager
Throws:
RepositoryException
See Also:
UpdatableItemStateManager.execute(Operation)

execute

public void execute(ChangeLog changes)
             throws RepositoryException
Executes the operations passed with the given change log and modifies the affected item states accordingly.

Specified by:
execute in interface UpdatableItemStateManager
Throws:
RepositoryException
See Also:
UpdatableItemStateManager.execute(ChangeLog)

dispose

public void dispose()
Disposes this UpdatableItemStateManager and frees resources.

Specified by:
dispose in interface UpdatableItemStateManager
See Also:
UpdatableItemStateManager.dispose()

visit

public void visit(AddNode operation)
           throws LockException,
                  ConstraintViolationException,
                  AccessDeniedException,
                  ItemExistsException,
                  NoSuchNodeTypeException,
                  UnsupportedRepositoryOperationException,
                  VersionException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
LockException
ConstraintViolationException
AccessDeniedException
ItemExistsException
NoSuchNodeTypeException
UnsupportedRepositoryOperationException
VersionException
RepositoryException
See Also:
OperationVisitor.visit(AddNode)

visit

public void visit(AddProperty operation)
           throws ValueFormatException,
                  LockException,
                  ConstraintViolationException,
                  AccessDeniedException,
                  ItemExistsException,
                  UnsupportedRepositoryOperationException,
                  VersionException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
ValueFormatException
LockException
ConstraintViolationException
AccessDeniedException
ItemExistsException
UnsupportedRepositoryOperationException
VersionException
RepositoryException
See Also:
OperationVisitor.visit(AddProperty)

visit

public void visit(Move operation)
           throws LockException,
                  ConstraintViolationException,
                  AccessDeniedException,
                  ItemExistsException,
                  UnsupportedRepositoryOperationException,
                  VersionException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
LockException
ConstraintViolationException
AccessDeniedException
ItemExistsException
UnsupportedRepositoryOperationException
VersionException
RepositoryException
See Also:
OperationVisitor.visit(Move)

visit

public void visit(Remove operation)
           throws ConstraintViolationException,
                  AccessDeniedException,
                  UnsupportedRepositoryOperationException,
                  VersionException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
ConstraintViolationException
AccessDeniedException
UnsupportedRepositoryOperationException
VersionException
RepositoryException
See Also:
OperationVisitor.visit(Remove)

visit

public void visit(SetMixin operation)
           throws ConstraintViolationException,
                  AccessDeniedException,
                  NoSuchNodeTypeException,
                  UnsupportedRepositoryOperationException,
                  VersionException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
ConstraintViolationException
AccessDeniedException
NoSuchNodeTypeException
UnsupportedRepositoryOperationException
VersionException
RepositoryException
See Also:
OperationVisitor.visit(SetMixin)

visit

public void visit(SetPropertyValue operation)
           throws ValueFormatException,
                  LockException,
                  ConstraintViolationException,
                  AccessDeniedException,
                  ItemExistsException,
                  UnsupportedRepositoryOperationException,
                  VersionException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
ValueFormatException
LockException
ConstraintViolationException
AccessDeniedException
ItemExistsException
UnsupportedRepositoryOperationException
VersionException
RepositoryException
See Also:
OperationVisitor.visit(SetPropertyValue)

visit

public void visit(ReorderNodes operation)
           throws ConstraintViolationException,
                  AccessDeniedException,
                  UnsupportedRepositoryOperationException,
                  VersionException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
ConstraintViolationException
AccessDeniedException
UnsupportedRepositoryOperationException
VersionException
RepositoryException
See Also:
OperationVisitor.visit(ReorderNodes)

visit

public void visit(Clone operation)
           throws NoSuchWorkspaceException,
                  LockException,
                  ConstraintViolationException,
                  AccessDeniedException,
                  ItemExistsException,
                  UnsupportedRepositoryOperationException,
                  VersionException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
NoSuchWorkspaceException
LockException
ConstraintViolationException
AccessDeniedException
ItemExistsException
UnsupportedRepositoryOperationException
VersionException
RepositoryException
See Also:
OperationVisitor.visit(Clone)

visit

public void visit(Copy operation)
           throws NoSuchWorkspaceException,
                  LockException,
                  ConstraintViolationException,
                  AccessDeniedException,
                  ItemExistsException,
                  UnsupportedRepositoryOperationException,
                  VersionException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
NoSuchWorkspaceException
LockException
ConstraintViolationException
AccessDeniedException
ItemExistsException
UnsupportedRepositoryOperationException
VersionException
RepositoryException
See Also:
OperationVisitor.visit(Clone)

visit

public void visit(Checkout operation)
           throws RepositoryException,
                  UnsupportedRepositoryOperationException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
RepositoryException
UnsupportedRepositoryOperationException
See Also:
OperationVisitor.visit(Clone)

visit

public void visit(Checkin operation)
           throws UnsupportedRepositoryOperationException,
                  LockException,
                  InvalidItemStateException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
UnsupportedRepositoryOperationException
LockException
InvalidItemStateException
RepositoryException
See Also:
OperationVisitor.visit(Clone)

visit

public void visit(Update operation)
           throws NoSuchWorkspaceException,
                  AccessDeniedException,
                  LockException,
                  InvalidItemStateException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
NoSuchWorkspaceException
AccessDeniedException
LockException
InvalidItemStateException
RepositoryException
See Also:
OperationVisitor.visit(Update)

visit

public void visit(Restore operation)
           throws VersionException,
                  PathNotFoundException,
                  ItemExistsException,
                  UnsupportedRepositoryOperationException,
                  LockException,
                  InvalidItemStateException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
VersionException
PathNotFoundException
ItemExistsException
UnsupportedRepositoryOperationException
LockException
InvalidItemStateException
RepositoryException
See Also:
OperationVisitor.visit(Restore)

visit

public void visit(Merge operation)
           throws NoSuchWorkspaceException,
                  AccessDeniedException,
                  MergeException,
                  LockException,
                  InvalidItemStateException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
NoSuchWorkspaceException
AccessDeniedException
MergeException
LockException
InvalidItemStateException
RepositoryException
See Also:
OperationVisitor.visit(Merge)

visit

public void visit(ResolveMergeConflict operation)
           throws VersionException,
                  InvalidItemStateException,
                  UnsupportedRepositoryOperationException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
VersionException
InvalidItemStateException
UnsupportedRepositoryOperationException
RepositoryException
See Also:
OperationVisitor.visit(ResolveMergeConflict)

visit

public void visit(LockOperation operation)
           throws AccessDeniedException,
                  InvalidItemStateException,
                  UnsupportedRepositoryOperationException,
                  LockException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
AccessDeniedException
InvalidItemStateException
UnsupportedRepositoryOperationException
LockException
RepositoryException
See Also:
OperationVisitor.visit(LockOperation)

visit

public void visit(LockRefresh operation)
           throws AccessDeniedException,
                  InvalidItemStateException,
                  UnsupportedRepositoryOperationException,
                  LockException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
AccessDeniedException
InvalidItemStateException
UnsupportedRepositoryOperationException
LockException
RepositoryException
See Also:
OperationVisitor.visit(LockRefresh)

visit

public void visit(LockRelease operation)
           throws AccessDeniedException,
                  InvalidItemStateException,
                  UnsupportedRepositoryOperationException,
                  LockException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
AccessDeniedException
InvalidItemStateException
UnsupportedRepositoryOperationException
LockException
RepositoryException
See Also:
OperationVisitor.visit(LockRelease)

visit

public void visit(AddLabel operation)
           throws VersionException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
VersionException
RepositoryException
See Also:
OperationVisitor.visit(AddLabel)

visit

public void visit(RemoveLabel operation)
           throws VersionException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
VersionException
RepositoryException
See Also:
OperationVisitor.visit(RemoveLabel)

visit

public void visit(RemoveVersion operation)
           throws VersionException,
                  AccessDeniedException,
                  ReferentialIntegrityException,
                  RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
VersionException
AccessDeniedException
ReferentialIntegrityException
RepositoryException
See Also:
OperationVisitor.visit(RemoveVersion)

visit

public void visit(WorkspaceImport operation)
           throws RepositoryException
Specified by:
visit in interface OperationVisitor
Throws:
UnsupportedOperationException
RepositoryException
See Also:
OperationVisitor.visit(WorkspaceImport)


Copyright © 2004-2008 The Apache Software Foundation. All Rights Reserved.