[java-identity-provider] branch master updated: Clean up more use of immutable collection methods.
Scott Cantor
cantor.2 at osu.edu
Fri Nov 1 16:12:51 EDT 2019
This is an automated email from the git hooks/post-receive script.
scantor 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=fe89e302095a54f814e798472edc118086aa8ae0
The following commit(s) were added to refs/heads/master by this push:
new fe89e30 Clean up more use of immutable collection methods.
fe89e30 is described below
commit fe89e302095a54f814e798472edc118086aa8ae0
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Fri Nov 1 16:12:47 2019 -0400
Clean up more use of immutable collection methods.
---
.../idp/admin/BasicAdministrativeFlowDescriptor.java | 10 ++++++----
.../idp/cas/config/impl/LoginConfiguration.java | 10 ++++++----
.../config/AbstractSAMLProfileConfiguration.java | 20 +++++++++-----------
.../config/AbstractSAML2ProfileConfiguration.java | 15 +++++++++++----
.../profile/config/ECPProfileConfiguration.java | 12 ++++++++----
.../config/SingleLogoutProfileConfiguration.java | 11 ++++++++---
.../AbstractSAML2ProfileConfigurationTest.java | 2 --
7 files changed, 48 insertions(+), 32 deletions(-)
diff --git a/idp-admin-api/src/main/java/net/shibboleth/idp/admin/BasicAdministrativeFlowDescriptor.java b/idp-admin-api/src/main/java/net/shibboleth/idp/admin/BasicAdministrativeFlowDescriptor.java
index fc88d50..5974034 100644
--- a/idp-admin-api/src/main/java/net/shibboleth/idp/admin/BasicAdministrativeFlowDescriptor.java
+++ b/idp-admin-api/src/main/java/net/shibboleth/idp/admin/BasicAdministrativeFlowDescriptor.java
@@ -18,7 +18,6 @@
package net.shibboleth.idp.admin;
import java.security.Principal;
-import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
@@ -37,7 +36,6 @@ import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
import net.shibboleth.utilities.java.support.annotation.constraint.Positive;
import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
-import net.shibboleth.utilities.java.support.collection.CollectionSupport;
import net.shibboleth.utilities.java.support.logic.Constraint;
import net.shibboleth.utilities.java.support.logic.FunctionSupport;
import net.shibboleth.utilities.java.support.primitive.LangBearingString;
@@ -417,7 +415,11 @@ public class BasicAdministrativeFlowDescriptor extends AbstractProfileConfigurat
/** {@inheritDoc} */
@Nonnull @NonnullElements @NotLive @Unmodifiable public List<String> getPostAuthenticationFlows(
@Nullable final ProfileRequestContext profileRequestContext) {
- return CollectionSupport.buildImmutableList(postAuthenticationFlowsLookupStrategy.apply(profileRequestContext));
+ final Collection<String> flows = postAuthenticationFlowsLookupStrategy.apply(profileRequestContext);
+ if (flows != null) {
+ return List.copyOf(flows);
+ }
+ return Collections.emptyList();
}
/**
@@ -429,7 +431,7 @@ public class BasicAdministrativeFlowDescriptor extends AbstractProfileConfigurat
if (flows != null) {
postAuthenticationFlowsLookupStrategy =
- FunctionSupport.constant(new ArrayList<>(StringSupport.normalizeStringCollection(flows)));
+ FunctionSupport.constant(List.copyOf(StringSupport.normalizeStringCollection(flows)));
} else {
postAuthenticationFlowsLookupStrategy = FunctionSupport.constant(null);
}
diff --git a/idp-cas-impl/src/main/java/net/shibboleth/idp/cas/config/impl/LoginConfiguration.java b/idp-cas-impl/src/main/java/net/shibboleth/idp/cas/config/impl/LoginConfiguration.java
index 6dbba81..ea5ee9d 100644
--- a/idp-cas-impl/src/main/java/net/shibboleth/idp/cas/config/impl/LoginConfiguration.java
+++ b/idp-cas-impl/src/main/java/net/shibboleth/idp/cas/config/impl/LoginConfiguration.java
@@ -18,7 +18,6 @@
package net.shibboleth.idp.cas.config.impl;
import java.security.Principal;
-import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
@@ -39,7 +38,6 @@ import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElemen
import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
-import net.shibboleth.utilities.java.support.collection.CollectionSupport;
import net.shibboleth.utilities.java.support.logic.Constraint;
import net.shibboleth.utilities.java.support.logic.FunctionSupport;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
@@ -162,7 +160,11 @@ public class LoginConfiguration extends AbstractProtocolConfiguration
/** {@inheritDoc} */
@Nonnull @NonnullElements @NotLive @Unmodifiable public List<String> getPostAuthenticationFlows(
@Nullable final ProfileRequestContext profileRequestContext) {
- return CollectionSupport.buildImmutableList(postAuthenticationFlowsLookupStrategy.apply(profileRequestContext));
+ final Collection<String> flows = postAuthenticationFlowsLookupStrategy.apply(profileRequestContext);
+ if (flows != null) {
+ return List.copyOf(flows);
+ }
+ return Collections.emptyList();
}
/**
@@ -173,7 +175,7 @@ public class LoginConfiguration extends AbstractProtocolConfiguration
public void setPostAuthenticationFlows(@Nullable @NonnullElements final Collection<String> flows) {
if (flows != null) {
postAuthenticationFlowsLookupStrategy =
- FunctionSupport.constant(new ArrayList<>(StringSupport.normalizeStringCollection(flows)));
+ FunctionSupport.constant(List.copyOf(StringSupport.normalizeStringCollection(flows)));
} else {
postAuthenticationFlowsLookupStrategy = FunctionSupport.constant(null);
}
diff --git a/idp-saml-api/src/main/java/net/shibboleth/idp/saml/profile/config/AbstractSAMLProfileConfiguration.java b/idp-saml-api/src/main/java/net/shibboleth/idp/saml/profile/config/AbstractSAMLProfileConfiguration.java
index 9ea38aa..c87cb75 100644
--- a/idp-saml-api/src/main/java/net/shibboleth/idp/saml/profile/config/AbstractSAMLProfileConfiguration.java
+++ b/idp-saml-api/src/main/java/net/shibboleth/idp/saml/profile/config/AbstractSAMLProfileConfiguration.java
@@ -19,7 +19,7 @@ package net.shibboleth.idp.saml.profile.config;
import java.time.Duration;
import java.util.Collection;
-import java.util.HashSet;
+import java.util.Collections;
import java.util.List;
import java.util.Set;
import java.util.function.Function;
@@ -33,7 +33,6 @@ import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElemen
import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
-import net.shibboleth.utilities.java.support.collection.CollectionSupport;
import net.shibboleth.utilities.java.support.logic.Constraint;
import net.shibboleth.utilities.java.support.logic.FunctionSupport;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
@@ -235,7 +234,12 @@ public abstract class AbstractSAMLProfileConfiguration extends AbstractCondition
/** {@inheritDoc} */
@Nonnull @NonnullElements @NotLive public Set<String> getAdditionalAudiencesForAssertion(
@Nullable final ProfileRequestContext profileRequestContext) {
- return CollectionSupport.buildImmutableSet(assertionAudiencesLookupStrategy.apply(profileRequestContext));
+
+ final Collection<String> audiences = assertionAudiencesLookupStrategy.apply(profileRequestContext);
+ if (audiences != null) {
+ return Set.copyOf(audiences);
+ }
+ return Collections.emptySet();
}
/**
@@ -249,14 +253,8 @@ public abstract class AbstractSAMLProfileConfiguration extends AbstractCondition
if (audiences == null || audiences.isEmpty()) {
assertionAudiencesLookupStrategy = FunctionSupport.constant(null);
} else {
- final Set<String> assertionAudiences = new HashSet<>();
- for (final String audience : audiences) {
- final String trimmedAudience = StringSupport.trimOrNull(audience);
- if (trimmedAudience != null) {
- assertionAudiences.add(trimmedAudience);
- }
- }
- assertionAudiencesLookupStrategy = FunctionSupport.constant(assertionAudiences);
+ assertionAudiencesLookupStrategy = FunctionSupport.constant(
+ Set.copyOf(StringSupport.normalizeStringCollection(audiences)));
}
}
diff --git a/idp-saml-api/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/AbstractSAML2ProfileConfiguration.java b/idp-saml-api/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/AbstractSAML2ProfileConfiguration.java
index 46754e4..eb2a955 100644
--- a/idp-saml-api/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/AbstractSAML2ProfileConfiguration.java
+++ b/idp-saml-api/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/AbstractSAML2ProfileConfiguration.java
@@ -18,6 +18,9 @@
package net.shibboleth.idp.saml.saml2.profile.config;
import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
import java.util.function.Function;
import java.util.function.Predicate;
@@ -30,7 +33,6 @@ import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElemen
import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
-import net.shibboleth.utilities.java.support.collection.CollectionSupport;
import net.shibboleth.utilities.java.support.logic.Constraint;
import net.shibboleth.utilities.java.support.logic.FunctionSupport;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
@@ -114,9 +116,13 @@ public abstract class AbstractSAML2ProfileConfiguration extends AbstractSAMLProf
}
/** {@inheritDoc} */
- @Nonnull @NonnullElements @NotLive @Unmodifiable public Collection<String> getProxyAudiences(
+ @Nonnull @NonnullElements @NotLive @Unmodifiable public Set<String> getProxyAudiences(
@Nullable final ProfileRequestContext profileRequestContext) {
- return CollectionSupport.buildImmutableList(proxyAudiencesLookupStrategy.apply(profileRequestContext));
+ final Collection<String> audiences = proxyAudiencesLookupStrategy.apply(profileRequestContext);
+ if (audiences != null) {
+ return Set.copyOf(audiences);
+ }
+ return Collections.emptySet();
}
/**
@@ -128,7 +134,8 @@ public abstract class AbstractSAML2ProfileConfiguration extends AbstractSAMLProf
if (audiences == null || audiences.isEmpty()) {
proxyAudiencesLookupStrategy = FunctionSupport.constant(null);
} else {
- proxyAudiencesLookupStrategy = FunctionSupport.constant(StringSupport.normalizeStringCollection(audiences));
+ proxyAudiencesLookupStrategy = FunctionSupport.constant(
+ List.copyOf(StringSupport.normalizeStringCollection(audiences)));
}
}
diff --git a/idp-saml-api/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/ECPProfileConfiguration.java b/idp-saml-api/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/ECPProfileConfiguration.java
index 2534abc..81059ea 100644
--- a/idp-saml-api/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/ECPProfileConfiguration.java
+++ b/idp-saml-api/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/ECPProfileConfiguration.java
@@ -18,7 +18,7 @@
package net.shibboleth.idp.saml.saml2.profile.config;
import java.util.Collection;
-import java.util.HashSet;
+import java.util.Collections;
import java.util.Set;
import java.util.function.Function;
@@ -31,7 +31,6 @@ import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElemen
import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
-import net.shibboleth.utilities.java.support.collection.CollectionSupport;
import net.shibboleth.utilities.java.support.logic.Constraint;
import net.shibboleth.utilities.java.support.logic.FunctionSupport;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
@@ -72,7 +71,12 @@ public class ECPProfileConfiguration extends BrowserSSOProfileConfiguration {
*/
@Nonnull @NonnullElements @NotLive @Unmodifiable public Set<String> getLocalEvents(
@Nullable final ProfileRequestContext profileRequestContext) {
- return CollectionSupport.buildImmutableSet(localEventsLookupStrategy.apply(profileRequestContext));
+
+ final Set<String> events = localEventsLookupStrategy.apply(profileRequestContext);
+ if (events != null) {
+ return Set.copyOf(events);
+ }
+ return Collections.emptySet();
}
/**
@@ -86,7 +90,7 @@ public class ECPProfileConfiguration extends BrowserSSOProfileConfiguration {
if (events != null && !events.isEmpty()) {
localEventsLookupStrategy = FunctionSupport.constant(
- new HashSet<>(StringSupport.normalizeStringCollection(events)));
+ Set.copyOf(StringSupport.normalizeStringCollection(events)));
} else {
localEventsLookupStrategy = FunctionSupport.constant(null);
}
diff --git a/idp-saml-api/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/SingleLogoutProfileConfiguration.java b/idp-saml-api/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/SingleLogoutProfileConfiguration.java
index 2f99a6f..de46ed8 100644
--- a/idp-saml-api/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/SingleLogoutProfileConfiguration.java
+++ b/idp-saml-api/src/main/java/net/shibboleth/idp/saml/saml2/profile/config/SingleLogoutProfileConfiguration.java
@@ -18,6 +18,8 @@
package net.shibboleth.idp.saml.saml2.profile.config;
import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
import java.util.function.Function;
import java.util.function.Predicate;
@@ -34,7 +36,6 @@ import com.google.common.base.Predicates;
import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
-import net.shibboleth.utilities.java.support.collection.CollectionSupport;
import net.shibboleth.utilities.java.support.logic.Constraint;
import net.shibboleth.utilities.java.support.logic.FunctionSupport;
import net.shibboleth.utilities.java.support.primitive.StringSupport;
@@ -165,7 +166,11 @@ public class SingleLogoutProfileConfiguration extends AbstractSAML2ArtifactAware
*/
@Nonnull @NonnullElements @NotLive public Collection<String> getQualifiedNameIDFormats(
@Nullable final ProfileRequestContext profileRequestContext) {
- return CollectionSupport.buildImmutableList(qualifiedNameIDFormatsLookupStrategy.apply(profileRequestContext));
+ final Collection<String> formats = qualifiedNameIDFormatsLookupStrategy.apply(profileRequestContext);
+ if (formats != null) {
+ return List.copyOf(formats);
+ }
+ return Collections.emptyList();
}
/**
@@ -186,7 +191,7 @@ public class SingleLogoutProfileConfiguration extends AbstractSAML2ArtifactAware
qualifiedNameIDFormatsLookupStrategy = FunctionSupport.constant(null);
} else {
qualifiedNameIDFormatsLookupStrategy =
- FunctionSupport.constant(StringSupport.normalizeStringCollection(formats));
+ FunctionSupport.constant(List.copyOf(StringSupport.normalizeStringCollection(formats)));
}
}
diff --git a/idp-saml-api/src/test/java/net/shibboleth/idp/saml/saml2/profile/config/AbstractSAML2ProfileConfigurationTest.java b/idp-saml-api/src/test/java/net/shibboleth/idp/saml/saml2/profile/config/AbstractSAML2ProfileConfigurationTest.java
index 6322819..a44ca8f 100644
--- a/idp-saml-api/src/test/java/net/shibboleth/idp/saml/saml2/profile/config/AbstractSAML2ProfileConfigurationTest.java
+++ b/idp-saml-api/src/test/java/net/shibboleth/idp/saml/saml2/profile/config/AbstractSAML2ProfileConfigurationTest.java
@@ -112,7 +112,6 @@ public class AbstractSAML2ProfileConfigurationTest {
final ArrayList<String> audiences = new ArrayList<>();
audiences.add("foo");
- audiences.add("foo");
audiences.add("bar");
config.setProxyAudiences(audiences);
@@ -132,7 +131,6 @@ public class AbstractSAML2ProfileConfigurationTest {
final ArrayList<String> audiences = new ArrayList<>();
audiences.add("foo");
- audiences.add("foo");
audiences.add("bar");
config.setProxyAudiencesLookupStrategy(FunctionSupport.constant(audiences));
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list