You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by cs...@apache.org on 2018/02/26 07:44:30 UTC
[4/5] aries-jax-rs-whiteboard git commit: Use immutable
CachingServiceReference
Use immutable CachingServiceReference
Project: http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/repo
Commit: http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/commit/873843e8
Tree: http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/tree/873843e8
Diff: http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/diff/873843e8
Branch: refs/heads/master
Commit: 873843e853ebe20880232152a7bb3e85d59b9a73
Parents: bb00d96
Author: Carlos Sierra <cs...@apache.org>
Authored: Mon Feb 26 08:41:52 2018 +0100
Committer: Carlos Sierra <cs...@apache.org>
Committed: Mon Feb 26 08:41:52 2018 +0100
----------------------------------------------------------------------
.../whiteboard/internal/cxf/CxfJaxrsServiceRegistrator.java | 9 +++------
.../internal/cxf/ServiceReferenceFilterProviderInfo.java | 8 ++++----
.../cxf/ServiceReferenceProviderInfoComparator.java | 5 +++--
3 files changed, 10 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/blob/873843e8/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/CxfJaxrsServiceRegistrator.java
----------------------------------------------------------------------
diff --git a/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/CxfJaxrsServiceRegistrator.java b/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/CxfJaxrsServiceRegistrator.java
index 22942ec..04c40d1 100644
--- a/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/CxfJaxrsServiceRegistrator.java
+++ b/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/CxfJaxrsServiceRegistrator.java
@@ -215,9 +215,6 @@ public class CxfJaxrsServiceRegistrator {
CachingServiceReference<?> cachingServiceReference =
provider.getCachingServiceReference();
- ServiceReference<?> serviceReference =
- cachingServiceReference.getServiceReference();
-
Object service = provider.getService();
if (service instanceof Feature || service instanceof DynamicFeature) {
@@ -229,7 +226,7 @@ public class CxfJaxrsServiceRegistrator {
Class<?> realClass = ClassHelper.getRealClass(getBus(), service);
Class<?>[] interfaces = Arrays.stream(canonicalize(
- serviceReference.getProperty("objectClass")))
+ cachingServiceReference.getProperty("objectClass")))
.filter(SUPPORTED_EXTENSION_INTERFACES::containsKey)
.map(SUPPORTED_EXTENSION_INTERFACES::get)
.toArray(Class[]::new);
@@ -243,8 +240,8 @@ public class CxfJaxrsServiceRegistrator {
_jaxRsServerFactoryBean.setProvider(
new ServiceReferenceFilterProviderInfo<>(
- serviceReference, realClass, realClass, service, getBus(),
- getFilterNameBindings(getBus(), service), false,
+ cachingServiceReference, realClass, realClass, service,
+ getBus(), getFilterNameBindings(getBus(), service), false,
classesWithPriorities));
}
http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/blob/873843e8/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/ServiceReferenceFilterProviderInfo.java
----------------------------------------------------------------------
diff --git a/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/ServiceReferenceFilterProviderInfo.java b/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/ServiceReferenceFilterProviderInfo.java
index 50cbb82..20daa64 100644
--- a/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/ServiceReferenceFilterProviderInfo.java
+++ b/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/ServiceReferenceFilterProviderInfo.java
@@ -17,9 +17,9 @@
package org.apache.aries.jax.rs.whiteboard.internal.cxf;
+import org.apache.aries.osgi.functional.CachingServiceReference;
import org.apache.cxf.Bus;
import org.apache.cxf.jaxrs.model.FilterProviderInfo;
-import org.osgi.framework.ServiceReference;
import java.util.Map;
import java.util.Set;
@@ -28,7 +28,7 @@ public class ServiceReferenceFilterProviderInfo<T>
extends FilterProviderInfo<T> {
public ServiceReferenceFilterProviderInfo(
- ServiceReference<?> serviceReference,
+ CachingServiceReference<?> serviceReference,
Class<?> resourceClass, Class<?> serviceClass, T provider, Bus bus,
Set<String> nameBindings, boolean dynamic, Map<Class<?>, Integer>
supportedContracts) {
@@ -39,9 +39,9 @@ public class ServiceReferenceFilterProviderInfo<T>
_serviceReference = serviceReference;
}
- public ServiceReference<?> getServiceReference() {
+ public CachingServiceReference<?> getServiceReference() {
return _serviceReference;
}
- private ServiceReference<?> _serviceReference;
+ private CachingServiceReference<?> _serviceReference;
}
http://git-wip-us.apache.org/repos/asf/aries-jax-rs-whiteboard/blob/873843e8/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/ServiceReferenceProviderInfoComparator.java
----------------------------------------------------------------------
diff --git a/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/ServiceReferenceProviderInfoComparator.java b/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/ServiceReferenceProviderInfoComparator.java
index 9490b43..f797095 100644
--- a/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/ServiceReferenceProviderInfoComparator.java
+++ b/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/cxf/ServiceReferenceProviderInfoComparator.java
@@ -17,6 +17,7 @@
package org.apache.aries.jax.rs.whiteboard.internal.cxf;
+import org.apache.aries.osgi.functional.CachingServiceReference;
import org.apache.cxf.jaxrs.model.ProviderInfo;
import org.apache.cxf.jaxrs.provider.ProviderFactory;
import org.apache.cxf.jaxrs.provider.ProviderFactory.ProviderInfoClassComparator;
@@ -37,10 +38,10 @@ public class ServiceReferenceProviderInfoComparator implements
public int compare(ProviderInfo<?> pi1, ProviderInfo<?> pi2) {
if (pi1 instanceof ServiceReferenceFilterProviderInfo<?>) {
if (pi2 instanceof ServiceReferenceFilterProviderInfo<?>) {
- ServiceReference serviceReference1 =
+ CachingServiceReference serviceReference1 =
((ServiceReferenceFilterProviderInfo) pi1).
getServiceReference();
- ServiceReference serviceReference2 =
+ CachingServiceReference serviceReference2 =
((ServiceReferenceFilterProviderInfo) pi2).
getServiceReference();