Package uk.gov.gchq.gaffer.graph.hook
Class OperationAuthoriser
- java.lang.Object
-
- uk.gov.gchq.gaffer.graph.hook.OperationAuthoriser
-
-
Constructor Summary
Constructors Constructor Description OperationAuthoriser()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAuths(Class<? extends Operation> opClass, String... auths)Add operation authorisations for a given operation class.Set<String>getAllAuths()Map<Class<?>,Set<String>>getAuths()Map<String,Set<String>>getAuthsAsStrings()<T> TonFailure(T result, OperationChain<?> opChain, Context context, Exception e)Called fromGraphif an error occurs whilst executing theOperationChain.<T> TpostExecute(T result, OperationChain<?> opChain, Context context)Called fromGraphafter anOperationChainis executed.voidpreExecute(OperationChain<?> opChain, Context context)Checks theOperations in the providedOperationChainare allowed to be executed by the user.voidsetAuths(Map<Class<?>,Set<String>> auths)voidsetAuthsFromStrings(Map<String,Set<String>> auths)
-
-
-
Method Detail
-
preExecute
public void preExecute(OperationChain<?> opChain, Context context)
Checks theOperations in the providedOperationChainare allowed to be executed by the user. This is done by checking the user's auths against the operation auths. If an operation cannot be executed then anIllegalAccessErroris thrown.- Specified by:
preExecutein interfaceGraphHook- Parameters:
context- the user to authorise.opChain- the operation chain.
-
postExecute
public <T> T postExecute(T result, OperationChain<?> opChain, Context context)Description copied from interface:GraphHookCalled fromGraphafter anOperationChainis executed.- Specified by:
postExecutein interfaceGraphHook- Type Parameters:
T- the result type- Parameters:
result- the result from the operation chainopChain- theOperationChainthat was executed. This can be modified/optimised in any GraphHook.context- theContextin which the operation chain was executed. The context also holds a reference to the original operation chain.- Returns:
- result object
-
onFailure
public <T> T onFailure(T result, OperationChain<?> opChain, Context context, Exception e)Description copied from interface:GraphHookCalled fromGraphif an error occurs whilst executing theOperationChain.- Specified by:
onFailurein interfaceGraphHook- Type Parameters:
T- the result type- Parameters:
result- the result from the operation chain - likely to be null.opChain- theOperationChainthat was executed. This can be modified/optimised in any GraphHook.context- theContextin which the operation chain was executed. The context also holds a reference to the original operation chain.e- the exception- Returns:
- result object
-
addAuths
public void addAuths(Class<? extends Operation> opClass, String... auths)
Add operation authorisations for a given operation class. This can be called multiple times for the same operation class and the authorisations will be appended.- Parameters:
opClass- the operation classauths- the authorisations
-
setAuthsFromStrings
public void setAuthsFromStrings(Map<String,Set<String>> auths) throws ClassNotFoundException
- Throws:
ClassNotFoundException
-
-