[exo-jcr-commits] exo-jcr SVN: r1193 - jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation.

do-not-reply at jboss.org do-not-reply at jboss.org
Fri Dec 25 10:51:40 EST 2009


Author: sergiykarpenko
Date: 2009-12-25 10:51:39 -0500 (Fri, 25 Dec 2009)
New Revision: 1193

Modified:
   jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/NewJDBCStorageConnection.java
Log:
EXOJCR-302: NewJDBCStorageConnection updated

Modified: jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/NewJDBCStorageConnection.java
===================================================================
--- jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/NewJDBCStorageConnection.java	2009-12-25 15:45:38 UTC (rev 1192)
+++ jcr/branches/1.12.0-OPT/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/storage/jdbc/optimisation/NewJDBCStorageConnection.java	2009-12-25 15:51:39 UTC (rev 1193)
@@ -599,14 +599,14 @@
          ResultSet resultSet = findChildNodesByParentIdentifierNew(getInternalId(parent.getIdentifier()));
          if (resultSet.next())
          {
-            Map<String, TempNodeData> tempNodes = loadNodesData(resultSet, parent);
+            Map<String, TempNodeData> tempNodes = loadNodesData(resultSet);
 
             List<NodeData> childrens = new ArrayList<NodeData>(tempNodes.size());
             QPath parentQPath = parent.getQPath();
             AccessControlList parentACL = parent.getACL();
             for (TempNodeData data : tempNodes.values())
             {
-               NodeData nodeData = loadNodeRecordFromBuffer(data, parentQPath, parentACL);
+               NodeData nodeData = loadNodeFromTemporaryNodeData(data, parentQPath, parentACL);
                childrens.add(nodeData);
             }
             return childrens;
@@ -627,8 +627,8 @@
       }
    }
 
-   protected Map<String, TempNodeData> loadNodesData(ResultSet resultSet, NodeData parent) throws RepositoryException,
-      IOException, SQLException
+   protected Map<String, TempNodeData> loadNodesData(ResultSet resultSet) throws RepositoryException, IOException,
+      SQLException
    {
 
       Map<String, TempNodeData> nodesData = new LinkedHashMap<String, TempNodeData>();
@@ -855,7 +855,9 @@
             int itemType = resultSet.getInt(COLUMN_CLASS);
             if (itemType == I_CLASS_NODE)
             {
-               return loadNodeRecord(resultSet, null, null);
+               Map<String, TempNodeData> node = loadNodesData(resultSet);
+               return loadNodeFromTemporaryNodeData(node.get(cid), null, null);
+               //return loadNodeRecord(resultSet, null, null);
             }
             else
             {
@@ -921,12 +923,13 @@
                String firstNodeId = resultSet.getString(COLUMN_ID);
 
                // There may be two or more nodes, so load temp NodeDatas and return first one.
-               Map<String, TempNodeData> tempNodes = loadNodesData(resultSet, parent);
+               Map<String, TempNodeData> tempNodes = loadNodesData(resultSet);
 
                QPath parentQPath = parent.getQPath();
                AccessControlList parentACL = parent.getACL();
 
-               NodeData nodeData = loadNodeRecordFromBuffer(tempNodes.get(firstNodeId), parentQPath, parentACL);
+               NodeData nodeData = loadNodeFromTemporaryNodeData(tempNodes.get(firstNodeId), parentQPath, parentACL);
+               tempNodes.clear();
                return nodeData;
 
                //return loadNodeRecord(resultSet, parent.getQPath(), parent.getACL());
@@ -1804,6 +1807,10 @@
             }
          }
 
+         // preload properties
+
+         Map<String, List<byte[]>> properties = new LinkedHashMap<String, List<byte[]>>();
+
          // PRIMARY
          if (!item.next() || !item.getString(COLUMN_NAME).equals(Constants.JCR_PRIMARYTYPE.getAsString()))
          {
@@ -1923,7 +1930,7 @@
       }
    }
 
-   protected PersistedNodeData loadNodeRecordFromBuffer(TempNodeData buf, QPath parentPath, AccessControlList pACL)
+   protected PersistedNodeData loadNodeFromTemporaryNodeData(TempNodeData buf, QPath parentPath, AccessControlList pACL)
       throws RepositoryException, SQLException, IOException
    {
 



More information about the exo-jcr-commits mailing list