[java-identity-provider] branch main updated: IDP-2083 - Treat NonnullElements as the default for collections
Scott Cantor
cantor.2 at osu.edu
Tue Jun 20 23:28:38 UTC 2023
This is an automated email from the git hooks/post-receive script.
scantor pushed a commit to branch main
in repository java-identity-provider.
View the commit online:
http://git.shibboleth.net/view/?p=java-identity-provider.git;a=commit;h=9d9cc6f6da8a4a3f27175d28f8cc4046877ac3ff
The following commit(s) were added to refs/heads/main by this push:
new 9d9cc6f6d IDP-2083 - Treat NonnullElements as the default for collections
9d9cc6f6d is described below
commit 9d9cc6f6da8a4a3f27175d28f8cc4046877ac3ff
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Tue Jun 20 19:28:35 2023 -0400
IDP-2083 - Treat NonnullElements as the default for collections
https://shibboleth.atlassian.net/browse/IDP-2083
Clean up strays.
---
...InitializeAdministrativeProfileContextTree.java | 3 +-
.../shibboleth/idp/module/impl/ModuleGuageSet.java | 36 ++++++++++++++--------
.../idp/authn/AbstractExtractionAction.java | 1 -
.../DefaultAuthenticationResultSerializer.java | 3 +-
.../authn/impl/HTPasswdCredentialValidator.java | 1 -
.../idp/cli/impl/ModuleManagerArguments.java | 9 +++---
.../consent/storage/impl/ConsentSerializer.java | 5 ++-
.../shibboleth/idp/metrics/impl/IdPGaugeSet.java | 3 +-
8 files changed, 32 insertions(+), 29 deletions(-)
diff --git a/idp-admin-impl/src/main/java/net/shibboleth/idp/admin/impl/InitializeAdministrativeProfileContextTree.java b/idp-admin-impl/src/main/java/net/shibboleth/idp/admin/impl/InitializeAdministrativeProfileContextTree.java
index 68e7c3b48..ebb67353b 100644
--- a/idp-admin-impl/src/main/java/net/shibboleth/idp/admin/impl/InitializeAdministrativeProfileContextTree.java
+++ b/idp-admin-impl/src/main/java/net/shibboleth/idp/admin/impl/InitializeAdministrativeProfileContextTree.java
@@ -32,7 +32,6 @@ import net.shibboleth.idp.profile.IdPEventIds;
import net.shibboleth.idp.ui.context.RelyingPartyUIContext;
import net.shibboleth.profile.context.RelyingPartyContext;
import net.shibboleth.shared.annotation.constraint.NonnullBeforeExec;
-import net.shibboleth.shared.annotation.constraint.NonnullElements;
import net.shibboleth.shared.primitive.LoggerFactory;
import net.shibboleth.shared.primitive.NonnullSupplier;
import net.shibboleth.shared.spring.util.SpringSupport;
@@ -79,7 +78,7 @@ public class InitializeAdministrativeProfileContextTree extends AbstractProfileA
* @param langs a semi-colon separated string.
*/
@SuppressWarnings("unused")
- public void setFallbackLanguages(@Nonnull @NonnullElements final List<String> langs) {
+ public void setFallbackLanguages(@Nonnull final List<String> langs) {
checkSetterPreconditions();
if (langs != null) {
diff --git a/idp-admin-impl/src/main/java/net/shibboleth/idp/module/impl/ModuleGuageSet.java b/idp-admin-impl/src/main/java/net/shibboleth/idp/module/impl/ModuleGuageSet.java
index 71a9c2cbc..d313d5510 100644
--- a/idp-admin-impl/src/main/java/net/shibboleth/idp/module/impl/ModuleGuageSet.java
+++ b/idp-admin-impl/src/main/java/net/shibboleth/idp/module/impl/ModuleGuageSet.java
@@ -29,14 +29,15 @@ import org.springframework.context.support.ApplicationObjectSupport;
import com.codahale.metrics.Gauge;
import com.codahale.metrics.Metric;
+import com.codahale.metrics.MetricFilter;
import com.codahale.metrics.MetricRegistry;
import com.codahale.metrics.MetricSet;
import net.shibboleth.idp.module.IdPModule;
import net.shibboleth.profile.module.ModuleContext;
-import net.shibboleth.shared.annotation.constraint.NonnullElements;
import net.shibboleth.shared.annotation.constraint.NotEmpty;
import net.shibboleth.shared.annotation.constraint.NotLive;
+import net.shibboleth.shared.annotation.constraint.Unmodifiable;
import net.shibboleth.shared.collection.CollectionSupport;
import net.shibboleth.shared.logic.Constraint;
import net.shibboleth.shared.primitive.StringSupport;
@@ -44,14 +45,15 @@ import net.shibboleth.shared.primitive.StringSupport;
/**
* Guage set to report the Modules' statuses.
*/
-public class ModuleGuageSet extends ApplicationObjectSupport implements MetricSet {
+public class ModuleGuageSet extends ApplicationObjectSupport implements MetricSet, MetricFilter {
/** Default prefix for metrics. */
@Nonnull @NotEmpty private static final String DEFAULT_METRIC_NAME = "net.shibboleth.idp.modules";
/** The map of gauges. */
- @Nonnull @NonnullElements private final Map<String,Metric> gauges = new HashMap<>();
+ @Nonnull private final Map<String,Metric> gauges = new HashMap<>();
+ /** Constructor. */
public ModuleGuageSet() {
gauges.put(MetricRegistry.name(DEFAULT_METRIC_NAME, "list"),
new Gauge<Map<String, Boolean>>() {
@@ -61,10 +63,12 @@ public class ModuleGuageSet extends ApplicationObjectSupport implements MetricSe
});
}
- /** Return the module Ids and whether rhey are enabled or not.
- * @return the modules.
+ /**
+ * Return the module Ids and whether rhey are enabled or not.
+ *
+ * @return the modules
*/
- @NotLive @Nonnull private Map<String, Boolean> getModules() {
+ @Nonnull @Unmodifiable @NotLive private Map<String, Boolean> getModules() {
final Map<String, Boolean> result = new HashMap<>();
final Iterator<IdPModule> modules = ServiceLoader.load(IdPModule.class).iterator();
final ModuleContext mc = new ModuleContext(getIdpHome());
@@ -75,25 +79,31 @@ public class ModuleGuageSet extends ApplicationObjectSupport implements MetricSe
return CollectionSupport.copyToMap(result);
}
- /** Get the idp home location (from the properties in the context)
- * @return idpHome
+ /**
+ * Get the idp home location (from the properties in the context).
+ *
+ * @return idp home
*/
@Nonnull private String getIdpHome() {
final ApplicationContext context = getApplicationContext();
assert context != null;
- return Constraint.isNotNull(StringSupport.trimOrNull(context.getEnvironment().getProperty("idp.home")), "idp.home is not available");
+ return Constraint.isNotNull(StringSupport.trimOrNull(
+ context.getEnvironment().getProperty("idp.home")), "idp.home is not available");
}
- @Override
+ /** {@inheritDoc} */
public Map<String, Metric> getMetrics() {
return gauges;
}
/** {@inheritDoc} */
- @Override
protected boolean isContextRequired() {
return true;
}
-
-}
+ /** {@inheritDoc} */
+ public boolean matches(final String name, final Metric metric) {
+ return gauges.containsKey(name);
+ }
+
+}
\ No newline at end of file
diff --git a/idp-authn-api/src/main/java/net/shibboleth/idp/authn/AbstractExtractionAction.java b/idp-authn-api/src/main/java/net/shibboleth/idp/authn/AbstractExtractionAction.java
index effd27d43..6fe426f6e 100644
--- a/idp-authn-api/src/main/java/net/shibboleth/idp/authn/AbstractExtractionAction.java
+++ b/idp-authn-api/src/main/java/net/shibboleth/idp/authn/AbstractExtractionAction.java
@@ -28,7 +28,6 @@ import javax.annotation.Nullable;
import org.slf4j.Logger;
-import net.shibboleth.shared.annotation.constraint.NonnullElements;
import net.shibboleth.shared.annotation.constraint.NotEmpty;
import net.shibboleth.shared.collection.CollectionSupport;
import net.shibboleth.shared.collection.Pair;
diff --git a/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/DefaultAuthenticationResultSerializer.java b/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/DefaultAuthenticationResultSerializer.java
index 3be8f8442..0947eb0c8 100644
--- a/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/DefaultAuthenticationResultSerializer.java
+++ b/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/DefaultAuthenticationResultSerializer.java
@@ -58,7 +58,6 @@ import net.shibboleth.idp.authn.principal.PrincipalSerializer;
import net.shibboleth.idp.authn.principal.PrincipalService;
import net.shibboleth.idp.authn.principal.PrincipalServiceManager;
import net.shibboleth.idp.authn.principal.impl.AuthenticationResultPrincipalSerializer;
-import net.shibboleth.shared.annotation.constraint.NonnullElements;
import net.shibboleth.shared.annotation.constraint.NotEmpty;
import net.shibboleth.shared.codec.Base64Support;
import net.shibboleth.shared.codec.EncodingException;
@@ -109,7 +108,7 @@ public class DefaultAuthenticationResultSerializer extends AbstractInitializable
@Nonnull private final PrincipalServiceManager principalServiceManager;
/** Principal serializers. */
- @Nonnull @NonnullElements private Collection<PrincipalSerializer<String>> principalSerializers;
+ @Nonnull private Collection<PrincipalSerializer<String>> principalSerializers;
/**
* Specialized serializer for {@link net.shibboleth.idp.authn.principal.AuthenticationResultPrincipal}
diff --git a/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/HTPasswdCredentialValidator.java b/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/HTPasswdCredentialValidator.java
index 2508d53c4..0ce8f12d5 100644
--- a/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/HTPasswdCredentialValidator.java
+++ b/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/HTPasswdCredentialValidator.java
@@ -45,7 +45,6 @@ import net.shibboleth.idp.authn.AuthnEventIds;
import net.shibboleth.idp.authn.context.AuthenticationContext;
import net.shibboleth.idp.authn.context.UsernamePasswordContext;
import net.shibboleth.shared.annotation.constraint.NonnullAfterInit;
-import net.shibboleth.shared.annotation.constraint.NonnullElements;
import net.shibboleth.shared.annotation.constraint.NotLive;
import net.shibboleth.shared.annotation.constraint.ThreadSafeAfterInit;
import net.shibboleth.shared.annotation.constraint.Unmodifiable;
diff --git a/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/ModuleManagerArguments.java b/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/ModuleManagerArguments.java
index 2fee742cb..976a56cb1 100644
--- a/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/ModuleManagerArguments.java
+++ b/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/ModuleManagerArguments.java
@@ -31,7 +31,6 @@ import com.beust.jcommander.Parameter;
import net.shibboleth.idp.cli.AbstractIdPHomeAwareCommandLineArguments;
import net.shibboleth.idp.module.IdPModule;
-import net.shibboleth.shared.annotation.constraint.NonnullElements;
import net.shibboleth.shared.annotation.constraint.NotLive;
import net.shibboleth.shared.annotation.constraint.Unmodifiable;
import net.shibboleth.shared.collection.CollectionSupport;
@@ -52,19 +51,19 @@ public class ModuleManagerArguments extends AbstractIdPHomeAwareCommandLineArgum
/** Detailed info about installed module(s). */
@Parameter(names= {"-i", "--info"})
- @Nullable @NonnullElements private List<String> infoModuleIds = new ArrayList<>();
+ @Nullable private List<String> infoModuleIds = new ArrayList<>();
/** Test status of installed module(s). */
@Parameter(names= {"-t", "--test"})
- @Nullable @NonnullElements private List<String> testModuleIds = new ArrayList<>();
+ @Nullable private List<String> testModuleIds = new ArrayList<>();
/** ID of module(s) to enable. */
@Parameter(names= {"-e", "--enable"})
- @Nullable @NonnullElements private List<String> enableModuleIds = new ArrayList<>();
+ @Nullable private List<String> enableModuleIds = new ArrayList<>();
/** ID of module(s) to enable. */
@Parameter(names= {"-d", "--disable"})
- @Nullable @NonnullElements private List<String> disableModuleIds = new ArrayList<>();
+ @Nullable private List<String> disableModuleIds = new ArrayList<>();
/** Clean when disabling. */
@Parameter(names= {"-f", "--clean"})
diff --git a/idp-consent-impl/src/main/java/net/shibboleth/idp/consent/storage/impl/ConsentSerializer.java b/idp-consent-impl/src/main/java/net/shibboleth/idp/consent/storage/impl/ConsentSerializer.java
index 81acd261c..585ae8ef5 100644
--- a/idp-consent-impl/src/main/java/net/shibboleth/idp/consent/storage/impl/ConsentSerializer.java
+++ b/idp-consent-impl/src/main/java/net/shibboleth/idp/consent/storage/impl/ConsentSerializer.java
@@ -49,7 +49,6 @@ import com.google.common.collect.HashBiMap;
import com.google.common.collect.ImmutableBiMap;
import net.shibboleth.idp.consent.Consent;
-import net.shibboleth.shared.annotation.constraint.NonnullElements;
import net.shibboleth.shared.annotation.constraint.NotEmpty;
import net.shibboleth.shared.component.AbstractInitializableComponent;
import net.shibboleth.shared.logic.Constraint;
@@ -80,7 +79,7 @@ public class ConsentSerializer extends AbstractInitializableComponent implements
@Nonnull private final JsonReaderFactory readerFactory;
/** Shrink consent IDs into symbolic numbers. */
- @Nonnull @NonnullElements private BiMap<String, Integer> symbolics;
+ @Nonnull private BiMap<String, Integer> symbolics;
/** Constructor. */
@SuppressWarnings("null")
@@ -96,7 +95,7 @@ public class ConsentSerializer extends AbstractInitializableComponent implements
*
* @param mappings string to symbolic mappings
*/
- public void setSymbolics(@Nonnull @NonnullElements final Map<String, Integer> mappings) {
+ public void setSymbolics(@Nonnull final Map<String, Integer> mappings) {
checkSetterPreconditions();
symbolics = HashBiMap.create(Constraint.isNotNull(mappings, "Symbolic mappings cannot be null"));
}
diff --git a/idp-core/src/main/java/net/shibboleth/idp/metrics/impl/IdPGaugeSet.java b/idp-core/src/main/java/net/shibboleth/idp/metrics/impl/IdPGaugeSet.java
index f189584ad..2ab7f5e7b 100644
--- a/idp-core/src/main/java/net/shibboleth/idp/metrics/impl/IdPGaugeSet.java
+++ b/idp-core/src/main/java/net/shibboleth/idp/metrics/impl/IdPGaugeSet.java
@@ -23,7 +23,6 @@ import com.codahale.metrics.MetricRegistry;
import com.codahale.metrics.MetricSet;
import net.shibboleth.idp.Version;
-import net.shibboleth.shared.annotation.constraint.NonnullElements;
import net.shibboleth.shared.annotation.constraint.NotEmpty;
import java.time.Duration;
@@ -96,7 +95,7 @@ public class IdPGaugeSet extends ApplicationObjectSupport implements MetricSet,
*
* @param properties properties to expose
*/
- public void setExposedProperties(@Nullable @NonnullElements final Set<String> properties) {
+ public void setExposedProperties(@Nullable final Set<String> properties) {
if (properties != null) {
final ApplicationContext context = getApplicationContext();
assert context != null;
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list