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

javax.xml.ws.handler.MessageContext Maven / Gradle / Ivy

The newest version!
/*
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
 *
 * Copyright (c) 2005-2017 Oracle and/or its affiliates. All rights reserved.
 *
 * The contents of this file are subject to the terms of either the GNU
 * General Public License Version 2 only ("GPL") or the Common Development
 * and Distribution License("CDDL") (collectively, the "License").  You
 * may not use this file except in compliance with the License.  You can
 * obtain a copy of the License at
 * https://oss.oracle.com/licenses/CDDL+GPL-1.1
 * or LICENSE.txt.  See the License for the specific
 * language governing permissions and limitations under the License.
 *
 * When distributing the software, include this License Header Notice in each
 * file and include the License file at LICENSE.txt.
 *
 * GPL Classpath Exception:
 * Oracle designates this particular file as subject to the "Classpath"
 * exception as provided by Oracle in the GPL Version 2 section of the License
 * file that accompanied this code.
 *
 * Modifications:
 * If applicable, add the following below the License Header, with the fields
 * enclosed by brackets [] replaced by your own identifying information:
 * "Portions Copyright [year] [name of copyright owner]"
 *
 * Contributor(s):
 * If you wish your version of this file to be governed by only the CDDL or
 * only the GPL Version 2, indicate your decision by adding "[Contributor]
 * elects to include this software in this distribution under the [CDDL or GPL
 * Version 2] license."  If you don't indicate a single choice of license, a
 * recipient has the option to distribute your version of this file under
 * either the CDDL, the GPL Version 2 or to extend the choice of license to
 * its licensees as provided above.  However, if you add GPL Version 2 code
 * and therefore, elected the GPL Version 2 license, then the option applies
 * only if the new code is made subject to such option by the copyright
 * holder.
 */

package javax.xml.ws.handler;
import java.util.Map;

/**
 * The interface {@code MessageContext} abstracts the message
 * context that is processed by a handler in the {@code handle}
 * method.
 *
 * 

The {@code MessageContext} interface provides methods to * manage a property set. {@code MessageContext} properties * enable handlers in a handler chain to share processing related * state. * * @since 1.6, JAX-WS 2.0 */ public interface MessageContext extends Map { /** * Standard property: message direction, {@code true} for * outbound messages, {@code false} for inbound. *

Type: boolean */ public static final String MESSAGE_OUTBOUND_PROPERTY = "javax.xml.ws.handler.message.outbound"; /** * Standard property: Map of attachments to a message for the inbound * message, key is the MIME Content-ID, value is a DataHandler. *

Type: {@code java.util.Map} */ public static final String INBOUND_MESSAGE_ATTACHMENTS = "javax.xml.ws.binding.attachments.inbound"; /** * Standard property: Map of attachments to a message for the outbound * message, key is the MIME Content-ID, value is a DataHandler. *

Type: {@code java.util.Map} */ public static final String OUTBOUND_MESSAGE_ATTACHMENTS = "javax.xml.ws.binding.attachments.outbound"; /** * Standard property: input source for WSDL document. *

Type: org.xml.sax.InputSource */ public static final String WSDL_DESCRIPTION = "javax.xml.ws.wsdl.description"; /** * Standard property: name of WSDL service. *

Type: javax.xml.namespace.QName */ public static final String WSDL_SERVICE = "javax.xml.ws.wsdl.service"; /** * Standard property: name of WSDL port. *

Type: javax.xml.namespace.QName */ public static final String WSDL_PORT = "javax.xml.ws.wsdl.port"; /** * Standard property: name of wsdl interface (2.0) or port type (1.1). *

Type: javax.xml.namespace.QName */ public static final String WSDL_INTERFACE = "javax.xml.ws.wsdl.interface"; /** * Standard property: name of WSDL operation. *

Type: javax.xml.namespace.QName */ public static final String WSDL_OPERATION = "javax.xml.ws.wsdl.operation"; /** * Standard property: HTTP response status code. *

Type: java.lang.Integer */ public static final String HTTP_RESPONSE_CODE = "javax.xml.ws.http.response.code"; /** * Standard property: HTTP request headers. *

Type: {@code java.util.Map>} */ public static final String HTTP_REQUEST_HEADERS = "javax.xml.ws.http.request.headers"; /** * Standard property: HTTP response headers. *

Type: {@code java.util.Map>} */ public static final String HTTP_RESPONSE_HEADERS = "javax.xml.ws.http.response.headers"; /** * Standard property: HTTP request method. *

Type: java.lang.String */ public static final String HTTP_REQUEST_METHOD = "javax.xml.ws.http.request.method"; /** * Standard property: servlet request object. *

Type: javax.servlet.http.HttpServletRequest */ public static final String SERVLET_REQUEST = "javax.xml.ws.servlet.request"; /** * Standard property: servlet response object. *

Type: javax.servlet.http.HttpServletResponse */ public static final String SERVLET_RESPONSE = "javax.xml.ws.servlet.response"; /** * Standard property: servlet context object. *

Type: javax.servlet.ServletContext */ public static final String SERVLET_CONTEXT = "javax.xml.ws.servlet.context"; /** * Standard property: Query string for request. *

Type: String **/ public static final String QUERY_STRING = "javax.xml.ws.http.request.querystring"; /** * Standard property: Request Path Info *

Type: String */ public static final String PATH_INFO = "javax.xml.ws.http.request.pathinfo"; /** * Standard property: WS Addressing Reference Parameters. * The list MUST include all SOAP headers marked with the * wsa:IsReferenceParameter="true" attribute. *

Type: {@code List} * * @since 1.6, JAX-WS 2.1 */ public static final String REFERENCE_PARAMETERS = "javax.xml.ws.reference.parameters"; /** * Property scope. Properties scoped as {@code APPLICATION} are * visible to handlers, * client applications and service endpoints; properties scoped as * {@code HANDLER} * are only normally visible to handlers. */ public enum Scope { /** * Application visibility. */ APPLICATION, /** * Handler visibility. */ HANDLER}; /** * Sets the scope of a property. * * @param name Name of the property associated with the * {@code MessageContext} * @param scope Desired scope of the property * @throws java.lang.IllegalArgumentException if an illegal * property name is specified */ public void setScope(String name, Scope scope); /** * Gets the scope of a property. * * @param name Name of the property * @return Scope of the property * @throws java.lang.IllegalArgumentException if a non-existant * property name is specified */ public Scope getScope(String name); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy