[java-shib-attribute] branch main updated: Some null cleanup.

Scott Cantor cantor.2 at osu.edu
Mon Jan 23 13:55:49 UTC 2023


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

scantor pushed a commit to branch main
in repository java-shib-attribute.

View the commit online:
http://git.shibboleth.net/view/?p=java-shib-attribute.git;a=commit;h=460a07c2417aaba8ee7d9efd44930de097c529d8

The following commit(s) were added to refs/heads/main by this push:
     new 460a07c24 Some null cleanup.
460a07c24 is described below

commit 460a07c2417aaba8ee7d9efd44930de097c529d8
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Mon Jan 23 08:55:46 2023 -0500

    Some null cleanup.
---
 .../idp/attribute/AttributesMapContainer.java      | 23 ++++++++++------------
 .../net/shibboleth/idp/attribute/IdPAttribute.java |  8 ++++----
 .../idp/attribute/IdPRequestedAttribute.java       | 19 +++---------------
 .../idp/attribute/XMLObjectAttributeValue.java     |  2 +-
 .../idp/attribute/context/AttributeContext.java    |  9 ++++-----
 .../transcoding/AbstractAttributeTranscoder.java   |  7 +++----
 6 files changed, 25 insertions(+), 43 deletions(-)

diff --git a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/AttributesMapContainer.java b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/AttributesMapContainer.java
index ec22cfa87..b0cd4e3de 100644
--- a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/AttributesMapContainer.java
+++ b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/AttributesMapContainer.java
@@ -18,7 +18,6 @@
 package net.shibboleth.idp.attribute;
 
 import java.util.Collection;
-import java.util.Collections;
 import java.util.List;
 import java.util.function.Supplier;
 import java.util.stream.Collectors;
@@ -31,6 +30,7 @@ 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.logic.Constraint;
 
 /**
  * Container for decoded attributes. This gives us a distinguished class to look for in the
@@ -47,7 +47,7 @@ public final class AttributesMapContainer implements Supplier<Multimap<String,Id
      * @param value the value to return.
      */
     public AttributesMapContainer(@Nonnull @NonnullElements final Multimap<String,IdPAttribute> value) {
-        providedValue = value;
+        providedValue = Constraint.isNotNull(value, "Attribute Map cannot be null");
     }
 
     /** {@inheritDoc} */
@@ -67,17 +67,14 @@ public final class AttributesMapContainer implements Supplier<Multimap<String,Id
     @Nonnull @NonnullElements @NotLive @Unmodifiable public Collection<String> getStringValues(
             @Nonnull @NotEmpty final String id) {
         
-        if (providedValue != null) {
-            return providedValue.get(id)
-                    .stream()
-                    .map(IdPAttribute::getValues)
-                    .flatMap(List::stream)
-                    .filter(StringAttributeValue.class::isInstance)
-                    .map(StringAttributeValue.class::cast)
-                    .map(StringAttributeValue::getValue)
-                    .collect(Collectors.toUnmodifiableList());
-        }
-        return Collections.emptyList();
+        return providedValue.get(id)
+                .stream()
+                .map(IdPAttribute::getValues)
+                .flatMap(List::stream)
+                .filter(StringAttributeValue.class::isInstance)
+                .map(StringAttributeValue.class::cast)
+                .map(StringAttributeValue::getValue)
+                .collect(Collectors.toUnmodifiableList());
     }
     
 }
\ No newline at end of file
diff --git a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/IdPAttribute.java b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/IdPAttribute.java
index 1b2b57b25..55308181b 100644
--- a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/IdPAttribute.java
+++ b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/IdPAttribute.java
@@ -17,7 +17,6 @@
 
 package net.shibboleth.idp.attribute;
 
-import java.util.Collections;
 import java.util.List;
 import java.util.function.Predicate;
 import java.util.regex.Pattern;
@@ -28,7 +27,6 @@ import javax.annotation.Nullable;
 import javax.annotation.concurrent.NotThreadSafe;
 
 import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 import com.google.common.base.MoreObjects;
 import com.google.common.base.Objects;
@@ -40,10 +38,12 @@ import net.shibboleth.shared.annotation.constraint.NotEmpty;
 import net.shibboleth.shared.annotation.constraint.NotLive;
 import net.shibboleth.shared.annotation.constraint.NullableElements;
 import net.shibboleth.shared.annotation.constraint.Unmodifiable;
+import net.shibboleth.shared.collection.CollectionSupport;
 import net.shibboleth.shared.logic.Constraint;
 import net.shibboleth.shared.primitive.DeprecationSupport;
 import net.shibboleth.shared.primitive.StringSupport;
 import net.shibboleth.shared.primitive.DeprecationSupport.ObjectType;
+import net.shibboleth.shared.primitive.LoggerFactory;
 
 /**
  * Each attribute represents one piece of information about a user and has associated encoders used to turn that
@@ -85,7 +85,7 @@ public class IdPAttribute implements Comparable<IdPAttribute>, Cloneable {
             LOG.debug("{} - deprecated character in attribute name", id);
             LOG.trace("Stack", new Exception("Stack Trace, not a thrown exception:"));
         }
-        values = Collections.emptyList();
+        values = CollectionSupport.emptyList();
     }
 
     /** Centralized method to police deprecated Identifiers.
@@ -136,7 +136,7 @@ public class IdPAttribute implements Comparable<IdPAttribute>, Cloneable {
                      map(e -> e==null? new EmptyAttributeValue(EmptyType.NULL_VALUE) :e).
                      collect(Collectors.toUnmodifiableList());
         } else {
-            values = Collections.emptyList();
+            values = CollectionSupport.emptyList();
         }
     }
 
diff --git a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/IdPRequestedAttribute.java b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/IdPRequestedAttribute.java
index 342981d25..672111d68 100644
--- a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/IdPRequestedAttribute.java
+++ b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/IdPRequestedAttribute.java
@@ -17,9 +17,9 @@
 
 package net.shibboleth.idp.attribute;
 
+import javax.annotation.Nonnull;
+
 import net.shibboleth.shared.annotation.ParameterName;
-import net.shibboleth.shared.primitive.DeprecationSupport;
-import net.shibboleth.shared.primitive.DeprecationSupport.ObjectType;
 
 /**
  * IdP Representation of the SAML2 RequestedAttribute.
@@ -34,7 +34,7 @@ public final class IdPRequestedAttribute extends IdPAttribute {
      *
      * @param attributeId the id
      */
-    public IdPRequestedAttribute(final @ParameterName(name="attributeId")  String attributeId) {
+    public IdPRequestedAttribute(@Nonnull final @ParameterName(name="attributeId")  String attributeId) {
         super(attributeId);
     }
 
@@ -48,19 +48,6 @@ public final class IdPRequestedAttribute extends IdPAttribute {
     public boolean isRequired() {
         return isRequired;
     }
-    
-    /**
-     * Is this attribute marked as required?
-     * 
-     * @return the isRequired flag
-     * 
-     * @deprecated remove in V5
-     */
-    @Deprecated(forRemoval=true,since="4.0.0")
-    public boolean getIsRequired() {
-        DeprecationSupport.warn(ObjectType.METHOD, "getIsRequired", getClass().getName(), "isRequired");
-        return isRequired;
-    }
 
     /**
      * Set whether this attribute is to be marked as required.
diff --git a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/XMLObjectAttributeValue.java b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/XMLObjectAttributeValue.java
index b5f32f758..0722772a5 100644
--- a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/XMLObjectAttributeValue.java
+++ b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/XMLObjectAttributeValue.java
@@ -25,13 +25,13 @@ import org.opensaml.core.xml.io.MarshallingException;
 import org.opensaml.core.xml.util.XMLObjectSupport;
 import org.opensaml.saml.saml2.core.NameIDType;
 import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 import com.google.common.base.MoreObjects;
 
 import net.shibboleth.shared.annotation.ParameterName;
 import net.shibboleth.shared.annotation.constraint.NotEmpty;
 import net.shibboleth.shared.logic.Constraint;
+import net.shibboleth.shared.primitive.LoggerFactory;
 import net.shibboleth.shared.xml.SerializeSupport;
 
 /** A {@link XMLObjectAttributeValue} value for an {@link net.shibboleth.idp.attribute.IdPAttribute}. */
diff --git a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/context/AttributeContext.java b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/context/AttributeContext.java
index 70b523860..00fa841bb 100644
--- a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/context/AttributeContext.java
+++ b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/context/AttributeContext.java
@@ -18,7 +18,6 @@
 package net.shibboleth.idp.attribute.context;
 
 import java.util.Collection;
-import java.util.Collections;
 import java.util.Map;
 import java.util.stream.Collectors;
 
@@ -52,8 +51,8 @@ public final class AttributeContext extends BaseContext {
     
     /** Constructor. */
     public AttributeContext() {
-        unfilteredAttributes = Collections.emptyMap();
-        attributes = Collections.emptyMap();
+        unfilteredAttributes = CollectionSupport.emptyMap();
+        attributes = CollectionSupport.emptyMap();
     }
 
     /**
@@ -82,7 +81,7 @@ public final class AttributeContext extends BaseContext {
                             a -> a,
                             CollectionSupport.warningMergeFunction("AttrtibuteContext", true)));
         } else {
-            attributes = Collections.emptyMap();
+            attributes = CollectionSupport.emptyMap();
         }
         
         return this;
@@ -114,7 +113,7 @@ public final class AttributeContext extends BaseContext {
                             a -> a,
                             CollectionSupport.warningMergeFunction("AttrtibuteContextUnfiltered", true)));
         } else {
-            unfilteredAttributes = Collections.emptyMap();
+            unfilteredAttributes = CollectionSupport.emptyMap();
         }
         
         return this;
diff --git a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/transcoding/AbstractAttributeTranscoder.java b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/transcoding/AbstractAttributeTranscoder.java
index 9ff31e44d..bc19c7f52 100644
--- a/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/transcoding/AbstractAttributeTranscoder.java
+++ b/shib-attribute-api/src/main/java/net/shibboleth/idp/attribute/transcoding/AbstractAttributeTranscoder.java
@@ -24,15 +24,14 @@ import javax.annotation.Nullable;
 
 import org.opensaml.profile.context.ProfileRequestContext;
 import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import com.google.common.base.Predicates;
 
 import net.shibboleth.idp.attribute.AttributeDecodingException;
 import net.shibboleth.idp.attribute.AttributeEncodingException;
 import net.shibboleth.idp.attribute.IdPAttribute;
 import net.shibboleth.shared.component.AbstractInitializableComponent;
 import net.shibboleth.shared.logic.Constraint;
+import net.shibboleth.shared.logic.PredicateSupport;
+import net.shibboleth.shared.primitive.LoggerFactory;
 
 /**
  * Base class for transcoders.
@@ -50,7 +49,7 @@ public abstract class AbstractAttributeTranscoder<T> extends AbstractInitializab
     
     /** Constructor. */
     public AbstractAttributeTranscoder() {
-        activationCondition = Predicates.alwaysTrue();
+        activationCondition = PredicateSupport.alwaysTrue();
     }
     
     /**

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


More information about the commits mailing list