示例#1
0
 /**
  * Enforces message processiong rules defined in the spec.
  *
  * @param message a message
  * @param requestMessageID the request messageID if we are checking a response message or null if
  *     we are checking a request message
  * @param isServer true if this is a server
  * @throws SOAPBindingException if the message violates rules on client.
  * @throws SOAPFaultException if the message violates rules on server.
  */
 public static void enforceProcessingRules(
     Message message, String requestMessageID, boolean isServer)
     throws SOAPBindingException, SOAPFaultException {
   CorrelationHeader corrH = message.getCorrelationHeader();
   String messageID = corrH.getMessageID();
   checkCorrelationHeader(corrH, requestMessageID, isServer);
   checkProviderHeader(message.getProviderHeader(), messageID, isServer);
   checkProcessingContextHeader(message.getProcessingContextHeader(), messageID, isServer);
   checkConsentHeader(message.getConsentHeader(), messageID, isServer);
   List usagHs = message.getUsageDirectiveHeaders();
   if (usagHs != null && !usagHs.isEmpty()) {
     Iterator iter = usagHs.iterator();
     while (iter.hasNext()) {
       UsageDirectiveHeader usagH = (UsageDirectiveHeader) iter.next();
       checkUsageDirectiveHeader(usagH, messageID, isServer);
     }
   }
 }