Rest client update to version 1.4.1
Signed-off-by: David Kral <david.k.kral@oracle.com>
diff --git a/ext/microprofile/mp-rest-client/pom.xml b/ext/microprofile/mp-rest-client/pom.xml
index d4e8d98..e4d5565 100644
--- a/ext/microprofile/mp-rest-client/pom.xml
+++ b/ext/microprofile/mp-rest-client/pom.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- Copyright (c) 2019 Oracle and/or its affiliates. All rights reserved.
+ Copyright (c) 2019, 2020 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
@@ -32,7 +32,7 @@
<dependency>
<groupId>org.eclipse.microprofile.rest.client</groupId>
<artifactId>microprofile-rest-client-api</artifactId>
- <version>1.3.3</version>
+ <version>1.4.1</version>
</dependency>
<dependency>
<groupId>org.eclipse.microprofile.config</groupId>
diff --git a/ext/microprofile/mp-rest-client/src/main/java/org/glassfish/jersey/microprofile/restclient/InterfaceModel.java b/ext/microprofile/mp-rest-client/src/main/java/org/glassfish/jersey/microprofile/restclient/InterfaceModel.java
index 6bd0e95..05e0461 100644
--- a/ext/microprofile/mp-rest-client/src/main/java/org/glassfish/jersey/microprofile/restclient/InterfaceModel.java
+++ b/ext/microprofile/mp-rest-client/src/main/java/org/glassfish/jersey/microprofile/restclient/InterfaceModel.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2019 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2019, 2020 Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2019 Payara Foundation and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
@@ -24,10 +24,13 @@
import java.util.List;
import java.util.Optional;
import java.util.Set;
+import java.util.logging.Level;
+import java.util.logging.Logger;
import java.util.stream.Collectors;
import javax.enterprise.context.spi.CreationalContext;
import javax.enterprise.inject.spi.BeanManager;
+import javax.enterprise.inject.spi.CDI;
import javax.ws.rs.Consumes;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
@@ -56,6 +59,8 @@
*/
class InterfaceModel {
+ private static final Logger LOGGER = Logger.getLogger(InterfaceModel.class.getName());
+
private final InjectionManager injectionManager;
private final Class<?> restClientClass;
private final String[] produces;
@@ -336,9 +341,15 @@
}
Builder clientHeadersFactory(RegisterClientHeaders registerClientHeaders) {
- clientHeadersFactory = registerClientHeaders != null
- ? ReflectionUtil.createInstance(registerClientHeaders.value())
- : null;
+ if (registerClientHeaders != null) {
+ Class<? extends ClientHeadersFactory> value = registerClientHeaders.value();
+ try {
+ clientHeadersFactory = CDI.current().select(value).get();
+ } catch (Exception ex) {
+ LOGGER.log(Level.FINEST, ex, () -> "This class is not a CDI bean. " + value);
+ clientHeadersFactory = ReflectionUtil.createInstance(value);
+ }
+ }
return this;
}
diff --git a/tests/integration/microprofile/rest-client/pom.xml b/tests/integration/microprofile/rest-client/pom.xml
index 0ab8871..a354322 100644
--- a/tests/integration/microprofile/rest-client/pom.xml
+++ b/tests/integration/microprofile/rest-client/pom.xml
@@ -55,7 +55,7 @@
<dependency>
<groupId>org.eclipse.microprofile.rest.client</groupId>
<artifactId>microprofile-rest-client-tck</artifactId>
- <version>1.3.3</version>
+ <version>1.4.1</version>
<scope>test</scope>
</dependency>
<dependency>