01: /*******************************************************************************
02: * Copyright (c) 2000, 2005 IBM Corporation and others.
03: * All rights reserved. This program and the accompanying materials
04: * are made available under the terms of the Eclipse Public License v1.0
05: * which accompanies this distribution, and is available at
06: * http://www.eclipse.org/legal/epl-v10.html
07: *
08: * Contributors:
09: * IBM Corporation - initial API and implementation
10: *******************************************************************************/package org.eclipse.jdi.internal.event;
11:
12: import java.io.DataInputStream;
13: import java.io.IOException;
14:
15: import org.eclipse.jdi.internal.MirrorImpl;
16: import org.eclipse.jdi.internal.ThreadReferenceImpl;
17: import org.eclipse.jdi.internal.VirtualMachineImpl;
18: import org.eclipse.jdi.internal.request.RequestID;
19:
20: import com.sun.jdi.event.BreakpointEvent;
21:
22: /**
23: * this class implements the corresponding interfaces
24: * declared by the JDI specification. See the com.sun.jdi package
25: * for more information.
26: *
27: */
28: public class BreakpointEventImpl extends LocatableEventImpl implements
29: BreakpointEvent {
30: /** Jdwp Event Kind. */
31: public static final byte EVENT_KIND = EVENT_BREAKPOINT;
32:
33: /**
34: * Creates new BreakpointEventImpl.
35: */
36: private BreakpointEventImpl(VirtualMachineImpl vmImpl,
37: RequestID requestID) {
38: super ("BreakpointEvent", vmImpl, requestID); //$NON-NLS-1$
39: }
40:
41: /**
42: * @return Creates, reads and returns new EventImpl, of which requestID has already been read.
43: */
44: public static BreakpointEventImpl read(MirrorImpl target,
45: RequestID requestID, DataInputStream dataInStream)
46: throws IOException {
47: VirtualMachineImpl vmImpl = target.virtualMachineImpl();
48: BreakpointEventImpl event = new BreakpointEventImpl(vmImpl,
49: requestID);
50: event.readThreadAndLocation(target, dataInStream);
51: ((ThreadReferenceImpl) event.thread()).setIsAtBreakpoint();
52: return event;
53: }
54: }
|