
org.openid4java.message.IndirectError Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of openid4java Show documentation
Show all versions of openid4java Show documentation
OpenID4Java library offers support for OpenID-enabling a
consumer site or implementing an OpenID Provider server.
/*
* Copyright 2006-2008 Sxip Identity Corporation
*/
package org.openid4java.message;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.openid4java.OpenIDException;
/**
* @author Marius Scurtescu, Johnny Bufu
*/
public class IndirectError extends Message
{
private static Log _log = LogFactory.getLog(IndirectError.class);
private static final boolean DEBUG = _log.isDebugEnabled();
protected IndirectError(String msg, String returnTo)
{
this(msg, returnTo, false);
}
protected IndirectError(String msg, String returnTo, boolean compatibility)
{
this(null, msg, returnTo, compatibility);
}
protected IndirectError(OpenIDException e, String msg, String returnTo, boolean compatibility)
{
set("openid.mode", "error");
set("openid.error", msg);
_destinationUrl = returnTo;
_exception = e;
if (! compatibility)
set("openid.ns", OPENID2_NS);
}
// exception that generated the error, if any
private OpenIDException _exception;
protected IndirectError(ParameterList params)
{
super(params);
}
public static IndirectError createIndirectError(OpenIDException e, String returnTo)
{
return createIndirectError(e, returnTo, false);
}
public static IndirectError createIndirectError(String msg, String returnTo)
{
return createIndirectError(msg, returnTo, false);
}
public static IndirectError createIndirectError(OpenIDException e,
String returnTo,
boolean compatibility)
{
return createIndirectError(e, e.getMessage(), returnTo, compatibility);
}
public static IndirectError createIndirectError(String msg, String returnTo,
boolean compatibility)
{
return createIndirectError(null, msg, returnTo, compatibility);
}
public static IndirectError createIndirectError(OpenIDException e,
String msg, String returnTo,
boolean compatibility)
{
IndirectError err = new IndirectError(e, msg, returnTo, compatibility);
try
{
err.validate();
}
catch (MessageException ex)
{
_log.error("Invalid " + (compatibility? "OpenID1" : "OpenID2") +
" indirect error message created for message: " + msg);
}
_log.debug("Created indirect error message:\n" + err.keyValueFormEncoding());
return err;
}
public static IndirectError createIndirectError(ParameterList params)
{
IndirectError err = new IndirectError(params);
try
{
err.validate();
}
catch (MessageException e)
{
_log.error("Invalid direct error message created: "
+ err.keyValueFormEncoding() );
}
_log.debug("Created indirect error message:\n" + err.keyValueFormEncoding());
return err;
}
public OpenIDException getException()
{
return _exception;
}
public void setException(OpenIDException e)
{
this._exception = e;
}
public void setErrorMsg(String msg)
{
set("openid.error", msg);
}
public String getErrorMsg()
{
return getParameterValue("openid.error");
}
public void setContact(String contact)
{
set("openid.contact", contact);
}
public String getContact()
{
return getParameterValue("openid.contact");
}
public void setReference(String reference)
{
set("openid.reference", reference);
}
public String getReference()
{
return getParameterValue("openid.reference");
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy