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, getNamespaceURI
public Repository getRepository()
getRepository
in interface Session
Session.getRepository()
public String getUserID()
getUserID
in interface Session
Session.getUserID()
public Object getAttribute(String name)
null
.getAttribute
in interface Session
Session.getAttribute(String)
public String[] getAttributeNames()
getAttributeNames
in interface Session
Session.getAttributeNames()
public Workspace getWorkspace()
getWorkspace
in interface Session
Session.getWorkspace()
public Session impersonate(Credentials credentials) throws LoginException, RepositoryException
AbstractSession
The 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 Session
impersonate
in class AbstractSession
credentials
- login credentialsRepositoryException
- if an error occursLoginException
Session.impersonate(Credentials)
public Node getRootNode() throws RepositoryException
getRootNode
in interface Session
RepositoryException
Session.getRootNode()
public Node getNodeByUUID(String uuid) throws ItemNotFoundException, RepositoryException
getNodeByUUID
in interface Session
ItemNotFoundException
RepositoryException
Session.getNodeByUUID(String)
public Item getItem(String absPath) throws PathNotFoundException, RepositoryException
AbstractSession
The 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 Session
getItem
in class AbstractSession
absPath
- absolute pathPathNotFoundException
- if the given path is invalid or not foundRepositoryException
- if another error occursSession.getItem(String)
public boolean itemExists(String absPath) throws RepositoryException
AbstractSession
AbstractSession.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 Session
itemExists
in class AbstractSession
absPath
- 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 Session
ItemExistsException
PathNotFoundException
VersionException
ConstraintViolationException
LockException
RepositoryException
Session.move(String, String)
public void save() throws AccessDeniedException, ConstraintViolationException, InvalidItemStateException, VersionException, LockException, RepositoryException
save
in interface Session
AccessDeniedException
ConstraintViolationException
InvalidItemStateException
VersionException
LockException
RepositoryException
Session.save()
public void refresh(boolean keepChanges) throws RepositoryException
refresh
in interface Session
RepositoryException
Session.refresh(boolean)
public boolean hasPendingChanges() throws RepositoryException
hasPendingChanges
in interface Session
RepositoryException
Session.hasPendingChanges()
public ValueFactory getValueFactory() throws UnsupportedRepositoryOperationException, RepositoryException
getValueFactory
in interface Session
UnsupportedRepositoryOperationException
RepositoryException
Session.getValueFactory()
public void checkPermission(String absPath, String actions) throws AccessControlException, RepositoryException
checkPermission
in interface Session
AccessControlException
RepositoryException
Session.checkPermission(String, String)
public ContentHandler getImportContentHandler(String parentAbsPath, int uuidBehavior) throws PathNotFoundException, ConstraintViolationException, VersionException, LockException, RepositoryException
getImportContentHandler
in interface Session
PathNotFoundException
ConstraintViolationException
VersionException
LockException
RepositoryException
Session.getImportContentHandler(String, int)
public void importXML(String parentAbsPath, InputStream in, int uuidBehavior) throws IOException, PathNotFoundException, ItemExistsException, ConstraintViolationException, VersionException, InvalidSerializedDataException, LockException, RepositoryException
AbstractSession
ContentHandler
returned by
Session.getImportContentHandler(String, int)
.importXML
in interface Session
importXML
in class AbstractSession
parentAbsPath
- 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 occursPathNotFoundException
ItemExistsException
ConstraintViolationException
VersionException
LockException
Session.importXML(String, java.io.InputStream, int)
public void setNamespacePrefix(String prefix, String uri) throws RepositoryException
AbstractSession
This behaviour is based on JSR 283 (JCR 2.0), but remains backwards compatible with JCR 1.0.
setNamespacePrefix
in interface Session
setNamespacePrefix
in class AbstractSession
prefix
- namespace prefixuri
- namespace URINamespaceException
- if the mapping is illegalRepositoryException
- if a repository error occursSession.setNamespacePrefix(String, String)
public void logout()
AbstractSession
super.logout()
when overriding this method to avoid
namespace mappings to be carried over to a new session.logout
in interface Session
logout
in class AbstractSession
Session.logout()
public boolean isLive()
isLive
in interface Session
Session.isLive()
public void addLockToken(String lt)
addLockToken
in interface Session
Session.addLockToken(String)
public String[] getLockTokens()
getLockTokens
in interface Session
Session.getLockTokens()
public void removeLockToken(String lt)
removeLockToken
in interface Session
Session.removeLockToken(String)
public AccessControlManager getAccessControlManager() throws RepositoryException
getAccessControlManager
in interface Session
RepositoryException
Session.getAccessControlManager()
public Node getNode(String absPath) throws RepositoryException
AbstractSession
getNode
in interface Session
getNode
in class AbstractSession
absPath
- absolute pathRepositoryException
- if the node can not be accessedSession.getNode(String)
public Node getNodeByIdentifier(String id) throws RepositoryException
getNodeByIdentifier
in interface Session
RepositoryException
Session.getNodeByIdentifier(String)
public Property getProperty(String absPath) throws RepositoryException
AbstractSession
getProperty
in interface Session
getProperty
in class AbstractSession
absPath
- absolute pathRepositoryException
- if the property can not be accessedSession.getProperty(String)
public RetentionManager getRetentionManager() throws UnsupportedRepositoryOperationException, RepositoryException
getRetentionManager
in interface Session
UnsupportedRepositoryOperationException
RepositoryException
Session.getRetentionManager()
public boolean hasCapability(String methodName, Object target, Object[] arguments) throws RepositoryException
hasCapability
in interface Session
RepositoryException
Session.hasCapability(String, Object, Object[])
public boolean hasPermission(String absPath, String actions) throws RepositoryException
hasPermission
in interface Session
RepositoryException
Session.hasPermission(String, String)
public boolean nodeExists(String absPath) throws RepositoryException
AbstractSession
nodeExists
in interface Session
nodeExists
in class AbstractSession
absPath
- 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
AbstractSession
propertyExists
in interface Session
propertyExists
in class AbstractSession
absPath
- 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
AbstractSession
Item.remove()
on the item removed by AbstractSession.getItem(String)
.removeItem
in interface Session
removeItem
in class AbstractSession
absPath
- 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
NamespaceResolver
getPrefix
in interface NamespaceResolver
uri
- namespace URINamespaceException
- if the URI is unknown.NamespaceResolver.getPrefix(String)
public String getURI(String prefix) throws NamespaceException
NamespaceResolver
getURI
in interface NamespaceResolver
prefix
- namespace prefixNamespaceException
- if the prefix is unknown.NamespaceResolver.getURI(String)
public void addListener(SessionListener listener)
SessionListener
listener
- the new listener to be informed on modificationspublic void removeListener(SessionListener listener)
SessionListener
listener
- an existing listenerprotected WorkspaceImpl createWorkspaceInstance(RepositoryConfig config, SessionInfo sessionInfo) throws RepositoryException
RepositoryException
protected SessionItemStateManager createSessionItemStateManager(UpdatableItemStateManager workspaceStateManager, ItemStateFactory isf) throws RepositoryException
RepositoryException
protected ItemManager createItemManager(HierarchyManager hierarchyManager)
public NamePathResolver getNamePathResolver()
getNamePathResolver
in interface ManagerProvider
ManagerProvider.getNamePathResolver()
public NameResolver getNameResolver()
getNameResolver
in interface ManagerProvider
ManagerProvider.getNameResolver()
public PathResolver getPathResolver()
getPathResolver
in interface ManagerProvider
ManagerProvider.getPathResolver()
public NamespaceResolver getNamespaceResolver()
getNamespaceResolver
in interface ManagerProvider
ManagerProvider.getNamespaceResolver()
public HierarchyManager getHierarchyManager()
getHierarchyManager
in interface ManagerProvider
ManagerProvider.getHierarchyManager()
public LockStateManager getLockStateManager()
ManagerProvider
LockStateManager
associated with this
ManagerProvider
.getLockStateManager
in interface ManagerProvider
LockStateManager
associated with this
ManagerProvider
ManagerProvider.getLockStateManager()
public AccessManager getAccessManager()
getAccessManager
in interface ManagerProvider
ManagerProvider.getAccessManager()
public VersionManager getVersionStateManager()
ManagerProvider
VersionManager
associated with this
ManagerProvider
.getVersionStateManager
in interface ManagerProvider
VersionManager
associated with this
ManagerProvider
ManagerProvider.getVersionStateManager()
public ItemDefinitionProvider getItemDefinitionProvider()
getItemDefinitionProvider
in interface ManagerProvider
ManagerProvider.getItemDefinitionProvider()
public NodeTypeDefinitionProvider getNodeTypeDefinitionProvider()
getNodeTypeDefinitionProvider
in interface ManagerProvider
ManagerProvider.getNodeTypeDefinitionProvider()
public EffectiveNodeTypeProvider getEffectiveNodeTypeProvider()
getEffectiveNodeTypeProvider
in interface ManagerProvider
ManagerProvider.getEffectiveNodeTypeProvider()
public QValueFactory getQValueFactory() throws RepositoryException
getQValueFactory
in interface ManagerProvider
RepositoryException
ManagerProvider.getQValueFactory()
public AccessControlProvider getAccessControlProvider() throws RepositoryException
getAccessControlProvider
in interface ManagerProvider
RepositoryException
ManagerProvider.getAccessControlProvider()
public ValueFactory getJcrValueFactory() throws RepositoryException
ManagerProvider
Session.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 ManagerProvider
RepositoryException
ManagerProvider.getJcrValueFactory()
public ItemStateValidator getValidator()
public IdFactory getIdFactory() throws RepositoryException
RepositoryException
public NameFactory getNameFactory() throws RepositoryException
RepositoryException
Copyright © 2004–2021 The Apache Software Foundation. All rights reserved.