[java-opensaml COMMIT] in /trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl: AbstractM...

noreply at shibboleth.net noreply at shibboleth.net
Fri Sep 27 20:02:22 EDT 2013


Author: putmanb
Date: Fri Sep 27 20:02:21 2013
New Revision: 3456

URL: http://svn.shibboleth.net/view/java-opensaml?rev=3456&view=rev
Log:
Get rid of legacy Base- vs Abstract- MetadataResolver superclasses, collapse into AbstractMetadataResolver.
Seems unnecessary at this point and also violates our current nominal abstract class naming conventions.

Modified:
    trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractMetadataResolver.java
    trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/BaseMetadataResolver.java
    trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ChainingMetadataResolver.java
    trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/CompositeMetadataResolver.java

Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractMetadataResolver.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractMetadataResolver.java?rev=3456&r1=3455&r2=3456&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractMetadataResolver.java (original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractMetadataResolver.java Fri Sep 27 20:02:21 2013
@@ -24,11 +24,13 @@
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
+import java.util.UUID;
 import java.util.concurrent.ConcurrentHashMap;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
+import net.shibboleth.utilities.java.support.component.AbstractDestructableIdentifiableInitializableComponent;
 import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
 import net.shibboleth.utilities.java.support.component.ComponentSupport;
 import net.shibboleth.utilities.java.support.logic.Constraint;
@@ -40,9 +42,13 @@
 
 import org.opensaml.core.criterion.EntityIdCriterion;
 import org.opensaml.core.xml.XMLObject;
+import org.opensaml.core.xml.config.XMLObjectProviderRegistrySupport;
 import org.opensaml.core.xml.io.Unmarshaller;
+import org.opensaml.core.xml.io.UnmarshallerFactory;
 import org.opensaml.core.xml.io.UnmarshallingException;
+import org.opensaml.saml.metadata.resolver.MetadataResolver;
 import org.opensaml.saml.metadata.resolver.filter.FilterException;
+import org.opensaml.saml.metadata.resolver.filter.MetadataFilter;
 import org.opensaml.saml.saml2.common.SAML2Helper;
 import org.opensaml.saml.saml2.metadata.EntitiesDescriptor;
 import org.opensaml.saml.saml2.metadata.EntityDescriptor;
@@ -53,10 +59,20 @@
 import com.google.common.base.Strings;
 
 /** An abstract, base, implementation of a metadata provider. */
-public abstract class AbstractMetadataResolver extends BaseMetadataResolver {
+public abstract class AbstractMetadataResolver extends AbstractDestructableIdentifiableInitializableComponent 
+        implements MetadataResolver {
     
     /** Class logger. */
     private final Logger log = LoggerFactory.getLogger(AbstractMetadataResolver.class);
+    
+    /** Unmarshaller factory used to get an unmarshaller for the metadata DOM. */
+    private UnmarshallerFactory unmarshallerFactory;
+
+    /** Whether metadata is required to be valid. */
+    private boolean requireValidMetadata;
+
+    /** Filter applied to all metadata. */
+    private MetadataFilter mdFilter;
 
     /**
      * Whether problems during initialization should cause the provider to fail or go on without metadata. The
@@ -74,6 +90,88 @@
     public AbstractMetadataResolver() {
         super();
         failFastInitialization = true;
+        unmarshallerFactory = XMLObjectProviderRegistrySupport.getUnmarshallerFactory();
+        setId(UUID.randomUUID().toString());
+    }
+    
+    /** {@inheritDoc} */
+    public boolean isRequireValidMetadata() {
+        return requireValidMetadata;
+    }
+
+    /** {@inheritDoc} */
+    public void setRequireValidMetadata(boolean require) {
+        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+        requireValidMetadata = require;
+    }
+
+    /** {@inheritDoc} */
+    @Nullable  public MetadataFilter getMetadataFilter() {
+        return mdFilter;
+    }
+
+    /** {@inheritDoc} */
+    public void setMetadataFilter(@Nullable MetadataFilter newFilter) {
+        ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
+        ComponentSupport.ifDestroyedThrowDestroyedComponentException(this);
+        mdFilter = newFilter;
+    }
+
+    /**
+     * Gets whether problems during initialization should cause the provider to fail or go on without metadata. The
+     * assumption being that in most cases a provider will recover at some point in the future.
+     * 

[... 226 lines stripped ...]


More information about the commits mailing list