comparison jvmci/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/services/HotSpotVMEventListener.java @ 23393:1d4ce2d19e52

clean up and minimize JVMCI (JDK-8156835)
author Doug Simon <doug.simon@oracle.com>
date Thu, 12 May 2016 20:57:31 +0200
parents 0226d6bcb0d2
children
comparison
equal deleted inserted replaced
23392:b3a816d3b844 23393:1d4ce2d19e52
23 package jdk.vm.ci.hotspot.services; 23 package jdk.vm.ci.hotspot.services;
24 24
25 import jdk.vm.ci.code.CompiledCode; 25 import jdk.vm.ci.code.CompiledCode;
26 import jdk.vm.ci.code.InstalledCode; 26 import jdk.vm.ci.code.InstalledCode;
27 import jdk.vm.ci.hotspot.HotSpotCodeCacheProvider; 27 import jdk.vm.ci.hotspot.HotSpotCodeCacheProvider;
28 import jdk.vm.ci.hotspot.HotSpotJVMCIRuntime;
29 import jdk.vm.ci.meta.JVMCIMetaAccessContext;
30 import jdk.vm.ci.meta.ResolvedJavaType;
31 import jdk.vm.ci.services.JVMCIPermission; 28 import jdk.vm.ci.services.JVMCIPermission;
32 29
33 /** 30 /**
34 * Service-provider class for responding to VM events and for creating 31 * Service-provider class for responding to VM events.
35 * {@link JVMCIMetaAccessContext}s.
36 */ 32 */
37 public abstract class HotSpotVMEventListener { 33 public abstract class HotSpotVMEventListener {
38 34
39 private static Void checkPermission() { 35 private static Void checkPermission() {
40 SecurityManager sm = System.getSecurityManager(); 36 SecurityManager sm = System.getSecurityManager();
77 /** 73 /**
78 * Notify on completion of a bootstrap. 74 * Notify on completion of a bootstrap.
79 */ 75 */
80 public void notifyBootstrapFinished() { 76 public void notifyBootstrapFinished() {
81 } 77 }
82
83 /**
84 * Create a custom {@link JVMCIMetaAccessContext} to be used for managing the lifetime of loaded
85 * metadata. It a custom one isn't created then the default implementation will be a single
86 * context with globally shared instances of {@link ResolvedJavaType} that are never released.
87 *
88 * @param runtime the runtime instance that will use the returned context
89 * @return a custom context or null
90 */
91 public JVMCIMetaAccessContext createMetaAccessContext(HotSpotJVMCIRuntime runtime) {
92 return null;
93 }
94 } 78 }