Class CacheConstructorsAutofeature
- java.lang.Object
-
- io.quarkus.caffeine.runtime.graal.CacheConstructorsAutofeature
-
- All Implemented Interfaces:
org.graalvm.nativeimage.hosted.Feature
public class CacheConstructorsAutofeature extends Object implements org.graalvm.nativeimage.hosted.Feature
This Automatic Feature for GraalVM will register for reflection the most commonly used cache implementations from Caffeine. It's implemented as an explicit @Featurerather than using the Quarkus builditems because it doesn't need to be dynamically tuned (the list is static), and to take advantage of the reachability information we can infer from @Feature.DuringAnalysisAccess. This allows us to register for reflection these resources only if Caffeine is indeed being used: only if the cache builder is reachable in the application code.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.graalvm.nativeimage.hosted.Feature
org.graalvm.nativeimage.hosted.Feature.AfterAnalysisAccess, org.graalvm.nativeimage.hosted.Feature.AfterCompilationAccess, org.graalvm.nativeimage.hosted.Feature.AfterHeapLayoutAccess, org.graalvm.nativeimage.hosted.Feature.AfterImageWriteAccess, org.graalvm.nativeimage.hosted.Feature.AfterRegistrationAccess, org.graalvm.nativeimage.hosted.Feature.BeforeAnalysisAccess, org.graalvm.nativeimage.hosted.Feature.BeforeCompilationAccess, org.graalvm.nativeimage.hosted.Feature.BeforeImageWriteAccess, org.graalvm.nativeimage.hosted.Feature.BeforeUniverseBuildingAccess, org.graalvm.nativeimage.hosted.Feature.CompilationAccess, org.graalvm.nativeimage.hosted.Feature.DuringAnalysisAccess, org.graalvm.nativeimage.hosted.Feature.DuringSetupAccess, org.graalvm.nativeimage.hosted.Feature.FeatureAccess, org.graalvm.nativeimage.hosted.Feature.IsInConfigurationAccess, org.graalvm.nativeimage.hosted.Feature.OnAnalysisExitAccess, org.graalvm.nativeimage.hosted.Feature.QueryReachabilityAccess
-
-
Constructor Summary
Constructors Constructor Description CacheConstructorsAutofeature()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbeforeAnalysis(org.graalvm.nativeimage.hosted.Feature.BeforeAnalysisAccess access)static String[]typesNeedingConstructorsRegistered()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.graalvm.nativeimage.hosted.Feature
afterAnalysis, afterCompilation, afterHeapLayout, afterImageWrite, afterRegistration, beforeCompilation, beforeImageWrite, beforeUniverseBuilding, cleanup, duringAnalysis, duringSetup, getRequiredFeatures, isInConfiguration, onAnalysisExit
-
-
-
-
Method Detail
-
beforeAnalysis
public void beforeAnalysis(org.graalvm.nativeimage.hosted.Feature.BeforeAnalysisAccess access)
- Specified by:
beforeAnalysisin interfaceorg.graalvm.nativeimage.hosted.Feature
-
typesNeedingConstructorsRegistered
public static String[] typesNeedingConstructorsRegistered()
-
-