public void restore()

in services/idp-core/src/main/java/org/apache/cxf/fediz/service/idp/beans/SigninParametersCacheAction.java [80:129]


    public void restore(RequestContext context, String contextKey, String protocol) {

        if (contextKey != null) {
            @SuppressWarnings("unchecked")
            Map<String, Object> signinParams =
                (Map<String, Object>)WebUtils.getAttributeFromExternalContext(context, contextKey);

            if (signinParams != null) {
                LOG.debug("SignIn parameters restored: {}", signinParams.toString());

                String value = (String)signinParams.get(IdpConstants.HOME_REALM);
                if (value != null) {
                    WebUtils.putAttributeInFlowScope(context, IdpConstants.HOME_REALM, value);
                }
                value = (String)signinParams.get(IdpConstants.REALM);
                if (value != null) {
                    WebUtils.putAttributeInFlowScope(context, IdpConstants.REALM, value);
                }
                value = (String)signinParams.get(IdpConstants.RETURN_ADDRESS);
                if (value != null) {
                    WebUtils.putAttributeInFlowScope(context, IdpConstants.RETURN_ADDRESS, value);
                }
                value = (String)signinParams.get(IdpConstants.CONTEXT);
                if (value != null) {
                    WebUtils.putAttributeInFlowScope(context, IdpConstants.CONTEXT, value);
                }

                if ("wsfed".equals(protocol)) {

                    WebUtils.removeAttributeFromFlowScope(context, FederationConstants.PARAM_CONTEXT);
                    LOG.info("SignIn parameters restored and " + FederationConstants.PARAM_CONTEXT + "["
                        + contextKey + "] cleared.");

                } else if ("samlsso".equals(protocol)) {
                    SAMLAuthnRequest authnRequest =
                        (SAMLAuthnRequest)signinParams.get(IdpConstants.SAML_AUTHN_REQUEST);
                    if (authnRequest != null) {
                        WebUtils.putAttributeInFlowScope(context, IdpConstants.SAML_AUTHN_REQUEST, authnRequest);
                    }
                }

            }  else {
                LOG.debug("Error in restoring security context");
            }

            WebUtils.removeAttributeFromFlowScope(context, contextKey);
        } else {
            LOG.debug("Error in restoring security context");
        }
    }