[spring-extensions] branch master updated: Fix generic warnings when stricter compiler settings used.

Scott Cantor cantor.2 at osu.edu
Tue Jul 23 12:37:13 EDT 2019


This is an automated email from the git hooks/post-receive script.

scantor pushed a commit to branch master
in repository spring-extensions.

View the commit online:
http://git.shibboleth.net/view/?p=spring-extensions.git;a=commit;h=ccdbb09837682bc4b3b4d76d93b64afbea738911

The following commit(s) were added to refs/heads/master by this push:
       new  ccdbb09   Fix generic warnings when stricter compiler settings used.
ccdbb09 is described below

commit ccdbb09837682bc4b3b4d76d93b64afbea738911
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Tue Jul 23 12:37:11 2019 -0400

    Fix generic warnings when stricter compiler settings used.
---
 .../ext/spring/config/FunctionToFunctionConverter.java           | 9 ++++++---
 .../ext/spring/config/PredicateToPredicateConverter.java         | 8 +++++---
 .../shibboleth/ext/spring/service/ClassBasedServiceStrategy.java | 9 +++++----
 .../ext/spring/util/AbstractSpringExpressionEvaluator.java       | 2 +-
 .../shibboleth/ext/spring/util/ApplicationContextBuilder.java    | 8 ++++----
 .../shibboleth/ext/spring/velocity/VelocityEngineFactory.java    | 2 +-
 .../shibboleth/ext/spring/service/ReloadableBeanServiceTest.java | 2 +-
 .../ext/spring/service/ReloadableSpringServiceTest.java          | 6 +++---
 .../net/shibboleth/ext/spring/util/SpringExpressionTest.java     | 6 +++---
 9 files changed, 29 insertions(+), 23 deletions(-)

diff --git a/src/main/java/net/shibboleth/ext/spring/config/FunctionToFunctionConverter.java b/src/main/java/net/shibboleth/ext/spring/config/FunctionToFunctionConverter.java
index 7b21b5d..7809583 100644
--- a/src/main/java/net/shibboleth/ext/spring/config/FunctionToFunctionConverter.java
+++ b/src/main/java/net/shibboleth/ext/spring/config/FunctionToFunctionConverter.java
@@ -24,12 +24,15 @@ import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.Object
 
 /**
  * Auto-converts standard Java functions to Guava's version for legacy compatibility.
+ * 
+ * @param <T> input type
+ * @param <R> return type
  */
-public class FunctionToFunctionConverter
-        implements Converter<java.util.function.Function,com.google.common.base.Function> {
+public class FunctionToFunctionConverter<T,R>
+        implements Converter<java.util.function.Function<T,R>,com.google.common.base.Function<T,R>> {
 
     /** {@inheritDoc} */
-    public com.google.common.base.Function convert(final java.util.function.Function source) {
+    public com.google.common.base.Function<T,R> convert(final java.util.function.Function<T,R> source) {
         DeprecationSupport.warn(ObjectType.CLASS, com.google.common.base.Function.class.getName(), null,
                 java.util.function.Function.class.getName());
         return source::apply;
diff --git a/src/main/java/net/shibboleth/ext/spring/config/PredicateToPredicateConverter.java b/src/main/java/net/shibboleth/ext/spring/config/PredicateToPredicateConverter.java
index 58f161d..439f73b 100644
--- a/src/main/java/net/shibboleth/ext/spring/config/PredicateToPredicateConverter.java
+++ b/src/main/java/net/shibboleth/ext/spring/config/PredicateToPredicateConverter.java
@@ -24,12 +24,14 @@ import net.shibboleth.utilities.java.support.primitive.DeprecationSupport.Object
 
 /**
  * Auto-converts standard Java predicates to Guava's version for legacy compatibility.
+ * 
+ * @param <T> input type
  */
-public class PredicateToPredicateConverter
-        implements Converter<java.util.function.Predicate,com.google.common.base.Predicate> {
+public class PredicateToPredicateConverter<T>
+        implements Converter<java.util.function.Predicate<T>,com.google.common.base.Predicate<T>> {
 
     /** {@inheritDoc} */
-    public com.google.common.base.Predicate convert(final java.util.function.Predicate source) {
+    public com.google.common.base.Predicate<T> convert(final java.util.function.Predicate<T> source) {
         DeprecationSupport.warn(ObjectType.CLASS, com.google.common.base.Predicate.class.getName(), null,
                 java.util.function.Predicate.class.getName());
         return source::test;
diff --git a/src/main/java/net/shibboleth/ext/spring/service/ClassBasedServiceStrategy.java b/src/main/java/net/shibboleth/ext/spring/service/ClassBasedServiceStrategy.java
index 4a7dbd3..c44ec83 100644
--- a/src/main/java/net/shibboleth/ext/spring/service/ClassBasedServiceStrategy.java
+++ b/src/main/java/net/shibboleth/ext/spring/service/ClassBasedServiceStrategy.java
@@ -38,13 +38,13 @@ import net.shibboleth.utilities.java.support.service.ServiceableComponent;
 public class ClassBasedServiceStrategy<T> implements Function<ApplicationContext, ServiceableComponent<T>> {
 
     /** The class we are looking for. */
-    @Nonnull private final Class<? extends ServiceableComponent> serviceClaz;
+    @Nonnull private final Class<? extends ServiceableComponent<T>> serviceClaz;
 
     /**
      * Constructor.
      */
     public ClassBasedServiceStrategy() {
-        this(ServiceableComponent.class);
+        serviceClaz = (Class<? extends ServiceableComponent<T>>) ServiceableComponent.class;
     }
 
     /**
@@ -53,13 +53,14 @@ public class ClassBasedServiceStrategy<T> implements Function<ApplicationContext
      * @param serviceableClaz what to look for.
      */
     public ClassBasedServiceStrategy(
-            @ParameterName(name="serviceableClaz") final Class<? extends ServiceableComponent> serviceableClaz) {
+            @ParameterName(name="serviceableClaz") final Class<? extends ServiceableComponent<T>> serviceableClaz) {
         serviceClaz = Constraint.isNotNull(serviceableClaz, "Serviceable Class cannot be null");
     }
 
     /** {@inheritDoc} */
     @Nullable public ServiceableComponent<T> apply(@Nullable final ApplicationContext appContext) {
-        final Collection<? extends ServiceableComponent> components = appContext.getBeansOfType(serviceClaz).values();
+        final Collection<? extends ServiceableComponent<T>> components =
+                appContext.getBeansOfType(serviceClaz).values();
 
         if (components.size() == 0) {
             throw new ServiceException("Reload did not produce any bean of type " + serviceClaz.getName());
diff --git a/src/main/java/net/shibboleth/ext/spring/util/AbstractSpringExpressionEvaluator.java b/src/main/java/net/shibboleth/ext/spring/util/AbstractSpringExpressionEvaluator.java
index 4895a4a..56c9ed0 100644
--- a/src/main/java/net/shibboleth/ext/spring/util/AbstractSpringExpressionEvaluator.java
+++ b/src/main/java/net/shibboleth/ext/spring/util/AbstractSpringExpressionEvaluator.java
@@ -83,7 +83,7 @@ public abstract class AbstractSpringExpressionEvaluator<T, U> {
      * 
      * @param type output type
      */
-    public void setOutputType(@Nullable final Class type) {
+    public void setOutputType(@Nullable final Class<U> type) {
         outputType = type;
     }
 
diff --git a/src/main/java/net/shibboleth/ext/spring/util/ApplicationContextBuilder.java b/src/main/java/net/shibboleth/ext/spring/util/ApplicationContextBuilder.java
index 6a21a3b..49c7851 100644
--- a/src/main/java/net/shibboleth/ext/spring/util/ApplicationContextBuilder.java
+++ b/src/main/java/net/shibboleth/ext/spring/util/ApplicationContextBuilder.java
@@ -87,7 +87,7 @@ public class ApplicationContextBuilder {
     @Nullable @NonnullElements private List<BeanPostProcessor> postProcessors;
     
     /** List of property sources to add. */
-    @Nullable @NonnullElements private List<PropertySource> propertySources;
+    @Nullable @NonnullElements private List<PropertySource<?>> propertySources;
     
     /** Bean profiles to enable. */
     @Nullable @NonnullElements private Collection<String> beanProfiles;
@@ -156,7 +156,7 @@ public class ApplicationContextBuilder {
      * @return this builder
      */
     @Nonnull public ApplicationContextBuilder setPropertySources(
-            @Nonnull @NonnullElements final List<PropertySource> sources) {
+            @Nonnull @NonnullElements final List<PropertySource<?>> sources) {
         propertySources = new ArrayList<>(Collections2.filter(sources, Predicates.notNull()));
         
         return this;
@@ -306,8 +306,8 @@ public class ApplicationContextBuilder {
                     new StringBooleanToPredicateConverter(),
                     new StringToResourceConverter(),
                     new StringToDurationConverter(),
-                    new PredicateToPredicateConverter(),
-                    new FunctionToFunctionConverter())));
+                    new PredicateToPredicateConverter<>(),
+                    new FunctionToFunctionConverter<>())));
             service.afterPropertiesSet();
             context.getBeanFactory().setConversionService(service.getObject());
         }
diff --git a/src/main/java/net/shibboleth/ext/spring/velocity/VelocityEngineFactory.java b/src/main/java/net/shibboleth/ext/spring/velocity/VelocityEngineFactory.java
index 204b3e0..d247482 100644
--- a/src/main/java/net/shibboleth/ext/spring/velocity/VelocityEngineFactory.java
+++ b/src/main/java/net/shibboleth/ext/spring/velocity/VelocityEngineFactory.java
@@ -96,7 +96,7 @@ public class VelocityEngineFactory {
     
     /** Constructor. */
     public VelocityEngineFactory() {
-        velocityProperties = new HashMap<String, Object>();
+        velocityProperties = new HashMap<>();
         resourceLoader = new DefaultResourceLoader();
         preferFileSystemAccess = true;
     }
diff --git a/src/test/java/net/shibboleth/ext/spring/service/ReloadableBeanServiceTest.java b/src/test/java/net/shibboleth/ext/spring/service/ReloadableBeanServiceTest.java
index 3d637c3..50a5711 100644
--- a/src/test/java/net/shibboleth/ext/spring/service/ReloadableBeanServiceTest.java
+++ b/src/test/java/net/shibboleth/ext/spring/service/ReloadableBeanServiceTest.java
@@ -47,7 +47,7 @@ public class ReloadableBeanServiceTest {
             
             final ReloadableTestBean child1 = bean.getChild();
             
-            final ReloadableService embedded = (ReloadableService) appCtx.getBean("reloadableBeanService");
+            final ReloadableService<ApplicationContext> embedded = (ReloadableService<ApplicationContext>) appCtx.getBean("reloadableBeanService");
             
             final ServiceableComponent<ApplicationContext> component = embedded.getServiceableComponent();
             try {
diff --git a/src/test/java/net/shibboleth/ext/spring/service/ReloadableSpringServiceTest.java b/src/test/java/net/shibboleth/ext/spring/service/ReloadableSpringServiceTest.java
index c93917c..7c2ea55 100644
--- a/src/test/java/net/shibboleth/ext/spring/service/ReloadableSpringServiceTest.java
+++ b/src/test/java/net/shibboleth/ext/spring/service/ReloadableSpringServiceTest.java
@@ -252,7 +252,7 @@ public class ReloadableSpringServiceTest {
                 .setServiceConfigurations(Collections.singletonList(parentResource))
                 .build();
         try {
-            final ReloadableSpringService service = appCtx.getBean("testReloadableSpringService", ReloadableSpringService.class);
+            final ReloadableSpringService<?> service = appCtx.getBean("testReloadableSpringService", ReloadableSpringService.class);
     
             Assert.assertNotNull(service.getParentContext(), "Parent context should not be null");
         } finally {
@@ -269,11 +269,11 @@ public class ReloadableSpringServiceTest {
                 .setServiceConfigurations(Collections.singletonList(parentResource))
                 .build();
         try {
-            final ReloadableSpringService service1 =
+            final ReloadableSpringService<?> service1 =
                     appCtx.getBean("testReloadableSpringService", ReloadableSpringService.class);
             Assert.assertEquals(service1.getId(), "testReloadableSpringService");
 
-            final ReloadableSpringService service2 =
+            final ReloadableSpringService<?> service2 =
                     appCtx.getBean("testReloadableSpringServiceWithCustomID", ReloadableSpringService.class);
             Assert.assertEquals(service2.getId(), "CustomID");
         } finally {
diff --git a/src/test/java/net/shibboleth/ext/spring/util/SpringExpressionTest.java b/src/test/java/net/shibboleth/ext/spring/util/SpringExpressionTest.java
index 9391504..c2f1165 100644
--- a/src/test/java/net/shibboleth/ext/spring/util/SpringExpressionTest.java
+++ b/src/test/java/net/shibboleth/ext/spring/util/SpringExpressionTest.java
@@ -34,7 +34,7 @@ public class SpringExpressionTest {
      
     @Test public void testPredicates() {
         
-        SpringExpressionPredicate predicate = new SpringExpressionPredicate<>("#input.getValue99() == 99");
+        SpringExpressionPredicate<SpringExpressionTest> predicate = new SpringExpressionPredicate<>("#input.getValue99() == 99");
         
         Assert.assertTrue(predicate.test(this));
         
@@ -46,12 +46,12 @@ public class SpringExpressionTest {
 
     @Test public void testFunction() {
         
-        SpringExpressionFunction<Object, SpringExpressionTest> func = new SpringExpressionFunction<>("#input");
+        SpringExpressionFunction<Object,SpringExpressionTest> func = new SpringExpressionFunction<>("#input");
         Assert.assertNull(func.apply(null));
 
         Assert.assertEquals(func.apply(this), this);
 
-        Assert.assertEquals((int) new SpringExpressionFunction<SpringExpressionTest, Integer>("#input.getValue99()").apply(this), 99);
+        Assert.assertEquals((int) new SpringExpressionFunction<>("#input.getValue99()").apply(this), 99);
 
     }
 }

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list