[java-opensaml] branch main updated: Add back destroy methods "for now", pending further testing.

Scott Cantor cantor.2 at osu.edu
Mon Apr 10 22:50:50 UTC 2023


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

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

View the commit online:
http://git.shibboleth.net/view/?p=java-opensaml.git;a=commit;h=2ba0bede85d631ea410dbf4e82978ac20efc62a6

The following commit(s) were added to refs/heads/main by this push:
     new 2ba0bede8 Add back destroy methods "for now", pending further testing.
2ba0bede8 is described below

commit 2ba0bede85d631ea410dbf4e82978ac20efc62a6
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Mon Apr 10 18:50:47 2023 -0400

    Add back destroy methods "for now", pending further testing.
---
 .../impl/AbstractDynamicHTTPMetadataResolver.java   | 13 +++++++++++++
 .../resolver/impl/AbstractMetadataResolver.java     | 12 ++++++++++++
 .../impl/AbstractReloadingMetadataResolver.java     |  8 ++++++++
 .../impl/FileBackedHTTPMetadataResolver.java        |  8 ++++++++
 .../resolver/impl/FilesystemMetadataResolver.java   |  8 ++++++++
 .../resolver/impl/HTTPMetadataResolver.java         | 14 +++++++++++++-
 .../impl/ResourceBackedMetadataResolver.java        | 21 +++++++++++++--------
 7 files changed, 75 insertions(+), 9 deletions(-)

diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java
index 8870cb9d6..a3b330eff 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractDynamicHTTPMetadataResolver.java
@@ -239,6 +239,19 @@ public abstract class AbstractDynamicHTTPMetadataResolver extends AbstractDynami
         log.debug("{} Supported content types are: {}", getLogPrefix(), getSupportedContentTypes());
     }
     
+   /** {@inheritDoc} */
+    @Override
+    protected void doDestroy() {
+        httpClient = null;
+        httpClientSecurityParameters = null;
+        
+        supportedContentTypes = null;
+        supportedContentTypesValue = null;
+        supportedMediaTypes = null;
+        
+        super.doDestroy();
+    }
+    
     /** {@inheritDoc} */
     @Override
     @Nullable protected XMLObject fetchFromOriginSource(@Nullable final CriteriaSet criteria) 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractMetadataResolver.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractMetadataResolver.java
index 92a6ac8ca..69bc22b47 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractMetadataResolver.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractMetadataResolver.java
@@ -341,6 +341,18 @@ public abstract class AbstractMetadataResolver extends AbstractIdentifiableIniti
         }
     }
 
+    /** {@inheritDoc} */
+    @Override protected void doDestroy() {
+        unmarshallerFactory = null;
+        mdFilter = null;
+        entityBackingStore = null;
+        parser = null;
+        criterionPredicateRegistry = null;
+        activationCondition = null;
+
+        super.doDestroy();
+    }
+
     /**
      * Subclasses should override this method to perform any initialization logic necessary. Default implementation is a
      * no-op.
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractReloadingMetadataResolver.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractReloadingMetadataResolver.java
index b58567aea..2abb664f5 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractReloadingMetadataResolver.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/AbstractReloadingMetadataResolver.java
@@ -302,6 +302,14 @@ public abstract class AbstractReloadingMetadataResolver extends AbstractBatchMet
             taskTimer.cancel();
         }
         
+        expirationTime = null;
+        lastRefresh = null;
+        lastUpdate = null;
+        nextRefresh = null;
+        wasLastRefreshSuccess = null;
+        lastSuccessfulRefresh = null;
+        lastFailureCause = null;
+        
         super.doDestroy();
     }
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/FileBackedHTTPMetadataResolver.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/FileBackedHTTPMetadataResolver.java
index 45285b845..4a9948d2e 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/FileBackedHTTPMetadataResolver.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/FileBackedHTTPMetadataResolver.java
@@ -178,6 +178,14 @@ public class FileBackedHTTPMetadataResolver extends HTTPMetadataResolver {
         backupFileInitNextRefreshDelay = delay;
     }
 
+    /** {@inheritDoc} */
+    @Override
+    protected void doDestroy() {
+        metadataBackupFile = null;
+
+        super.doDestroy();
+    }
+
     /** {@inheritDoc} */
     @Override
     protected void initMetadataResolver() throws ComponentInitializationException {
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/FilesystemMetadataResolver.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/FilesystemMetadataResolver.java
index 3ddb9cb60..12a3c878a 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/FilesystemMetadataResolver.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/FilesystemMetadataResolver.java
@@ -92,6 +92,14 @@ public class FilesystemMetadataResolver extends AbstractReloadingMetadataResolve
 
         metadataFile = Constraint.isNotNull(file, "Metadata file cannot be null");
     }
+
+    /** {@inheritDoc} */
+    @Override
+    protected void doDestroy() {
+        metadataFile = null;
+          
+        super.doDestroy();
+    }
     
     /** {@inheritDoc} */
     @Override
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/HTTPMetadataResolver.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/HTTPMetadataResolver.java
index f3e39108f..1e425f6a4 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/HTTPMetadataResolver.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/HTTPMetadataResolver.java
@@ -173,7 +173,19 @@ public class HTTPMetadataResolver extends AbstractReloadingMetadataResolver {
 
     /** {@inheritDoc} */
     @Override
-    @Nonnull protected String getMetadataIdentifier() {
+    protected void doDestroy() {
+        httpClient = null;
+        httpClientSecurityParameters = null;
+        metadataURI = null;
+        cachedMetadataETag = null;
+        cachedMetadataLastModified = null;
+
+        super.doDestroy();
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    protected String getMetadataIdentifier() {
         return metadataURI.toString();
     }
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ResourceBackedMetadataResolver.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ResourceBackedMetadataResolver.java
index dfbcfadef..94298edcd 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ResourceBackedMetadataResolver.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/impl/ResourceBackedMetadataResolver.java
@@ -21,10 +21,13 @@ import java.io.IOException;
 import java.time.Instant;
 import java.util.Timer;
 
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+
 import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 import net.shibboleth.shared.annotation.ParameterName;
+import net.shibboleth.shared.primitive.LoggerFactory;
 import net.shibboleth.shared.resolver.ResolverException;
 import net.shibboleth.shared.resource.Resource;
 
@@ -36,10 +39,10 @@ import net.shibboleth.shared.resource.Resource;
 public class ResourceBackedMetadataResolver extends AbstractReloadingMetadataResolver {
 
     /** Class logger. */
-    private final Logger log = LoggerFactory.getLogger(ResourceBackedMetadataResolver.class);
+    @Nonnull private final Logger log = LoggerFactory.getLogger(ResourceBackedMetadataResolver.class);
 
     /** Resource from which metadata is read. */
-    private Resource metadataResource;
+    @Nonnull private Resource metadataResource;
 
     /**
      * Constructor.
@@ -49,8 +52,8 @@ public class ResourceBackedMetadataResolver extends AbstractReloadingMetadataRes
      * 
      * @throws IOException thrown if there is a problem retrieving information about the resource
      */
-    public ResourceBackedMetadataResolver(@ParameterName(name="timer") final Timer timer,
-            @ParameterName(name="resource") final Resource resource) throws IOException {
+    public ResourceBackedMetadataResolver(@ParameterName(name="timer") @Nullable final Timer timer,
+            @ParameterName(name="resource") @Nonnull final Resource resource) throws IOException {
         super(timer);
 
         if (!resource.exists()) {
@@ -66,7 +69,8 @@ public class ResourceBackedMetadataResolver extends AbstractReloadingMetadataRes
      * 
      * @throws IOException thrown if there is a problem retrieving information about the resource
      */
-    public ResourceBackedMetadataResolver(@ParameterName(name="resource") final Resource resource) throws IOException {
+    public ResourceBackedMetadataResolver(@ParameterName(name="resource") @Nonnull final Resource resource)
+            throws IOException {
 
         if (!resource.exists()) {
             throw new IOException("Resource " + resource.getDescription() + " does not exist.");
@@ -84,13 +88,13 @@ public class ResourceBackedMetadataResolver extends AbstractReloadingMetadataRes
     
     /** {@inheritDoc} */
     @Override
-    protected String getMetadataIdentifier() {
+    @Nonnull protected String getMetadataIdentifier() {
         return metadataResource.getDescription();
     }
 
     /** {@inheritDoc} */
     @Override
-    protected byte[] fetchMetadata() throws ResolverException {
+    @Nullable protected byte[] fetchMetadata() throws ResolverException {
         try {
             final Instant metadataUpdateTime = Instant.ofEpochMilli(metadataResource.lastModified());
             log.debug("{} Resource {} was last modified {}", 
@@ -106,4 +110,5 @@ public class ResourceBackedMetadataResolver extends AbstractReloadingMetadataRes
             throw new ResolverException(errorMsg, e);
         }
     }
+    
 }
\ No newline at end of file

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


More information about the commits mailing list