Most methods implemented by the secured repository can throw any exception that is a sub-class of atg.security.SecurityException
. Each method that can throw a SecurityException
is marked appropriately in one of the following interfaces:
SecuredRepository
SecuredMutableRepository
SecuredRepositoryItemDescriptor
SecuredRepositoryView
SecuredRepositoryItem
Methods that are inherited from the normal Repository interfaces and are marked as capable of throwing an atg.repository.RepositoryException
instead throw an atg.repository.RepositorySecurityException
. You can use the method RepositorySecurityException.getSecurityException()
to determine the nested exception.
Two methods do not throw a RepositoryException
:
RepositoryItem.getPropertyValue()
MutableRepositoryItem.setPropertyValue()
It is necessary, however, for them to throw a SecurityException
, so they throw an atg.security.RuntimeSecurityException
. You can use the method RuntimeSecurityException.getSecurityException()
to determine the nested exception.