Skip to content

Commit 995106a

Browse files
authored
Merge pull request #76 from zalando-stups/update-code-for-pg13-pgjdb-java11
Update code for pg13 pgjdbc java11
2 parents a89773f + 19799c7 commit 995106a

18 files changed

+61
-49
lines changed

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,14 @@
22
*.iml
33
.idea/
44

5+
# vscoode
6+
.project
7+
.settings/
8+
59
### Maven ###
610
target/
711
/.mvn/wrapper/*.jar
812

913
*.log
14+
.classpath
15+

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ language: java
33
sudo: false
44

55
jdk:
6-
- openjdk8
6+
- openjdk11
77

88
addons:
99
postgresql: "13"

src/main/java/org/zalando/sprocwrapper/dsprovider/BitmapShardDataSourceProvider.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public BitmapShardDataSourceProvider(final Map<String, DataSource> connectionDat
7575

7676
public BitmapShardDataSourceProvider(final Class<? extends DataSource> dataSourceClass,
7777
final Map<String, String> commonDataSourceProperties, final Map<String, String> connectionUrls)
78-
throws InstantiationException, IllegalAccessException, InvocationTargetException {
78+
throws InstantiationException, IllegalAccessException, InvocationTargetException, SecurityException, NoSuchMethodException {
7979

8080
int maskLength = 0;
8181
for (final Entry<String, String> entry : connectionUrls.entrySet()) {
@@ -88,7 +88,7 @@ public BitmapShardDataSourceProvider(final Class<? extends DataSource> dataSourc
8888
dataSources = new DataSource[1 << maskLength];
8989

9090
for (final Entry<String, String> entry : connectionUrls.entrySet()) {
91-
final DataSource ds = dataSourceClass.newInstance();
91+
final DataSource ds = dataSourceClass.getDeclaredConstructor().newInstance();
9292
for (final Entry<String, String> prop : commonDataSourceProperties.entrySet()) {
9393
BeanUtils.setProperty(ds, prop.getKey(), prop.getValue());
9494
}

src/main/java/org/zalando/sprocwrapper/globalobjecttransformer/GlobalObjectTransformerLoader.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import org.reflections.util.ClasspathHelper;
1212
import org.reflections.util.ConfigurationBuilder;
1313
import org.reflections.util.FilterBuilder;
14+
import java.lang.reflect.InvocationTargetException;
1415
import org.slf4j.Logger;
1516
import org.slf4j.LoggerFactory;
1617

@@ -33,7 +34,7 @@ public class GlobalObjectTransformerLoader {
3334
private static volatile ImmutableMap<Class<?>, ObjectMapper<?>> register;
3435

3536
public static <T> ObjectMapper<T> getObjectMapperForClass(final Class<T> genericType) throws InstantiationException,
36-
IllegalAccessException {
37+
IllegalAccessException, InvocationTargetException, SecurityException, IllegalArgumentException, NoSuchMethodException {
3738
Preconditions.checkNotNull(genericType, "genericType");
3839

3940
// performance improvement. Volatile field is read only once in the commons scenario.
@@ -55,15 +56,15 @@ public static <T> ObjectMapper<T> getObjectMapperForClass(final Class<T> generic
5556
}
5657

5758
private static ImmutableMap<Class<?>, ObjectMapper<?>> buildMappers() throws InstantiationException,
58-
IllegalAccessException {
59+
IllegalAccessException, InvocationTargetException, SecurityException, IllegalArgumentException, NoSuchMethodException {
5960

6061
final Map<Class<?>, ObjectMapper<?>> mappers = new HashMap<>();
6162

6263
for (final Class<?> foundGlobalObjectTransformer : findObjectMappers()) {
6364

6465
if (ObjectMapper.class.isAssignableFrom(foundGlobalObjectTransformer)) {
6566

66-
final ObjectMapper<?> mapper = (ObjectMapper<?>) foundGlobalObjectTransformer.newInstance();
67+
final ObjectMapper<?> mapper = (ObjectMapper<?>) foundGlobalObjectTransformer.getDeclaredConstructor().newInstance();
6768
final Class<?> valueTransformerReturnType = mapper.getType();
6869

6970
final ObjectMapper<?> previousMapper = mappers.put(valueTransformerReturnType, mapper);

src/main/java/org/zalando/sprocwrapper/globalvaluetransformer/GlobalValueTransformerLoader.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.zalando.sprocwrapper.globalvaluetransformer;
22

3+
import java.lang.reflect.InvocationTargetException;
34
import java.util.Set;
45

56
import org.reflections.Reflections;
@@ -33,7 +34,7 @@ public class GlobalValueTransformerLoader {
3334
private static boolean scannedClasspath = false;
3435

3536
public static synchronized ValueTransformer<?, ?> getValueTransformerForClass(final Class<?> genericType)
36-
throws InstantiationException, IllegalAccessException {
37+
throws InstantiationException, IllegalAccessException, InvocationTargetException, NoSuchMethodException {
3738

3839
// did we already scanned the classpath for global value transformers?
3940
if (scannedClasspath == false) {
@@ -71,7 +72,7 @@ public boolean apply(final String input) {
7172
valueTransformerReturnType = ValueTransformerUtils.getUnmarshalFromDbClass(
7273
foundGlobalValueTransformer);
7374
GlobalValueTransformerRegistry.register(valueTransformerReturnType,
74-
(ValueTransformer<?, ?>) foundGlobalValueTransformer.newInstance());
75+
(ValueTransformer<?, ?>) foundGlobalValueTransformer.getDeclaredConstructor().newInstance());
7576
} catch (final RuntimeException e) {
7677
LOG.error("Failed to add global transformer [{}] to global registry.",
7778
foundGlobalValueTransformer, e);

src/main/java/org/zalando/sprocwrapper/proxy/GlobalValueTransformedParameter.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.zalando.sprocwrapper.proxy;
22

3+
import java.lang.reflect.InvocationTargetException;
34
import java.lang.reflect.Method;
45

56
import java.sql.Connection;
@@ -25,7 +26,7 @@ public class GlobalValueTransformedParameter extends StoredProcedureParameter {
2526

2627
public GlobalValueTransformedParameter(final ValueTransformer<?, ?> valueTransformerForClass, final Class<?> clazz,
2728
final Method m, final String typeName, final int javaPosition, final boolean sensitive,
28-
final ObjectMapper<?> globalObjectMapper) throws InstantiationException, IllegalAccessException {
29+
final ObjectMapper<?> globalObjectMapper) throws InstantiationException, IllegalAccessException, InvocationTargetException, SecurityException, IllegalArgumentException, NoSuchMethodException {
2930
super(getValueTransformedClazz(clazz, valueTransformerForClass), m, typeName, getValueTransformedTypeId(clazz),
3031
javaPosition, sensitive);
3132

src/main/java/org/zalando/sprocwrapper/proxy/SProcCallHandler.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import org.springframework.jdbc.core.RowMapper;
1212

1313
import java.lang.annotation.Annotation;
14+
import java.lang.reflect.InvocationTargetException;
1415
import java.lang.reflect.Method;
1516
import java.lang.reflect.ParameterizedType;
1617
import java.lang.reflect.Type;
@@ -41,8 +42,8 @@ List<Method> findSProcCallAnnotatedMethods(Class c) {
4142
private RowMapper getRowMapper(SProcCall scA) {
4243
if (scA.resultMapper() != Void.class) {
4344
try {
44-
return (RowMapper<?>) scA.resultMapper().newInstance();
45-
} catch (final InstantiationException | IllegalAccessException ex) {
45+
return (RowMapper<?>) scA.resultMapper().getDeclaredConstructor().newInstance();
46+
} catch (final InstantiationException | IllegalAccessException | SecurityException | InvocationTargetException | IllegalArgumentException | NoSuchMethodException ex) {
4647
LOG.error("Result mapper for sproc can not be instantiated", ex);
4748
throw new IllegalArgumentException("Result mapper for sproc can not be instantiated");
4849
}
@@ -113,8 +114,8 @@ public Map<Method, StoredProcedure> handle(Class c, SProcServiceAnnotationHandle
113114
VirtualShardKeyStrategy sprocStrategy = handlerResult.getShardKeyStrategy();
114115
if (scA.shardStrategy() != Void.class) {
115116
try {
116-
sprocStrategy = (VirtualShardKeyStrategy) scA.shardStrategy().newInstance();
117-
} catch (final InstantiationException | IllegalAccessException ex) {
117+
sprocStrategy = (VirtualShardKeyStrategy) scA.shardStrategy().getDeclaredConstructor().newInstance();
118+
} catch (final InstantiationException | IllegalAccessException | SecurityException | IllegalArgumentException | InvocationTargetException | NoSuchMethodException ex) {
118119
LOG.error("Shard strategy for sproc can not be instantiated", ex);
119120
throw new IllegalArgumentException("Shard strategy for sproc can not be instantiated");
120121
}
@@ -153,7 +154,7 @@ public Map<Method, StoredProcedure> handle(Class c, SProcServiceAnnotationHandle
153154
try {
154155
params.add(StoredProcedureParameter.createParameter(clazz, genericType,
155156
method, dbTypeName, sParam.sqlType(), pos, sParam.sensitive()));
156-
} catch (final InstantiationException | IllegalAccessException e) {
157+
} catch (final InstantiationException | IllegalAccessException | NoSuchMethodException | IllegalArgumentException | SecurityException | InvocationTargetException e) {
157158
LOG.error("Could not instantiate StoredProcedureParameter. ABORTING.", e);
158159
throw new IllegalArgumentException("Could not instantiate StoredProcedureParameter. ABORTING.");
159160
}
@@ -184,7 +185,7 @@ private StoredProcedure createStoredProcedure(SProcCall scA, SProcServiceAnnotat
184185
writeTransaction);
185186

186187
return storedProcedure;
187-
} catch (final InstantiationException | IllegalAccessException e) {
188+
} catch (final InstantiationException | IllegalAccessException | NoSuchMethodException | IllegalArgumentException | SecurityException | InvocationTargetException e) {
188189
LOG.error("Could not instantiate StoredProcedure. ABORTING.", e);
189190
throw new IllegalArgumentException("Could not instantiate StoredProcedure. ABORTING.");
190191
}

src/main/java/org/zalando/sprocwrapper/proxy/SProcServiceAnnotationHandler.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
package org.zalando.sprocwrapper.proxy;
22
import org.zalando.sprocwrapper.SProcService;
33
import org.zalando.sprocwrapper.sharding.VirtualShardKeyStrategy;
4+
5+
import java.lang.reflect.InvocationTargetException;
6+
47
import org.slf4j.Logger;
58
import org.slf4j.LoggerFactory;
69

@@ -58,8 +61,8 @@ public HandlerResult handle(final Class<?> c) {
5861
VirtualShardKeyStrategy keyStrategy;
5962

6063
try {
61-
keyStrategy = (VirtualShardKeyStrategy) serviceAnnotation.shardStrategy().newInstance();
62-
} catch (final InstantiationException | IllegalAccessException ex) {
64+
keyStrategy = (VirtualShardKeyStrategy) serviceAnnotation.shardStrategy().getDeclaredConstructor().newInstance();
65+
} catch (final NoSuchMethodException | InstantiationException | IllegalAccessException | SecurityException | IllegalArgumentException | InvocationTargetException ex) {
6366
LOG.error("ShardKey strategy for service can not be instantiated", ex);
6467
throw new IllegalArgumentException("ShardKey strategy for service can not be instantiated");
6568
}

src/main/java/org/zalando/sprocwrapper/proxy/StoredProcedure.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.zalando.sprocwrapper.proxy;
22

3+
import java.lang.reflect.InvocationTargetException;
34
import java.lang.reflect.ParameterizedType;
45

56
import java.sql.Connection;
@@ -101,7 +102,7 @@ public StoredProcedure(final String name, final String query, final List<StoredP
101102
final VirtualShardKeyStrategy sStrategy, final List<ShardKeyParameter> shardKeyParameters, final boolean runOnAllShards, final boolean searchShards,
102103
final boolean parallel, final RowMapper<?> resultMapper, final long timeout,
103104
final AdvisoryLock advisoryLock, final boolean useValidation, final boolean readOnly,
104-
final WriteTransaction writeTransaction) throws InstantiationException, IllegalAccessException {
105+
final WriteTransaction writeTransaction) throws InstantiationException, IllegalAccessException, InvocationTargetException, NoSuchMethodException {
105106
this.name = name;
106107
this.params = new ArrayList<>(params);
107108
this.types = createTypes(params);

src/main/java/org/zalando/sprocwrapper/proxy/StoredProcedureParameter.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.zalando.sprocwrapper.proxy;
22

3+
import java.lang.reflect.InvocationTargetException;
34
import java.lang.reflect.Method;
45
import java.lang.reflect.Type;
56

@@ -54,7 +55,7 @@ class StoredProcedureParameter {
5455

5556
public static StoredProcedureParameter createParameter(final Class<?> clazz, final Type genericType, final Method m,
5657
final String typeName, final int sqlType, final int javaPosition, final boolean sensitive)
57-
throws InstantiationException, IllegalAccessException {
58+
throws InstantiationException, IllegalAccessException, NoSuchMethodException, InvocationTargetException, SecurityException, IllegalArgumentException {
5859

5960
// first check if this is a globally mapped class
6061
ValueTransformer<?, ?> valueTransformerForClass = null;

0 commit comments

Comments
 (0)