com.ebasetech.ufs.workflow.security.example
Class EbaseSecurityHandler

java.lang.Object
  extended by com.ebasetech.ufs.workflow.security.DefaultSecurityHandler
      extended by com.ebasetech.ufs.workflow.security.example.EbaseSecurityHandler
All Implemented Interfaces:
com.ebasetech.api.workflow.Constants, SecurityHandler

public class EbaseSecurityHandler
extends DefaultSecurityHandler


Nested Class Summary
 class EbaseSecurityHandler.SecurityExpressionComponentImpl
           
 
Field Summary
 
Fields inherited from interface com.ebasetech.api.workflow.Constants
ASSIGNMENT_ERROR, BAD_PARAMETER_VALUE_TYPE, CANNOT_LOAD_OBJECT, COLON, DOWNCAST_ERROR, EMBEDDED_SQL_EXCEPTION, ENACTMENT_INITIALISATION_EXCEPTION, ENACTMENT_NOT_ACTIVE, FAILED_SETTING_OUT_PARAM, ILLFORMED_PARAMETERS, INVALID_ASSIGNMENT, INVALID_ASSIGNMENT_EXCEPTION, INVALID_COMPLETION, INVALID_POST_EXCEPTION, INVALID_STATE_TRANSITION, INVALID_STATE_TRANSITION_EXCEPTION, MISSING_CALLER, NO_ROLLBACK, NO_SUCH_TASK, NULL_RESOURCE, NULL_TASK_NAME, NULL_VARIABLE_NAME, POOL_ASSIGNMENT_FAILED, PROCESS_ATTRIBUTE_EXCEPTION, PROCESS_STRUCTURE_EXCEPTION, RESOURCE_MANAGEMENT_EXCEPTION, SCRIPT_EXCEPTION_ERROR, SECURITY_EXCEPTION, SETUP_PROPERTIES_EXCEPTION, TRANSACTION_EXCEPTION, UNINITIALISED
 
Constructor Summary
EbaseSecurityHandler()
           
 
Method Summary
 javax.security.auth.Subject completeSubject(java.lang.String userId)
           
 SecurityExpressionComponent getSecurityExpressionComponent()
          Get the component to be used to display and edit security expressions in the designer
 boolean isAllowable(Function function, Allowable target, java.lang.String caller)
          Answer true if the designated function is allowed to be carried out on the supplied target by the defined caller
 boolean isAuthorised(java.lang.String function, Allowable target, java.lang.String caller)
           
 boolean isVisibleTo(Allowable target, java.lang.String caller)
          Answer true if the designated caller is allowed to know of the existence of the given target
 
Methods inherited from class com.ebasetech.ufs.workflow.security.DefaultSecurityHandler
checkAllowable
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EbaseSecurityHandler

public EbaseSecurityHandler()
Method Detail

isAllowable

public boolean isAllowable(Function function,
                           Allowable target,
                           java.lang.String caller)
                    throws WorkflowSecurityException
Description copied from interface: SecurityHandler
Answer true if the designated function is allowed to be carried out on the supplied target by the defined caller

Parameters:
function - The function to be carried out
target - The target of that function, or null if the target is essentially the entire WFMS
caller - The id of the user carrying out the defined function
Returns:
true if the function is permitted
Throws:
WorkflowSecurityException - if there is some exception that means the function cannot be allowed

isVisibleTo

public boolean isVisibleTo(Allowable target,
                           java.lang.String caller)
Description copied from interface: SecurityHandler
Answer true if the designated caller is allowed to know of the existence of the given target


isAuthorised

public boolean isAuthorised(java.lang.String function,
                            Allowable target,
                            java.lang.String caller)

completeSubject

public javax.security.auth.Subject completeSubject(java.lang.String userId)
                                            throws com.ebasetech.ufs.security.authentication.AuthenticationException
Throws:
com.ebasetech.ufs.security.authentication.AuthenticationException

getSecurityExpressionComponent

public SecurityExpressionComponent getSecurityExpressionComponent()
Description copied from interface: SecurityHandler
Get the component to be used to display and edit security expressions in the designer