001: /*
002: * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
003: *
004: * Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.
005: *
006: * The contents of this file are subject to the terms of either the GNU
007: * General Public License Version 2 only ("GPL") or the Common Development
008: * and Distribution License("CDDL") (collectively, the "License"). You
009: * may not use this file except in compliance with the License. You can obtain
010: * a copy of the License at https://glassfish.dev.java.net/public/CDDL+GPL.html
011: * or glassfish/bootstrap/legal/LICENSE.txt. See the License for the specific
012: * language governing permissions and limitations under the License.
013: *
014: * When distributing the software, include this License Header Notice in each
015: * file and include the License file at glassfish/bootstrap/legal/LICENSE.txt.
016: * Sun designates this particular file as subject to the "Classpath" exception
017: * as provided by Sun in the GPL Version 2 section of the License file that
018: * accompanied this code. If applicable, add the following below the License
019: * Header, with the fields enclosed by brackets [] replaced by your own
020: * identifying information: "Portions Copyrighted [year]
021: * [name of copyright owner]"
022: *
023: * Contributor(s):
024: *
025: * If you wish your version of this file to be governed by only the CDDL or
026: * only the GPL Version 2, indicate your decision by adding "[Contributor]
027: * elects to include this software in this distribution under the [CDDL or GPL
028: * Version 2] license." If you don't indicate a single choice of license, a
029: * recipient has the option to distribute your version of this file under
030: * either the CDDL, the GPL Version 2 or to extend the choice of license to
031: * its licensees as provided above. However, if you add GPL Version 2 code
032: * and therefore, elected the GPL Version 2 license, then the option applies
033: * only if the new code is made subject to such option by the copyright
034: * holder.
035: */
036:
037: package com.sun.xml.ws.transport.tcp.util;
038:
039: import javax.xml.namespace.QName;
040:
041: /**
042: * @author Alexey Stashok
043: */
044: public final class TCPConstants {
045: public static final String UTF8 = "UTF-8";
046:
047: public static final String CHARSET_PROPERTY = "charset";
048: public static final String CONTENT_TYPE_PROPERTY = "Content-Type";
049: public static final String SOAP_ACTION_PROPERTY = "action";
050: public static final String TRANSPORT_SOAP_ACTION_PROPERTY = "SOAPAction";
051:
052: public static final int OK = 0;
053: public static final int ONE_WAY = 1;
054: public static final int ERROR = 2;
055:
056: // Max string length for SOAP/TCP content parameter value
057: public static final int MAX_PARAM_VALUE_LENGTH = 1024;
058:
059: // Error codes
060: public static final int CRITICAL_ERROR = 0;
061: public static final int NON_CRITICAL_ERROR = 1;
062:
063: //Critical error sub-codes
064: public static final int MALFORMED_FRAME_ERROR = 0;
065: public static final int UNKNOWN_MESSAGE_ID = 1;
066: public static final int INCORRECT_MESSAGE_FRAME_SEQ = 2;
067: public static final int INTERLEAVED_MESSAGE_FRAME_SEQ = 3;
068: public static final int UNKNOWN_REQUEST_RESPONSE_PATTERN = 4;
069:
070: //Non-critical error sub-codes
071: public static final int GENERAL_CHANNEL_ERROR = 0;
072: public static final int UNKNOWN_CHANNEL_ID = 1;
073: public static final int UNKNOWN_CONTENT_ID = 2;
074: public static final int UNKNOWN_PARAMETER_ID = 3;
075:
076: //ConnectionManagement Service error codes
077: public static final int WS_NOT_FOUND_ERROR = 1;
078: public static final int TOO_MANY_SESSIONS = 2;
079: public static final int TOO_MANY_CHANNELS = 3;
080: public static final int TOO_MANY_CHANNELS_FOR_SESSION = 4;
081:
082: /** ByteBuffer settings for FramedBufferInputStream and FramedBufferOutputStream */
083: public static final int DEFAULT_FRAME_SIZE = 4096;
084: public static final boolean DEFAULT_USE_DIRECT_BUFFER = false;
085:
086: /** Name of property in MessageContext, which hold tcp connection context */
087: public static final String CHANNEL_CONTEXT = "channelContext";
088: public static final String TCP_SESSION = "tcpSession";
089:
090: /** Name of Service pipeline attribute in client's connection session */
091: public static final String SERVICE_PIPELINE_ATTR_NAME = "ServicePipeline";
092:
093: /** Service Channel WS endpoint path */
094: public static final String SERVICE_CHANNEL_URL_PATTERN = "/servicechannel";
095: public static final String SERVICE_CHANNEL_CONTEXT_PATH = "/service";
096:
097: /** Number of tries client will use to send message */
098: public static final int CLIENT_MAX_FAIL_TRIES = 5;
099:
100: /** Attribute names for ServiceWS invocation */
101: public static final String ADAPTER_REGISTRY = "AdapterRegistry";
102:
103: /** SOAP/TCP protocol schema */
104: public static final String PROTOCOL_SCHEMA = "vnd.sun.ws.tcp";
105:
106: /** SOAP/TCP logging domain root */
107: public static final String LoggingDomain = "com.sun.xml.ws.transport.tcp";
108:
109: /** Lifecycle module paratemer names*/
110: public static final String HIGH_WATER_MARK = "high-water-mark";
111: public static final String NUMBER_TO_RECLAIM = "number-to-reclaim";
112:
113: /** Service Channel web service: Service and Port names*/
114: public static final QName SERVICE_CHANNEL_WS_NAME = new QName(
115: "http://servicechannel.tcp.transport.ws.xml.sun.com/",
116: "ServiceChannelWSImplService");
117: public static final QName SERVICE_CHANNEL_WS_PORT_NAME = new QName(
118: "http://servicechannel.tcp.transport.ws.xml.sun.com/",
119: "ServiceChannelWSImplPort");
120:
121: }
|