Author: tommaso
Date: Wed May  4 14:38:50 2016
New Revision: 1742293

URL: http://svn.apache.org/viewvc?rev=1742293&view=rev
Log:
SLING-5711 - adjust wrong / misleading javadocs

Modified:
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/DistributionAgent.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/PrivilegeDistributionRequestAuthorizationStrategy.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/PrivilegeDistributionRequestAuthorizationStrategyFactory.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/QueueDistributionAgentFactory.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/ReverseDistributionAgentFactory.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgent.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgentFactory.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SyncDistributionAgentFactory.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/common/RecoverableDistributionException.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionComponentProvider.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporter.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterFactory.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporter.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporterFactory.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/RemoteDistributionPackageExporter.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/RemoteDistributionPackageExporterFactory.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/LocalDistributionPackageImporterFactory.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RemoteDistributionPackageImporter.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RemoteDistributionPackageImporterFactory.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RepositoryDistributionPackageImporterFactory.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/serialization/impl/FileDistributionPackage.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentServlet.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/DistributionPackageImporterServlet.java
    
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/ServletJsonUtils.java

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/DistributionAgent.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/DistributionAgent.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/DistributionAgent.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/DistributionAgent.java
 Wed May  4 14:38:50 2016
@@ -57,7 +57,6 @@ public interface DistributionAgent {
     @CheckForNull
     DistributionQueue getQueue(@Nonnull String name);
 
-
     /**
      * Get the agent log
      * @return the log for this agent
@@ -65,7 +64,6 @@ public interface DistributionAgent {
     @Nonnull
     DistributionLog getLog();
 
-
     /**
      * returns the state of the agent
      * @return the agent state

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java
 Wed May  4 14:38:50 2016
@@ -36,6 +36,7 @@ import org.apache.felix.scr.annotations.
 import org.apache.jackrabbit.vault.packaging.Packaging;
 import org.apache.sling.api.resource.ResourceResolverFactory;
 import org.apache.sling.commons.osgi.PropertiesUtil;
+import org.apache.sling.commons.scheduler.Scheduler;
 import org.apache.sling.distribution.DistributionRequestType;
 import 
org.apache.sling.distribution.component.impl.DistributionComponentConstants;
 import org.apache.sling.distribution.component.impl.SettingsUtils;
@@ -43,6 +44,7 @@ import org.apache.sling.distribution.eve
 import org.apache.sling.distribution.log.impl.DefaultDistributionLog;
 import org.apache.sling.distribution.packaging.DistributionPackageExporter;
 import org.apache.sling.distribution.packaging.DistributionPackageImporter;
+import 
org.apache.sling.distribution.packaging.impl.exporter.AsyncTransportDistributionPackageExporter;
 import 
org.apache.sling.distribution.packaging.impl.exporter.LocalDistributionPackageExporter;
 import 
org.apache.sling.distribution.packaging.impl.importer.RemoteDistributionPackageImporter;
 import org.apache.sling.distribution.queue.DistributionQueueProvider;
@@ -62,7 +64,9 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * An OSGi service factory for {@link 
org.apache.sling.distribution.agent.DistributionAgent}s which references 
already existing OSGi services.
+ * An OSGi service factory for "forward agents" that push resources from the 
local instance to remote instances.
+ *
+ * @see {@link org.apache.sling.distribution.agent.DistributionAgent}
  */
 @Component(metatype = true,
         label = "Apache Sling Distribution Agent - Forward Agents Factory",
@@ -111,6 +115,9 @@ public class ForwardDistributionAgentFac
     @Property(boolValue = true, label = "Queue Processing Enabled", 
description = "Whether or not the distribution agent should process packages in 
the queues.")
     private static final String QUEUE_PROCESSING_ENABLED = 
"queue.processing.enabled";
 
+    @Property(boolValue = true, label = "Asynchronous Transport Enabled", 
description = "Whether or not the distribution agent should deliver the package 
immediately after creation.")
+    private static final String ASYNC_TRANSPORT = "transport.async";
+
 
     /**
      * endpoints property
@@ -179,6 +186,8 @@ public class ForwardDistributionAgentFac
     @Reference
     private SlingRepository slingRepository;
 
+    @Reference
+    private Scheduler scheduler;
 
     @Activate
     protected void activate(BundleContext context, Map<String, Object> config) 
{
@@ -214,13 +223,13 @@ public class ForwardDistributionAgentFac
         priorityQueues = SettingsUtils.removeEmptyEntries(priorityQueues);
 
 
-        DistributionPackageExporter packageExporter = new 
LocalDistributionPackageExporter(packageBuilder);
+
         DistributionQueueProvider queueProvider = new 
JobHandlingDistributionQueueProvider(agentName, jobManager, context);
 
         DistributionQueueDispatchingStrategy exportQueueStrategy;
         DistributionQueueDispatchingStrategy errorQueueStrategy = null;
 
-        DistributionPackageImporter packageImporter = null;
+        RemoteDistributionPackageImporter packageImporter = null;
         Map<String, String> importerEndpointsMap = 
SettingsUtils.toUriMap(config.get(IMPORTER_ENDPOINTS));
         Set<String> processingQueues = new HashSet<String>();
 
@@ -243,6 +252,14 @@ public class ForwardDistributionAgentFac
 
         packageImporter = new 
RemoteDistributionPackageImporter(distributionLog, transportSecretProvider, 
importerEndpointsMap);
 
+        boolean asyncTransport = 
PropertiesUtil.toBoolean(config.get(ASYNC_TRANSPORT), false);
+        DistributionPackageExporter packageExporter;
+        if (asyncTransport) {
+            packageExporter = new 
AsyncTransportDistributionPackageExporter(scheduler, packageBuilder, 
packageImporter);
+        } else {
+            packageExporter = new 
LocalDistributionPackageExporter(packageBuilder);
+        }
+
         DistributionRequestType[] allowedRequests = new 
DistributionRequestType[]{DistributionRequestType.ADD, 
DistributionRequestType.DELETE};
 
         String retryStrategy = 
SettingsUtils.removeEmptyEntry(PropertiesUtil.toString(config.get(RETRY_STRATEGY),
 null));

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/PrivilegeDistributionRequestAuthorizationStrategy.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/PrivilegeDistributionRequestAuthorizationStrategy.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/PrivilegeDistributionRequestAuthorizationStrategy.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/PrivilegeDistributionRequestAuthorizationStrategy.java
 Wed May  4 14:38:50 2016
@@ -30,6 +30,9 @@ import org.apache.sling.distribution.Dis
 import org.apache.sling.distribution.DistributionRequestType;
 import org.apache.sling.distribution.common.DistributionException;
 
+/**
+ * {@link DistributionRequestAuthorizationStrategy} based on JCR privileges 
over a certain {@link Session}
+ */
 public class PrivilegeDistributionRequestAuthorizationStrategy implements 
DistributionRequestAuthorizationStrategy {
 
     private final String jcrPrivilege;

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/PrivilegeDistributionRequestAuthorizationStrategyFactory.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/PrivilegeDistributionRequestAuthorizationStrategyFactory.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/PrivilegeDistributionRequestAuthorizationStrategyFactory.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/PrivilegeDistributionRequestAuthorizationStrategyFactory.java
 Wed May  4 14:38:50 2016
@@ -33,6 +33,9 @@ import org.apache.sling.distribution.com
 import org.apache.sling.distribution.common.DistributionException;
 import org.osgi.framework.BundleContext;
 
+/**
+ * OSGi configuration factory for {@link 
PrivilegeDistributionRequestAuthorizationStrategy}
+ */
 @Component(metatype = true,
         label = "Apache Sling Distribution Request Authorization - Privilege 
Request Authorization Strategy",
         description = "OSGi configuration for request based authorization 
strategy based on privileges",

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/QueueDistributionAgentFactory.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/QueueDistributionAgentFactory.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/QueueDistributionAgentFactory.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/QueueDistributionAgentFactory.java
 Wed May  4 14:38:50 2016
@@ -54,7 +54,10 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * An OSGi service factory for {@link 
org.apache.sling.distribution.agent.DistributionAgent}s which references 
already existing OSGi services.
+ * An OSGi service factory for "queuing agents" that queue resources from the 
local instance (and can be eventually
+ * pulled from another remote "reverse agent").
+ *
+ * @see {@link org.apache.sling.distribution.agent.DistributionAgent}
  */
 @Component(metatype = true,
         label = "Apache Sling Distribution Agent - Queue Agents Factory",

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/ReverseDistributionAgentFactory.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/ReverseDistributionAgentFactory.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/ReverseDistributionAgentFactory.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/ReverseDistributionAgentFactory.java
 Wed May  4 14:38:50 2016
@@ -58,7 +58,9 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * An OSGi service factory for {@link 
org.apache.sling.distribution.agent.DistributionAgent}s which references 
already existing OSGi services.
+ * An OSGi service factory for "reverse agents" that pull resources from 
remote instances (e.g. from "queueing agents").
+ *
+ * @see {@link org.apache.sling.distribution.agent.DistributionAgent}
  */
 @Component(metatype = true,
         label = "Apache Sling Distribution Agent - Reverse Agents Factory",

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgent.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgent.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgent.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgent.java
 Wed May  4 14:38:50 2016
@@ -85,29 +85,26 @@ public class SimpleDistributionAgent imp
     private final static String DEFAULT_AGENT_SERVICE = "defaultAgentService";
 
     private final DistributionQueueProvider queueProvider;
-
-    private final boolean queueProcessingEnabled;
     private final DistributionPackageImporter distributionPackageImporter;
     private final DistributionPackageExporter distributionPackageExporter;
-
     private final DistributionQueueDispatchingStrategy scheduleQueueStrategy;
     private final DistributionQueueDispatchingStrategy errorQueueStrategy;
-
+    private final DistributionRequestAuthorizationStrategy 
distributionRequestAuthorizationStrategy;
+    private final DefaultDistributionLog log;
     private final DistributionEventFactory distributionEventFactory;
+    private AgentBasedRequestHandler agentBasedRequestHandler;
 
-    private final String name;
-
-    private final DistributionRequestAuthorizationStrategy 
distributionRequestAuthorizationStrategy;
+    private final SlingRepository slingRepository;
     private final ResourceResolverFactory resourceResolverFactory;
+
+    private final String name;
+    private final boolean queueProcessingEnabled;
+    private final DistributionRequestType[] allowedRequests;
     private final String subServiceName;
-    private AgentBasedRequestHandler agentBasedRequestHandler;
     private boolean active = false;
     private final Set<String> processingQueues;
     private final int retryAttempts;
     private final boolean impersonateUser;
-    private final SlingRepository slingRepository;
-    private final DefaultDistributionLog log;
-    private final DistributionRequestType[] allowedRequests;
     private final String[] allowedRoots;
     private final AtomicInteger nextRequestId = new AtomicInteger();
 
@@ -134,6 +131,24 @@ public class SimpleDistributionAgent imp
         this.processingQueues = processingQueues;
         this.retryAttempts = retryAttempts;
 
+        validateConfiguration(name, queueProcessingEnabled, subServiceName, 
distributionPackageImporter, distributionPackageExporter, 
distributionRequestAuthorizationStrategy, queueProvider, scheduleQueueStrategy, 
distributionEventFactory, resourceResolverFactory);
+
+        this.allowedRoots = SettingsUtils.removeEmptyEntries(allowedRoots);
+        this.subServiceName = SettingsUtils.removeEmptyEntry(subServiceName);
+        this.impersonateUser = this.subServiceName == null;
+        this.distributionRequestAuthorizationStrategy = 
distributionRequestAuthorizationStrategy;
+        this.resourceResolverFactory = resourceResolverFactory;
+        this.name = SettingsUtils.removeEmptyEntry(name);
+        this.queueProcessingEnabled = queueProcessingEnabled;
+        this.distributionPackageImporter = distributionPackageImporter;
+        this.distributionPackageExporter = distributionPackageExporter;
+        this.queueProvider = queueProvider;
+        this.scheduleQueueStrategy = scheduleQueueStrategy;
+        this.errorQueueStrategy = errorQueueStrategy;
+        this.distributionEventFactory = distributionEventFactory;
+    }
+
+    private void validateConfiguration(String name, boolean 
queueProcessingEnabled, String subServiceName, DistributionPackageImporter 
distributionPackageImporter, DistributionPackageExporter 
distributionPackageExporter, DistributionRequestAuthorizationStrategy 
distributionRequestAuthorizationStrategy, DistributionQueueProvider 
queueProvider, DistributionQueueDispatchingStrategy scheduleQueueStrategy, 
DistributionEventFactory distributionEventFactory, ResourceResolverFactory 
resourceResolverFactory) {
         // check configuration is valid
         if (name == null
                 || (queueProcessingEnabled && distributionPackageImporter == 
null)
@@ -155,20 +170,6 @@ public class SimpleDistributionAgent imp
                     resourceResolverFactory});
             throw new IllegalArgumentException("all arguments are required: " 
+ errorMessage);
         }
-
-        this.allowedRoots = SettingsUtils.removeEmptyEntries(allowedRoots);
-        this.subServiceName = SettingsUtils.removeEmptyEntry(subServiceName);
-        this.impersonateUser = this.subServiceName == null;
-        this.distributionRequestAuthorizationStrategy = 
distributionRequestAuthorizationStrategy;
-        this.resourceResolverFactory = resourceResolverFactory;
-        this.name = SettingsUtils.removeEmptyEntry(name);
-        this.queueProcessingEnabled = queueProcessingEnabled;
-        this.distributionPackageImporter = distributionPackageImporter;
-        this.distributionPackageExporter = distributionPackageExporter;
-        this.queueProvider = queueProvider;
-        this.scheduleQueueStrategy = scheduleQueueStrategy;
-        this.errorQueueStrategy = errorQueueStrategy;
-        this.distributionEventFactory = distributionEventFactory;
     }
 
     @Nonnull
@@ -223,7 +224,6 @@ public class SimpleDistributionAgent imp
         } finally {
             ungetAgentResourceResolver(agentResourceResolver);
         }
-
     }
 
     private boolean isPassive() {

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgentFactory.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgentFactory.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgentFactory.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SimpleDistributionAgentFactory.java
 Wed May  4 14:38:50 2016
@@ -169,7 +169,6 @@ public class SimpleDistributionAgentFact
         Set<String> processingQueues = new HashSet<String>();
         processingQueues.addAll(exportQueueStrategy.getQueueNames());
 
-
         return new SimpleDistributionAgent(agentName, queueProcessingEnabled, 
processingQueues,
                 serviceName, packageImporter, packageExporter, 
requestAuthorizationStrategy,
                 queueProvider, exportQueueStrategy, importQueueStrategy, 
distributionEventFactory, resourceResolverFactory, slingRepository,

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SyncDistributionAgentFactory.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SyncDistributionAgentFactory.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SyncDistributionAgentFactory.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/agent/impl/SyncDistributionAgentFactory.java
 Wed May  4 14:38:50 2016
@@ -61,7 +61,9 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * An OSGi service factory for {@link 
org.apache.sling.distribution.agent.DistributionAgent}s which references 
already existing OSGi services.
+ * An OSGi service factory for "synchronizing agents" that synchronize (pull 
and push) resources between remote instances.
+ *
+ * @see {@link org.apache.sling.distribution.agent.DistributionAgent}
  */
 @Component(metatype = true,
         label = "Apache Sling Distribution Agent - Sync Agents Factory",

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/common/RecoverableDistributionException.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/common/RecoverableDistributionException.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/common/RecoverableDistributionException.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/common/RecoverableDistributionException.java
 Wed May  4 14:38:50 2016
@@ -20,7 +20,7 @@
 package org.apache.sling.distribution.common;
 
 /**
- * Generic checked exception for distribution
+ * Recoverable checked exception for distribution
  */
 public class RecoverableDistributionException extends DistributionException {
     public RecoverableDistributionException(Throwable e) {

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionComponentProvider.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionComponentProvider.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionComponentProvider.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/component/impl/DefaultDistributionComponentProvider.java
 Wed May  4 14:38:50 2016
@@ -42,6 +42,9 @@ import org.osgi.framework.BundleContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+/**
+ * {@link DistributionComponentProvider} OSGi service.
+ */
 @Component
 @Property(name = "name", value = "default")
 @References({

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporter.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporter.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporter.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporter.java
 Wed May  4 14:38:50 2016
@@ -42,6 +42,10 @@ import org.apache.sling.distribution.ser
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+/**
+ * a {@link DistributionPackageExporter} that picks {@link 
DistributionPackage} from a specific {@link DistributionAgent}'s
+ * queue.
+ */
 public class AgentDistributionPackageExporter implements 
DistributionPackageExporter {
     private final Logger log = LoggerFactory.getLogger(getClass());
     private final DistributionPackageBuilderProvider packageBuilderProvider;

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterFactory.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterFactory.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterFactory.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/AgentDistributionPackageExporterFactory.java
 Wed May  4 14:38:50 2016
@@ -41,6 +41,9 @@ import org.apache.sling.distribution.ser
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+/**
+ * OSGi configuration factory for {@link AgentDistributionPackageExporter}s
+ */
 @Component(label = "Apache Sling Distribution Exporter - Agent Based Package 
Exporter",
         metatype = true,
         configurationFactory = true,

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporter.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporter.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporter.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporter.java
 Wed May  4 14:38:50 2016
@@ -30,7 +30,7 @@ import org.apache.sling.distribution.pac
 import org.apache.sling.distribution.serialization.DistributionPackageBuilder;
 
 /**
- * {@link org.apache.sling.distribution.packaging.DistributionPackageExporter} 
implementation which creates a FileVault based
+ * {@link org.apache.sling.distribution.packaging.DistributionPackageExporter} 
implementation which creates a
  * {@link DistributionPackage} locally.
  */
 public class LocalDistributionPackageExporter implements 
DistributionPackageExporter {
@@ -42,7 +42,6 @@ public class LocalDistributionPackageExp
     }
 
     public void exportPackages(@Nonnull ResourceResolver resourceResolver, 
@Nonnull DistributionRequest distributionRequest, @Nonnull 
DistributionPackageProcessor packageProcessor) throws DistributionException {
-
         DistributionPackage createdPackage = 
packageBuilder.createPackage(resourceResolver, distributionRequest);
 
         try {
@@ -50,7 +49,6 @@ public class LocalDistributionPackageExp
         } finally {
             DistributionPackageUtils.closeSafely(createdPackage);
         }
-
     }
 
     public DistributionPackage getPackage(@Nonnull ResourceResolver 
resourceResolver, @Nonnull String distributionPackageId) throws 
DistributionException {

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporterFactory.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporterFactory.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporterFactory.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/LocalDistributionPackageExporterFactory.java
 Wed May  4 14:38:50 2016
@@ -39,8 +39,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * {@link org.apache.sling.distribution.packaging.DistributionPackageExporter} 
implementation which creates a FileVault based
- * {@link DistributionPackage} locally.
+ * OSGi configuration factory for {@link LocalDistributionPackageExporter}s.
  */
 @Component(label = "Apache Sling Distribution Exporter - Local Package 
Exporter Factory",
         metatype = true,

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/RemoteDistributionPackageExporter.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/RemoteDistributionPackageExporter.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/RemoteDistributionPackageExporter.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/RemoteDistributionPackageExporter.java
 Wed May  4 14:38:50 2016
@@ -64,7 +64,6 @@ public class RemoteDistributionPackageEx
             throw new 
IllegalArgumentException("distributionTransportSecretProvider is required");
         }
 
-
         this.packageBuilder = packageBuilder;
 
         for (String endpoint : endpoints) {
@@ -82,7 +81,6 @@ public class RemoteDistributionPackageEx
             RemoteDistributionPackage retrievedPackage;
             while (noPackages < maxNumberOfPackages && ((retrievedPackage = 
distributionTransport.retrievePackage(resourceResolver, distributionRequest, 
distributionContext)) != null)) {
 
-
                 DistributionPackage distributionPackage = 
retrievedPackage.getPackage();
 
                 try {

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/RemoteDistributionPackageExporterFactory.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/RemoteDistributionPackageExporterFactory.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/RemoteDistributionPackageExporterFactory.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/exporter/RemoteDistributionPackageExporterFactory.java
 Wed May  4 14:38:50 2016
@@ -45,7 +45,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * Default implementation of {@link 
org.apache.sling.distribution.packaging.DistributionPackageExporter}
+ * OSGi configuration factory for {@link RemoteDistributionPackageExporter}s.
  */
 @Component(label = "Apache Sling Distribution Exporter - Remote Package 
Exporter Factory",
         metatype = true,

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/LocalDistributionPackageImporterFactory.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/LocalDistributionPackageImporterFactory.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/LocalDistributionPackageImporterFactory.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/LocalDistributionPackageImporterFactory.java
 Wed May  4 14:38:50 2016
@@ -44,8 +44,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * {@link org.apache.sling.distribution.packaging.DistributionPackageImporter} 
implementation which imports a FileVault
- * based {@link DistributionPackage} locally.
+ * OSGi configuration factory for {@link LocalDistributionPackageImporter}s.
  */
 @Component(label = "Apache Sling Distribution Importer - Local Package 
Importer Factory",
         metatype = true,

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RemoteDistributionPackageImporter.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RemoteDistributionPackageImporter.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RemoteDistributionPackageImporter.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RemoteDistributionPackageImporter.java
 Wed May  4 14:38:50 2016
@@ -41,12 +41,9 @@ import org.apache.sling.distribution.tra
  */
 public class RemoteDistributionPackageImporter implements 
DistributionPackageImporter {
 
-
     private final Map<String, DistributionTransport> transportHandlers = new 
HashMap<String, DistributionTransport>();
     private final DistributionTransportContext distributionContext = new 
DistributionTransportContext();
 
-
-
     public RemoteDistributionPackageImporter(DefaultDistributionLog log, 
DistributionTransportSecretProvider distributionTransportSecretProvider,
                                              Map<String, String> endpointsMap) 
{
         if (distributionTransportSecretProvider == null) {

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RemoteDistributionPackageImporterFactory.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RemoteDistributionPackageImporterFactory.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RemoteDistributionPackageImporterFactory.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RemoteDistributionPackageImporterFactory.java
 Wed May  4 14:38:50 2016
@@ -43,7 +43,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * Remote implementation of {@link 
org.apache.sling.distribution.packaging.DistributionPackageImporter}
+ * OSGi configuration factory for {@link RemoteDistributionPackageImporter}s.
  */
 @Component(label = "Apache Sling Distribution Importer - Remote Package 
Importer Factory",
         metatype = true,

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RepositoryDistributionPackageImporterFactory.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RepositoryDistributionPackageImporterFactory.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RepositoryDistributionPackageImporterFactory.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/packaging/impl/importer/RepositoryDistributionPackageImporterFactory.java
 Wed May  4 14:38:50 2016
@@ -40,7 +40,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 /**
- * Factory for {@link 
org.apache.sling.distribution.packaging.impl.importer.RepositoryDistributionPackageImporter}s
+ * OSGi configuration factory for {@link 
RepositoryDistributionPackageImporter}s.
  */
 @Component(label = "Apache Sling Distribution Importer - Repository Package 
Importer Factory",
         metatype = true,

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/serialization/impl/FileDistributionPackage.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/serialization/impl/FileDistributionPackage.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/serialization/impl/FileDistributionPackage.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/serialization/impl/FileDistributionPackage.java
 Wed May  4 14:38:50 2016
@@ -76,7 +76,6 @@ public class FileDistributionPackage ext
     public void acquire(@Nonnull String[] holderNames) {
         try {
             DistributionPackageUtils.acquire(getStatusFile(), holderNames);
-
         } catch (IOException e) {
             log.error("cannot release package", e);
         }

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentServlet.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentServlet.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentServlet.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/DistributionAgentServlet.java
 Wed May  4 14:38:50 2016
@@ -65,10 +65,10 @@ public class DistributionAgentServlet ex
                 log.debug("distribution response : {}", distributionResponse);
             } catch (Throwable e) {
                 log.error("an unexpected error has occurred", e);
-                ServletJsonUtils.writeJson(response, 503, "an unexpected error 
has occurred");
+                ServletJsonUtils.writeJson(response, 503, "an unexpected error 
has occurred", null);
             }
         } else {
-            ServletJsonUtils.writeJson(response, 404, "agent not found");
+            ServletJsonUtils.writeJson(response, 404, "agent not found", null);
         }
     }
 

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/DistributionPackageImporterServlet.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/DistributionPackageImporterServlet.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/DistributionPackageImporterServlet.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/DistributionPackageImporterServlet.java
 Wed May  4 14:38:50 2016
@@ -65,10 +65,10 @@ public class DistributionPackageImporter
             long end = System.currentTimeMillis();
 
             log.info("Package {} imported successfully in {}ms", 
distributionPackageInfo, end - start);
-            ServletJsonUtils.writeJson(response, 200, "package imported 
successfully");
+            ServletJsonUtils.writeJson(response, 200, "package imported 
successfully", null);
 
         } catch (final Throwable e) {
-            ServletJsonUtils.writeJson(response, 500, "an unexpected error has 
occurred during distribution import");
+            ServletJsonUtils.writeJson(response, 500, "an unexpected error has 
occurred during distribution import", null);
             log.error("Error during distribution import", e);
         } finally {
             long end = System.currentTimeMillis();

Modified: 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/ServletJsonUtils.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/ServletJsonUtils.java?rev=1742293&r1=1742292&r2=1742293&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/ServletJsonUtils.java
 (original)
+++ 
sling/trunk/contrib/extensions/distribution/core/src/main/java/org/apache/sling/distribution/servlet/ServletJsonUtils.java
 Wed May  4 14:38:50 2016
@@ -19,7 +19,9 @@
 
 package org.apache.sling.distribution.servlet;
 
+import javax.annotation.Nullable;
 import java.io.IOException;
+import java.util.Map;
 
 import org.apache.sling.api.SlingHttpServletResponse;
 import org.apache.sling.commons.json.JSONException;
@@ -60,10 +62,16 @@ class ServletJsonUtils {
         response.getWriter().append(json.toString());
     }
 
-    public static void writeJson(SlingHttpServletResponse response, int 
status, String message) throws IOException {
+    public static void writeJson(SlingHttpServletResponse response, int 
status, String message,
+                                 @Nullable Map<String, String> kv) throws 
IOException {
         JSONObject json = new JSONObject();
         try {
             json.put("message", message);
+            if (kv != null && kv.size() > 0) {
+                for (Map.Entry<String, String> entry : kv.entrySet()) {
+                    json.put(entry.getKey(), entry.getValue());
+                }
+            }
         } catch (JSONException e) {
             log.error("Cannot write json", e);
         }



Reply via email to