Package org.opensaml.soap.messaging
Class AbstractHeaderGeneratingMessageHandler
- java.lang.Object
-
- net.shibboleth.utilities.java.support.component.AbstractInitializableComponent
-
- org.opensaml.messaging.handler.AbstractMessageHandler
-
- org.opensaml.soap.messaging.AbstractHeaderGeneratingMessageHandler
-
- All Implemented Interfaces:
Component,DestructableComponent,InitializableComponent,MessageHandler
public abstract class AbstractHeaderGeneratingMessageHandler extends AbstractMessageHandler
Abstract base class for message handlers that generate SOAP headers.
-
-
Field Summary
Fields Modifier and Type Field Description private booleaneffectiveMustUnderstandThe effective mustUnderstand value to use.private StringeffectiveTargetNodeThe effective target node value to use.private booleanmustUnderstandThe statically configured value for mustUnderstand.private Predicate<MessageContext>mustUnderstandStrategyPredicate strategy for evaluating mustUnderstand from the message context.private StringtargetNodeThe statically configured value for target node (SOAP 1.1 actor or SOAP 1.2 role).private Function<MessageContext,String>targetNodeStrategyFunction strategy for resolving target node from the message context.
-
Constructor Summary
Constructors Constructor Description AbstractHeaderGeneratingMessageHandler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voiddecorateGeneratedHeader(MessageContext messageContext, XMLObject header)Decorate the header based on configured and/or resolved values.protected booleandoPreInvoke(MessageContext messageContext)protected StringgetEffectiveTargetNode()Get the effective value for target node (SOAP 1.1 actor or SOAP 1.2 role).protected booleanisEffectiveMustUnderstand()Get the effective value for mustUnderstand.voidsetMustUnderstand(boolean flag)Set the statically configured value for mustUnderstand.voidsetMustUnderstandStrategy(Predicate<MessageContext> strategy)Set the predicate strategy for evaluating mustUnderstand from the message context.voidsetTargetNode(String node)Set the statically configured value for target node (SOAP 1.1 actor or SOAP 1.2 role).voidsetTargetNodeStrategy(Function<MessageContext,String> strategy)Set the predicate strategy for evaluating mustUnderstand from the message context.-
Methods inherited from class org.opensaml.messaging.handler.AbstractMessageHandler
doInvoke, doPostInvoke, doPostInvoke, getActivationCondition, getLogPrefix, invoke, setActivationCondition
-
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
-
mustUnderstand
private boolean mustUnderstand
The statically configured value for mustUnderstand.
-
mustUnderstandStrategy
@Nullable private Predicate<MessageContext> mustUnderstandStrategy
Predicate strategy for evaluating mustUnderstand from the message context.
-
effectiveMustUnderstand
private boolean effectiveMustUnderstand
The effective mustUnderstand value to use.
-
targetNode
@Nullable private String targetNode
The statically configured value for target node (SOAP 1.1 actor or SOAP 1.2 role).
-
targetNodeStrategy
@Nullable private Function<MessageContext,String> targetNodeStrategy
Function strategy for resolving target node from the message context.
-
effectiveTargetNode
private String effectiveTargetNode
The effective target node value to use.
-
-
Method Detail
-
setMustUnderstand
public void setMustUnderstand(boolean flag)
Set the statically configured value for mustUnderstand.- Parameters:
flag- true if header must be understood, false if not
-
setMustUnderstandStrategy
public void setMustUnderstandStrategy(@Nullable Predicate<MessageContext> strategy)Set the predicate strategy for evaluating mustUnderstand from the message context.- Parameters:
strategy- the predicate strategy
-
isEffectiveMustUnderstand
protected boolean isEffectiveMustUnderstand()
Get the effective value for mustUnderstand.- Returns:
- the effective value for mustUnderstand.
-
setTargetNode
public void setTargetNode(@Nullable String node)Set the statically configured value for target node (SOAP 1.1 actor or SOAP 1.2 role).- Parameters:
node- the target node, may be null
-
setTargetNodeStrategy
public void setTargetNodeStrategy(@Nullable Function<MessageContext,String> strategy)Set the predicate strategy for evaluating mustUnderstand from the message context.- Parameters:
strategy- the predicate strategy
-
getEffectiveTargetNode
protected String getEffectiveTargetNode()
Get the effective value for target node (SOAP 1.1 actor or SOAP 1.2 role).- Returns:
- the effective value for target node
-
doPreInvoke
protected boolean doPreInvoke(@Nonnull MessageContext messageContext) throws MessageHandlerException- Overrides:
doPreInvokein classAbstractMessageHandler- Throws:
MessageHandlerException
-
decorateGeneratedHeader
protected void decorateGeneratedHeader(@Nonnull MessageContext messageContext, @Nonnull XMLObject header)Decorate the header based on configured and/or resolved values.- Parameters:
messageContext- the current message contextheader- the header to decorate
-
-