You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by to...@apache.org on 2014/10/29 10:35:29 UTC
svn commit: r1635078 [1/2] - in
/sling/trunk/contrib/extensions/replication/core: ./
src/main/java/org/apache/sling/replication/agent/
src/main/java/org/apache/sling/replication/agent/impl/
src/main/java/org/apache/sling/replication/communication/ src/...
Author: tommaso
Date: Wed Oct 29 09:35:28 2014
New Revision: 1635078
URL: http://svn.apache.org/r1635078
Log:
SLING-4106 - added jsr305 support
Modified:
sling/trunk/contrib/extensions/replication/core/pom.xml
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/ReplicationAgent.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/ReplicationRequestAuthorizationStrategy.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/CoordinatingReplicationAgentFactory.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/PrivilegeReplicationRequestAuthorizationStrategy.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/SimpleReplicationAgent.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/SimpleReplicationAgentFactory.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/communication/ReplicationRequest.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/communication/ReplicationResponse.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/ReplicationComponentFactory.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/ReplicationComponentProvider.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/DefaultReplicationComponentFactory.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/DefaultReplicationComponentProvider.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/GenericReplicationComponentFactory.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/event/ReplicationEventFactory.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/event/impl/DefaultReplicationEventFactory.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackage.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageExporter.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageImporter.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageInfo.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/SharedReplicationPackage.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/AgentReplicationPackageExporter.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/AgentReplicationPackageExporterFactory.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/LocalReplicationPackageExporter.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/LocalReplicationPackageExporterFactory.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/RemoteReplicationPackageExporter.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/RemoteReplicationPackageExporterFactory.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/AdvancedRemoteReplicationPackageImporter.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/LocalReplicationPackageImporter.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/LocalReplicationPackageImporterFactory.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RemoteReplicationPackageImporter.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RemoteReplicationPackageImporterFactory.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RepositoryReplicationPackageImporter.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueue.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueDistributionStrategy.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueItem.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueProcessor.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueProvider.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/impl/AbstractReplicationQueueProvider.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/impl/ErrorAwareQueueDistributionStrategy.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/impl/PriorityPathDistributionStrategy.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/impl/SingleQueueDistributionStrategy.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/impl/jobhandling/JobHandlingReplicationQueue.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/impl/jobhandling/JobHandlingReplicationQueueProvider.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/impl/simple/SimpleReplicationQueue.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/impl/simple/SimpleReplicationQueueProvider.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/serialization/ReplicationPackageBuilder.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/serialization/impl/AbstractReplicationPackage.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/serialization/impl/AbstractReplicationPackageBuilder.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/serialization/impl/ResourceSharedReplicationPackage.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/serialization/impl/ResourceSharedReplicationPackageBuilder.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/serialization/impl/VoidReplicationPackage.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/serialization/impl/VoidReplicationPackageBuilder.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/serialization/impl/vlt/FileVaultReplicationPackage.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/servlet/ReplicationTriggerServlet.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/transport/ReplicationTransportHandler.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/transport/impl/AdvancedHttpReplicationTransportHandler.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/transport/impl/MultipleEndpointReplicationTransportHandler.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/transport/impl/SimpleHttpReplicationTransportHandler.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/trigger/ReplicationRequestHandler.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/trigger/ReplicationTrigger.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/trigger/impl/AbstractJcrEventTrigger.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/trigger/impl/ChainReplicateReplicationTrigger.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/trigger/impl/RemoteEventReplicationTrigger.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/trigger/impl/ResourceEventReplicationTrigger.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/trigger/impl/ScheduledReplicationTrigger.java
sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/util/ReplicationJcrUtils.java
Modified: sling/trunk/contrib/extensions/replication/core/pom.xml
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/pom.xml?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/pom.xml (original)
+++ sling/trunk/contrib/extensions/replication/core/pom.xml Wed Oct 29 09:35:28 2014
@@ -227,6 +227,12 @@
<version>2.4</version>
<scope>provided</scope>
</dependency>
+ <dependency>
+ <groupId>com.google.code.findbugs</groupId>
+ <artifactId>jsr305</artifactId>
+ <version>2.0.0</version>
+ <scope>provided</scope>
+ </dependency>
</dependencies>
<reporting>
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/ReplicationAgent.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/ReplicationAgent.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/ReplicationAgent.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/ReplicationAgent.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,10 @@
*/
package org.apache.sling.replication.agent;
+import javax.annotation.CheckForNull;
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+
import org.apache.sling.api.resource.ResourceResolver;
import org.apache.sling.replication.communication.ReplicationRequest;
import org.apache.sling.replication.communication.ReplicationResponse;
@@ -38,9 +42,10 @@ public interface ReplicationAgent extend
*
* @param name a queue name
* @return a {@link ReplicationQueue} with the given name bound to this agent, if it exists, <code>null</code> otherwise
- * @throws ReplicationAgentException
+ * @throws ReplicationAgentException if an error occurs in retrieving the queue
*/
- ReplicationQueue getQueue(String name) throws ReplicationAgentException;
+ @CheckForNull
+ ReplicationQueue getQueue(@Nullable String name) throws ReplicationAgentException;
/**
* executes a {@link ReplicationRequest}
@@ -50,6 +55,7 @@ public interface ReplicationAgent extend
* @return a {@link ReplicationResponse}
* @throws ReplicationAgentException if any error happens during the execution of the request or if the authentication fails
*/
- ReplicationResponse execute(ResourceResolver resourceResolver, ReplicationRequest replicationRequest) throws ReplicationAgentException;
+ @Nonnull
+ ReplicationResponse execute(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationRequest replicationRequest) throws ReplicationAgentException;
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/ReplicationRequestAuthorizationStrategy.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/ReplicationRequestAuthorizationStrategy.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/ReplicationRequestAuthorizationStrategy.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/ReplicationRequestAuthorizationStrategy.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,8 @@
*/
package org.apache.sling.replication.agent;
+import javax.annotation.Nonnull;
+
import org.apache.sling.api.resource.ResourceResolver;
import org.apache.sling.replication.communication.ReplicationRequest;
import org.apache.sling.replication.component.ReplicationComponent;
@@ -34,6 +36,6 @@ public interface ReplicationRequestAutho
* @throws ReplicationRequestAuthorizationException if the {@link org.apache.sling.api.resource.ResourceResolver} is
* not authorized to execute the given {@link org.apache.sling.replication.communication.ReplicationRequest}
*/
- void checkPermission(ResourceResolver resourceResolver, ReplicationRequest replicationRequest) throws ReplicationRequestAuthorizationException;
+ void checkPermission(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationRequest replicationRequest) throws ReplicationRequestAuthorizationException;
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/CoordinatingReplicationAgentFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/CoordinatingReplicationAgentFactory.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/CoordinatingReplicationAgentFactory.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/CoordinatingReplicationAgentFactory.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.agent.impl;
+import javax.annotation.Nonnull;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Dictionary;
@@ -191,7 +192,7 @@ public class CoordinatingReplicationAgen
}
- public <ComponentType extends ReplicationComponent> ComponentType getComponent(Class<ComponentType> type, String componentName) {
+ public <ComponentType extends ReplicationComponent> ComponentType getComponent(@Nonnull Class<ComponentType> type, @Nonnull String componentName) {
if (type.isAssignableFrom(ReplicationQueueProvider.class)) {
return (ComponentType) queueProvider;
} else if (type.isAssignableFrom(ReplicationQueueDistributionStrategy.class)) {
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/PrivilegeReplicationRequestAuthorizationStrategy.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/PrivilegeReplicationRequestAuthorizationStrategy.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/PrivilegeReplicationRequestAuthorizationStrategy.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/PrivilegeReplicationRequestAuthorizationStrategy.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.agent.impl;
+import javax.annotation.Nonnull;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
import javax.jcr.security.AccessControlManager;
@@ -41,7 +42,7 @@ public class PrivilegeReplicationRequest
this.jcrPrivilege = jcrPrivilege;
}
- public void checkPermission(ResourceResolver resourceResolver, ReplicationRequest replicationRequest) throws ReplicationRequestAuthorizationException {
+ public void checkPermission(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationRequest replicationRequest) throws ReplicationRequestAuthorizationException {
Session session = resourceResolver.adaptTo(Session.class);
try {
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/SimpleReplicationAgent.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/SimpleReplicationAgent.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/SimpleReplicationAgent.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/SimpleReplicationAgent.java Wed Oct 29 09:35:28 2014
@@ -18,10 +18,12 @@
*/
package org.apache.sling.replication.agent.impl;
+import javax.annotation.Nonnull;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Dictionary;
import java.util.HashMap;
+import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Properties;
@@ -50,7 +52,6 @@ import org.apache.sling.replication.queu
import org.apache.sling.replication.queue.ReplicationQueueProcessor;
import org.apache.sling.replication.queue.ReplicationQueueProvider;
import org.apache.sling.replication.serialization.ReplicationPackageBuildingException;
-import org.apache.sling.replication.serialization.ReplicationPackageReadingException;
import org.apache.sling.replication.trigger.ReplicationRequestHandler;
import org.apache.sling.replication.trigger.ReplicationTrigger;
import org.apache.sling.replication.trigger.ReplicationTriggerException;
@@ -132,11 +133,11 @@ public class SimpleReplicationAgent impl
this.triggers = triggers == null ? new ArrayList<ReplicationTrigger>() : triggers;
}
- public ReplicationResponse execute(ResourceResolver resourceResolver, ReplicationRequest replicationRequest)
+ @Nonnull
+ public ReplicationResponse execute(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationRequest replicationRequest)
throws ReplicationAgentException {
-
ResourceResolver agentResourceResolver = null;
try {
@@ -144,15 +145,11 @@ public class SimpleReplicationAgent impl
replicationRequestAuthorizationStrategy.checkPermission(resourceResolver, replicationRequest);
-
- List<ReplicationPackage> replicationPackages = buildPackages(agentResourceResolver, replicationRequest);
-
- return schedule(agentResourceResolver, replicationPackages);
+ return scheduleImport(exportPackages(agentResourceResolver, replicationRequest));
} catch (Exception e) {
log.error("Error executing replication request {}", replicationRequest, e);
throw new ReplicationAgentException(e);
- }
- finally {
+ } finally {
ungetAgentResourceResolver(agentResourceResolver);
}
@@ -164,28 +161,22 @@ public class SimpleReplicationAgent impl
}
- private List<ReplicationPackage> buildPackages(ResourceResolver agentResourceResolver, ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException {
- List<ReplicationPackage> replicationPackages = replicationPackageExporter.exportPackages(agentResourceResolver, replicationRequest);
+ private List<ReplicationPackage> exportPackages(ResourceResolver agentResourceResolver, ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException {
- return replicationPackages;
+ return replicationPackageExporter.exportPackages(agentResourceResolver, replicationRequest);
}
- private ReplicationResponse schedule(ResourceResolver agentResourceResolver, List<ReplicationPackage> replicationPackages) {
- // TODO : create a composite replication response otherwise only the last response will be returned
- ReplicationResponse replicationResponse = new ReplicationResponse();
+ private ReplicationResponse scheduleImport(List<ReplicationPackage> replicationPackages) {
+ List<ReplicationResponse> replicationResponses = new LinkedList<ReplicationResponse>();
for (ReplicationPackage replicationPackage : replicationPackages) {
- ReplicationResponse currentReplicationResponse = schedule(replicationPackage);
-
- replicationResponse.setSuccessful(currentReplicationResponse.isSuccessful());
- replicationResponse.setStatus(currentReplicationResponse.getStatus());
+ replicationResponses.add(schedule(replicationPackage));
}
-
- return replicationResponse;
+ return replicationResponses.size() == 1 ? replicationResponses.get(0) : new CompositeReplicationResponse(replicationResponses);
}
private ReplicationResponse schedule(ReplicationPackage replicationPackage) {
- ReplicationResponse replicationResponse = new ReplicationResponse();
+ ReplicationResponse replicationResponse;
log.info("scheduling replication of package {}", replicationPackage);
ReplicationQueueItem replicationQueueItem = new ReplicationQueueItem(replicationPackage.getId(),
@@ -205,16 +196,13 @@ public class SimpleReplicationAgent impl
replicationEventFactory.generateEvent(ReplicationEventType.PACKAGE_QUEUED, properties);
if (state != null) {
- replicationResponse.setStatus(state.getItemState().toString());
- replicationResponse.setSuccessful(state.isSuccessful());
+ replicationResponse = new ReplicationResponse(state.getItemState().toString(), state.isSuccessful());
} else {
- replicationResponse.setStatus(ReplicationQueueItemState.ItemState.ERROR.toString());
- replicationResponse.setSuccessful(false);
+ replicationResponse = new ReplicationResponse(ReplicationQueueItemState.ItemState.ERROR.toString(), false);
}
} catch (Exception e) {
log.error("an error happened during queue processing", e);
-
- replicationResponse.setSuccessful(false);
+ replicationResponse = new ReplicationResponse(e.toString(), false);
}
return replicationResponse;
@@ -334,7 +322,7 @@ public class SimpleReplicationAgent impl
}
class PackageQueueProcessor implements ReplicationQueueProcessor {
- public boolean process(String queueName, ReplicationQueueItem packageInfo) {
+ public boolean process(@Nonnull String queueName, @Nonnull ReplicationQueueItem packageInfo) {
log.info("running package queue processor for queue {}", queueName);
return processQueue(packageInfo);
}
@@ -347,7 +335,7 @@ public class SimpleReplicationAgent impl
this.agent = agent;
}
- public void handle(ReplicationRequest request) {
+ public void handle(@Nonnull ReplicationRequest request) {
ResourceResolver agentResourceResolver = null;
try {
agentResourceResolver = getAgentResourceResolver();
@@ -356,10 +344,44 @@ public class SimpleReplicationAgent impl
log.error("Error executing handler", e);
} catch (LoginException e) {
log.error("Cannot obtain resource resolver");
- }
- finally {
+ } finally {
ungetAgentResourceResolver(agentResourceResolver);
}
}
}
+
+ private class CompositeReplicationResponse extends ReplicationResponse {
+
+ private boolean successful;
+
+ private String status;
+
+ public CompositeReplicationResponse(List<ReplicationResponse> replicationResponses) {
+ super("", false);
+ if (replicationResponses.isEmpty()) {
+ successful = false;
+ status = "empty response";
+ } else {
+ successful = true;
+ StringBuilder statusBuilder = new StringBuilder("[");
+ for (ReplicationResponse response : replicationResponses) {
+ successful &= response.isSuccessful();
+ statusBuilder.append(response.getStatus()).append(", ");
+ }
+ int lof = statusBuilder.lastIndexOf(", ");
+ statusBuilder.replace(lof, lof + 2, "]");
+ status = statusBuilder.toString();
+ }
+ }
+
+ @Override
+ public boolean isSuccessful() {
+ return successful;
+ }
+
+ @Override
+ public String getStatus() {
+ return status;
+ }
+ }
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/SimpleReplicationAgentFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/SimpleReplicationAgentFactory.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/SimpleReplicationAgentFactory.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/agent/impl/SimpleReplicationAgentFactory.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.agent.impl;
+import javax.annotation.Nonnull;
import java.util.Dictionary;
import java.util.Hashtable;
import java.util.Map;
@@ -171,7 +172,7 @@ public class SimpleReplicationAgentFacto
}
- public <ComponentType extends ReplicationComponent> ComponentType getComponent(Class<ComponentType> type, String componentName) {
+ public <ComponentType extends ReplicationComponent> ComponentType getComponent(@Nonnull Class<ComponentType> type, @Nonnull String componentName) {
if (type.isAssignableFrom(ReplicationQueueProvider.class)) {
return (ComponentType) queueProvider;
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/communication/ReplicationRequest.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/communication/ReplicationRequest.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/communication/ReplicationRequest.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/communication/ReplicationRequest.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.communication;
+import javax.annotation.Nonnull;
import java.util.Arrays;
/**
@@ -31,11 +32,11 @@ public class ReplicationRequest {
private final String[] paths;
- public ReplicationRequest(ReplicationActionType action, String[] paths) {
+ public ReplicationRequest(@Nonnull ReplicationActionType action, @Nonnull String[] paths) {
this(System.currentTimeMillis(), action, paths);
}
- public ReplicationRequest(long time, ReplicationActionType action, String... paths) {
+ public ReplicationRequest(long time, @Nonnull ReplicationActionType action, @Nonnull String... paths) {
this.time = time;
this.action = action;
this.paths = paths;
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/communication/ReplicationResponse.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/communication/ReplicationResponse.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/communication/ReplicationResponse.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/communication/ReplicationResponse.java Wed Oct 29 09:35:28 2014
@@ -22,28 +22,27 @@ package org.apache.sling.replication.com
* A replication response
*/
public class ReplicationResponse {
+
+ private final String status;
private boolean successful;
- private String status;
+ public ReplicationResponse(String status, boolean successful) {
+ this.status = status;
+ this.successful = successful;
+ }
public boolean isSuccessful() {
return successful;
}
- public void setSuccessful(boolean successful) {
- this.successful = successful;
- }
-
@Override
public String toString() {
- return "{\"success\":" + successful + ", \"status\":\"" + status + "\"}";
+ return "{\"success\":" + isSuccessful() + ", \"status\":\"" + getStatus() + "\"}";
}
public String getStatus() {
return status != null ? status : "done nothing";
}
- public void setStatus(String status) {
- this.status = status;
- }
+
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/ReplicationComponentFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/ReplicationComponentFactory.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/ReplicationComponentFactory.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/ReplicationComponentFactory.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,9 @@
*/
package org.apache.sling.replication.component;
+import javax.annotation.CheckForNull;
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
import java.util.Map;
/**
@@ -281,9 +284,11 @@ public interface ReplicationComponentFac
* wire additional required {@link ReplicationComponent}s
* @param <ComponentType> the actual type of the {@link ReplicationComponent}
* to be created
- * @return a {@link ReplicationComponent} of the specified type initialized with given properties
+ * @return a {@link ReplicationComponent} of the specified type initialized with given properties or <code>null</code>
+ * if that could not be created
*/
- <ComponentType extends ReplicationComponent> ComponentType createComponent(java.lang.Class<ComponentType> type,
- Map<String, Object> properties,
- ReplicationComponentProvider componentProvider);
+ @CheckForNull
+ <ComponentType extends ReplicationComponent> ComponentType createComponent(@Nonnull java.lang.Class<ComponentType> type,
+ @Nonnull Map<String, Object> properties,
+ @Nullable ReplicationComponentProvider componentProvider);
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/ReplicationComponentProvider.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/ReplicationComponentProvider.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/ReplicationComponentProvider.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/ReplicationComponentProvider.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,9 @@
*/
package org.apache.sling.replication.component;
+import javax.annotation.CheckForNull;
+import javax.annotation.Nonnull;
+
/**
* provider for already existing {@link ReplicationComponent}s
*/
@@ -35,6 +38,7 @@ public interface ReplicationComponentPro
* with the specified name, or <code>null</code> if such a {@link ReplicationComponent}
* doesn't exist
*/
- <ComponentType extends ReplicationComponent> ComponentType getComponent(java.lang.Class<ComponentType> type,
- String componentName);
+ @CheckForNull
+ <ComponentType extends ReplicationComponent> ComponentType getComponent(@Nonnull java.lang.Class<ComponentType> type,
+ @Nonnull String componentName);
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/DefaultReplicationComponentFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/DefaultReplicationComponentFactory.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/DefaultReplicationComponentFactory.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/DefaultReplicationComponentFactory.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,8 @@
*/
package org.apache.sling.replication.component.impl;
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -108,8 +110,9 @@ public class DefaultReplicationComponent
this.bundleContext = bundleContext;
}
- public <ComponentType extends ReplicationComponent> ComponentType createComponent(Class<ComponentType> type, Map<String, Object> properties,
- ReplicationComponentProvider componentProvider) {
+ public <ComponentType extends ReplicationComponent> ComponentType createComponent(@Nonnull Class<ComponentType> type,
+ @Nonnull Map<String, Object> properties,
+ @Nullable ReplicationComponentProvider componentProvider) {
if (componentProvider == null) {
componentProvider = this;
@@ -128,10 +131,9 @@ public class DefaultReplicationComponent
}
}
catch (IllegalArgumentException e) {
- log.debug("Cannot create component", e);
+ log.warn("Cannot create component of type {} with properties {}", new Object[]{type, properties}, e);
}
-
return null;
}
@@ -373,7 +375,7 @@ public class DefaultReplicationComponent
return result;
}
- public <ComponentType extends ReplicationComponent> ComponentType getComponent(Class<ComponentType> type, String componentName) {
+ public <ComponentType extends ReplicationComponent> ComponentType getComponent(@Nonnull Class<ComponentType> type, @Nonnull String componentName) {
return null;
}
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/DefaultReplicationComponentProvider.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/DefaultReplicationComponentProvider.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/DefaultReplicationComponentProvider.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/DefaultReplicationComponentProvider.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.component.impl;
+import javax.annotation.Nonnull;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@@ -69,7 +70,7 @@ public class DefaultReplicationComponent
Map<String, ReplicationPackageExporter> replicationPackageExporterMap = new ConcurrentHashMap<String, ReplicationPackageExporter>();
private BundleContext bundleContext;
- public <ComponentType extends ReplicationComponent> ComponentType getComponent(Class<ComponentType> type, String componentName) {
+ public <ComponentType extends ReplicationComponent> ComponentType getComponent(@Nonnull Class<ComponentType> type, @Nonnull String componentName) {
if (type.isAssignableFrom(ReplicationPackageExporter.class)) {
return (ComponentType) replicationPackageExporterMap.get(componentName);
} else if (type.isAssignableFrom(ReplicationPackageImporter.class)) {
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/GenericReplicationComponentFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/GenericReplicationComponentFactory.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/GenericReplicationComponentFactory.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/component/impl/GenericReplicationComponentFactory.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.component.impl;
+import javax.annotation.Nonnull;
import java.util.Dictionary;
import java.util.HashMap;
import java.util.Hashtable;
@@ -182,7 +183,7 @@ public class GenericReplicationComponent
refresh();
}
- public <ComponentType extends ReplicationComponent> ComponentType getComponent(Class<ComponentType> type, String componentName) {
+ public <ComponentType extends ReplicationComponent> ComponentType getComponent(@Nonnull Class<ComponentType> type, @Nonnull String componentName) {
if (type.isAssignableFrom(TransportAuthenticationProvider.class)) {
return (ComponentType) transportAuthenticationProvider;
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/event/ReplicationEventFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/event/ReplicationEventFactory.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/event/ReplicationEventFactory.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/event/ReplicationEventFactory.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.event;
+import javax.annotation.Nonnull;
import java.util.Dictionary;
/**
@@ -31,5 +32,5 @@ public interface ReplicationEventFactory
* @param replicationEventType the type of event to be generated
* @param properties a dictionary of properties to be attached to the event
*/
- void generateEvent(ReplicationEventType replicationEventType, Dictionary<?, ?> properties);
+ void generateEvent(@Nonnull ReplicationEventType replicationEventType, @Nonnull Dictionary<?, ?> properties);
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/event/impl/DefaultReplicationEventFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/event/impl/DefaultReplicationEventFactory.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/event/impl/DefaultReplicationEventFactory.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/event/impl/DefaultReplicationEventFactory.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.event.impl;
+import javax.annotation.Nonnull;
import java.util.Dictionary;
import org.apache.felix.scr.annotations.Component;
@@ -42,7 +43,7 @@ public class DefaultReplicationEventFact
@Reference
private EventAdmin eventAdmin;
- public void generateEvent(ReplicationEventType replicationEventType, Dictionary<?, ?> properties) {
+ public void generateEvent(@Nonnull ReplicationEventType replicationEventType, @Nonnull Dictionary<?, ?> properties) {
ReplicationEvent replicationEvent = new ReplicationEvent(replicationEventType, properties);
eventAdmin.postEvent(replicationEvent);
log.debug("replication event posted {}", replicationEvent);
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackage.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackage.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackage.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackage.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging;
+import javax.annotation.Nonnull;
import java.io.IOException;
import java.io.InputStream;
import java.io.Serializable;
@@ -33,6 +34,7 @@ public interface ReplicationPackage exte
*
* @return the package id
*/
+ @Nonnull
String getId();
/**
@@ -40,6 +42,7 @@ public interface ReplicationPackage exte
*
* @return an array of paths
*/
+ @Nonnull
String[] getPaths();
/**
@@ -47,6 +50,7 @@ public interface ReplicationPackage exte
*
* @return the action
*/
+ @Nonnull
String getAction();
/**
@@ -54,6 +58,7 @@ public interface ReplicationPackage exte
*
* @return the package type
*/
+ @Nonnull
String getType();
/**
@@ -63,6 +68,7 @@ public interface ReplicationPackage exte
* @return an {@link InputStream}
* @throws IOException
*/
+ @Nonnull
InputStream createInputStream() throws IOException;
/**
@@ -84,8 +90,9 @@ public interface ReplicationPackage exte
* For example info.origin can be used to skip replicating back to the originating endpoint.
* It should not be be serialized between instances as its main purpose is to allow
* inter component communication on the same instance.
- * @return
+ * @return the associated metadata to this package
*/
+ @Nonnull
ReplicationPackageInfo getInfo();
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageExporter.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageExporter.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageExporter.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageExporter.java Wed Oct 29 09:35:28 2014
@@ -19,6 +19,8 @@
package org.apache.sling.replication.packaging;
+import javax.annotation.CheckForNull;
+import javax.annotation.Nonnull;
import java.util.List;
import org.apache.sling.api.resource.ResourceResolver;
@@ -37,18 +39,20 @@ public interface ReplicationPackageExpor
* Exports the {@link org.apache.sling.replication.packaging.ReplicationPackage}s built from the
* passed {@link org.apache.sling.replication.communication.ReplicationRequest}.
*
- * @param resourceResolver - the resource resolver used to export the packages
+ * @param resourceResolver - the resource resolver used to export the packages
* @param replicationRequest - the request containing the information about which content is to be exported
* @return a <code>List</code> of {@link org.apache.sling.replication.packaging.ReplicationPackage}s
*/
- List<ReplicationPackage> exportPackages(ResourceResolver resourceResolver, ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException;
+ @Nonnull
+ List<ReplicationPackage> exportPackages(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException;
/**
* Retrieves a {@link org.apache.sling.replication.packaging.ReplicationPackage} given its 'id', if it already exists.
*
- * @param resourceResolver - the resource resolver use to obtain the package.
+ * @param resourceResolver - the resource resolver use to obtain the package.
* @param replicationPackageId - the id of the package to be retrieved
* @return a {@link org.apache.sling.replication.packaging.ReplicationPackage} if available, <code>null</code> otherwise
*/
- ReplicationPackage getPackage(ResourceResolver resourceResolver, String replicationPackageId);
+ @CheckForNull
+ ReplicationPackage getPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull String replicationPackageId);
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageImporter.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageImporter.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageImporter.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageImporter.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,8 @@
*/
package org.apache.sling.replication.packaging;
+import javax.annotation.CheckForNull;
+import javax.annotation.Nonnull;
import java.io.InputStream;
import org.apache.sling.api.resource.ResourceResolver;
@@ -36,7 +38,7 @@ public interface ReplicationPackageImpor
* @param replicationPackage - the package to be imported
* @return <code>true</code> if the import succeeded, <code>false</code> otherwise
*/
- boolean importPackage(ResourceResolver resourceResolver, ReplicationPackage replicationPackage) throws ReplicationPackageImportException;
+ boolean importPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationPackage replicationPackage) throws ReplicationPackageImportException;
/**
* Uploads a stream and tries to convert it to a {@link ReplicationPackage} this importer can import
@@ -46,6 +48,7 @@ public interface ReplicationPackageImpor
* @return a {@link ReplicationPackage} if it can read it from the stream
* @throws ReplicationPackageUploadException when the stream cannot be read as a {@link ReplicationPackage}
*/
- ReplicationPackage uploadPackage(ResourceResolver resourceResolver, InputStream stream) throws ReplicationPackageUploadException;
+ @CheckForNull
+ ReplicationPackage uploadPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull InputStream stream) throws ReplicationPackageUploadException;
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageInfo.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageInfo.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageInfo.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/ReplicationPackageInfo.java Wed Oct 29 09:35:28 2014
@@ -30,19 +30,19 @@ public interface ReplicationPackageInfo
/**
* retrieves the origin of the package.
- * @return
+ * @return the package origin
*/
String getOrigin();
/**
* sets the origin of the package.
- * @param origin
+ * @param origin the originating instance of this package
*/
void setOrigin(String origin);
/**
* fills the current info object from the provided one.
- * @param packageInfo
+ * @param packageInfo package metadata
*/
void fillInfo(ReplicationPackageInfo packageInfo);
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/SharedReplicationPackage.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/SharedReplicationPackage.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/SharedReplicationPackage.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/SharedReplicationPackage.java Wed Oct 29 09:35:28 2014
@@ -16,7 +16,6 @@
* specific language governing permissions and limitations
* under the License.
*/
-
package org.apache.sling.replication.packaging;
/**
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/AgentReplicationPackageExporter.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/AgentReplicationPackageExporter.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/AgentReplicationPackageExporter.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/AgentReplicationPackageExporter.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging.impl.exporter;
+import javax.annotation.Nonnull;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@@ -57,7 +58,8 @@ public class AgentReplicationPackageExpo
this.packageBuilder = packageBuilder;
}
- public List<ReplicationPackage> exportPackages(ResourceResolver resourceResolver, ReplicationRequest replicationRequest) {
+ @Nonnull
+ public List<ReplicationPackage> exportPackages(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationRequest replicationRequest) {
List<ReplicationPackage> result = new ArrayList<ReplicationPackage>();
try {
@@ -81,7 +83,7 @@ public class AgentReplicationPackageExpo
return result;
}
- public ReplicationPackage getPackage(ResourceResolver resourceResolver, String replicationPackageId) {
+ public ReplicationPackage getPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull String replicationPackageId) {
return null;
}
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/AgentReplicationPackageExporterFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/AgentReplicationPackageExporterFactory.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/AgentReplicationPackageExporterFactory.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/AgentReplicationPackageExporterFactory.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging.impl.exporter;
+import javax.annotation.Nonnull;
import java.util.List;
import java.util.Map;
@@ -71,16 +72,17 @@ public class AgentReplicationPackageExpo
packageExporter = replicationComponentFactory.createComponent(ReplicationPackageExporter.class, config, this);
}
- public List<ReplicationPackage> exportPackages(ResourceResolver resourceResolver, ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException {
+ @Nonnull
+ public List<ReplicationPackage> exportPackages(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException {
return packageExporter.exportPackages(resourceResolver, replicationRequest);
}
- public ReplicationPackage getPackage(ResourceResolver resourceResolver, String replicationPackageId) {
+ public ReplicationPackage getPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull String replicationPackageId) {
return packageExporter.getPackage(resourceResolver, replicationPackageId);
}
- public <ComponentType extends ReplicationComponent> ComponentType getComponent(Class<ComponentType> type, String componentName) {
+ public <ComponentType extends ReplicationComponent> ComponentType getComponent(@Nonnull Class<ComponentType> type, @Nonnull String componentName) {
if (type.isAssignableFrom(ReplicationAgent.class)) {
return (ComponentType) agent;
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/LocalReplicationPackageExporter.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/LocalReplicationPackageExporter.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/LocalReplicationPackageExporter.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/LocalReplicationPackageExporter.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging.impl.exporter;
+import javax.annotation.Nonnull;
import java.util.ArrayList;
import java.util.List;
@@ -40,7 +41,8 @@ public class LocalReplicationPackageExpo
this.packageBuilder = packageBuilder;
}
- public List<ReplicationPackage> exportPackages(ResourceResolver resourceResolver, ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException {
+ @Nonnull
+ public List<ReplicationPackage> exportPackages(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException {
List<ReplicationPackage> result = new ArrayList<ReplicationPackage>();
ReplicationPackage createdPackage = packageBuilder.createPackage(resourceResolver, replicationRequest);
@@ -50,7 +52,7 @@ public class LocalReplicationPackageExpo
return result;
}
- public ReplicationPackage getPackage(ResourceResolver resourceResolver, String replicationPackageId) {
+ public ReplicationPackage getPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull String replicationPackageId) {
return packageBuilder.getPackage(resourceResolver, replicationPackageId);
}
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/LocalReplicationPackageExporterFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/LocalReplicationPackageExporterFactory.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/LocalReplicationPackageExporterFactory.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/LocalReplicationPackageExporterFactory.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging.impl.exporter;
+import javax.annotation.Nonnull;
import java.util.List;
import java.util.Map;
@@ -67,11 +68,12 @@ public class LocalReplicationPackageExpo
}
- public List<ReplicationPackage> exportPackages(ResourceResolver resourceResolver, ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException {
+ @Nonnull
+ public List<ReplicationPackage> exportPackages(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException {
return exporter.exportPackages(resourceResolver, replicationRequest);
}
- public ReplicationPackage getPackage(ResourceResolver resourceResolver, String replicationPackageId) {
+ public ReplicationPackage getPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull String replicationPackageId) {
return exporter.getPackage(resourceResolver, replicationPackageId);
}
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/RemoteReplicationPackageExporter.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/RemoteReplicationPackageExporter.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/RemoteReplicationPackageExporter.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/RemoteReplicationPackageExporter.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging.impl.exporter;
+import javax.annotation.Nonnull;
import java.util.ArrayList;
import java.util.List;
@@ -71,19 +72,16 @@ public class RemoteReplicationPackageExp
transportEndpointStrategyType);
}
- public List<ReplicationPackage> exportPackages(ResourceResolver resourceResolver, ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException {
+ @Nonnull
+ public List<ReplicationPackage> exportPackages(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException {
try {
- List<ReplicationPackage> replicationPackages = transportHandler.retrievePackages(resourceResolver, replicationRequest);
-// for (ReplicationPackage replicationPackage : replicationPackages) {
-// replicationPackage.
-// }
- return replicationPackages;
+ return transportHandler.retrievePackages(resourceResolver, replicationRequest);
} catch (Exception e) {
throw new ReplicationPackageBuildingException(e);
}
}
- public ReplicationPackage getPackage(ResourceResolver resourceResolver, String replicationPackageId) {
+ public ReplicationPackage getPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull String replicationPackageId) {
return packageBuilder.getPackage(resourceResolver, replicationPackageId);
}
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/RemoteReplicationPackageExporterFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/RemoteReplicationPackageExporterFactory.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/RemoteReplicationPackageExporterFactory.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/exporter/RemoteReplicationPackageExporterFactory.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging.impl.exporter;
+import javax.annotation.Nonnull;
import java.util.List;
import java.util.Map;
@@ -101,15 +102,16 @@ public class RemoteReplicationPackageExp
exporter = null;
}
- public List<ReplicationPackage> exportPackages(ResourceResolver resourceResolver, ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException {
+ @Nonnull
+ public List<ReplicationPackage> exportPackages(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationRequest replicationRequest) throws ReplicationPackageBuildingException {
return exporter.exportPackages(resourceResolver, replicationRequest);
}
- public ReplicationPackage getPackage(ResourceResolver resourceResolver, String replicationPackageId) {
+ public ReplicationPackage getPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull String replicationPackageId) {
return exporter.getPackage(resourceResolver, replicationPackageId);
}
- public <ComponentType extends ReplicationComponent> ComponentType getComponent(Class<ComponentType> type, String componentName) {
+ public <ComponentType extends ReplicationComponent> ComponentType getComponent(@Nonnull Class<ComponentType> type, @Nonnull String componentName) {
if (type.isAssignableFrom(TransportAuthenticationProvider.class)) {
return (ComponentType) transportAuthenticationProvider;
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/AdvancedRemoteReplicationPackageImporter.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/AdvancedRemoteReplicationPackageImporter.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/AdvancedRemoteReplicationPackageImporter.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/AdvancedRemoteReplicationPackageImporter.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging.impl.importer;
+import javax.annotation.Nonnull;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
@@ -130,7 +131,7 @@ public class AdvancedRemoteReplicationPa
}
- public boolean importPackage(ResourceResolver resourceResolver, ReplicationPackage replicationPackage) {
+ public boolean importPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationPackage replicationPackage) {
boolean result = false;
try {
transportHandler.deliverPackage(resourceResolver, replicationPackage);
@@ -141,7 +142,7 @@ public class AdvancedRemoteReplicationPa
return result;
}
- public ReplicationPackage uploadPackage(ResourceResolver resourceResolver, InputStream stream) throws ReplicationPackageUploadException {
+ public ReplicationPackage uploadPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull InputStream stream) throws ReplicationPackageUploadException {
return null;
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/LocalReplicationPackageImporter.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/LocalReplicationPackageImporter.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/LocalReplicationPackageImporter.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/LocalReplicationPackageImporter.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging.impl.importer;
+import javax.annotation.Nonnull;
import java.io.InputStream;
import java.util.Arrays;
import java.util.Dictionary;
@@ -65,7 +66,7 @@ public class LocalReplicationPackageImpo
}
- public boolean importPackage(ResourceResolver resourceResolver, ReplicationPackage replicationPackage) throws ReplicationPackageImportException {
+ public boolean importPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationPackage replicationPackage) throws ReplicationPackageImportException {
boolean success = false;
try {
success = packageBuilder.installPackage(resourceResolver, replicationPackage);
@@ -88,7 +89,7 @@ public class LocalReplicationPackageImpo
return success;
}
- public ReplicationPackage uploadPackage(ResourceResolver resourceResolver, InputStream stream) throws ReplicationPackageUploadException {
+ public ReplicationPackage uploadPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull InputStream stream) throws ReplicationPackageUploadException {
try {
return packageBuilder.readPackage(resourceResolver, stream);
} catch (Exception e) {
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/LocalReplicationPackageImporterFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/LocalReplicationPackageImporterFactory.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/LocalReplicationPackageImporterFactory.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/LocalReplicationPackageImporterFactory.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging.impl.importer;
+import javax.annotation.Nonnull;
import java.io.InputStream;
import java.util.Map;
@@ -67,11 +68,11 @@ public class LocalReplicationPackageImpo
}
- public boolean importPackage(ResourceResolver resourceResolver, ReplicationPackage replicationPackage) throws ReplicationPackageImportException {
+ public boolean importPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationPackage replicationPackage) throws ReplicationPackageImportException {
return importer.importPackage(resourceResolver, replicationPackage);
}
- public ReplicationPackage uploadPackage(ResourceResolver resourceResolver, InputStream stream) throws ReplicationPackageUploadException {
+ public ReplicationPackage uploadPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull InputStream stream) throws ReplicationPackageUploadException {
return importer.uploadPackage(resourceResolver, stream);
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RemoteReplicationPackageImporter.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RemoteReplicationPackageImporter.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RemoteReplicationPackageImporter.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RemoteReplicationPackageImporter.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging.impl.importer;
+import javax.annotation.Nonnull;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
@@ -70,7 +71,7 @@ public class RemoteReplicationPackageImp
}
- public boolean importPackage(ResourceResolver resourceResolver, ReplicationPackage replicationPackage) {
+ public boolean importPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationPackage replicationPackage) {
boolean result = false;
try {
transportHandler.deliverPackage(resourceResolver, replicationPackage);
@@ -81,7 +82,7 @@ public class RemoteReplicationPackageImp
return result;
}
- public ReplicationPackage uploadPackage(ResourceResolver resourceResolver, InputStream stream) throws ReplicationPackageUploadException {
+ public ReplicationPackage uploadPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull InputStream stream) throws ReplicationPackageUploadException {
return null;
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RemoteReplicationPackageImporterFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RemoteReplicationPackageImporterFactory.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RemoteReplicationPackageImporterFactory.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RemoteReplicationPackageImporterFactory.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging.impl.importer;
+import javax.annotation.Nonnull;
import java.io.InputStream;
import java.util.Map;
@@ -94,15 +95,15 @@ public class RemoteReplicationPackageImp
}
- public boolean importPackage(ResourceResolver resourceResolver, ReplicationPackage replicationPackage) throws ReplicationPackageImportException {
+ public boolean importPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationPackage replicationPackage) throws ReplicationPackageImportException {
return importer.importPackage(resourceResolver, replicationPackage);
}
- public ReplicationPackage uploadPackage(ResourceResolver resourceResolver, InputStream stream) throws ReplicationPackageUploadException {
+ public ReplicationPackage uploadPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull InputStream stream) throws ReplicationPackageUploadException {
return importer.uploadPackage(resourceResolver, stream);
}
- public <ComponentType extends ReplicationComponent> ComponentType getComponent(Class<ComponentType> type, String componentName) {
+ public <ComponentType extends ReplicationComponent> ComponentType getComponent(@Nonnull Class<ComponentType> type, @Nonnull String componentName) {
if (type.isAssignableFrom(TransportAuthenticationProvider.class)) {
return (ComponentType) transportAuthenticationProvider;
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RepositoryReplicationPackageImporter.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RepositoryReplicationPackageImporter.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RepositoryReplicationPackageImporter.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/packaging/impl/importer/RepositoryReplicationPackageImporter.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.packaging.impl.importer;
+import javax.annotation.Nonnull;
import javax.jcr.Node;
import javax.jcr.Session;
import javax.jcr.nodetype.NodeType;
@@ -109,11 +110,11 @@ public class RepositoryReplicationPackag
}
}
- public boolean importPackage(ResourceResolver resourceResolver, ReplicationPackage replicationPackage) throws ReplicationPackageImportException {
+ public boolean importPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull ReplicationPackage replicationPackage) throws ReplicationPackageImportException {
return false;
}
- public ReplicationPackage uploadPackage(ResourceResolver resourceResolver, InputStream stream) throws ReplicationPackageUploadException {
+ public ReplicationPackage uploadPackage(@Nonnull ResourceResolver resourceResolver, @Nonnull InputStream stream) throws ReplicationPackageUploadException {
return null;
}
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueue.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueue.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueue.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueue.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,8 @@
*/
package org.apache.sling.replication.queue;
+import javax.annotation.CheckForNull;
+import javax.annotation.Nonnull;
import java.util.Collection;
/**
@@ -30,6 +32,7 @@ public interface ReplicationQueue {
*
* @return queue name as a <code>String</code>
*/
+ @Nonnull
String getName();
/**
@@ -39,23 +42,25 @@ public interface ReplicationQueue {
* @return <code>true</code> if the replication item was added correctly to the queue,
* <code>false</code otherwise
*/
- boolean add(ReplicationQueueItem item);
+ boolean add(@Nonnull ReplicationQueueItem item);
/**
* get the status of a certain item in the queue
*
* @param item the replication item to get the status for
* @return the item status in the queue
- * @throws ReplicationQueueException
+ * @throws ReplicationQueueException if any error occurs while getting the status
*/
- ReplicationQueueItemState getStatus(ReplicationQueueItem item)
+ @Nonnull
+ ReplicationQueueItemState getStatus(@Nonnull ReplicationQueueItem item)
throws ReplicationQueueException;
/**
* get the first item (FIFO wise, the next to be processed) into the queue
*
- * @return the first item into the queue
+ * @return the first item into the queue or <code>null</code> if the queue is empty
*/
+ @CheckForNull
ReplicationQueueItem getHead();
/**
@@ -70,6 +75,7 @@ public interface ReplicationQueue {
*
* @return a <code>Collection</code> of {@link org.apache.sling.replication.queue.ReplicationQueueItem}s
*/
+ @Nonnull
Collection<ReplicationQueueItem> getItems();
/**
@@ -77,5 +83,5 @@ public interface ReplicationQueue {
*
* @param id <code>String</code> representing an item's identifier
*/
- void remove(String id);
+ void remove(@Nonnull String id);
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueDistributionStrategy.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueDistributionStrategy.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueDistributionStrategy.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueDistributionStrategy.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,8 @@
*/
package org.apache.sling.replication.queue;
+import javax.annotation.Nonnull;
+
import org.apache.sling.replication.agent.ReplicationAgent;
import org.apache.sling.replication.component.ReplicationComponent;
@@ -35,10 +37,11 @@ public interface ReplicationQueueDistrib
* @param item a {@link org.apache.sling.replication.queue.ReplicationQueueItem} to distribute
* @param queueProvider the {@link ReplicationQueueProvider} used to provide the queue to be used for the given package
* @return a {@link ReplicationQueueItemState} representing the state of the package in the queue after its distribution
- * @throws ReplicationQueueException
+ * @throws ReplicationQueueException if distribution fails
*/
- ReplicationQueueItemState add(String agentName, ReplicationQueueItem item,
- ReplicationQueueProvider queueProvider) throws ReplicationQueueException;
+ @Nonnull
+ ReplicationQueueItemState add(@Nonnull String agentName, @Nonnull ReplicationQueueItem item,
+ @Nonnull ReplicationQueueProvider queueProvider) throws ReplicationQueueException;
/**
* asynchronously distribute a {@link org.apache.sling.replication.queue.ReplicationQueueItem} to a {@link ReplicationAgent}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueItem.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueItem.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueItem.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueItem.java Wed Oct 29 09:35:28 2014
@@ -39,7 +39,6 @@ public class ReplicationQueueItem {
private final ReplicationPackageInfo packageInfo;
-
public ReplicationQueueItem(String id, String[] paths, String action, String type, ReplicationPackageInfo packageInfo) {
this.id = id;
this.paths = paths;
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueProcessor.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueProcessor.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueProcessor.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueProcessor.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,8 @@
*/
package org.apache.sling.replication.queue;
+import javax.annotation.Nonnull;
+
/**
* Processor of {@link org.apache.sling.replication.queue.ReplicationQueueItem}s
*/
@@ -30,5 +32,5 @@ public interface ReplicationQueueProcess
* @param replicationQueueItem the <code>ReplicationQueueItem</code> to be processed
* @return <code>true</code> if the item was successfully processed, <code>false</code> otherwise
*/
- public boolean process(String queueName, ReplicationQueueItem replicationQueueItem);
+ public boolean process(@Nonnull String queueName, @Nonnull ReplicationQueueItem replicationQueueItem);
}
Modified: sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueProvider.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueProvider.java?rev=1635078&r1=1635077&r2=1635078&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueProvider.java (original)
+++ sling/trunk/contrib/extensions/replication/core/src/main/java/org/apache/sling/replication/queue/ReplicationQueueProvider.java Wed Oct 29 09:35:28 2014
@@ -18,6 +18,7 @@
*/
package org.apache.sling.replication.queue;
+import javax.annotation.Nonnull;
import java.util.Collection;
import org.apache.sling.replication.component.ReplicationComponent;
@@ -35,7 +36,8 @@ public interface ReplicationQueueProvide
* @return a replication queue to be used for the given parameters
* @throws ReplicationQueueException
*/
- ReplicationQueue getQueue(String agentName, String queueName)
+ @Nonnull
+ ReplicationQueue getQueue(@Nonnull String agentName, @Nonnull String queueName)
throws ReplicationQueueException;
@@ -46,7 +48,8 @@ public interface ReplicationQueueProvide
* @return the default replication queue for the given agent
* @throws ReplicationQueueException
*/
- ReplicationQueue getDefaultQueue(String agentName)
+ @Nonnull
+ ReplicationQueue getDefaultQueue(@Nonnull String agentName)
throws ReplicationQueueException;
/**
@@ -54,6 +57,7 @@ public interface ReplicationQueueProvide
*
* @return a collection of replication queues
*/
+ @Nonnull
Collection<ReplicationQueue> getAllQueues();
/**
@@ -62,7 +66,7 @@ public interface ReplicationQueueProvide
* @param queue a replication queue to be removed
* @throws ReplicationQueueException
*/
- void removeQueue(ReplicationQueue queue) throws ReplicationQueueException;
+ void removeQueue(@Nonnull ReplicationQueue queue) throws ReplicationQueueException;
/**
* enables queue driven processing for an agent
@@ -70,7 +74,7 @@ public interface ReplicationQueueProvide
* @param agentName a replication agent
* @param queueProcessor the queue processor to be used
*/
- void enableQueueProcessing(String agentName, ReplicationQueueProcessor queueProcessor);
+ void enableQueueProcessing(@Nonnull String agentName, @Nonnull ReplicationQueueProcessor queueProcessor);
/**
@@ -78,5 +82,5 @@ public interface ReplicationQueueProvide
*
* @param agentName a replication agent
*/
- void disableQueueProcessing(String agentName);
+ void disableQueueProcessing(@Nonnull String agentName);
}