[java-identity-provider] branch main updated: IDP-2083 - Treat NonnullElements as the default for collections

Scott Cantor cantor.2 at osu.edu
Fri Jun 16 21:11:03 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=530c24e6865823f5c739c0c31a1d04fd525ba2be

The following commit(s) were added to refs/heads/main by this push:
     new 530c24e68 IDP-2083 - Treat NonnullElements as the default for collections
530c24e68 is described below

commit 530c24e6865823f5c739c0c31a1d04fd525ba2be
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Fri Jun 16 17:11:00 2023 -0400

    IDP-2083 - Treat NonnullElements as the default for collections
    
    https://shibboleth.atlassian.net/browse/IDP-2083
    
    Review idp-cli.
---
 .../idp/cli/AbstractCommandLineArguments.java       |  3 +--
 .../AbstractIdPHomeAwareCommandLineArguments.java   |  1 +
 .../shibboleth/idp/cli/CommandLineArguments.java    |  3 +--
 .../shibboleth/idp/cli/ResolverTestArguments.java   |  2 +-
 .../net/shibboleth/idp/cli/impl/JarCheckCLI.java    | 21 +++++++++++----------
 .../idp/cli/impl/ModuleManagerArguments.java        | 10 +++++-----
 .../shibboleth/idp/cli/impl/ModuleManagerCLI.java   |  3 +--
 .../shibboleth/idp/cli/{ => impl}/package-info.java |  6 ++++--
 .../java/net/shibboleth/idp/cli/package-info.java   |  4 +++-
 9 files changed, 28 insertions(+), 25 deletions(-)

diff --git a/idp-cli/src/main/java/net/shibboleth/idp/cli/AbstractCommandLineArguments.java b/idp-cli/src/main/java/net/shibboleth/idp/cli/AbstractCommandLineArguments.java
index 222cf926d..8b8b4ca20 100644
--- a/idp-cli/src/main/java/net/shibboleth/idp/cli/AbstractCommandLineArguments.java
+++ b/idp-cli/src/main/java/net/shibboleth/idp/cli/AbstractCommandLineArguments.java
@@ -31,7 +31,6 @@ import javax.net.ssl.HostnameVerifier;
 import javax.net.ssl.HttpsURLConnection;
 import javax.net.ssl.SSLSession;
 
-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;
@@ -205,7 +204,7 @@ public abstract class AbstractCommandLineArguments implements CommandLineArgumen
     }
 
     /** {@inheritDoc} */
-    @Nullable @NonnullElements @NotLive @Unmodifiable public Map<String,String> getHeaders() {
+    @Nullable @NotLive @Unmodifiable public Map<String,String> getHeaders() {
         final List<String> hdrs = headers;
         if (hdrs != null) {
             final Map<String,String> map = new HashMap<>();
diff --git a/idp-cli/src/main/java/net/shibboleth/idp/cli/AbstractIdPHomeAwareCommandLineArguments.java b/idp-cli/src/main/java/net/shibboleth/idp/cli/AbstractIdPHomeAwareCommandLineArguments.java
index 4aedf0075..e55993cc4 100644
--- a/idp-cli/src/main/java/net/shibboleth/idp/cli/AbstractIdPHomeAwareCommandLineArguments.java
+++ b/idp-cli/src/main/java/net/shibboleth/idp/cli/AbstractIdPHomeAwareCommandLineArguments.java
@@ -98,4 +98,5 @@ public abstract class AbstractIdPHomeAwareCommandLineArguments
                 "Use the named bean for HTTP security"));
         out.println();
     }
+
 }
\ No newline at end of file
diff --git a/idp-cli/src/main/java/net/shibboleth/idp/cli/CommandLineArguments.java b/idp-cli/src/main/java/net/shibboleth/idp/cli/CommandLineArguments.java
index 858b65631..7cb6d37e4 100644
--- a/idp-cli/src/main/java/net/shibboleth/idp/cli/CommandLineArguments.java
+++ b/idp-cli/src/main/java/net/shibboleth/idp/cli/CommandLineArguments.java
@@ -24,7 +24,6 @@ import java.util.Map;
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
-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;
@@ -75,7 +74,7 @@ public interface CommandLineArguments {
      * 
      * @since 4.2.0
      */
-    @Nullable @NonnullElements @NotLive @Unmodifiable default Map<String,String> getHeaders() {
+    @Nullable @NotLive @Unmodifiable default Map<String,String> getHeaders() {
         return null;
     }
     
diff --git a/idp-cli/src/main/java/net/shibboleth/idp/cli/ResolverTestArguments.java b/idp-cli/src/main/java/net/shibboleth/idp/cli/ResolverTestArguments.java
index 2fcd57dfd..ddf2e28c6 100644
--- a/idp-cli/src/main/java/net/shibboleth/idp/cli/ResolverTestArguments.java
+++ b/idp-cli/src/main/java/net/shibboleth/idp/cli/ResolverTestArguments.java
@@ -93,7 +93,7 @@ public class ResolverTestArguments extends AbstractCommandLineArguments {
 
     /** {@inheritDoc} */
     @Override
-    protected @Nonnull StringBuilder doBuildURL(@Nonnull final StringBuilder builder) {
+    @Nonnull protected StringBuilder doBuildURL(@Nonnull final StringBuilder builder) {
         
         if (getPath() == null) {
             builder.append("/profile/admin/resolvertest");
diff --git a/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/JarCheckCLI.java b/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/JarCheckCLI.java
index 175921a23..a6a7bee32 100644
--- a/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/JarCheckCLI.java
+++ b/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/JarCheckCLI.java
@@ -80,7 +80,7 @@ public final class JarCheckCLI extends AbstractIdPHomeAwareCommandLine<JarCheckA
      * @param webapp folder to start at.
      * @return the list of names as a strung
      */
-    @Nonnull private List<String> listJars(final Path webapp) {
+    @Nonnull private List<String> listJars(@Nonnull final Path webapp) {
         final Path libDir = webapp.resolve("WEB-INF").resolve("lib");
         
         if (!Files.exists(libDir) || !Files.isDirectory(libDir)) {
@@ -100,7 +100,7 @@ public final class JarCheckCLI extends AbstractIdPHomeAwareCommandLine<JarCheckA
     /** Check for the same file in two places.
      * @param args the arguments to check
      */
-    private void listAndExactCheck(final JarCheckArguments args) {
+    private void listAndExactCheck(@Nonnull final JarCheckArguments args) {
         final Map<String, String> allNames = new HashMap<>(distJars.size() + pluginJars.size() + webAppJars.size());
         final String type = "jar called";
 
@@ -127,7 +127,7 @@ public final class JarCheckCLI extends AbstractIdPHomeAwareCommandLine<JarCheckA
      * @param source where the jar came from
      * @param type what we are checking
      */
-    private void addAndCheck(final Map<String, String> allNames, 
+    private void addAndCheck(@Nonnull final Map<String, String> allNames, 
             final List<String> jars, 
             final String source, 
             final String type) {
@@ -143,12 +143,12 @@ public final class JarCheckCLI extends AbstractIdPHomeAwareCommandLine<JarCheckA
     }
 
     /** {@inheritDoc} */
-    protected @Nonnull Class<JarCheckArguments> getArgumentClass() {
+    @Nonnull protected Class<JarCheckArguments> getArgumentClass() {
         return JarCheckArguments.class;
     }
 
     /** {@inheritDoc} */
-    protected @Nonnull String getVersion() {
+    @Nonnull protected String getVersion() {
         final String result = Version.getVersion();
         assert result!=null;
         return result;
@@ -166,7 +166,7 @@ public final class JarCheckCLI extends AbstractIdPHomeAwareCommandLine<JarCheckA
     /** Do a general test.
      * @param args the arguments to check
      */
-    private void fileNamesOnly(final JarCheckArguments args) {
+    private void fileNamesOnly(@Nonnull final JarCheckArguments args) {
         final Map<String, String> allNames = new HashMap<>(distJars.size() + pluginJars.size() + webAppJars.size());
         final String type = "jar fragment called";
 
@@ -196,7 +196,7 @@ public final class JarCheckCLI extends AbstractIdPHomeAwareCommandLine<JarCheckA
     /** Do a detailed check.
      * @param args the arguments to check
      */
-    private void detailed(final JarCheckArguments args) {
+    private void detailed(@Nonnull final JarCheckArguments args) {
         final Map<String, String> allNames = new HashMap<>();
         final Path idpHome = Path.of(args.getIdPHome());
         
@@ -210,7 +210,8 @@ public final class JarCheckCLI extends AbstractIdPHomeAwareCommandLine<JarCheckA
      * @param base The directory where the names live 
      * @param jars The Jar Names
      */
-    private void processClassNames(final Map<String, String> namesSoFar, final Path base, final List<String> jars) {
+    private void processClassNames(@Nonnull final Map<String, String> namesSoFar, @Nonnull final Path base,
+            @Nonnull final List<String> jars) {
         final Path libdir = base.resolve("WEB-INF").resolve("lib");
         for (final String jar: jars) {
             processClassNames(namesSoFar, libdir.resolve(jar));
@@ -221,7 +222,7 @@ public final class JarCheckCLI extends AbstractIdPHomeAwareCommandLine<JarCheckA
      * @param namesSoFar the class names we have found
      * @param jar The far file
      */
-    private void processClassNames(final Map<String, String> namesSoFar, final Path jar) {
+    private void processClassNames(@Nonnull final Map<String, String> namesSoFar, @Nonnull final Path jar) {
         final String source = jar.toString();
         try (final InputStream inStream = new BufferedInputStream(new FileInputStream(jar.toFile()));
              final ArchiveInputStream classes = new ZipArchiveInputStream(inStream)) {
@@ -276,4 +277,4 @@ public final class JarCheckCLI extends AbstractIdPHomeAwareCommandLine<JarCheckA
         System.exit(new JarCheckCLI().run(args));
     }
 
-}
+}
\ No newline at end of file
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 f5b799575..2fee742cb 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
@@ -93,7 +93,7 @@ public class ModuleManagerArguments extends AbstractIdPHomeAwareCommandLineArgum
      * 
      * @return module ID(s) to report on
      */
-    @Nonnull @NonnullElements @NotLive @Unmodifiable public Collection<String> getInfoModuleIds() {
+    @Nonnull @NotLive @Unmodifiable public Collection<String> getInfoModuleIds() {
         return CollectionSupport.copyToList(StringSupport.normalizeStringCollection(infoModuleIds));
     }
 
@@ -102,7 +102,7 @@ public class ModuleManagerArguments extends AbstractIdPHomeAwareCommandLineArgum
      * 
      * @return module ID(s) to test
      */
-    @Nonnull @NonnullElements @NotLive @Unmodifiable public Collection<String> getTestModuleIds() {
+    @Nonnull @NotLive @Unmodifiable public Collection<String> getTestModuleIds() {
         return CollectionSupport.copyToList(StringSupport.normalizeStringCollection(testModuleIds));
     }
 
@@ -111,7 +111,7 @@ public class ModuleManagerArguments extends AbstractIdPHomeAwareCommandLineArgum
      * 
      * @return module ID(s) to enable
      */
-    @Nonnull @NonnullElements @NotLive @Unmodifiable public Collection<String> getEnableModuleIds() {
+    @Nonnull @NotLive @Unmodifiable public Collection<String> getEnableModuleIds() {
         return CollectionSupport.copyToList(StringSupport.normalizeStringCollection(enableModuleIds));
     }
     
@@ -120,7 +120,7 @@ public class ModuleManagerArguments extends AbstractIdPHomeAwareCommandLineArgum
      * 
      * @return module ID(s) to disable
      */
-    @Nonnull @NonnullElements @NotLive @Unmodifiable public Collection<String> getDisableModuleIds() {
+    @Nonnull @NotLive @Unmodifiable public Collection<String> getDisableModuleIds() {
         return CollectionSupport.copyToList(StringSupport.normalizeStringCollection(disableModuleIds));
     }
 
@@ -150,7 +150,7 @@ public class ModuleManagerArguments extends AbstractIdPHomeAwareCommandLineArgum
 
     /** {@inheritDoc} */
     @Override
-    public void printHelp(@Nonnull PrintStream out) {
+    public void printHelp(@Nonnull final PrintStream out) {
         out.println("ModuleManager");
         out.println("Provides a command line interface for IdP Module management operations.");
         out.println();
diff --git a/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/ModuleManagerCLI.java b/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/ModuleManagerCLI.java
index 870776a14..da37d86e0 100644
--- a/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/ModuleManagerCLI.java
+++ b/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/ModuleManagerCLI.java
@@ -47,7 +47,6 @@ import net.shibboleth.profile.module.Module.ModuleResource;
 import net.shibboleth.profile.module.Module.ResourceResult;
 import net.shibboleth.profile.module.ModuleContext;
 import net.shibboleth.profile.module.ModuleException;
-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;
@@ -88,7 +87,7 @@ public final class ModuleManagerCLI extends AbstractIdPHomeAwareCommandLine<Modu
     
     /** {@inheritDoc} */
     @Override
-    @Nonnull @NonnullElements @NotLive @Unmodifiable protected List<Resource> getAdditionalSpringResources() {
+    @Nonnull @NotLive @Unmodifiable protected List<Resource> getAdditionalSpringResources() {
         return CollectionSupport.singletonList(new ClassPathResource("net/shibboleth/idp/conf/http-client.xml"));
     }
     
diff --git a/idp-cli/src/main/java/net/shibboleth/idp/cli/package-info.java b/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/package-info.java
similarity index 81%
copy from idp-cli/src/main/java/net/shibboleth/idp/cli/package-info.java
copy to idp-cli/src/main/java/net/shibboleth/idp/cli/impl/package-info.java
index bcf97bcd6..ab8014cbb 100644
--- a/idp-cli/src/main/java/net/shibboleth/idp/cli/package-info.java
+++ b/idp-cli/src/main/java/net/shibboleth/idp/cli/impl/package-info.java
@@ -16,7 +16,9 @@
  */
 
 /**
- * Command line drivers and utilities.
+ * Implementation classes for command line drivers and utilities.
  */
+ at NonnullElements
+package net.shibboleth.idp.cli.impl;
 
-package net.shibboleth.idp.cli;
\ No newline at end of file
+import net.shibboleth.shared.annotation.constraint.NonnullElements;
diff --git a/idp-cli/src/main/java/net/shibboleth/idp/cli/package-info.java b/idp-cli/src/main/java/net/shibboleth/idp/cli/package-info.java
index bcf97bcd6..a58006a69 100644
--- a/idp-cli/src/main/java/net/shibboleth/idp/cli/package-info.java
+++ b/idp-cli/src/main/java/net/shibboleth/idp/cli/package-info.java
@@ -18,5 +18,7 @@
 /**
  * Command line drivers and utilities.
  */
+ at NonnullElements
+package net.shibboleth.idp.cli;
 
-package net.shibboleth.idp.cli;
\ No newline at end of file
+import net.shibboleth.shared.annotation.constraint.NonnullElements;

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


More information about the commits mailing list