01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * http://www.apache.org/licenses/LICENSE-2.0
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: *
15: * See the License for the specific language governing permissions and
16: * limitations under the License.
17: */
18:
19: /**
20: * @author Anton V. Karnachuk
21: * @version $Revision: 1.4 $
22: */
23:
24: /**
25: * Created on 11.04.2005
26: */package org.apache.harmony.jpda.tests.jdwp.MultiSession;
27:
28: import org.apache.harmony.jpda.tests.jdwp.Events.DebuggeeException;
29: import org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer;
30: import org.apache.harmony.jpda.tests.share.SyncDebuggee;
31:
32: /**
33: * Debuggee for ExceptionTest unit test.
34: * Generates caught DebuggeeException exception.
35: */
36: public class ExceptionDebuggee extends SyncDebuggee {
37:
38: public static void main(String[] args) {
39: runDebuggee(ExceptionDebuggee.class);
40: }
41:
42: public void run() {
43:
44: logWriter.println("--> ExceptionDebuggee: STARTED");
45: // load and prepare DebuggeeException class
46: DebuggeeException ex = new DebuggeeException("dummy exception");
47:
48: synchronizer.sendMessage(JPDADebuggeeSynchronizer.SGNL_READY);
49:
50: logWriter
51: .println("--> ExceptionDebuggee: Wait for SGNL_CONTINUE...");
52: synchronizer
53: .receiveMessage(JPDADebuggeeSynchronizer.SGNL_CONTINUE);
54: logWriter
55: .println("--> ExceptionDebuggee: SGNL_CONTINUE has been received!");
56:
57: try {
58: // throw caught exception
59: throw new DebuggeeException("Caught debuggee exception");
60: } catch (DebuggeeException e) {
61: logWriter.println("-- ExceptionDebuggee: Exception: \""
62: + e.getMessage() + "\" was thrown");
63: }
64:
65: synchronizer.sendMessage(JPDADebuggeeSynchronizer.SGNL_READY);
66:
67: logWriter.println("DUMP{" + ex + "}");
68: logWriter.println("-- ExceptionDebuggee: FINISHing...");
69: }
70: }
|