001: /**
002: * Licensed to the Apache Software Foundation (ASF) under one or more
003: * contributor license agreements. See the NOTICE file distributed with
004: * this work for additional information regarding copyright ownership.
005: * The ASF licenses this file to You under the Apache License, Version 2.0
006: * (the "License"); you may not use this file except in compliance with
007: * the License. You may obtain a copy of the License at
008: *
009: * http://www.apache.org/licenses/LICENSE-2.0
010: *
011: * Unless required by applicable law or agreed to in writing, software
012: * distributed under the License is distributed on an "AS IS" BASIS,
013: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014: * See the License for the specific language governing permissions and
015: * limitations under the License.
016: */package org.apache.geronimo.management.geronimo;
017:
018: /**
019: * The common configuration settings for a web container network connector --
020: * that is, the protocol and network settings used to connect to the web
021: * container (with a variety of tuning arguments as well).
022: *
023: * http://jakarta.apache.org/tomcat/tomcat-5.5-doc/config/http.html
024: * http://mortbay.org/javadoc/org/mortbay/http/SocketListener.html
025: *
026: * @version $Rev: 592536 $ $Date: 2007-11-06 12:06:33 -0800 (Tue, 06 Nov 2007) $
027: */
028: public interface WebConnector extends NetworkConnector {
029: /**
030: * Gets the size of the buffer used to handle network data for this
031: * connector.
032: */
033: public int getBufferSizeBytes();
034:
035: /**
036: * Gets the size of the buffer used to handle network data for this
037: * connector.
038: */
039: public void setBufferSizeBytes(int bytes);
040:
041: /**
042: * Gets the size of the header buffer used to handle network data for this
043: * connector.
044: */
045: public int getHeaderBufferSizeBytes();
046:
047: /**
048: * Sets the size of the Header buffer used to handle network data for this
049: * connector.
050: */
051: public void setHeaderBufferSizeBytes(int bytes);
052:
053: /**
054: * Gets the maximum number of threads used to service connections from
055: * this connector.
056: */
057: public int getMaxThreads();
058:
059: /**
060: * Sets the maximum number of threads used to service connections from
061: * this connector.
062: */
063: public void setMaxThreads(int threads);
064:
065: /**
066: * Gets the maximum number of connections that may be queued while all
067: * threads are busy. Any requests received while the queue is full will
068: * be rejected.
069: */
070: public int getAcceptQueueSize();
071:
072: /**
073: * Sets the maximum number of connections that may be queued while all
074: * threads are busy. Any requests received while the queue is full will
075: * be rejected.
076: */
077: public void setAcceptQueueSize(int size);
078:
079: /**
080: * Gets the amount of time the socket used by this connector will linger
081: * after being closed. -1 indicates that socket linger is disabled.
082: */
083: public int getLingerMillis();
084:
085: /**
086: * Sets the amount of time the socket used by this connector will linger
087: * after being closed. Use -1 to disable socket linger.
088: */
089: public void setLingerMillis(int millis);
090:
091: /**
092: * Gets whether the TCP_NODELAY flag is set for the sockets used by this
093: * connector. This usually enhances performance, so it should typically
094: * be set.
095: */
096: public boolean isTcpNoDelay();
097:
098: /**
099: * Sets whether the TCP_NODELAY flag is set for the sockets used by this
100: * connector. This usually enhances performance, so it should typically
101: * be set.
102: */
103: public void setTcpNoDelay(boolean enable);
104:
105: /**
106: * Gets the network port to which traffic will be redirected if this
107: * connector handles insecure traffic and the request requires a secure
108: * connection. Needless to say, this should point to another connector
109: * configured for SSL.
110: */
111: public int getRedirectPort();
112:
113: /**
114: * Gets the network port to which traffic will be redirected if this
115: * connector handles insecure traffic and the request requires a secure
116: * connection. Needless to say, this should point to another connector
117: * configured for SSL. If no SSL connector is available, any port can
118: * be used as they all fail equally well. :)
119: */
120: public void setRedirectPort(int port);
121:
122: /**
123: * Gets a URL used to connect to the web server via this connector.
124: * This is not guaranteed to work (for example, if the server is
125: * located behind a proxy), but it should give a reasonable value if
126: * possible. The form of the returned String should be
127: * http://hostname or http://hostname:port (in other words, suitable
128: * for appending a context path).
129: */
130: public String getConnectUrl();
131: }
|