}
@Override
protected void unmarshallChildElement(XMLObject xmlObject, Element childElement) throws UnmarshallingException
{
XACMLAuthzDecisionQueryType xacmlAuthzDecisionQueryType = null;
if(xmlObject instanceof XACMLAuthzDecisionQueryType)
{
xacmlAuthzDecisionQueryType = (XACMLAuthzDecisionQueryType) xmlObject;
}
if(childElement.getLocalName().equals("Request")
&& childElement.getNamespaceURI().equals(XACMLConstants.CONTEXT_SCHEMA))
{
//process the xacml request
RequestContext requestContext = RequestResponseContextFactory.createRequestCtx();
try
{
requestContext.readRequest(childElement);
}
catch (IOException e)
{
throw new RuntimeException(e);
}
xacmlAuthzDecisionQueryType.setRequest(requestContext);
}
else
super.unmarshallChildElement(xmlObject, childElement);
}