mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-24 17:32:48 +00:00
Fixes WCM-495, in which second deployments don't work.
Problem was aspects being added willy nilly, regardless of their existence. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5993 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -37,8 +37,6 @@ import java.util.Map;
|
|||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.TreeMap;
|
import java.util.TreeMap;
|
||||||
|
|
||||||
import javax.transaction.NotSupportedException;
|
|
||||||
import javax.transaction.SystemException;
|
|
||||||
import javax.transaction.UserTransaction;
|
import javax.transaction.UserTransaction;
|
||||||
|
|
||||||
import org.alfresco.config.JNDIConstants;
|
import org.alfresco.config.JNDIConstants;
|
||||||
@@ -57,7 +55,6 @@ import org.alfresco.repo.search.IndexMode;
|
|||||||
import org.alfresco.repo.search.Indexer;
|
import org.alfresco.repo.search.Indexer;
|
||||||
import org.alfresco.repo.search.impl.lucene.AVMLuceneIndexer;
|
import org.alfresco.repo.search.impl.lucene.AVMLuceneIndexer;
|
||||||
import org.alfresco.repo.search.impl.lucene.LuceneQueryParser;
|
import org.alfresco.repo.search.impl.lucene.LuceneQueryParser;
|
||||||
import org.alfresco.repo.search.impl.lucene.analysis.NumericEncoder;
|
|
||||||
import org.alfresco.repo.transaction.RetryingTransactionHelper;
|
import org.alfresco.repo.transaction.RetryingTransactionHelper;
|
||||||
import org.alfresco.repo.transaction.TransactionUtil;
|
import org.alfresco.repo.transaction.TransactionUtil;
|
||||||
import org.alfresco.service.cmr.avm.AVMBadArgumentException;
|
import org.alfresco.service.cmr.avm.AVMBadArgumentException;
|
||||||
@@ -261,6 +258,11 @@ public class AVMServiceTest extends AVMServiceTestBase
|
|||||||
{
|
{
|
||||||
DeploymentService depService = (DeploymentService) fContext.getBean("DeploymentService");
|
DeploymentService depService = (DeploymentService) fContext.getBean("DeploymentService");
|
||||||
setupBasicTree();
|
setupBasicTree();
|
||||||
|
fService.addAspect("main:/a", ContentModel.ASPECT_REFERENCEABLE);
|
||||||
|
fService.addAspect("main:/a/b", ContentModel.ASPECT_REFERENCEABLE);
|
||||||
|
fService.addAspect("main:/a/b/c", ContentModel.ASPECT_REFERENCEABLE);
|
||||||
|
fService.addAspect("main:/a/b/c/foo", ContentModel.ASPECT_REFERENCEABLE);
|
||||||
|
fService.addAspect("main:/a/b/c/bar", ContentModel.ASPECT_REFERENCEABLE);
|
||||||
// TestDeploymentCallback callback = new TestDeploymentCallback();
|
// TestDeploymentCallback callback = new TestDeploymentCallback();
|
||||||
fService.createStore("target");
|
fService.createStore("target");
|
||||||
DeploymentReport report = depService.deployDifference(-1, "main:/a", "localhost", 50500, "admin", "admin",
|
DeploymentReport report = depService.deployDifference(-1, "main:/a", "localhost", 50500, "admin", "admin",
|
||||||
|
@@ -490,6 +490,10 @@ public class DeploymentServiceImpl implements DeploymentService
|
|||||||
List<QName> aspects = fAVMService.getAspects(version, src.getPath());
|
List<QName> aspects = fAVMService.getAspects(version, src.getPath());
|
||||||
for (QName aspect : aspects)
|
for (QName aspect : aspects)
|
||||||
{
|
{
|
||||||
|
if (remote.hasAspect(-1, dst.getPath(), aspect))
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
remote.addAspect(dst.getPath(), aspect);
|
remote.addAspect(dst.getPath(), aspect);
|
||||||
}
|
}
|
||||||
remote.setGuid(dst.getPath(), src.getGuid());
|
remote.setGuid(dst.getPath(), src.getGuid());
|
||||||
|
Reference in New Issue
Block a user