[java-identity-provider] branch master updated: IDP-1516 De-guava-ification: tests and a few Collections2.tramsform

Rod Widdowson rdw at steadingsoftware.com
Tue Nov 5 06:27:25 EST 2019


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

rdw pushed a commit to branch master
in repository java-identity-provider.

View the commit online:
http://git.shibboleth.net/view/?p=java-identity-provider.git;a=commit;h=044805de779707f73dba63c05cc2fdda797a22bc

The following commit(s) were added to refs/heads/master by this push:
       new  044805d   IDP-1516 De-guava-ification: tests and a few Collections2.tramsform
044805d is described below

commit 044805de779707f73dba63c05cc2fdda797a22bc
Author: Rod Widdowson <rdw at steadingsoftware.com>
AuthorDate: Mon Nov 4 16:32:36 2019 +0000

    IDP-1516 De-guava-ification: tests and a few Collections2.tramsform
    
    https://issues.shibboleth.net/jira/browse/IDP-1516
---
 .../idp/attribute/resolver/MockStaticDataConnector.java   |  4 +---
 .../attribute/resolver/PluginDependencySupportTest.java   |  4 +---
 .../spring/dc/StoredIdDataConnectorParserTest.java        | 10 +++++++---
 .../spring/dc/http/HTTPDataConnectorParserTest.java       |  5 ++---
 .../spring/dc/ldap/LDAPDataConnectorParserTest.java       |  4 ++--
 .../spring/dc/rdbms/RDBMSDataConnectorParserTest.java     |  4 ++--
 .../installer/metadata/impl/MetadataGeneratorImpl.java    | 13 ++++++-------
 .../idp/profile/context/MultiRelyingPartyContext.java     |  7 ++++---
 .../net/shibboleth/idp/profile/RequestContextBuilder.java | 12 +++++++-----
 .../shibboleth/idp/profile/audit/impl/WriteAuditLog.java  |  4 ++--
 .../impl/PopulateProfileInterceptorContextTest.java       |  9 +++------
 .../relyingparty/metadata/InlineMetadataParserTest.java   |  5 ++---
 .../navigate/AudienceRestrictionsLookupFunction.java      |  3 ++-
 .../shibboleth/idp/saml/security/KeyAuthoritySupport.java | 15 +++++++--------
 .../idp/saml/audit/impl/AssertionIDAuditExtractor.java    | 13 +++++++++----
 .../saml/audit/impl/AssertionInstantAuditExtractor.java   | 13 +++++++++----
 .../java/net/shibboleth/idp/saml/impl/TestSources.java    |  4 +---
 17 files changed, 67 insertions(+), 62 deletions(-)

diff --git a/idp-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/MockStaticDataConnector.java b/idp-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/MockStaticDataConnector.java
index dfd8662..7b2ee57 100644
--- a/idp-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/MockStaticDataConnector.java
+++ b/idp-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/MockStaticDataConnector.java
@@ -28,8 +28,6 @@ import javax.annotation.concurrent.ThreadSafe;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.common.collect.ImmutableMap;
-
 import net.shibboleth.idp.attribute.IdPAttribute;
 import net.shibboleth.idp.attribute.resolver.context.AttributeResolutionContext;
 import net.shibboleth.idp.attribute.resolver.context.AttributeResolverWorkContext;
@@ -78,7 +76,7 @@ public class MockStaticDataConnector extends AbstractDataConnector {
             map.put(attr.getId(), attr);
         }
         
-        attributes = ImmutableMap.copyOf(map);
+        attributes = Map.copyOf(map);
     }
 
     /** {@inheritDoc} */
diff --git a/idp-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/PluginDependencySupportTest.java b/idp-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/PluginDependencySupportTest.java
index d91588c..4f2af3a 100644
--- a/idp-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/PluginDependencySupportTest.java
+++ b/idp-attribute-resolver-api/src/test/java/net/shibboleth/idp/attribute/resolver/PluginDependencySupportTest.java
@@ -30,8 +30,6 @@ import net.shibboleth.idp.attribute.resolver.context.AttributeResolverWorkContex
 import org.testng.Assert;
 import org.testng.annotations.Test;
 
-import com.google.common.collect.Lists;
-
 /*
  * Licensed to the University Corporation for Advanced Internet Development, 
  * Inc. (UCAID) under one or more contributor license agreements.  See the 
@@ -150,7 +148,7 @@ public class PluginDependencySupportTest {
                 resolutionContext.getSubcontext(AttributeResolverWorkContext.class, false);
 
         final ResolverDataConnectorDependency depend = new ResolverDataConnectorDependency("connector1");
-        depend.setAttributeNames(Lists.newArrayList(ResolverTestSupport.EPE_ATTRIB_ID, ResolverTestSupport.EPA_ATTRIB_ID));
+        depend.setAttributeNames(List.of(ResolverTestSupport.EPE_ATTRIB_ID, ResolverTestSupport.EPA_ATTRIB_ID));
 
         final List<IdPAttributeValue> result =
                 PluginDependencySupport.getMergedAttributeValues(workContext,
diff --git a/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/StoredIdDataConnectorParserTest.java b/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/StoredIdDataConnectorParserTest.java
index b8c7249..5748c08 100644
--- a/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/StoredIdDataConnectorParserTest.java
+++ b/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/StoredIdDataConnectorParserTest.java
@@ -23,13 +23,12 @@ import static org.testng.Assert.assertTrue;
 import java.io.IOException;
 import java.time.Duration;
 import java.util.Arrays;
+import java.util.stream.Collectors;
 
 import org.springframework.context.support.GenericApplicationContext;
 import org.springframework.core.io.ResourceLoader;
 import org.testng.annotations.Test;
 
-import com.google.common.collect.Collections2;
-
 import net.shibboleth.ext.spring.resource.PreferFileSystemResourceLoader;
 import net.shibboleth.ext.spring.util.ApplicationContextBuilder;
 import net.shibboleth.idp.attribute.impl.ComputedPairwiseIdStore;
@@ -77,7 +76,12 @@ public class StoredIdDataConnectorParserTest extends BaseAttributeDefinitionPars
         
         final ApplicationContextBuilder builder = new ApplicationContextBuilder();
         builder.setName("ApplicationContext: " + RDBMSDataConnectorParserTest.class);
-        builder.setServiceConfigurations(Collections2.transform(Arrays.asList(beanDefinitions), s -> loader.getResource(s)));
+        
+        builder.setServiceConfigurations(
+                Arrays.asList(beanDefinitions).
+                stream().
+                map(s -> loader.getResource(s)).
+                collect(Collectors.toList()));
         
         final GenericApplicationContext context = builder.build();
 
diff --git a/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/http/HTTPDataConnectorParserTest.java b/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/http/HTTPDataConnectorParserTest.java
index 30dafbf..37601da 100644
--- a/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/http/HTTPDataConnectorParserTest.java
+++ b/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/http/HTTPDataConnectorParserTest.java
@@ -28,6 +28,7 @@ import java.util.Arrays;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 import org.springframework.context.support.GenericApplicationContext;
 import org.springframework.core.env.PropertySource;
@@ -36,8 +37,6 @@ import org.springframework.mock.env.MockPropertySource;
 import org.testng.annotations.AfterMethod;
 import org.testng.annotations.Test;
 
-import com.google.common.collect.Collections2;
-
 import net.shibboleth.ext.spring.resource.PreferFileSystemResourceLoader;
 import net.shibboleth.ext.spring.util.ApplicationContextBuilder;
 import net.shibboleth.idp.attribute.IdPAttribute;
@@ -359,7 +358,7 @@ public class HTTPDataConnectorParserTest {
         final Collection<String> defs = new ArrayList<>(Arrays.asList(beanDefinitions));
         defs.add("net/shibboleth/idp/attribute/resolver/spring/dc/http/spring-beans.xml");
 
-        builder.setServiceConfigurations(Collections2.transform(defs, s -> loader.getResource(s)));
+        builder.setServiceConfigurations(defs.stream().map(s -> loader.getResource(s)).collect(Collectors.toList()));
 
         if (propSource != null) {
             builder.setPropertySources(Collections.singletonList(propSource));
diff --git a/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LDAPDataConnectorParserTest.java b/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LDAPDataConnectorParserTest.java
index c4c5aee..c4deec9 100644
--- a/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LDAPDataConnectorParserTest.java
+++ b/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/ldap/LDAPDataConnectorParserTest.java
@@ -32,6 +32,7 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 import org.ldaptive.BindConnectionInitializer;
 import org.ldaptive.ConnectionConfig;
@@ -60,7 +61,6 @@ import org.testng.annotations.Test;
 
 import com.google.common.cache.Cache;
 import com.google.common.cache.CacheBuilder;
-import com.google.common.collect.Collections2;
 import com.unboundid.ldap.listener.InMemoryDirectoryServer;
 import com.unboundid.ldap.listener.InMemoryDirectoryServerConfig;
 import com.unboundid.ldap.listener.InMemoryListenerConfig;
@@ -505,7 +505,7 @@ public class LDAPDataConnectorParserTest {
         final Collection<String> defs = new ArrayList<>(Arrays.asList(beanDefinitions));
         defs.add("net/shibboleth/idp/attribute/resolver/spring/externalBeans.xml");
 
-        builder.setServiceConfigurations(Collections2.transform(defs, s -> loader.getResource(s)));
+        builder.setServiceConfigurations(defs.stream().map(s -> loader.getResource(s)).collect(Collectors.toList()));
 
         if (properties != null) {
             builder.setPropertySources(Collections.singletonList(new ResourcePropertySource(properties)));
diff --git a/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/RDBMSDataConnectorParserTest.java b/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/RDBMSDataConnectorParserTest.java
index bce82e1..76afef9 100644
--- a/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/RDBMSDataConnectorParserTest.java
+++ b/idp-attribute-resolver-spring/src/test/java/net/shibboleth/idp/attribute/resolver/spring/dc/rdbms/RDBMSDataConnectorParserTest.java
@@ -30,6 +30,7 @@ import java.util.Arrays;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 import javax.sql.DataSource;
 
@@ -45,7 +46,6 @@ import org.testng.annotations.BeforeTest;
 import org.testng.annotations.Test;
 
 import com.google.common.cache.Cache;
-import com.google.common.collect.Collections2;
 
 import net.shibboleth.ext.spring.resource.PreferFileSystemResourceLoader;
 import net.shibboleth.ext.spring.util.ApplicationContextBuilder;
@@ -171,7 +171,7 @@ public class RDBMSDataConnectorParserTest {
         final Collection<String> defs = new ArrayList<>(Arrays.asList(beanDefinitions));
         defs.add("net/shibboleth/idp/attribute/resolver/spring/externalBeans.xml");
 
-        builder.setServiceConfigurations(Collections2.transform(defs, s -> loader.getResource(s)));
+        builder.setServiceConfigurations(defs.stream().map(s -> loader.getResource(s)).collect(Collectors.toList()));
 
         if (properties != null) {
             builder.setPropertySources(Collections.singletonList(new ResourcePropertySource(properties)));
diff --git a/idp-installer/src/main/java/net/shibboleth/idp/installer/metadata/impl/MetadataGeneratorImpl.java b/idp-installer/src/main/java/net/shibboleth/idp/installer/metadata/impl/MetadataGeneratorImpl.java
index 9c63fe1..d56f798 100644
--- a/idp-installer/src/main/java/net/shibboleth/idp/installer/metadata/impl/MetadataGeneratorImpl.java
+++ b/idp-installer/src/main/java/net/shibboleth/idp/installer/metadata/impl/MetadataGeneratorImpl.java
@@ -29,6 +29,7 @@ import java.util.Arrays;
 import java.util.Collections;
 import java.util.EnumSet;
 import java.util.List;
+import java.util.Set;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
@@ -55,8 +56,6 @@ import org.opensaml.xmlsec.signature.X509Certificate;
 import org.opensaml.xmlsec.signature.X509Data;
 import org.opensaml.xmlsec.signature.support.SignatureConstants;
 
-import com.google.common.collect.ImmutableSet;
-
 import net.shibboleth.idp.installer.MetadataGenerator;
 import net.shibboleth.idp.installer.MetadataGeneratorParameters;
 import net.shibboleth.idp.saml.xmlobject.ExtensionsConstants;
@@ -93,32 +92,32 @@ public class MetadataGeneratorImpl extends AbstractInitializableComponent implem
     /**
      * Those endpoints which require a backchannel.
      */
-    static final ImmutableSet<Endpoints> BACKCHANNEL_ENDPOINTS = ImmutableSet.copyOf(EnumSet.of(
+    static final Set<Endpoints> BACKCHANNEL_ENDPOINTS = Set.copyOf(EnumSet.of(
             Endpoints.SAML1Artifact, Endpoints.SAML2Artifact, Endpoints.SOAPSLO, Endpoints.SAML1Query,
             Endpoints.SAML2Query));
 
     /**
      * the Artifact endpoints.
      */
-    static final ImmutableSet<Endpoints> ARTIFACT_ENDPOINTS = ImmutableSet.copyOf(EnumSet.of(Endpoints.SAML1Artifact,
+    static final Set<Endpoints> ARTIFACT_ENDPOINTS = Set.copyOf(EnumSet.of(Endpoints.SAML1Artifact,
             Endpoints.SAML2Artifact));
 
     /**
      * the SSO endpoints.
      */
-    static final ImmutableSet<Endpoints> SSO_ENDPOINTS = ImmutableSet.copyOf(EnumSet.of(Endpoints.ShibbolethSSO,
+    static final Set<Endpoints> SSO_ENDPOINTS = Set.copyOf(EnumSet.of(Endpoints.ShibbolethSSO,
             Endpoints.POSTSSO, Endpoints.POSTSimpleSignSSO, Endpoints.RedirectSSO));
 
     /**
      * the SLO endpoints.
      */
-    static final ImmutableSet<Endpoints> SLO_ENDPOINTS = ImmutableSet.copyOf(EnumSet.of(Endpoints.RedirectSLO,
+    static final Set<Endpoints> SLO_ENDPOINTS = Set.copyOf(EnumSet.of(Endpoints.RedirectSLO,
             Endpoints.POSTSLO, Endpoints.POSTSimpleSignSLO, Endpoints.SOAPSLO));
 
     /**
      * AttributeAuthority endpoints.
      */
-    static final ImmutableSet<Endpoints> AA_ENDPOINTS = ImmutableSet.copyOf(EnumSet.of(Endpoints.SAML1Query,
+    static final Set<Endpoints> AA_ENDPOINTS = Set.copyOf(EnumSet.of(Endpoints.SAML1Query,
             Endpoints.SAML2Query));
 
     /**
diff --git a/idp-profile-api/src/main/java/net/shibboleth/idp/profile/context/MultiRelyingPartyContext.java b/idp-profile-api/src/main/java/net/shibboleth/idp/profile/context/MultiRelyingPartyContext.java
index 187becb..faf9b46 100644
--- a/idp-profile-api/src/main/java/net/shibboleth/idp/profile/context/MultiRelyingPartyContext.java
+++ b/idp-profile-api/src/main/java/net/shibboleth/idp/profile/context/MultiRelyingPartyContext.java
@@ -20,6 +20,7 @@ package net.shibboleth.idp.profile.context;
 import java.util.Collection;
 import java.util.HashMap;
 import java.util.Iterator;
+import java.util.List;
 import java.util.Map;
 
 import javax.annotation.Nonnull;
@@ -35,7 +36,7 @@ import net.shibboleth.utilities.java.support.primitive.StringSupport;
 import org.opensaml.messaging.context.BaseContext;
 
 import com.google.common.collect.ArrayListMultimap;
-import com.google.common.collect.ImmutableList;
+//import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ListMultimap;
 
 /**
@@ -74,7 +75,7 @@ public final class MultiRelyingPartyContext extends BaseContext {
      * @return  immutable collection of RP contexts
      */
     @Nonnull @NonnullElements @NotLive @Unmodifiable public Collection<RelyingPartyContext> getRelyingPartyContexts() {
-        return ImmutableList.copyOf(relyingPartyIdMap.values());
+        return List.copyOf(relyingPartyIdMap.values());
     }
     
     /**
@@ -86,7 +87,7 @@ public final class MultiRelyingPartyContext extends BaseContext {
      */
     @Nonnull @NonnullElements @NotLive @Unmodifiable public Collection<RelyingPartyContext> getRelyingPartyContexts(
             @Nonnull @NotEmpty final String label) {
-        return ImmutableList.copyOf(relyingPartyLabelMap.get(
+        return List.copyOf(relyingPartyLabelMap.get(
                 Constraint.isNotNull(StringSupport.trimOrNull(label), "Label cannot be null or empty")));
     }
     
diff --git a/idp-profile-api/src/test/java/net/shibboleth/idp/profile/RequestContextBuilder.java b/idp-profile-api/src/test/java/net/shibboleth/idp/profile/RequestContextBuilder.java
index 92b80e6..93b8a15 100644
--- a/idp-profile-api/src/test/java/net/shibboleth/idp/profile/RequestContextBuilder.java
+++ b/idp-profile-api/src/test/java/net/shibboleth/idp/profile/RequestContextBuilder.java
@@ -20,9 +20,11 @@ package net.shibboleth.idp.profile;
 import java.time.Instant;
 import java.util.ArrayList;
 import java.util.Collection;
+import java.util.List;
 import java.util.Locale;
 import java.util.Map;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
@@ -46,9 +48,6 @@ import org.springframework.webflow.core.collection.MutableAttributeMap;
 import org.springframework.webflow.execution.RequestContext;
 import org.springframework.webflow.test.MockRequestContext;
 
-import com.google.common.base.Predicates;
-import com.google.common.collect.Collections2;
-
 /**
  * Builder used to construct {@link RequestContext} used in {@link org.springframework.webflow.execution.Action}
  * executions.
@@ -439,8 +438,11 @@ public class RequestContextBuilder {
             relyingPartyProfileConfigurations = new ArrayList<>();
         }
         
-        final ArrayList<ProfileConfiguration> profileConfigs =
-                new ArrayList<>(Collections2.filter(relyingPartyProfileConfigurations, Predicates.notNull()));
+        final List<ProfileConfiguration> profileConfigs =
+                relyingPartyProfileConfigurations.
+                stream().
+                filter(e -> e!=null).
+                collect(Collectors.toList());
         if (profileConfigs.isEmpty()) {
             profileConfigs.add(new MockProfileConfiguration("mock"));
         }
diff --git a/idp-profile-impl/src/main/java/net/shibboleth/idp/profile/audit/impl/WriteAuditLog.java b/idp-profile-impl/src/main/java/net/shibboleth/idp/profile/audit/impl/WriteAuditLog.java
index 66f9b2c..94c3234 100644
--- a/idp-profile-impl/src/main/java/net/shibboleth/idp/profile/audit/impl/WriteAuditLog.java
+++ b/idp-profile-impl/src/main/java/net/shibboleth/idp/profile/audit/impl/WriteAuditLog.java
@@ -53,7 +53,7 @@ import org.slf4j.LoggerFactory;
 import org.springframework.webflow.execution.Event;
 import org.springframework.webflow.execution.RequestContext;
 
-import com.google.common.collect.ImmutableMap;
+//import com.google.common.collect.ImmutableMap;
 
 /**
  * Action that produces audit log entries based on an {@link AuditContext} and one or more formatting strings. 
@@ -111,7 +111,7 @@ public class WriteAuditLog extends AbstractProfileAction {
      * @return map of formatting tokens
      */
     @Nonnull @NonnullElements @NotLive @Unmodifiable public Map<String,List<String>> getFormattingMap() {
-        return ImmutableMap.copyOf(formattingMap);
+        return Map.copyOf(formattingMap);
     }
     
 // Checkstyle: CyclomaticComplexity OFF
diff --git a/idp-profile-impl/src/test/java/net/shibboleth/idp/profile/interceptor/impl/PopulateProfileInterceptorContextTest.java b/idp-profile-impl/src/test/java/net/shibboleth/idp/profile/interceptor/impl/PopulateProfileInterceptorContextTest.java
index 6929eb3..65255b7 100644
--- a/idp-profile-impl/src/test/java/net/shibboleth/idp/profile/interceptor/impl/PopulateProfileInterceptorContextTest.java
+++ b/idp-profile-impl/src/test/java/net/shibboleth/idp/profile/interceptor/impl/PopulateProfileInterceptorContextTest.java
@@ -37,12 +37,10 @@ import org.testng.Assert;
 import org.testng.annotations.BeforeMethod;
 import org.testng.annotations.Test;
 
-import com.google.common.collect.ImmutableList;
-
 /** {@link PopulateProfileInterceptorContext} unit test. */
 public class PopulateProfileInterceptorContextTest {
 
-    protected ImmutableList<ProfileInterceptorFlowDescriptor> interceptorFlows;
+    protected List<ProfileInterceptorFlowDescriptor> interceptorFlows;
 
     protected RequestContext src;
 
@@ -52,8 +50,7 @@ public class PopulateProfileInterceptorContextTest {
         src = new RequestContextBuilder().buildRequestContext();
         prc = new WebflowRequestContextProfileRequestContextLookup().apply(src);
 
-        interceptorFlows =
-                ImmutableList.of(new ProfileInterceptorFlowDescriptor(), new ProfileInterceptorFlowDescriptor(),
+        interceptorFlows = List.of(new ProfileInterceptorFlowDescriptor(), new ProfileInterceptorFlowDescriptor(),
                         new ProfileInterceptorFlowDescriptor());
         interceptorFlows.get(0).setId("intercept/test1");
         interceptorFlows.get(1).setId("intercept/test2");
@@ -74,7 +71,7 @@ public class PopulateProfileInterceptorContextTest {
         final ProfileInterceptorContext interceptorContext = prc.getSubcontext(ProfileInterceptorContext.class);
         Assert.assertNotNull(interceptorContext);
         final List<ProfileInterceptorFlowDescriptor> availableFlows =
-                ImmutableList.copyOf(interceptorContext.getAvailableFlows().values());
+                List.copyOf(interceptorContext.getAvailableFlows().values());
         Assert.assertEquals(availableFlows.size(), 3);
         Assert.assertEquals(availableFlows.get(0).getId(), "intercept/test1");
         Assert.assertEquals(availableFlows.get(1).getId(), "intercept/test2");
diff --git a/idp-profile-spring/src/test/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/InlineMetadataParserTest.java b/idp-profile-spring/src/test/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/InlineMetadataParserTest.java
index 117ff9c..6278afd 100644
--- a/idp-profile-spring/src/test/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/InlineMetadataParserTest.java
+++ b/idp-profile-spring/src/test/java/net/shibboleth/idp/profile/spring/relyingparty/metadata/InlineMetadataParserTest.java
@@ -21,6 +21,7 @@ import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Iterator;
+import java.util.stream.Collectors;
 
 import net.shibboleth.ext.spring.resource.PreferFileSystemResourceLoader;
 import net.shibboleth.ext.spring.service.ReloadableSpringService;
@@ -37,8 +38,6 @@ import org.springframework.core.io.ResourceLoader;
 import org.testng.Assert;
 import org.testng.annotations.Test;
 
-import com.google.common.collect.Collections2;
-
 public class InlineMetadataParserTest extends AbstractMetadataParserTest {
 
     @Test public void entity() throws ResolverException, IOException {
@@ -106,7 +105,7 @@ public class InlineMetadataParserTest extends AbstractMetadataParserTest {
         defs.add("net/shibboleth/idp/profile/spring/relyingparty/metadata/beans.xml");
         defs.add("net/shibboleth/idp/profile/spring/relyingparty/metadata/multipleResolvers.xml");
 
-        builder.setServiceConfigurations(Collections2.transform(defs, s -> loader.getResource(s)));
+        builder.setServiceConfigurations(defs.stream().map(s -> loader.getResource(s)).collect(Collectors.toList()));
 
         final GenericApplicationContext context = builder.build();
         
diff --git a/idp-saml-api/src/main/java/net/shibboleth/idp/saml/profile/config/navigate/AudienceRestrictionsLookupFunction.java b/idp-saml-api/src/main/java/net/shibboleth/idp/saml/profile/config/navigate/AudienceRestrictionsLookupFunction.java
index 25e71e9..ce38f28 100644
--- a/idp-saml-api/src/main/java/net/shibboleth/idp/saml/profile/config/navigate/AudienceRestrictionsLookupFunction.java
+++ b/idp-saml-api/src/main/java/net/shibboleth/idp/saml/profile/config/navigate/AudienceRestrictionsLookupFunction.java
@@ -19,6 +19,7 @@ package net.shibboleth.idp.saml.profile.config.navigate;
 
 import java.util.Collection;
 import java.util.Collections;
+import java.util.List;
 import java.util.Set;
 
 import javax.annotation.Nullable;
@@ -68,7 +69,7 @@ public class AudienceRestrictionsLookupFunction extends AbstractRelyingPartyLook
             }
             
             if (id != null) {
-                return ImmutableList.of(rpc.getRelyingPartyId());
+                return List.of(rpc.getRelyingPartyId());
             }
         }
         
diff --git a/idp-saml-api/src/main/java/net/shibboleth/idp/saml/security/KeyAuthoritySupport.java b/idp-saml-api/src/main/java/net/shibboleth/idp/saml/security/KeyAuthoritySupport.java
index f23c719..89e2cec 100644
--- a/idp-saml-api/src/main/java/net/shibboleth/idp/saml/security/KeyAuthoritySupport.java
+++ b/idp-saml-api/src/main/java/net/shibboleth/idp/saml/security/KeyAuthoritySupport.java
@@ -24,21 +24,20 @@ import java.security.cert.X509Certificate;
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
-import net.shibboleth.idp.saml.xmlobject.KeyAuthority;
-import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
-import net.shibboleth.utilities.java.support.logic.Constraint;
-
 import org.opensaml.security.SecurityException;
 import org.opensaml.security.x509.PKIXValidationInformation;
 import org.opensaml.xmlsec.keyinfo.KeyInfoSupport;
 import org.opensaml.xmlsec.signature.KeyInfo;
 
-import com.google.common.base.Predicates;
-import com.google.common.collect.Collections2;
+import net.shibboleth.idp.saml.xmlobject.KeyAuthority;
+import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
+import net.shibboleth.utilities.java.support.logic.Constraint;
+
 
 /**
  * Utility class for extracting {@link PKIXValidationInformation} from a {@link KeyAuthority}.
@@ -152,13 +151,13 @@ public final class KeyAuthoritySupport {
             verificationDepth = Constraint.isNotNull(depth, "Verification depth cannot be null");
             
             if (anchors != null) {
-                trustAnchors = new ArrayList<>(Collections2.filter(anchors, Predicates.notNull()));
+                trustAnchors = anchors.stream().filter(e -> e != null).collect(Collectors.toList());
             } else {
                 trustAnchors = null;
             }
             
             if (crls != null) {
-                trustedCRLs = new ArrayList<>(Collections2.filter(crls, Predicates.notNull()));
+                trustedCRLs = crls.stream().filter(e -> e != null).collect(Collectors.toList());
             } else {
                 trustedCRLs = null;
             }
diff --git a/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/audit/impl/AssertionIDAuditExtractor.java b/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/audit/impl/AssertionIDAuditExtractor.java
index dc557fc..fe45049 100644
--- a/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/audit/impl/AssertionIDAuditExtractor.java
+++ b/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/audit/impl/AssertionIDAuditExtractor.java
@@ -21,6 +21,7 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
 import java.util.function.Function;
+import java.util.stream.Collectors;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
@@ -29,8 +30,6 @@ import org.opensaml.profile.context.ProfileRequestContext;
 import org.opensaml.saml.common.SAMLObject;
 import org.opensaml.saml.saml2.core.ArtifactResponse;
 
-import com.google.common.collect.Collections2;
-
 import net.shibboleth.utilities.java.support.logic.Constraint;
 
 /** {@link Function} that returns the ID attribute from the assertions in a response. */
@@ -63,7 +62,10 @@ public class AssertionIDAuditExtractor implements Function<ProfileRequestContext
                 final List<org.opensaml.saml.saml2.core.Assertion> assertions =
                         ((org.opensaml.saml.saml2.core.Response) message).getAssertions();
                 if (!assertions.isEmpty()) {
-                    return Collections2.transform(assertions, org.opensaml.saml.saml2.core.Assertion::getID);
+                    return assertions.
+                            stream().
+                            map(org.opensaml.saml.saml2.core.Assertion::getID).
+                            collect(Collectors.toList());
                 }
                 
             } else if (message instanceof org.opensaml.saml.saml1.core.Response) {
@@ -71,7 +73,10 @@ public class AssertionIDAuditExtractor implements Function<ProfileRequestContext
                 final List<org.opensaml.saml.saml1.core.Assertion> assertions =
                         ((org.opensaml.saml.saml1.core.Response) message).getAssertions();
                 if (!assertions.isEmpty()) {
-                    return Collections2.transform(assertions, org.opensaml.saml.saml1.core.Assertion::getID);
+                    return assertions.
+                            stream().
+                            map(org.opensaml.saml.saml1.core.Assertion::getID).
+                            collect(Collectors.toList());
                 }
                 
             } else if (message instanceof org.opensaml.saml.saml2.core.Assertion) {
diff --git a/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/audit/impl/AssertionInstantAuditExtractor.java b/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/audit/impl/AssertionInstantAuditExtractor.java
index 9f4bf5f..53530c6 100644
--- a/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/audit/impl/AssertionInstantAuditExtractor.java
+++ b/idp-saml-impl/src/main/java/net/shibboleth/idp/saml/audit/impl/AssertionInstantAuditExtractor.java
@@ -22,6 +22,7 @@ import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
 import java.util.function.Function;
+import java.util.stream.Collectors;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
@@ -30,8 +31,6 @@ import org.opensaml.profile.context.ProfileRequestContext;
 import org.opensaml.saml.common.SAMLObject;
 import org.opensaml.saml.saml2.core.ArtifactResponse;
 
-import com.google.common.collect.Collections2;
-
 import net.shibboleth.utilities.java.support.logic.Constraint;
 
 /** {@link Function} that returns the IssueInstant attribute from the assertions in a response. */
@@ -65,7 +64,10 @@ public class AssertionInstantAuditExtractor implements Function<ProfileRequestCo
                 final List<org.opensaml.saml.saml2.core.Assertion> assertions =
                         ((org.opensaml.saml.saml2.core.Response) message).getAssertions();
                 if (!assertions.isEmpty()) {
-                    return Collections2.transform(assertions, org.opensaml.saml.saml2.core.Assertion::getIssueInstant);
+                    return assertions.
+                            stream().
+                            map(org.opensaml.saml.saml2.core.Assertion::getIssueInstant).
+                            collect(Collectors.toList());
                 }
                 
             } else if (message instanceof org.opensaml.saml.saml1.core.Response) {
@@ -73,7 +75,10 @@ public class AssertionInstantAuditExtractor implements Function<ProfileRequestCo
                 final List<org.opensaml.saml.saml1.core.Assertion> assertions =
                         ((org.opensaml.saml.saml1.core.Response) message).getAssertions();
                 if (!assertions.isEmpty()) {
-                    return Collections2.transform(assertions, org.opensaml.saml.saml1.core.Assertion::getIssueInstant);
+                    return assertions.
+                            stream().
+                            map(org.opensaml.saml.saml1.core.Assertion::getIssueInstant).
+                            collect(Collectors.toList());
                 }
                 
             } else if (message instanceof org.opensaml.saml.saml2.core.Assertion) {
diff --git a/idp-saml-impl/src/test/java/net/shibboleth/idp/saml/impl/TestSources.java b/idp-saml-impl/src/test/java/net/shibboleth/idp/saml/impl/TestSources.java
index 0b26ffc..56785e4 100644
--- a/idp-saml-impl/src/test/java/net/shibboleth/idp/saml/impl/TestSources.java
+++ b/idp-saml-impl/src/test/java/net/shibboleth/idp/saml/impl/TestSources.java
@@ -32,8 +32,6 @@ import javax.annotation.Nullable;
 
 import org.opensaml.profile.context.ProfileRequestContext;
 
-import com.google.common.collect.ImmutableMap;
-
 import net.shibboleth.idp.attribute.IdPAttribute;
 import net.shibboleth.idp.attribute.IdPAttributeValue;
 import net.shibboleth.idp.attribute.StringAttributeValue;
@@ -302,7 +300,7 @@ public final class TestSources {
                 map.put(attr.getId(), attr);
             }
 
-            attributes = ImmutableMap.copyOf(map);
+            attributes = Map.copyOf(map);
         }
 
         /** {@inheritDoc} */

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


More information about the commits mailing list