Class InteractionManager


  • public class InteractionManager
    extends Object
    This class provides the interface and implementation for supporting resource owner interaction. WSC and WSP would collaborate with the singleton object instance of this class to provide and use resource owner interaction.
    • Field Detail

      • RETURN_TO_URL

        public static final String RETURN_TO_URL
        Name of URL query parameter to be used by WSC to include returnToURL, while redirecting user agent to WSP.
        See Also:
        Constant Field Values
      • REQUEST_ID

        public static final String REQUEST_ID
        Name of suggested URL query parameter to be used by WSC to include an ID to refer to request message that led to user agent redirect.
        See Also:
        Constant Field Values
      • IDP

        public static final String IDP
        Name of URL query parameter to be used by WSC to include providerID of IDP, that was used to authenticate user.
        See Also:
        Constant Field Values
      • RESEND_MESSAGE

        public static final String RESEND_MESSAGE
        Name of URL query parameter to be used by WSP to include an ID to indicate that user agent is redirected back to WSC from WSP
        See Also:
        Constant Field Values
      • INTERACTION_NAMESPACE

        public static final String INTERACTION_NAMESPACE
        Name space URI of interaction service
        See Also:
        Constant Field Values
      • QNAME_SERVER

        public static final QName QNAME_SERVER
        QName for s:Server s - soap name space prefix
      • QNAME_INTERACT_IF_NEEDED

        public static final QName QNAME_INTERACT_IF_NEEDED
        QName for is:interactIfNeeded is - name space prefix for interaction service
      • QNAME_DO_NOT_INTERACT

        public static final QName QNAME_DO_NOT_INTERACT
        QName for is:doNotInteract is - name space prefix for interaction service
      • QNAME_DO_NOT_INTERACT_FOR_DATA

        public static final QName QNAME_DO_NOT_INTERACT_FOR_DATA
        QName for is:doNotInteractForData is - name space prefix for interaction service
      • QNAME_INTERACTION_REQUIRED

        public static final QName QNAME_INTERACTION_REQUIRED
        QName for is:interactionRequired is - name space prefix for interaction service
      • QNAME_INTERACTION_REQUIRED_FOR_DATA

        public static final QName QNAME_INTERACTION_REQUIRED_FOR_DATA
        QName for is:forData is - name space prefix for interaction service
      • QNAME_INTERACTION_TIME_NOT_SUFFICEINT

        public static final QName QNAME_INTERACTION_TIME_NOT_SUFFICEINT
        QName for is:timeNotSufficient is - name space prefix for interaction service
      • QNAME_INTERACTION_TIMED_OUT

        public static final QName QNAME_INTERACTION_TIMED_OUT
        QName for is:timeOut is - name space prefix for interaction service
      • QNAME_INTERACTION_CAN_NOT_DETERMINE_REQUEST_HOST

        public static final QName QNAME_INTERACTION_CAN_NOT_DETERMINE_REQUEST_HOST
        QName for is:interactIfNeeded is - name space prefix for interaction service
      • SERVER_ERROR

        public static final String SERVER_ERROR
        Constant string to indicate generic server error
        See Also:
        Constant Field Values
    • Method Detail

      • getInstance

        public static InteractionManager getInstance()
        Gets singleton object instance of InteractionManager
        Returns:
        singleton object instance of InteractionManager
      • sendRequest

        public Message sendRequest​(Message requestMessage,
                                   String connectTo,
                                   String certAlias,
                                   String soapAction,
                                   String returnToURL,
                                   jakarta.servlet.http.HttpServletRequest httpRequest,
                                   jakarta.servlet.http.HttpServletResponse httpResponse)
                            throws InteractionException,
                                   InteractionRedirectException,
                                   SOAPBindingException,
                                   SOAPFaultException
        Sends SOAP request to WSP. This would be invoked at WSC side.
        Parameters:
        requestMessage - request message.
        connectTo - SOAP URL to which to send the SOAP request
        certAlias - SOAP Client Certificate Alias
        soapAction - SOAP Action Attribute
        returnToURL - URL to which to redirect user agent after WSP - resource owner interactions
        httpRequest - HTTP request object of current user agent request
        httpResponse - HTTP response object of current user agent request
        Returns:
        response SOAP response message sent by WSP.
        Throws:
        InteractionException - for generic interaction error
        InteractionRedirectException - if user agent is redirected to WSP for resource owner interactions
        SOAPBindingException - for generic SOAP binding errors
        SOAPFaultException - if the response message has SOAP fault
      • resendRequest

        public Message resendRequest​(String returnToURL,
                                     jakarta.servlet.http.HttpServletRequest httpRequest,
                                     jakarta.servlet.http.HttpServletResponse httpResponse)
                              throws InteractionRedirectException,
                                     InteractionException,
                                     SOAPBindingException,
                                     SOAPFaultException
        Resends a previously cached SOAP request message to WSP. This would be invoked at WSC side. Message ID for the cached message should be provided as value of REQUEST_ID query parameter in httpRequest.
        Parameters:
        returnToURL - URL to which to redirect user agent after WSP - resource owner interactions
        httpRequest - HTTP request object of current user agent request
        httpResponse - HTTP response object of current user agent request
        Returns:
        response SOAP message sent by WSP.
        Throws:
        InteractionException - for generic interaction error
        InteractionRedirectException - if user agent is redirected to WSP for resource owner interactions
        SOAPBindingException - if there are generic SOAP errors
        SOAPFaultException - if the response message has SOAP fault
        See Also:
        REQUEST_ID
      • resendRequest

        public Message resendRequest​(String returnToURL,
                                     jakarta.servlet.http.HttpServletRequest httpRequest,
                                     jakarta.servlet.http.HttpServletResponse httpResponse,
                                     Message requestMessage)
                              throws InteractionRedirectException,
                                     InteractionException,
                                     SOAPBindingException,
                                     SOAPFaultException
        Resends a SOAP request message to WSP. This would be invoked at WSC side.
        Parameters:
        returnToURL - URL to which to redirect user agent after WSP - resource owner interactions
        httpRequest - HTTP request object of current user agent request
        httpResponse - HTTP response object of current user agent request
        requestMessage - SOAP message to be resent.
        Returns:
        response SOAP message sent by WSP.
        Throws:
        InteractionException - for generic interaction error
        InteractionRedirectException - if user agent is redirected to WSP for resource owner interactions
        SOAPBindingException - for generic SOAP errors
        SOAPFaultException - if the response message has SOAP fault
      • handleInteraction

        public Message handleInteraction​(Message requestMessage,
                                         com.sun.identity.liberty.ws.interaction.jaxb.InquiryElement inquiryElement)
                                  throws InteractionException,
                                         InteractionSOAPFaultException,
                                         SOAPFaultException
        Deprecated.
        Handles resource owner interactions on behalf of WSP. This is invoked at WSP side.
        Parameters:
        requestMessage - SOAP request that requires resource owner interactions
        inquiryElement - query that WSP wants to pose to resource owner.
        Returns:
        SOAP message that contains InteractionResponse, gathered by InteractionManager
        Throws:
        InteractionException - for generic interaction error
        InteractionSOAPFaultException - if a SOAP fault has to be returned to WSC
        SOAPFaultException - if the response message has SOAP fault
      • handleInteraction

        public Message handleInteraction​(Message requestMessage,
                                         com.sun.identity.liberty.ws.interaction.jaxb.InquiryElement inquiryElement,
                                         String language)
                                  throws InteractionException,
                                         InteractionSOAPFaultException,
                                         SOAPFaultException
        Handles resource owner interactions on behalf of WSP. This is invoked at WSP side.
        Parameters:
        requestMessage - SOAP request that requires resource owner interactions
        inquiryElement - query that WSP wants to pose to resource owner
        language - language in which the query page needs to be rendered
        Returns:
        SOAP message that contains InteractionResponse, gathered by InteractionManager
        Throws:
        InteractionException - for generic interaction error
        InteractionSOAPFaultException - if a SOAP fault has to be returned to WSC
        SOAPFaultException - if the response message has SOAP fault
      • getInteractionResponseElement

        public com.sun.identity.liberty.ws.interaction.jaxb.InteractionResponseElement getInteractionResponseElement​(Message requestMessage)
                                                                                                              throws InteractionException
        Gets interaction response that was gathered from resource owner by InteractionManager
        Parameters:
        requestMessage - request message.
        Returns:
        interaction response that was gathered by InteractionManager.
        Throws:
        InteractionException - for interaction error