MessageType - the actual message typepublic abstract class AbstractResponseShellAction<MessageType extends StatusResponseType> extends AbstractProfileAction
StatusResponseType,
and sets it as the message returned by InOutOperationContext.getOutboundMessageContext().
The Status is set to StatusCode.SUCCESS as a default assumption,
and this can be overridden by subsequent actions.
If an issuer value is returned via a lookup strategy, then it's set as the Issuer of the message.
| Modifier and Type | Field and Description |
|---|---|
private net.shibboleth.utilities.java.support.security.IdentifierGenerationStrategy |
idGenerator
The generator to use.
|
private com.google.common.base.Function<ProfileRequestContext,net.shibboleth.utilities.java.support.security.IdentifierGenerationStrategy> |
idGeneratorLookupStrategy
Strategy used to locate the
IdentifierGenerationStrategy to use. |
private java.lang.String |
issuerId
EntityID to populate into Issuer element.
|
private com.google.common.base.Function<ProfileRequestContext,java.lang.String> |
issuerLookupStrategy
Strategy used to obtain the response issuer value.
|
private org.slf4j.Logger |
log
Class logger.
|
private boolean |
overwriteExisting
Overwrite an existing message?
|
| Constructor and Description |
|---|
AbstractResponseShellAction()
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
doExecute(ProfileRequestContext profileRequestContext)
Performs this action.
|
protected boolean |
doPreExecute(ProfileRequestContext profileRequestContext)
Called prior to execution, actions may override this method to perform pre-processing for a request.
|
protected abstract javax.xml.namespace.QName |
getMessageType()
Get the type of message to build.
|
void |
setIdentifierGeneratorLookupStrategy(com.google.common.base.Function<ProfileRequestContext,net.shibboleth.utilities.java.support.security.IdentifierGenerationStrategy> strategy)
Set the strategy used to locate the
IdentifierGenerationStrategy to use. |
void |
setIssuerLookupStrategy(com.google.common.base.Function<ProfileRequestContext,java.lang.String> strategy)
Set the strategy used to locate the issuer value to use.
|
void |
setOverwriteExisting(boolean flag)
Set whether to overwrite an existing message.
|
doPostExecute, doPostExecute, execute, getHttpServletRequest, getHttpServletResponse, getLogPrefix, setHttpServletRequest, setHttpServletResponsedestroy, doDestroy, doInitialize, initialize, isDestroyed, isInitialized@Nonnull private org.slf4j.Logger log
private boolean overwriteExisting
@Nonnull private com.google.common.base.Function<ProfileRequestContext,net.shibboleth.utilities.java.support.security.IdentifierGenerationStrategy> idGeneratorLookupStrategy
IdentifierGenerationStrategy to use.@Nullable private com.google.common.base.Function<ProfileRequestContext,java.lang.String> issuerLookupStrategy
@Nullable private net.shibboleth.utilities.java.support.security.IdentifierGenerationStrategy idGenerator
@Nullable private java.lang.String issuerId
public void setOverwriteExisting(boolean flag)
flag - flag to setpublic void setIdentifierGeneratorLookupStrategy(@Nonnull
com.google.common.base.Function<ProfileRequestContext,net.shibboleth.utilities.java.support.security.IdentifierGenerationStrategy> strategy)
IdentifierGenerationStrategy to use.strategy - lookup strategypublic void setIssuerLookupStrategy(@Nullable
com.google.common.base.Function<ProfileRequestContext,java.lang.String> strategy)
strategy - lookup strategyprotected boolean doPreExecute(@Nonnull
ProfileRequestContext profileRequestContext)
If false is returned, execution will not proceed, and the action should attach an
EventContext to 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.
doPreExecute in class AbstractProfileActionprofileRequestContext - the current IdP profile request contextprotected void doExecute(@Nonnull
ProfileRequestContext profileRequestContext)
doExecute in class AbstractProfileActionprofileRequestContext - the current IdP profile request context@Nonnull protected abstract javax.xml.namespace.QName getMessageType()