Author: tolusha
Date: 2009-12-11 05:27:59 -0500 (Fri, 11 Dec 2009)
New Revision: 1001
Modified:
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/ACLInheritanceSupportedWorkspaceDataManager.java
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/WorkspacePersistentDataManager.java
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/BaseXmlImporter.java
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/dataflow/ImportNodeData.java
Log:
EXOJCR-300: fix
Modified:
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/ACLInheritanceSupportedWorkspaceDataManager.java
===================================================================
---
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/ACLInheritanceSupportedWorkspaceDataManager.java 2009-12-11
09:13:48 UTC (rev 1000)
+++
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/ACLInheritanceSupportedWorkspaceDataManager.java 2009-12-11
10:27:59 UTC (rev 1001)
@@ -147,8 +147,8 @@
public List<NodeData> getChildNodesData(NodeData parent) throws
RepositoryException
{
final List<NodeData> nodes = persistentManager.getChildNodesData(parent);
- for (NodeData node : nodes)
- initACL(parent, node);
+ for (int i = 0; i < nodes.size(); i++)
+ nodes.set(i, (NodeData)initACL(parent, nodes.get(i)));
return nodes;
}
Modified:
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/WorkspacePersistentDataManager.java
===================================================================
---
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/WorkspacePersistentDataManager.java 2009-12-11
09:13:48 UTC (rev 1000)
+++
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/dataflow/persistent/WorkspacePersistentDataManager.java 2009-12-11
10:27:59 UTC (rev 1001)
@@ -396,7 +396,7 @@
protected PlainChangesLogImpl save(PlainChangesLog changesLog) throws
InvalidItemStateException,
RepositoryException, IOException
- { //LOG.info(changesLog.dump())
+ { //LOG.info(changesLog.dump())
// copy state
PlainChangesLogImpl newLog =
new PlainChangesLogImpl(new ArrayList<ItemState>(),
changesLog.getSessionId(), changesLog.getEventType(),
@@ -437,27 +437,35 @@
List<ValueData> values = new ArrayList<ValueData>();
for (ValueData vd : prevData.getValues())
{
- if (vd.isByteArray())
+ if (vd instanceof TransientValueData)
{
- values.add(new
ByteArrayPersistedValueData(vd.getAsByteArray(), vd.getOrderNumber()));
+
+ if (vd.isByteArray())
+ {
+ values.add(new
ByteArrayPersistedValueData(vd.getAsByteArray(), vd.getOrderNumber()));
+ }
+ else
+ {
+ // TODO ask dest file from VS provider, can be null after
+ // TODO what if JDBC spool used, i.e. without VS = storage
will setPersistedFile()
+ // TODO for JBC case, the storage connection will evict the
replicated Value to read it from the DB
+ File destFile = null;
+
+ TransientValueData tvd = (TransientValueData)vd;
+ // TODO review TransientValueData logic about spool file
and stream
+ values.add(new StreamPersistedValueData(destFile,
tvd.getSpoolFile(),
+ tvd.getSpoolFile() == null ? tvd.getAsStream(false) :
null, vd.getOrderNumber()));
+
+ // {
+ // throw new
RepositoryException(
+ // "Unexpected stream
based ValueData implementaion on persistent level, only TransientValueData or
PersistedValueData allowed. "
+ // + vd.getClass());
+ // }
+ }
}
else
{
- // TODO ask dest file from VS provider, can be null after
- // TODO what if JDBC spool used, i.e. without VS = storage
will setPersistedFile()
- // TODO for JBC case, the storage connection will evict the
replicated Value to read it from the DB
- File destFile = null;
-
- TransientValueData tvd = (TransientValueData)vd;
- // TODO review TransientValueData logic about spool file and
stream
- values.add(new StreamPersistedValueData(destFile,
tvd.getSpoolFile(),
- tvd.getSpoolFile() == null ? tvd.getAsStream(false) : null,
vd.getOrderNumber()));
-
- // {
- // throw new RepositoryException(
- // "Unexpected stream based
ValueData implementaion on persistent level, only TransientValueData or PersistedValueData
allowed. "
- // + vd.getClass());
- // }
+ values.add(vd);
}
}
Modified:
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/BaseXmlImporter.java
===================================================================
---
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/BaseXmlImporter.java 2009-12-11
09:13:48 UTC (rev 1000)
+++
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/BaseXmlImporter.java 2009-12-11
10:27:59 UTC (rev 1001)
@@ -580,7 +580,7 @@
case ImportUUIDBehavior.IMPORT_UUID_COLLISION_REPLACE_EXISTING :
removeExisted(sameUuidItem);
ItemData parentOfsameUuidItem =
dataConsumer.getItemData(sameUuidItem.getParentIdentifier());
-
tree.push(ImportNodeData.createCopy((TransientNodeData)parentOfsameUuidItem));
+
tree.push(ImportNodeData.createCopy((NodeData)parentOfsameUuidItem));
break;
case ImportUUIDBehavior.IMPORT_UUID_COLLISION_THROW :
// If an incoming referenceable node has the same UUID as a node
Modified:
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/dataflow/ImportNodeData.java
===================================================================
---
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/dataflow/ImportNodeData.java 2009-12-11
09:13:48 UTC (rev 1000)
+++
jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/xml/importing/dataflow/ImportNodeData.java 2009-12-11
10:27:59 UTC (rev 1001)
@@ -22,6 +22,7 @@
import org.exoplatform.services.jcr.core.nodetype.NodeTypeData;
import org.exoplatform.services.jcr.datamodel.InternalQName;
import org.exoplatform.services.jcr.datamodel.ItemData;
+import org.exoplatform.services.jcr.datamodel.NodeData;
import org.exoplatform.services.jcr.datamodel.QPath;
import org.exoplatform.services.jcr.impl.dataflow.TransientNodeData;
import org.exoplatform.services.log.ExoLogger;
@@ -325,7 +326,7 @@
this.versionHistoryIdentifier = versionHistoryIdentifier;
}
- public static ImportNodeData createCopy(TransientNodeData source)
+ public static ImportNodeData createCopy(NodeData source)
{
return new ImportNodeData(source.getQPath(), source.getIdentifier(),
source.getPersistedVersion(), source
.getPrimaryTypeName(), source.getMixinTypeNames(), source.getOrderNumber(),
source.getParentIdentifier(),