This is an automated email from the ASF dual-hosted git repository.

diru pushed a commit to branch master
in repository 
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-distribution-core.git


The following commit(s) were added to refs/heads/master by this push:
     new 3dbae550 SLING-12783: align DistributionPackageBuilder#createPackage() 
with javadoc (#72)
3dbae550 is described below

commit 3dbae550b47c35aa25cdc1522fbd0de79fd865b9
Author: Dirk Rudolph <[email protected]>
AuthorDate: Thu May 15 12:43:53 2025 +0200

    SLING-12783: align DistributionPackageBuilder#createPackage() with javadoc 
(#72)
    
    * fix: align DistributionPackageBuilder interface with javadoc
    * fix: handle null package where needed
---
 .../monitor/impl/MonitoringDistributionPackageBuilder.java           | 5 +++--
 .../sling/distribution/packaging/DistributionPackageBuilder.java     | 2 +-
 .../packaging/impl/exporter/LocalDistributionPackageExporter.java    | 4 +++-
 3 files changed, 7 insertions(+), 4 deletions(-)

diff --git 
a/src/main/java/org/apache/sling/distribution/monitor/impl/MonitoringDistributionPackageBuilder.java
 
b/src/main/java/org/apache/sling/distribution/monitor/impl/MonitoringDistributionPackageBuilder.java
index 178bc232..967ca09c 100644
--- 
a/src/main/java/org/apache/sling/distribution/monitor/impl/MonitoringDistributionPackageBuilder.java
+++ 
b/src/main/java/org/apache/sling/distribution/monitor/impl/MonitoringDistributionPackageBuilder.java
@@ -33,6 +33,7 @@ import 
org.apache.sling.distribution.packaging.DistributionPackage;
 import org.apache.sling.distribution.packaging.DistributionPackageBuilder;
 import org.apache.sling.distribution.packaging.DistributionPackageInfo;
 import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.ServiceRegistration;
 
@@ -59,12 +60,12 @@ public final class MonitoringDistributionPackageBuilder 
implements DistributionP
         return wrapped.getType();
     }
 
-    @NotNull
+    @Nullable
     @Override
     public DistributionPackage createPackage(@NotNull ResourceResolver 
resourceResolver, @NotNull DistributionRequest request) throws 
DistributionException {
         long start = System.currentTimeMillis();
         DistributionPackage distributionPackage = 
wrapped.createPackage(resourceResolver, request);
-        if (queueCapacity > 0) {
+        if (queueCapacity > 0 && distributionPackage != null) {
             registerDistributionPackageMBean(start, distributionPackage);
         }
         return distributionPackage;
diff --git 
a/src/main/java/org/apache/sling/distribution/packaging/DistributionPackageBuilder.java
 
b/src/main/java/org/apache/sling/distribution/packaging/DistributionPackageBuilder.java
index 2bbb41d6..f9e03b8a 100644
--- 
a/src/main/java/org/apache/sling/distribution/packaging/DistributionPackageBuilder.java
+++ 
b/src/main/java/org/apache/sling/distribution/packaging/DistributionPackageBuilder.java
@@ -46,7 +46,7 @@ public interface DistributionPackageBuilder {
      * @return a {@link DistributionPackage} or <code>null</code> if it could 
not be created
      * @throws org.apache.sling.distribution.common.DistributionException if 
any error occurs while creating the package, or if the resource resolver is not 
authorized to do that
      */
-    @NotNull
+    @Nullable
     DistributionPackage createPackage(@NotNull ResourceResolver 
resourceResolver, @NotNull DistributionRequest request) throws 
DistributionException;
 
     /**
diff --git 
a/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporter.java
 
b/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporter.java
index 996b47bf..c4ab479a 100644
--- 
a/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporter.java
+++ 
b/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporter.java
@@ -44,7 +44,9 @@ public class LocalDistributionPackageExporter implements 
DistributionPackageExpo
         DistributionPackage createdPackage = 
packageBuilder.createPackage(resourceResolver, distributionRequest);
 
         try {
-            packageProcessor.process(createdPackage);
+            if (createdPackage != null) {
+                packageProcessor.process(createdPackage);
+            }
         } finally {
             DistributionPackageUtils.closeSafely(createdPackage);
         }

Reply via email to