Merged V2.2 to HEAD (QNames)

7624: QName Refactor Merge 1 of 9
   7625: QName Refactor Merge 2 of 9
   7626: QName Refactor Merge 3 of 9
   7627: QName Refactor Merge 4 of 9
   7628: QName Refactor Merge 5 of 9


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@8436 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2008-03-06 18:12:25 +00:00
parent a49bfd311d
commit 00e81c0d66
52 changed files with 2851 additions and 698 deletions

View File

@@ -31,6 +31,9 @@ import org.alfresco.i18n.I18NUtil;
import org.alfresco.repo.admin.patch.AbstractPatch;
import org.alfresco.repo.avm.AVMAspectName;
import org.alfresco.repo.avm.AVMAspectNameDAO;
import org.alfresco.repo.domain.QNameDAO;
import org.alfresco.repo.domain.QNameEntity;
import org.alfresco.service.namespace.QName;
/**
* Patches from old style aspect storage for AVM to new style.
@@ -41,12 +44,18 @@ public class AVMAspectsPatch extends AbstractPatch
private static final String MSG_SUCCESS = "patch.AVMAspects.result";
private AVMAspectNameDAO fAVMAspectDAO;
private QNameDAO qnameDAO;
public void setAvmAspectNameDAO(AVMAspectNameDAO dao)
{
fAVMAspectDAO = dao;
}
public void setQnameDAO(QNameDAO qnameDAO)
{
this.qnameDAO = qnameDAO;
}
/* (non-Javadoc)
* @see org.alfresco.repo.admin.patch.AbstractPatch#applyInternal()
*/
@@ -57,7 +66,9 @@ public class AVMAspectsPatch extends AbstractPatch
while (iter.hasNext())
{
AVMAspectName aspect = iter.next();
aspect.getNode().getAspects().add(aspect.getName());
QName aspectQName = aspect.getName();
QNameEntity aspectQNameEntity = qnameDAO.getOrCreateQNameEntity(aspectQName);
aspect.getNode().getAspects().add(aspectQNameEntity.getId());
fAVMAspectDAO.delete(aspect);
}
return I18NUtil.getMessage(MSG_SUCCESS);

View File

@@ -31,6 +31,8 @@ import org.alfresco.i18n.I18NUtil;
import org.alfresco.repo.admin.patch.AbstractPatch;
import org.alfresco.repo.avm.AVMNodeProperty;
import org.alfresco.repo.avm.AVMNodePropertyDAO;
import org.alfresco.repo.domain.QNameDAO;
import org.alfresco.service.namespace.QName;
/**
* Patch more remapping AVM properties.
@@ -40,8 +42,14 @@ public class AVMPropertiesPatch extends AbstractPatch
{
private static final String MSG_SUCCESS = "patch.AVMProperties.result";
private QNameDAO qnameDAO;
private AVMNodePropertyDAO fAVMNodePropertyDAO;
public void setQnameDAO(QNameDAO qnameDAO)
{
this.qnameDAO = qnameDAO;
}
public void setAvmNodePropertyDAO(AVMNodePropertyDAO dao)
{
fAVMNodePropertyDAO = dao;
@@ -57,7 +65,9 @@ public class AVMPropertiesPatch extends AbstractPatch
while (iter.hasNext())
{
AVMNodeProperty prop = iter.next();
prop.getNode().getProperties().put(prop.getName(), prop.getValue());
QName propertyQName = prop.getName();
Long propertyQNameEntityId = qnameDAO.getOrCreateQNameEntity(propertyQName).getId();
prop.getNode().getProperties().put(propertyQNameEntityId, prop.getValue());
fAVMNodePropertyDAO.delete(prop.getNode(), prop.getName());
}
return I18NUtil.getMessage(MSG_SUCCESS);

View File

@@ -33,7 +33,6 @@ import org.alfresco.repo.admin.patch.AbstractPatch;
import org.alfresco.repo.domain.Node;
import org.alfresco.repo.domain.PropertyValue;
import org.alfresco.service.cmr.dictionary.DataTypeDefinition;
import org.alfresco.service.namespace.QName;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
@@ -104,9 +103,9 @@ public class NodePropertySerializablePatch extends AbstractPatch
{
Node node = iterator.next();
// retrieve the node properties
Map<QName, PropertyValue> properties = node.getProperties();
Map<Long, PropertyValue> properties = node.getProperties();
// check each property
for (Map.Entry<QName, PropertyValue> entry : properties.entrySet())
for (Map.Entry<Long, PropertyValue> entry : properties.entrySet())
{
PropertyValue propertyValue = entry.getValue();
if (propertyValue.getSerializableValue() == null)