JdwpConnection.java (sendEvent): New method.

* gnu/classpath/jdwp/transport/JdwpConnection.java (sendEvent): New
        method.
        (_bytes): New member.
        (_doStream): New member.
        (JdwpConnection): Initialize new members.

From-SVN: r101471
This commit is contained in:
Keith Seitz 2005-06-30 18:00:25 +00:00 committed by Keith Seitz
parent 70d0243011
commit 1b0618bfe6
2 changed files with 44 additions and 2 deletions

View File

@ -1,3 +1,11 @@
2005-06-30 Keith Seitz <keiths@redhat.com>
* gnu/classpath/jdwp/transport/JdwpConnection.java (sendEvent): New
method.
(_bytes): New member.
(_doStream): New member.
(JdwpConnection): Initialize new members.
2005-06-29 Kelley Cook <kcook@gcc.gnu.org>
* all files: Update for new FSF address.

View File

@ -40,7 +40,10 @@ exception statement from your version. */
package gnu.classpath.jdwp.transport;
import gnu.classpath.jdwp.Jdwp;
import gnu.classpath.jdwp.event.Event;
import gnu.classpath.jdwp.event.EventRequest;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
@ -64,7 +67,8 @@ public class JdwpConnection
extends Thread
{
// The JDWP handshake
private static final byte[] _HANDSHAKE = {'J', 'D', 'W', 'P', '-', 'H', 'a', 'n', 'd', 's', 'h', 'a', 'k', 'e'};
private static final byte[] _HANDSHAKE = {'J', 'D', 'W', 'P', '-', 'H', 'a',
'n', 'd', 's', 'h', 'a', 'k', 'e'};
// Transport method
private ITransport _transport;
@ -81,6 +85,12 @@ public class JdwpConnection
// Output stream from transprot
private DataOutputStream _outStream;
// A buffer used to construct the packet data
private ByteArrayOutputStream _bytes;
// A DataOutputStream for the byte buffer
private DataOutputStream _doStream;
/**
* Creates a new <code>JdwpConnection</code> instance
*
@ -91,6 +101,8 @@ public class JdwpConnection
_transport = transport;
_commandQueue = new ArrayList ();
_shutdown = false;
_bytes = new ByteArrayOutputStream ();
_doStream = new DataOutputStream (_bytes);
}
/**
@ -241,7 +253,7 @@ public class JdwpConnection
* Send a packet to the debugger
*
* @param pkt a <code>JdwpPacket</code> to send
* @throws TransportException
* @throws IOException
*/
public void sendPacket (JdwpPacket pkt)
throws IOException
@ -250,6 +262,28 @@ public class JdwpConnection
_outStream.write (data, 0, data.length);
}
/**
* Send an event notification to the debugger
*
* @param request the debugger request that wanted this event
* @param event the event
* @throws IOException
*/
public void sendEvent (EventRequest request, Event event)
throws IOException
{
JdwpPacket pkt;
synchronized (_bytes)
{
_bytes.reset ();
pkt = event.toPacket (_doStream, request);
pkt.setData (_bytes.toByteArray ());
}
sendPacket (pkt);
}
/**
* Shutdown the connection
*/