in plugins/cxf/src/main/java/org/apache/cxf/fediz/cxf/plugin/FedizRedirectBindingFilter.java [84:121]
public void filter(ContainerRequestContext context) {
Message m = JAXRSUtils.getCurrentMessage();
FedizContext fedConfig = getFedizContext(m);
// See if it is a Metadata request
if (isMetadataRequest(context, fedConfig)) {
return;
}
String httpMethod = context.getMethod();
MultivaluedMap<String, String> params = null;
try {
if (HttpMethod.GET.equals(httpMethod)) {
params = context.getUriInfo().getQueryParameters();
} else if (HttpMethod.POST.equals(httpMethod)) {
String strForm = IOUtils.toString(context.getEntityStream(), "UTF-8");
params = JAXRSUtils.getStructuredParams(strForm, "&", true, false);
}
} catch (Exception ex) {
LOG.debug(ex.getMessage(), ex);
throw ExceptionUtils.toInternalServerErrorException(ex, null);
}
// See if it is a Logout request first
if (isLogoutRequest(context, fedConfig, m, params) || isSignoutCleanupRequest(fedConfig, m, params)) {
return;
} else if (checkSecurityContext(fedConfig, m, params)) {
return;
} else if (isSignInRequired(fedConfig, params)) {
processSignInRequired(context, fedConfig);
} else if (isSignInRequest(fedConfig, params)) {
processSignInRequest(context, fedConfig, m, params);
} else {
LOG.error("SignIn parameter is incorrect or not supported");
throw ExceptionUtils.toBadRequestException(null, null);
}
}