1717package com .google .cloud .sql .nativeimage ;
1818
1919import com .google .api .gax .nativeimage .NativeImageUtils ;
20- import com .oracle .svm .core .annotate .AutomaticFeature ;
21- import com .oracle .svm .core .configure .ResourcesRegistry ;
22- import org .graalvm .nativeimage .ImageSingletons ;
2320import org .graalvm .nativeimage .hosted .Feature ;
2421import org .graalvm .nativeimage .hosted .RuntimeClassInitialization ;
2522import org .graalvm .nativeimage .hosted .RuntimeReflection ;
26- import org .graalvm .nativeimage .impl .ConfigurationCondition ;
2723
2824/**
2925 * Registers GraalVM configuration for the Cloud SQL libraries.
3228 * href="https://www.graalvm.org/22.0/reference-manual/native-image/">GraalVM native image</a>
3329 * compilation.
3430 */
35- @ AutomaticFeature
31+
3632final class CloudSqlFeature implements Feature {
3733
3834 private static final String CLOUD_SQL_SOCKET_CLASS =
@@ -51,13 +47,6 @@ public void beforeAnalysis(BeforeAnalysisAccess access) {
5147 // The Core Cloud SQL Socket
5248 NativeImageUtils .registerClassForReflection (access , CLOUD_SQL_SOCKET_CLASS );
5349
54- // Resources for Cloud SQL
55- ResourcesRegistry resourcesRegistry = ImageSingletons .lookup (ResourcesRegistry .class );
56- resourcesRegistry .addResources (
57- ConfigurationCondition .alwaysTrue (), "\\ Qcom.google.cloud.sql/project.properties\\ E" );
58- resourcesRegistry .addResources (
59- ConfigurationCondition .alwaysTrue (), "\\ QMETA-INF/services/java.sql.Driver\\ E" );
60-
6150 // Register Hikari configs if used with Cloud SQL.
6251 if (access .findClassByName ("com.zaxxer.hikari.HikariConfig" ) != null ) {
6352 NativeImageUtils .registerClassForReflection (access , "com.zaxxer.hikari.HikariConfig" );
@@ -83,8 +72,6 @@ public void beforeAnalysis(BeforeAnalysisAccess access) {
8372
8473 NativeImageUtils .registerConstructorsForReflection (
8574 access , "com.mysql.cj.conf.url.SingleConnectionUrl" );
86- resourcesRegistry .addResources (ConfigurationCondition .alwaysTrue (),
87- "\\ Qcom/mysql/cj/util/TimeZoneMapping.properties\\ E" );
8875
8976 // for mysql-j-5
9077 NativeImageUtils .registerConstructorsForReflection (
@@ -118,14 +105,7 @@ public void beforeAnalysis(BeforeAnalysisAccess access) {
118105
119106 // JDBC classes create socket connections which must be initialized at run time.
120107 RuntimeClassInitialization .initializeAtRunTime ("com.mysql.cj.jdbc" );
121-
122- // Additional MySQL resources.
123- resourcesRegistry .addResourceBundles (
124- ConfigurationCondition .alwaysTrue (), "com.mysql.cj.LocalizedErrorMessages" );
125- resourcesRegistry .addResourceBundles (
126- ConfigurationCondition .alwaysTrue (), "com.mysql.jdbc.LocalizedErrorMessages" );
127108 }
128-
129109 // This Netty class should be initialized at runtime
130110 // https://github.com/netty/netty/issues/11638
131111 Class <?> bouncyCastleAlpnSslUtils =
0 commit comments