Adito has the concept of resources. Resources are generally things that may be assigned to a user to allow them to perform some action.
All resources must specify their type, and this object describes that type. The resource type must be registered with the system using {@link com.adito.policyframework.PolicyDatabase#registerResourceType(ResourceType)}, this allows extensions to define new resource types.
Each resource type contains a list of permissions of the specified class, current permission classes include {@link com.adito.policyframework.PolicyConstants#DELEGATION_CLASS}, {@link com.adito.policyframework.PolicyConstants#SYSTEM_CLASS} or{@link com.adito.policyframework.PolicyConstants#PERSONAL_CLASS}.
To allow for internationalisation each defined resource type must provide the ID of the resource bundle that contains its title and description.
Method implementations are also required for getting a resource given its id, getting a resource given its name, deleting a resource and updating a resource For the update and delete, it is the implementations responsibility to throw appropriate events.
@param < T>
@see com.adito.policyframework.PolicyConstants