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);
}