Skip to content

Commit dd56554

Browse files
committed
Refactored current API.
1 parent f993fdb commit dd56554

33 files changed

+993
-542
lines changed

sdk/src/org.graalvm.nativeimage/snapshot.sigtest

Lines changed: 26 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1020,6 +1020,10 @@ meth public abstract java.nio.file.Path getImagePath()
10201020
CLSS public abstract interface static org.graalvm.nativeimage.hosted.Feature$AfterRegistrationAccess
10211021
outer org.graalvm.nativeimage.hosted.Feature
10221022
intf org.graalvm.nativeimage.hosted.Feature$FeatureAccess
1023+
meth public abstract org.graalvm.nativeimage.hosted.RuntimeJNIAccess getRuntimeJNIAccess()
1024+
meth public abstract org.graalvm.nativeimage.hosted.RuntimeReflection getRuntimeReflection()
1025+
meth public abstract org.graalvm.nativeimage.hosted.RuntimeResourceAccess getRuntimeResourceAccess()
1026+
meth public abstract org.graalvm.nativeimage.hosted.RuntimeForeignAccess getRuntimeForeignAccess()
10231027

10241028
CLSS public abstract interface static org.graalvm.nativeimage.hosted.Feature$BeforeAnalysisAccess
10251029
outer org.graalvm.nativeimage.hosted.Feature
@@ -1109,23 +1113,34 @@ meth public !varargs static void initializeAtRunTime(java.lang.Class<?>[])
11091113
meth public !varargs static void initializeAtRunTime(java.lang.String[])
11101114
supr java.lang.Object
11111115

1112-
CLSS public final org.graalvm.nativeimage.hosted.RuntimeForeignAccess
1116+
CLSS public abstract interface org.graalvm.nativeimage.hosted.RuntimeForeignAccess
11131117
meth public !varargs static void registerForDirectUpcall(java.lang.invoke.MethodHandle,java.lang.Object,java.lang.Object[])
11141118
meth public !varargs static void registerForDowncall(java.lang.Object,java.lang.Object[])
11151119
meth public !varargs static void registerForUpcall(java.lang.Object,java.lang.Object[])
1116-
supr java.lang.Object
1117-
1118-
CLSS public final org.graalvm.nativeimage.hosted.RuntimeJNIAccess
1120+
meth public !varargs abstract void registerForDirectUpcall(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.invoke.MethodHandle,java.lang.Object,java.lang.Object[])
1121+
meth public !varargs abstract void registerForDowncall(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.Object,java.lang.Object[])
1122+
meth public !varargs abstract void registerForUpcall(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.Object,java.lang.Object[])
1123+
1124+
CLSS public abstract interface org.graalvm.nativeimage.hosted.RuntimeJNIAccess
1125+
meth public !varargs abstract void register(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.Class<?>[])
1126+
meth public !varargs abstract void register(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.reflect.Executable[])
1127+
meth public !varargs abstract void register(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.reflect.Field[])
11191128
meth public !varargs static void register(java.lang.Class<?>[])
11201129
meth public !varargs static void register(java.lang.reflect.Executable[])
11211130
meth public !varargs static void register(java.lang.reflect.Field[])
1122-
supr java.lang.Object
11231131

11241132
CLSS public final org.graalvm.nativeimage.hosted.RuntimeProxyCreation
11251133
meth public !varargs static void register(java.lang.Class<?>[])
11261134
supr java.lang.Object
11271135

1128-
CLSS public final org.graalvm.nativeimage.hosted.RuntimeReflection
1136+
CLSS public abstract interface org.graalvm.nativeimage.hosted.RuntimeReflection
1137+
meth public !varargs abstract void register(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.Class<?>[])
1138+
meth public abstract void registerClassLookup(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.String)
1139+
meth public !varargs abstract void registerUnsafeAllocation(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.Class<?>[])
1140+
meth public !varargs abstract void register(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.reflect.Executable[])
1141+
meth public !varargs abstract void register(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.reflect.Field[])
1142+
meth public !varargs abstract void registerForSerialization(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.Class<?>[])
1143+
meth public !varargs abstract java.lang.Class<?> registerProxy(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.Class<?>[])
11291144
meth public !varargs static void register(boolean,boolean,java.lang.reflect.Field[])
11301145
anno 0 java.lang.Deprecated(boolean forRemoval=false, java.lang.String since="21.1")
11311146
meth public !varargs static void register(boolean,java.lang.reflect.Field[])
@@ -1151,14 +1166,16 @@ meth public static void registerAllRecordComponents(java.lang.Class<?>)
11511166
meth public static void registerAllSigners(java.lang.Class<?>)
11521167
meth public static void registerClassLookup(java.lang.String)
11531168
meth public static void registerFieldLookup(java.lang.Class<?>,java.lang.String)
1154-
supr java.lang.Object
11551169

1156-
CLSS public final org.graalvm.nativeimage.hosted.RuntimeResourceAccess
1170+
CLSS public abstract interface org.graalvm.nativeimage.hosted.RuntimeResourceAccess
1171+
meth public abstract void register(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.Module,java.lang.String)
1172+
meth public void register(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.String)
1173+
meth public abstract void registerResourceBundle(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.Module,java.lang.String)
1174+
meth public void registerResourceBundle(org.graalvm.nativeimage.hosted.AccessCondition,java.lang.String)
11571175
meth public static void addResource(java.lang.Module,java.lang.String)
11581176
meth public static void addResource(java.lang.Module,java.lang.String,byte[])
11591177
meth public static void addResourceBundle(java.lang.Module,java.lang.String)
11601178
meth public static void addResourceBundle(java.lang.Module,java.lang.String,java.util.Locale[])
1161-
supr java.lang.Object
11621179

11631180
CLSS public final org.graalvm.nativeimage.hosted.RuntimeSerialization
11641181
meth public !varargs static void register(java.lang.Class<?>[])

sdk/src/org.graalvm.nativeimage/src/org/graalvm/nativeimage/dynamicaccess/AccessCondition.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,21 @@
4141
package org.graalvm.nativeimage.dynamicaccess;
4242

4343
import org.graalvm.nativeimage.impl.TypeReachabilityCondition;
44+
import org.graalvm.nativeimage.dynamicaccess.ForeignAccess;
45+
import org.graalvm.nativeimage.dynamicaccess.JNIAccess;
46+
import org.graalvm.nativeimage.dynamicaccess.ReflectiveAccess;
47+
import org.graalvm.nativeimage.dynamicaccess.ResourceAccess;
4448

4549
/**
4650
* A condition that must be satisfied to register elements for dynamic access (i.e., reflection,
4751
* serialization, JNI access, resource access, and foreign access at runtime).
52+
* {@link AccessCondition} is used for programmatic metadata registration in conjunction with:
53+
* <ul>
54+
* <li>{@link ReflectiveAccess}</li>
55+
* <li>{@link ResourceAccess}</li>
56+
* <li>{@link JNIAccess}</li>
57+
* <li>{@link ForeignAccess}</li>
58+
* </ul>
4859
* Conditions should be used whenever possible to constrain unnecessary growth of the binary size.
4960
* <p>
5061
* There are currently two types of conditions:

sdk/src/org.graalvm.nativeimage/src/org/graalvm/nativeimage/hosted/DynamicJNIAccess.java

Lines changed: 0 additions & 35 deletions
This file was deleted.

sdk/src/org.graalvm.nativeimage/src/org/graalvm/nativeimage/hosted/Feature.java

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -173,22 +173,30 @@ interface IsInConfigurationAccess extends FeatureAccess {
173173
interface AfterRegistrationAccess extends FeatureAccess {
174174

175175
/**
176-
* Returns the access instance used to register elements for reflection at runtime. All
177-
* registrations should happen in {@link Feature#afterRegistration}.
176+
* Returns the instance of {@link RuntimeReflection} used to register elements for
177+
* reflection at runtime. All registrations should happen in
178+
* {@link Feature#afterRegistration}.
178179
*/
179-
ReflectionDynamicAccess getReflectionDynamicAccess();
180+
RuntimeReflection getRuntimeReflection();
180181

181182
/**
182-
* Returns the access instance used to register resources for runtime access. All
183-
* registrations should happen in {@link Feature#afterRegistration}.
183+
* Returns the instance of {@link RuntimeResourceAccess} used to register resources for
184+
* runtime access. All registrations should happen in {@link Feature#afterRegistration}.
184185
*/
185-
ResourceDynamicAccess getResourceDynamicAccess();
186+
RuntimeResourceAccess getRuntimeResourceAccess();
186187

187188
/**
188-
* Returns the access instance used to register elements for JNI access at runtime. All
189-
* registrations should happen in {@link Feature#afterRegistration}.
189+
* Returns the instance of {@link RuntimeJNIAccess} used to register elements for JNI access
190+
* at runtime. All registrations should happen in {@link Feature#afterRegistration}.
190191
*/
191-
DynamicJNIAccess getDynamicJNIAccess();
192+
RuntimeJNIAccess getRuntimeJNIAccess();
193+
194+
/**
195+
* Returns the instance of {@link RuntimeForeignAccess} used to register elements for
196+
* foreign access at runtime. All registrations should happen in
197+
* {@link Feature#afterRegistration}.
198+
*/
199+
RuntimeForeignAccess getRuntimeForeignAccess();
192200
}
193201

194202
/**

sdk/src/org.graalvm.nativeimage/src/org/graalvm/nativeimage/hosted/ReflectionDynamicAccess.java

Lines changed: 0 additions & 85 deletions
This file was deleted.

sdk/src/org.graalvm.nativeimage/src/org/graalvm/nativeimage/hosted/ResourceDynamicAccess.java

Lines changed: 0 additions & 60 deletions
This file was deleted.

0 commit comments

Comments
 (0)