All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.apache.axiom.soap.SOAPHeaderBlock Maven / Gradle / Ivy

There is a newer version: 1.4.0
Show newest version
/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements. See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership. The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied. See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */

package org.apache.axiom.soap;

import org.apache.axiom.om.OMSourcedElement;

/**
 * 

An object representing the contents in the SOAP header part of the SOAP envelope. The * immediate children of a SOAPHeader object can be represented only as * SOAPHeaderBlock objects.

B SOAPHeaderBlock object can have other * OMElement objects as its children.

*/ public interface SOAPHeaderBlock extends OMSourcedElement { /** * A SOAPHeaderBlock may be represented as an unexpanded OMSourcedElement. * In such cases, the underlying OMDataSource may have a property that contains * the value of the ROLE/ACTOR, RELAY or MUST_UNDERSTAND setting. */ public String ROLE_PROPERTY = "org.apache.axiom.soap.SOAPHeader.ROLE"; public String RELAY_PROPERTY = "org.apache.axiom.soap.SOAPHeader.RELAY"; public String MUST_UNDERSTAND_PROPERTY = "org.apache.axiom.soap.SOAPHeader.MUST_UNDERSTAND"; /** * Sets the actor associated with this SOAPHeaderBlock object to the specified * actor. * * @param roleURI a String giving the URI of the actor to set * @throws IllegalArgumentException * if there is a problem in setting the actor. * @see #getRole() getRole() */ void setRole(String roleURI); /** * Returns the uri of the actor associated with this SOAPHeaderBlock object. * * @return a String giving the URI of the actor * @see #setRole(String) setRole(java.lang.String) */ String getRole(); /** * Sets the mustUnderstand attribute for this SOAPHeaderBlock object to be on or * off.

If the mustUnderstand attribute is on, the actor who receives the * SOAPHeaderBlock must process it correctly. This ensures, for example, that if * the SOAPHeaderBlock object modifies the message, that the message is being * modified correctly.

* * @param mustUnderstand true to set the mustUnderstand attribute on; * false to turn if off * @throws IllegalArgumentException * if there is a problem in setting the actor. * @see #getMustUnderstand() getMustUnderstand() */ void setMustUnderstand(boolean mustUnderstand); /** * Returns the boolean value of the {@code mustUnderstand} attribute for this header block. * * @return true if a {@code mustUnderstand} attribute is present and its value is * equivalent to true, false if the {@code mustUnderstand} is not present * or its value is equivalent to false * @throws SOAPProcessingException * if the {@code mustUnderstand} attribute is present, but has an invalid value */ boolean getMustUnderstand() throws SOAPProcessingException; boolean isProcessed(); /** * We need to know whether all the mustUnderstand headers have been processed by the node. This * will done by a specific validation handler at the end of the execution chain. For this all * the handlers who process a particular header block must explicitly say that he processesd the * header by calling setProcessed() */ void setProcessed(); /** * Sets the relay attribute for this SOAPHeaderBlock to be either true or false. The SOAP relay * attribute is set to true to indicate that the SOAP header block must be relayed by any node * that is targeted by the header block but not actually process it. * * @param relay a boolean giving the value to be set */ void setRelay(boolean relay); /** * Returns the relay status associated with this SOAPHeaderBlock object. * * @return a boolean giving the relay status */ boolean getRelay(); /** * What SOAP version is this HeaderBlock? * * @return a SOAPVersion, one of the two singletons. */ SOAPVersion getVersion(); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy