/** * Validates thats the request has an some form of assertion (directly, reference, or artifact) or query, but not * both. * * @param request the request to validate * * @throws ValidationException thrown if the request has more than one assertion or both an assertion and a query */ protected void validateAssertion(Request request) throws ValidationException { if (request.getQuery() != null) { if (request.getAssertionArtifacts().size() != 0) { throw new ValidationException("Both Query and one or more AssertionAtrifacts present"); } if (request.getAssertionIDReferences().size() != 0) { throw new ValidationException("Both Query and one ore more AsertionIDReferences present"); } } else if (request.getAssertionArtifacts().size() != 0) { if (request.getAssertionIDReferences().size() != 0) { throw new ValidationException( "Both one or more AssertionAtrifacts and one ore more AsertionIDReferences present"); } } else if (request.getAssertionIDReferences().size() == 0) { throw new ValidationException("No AssertionAtrifacts, No Query, and No AsertionIDReferences present"); } } }