|
19 | 19 | import java.io.IOException;
|
20 | 20 | import java.io.InputStream;
|
21 | 21 | import java.lang.System.Logger.Level;
|
22 |
| -import java.nio.charset.Charset; |
23 |
| -import java.nio.charset.StandardCharsets; |
24 |
| -import java.nio.charset.UnsupportedCharsetException; |
25 | 22 | import java.util.Collections;
|
26 | 23 | import java.util.HashMap;
|
27 | 24 | import java.util.LinkedList;
|
|
30 | 27 | import java.util.Objects;
|
31 | 28 | import java.util.Optional;
|
32 | 29 |
|
33 |
| -import io.helidon.common.NativeImageHelper; |
34 | 30 | import io.helidon.common.configurable.Resource;
|
35 | 31 |
|
36 | 32 | import jakarta.json.Json;
|
@@ -59,26 +55,6 @@ public final class JwkKeys {
|
59 | 55 | private final Map<String, Jwk> keyMap = new HashMap<>();
|
60 | 56 | private final List<Jwk> noKeyIdKeys = new LinkedList<>();
|
61 | 57 |
|
62 |
| - private static final boolean AUTOMATIC_CHARSET_DETECTION; |
63 |
| - |
64 |
| - // Workaround for https://github.com/eclipse-ee4j/parsson/issues/121 |
65 |
| - static { |
66 |
| - boolean utf32Available = false; |
67 |
| - try { |
68 |
| - Charset.forName("UTF-32LE"); |
69 |
| - Charset.forName("UTF-32BE"); |
70 |
| - utf32Available = true; |
71 |
| - } catch (UnsupportedCharsetException e) { |
72 |
| - if (NativeImageHelper.isNativeImage()) { |
73 |
| - LOGGER.log(Level.TRACE, "Automatic JSON unicode detection not available." |
74 |
| - + " Add -H:+AddAllCharsets to build your native image with UTF-32 support.", e); |
75 |
| - } else { |
76 |
| - LOGGER.log(Level.TRACE, "Automatic JSON unicode detection not available.", e); |
77 |
| - } |
78 |
| - } |
79 |
| - AUTOMATIC_CHARSET_DETECTION = utf32Available; |
80 |
| - } |
81 |
| - |
82 | 58 | private JwkKeys(Builder builder) {
|
83 | 59 | this.keyMap.putAll(builder.keyMap);
|
84 | 60 | this.noKeyIdKeys.addAll(builder.noKeyIdKeys);
|
@@ -171,9 +147,7 @@ public Builder addKey(Jwk key) {
|
171 | 147 | public Builder resource(Resource resource) {
|
172 | 148 | Objects.requireNonNull(resource, "Json resource must not be null");
|
173 | 149 | try (InputStream is = resource.stream()) {
|
174 |
| - JsonObject jsonObject = AUTOMATIC_CHARSET_DETECTION |
175 |
| - ? JSON.createReader(is).readObject() |
176 |
| - : JSON.createReader(is, StandardCharsets.UTF_8).readObject(); |
| 150 | + JsonObject jsonObject = JSON.createReader(is).readObject(); |
177 | 151 | addKeys(jsonObject);
|
178 | 152 | } catch (IOException e) {
|
179 | 153 | LOGGER.log(Level.WARNING, "Failed to close input stream on resource: " + resource);
|
|
0 commit comments