KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > aspectj > debugger > request > MonitorRequest


1 /* -*- Mode: JDE; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
2  *
3  * This file is part of the debugger and core tools for the AspectJ(tm)
4  * programming language; see http://aspectj.org
5  *
6  * The contents of this file are subject to the Mozilla Public License
7  * Version 1.1 (the "License"); you may not use this file except in
8  * compliance with the License. You may obtain a copy of the License at
9  * either http://www.mozilla.org/MPL/ or http://aspectj.org/MPL/.
10  *
11  * Software distributed under the License is distributed on an "AS IS" basis,
12  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
13  * for the specific language governing rights and limitations under the
14  * License.
15  *
16  * The Original Code is AspectJ.
17  *
18  * The Initial Developer of the Original Code is Xerox Corporation. Portions
19  * created by Xerox Corporation are Copyright (C) 1999-2002 Xerox Corporation.
20  * All Rights Reserved.
21  */

22
23 package org.aspectj.debugger.request;
24
25 import org.aspectj.debugger.base.*;
26
27 import com.sun.jdi.event.*;
28
29 /**
30  * MonitorRequest.java
31  *
32  *
33  * Created: Fri Aug 25 13:34:19 2000
34  *
35  * @author <a HREF="mailto:palm@parc.xerox.com"Jeffrey Palm</a>
36  */

37
38 public class MonitorRequest extends Request implements StopListener {
39
40     private String JavaDoc command;
41     private int number;
42
43     public MonitorRequest(Debugger debugger, String JavaDoc command, int number) {
44         super(debugger);
45         this.command = command;
46         this.number = number;
47     }
48
49     public Object JavaDoc go() throws NoVMException, DebuggerException {
50         if (!(command.startsWith("monitor"))) {
51             debugger.addMonitorRequest(this);
52         }
53         return command;
54     }
55
56     public int getNumber() {
57         return number;
58     }
59
60     public String JavaDoc getCommand() {
61         return command;
62     }
63
64     public boolean equals(Object JavaDoc other) {
65         if (!(other instanceof MonitorRequest)) {
66             return super.equals(other);
67         }
68         return ((MonitorRequest) other).getNumber() == getNumber();
69     }
70
71     public String JavaDoc toString() {
72         return number + ": " + command;
73     }
74
75     /* StopListener */
76     public void accessWatchpointEvent(AccessWatchpointEvent e) {
77         debugger.execute(command);
78     }
79     public void breakpointEvent(BreakpointEvent e) {
80         debugger.execute(command);
81     }
82     public void exceptionEvent(ExceptionEvent e) {
83         debugger.execute(command);
84     }
85     public void modificationWatchpointEvent(ModificationWatchpointEvent e) {
86         debugger.execute(command);
87     }
88     public void stepEvent(StepEvent e) {
89         debugger.execute(command);
90     }
91 }
92
Popular Tags