1 /* 2 * Licensed to the Apache Software Foundation (ASF) under one or more 3 * contributor license agreements. See the NOTICE file distributed with 4 * this work for additional information regarding copyright ownership. 5 * The ASF licenses this file to You under the Apache License, Version 2.0 6 * (the "License"); you may not use this file except in compliance with 7 * the License. You may obtain a copy of the License at 8 * 9 * 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 package org.apache.harmony.jpda.tests.jdwp.Events; 20 21 import org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer; 22 import org.apache.harmony.jpda.tests.share.SyncDebuggee; 23 24 /** 25 * Debuggee for Breakpoint002Test unit test. 26 */ 27 public class Breakpoint002Debuggee extends SyncDebuggee { 28 29 int mIntField = 5; 30 long mLongField = 5l; 31 Object mObjectField = "this is an object field"; 32 breakpointReturnVoid()33 private void breakpointReturnVoid() { 34 return; 35 } 36 breakpointReturnIntConst()37 private int breakpointReturnIntConst() { 38 return 1; 39 } 40 breakpointReturnLongConst()41 private long breakpointReturnLongConst() { 42 return 1l; 43 } 44 breakpointReturnIntArg(int arg)45 private int breakpointReturnIntArg(int arg) { 46 return arg; 47 } 48 breakpointReturnLongArg(long arg)49 private long breakpointReturnLongArg(long arg) { 50 return arg; 51 } 52 breakpointReturnObjectArg(Object arg)53 private Object breakpointReturnObjectArg(Object arg) { 54 return arg; 55 } 56 breakpointIntGetter()57 private int breakpointIntGetter() { 58 return mIntField; 59 } 60 breakpointLongGetter()61 private long breakpointLongGetter() { 62 return mLongField; 63 } 64 breakpointObjectGetter()65 private Object breakpointObjectGetter() { 66 return mObjectField; 67 } 68 breakpointIntSetter(int val)69 private void breakpointIntSetter(int val) { 70 mIntField = val; 71 } 72 breakpointLongSetter(long val)73 private void breakpointLongSetter(long val) { 74 mLongField = val; 75 } 76 breakpointObjectSetter(Object val)77 private void breakpointObjectSetter(Object val) { 78 mObjectField = val; 79 } 80 callSmallMethods()81 private void callSmallMethods() { 82 logWriter.println("Calling breakpointReturnVoid"); 83 breakpointReturnVoid(); 84 85 logWriter.println("Calling breakpointReturnIntConst"); 86 int intConstant = breakpointReturnIntConst(); 87 logWriter.println("intConstant = " + intConstant); 88 89 logWriter.println("Calling breakpointReturnLongConst"); 90 long longConstant = breakpointReturnLongConst(); 91 logWriter.println("longConstant = " + longConstant); 92 93 logWriter.println("Calling breakpointReturnIntArg"); 94 int intArg = breakpointReturnIntArg(5); 95 logWriter.println("intArg = " + intArg); 96 97 logWriter.println("Calling breakpointReturnLongArg"); 98 long longArg = breakpointReturnLongArg(5l); 99 logWriter.println("longArg = " + longArg); 100 101 logWriter.println("Calling breakpointReturnLongArg"); 102 Object objectArg = breakpointReturnObjectArg("this is a string argument"); 103 logWriter.println("objectArg = " + objectArg); 104 105 logWriter.println("Calling breakpointIntGetter"); 106 int intField = breakpointIntGetter(); 107 logWriter.println("mIntField = " + intField); 108 109 logWriter.println("Calling breakpointLongGetter"); 110 long longField = breakpointLongGetter(); 111 logWriter.println("mLongField = " + longField); 112 113 logWriter.println("Calling breakpointObjectGetter"); 114 Object objectField = breakpointObjectGetter(); 115 logWriter.println("mObjectField = " + objectField); 116 117 logWriter.println("Calling breakpointIntSetter"); 118 breakpointIntSetter(10); 119 120 logWriter.println("Calling breakpointLongGetter"); 121 breakpointLongSetter(10l); 122 123 logWriter.println("Calling breakpointObjectSetter"); 124 breakpointObjectSetter("this is a new object field value"); 125 } 126 127 @Override run()128 public void run() { 129 synchronizer.sendMessage(JPDADebuggeeSynchronizer.SGNL_READY); 130 131 logWriter.println("Breakpoint002Debuggee started"); 132 133 synchronizer.receiveMessage(JPDADebuggeeSynchronizer.SGNL_CONTINUE); 134 135 callSmallMethods(); 136 137 logWriter.println("Breakpoint002Debuggee finished"); 138 } 139 main(String[] args)140 public static void main(String[] args) { 141 runDebuggee(Breakpoint002Debuggee.class); 142 } 143 144 } 145