63 } else if (typeName.equals("char")) {
64 sb.append('C');
65 } else if (typeName.equals("short")) {
66 sb.append('S');
67 } else if (typeName.equals("int")) {
68 sb.append('I');
69 } else if (typeName.equals("long")) {
70 sb.append('J');
71 } else if (typeName.equals("float")) {
72 sb.append('F');
73 } else if (typeName.equals("double")) {
74 sb.append('D');
75 } else {
76 sb.append('L');
77 index = typeName.indexOf("/"); // check if it's a hidden class
78 if (index < 0) {
79 sb.append(typeName.replace('.', '/'));
80 } else {
81 sb.append(typeName.substring(0, index).replace('.', '/'));
82 sb.append(".");
83 sb.append(typeName.substring(index+1, typeName.length()));
84 }
85 sb.append(';');
86 }
87
88 return sb.toString();
89 }
90
91 String typeName() {
92 return typeNameList().get(typeNameList().size()-1);
93 }
94
95 List<String> argumentTypeNames() {
96 return typeNameList().subList(0, typeNameList().size() - 1);
97 }
98
99 String signature() {
100 return signatureList().get(signatureList().size()-1);
101 }
102
103 List<String> argumentSignatures() {
197
198 switch(key) {
199 case (JDWP.Tag.ARRAY):
200 return nextTypeName() + "[]";
201
202 case (JDWP.Tag.BYTE):
203 return "byte";
204
205 case (JDWP.Tag.CHAR):
206 return "char";
207
208 case (JDWP.Tag.OBJECT):
209 int endClass = signature.indexOf(SIGNATURE_ENDCLASS,
210 currentIndex);
211 String retVal = signature.substring(currentIndex,
212 endClass);
213 int index = retVal.indexOf(".");
214 if (index < 0) {
215 retVal = retVal.replace('/', '.');
216 } else {
217 retVal = retVal.substring(0, index).replace('/', '.') + "/" +
218 retVal.substring(index + 1, retVal.length());
219 }
220 currentIndex = endClass + 1;
221 return retVal;
222
223 case (JDWP.Tag.FLOAT):
224 return "float";
225
226 case (JDWP.Tag.DOUBLE):
227 return "double";
228
229 case (JDWP.Tag.INT):
230 return "int";
231
232 case (JDWP.Tag.LONG):
233 return "long";
234
235 case (JDWP.Tag.SHORT):
236 return "short";
237
238 case (JDWP.Tag.VOID):
|
63 } else if (typeName.equals("char")) {
64 sb.append('C');
65 } else if (typeName.equals("short")) {
66 sb.append('S');
67 } else if (typeName.equals("int")) {
68 sb.append('I');
69 } else if (typeName.equals("long")) {
70 sb.append('J');
71 } else if (typeName.equals("float")) {
72 sb.append('F');
73 } else if (typeName.equals("double")) {
74 sb.append('D');
75 } else {
76 sb.append('L');
77 index = typeName.indexOf("/"); // check if it's a hidden class
78 if (index < 0) {
79 sb.append(typeName.replace('.', '/'));
80 } else {
81 sb.append(typeName.substring(0, index).replace('.', '/'));
82 sb.append(".");
83 sb.append(typeName.substring(index + 1));
84 }
85 sb.append(';');
86 }
87
88 return sb.toString();
89 }
90
91 String typeName() {
92 return typeNameList().get(typeNameList().size()-1);
93 }
94
95 List<String> argumentTypeNames() {
96 return typeNameList().subList(0, typeNameList().size() - 1);
97 }
98
99 String signature() {
100 return signatureList().get(signatureList().size()-1);
101 }
102
103 List<String> argumentSignatures() {
197
198 switch(key) {
199 case (JDWP.Tag.ARRAY):
200 return nextTypeName() + "[]";
201
202 case (JDWP.Tag.BYTE):
203 return "byte";
204
205 case (JDWP.Tag.CHAR):
206 return "char";
207
208 case (JDWP.Tag.OBJECT):
209 int endClass = signature.indexOf(SIGNATURE_ENDCLASS,
210 currentIndex);
211 String retVal = signature.substring(currentIndex,
212 endClass);
213 int index = retVal.indexOf(".");
214 if (index < 0) {
215 retVal = retVal.replace('/', '.');
216 } else {
217 // hidden class
218 retVal = retVal.substring(0, index).replace('/', '.')
219 + "/" + retVal.substring(index + 1);
220 }
221 currentIndex = endClass + 1;
222 return retVal;
223
224 case (JDWP.Tag.FLOAT):
225 return "float";
226
227 case (JDWP.Tag.DOUBLE):
228 return "double";
229
230 case (JDWP.Tag.INT):
231 return "int";
232
233 case (JDWP.Tag.LONG):
234 return "long";
235
236 case (JDWP.Tag.SHORT):
237 return "short";
238
239 case (JDWP.Tag.VOID):
|