org.apache.jackrabbit.core
Class ItemManager

java.lang.Object
  extended by org.apache.jackrabbit.core.ItemManager
All Implemented Interfaces:
ItemStateListener

public class ItemManager
extends Object
implements ItemStateListener

There's one ItemManager instance per Session instance. It is the factory for Node and Property instances.

The ItemManager's responsibilities are:

If the parent Session is an XASession, there is one ItemManager instance per started global transaction.


Field Summary
protected  SessionImpl session
           
protected  SessionContext sessionContext
          Component context of the associated session.
 
Constructor Summary
protected ItemManager(SessionContext sessionContext)
          Creates a new per-session instance ItemManager instance.
 
Method Summary
 ItemImpl getItem(ItemId id)
           
 ItemImpl getItem(Path path)
          Deprecated. As of JSR 283, a Path doesn't anymore uniquely identify an Item, therefore getNode(Path) and getProperty(Path) should be used instead.
 NodeImpl getNode(NodeId id, NodeId parentId)
          Returns a node with a given id and parent id.
 NodeImpl getNode(Path path)
           
 PropertyImpl getProperty(Path path)
           
 void itemDestroyed(ItemId id, ItemData data)
          
 boolean itemExists(ItemId id)
          Checks if the item with the given id exists.
 boolean itemExists(Path path)
          Deprecated. As of JSR 283, a Path doesn't anymore uniquely identify an Item, therefore nodeExists(Path) and propertyExists(Path) should be used instead.
 void itemInvalidated(ItemId id, ItemData data)
          
 boolean nodeExists(Path path)
          Checks whether a node exists at the specified path.
 boolean propertyExists(Path path)
          Checks whether a property exists at the specified path.
 void stateCreated(ItemState created)
          Called when an ItemState has successfully been created (i.e. its underlying persistent state was created).
 void stateDestroyed(ItemState destroyed)
          Called when an ItemState has successfully been removed (i.e. its underlying persistent state has been destroyed).
 void stateDiscarded(ItemState discarded)
          Called when an ItemState has been discarded (i.e. it has been rendered 'invalid').
 void stateModified(ItemState modified)
          Called when an ItemState has successfully been modified (i.e. its underlying persistent state has changed).
 String toString()
          
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

sessionContext

protected final SessionContext sessionContext
Component context of the associated session.


session

protected final SessionImpl session
Constructor Detail

ItemManager

protected ItemManager(SessionContext sessionContext)
Creates a new per-session instance ItemManager instance.

Parameters:
sessionContext - component context of the associated session
Method Detail

itemExists

public boolean itemExists(Path path)
Deprecated. As of JSR 283, a Path doesn't anymore uniquely identify an Item, therefore nodeExists(Path) and propertyExists(Path) should be used instead.

Checks whether an item exists at the specified path.

Parameters:
path - path to the item to be checked
Returns:
true if the specified item exists

nodeExists

public boolean nodeExists(Path path)
Checks whether a node exists at the specified path.

Parameters:
path - path to the node to be checked
Returns:
true if a node exists at the specified path

propertyExists

public boolean propertyExists(Path path)
Checks whether a property exists at the specified path.

Parameters:
path - path to the property to be checked
Returns:
true if a property exists at the specified path

itemExists

public boolean itemExists(ItemId id)
Checks if the item with the given id exists.

Parameters:
id - id of the item to be checked
Returns:
true if the specified item exists

getItem

public ItemImpl getItem(Path path)
                 throws PathNotFoundException,
                        AccessDeniedException,
                        RepositoryException
Deprecated. As of JSR 283, a Path doesn't anymore uniquely identify an Item, therefore getNode(Path) and getProperty(Path) should be used instead.

Returns the node at the specified absolute path in the workspace. If no such node exists, then it returns the property at the specified path. If no such property exists a PathNotFoundException is thrown.

Parameters:
path -
Returns:
Throws:
PathNotFoundException
AccessDeniedException
RepositoryException

getNode

public NodeImpl getNode(Path path)
                 throws PathNotFoundException,
                        AccessDeniedException,
                        RepositoryException
Parameters:
path -
Returns:
Throws:
PathNotFoundException
AccessDeniedException
RepositoryException

getProperty

public PropertyImpl getProperty(Path path)
                         throws PathNotFoundException,
                                AccessDeniedException,
                                RepositoryException
Parameters:
path -
Returns:
Throws:
PathNotFoundException
AccessDeniedException
RepositoryException

getItem

public ItemImpl getItem(ItemId id)
                 throws ItemNotFoundException,
                        AccessDeniedException,
                        RepositoryException
Parameters:
id -
Returns:
Throws:
RepositoryException
ItemNotFoundException
AccessDeniedException

getNode

public NodeImpl getNode(NodeId id,
                        NodeId parentId)
                 throws ItemNotFoundException,
                        AccessDeniedException,
                        RepositoryException
Returns a node with a given id and parent id. If the indicated node is shareable, there might be multiple nodes associated with the same id, but there'is only one node with the given parent id.

Parameters:
id - node id
parentId - parent node id
Returns:
node
Throws:
RepositoryException - if an error occurs
ItemNotFoundException
AccessDeniedException

itemInvalidated

public void itemInvalidated(ItemId id,
                            ItemData data)


itemDestroyed

public void itemDestroyed(ItemId id,
                          ItemData data)


toString

public String toString()

Overrides:
toString in class Object

stateCreated

public void stateCreated(ItemState created)
Called when an ItemState has successfully been created (i.e. its underlying persistent state was created).

Specified by:
stateCreated in interface ItemStateListener
Parameters:
created - the ItemState that has been 'created'

stateModified

public void stateModified(ItemState modified)
Called when an ItemState has successfully been modified (i.e. its underlying persistent state has changed).

Specified by:
stateModified in interface ItemStateListener
Parameters:
modified - the ItemState that has been 'modified'

stateDestroyed

public void stateDestroyed(ItemState destroyed)
Called when an ItemState has successfully been removed (i.e. its underlying persistent state has been destroyed).

Specified by:
stateDestroyed in interface ItemStateListener
Parameters:
destroyed - the ItemState that has been 'destroyed'

stateDiscarded

public void stateDiscarded(ItemState discarded)
Called when an ItemState has been discarded (i.e. it has been rendered 'invalid').

Specified by:
stateDiscarded in interface ItemStateListener
Parameters:
discarded - the ItemState that has been discarded
See Also:
ItemState.discard()


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