abstract class ChildItem extends BasicItem
Shareable
parent item. This class implements the initPermissions(int, int)
method and sets the permissions for the child
item based on the permissions for the parent item.
If the logged in user has read permission for the parent, READ permission is granted. If the logged in user has write permission for the parent, WRITE, DELETE and CREATE permission is granted.
This class should only be used if the parent item itself hasn't
overridden the initPermissions
method, since that method
is never called. This class can be used even if the immediate parent
isn't a shareable item, as long as it is possible for a child item
to follow a chain of association to the actual parent where the permissions
are set. For example BioAssay
--> BioAssaySet
-->
Experiment
.
Shareable
Modifier and Type | Method and Description |
---|---|
(package private) Permission |
getPermissionForUse()
Get the permission that is required on the parent item that gives
use permission on the child item.
|
(package private) Permission |
getPermissionForWriteDeleteAndCreate()
Get the permission that is required on the parent item that gives
write, delete and create permission on the child item.
|
(package private) PluginPermission |
getPluginPermissions() |
(package private) abstract SharedData |
getSharedParent()
Get the shareable parent item of this child item.
|
(package private) void |
initPermissions(int granted,
int denied)
If the logged in user has read permission for the parent,
read permission is granted.
|
addAnnotatableParents, addUsingItems, addUsingItems, breakCircularReferences, checkBatchAnnotatableUsage, checkPermission, equals, getBasicData, getData, getDbControl, getId, getPermissions, getSessionControl, getUsingItems, getVersion, hashCode, hasPermission, isDetached, isInDatabase, isUsed, onAfterCommit, onAfterInsert, onBeforeCommit, onRollback, setDbControl, setProjectDefaults, toString, validate
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getType
ChildItem(BasicData data)
void initPermissions(int granted, int denied) throws BaseException
getPermissionForWriteDeleteAndCreate()
method
for the parent, WRITE, DELETE and CREATE permission
is granted.initPermissions
in class BasicItem
granted
- Permissions that have been granted by the subclassdenied
- Permissions that have been denied by the subclassBaseException
- If the permissions couldn't be initialisedPluginPermission getPluginPermissions()
getPluginPermissions
in class BasicItem
Permission getPermissionForWriteDeleteAndCreate()
Permission getPermissionForUse()
abstract SharedData getSharedParent()
initPermissions(int, int)
method to calculate
the logged in user's permissions for the child item.