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.2 $
22: */
23:
24: /**
25: * Created on 10.02.2005
26: */package org.apache.harmony.jpda.tests.jdwp.StackFrame;
27:
28: import org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer;
29: import org.apache.harmony.jpda.tests.share.SyncDebuggee;
30:
31: public class StackTraceDebuggee extends SyncDebuggee {
32:
33: public static void main(String[] args) {
34: runDebuggee(StackTraceDebuggee.class);
35: }
36:
37: public void run() {
38: String currentThreadName = Thread.currentThread().getName();
39: synchronizer.sendMessage(currentThreadName);
40: synchronizer
41: .receiveMessage(JPDADebuggeeSynchronizer.SGNL_CONTINUE);
42:
43: nestledMethod1();
44: }
45:
46: private void nestledMethod1() {
47: synchronizer.sendMessage(JPDADebuggeeSynchronizer.SGNL_READY);
48: synchronizer
49: .receiveMessage(JPDADebuggeeSynchronizer.SGNL_CONTINUE);
50:
51: nestledMethod2();
52: }
53:
54: private void nestledMethod2() {
55: synchronizer.sendMessage(JPDADebuggeeSynchronizer.SGNL_READY);
56: synchronizer
57: .receiveMessage(JPDADebuggeeSynchronizer.SGNL_CONTINUE);
58:
59: nestledMethod3();
60: }
61:
62: private void nestledMethod3() {
63: boolean boolLocalVariable = true;
64: int intLocalVariable = -512;
65: String strLocalVariable = "test string";
66: logWriter.println("boolLocalVariable = " + boolLocalVariable);
67: logWriter.println("intLocalVariable = " + intLocalVariable);
68: logWriter.println("strLocalVariable = " + strLocalVariable);
69:
70: synchronizer.sendMessage(JPDADebuggeeSynchronizer.SGNL_READY);
71: synchronizer
72: .receiveMessage(JPDADebuggeeSynchronizer.SGNL_CONTINUE);
73:
74: }
75:
76: }
|