public class SessionImpl extends AbstractSession implements NamespaceResolver, ManagerProvider
SessionImpl...ACTION_ADD_NODE, ACTION_READ, ACTION_REMOVE, ACTION_SET_PROPERTY| Modifier and Type | Method and Description |
|---|---|
void |
addListener(SessionListener listener)
Add a
SessionListener |
void |
addLockToken(String lt) |
void |
checkPermission(String absPath,
String actions) |
protected ItemManager |
createItemManager(HierarchyManager hierarchyManager) |
protected SessionItemStateManager |
createSessionItemStateManager(UpdatableItemStateManager workspaceStateManager,
ItemStateFactory isf) |
protected WorkspaceImpl |
createWorkspaceInstance(RepositoryConfig config,
SessionInfo sessionInfo) |
AccessControlManager |
getAccessControlManager() |
AccessControlProvider |
getAccessControlProvider() |
AccessManager |
getAccessManager() |
Object |
getAttribute(String name)
Always returns
null. |
String[] |
getAttributeNames()
Always returns an empty String array.
|
EffectiveNodeTypeProvider |
getEffectiveNodeTypeProvider() |
HierarchyManager |
getHierarchyManager() |
IdFactory |
getIdFactory() |
ContentHandler |
getImportContentHandler(String parentAbsPath,
int uuidBehavior) |
Item |
getItem(String absPath)
Returns the node or property at the given path.
|
ItemDefinitionProvider |
getItemDefinitionProvider() |
ValueFactory |
getJcrValueFactory()
Same as
Session.getValueFactory() but omits the check, if this repository
is really level 2 compliant. |
LockStateManager |
getLockStateManager()
Returns the
LockStateManager associated with this
ManagerProvider. |
String[] |
getLockTokens() |
NameFactory |
getNameFactory() |
NamePathResolver |
getNamePathResolver() |
NameResolver |
getNameResolver() |
NamespaceResolver |
getNamespaceResolver() |
Node |
getNode(String absPath)
Returns the node with the given absolute path.
|
Node |
getNodeByIdentifier(String id) |
Node |
getNodeByUUID(String uuid) |
NodeTypeDefinitionProvider |
getNodeTypeDefinitionProvider() |
PathResolver |
getPathResolver() |
String |
getPrefix(String uri)
Returns the prefix which is mapped to the given URI.
|
Property |
getProperty(String absPath)
Returns the property with the given absolute path.
|
QValueFactory |
getQValueFactory() |
Repository |
getRepository() |
RetentionManager |
getRetentionManager() |
Node |
getRootNode() |
String |
getURI(String prefix)
Returns the URI to which the given prefix is mapped.
|
String |
getUserID() |
ItemStateValidator |
getValidator() |
ValueFactory |
getValueFactory() |
VersionManager |
getVersionStateManager()
Returns the
VersionManager associated with this
ManagerProvider. |
Workspace |
getWorkspace() |
boolean |
hasCapability(String methodName,
Object target,
Object[] arguments) |
boolean |
hasPendingChanges() |
boolean |
hasPermission(String absPath,
String actions) |
Session |
impersonate(Credentials credentials)
Logs in the same workspace with the given credentials.
|
void |
importXML(String parentAbsPath,
InputStream in,
int uuidBehavior)
Parses the given input stream as an XML document and processes the
SAX events using the
ContentHandler returned by
Session.getImportContentHandler(String, int). |
boolean |
isLive() |
boolean |
itemExists(String absPath)
Calls
AbstractSession.getItem(String) with the given path and returns
true if the call succeeds. |
void |
logout()
Clears the local namespace mappings.
|
void |
move(String srcAbsPath,
String destAbsPath) |
boolean |
nodeExists(String absPath)
Checks whether a node with the given absolute path exists.
|
boolean |
propertyExists(String absPath)
Checks whether a property with the given absolute path exists.
|
void |
refresh(boolean keepChanges) |
void |
removeItem(String absPath)
Removes the identified item.
|
void |
removeListener(SessionListener listener)
Remove a
SessionListener |
void |
removeLockToken(String lt) |
void |
save() |
void |
setNamespacePrefix(String prefix,
String uri)
Modifies the session local namespace mappings to contain the given
prefix to URI mapping.
|
exportDocumentView, exportDocumentView, exportSystemView, exportSystemView, getNamespacePrefix, getNamespacePrefixes, getNamespaceURIpublic Repository getRepository()
getRepository in interface SessionSession.getRepository()public String getUserID()
getUserID in interface SessionSession.getUserID()public Object getAttribute(String name)
null.getAttribute in interface SessionSession.getAttribute(String)public String[] getAttributeNames()
getAttributeNames in interface SessionSession.getAttributeNames()public Workspace getWorkspace()
getWorkspace in interface SessionSession.getWorkspace()public Session impersonate(Credentials credentials) throws LoginException, RepositoryException
AbstractSessionThe default implementation:
Repository instance using
Session.getRepository()
Session.getWorkspace()
Workspace.getName()
Repository.login(Credentials, String) on the
retrieved repository with the given credentials and the retrieved
workspace name.
impersonate in interface Sessionimpersonate in class AbstractSessioncredentials - login credentialsRepositoryException - if an error occursLoginExceptionSession.impersonate(Credentials)public Node getRootNode() throws RepositoryException
getRootNode in interface SessionRepositoryExceptionSession.getRootNode()public Node getNodeByUUID(String uuid) throws ItemNotFoundException, RepositoryException
getNodeByUUID in interface SessionItemNotFoundExceptionRepositoryExceptionSession.getNodeByUUID(String)public Item getItem(String absPath) throws PathNotFoundException, RepositoryException
AbstractSessionThe default implementation:
Session.getNodeByIdentifier(String) for identifier
paths
PathNotFoundException if the given path does not
start with a slash.
Node.getNode(String) on the root node with the part of
the given path after the first slash
Node.getProperty(String) similarly in case the above
call fails with a PathNotFoundException
getItem in interface SessiongetItem in class AbstractSessionabsPath - absolute pathPathNotFoundException - if the given path is invalid or not foundRepositoryException - if another error occursSession.getItem(String)public boolean itemExists(String absPath) throws RepositoryException
AbstractSessionAbstractSession.getItem(String) with the given path and returns
true if the call succeeds. Returns false
if a PathNotFoundException was thrown. Other exceptions are
passed through.itemExists in interface SessionitemExists in class AbstractSessionabsPath - absolute pathtrue if an item exists at the given path,
false otherwiseRepositoryException - if an error occursSession.itemExists(String)public void move(String srcAbsPath, String destAbsPath) throws ItemExistsException, PathNotFoundException, VersionException, ConstraintViolationException, LockException, RepositoryException
move in interface SessionItemExistsExceptionPathNotFoundExceptionVersionExceptionConstraintViolationExceptionLockExceptionRepositoryExceptionSession.move(String, String)public void save()
throws AccessDeniedException,
ConstraintViolationException,
InvalidItemStateException,
VersionException,
LockException,
RepositoryException
save in interface SessionAccessDeniedExceptionConstraintViolationExceptionInvalidItemStateExceptionVersionExceptionLockExceptionRepositoryExceptionSession.save()public void refresh(boolean keepChanges)
throws RepositoryException
refresh in interface SessionRepositoryExceptionSession.refresh(boolean)public boolean hasPendingChanges()
throws RepositoryException
hasPendingChanges in interface SessionRepositoryExceptionSession.hasPendingChanges()public ValueFactory getValueFactory() throws UnsupportedRepositoryOperationException, RepositoryException
getValueFactory in interface SessionUnsupportedRepositoryOperationExceptionRepositoryExceptionSession.getValueFactory()public void checkPermission(String absPath, String actions) throws AccessControlException, RepositoryException
checkPermission in interface SessionAccessControlExceptionRepositoryExceptionSession.checkPermission(String, String)public ContentHandler getImportContentHandler(String parentAbsPath, int uuidBehavior) throws PathNotFoundException, ConstraintViolationException, VersionException, LockException, RepositoryException
getImportContentHandler in interface SessionPathNotFoundExceptionConstraintViolationExceptionVersionExceptionLockExceptionRepositoryExceptionSession.getImportContentHandler(String, int)public void importXML(String parentAbsPath, InputStream in, int uuidBehavior) throws IOException, PathNotFoundException, ItemExistsException, ConstraintViolationException, VersionException, InvalidSerializedDataException, LockException, RepositoryException
AbstractSessionContentHandler returned by
Session.getImportContentHandler(String, int).importXML in interface SessionimportXML in class AbstractSessionparentAbsPath - passed throughin - input stream to be parsed as XML and importeduuidBehavior - passed throughIOException - if an I/O error occursInvalidSerializedDataException - if an XML parsing error occursRepositoryException - if a repository error occursPathNotFoundExceptionItemExistsExceptionConstraintViolationExceptionVersionExceptionLockExceptionSession.importXML(String, java.io.InputStream, int)public void setNamespacePrefix(String prefix, String uri) throws RepositoryException
AbstractSessionThis behaviour is based on JSR 283 (JCR 2.0), but remains backwards compatible with JCR 1.0.
setNamespacePrefix in interface SessionsetNamespacePrefix in class AbstractSessionprefix - namespace prefixuri - namespace URINamespaceException - if the mapping is illegalRepositoryException - if a repository error occursSession.setNamespacePrefix(String, String)public void logout()
AbstractSessionsuper.logout() when overriding this method to avoid
namespace mappings to be carried over to a new session.logout in interface Sessionlogout in class AbstractSessionSession.logout()public boolean isLive()
isLive in interface SessionSession.isLive()public void addLockToken(String lt)
addLockToken in interface SessionSession.addLockToken(String)public String[] getLockTokens()
getLockTokens in interface SessionSession.getLockTokens()public void removeLockToken(String lt)
removeLockToken in interface SessionSession.removeLockToken(String)public AccessControlManager getAccessControlManager() throws RepositoryException
getAccessControlManager in interface SessionRepositoryExceptionSession.getAccessControlManager()public Node getNode(String absPath) throws RepositoryException
AbstractSessiongetNode in interface SessiongetNode in class AbstractSessionabsPath - absolute pathRepositoryException - if the node can not be accessedSession.getNode(String)public Node getNodeByIdentifier(String id) throws RepositoryException
getNodeByIdentifier in interface SessionRepositoryExceptionSession.getNodeByIdentifier(String)public Property getProperty(String absPath) throws RepositoryException
AbstractSessiongetProperty in interface SessiongetProperty in class AbstractSessionabsPath - absolute pathRepositoryException - if the property can not be accessedSession.getProperty(String)public RetentionManager getRetentionManager() throws UnsupportedRepositoryOperationException, RepositoryException
getRetentionManager in interface SessionUnsupportedRepositoryOperationExceptionRepositoryExceptionSession.getRetentionManager()public boolean hasCapability(String methodName, Object target, Object[] arguments) throws RepositoryException
hasCapability in interface SessionRepositoryExceptionSession.hasCapability(String, Object, Object[])public boolean hasPermission(String absPath, String actions) throws RepositoryException
hasPermission in interface SessionRepositoryExceptionSession.hasPermission(String, String)public boolean nodeExists(String absPath) throws RepositoryException
AbstractSessionnodeExists in interface SessionnodeExists in class AbstractSessionabsPath - absolute pathtrue if a node with the given path exists,
false otherwiseRepositoryException - if the path is invalidSession.nodeExists(String)public boolean propertyExists(String absPath) throws RepositoryException
AbstractSessionpropertyExists in interface SessionpropertyExists in class AbstractSessionabsPath - absolute pathtrue if a property with the given path exists,
false otherwiseRepositoryException - if the path is invalidSession.propertyExists(String)public void removeItem(String absPath) throws RepositoryException
AbstractSessionItem.remove() on the item removed by AbstractSession.getItem(String).removeItem in interface SessionremoveItem in class AbstractSessionabsPath - An absolute path of the item to be removedRepositoryException - if the item can not be removedSession.removeItem(String)public String getPrefix(String uri) throws NamespaceException
NamespaceResolvergetPrefix in interface NamespaceResolveruri - namespace URINamespaceException - if the URI is unknown.NamespaceResolver.getPrefix(String)public String getURI(String prefix) throws NamespaceException
NamespaceResolvergetURI in interface NamespaceResolverprefix - namespace prefixNamespaceException - if the prefix is unknown.NamespaceResolver.getURI(String)public void addListener(SessionListener listener)
SessionListenerlistener - the new listener to be informed on modificationspublic void removeListener(SessionListener listener)
SessionListenerlistener - an existing listenerprotected WorkspaceImpl createWorkspaceInstance(RepositoryConfig config, SessionInfo sessionInfo) throws RepositoryException
RepositoryExceptionprotected SessionItemStateManager createSessionItemStateManager(UpdatableItemStateManager workspaceStateManager, ItemStateFactory isf) throws RepositoryException
RepositoryExceptionprotected ItemManager createItemManager(HierarchyManager hierarchyManager)
public NamePathResolver getNamePathResolver()
getNamePathResolver in interface ManagerProviderManagerProvider.getNamePathResolver()public NameResolver getNameResolver()
getNameResolver in interface ManagerProviderManagerProvider.getNameResolver()public PathResolver getPathResolver()
getPathResolver in interface ManagerProviderManagerProvider.getPathResolver()public NamespaceResolver getNamespaceResolver()
getNamespaceResolver in interface ManagerProviderManagerProvider.getNamespaceResolver()public HierarchyManager getHierarchyManager()
getHierarchyManager in interface ManagerProviderManagerProvider.getHierarchyManager()public LockStateManager getLockStateManager()
ManagerProviderLockStateManager associated with this
ManagerProvider.getLockStateManager in interface ManagerProviderLockStateManager associated with this
ManagerProviderManagerProvider.getLockStateManager()public AccessManager getAccessManager()
getAccessManager in interface ManagerProviderManagerProvider.getAccessManager()public VersionManager getVersionStateManager()
ManagerProviderVersionManager associated with this
ManagerProvider.getVersionStateManager in interface ManagerProviderVersionManager associated with this
ManagerProviderManagerProvider.getVersionStateManager()public ItemDefinitionProvider getItemDefinitionProvider()
getItemDefinitionProvider in interface ManagerProviderManagerProvider.getItemDefinitionProvider()public NodeTypeDefinitionProvider getNodeTypeDefinitionProvider()
getNodeTypeDefinitionProvider in interface ManagerProviderManagerProvider.getNodeTypeDefinitionProvider()public EffectiveNodeTypeProvider getEffectiveNodeTypeProvider()
getEffectiveNodeTypeProvider in interface ManagerProviderManagerProvider.getEffectiveNodeTypeProvider()public QValueFactory getQValueFactory() throws RepositoryException
getQValueFactory in interface ManagerProviderRepositoryExceptionManagerProvider.getQValueFactory()public AccessControlProvider getAccessControlProvider() throws RepositoryException
getAccessControlProvider in interface ManagerProviderRepositoryExceptionManagerProvider.getAccessControlProvider()public ValueFactory getJcrValueFactory() throws RepositoryException
ManagerProviderSession.getValueFactory() but omits the check, if this repository
is really level 2 compliant. Therefore, this method may be used for
internal functionality only, that require creation and conversion of
JCR values.getJcrValueFactory in interface ManagerProviderRepositoryExceptionManagerProvider.getJcrValueFactory()public ItemStateValidator getValidator()
public IdFactory getIdFactory() throws RepositoryException
RepositoryExceptionpublic NameFactory getNameFactory() throws RepositoryException
RepositoryExceptionCopyright © 2004–2021 The Apache Software Foundation. All rights reserved.