donaldp 2002/07/11 17:34:52
Modified: src/java/org/apache/avalon/cornerstone/blocks/connection
Connection.java
Log:
Made it so that the connection handler is not created until they are actually used.
This is more
optimal in situations where a block thread pool is used.
Submitted By: "Andrei Ivanov" <[EMAIL PROTECTED]>
Revision Changes Path
1.13 +11 -8
jakarta-avalon-cornerstone/src/java/org/apache/avalon/cornerstone/blocks/connection/Connection.java
Index: Connection.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-cornerstone/src/java/org/apache/avalon/cornerstone/blocks/connection/Connection.java,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- Connection.java 10 Jul 2002 10:54:28 -0000 1.12
+++ Connection.java 12 Jul 2002 00:34:52 -0000 1.13
@@ -90,9 +90,8 @@
try
{
final Socket socket = m_serverSocket.accept();
- final ConnectionHandler handler =
m_handlerFactory.createConnectionHandler();
final ConnectionRunner runner =
- new ConnectionRunner( socket, m_runners, handler,
m_handlerFactory );
+ new ConnectionRunner( socket, m_runners, m_handlerFactory );
setupLogger( runner );
m_threadPool.execute( runner );
}
@@ -125,17 +124,14 @@
private Socket m_socket;
private Thread m_thread;
private List m_runners;
- private ConnectionHandler m_handler;
private ConnectionHandlerFactory m_handlerFactory;
ConnectionRunner( final Socket socket,
final List runners,
- final ConnectionHandler handler,
final ConnectionHandlerFactory handlerFactory )
{
m_socket = socket;
m_runners = runners;
- m_handler = handler;
m_handlerFactory = handlerFactory;
}
@@ -159,6 +155,7 @@
public void run()
{
+ ConnectionHandler handler = null;
try
{
m_thread = Thread.currentThread();
@@ -171,7 +168,9 @@
m_socket.getInetAddress().getHostAddress();
getLogger().debug( message );
}
- m_handler.handleConnection( m_socket );
+
+ handler = m_handlerFactory.createConnectionHandler();
+ handler.handleConnection( m_socket );
if( getLogger().isDebugEnabled() )
{
@@ -180,7 +179,7 @@
m_socket.getInetAddress().getHostAddress();
getLogger().debug( message );
}
- m_handlerFactory.releaseConnectionHandler( m_handler );
+
}
catch( final Exception e )
{
@@ -188,7 +187,11 @@
}
finally
{
- m_handlerFactory = null;
+ if( null != handler )
+ {
+ m_handlerFactory.releaseConnectionHandler( handler );
+ }
+
try
{
m_socket.close();
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>