org.pentaho.platform.api.engine
Interface IPermissionMgr

All Known Implementing Classes:
AcegiPermissionMgr

public interface IPermissionMgr


Method Summary
 Map<IPermissionRecipient,IPermissionMask> getEffectivePermissions(Object domainInstance)
          Returns permission map containing access control entries that are defined directly on this domainInstance.
 Map<IPermissionRecipient,IPermissionMask> getPermissions(Object domainInstance)
          Returns permission map containing access control entries that are defined directly on this domainInstance.
 boolean hasPermission(IPermissionRecipient permissionRecipient, IPermissionMask permission, Object domainInstance)
          mlowery Note that this method takes a single recipient--either a role or user.
 void setPermission(IPermissionRecipient permissionRecipient, IPermissionMask permission, Object domainInstance)
           
 void setPermissions(Map<IPermissionRecipient,IPermissionMask> acl, Object domainInstance)
          TODO mlowery This is really addPermission.
 

Method Detail

setPermission

void setPermission(IPermissionRecipient permissionRecipient,
                   IPermissionMask permission,
                   Object domainInstance)

hasPermission

boolean hasPermission(IPermissionRecipient permissionRecipient,
                      IPermissionMask permission,
                      Object domainInstance)
mlowery Note that this method takes a single recipient--either a role or user. It does not take an Authentication instance like Acegi Security's AccessDecisionVoter.


getPermissions

Map<IPermissionRecipient,IPermissionMask> getPermissions(Object domainInstance)
Returns permission map containing access control entries that are defined directly on this domainInstance.

Parameters:
domainInstance - the object for which to fetch permissions
Returns:
a map of permissions

getEffectivePermissions

Map<IPermissionRecipient,IPermissionMask> getEffectivePermissions(Object domainInstance)
Returns permission map containing access control entries that are defined directly on this domainInstance. If there are no direct entries, then the permission map will be the map of one of domainInstance's ancestors.

Parameters:
domainInstance - the object for which to fetch permissions
Returns:
a map of permissions

setPermissions

void setPermissions(Map<IPermissionRecipient,IPermissionMask> acl,
                    Object domainInstance)
TODO mlowery This is really addPermission. Perhaps a method name change?