< prev index next >

src/share/vm/classfile/klassFactory.hpp

Print this page




  51  *   a non-NULL ClassLoaderData* // the metaspace allocator
  52  *   (no pending exceptions)
  53  *
  54  * Returns:
  55  *   if the returned value is non-NULL, that value is an indirection (pointer/handle)
  56  *   to a Klass. The caller will not have a pending exception.
  57  *
  58  *   On broken invariants and/or runtime errors the returned value will be
  59  *   NULL (or a NULL handle) and the caller *might* now have a pending exception.
  60  *
  61  */
  62 
  63 class KlassFactory : AllStatic {
  64 
  65   // approved clients
  66   friend class ClassLoader;
  67   friend class ClassLoaderExt;
  68   friend class SystemDictionary;
  69 
  70  private:
  71   static instanceKlassHandle create_from_stream(ClassFileStream* stream,
  72                                                 Symbol* name,
  73                                                 ClassLoaderData* loader_data,
  74                                                 Handle protection_domain,
  75                                                 const InstanceKlass* host_klass,
  76                                                 GrowableArray<Handle>* cp_patches,
  77                                                 TRAPS);
  78  public:
  79   static instanceKlassHandle check_shared_class_file_load_hook(
  80                                           instanceKlassHandle ik,
  81                                           Symbol* class_name,
  82                                           Handle class_loader,
  83                                           Handle protection_domain, TRAPS);
  84 };
  85 
  86 #endif // SHARE_VM_CLASSFILE_KLASSFACTORY_HPP


  51  *   a non-NULL ClassLoaderData* // the metaspace allocator
  52  *   (no pending exceptions)
  53  *
  54  * Returns:
  55  *   if the returned value is non-NULL, that value is an indirection (pointer/handle)
  56  *   to a Klass. The caller will not have a pending exception.
  57  *
  58  *   On broken invariants and/or runtime errors the returned value will be
  59  *   NULL (or a NULL handle) and the caller *might* now have a pending exception.
  60  *
  61  */
  62 
  63 class KlassFactory : AllStatic {
  64 
  65   // approved clients
  66   friend class ClassLoader;
  67   friend class ClassLoaderExt;
  68   friend class SystemDictionary;
  69 
  70  private:
  71   static InstanceKlass* create_from_stream(ClassFileStream* stream,
  72                                            Symbol* name,
  73                                            ClassLoaderData* loader_data,
  74                                            Handle protection_domain,
  75                                            const InstanceKlass* host_klass,
  76                                            GrowableArray<Handle>* cp_patches,
  77                                            TRAPS);
  78  public:
  79   static InstanceKlass* check_shared_class_file_load_hook(
  80                                           InstanceKlass* ik,
  81                                           Symbol* class_name,
  82                                           Handle class_loader,
  83                                           Handle protection_domain, TRAPS);
  84 };
  85 
  86 #endif // SHARE_VM_CLASSFILE_KLASSFACTORY_HPP
< prev index next >