package org.alfresco.email.server;
import java.io.Serializable;
import java.util.Collections;
import java.util.Map;
import org.alfresco.repo.copy.CopyBehaviourCallback;
import org.alfresco.repo.copy.CopyDetails;
import org.alfresco.repo.copy.DefaultCopyBehaviourCallback;
import org.alfresco.service.namespace.QName;
public class AliasableAspectCopyBehaviourCallback extends DefaultCopyBehaviourCallback
{
static final CopyBehaviourCallback INSTANCE = new AliasableAspectCopyBehaviourCallback();
/**
* Disallows copying of the {@link EmailServerModel#ASPECT_ALIASABLE} aspect.
*/
@Override
public boolean getMustCopy(QName classQName, CopyDetails copyDetails)
{
if (classQName.equals(EmailServerModel.ASPECT_ALIASABLE))
{
return false;
}
else
{
return true;
}
}
/**
* Prevents copying off the {@link org.alfresco.model.ContentModel#PROP_NAME cm:name} property.
*/
@Override
public Map getCopyProperties(
QName classQName,
CopyDetails copyDetails,
Map properties)
{
if (classQName.equals(EmailServerModel.ASPECT_ALIASABLE))
{
return Collections.emptyMap();
}
return properties;
}
}