| <html> |
| <head> |
| <!-- |
| /* |
| * $HeadURL: http://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/conn/package.html $ |
| * $Revision: 651813 $ |
| * $Date: 2008-04-26 03:43:34 -0700 (Sat, 26 Apr 2008) $ |
| * |
| * ==================================================================== |
| * 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. |
| * ==================================================================== |
| * |
| * This software consists of voluntary contributions made by many |
| * individuals on behalf of the Apache Software Foundation. For more |
| * information on the Apache Software Foundation, please see |
| * <http://www.apache.org/>. |
| * |
| */ |
| --> |
| </head> |
| <body> |
| The client-side connection management and handling API |
| at the heart of what is referred to as <i>HttpConn</i>. |
| This component provides interfaces and implementations for |
| opening and managing connections. |
| |
| <p> |
| The lowest layer of connection handling is comprised of |
| {@link org.apache.http.conn.OperatedClientConnection OperatedClientConnection} |
| and |
| {@link org.apache.http.conn.ClientConnectionOperator ClientConnectionOperator}. |
| The connection interface extends the core |
| {@link org.apache.http.HttpClientConnection HttpClientConnection} |
| by operations to set and update a socket. |
| An operator encapsulates the logic to open and layer sockets, |
| typically using a {@link org.apache.http.conn.scheme.SocketFactory SocketFactory}. |
| The socket factory for a protocol |
| {@link org.apache.http.conn.scheme.Scheme Scheme} |
| such as "http" or "https" can be looked up in a |
| {@link org.apache.http.conn.scheme.SchemeRegistry SchemeRegistry}. |
| Applications without a need for sophisticated connection management |
| can use this layer directly. |
| </p> |
| |
| <p> |
| On top of that lies the connection management layer. A |
| {@link org.apache.http.conn.ClientConnectionManager ClientConnectionManager} |
| internally manages operated connections, but hands out instances of |
| {@link org.apache.http.conn.ManagedClientConnection ManagedClientConnection}. |
| This interface abstracts from the underlying socket operations and |
| provides convenient methods for opening and updating sockets in order |
| to establish a {@link org.apache.http.conn.routing.HttpRoute route}. |
| The operator is encapsulated by the connection manager and called |
| automatically. |
| |
| <br/> |
| |
| Connections obtained from a manager have to be returned after use. |
| This can be {@link org.apache.http.conn.ConnectionReleaseTrigger triggered} |
| on various levels, either by releasing the |
| {@link org.apache.http.conn.ManagedClientConnection |
| connection} |
| directly, or by calling a method on an |
| {@link org.apache.http.conn.BasicManagedEntity entity} |
| received from the connection, or by closing the |
| {@link org.apache.http.conn.EofSensorInputStream stream} |
| from which that entity is being read. |
| |
| Connection managers will try to keep returned connections alive in |
| order to re-use them for subsequent requests along the same route. |
| The managed connection interface and all triggers for connection release |
| provide methods to enable or disable this behavior. |
| </p> |
| |
| </body> |
| </html> |