donaldp 01/04/01 17:07:55 Modified: src/java/org/apache/cornerstone/blocks/packet Acceptor.java Log: Create a new datagram per listen attempt to get around threading locks. Eventually will need to pool packets. Revision Changes Path 1.2 +15 -14 jakarta-avalon-cornerstone/src/java/org/apache/cornerstone/blocks/packet/Acceptor.java Index: Acceptor.java =================================================================== RCS file: /home/cvs/jakarta-avalon-cornerstone/src/java/org/apache/cornerstone/blocks/packet/Acceptor.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- Acceptor.java 2001/03/30 04:08:02 1.1 +++ Acceptor.java 2001/04/02 00:07:55 1.2 @@ -67,24 +67,26 @@ public void run() { m_thread = Thread.currentThread(); - DatagramPacket packet = null; - - try - { - final int size = m_datagramSocket.getReceiveBufferSize(); - final byte[] buffer = new byte[ size ]; - packet = new DatagramPacket( buffer, size ); - } - catch( final IOException ioe ) - { - getLogger().error( "Failed to get receive buffer size for datagram socket", - ioe ); - } while( !Thread.interrupted() ) { try { + //TODO: packets hould really be pooled... + DatagramPacket packet = null; + + try + { + final int size = m_datagramSocket.getReceiveBufferSize(); + final byte[] buffer = new byte[ size ]; + packet = new DatagramPacket( buffer, size ); + } + catch( final IOException ioe ) + { + getLogger().error( "Failed to get receive buffer size for datagram socket", + ioe ); + } + m_datagramSocket.receive( packet ); final PacketHandler handler = m_handlerFactory.createPacketHandler(); final PacketHandlerRunner runner = @@ -145,7 +147,6 @@ getLogger().debug( "Starting connection on " + m_packet ); } - setupLogger( m_handler ); m_handler.handlePacket( m_packet ); if( getLogger().isDebugEnabled() ) --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]