< prev index next >

src/jdk.jdi/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java

Print this page




 298          * if (shutdown) {
 299          *    throw new VMDisconnectedException();
 300          * }
 301          */
 302     }
 303 
 304     public boolean equals(Object obj) {
 305         return this == obj;
 306     }
 307 
 308     public int hashCode() {
 309         return System.identityHashCode(this);
 310     }
 311 
 312     public List<ModuleReference> allModules() {
 313         validateVM();
 314         List<ModuleReference> modules = retrieveAllModules();
 315         return Collections.unmodifiableList(modules);
 316     }
 317 











 318     public List<ReferenceType> classesByName(String className) {
 319         validateVM();
 320         String signature = JNITypeParser.typeNameToSignature(className);
 321         List<ReferenceType> list;
 322         if (retrievedAllTypes) {
 323            list = findReferenceTypes(signature);
 324         } else {
 325            list = retrieveClassesBySignature(signature);
 326         }
 327         return Collections.unmodifiableList(list);
 328     }
 329 
 330     public List<ReferenceType> allClasses() {
 331         validateVM();
 332 
 333         if (!retrievedAllTypes) {
 334             retrieveAllClasses();
 335         }
 336         ArrayList<ReferenceType> a;
 337         synchronized (this) {


1377             return null;
1378         }
1379         ObjectReferenceImpl object = null;
1380         Long key = id;
1381 
1382         /*
1383          * Attempt to retrieve an existing object reference
1384          */
1385         SoftObjectReference ref = objectsByID.get(key);
1386         if (ref != null) {
1387             object = ref.object();
1388         }
1389 
1390         /*
1391          * If the object wasn't in the table, or it's soft reference was
1392          * cleared, create a new instance.
1393          */
1394         if (object == null) {
1395             switch (tag) {
1396                 case JDWP.Tag.OBJECT:

1397                     object = new ObjectReferenceImpl(vm, id);
1398                     break;
1399                 case JDWP.Tag.STRING:
1400                     object = new StringReferenceImpl(vm, id);
1401                     break;
1402                 case JDWP.Tag.ARRAY:
1403                     object = new ArrayReferenceImpl(vm, id);
1404                     break;
1405                 case JDWP.Tag.THREAD:
1406                     ThreadReferenceImpl thread =
1407                         new ThreadReferenceImpl(vm, id);
1408                     thread.addListener(this);
1409                     object = thread;
1410                     break;
1411                 case JDWP.Tag.THREAD_GROUP:
1412                     object = new ThreadGroupReferenceImpl(vm, id);
1413                     break;
1414                 case JDWP.Tag.CLASS_LOADER:
1415                     object = new ClassLoaderReferenceImpl(vm, id);
1416                     break;




 298          * if (shutdown) {
 299          *    throw new VMDisconnectedException();
 300          * }
 301          */
 302     }
 303 
 304     public boolean equals(Object obj) {
 305         return this == obj;
 306     }
 307 
 308     public int hashCode() {
 309         return System.identityHashCode(this);
 310     }
 311 
 312     public List<ModuleReference> allModules() {
 313         validateVM();
 314         List<ModuleReference> modules = retrieveAllModules();
 315         return Collections.unmodifiableList(modules);
 316     }
 317 
 318      List<ReferenceType> classesBySignature(String signature) {
 319         validateVM();
 320         List<ReferenceType> list;
 321         if (retrievedAllTypes) {
 322             list = findReferenceTypes(signature);
 323         } else {
 324             list = retrieveClassesBySignature(signature);
 325         }
 326         return Collections.unmodifiableList(list);
 327     }
 328 
 329     public List<ReferenceType> classesByName(String className) {
 330         validateVM();
 331         String signature = JNITypeParser.typeNameToSignature(className);
 332         List<ReferenceType> list;
 333         if (retrievedAllTypes) {
 334            list = findReferenceTypes(signature);
 335         } else {
 336            list = retrieveClassesBySignature(signature);
 337         }
 338         return Collections.unmodifiableList(list);
 339     }
 340 
 341     public List<ReferenceType> allClasses() {
 342         validateVM();
 343 
 344         if (!retrievedAllTypes) {
 345             retrieveAllClasses();
 346         }
 347         ArrayList<ReferenceType> a;
 348         synchronized (this) {


1388             return null;
1389         }
1390         ObjectReferenceImpl object = null;
1391         Long key = id;
1392 
1393         /*
1394          * Attempt to retrieve an existing object reference
1395          */
1396         SoftObjectReference ref = objectsByID.get(key);
1397         if (ref != null) {
1398             object = ref.object();
1399         }
1400 
1401         /*
1402          * If the object wasn't in the table, or it's soft reference was
1403          * cleared, create a new instance.
1404          */
1405         if (object == null) {
1406             switch (tag) {
1407                 case JDWP.Tag.OBJECT:
1408                 case JDWP.Tag.INLINE_OBJECT:
1409                     object = new ObjectReferenceImpl(vm, id);
1410                     break;
1411                 case JDWP.Tag.STRING:
1412                     object = new StringReferenceImpl(vm, id);
1413                     break;
1414                 case JDWP.Tag.ARRAY:
1415                     object = new ArrayReferenceImpl(vm, id);
1416                     break;
1417                 case JDWP.Tag.THREAD:
1418                     ThreadReferenceImpl thread =
1419                         new ThreadReferenceImpl(vm, id);
1420                     thread.addListener(this);
1421                     object = thread;
1422                     break;
1423                 case JDWP.Tag.THREAD_GROUP:
1424                     object = new ThreadGroupReferenceImpl(vm, id);
1425                     break;
1426                 case JDWP.Tag.CLASS_LOADER:
1427                     object = new ClassLoaderReferenceImpl(vm, id);
1428                     break;


< prev index next >