Class AbstractProfileAction
- java.lang.Object
-
- net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
-
- org.opensaml.profile.action.AbstractProfileAction
-
- All Implemented Interfaces:
Component,DestructableComponent,InitializableComponent,ProfileAction
- Direct Known Subclasses:
AbstractConditionalProfileAction
@Prototype public abstract class AbstractProfileAction extends AbstractInitializableComponent implements ProfileAction
Base class for profile actions. This base class is annotated withPrototypeto indicate that it is stateful.
-
-
Field Summary
Fields Modifier and Type Field Description private javax.servlet.http.HttpServletRequesthttpServletRequestCurrent HTTP request, if available.private javax.servlet.http.HttpServletResponsehttpServletResponseCurrent HTTP response, if available.private StringlogPrefixCached log prefix.
-
Constructor Summary
Constructors Constructor Description AbstractProfileAction()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddoExecute(ProfileRequestContext profileRequestContext)Performs this action.protected voiddoPostExecute(ProfileRequestContext profileRequestContext)Called after execution, actions may override this method to perform post-processing for a request.protected voiddoPostExecute(ProfileRequestContext profileRequestContext, Exception e)Called after execution, actions may override this method to perform post-processing for a request.protected booleandoPreExecute(ProfileRequestContext profileRequestContext)Called prior to execution, actions may override this method to perform pre-processing for a request.voidexecute(ProfileRequestContext profileRequestContext)Performs this action.javax.servlet.http.HttpServletRequestgetHttpServletRequest()Get the current HTTP request if available.javax.servlet.http.HttpServletResponsegetHttpServletResponse()Get the current HTTP response.protected StringgetLogPrefix()Return a prefix for logging messages for this component.voidsetHttpServletRequest(javax.servlet.http.HttpServletRequest request)Set the current HTTP request.voidsetHttpServletResponse(javax.servlet.http.HttpServletResponse response)Set the current HTTP response.-
Methods inherited from class net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
destroy, doDestroy, doInitialize, initialize, isDestroyed, isInitialized
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.shibboleth.utilities.java.support.component.InitializableComponent
initialize, isInitialized
-
-
-
-
Field Detail
-
logPrefix
@Nullable private String logPrefix
Cached log prefix.
-
httpServletRequest
@Nullable private javax.servlet.http.HttpServletRequest httpServletRequest
Current HTTP request, if available.
-
httpServletResponse
@Nullable private javax.servlet.http.HttpServletResponse httpServletResponse
Current HTTP response, if available.
-
-
Method Detail
-
getHttpServletRequest
@Nullable public javax.servlet.http.HttpServletRequest getHttpServletRequest()
Get the current HTTP request if available.- Returns:
- current HTTP request
-
setHttpServletRequest
public void setHttpServletRequest(@Nullable javax.servlet.http.HttpServletRequest request)Set the current HTTP request.- Parameters:
request- current HTTP request
-
getHttpServletResponse
@Nullable public javax.servlet.http.HttpServletResponse getHttpServletResponse()
Get the current HTTP response.- Returns:
- current HTTP response
-
setHttpServletResponse
public void setHttpServletResponse(@Nullable javax.servlet.http.HttpServletResponse response)Set the current HTTP response.- Parameters:
response- current HTTP response
-
execute
public void execute(@Nonnull ProfileRequestContext profileRequestContext)Performs this action.- Specified by:
executein interfaceProfileAction- Parameters:
profileRequestContext- the current IdP profile request context
-
doPreExecute
protected boolean doPreExecute(@Nonnull ProfileRequestContext profileRequestContext)Called prior to execution, actions may override this method to perform pre-processing for a request.If false is returned, execution will not proceed, and the action should attach an
EventContextto the context tree to signal how to continue with overall workflow processing.If returning successfully, the last step should be to return the result of the superclass version of this method.
- Parameters:
profileRequestContext- the current IdP profile request context- Returns:
- true iff execution should proceed
-
doExecute
protected void doExecute(@Nonnull ProfileRequestContext profileRequestContext)Performs this action. Actions must override this method to perform their work.- Parameters:
profileRequestContext- the current IdP profile request context
-
doPostExecute
protected void doPostExecute(@Nonnull ProfileRequestContext profileRequestContext)Called after execution, actions may override this method to perform post-processing for a request.Actions must not "fail" during this step and will not have the opportunity to signal events at this stage. This method will not be called if
doPreExecute(org.opensaml.profile.context.ProfileRequestContext)fails, but is called if an exception is raised bydoExecute(org.opensaml.profile.context.ProfileRequestContext).- Parameters:
profileRequestContext- the current IdP profile request context
-
doPostExecute
protected void doPostExecute(@Nonnull ProfileRequestContext profileRequestContext, @Nonnull Exception e)Called after execution, actions may override this method to perform post-processing for a request.Actions must not "fail" during this step and will not have the opportunity to signal events at this stage. This method will not be called if
doPreExecute(org.opensaml.profile.context.ProfileRequestContext)fails, but is called if an exception is raised bydoExecute(org.opensaml.profile.context.ProfileRequestContext).This version of the method will be called if an exception is raised during execution of the action. The overall action result will be to raise this error, so any errors inadvertently raised by this method will be logged and superseded.
The default implementation simply calls the error-less version of this method.
- Parameters:
profileRequestContext- the current IdP profile request contexte- an exception raised by thedoExecute(org.opensaml.profile.context.ProfileRequestContext)method
-
-