|
1 | 1 | package com.arangodb.internal.config;
|
2 | 2 |
|
3 |
| -import com.arangodb.ArangoDBException; |
4 | 3 | import com.arangodb.Compression;
|
5 |
| -import com.arangodb.ContentType; |
6 | 4 | import com.arangodb.Protocol;
|
7 | 5 | import com.arangodb.arch.UsedInApi;
|
8 | 6 | import com.arangodb.config.ArangoConfigProperties;
|
|
16 | 14 | import com.arangodb.serde.ArangoSerde;
|
17 | 15 | import com.arangodb.serde.ArangoSerdeProvider;
|
18 | 16 | import com.fasterxml.jackson.databind.Module;
|
19 |
| -import org.slf4j.Logger; |
20 |
| -import org.slf4j.LoggerFactory; |
21 | 17 |
|
22 | 18 | import javax.net.ssl.SSLContext;
|
23 | 19 | import java.util.*;
|
@@ -52,35 +48,6 @@ public class ArangoConfig {
|
52 | 48 | private Integer compressionLevel;
|
53 | 49 | private ProtocolConfig protocolConfig;
|
54 | 50 |
|
55 |
| - private static final Logger LOG = LoggerFactory.getLogger(ArangoConfig.class); |
56 |
| - |
57 |
| - private static ArangoSerdeProvider serdeProvider(ContentType contentType) { |
58 |
| - ServiceLoader<ArangoSerdeProvider> loader = ServiceLoader.load(ArangoSerdeProvider.class); |
59 |
| - ArangoSerdeProvider serdeProvider = null; |
60 |
| - Iterator<ArangoSerdeProvider> iterator = loader.iterator(); |
61 |
| - while (iterator.hasNext()) { |
62 |
| - ArangoSerdeProvider p; |
63 |
| - try { |
64 |
| - p = iterator.next(); |
65 |
| - } catch (ServiceConfigurationError e) { |
66 |
| - LOG.warn("ServiceLoader failed to load ArangoSerdeProvider", e); |
67 |
| - continue; |
68 |
| - } |
69 |
| - if (contentType.equals(p.getContentType())) { |
70 |
| - if (serdeProvider != null) { |
71 |
| - throw new ArangoDBException("Found multiple serde providers! Please set explicitly the one to use."); |
72 |
| - } |
73 |
| - serdeProvider = p; |
74 |
| - } |
75 |
| - } |
76 |
| - if (serdeProvider == null) { |
77 |
| - LOG.warn("No ArangoSerdeProvider found, using InternalSerdeProvider. Please consider registering a custom " + |
78 |
| - "ArangoSerdeProvider to avoid depending on internal classes which are not part of the public API."); |
79 |
| - serdeProvider = new InternalSerdeProvider(contentType); |
80 |
| - } |
81 |
| - return serdeProvider; |
82 |
| - } |
83 |
| - |
84 | 51 | public ArangoConfig() {
|
85 | 52 | // load default properties
|
86 | 53 | loadProperties(new ArangoConfigProperties() {
|
@@ -272,7 +239,7 @@ public void setLoadBalancingStrategy(LoadBalancingStrategy loadBalancingStrategy
|
272 | 239 |
|
273 | 240 | public ArangoSerde getUserDataSerde() {
|
274 | 241 | if (userDataSerde == null) {
|
275 |
| - userDataSerde = serdeProvider(ContentTypeFactory.of(getProtocol())).create(); |
| 242 | + userDataSerde = ArangoSerdeProvider.of(ContentTypeFactory.of(getProtocol())).create(); |
276 | 243 | }
|
277 | 244 | return userDataSerde;
|
278 | 245 | }
|
|
0 commit comments