[exo-jcr-commits] exo-jcr SVN: r547 - jcr/branches/1.12.0-JBC/component/core/src/main/java/org/exoplatform/services/jcr/impl/core/query/cacheloader.

do-not-reply at jboss.org do-not-reply at jboss.org
Tue Nov 10 08:32:20 EST 2009


Author: sergiykarpenko
Date: 2009-11-10 08:32:20 -0500 (Tue, 10 Nov 2009)
New Revision: 547

Modified:
   jcr/branches/1.12.0-JBC/component/core/src/main/java/org/exoplatform/services/jcr/impl/core/query/cacheloader/IndexerCacheLoader.java
Log:
EXOJCR-202: IndexerCacheLoaderTest updated

Modified: jcr/branches/1.12.0-JBC/component/core/src/main/java/org/exoplatform/services/jcr/impl/core/query/cacheloader/IndexerCacheLoader.java
===================================================================
--- jcr/branches/1.12.0-JBC/component/core/src/main/java/org/exoplatform/services/jcr/impl/core/query/cacheloader/IndexerCacheLoader.java	2009-11-10 12:07:26 UTC (rev 546)
+++ jcr/branches/1.12.0-JBC/component/core/src/main/java/org/exoplatform/services/jcr/impl/core/query/cacheloader/IndexerCacheLoader.java	2009-11-10 13:32:20 UTC (rev 547)
@@ -16,6 +16,7 @@
  */
 package org.exoplatform.services.jcr.impl.core.query.cacheloader;
 
+import org.exoplatform.services.jcr.datamodel.PropertyData;
 import org.exoplatform.services.jcr.impl.core.query.SearchManager;
 import org.exoplatform.services.jcr.impl.storage.jbosscache.AbstractWriteOnlyCacheLoader;
 import org.exoplatform.services.jcr.impl.storage.jbosscache.JBossCacheStorage;
@@ -115,8 +116,7 @@
                   }
                   else
                   {
-                     // this is property
-                     // TODO do update of node - need uuid of owner node
+                     // this is property - do nothing
                   }
                   break;
                case PUT_DATA_ERASE :
@@ -128,24 +128,26 @@
                   }
                   else
                   {
-                     // TODO do update of node - need uuid of owner node
+                     // this is property - do nothing
                   }
-
                   break;
                case PUT_KEY_VALUE :
-                  // update node
-                  if (isNode(m.getFqn()))
+
+                  if (!isNode(m.getFqn()))
                   {
-                     if (addedNodes.contains(uuid))
-                     {
-                        // do nothing - node by uuid will be indexed
-                     }
-                     else
-                     {
-                        // update document by this uuid
-                        updateNodes.add(uuid);
-                     }
+                     PropertyData property = (PropertyData)m.getValue();
+                     uuid = property.getParentIdentifier();
                   }
+
+                  if (addedNodes.contains(uuid))
+                  {
+                     // do nothing - node by uuid will be indexed
+                  }
+                  else
+                  {
+                     // update document by this uuid
+                     updateNodes.add(uuid);
+                  }
                   break;
                case REMOVE_DATA :
                   // update node
@@ -155,8 +157,7 @@
                   }
                   else
                   {
-                     //TODO do update of owner node
-                     //updateNodes.add(owner_uuid);
+                     // this is a property - do nothing
                   }
                   break;
                case REMOVE_KEY_VALUE :
@@ -170,8 +171,7 @@
                   }
                   else
                   {
-                     //TODO do update of owner node
-                     //updateNodes.add(owner_uuid);
+                     // this is a property - do nothing
                   }
 
                   break;
@@ -183,8 +183,7 @@
                   }
                   else
                   {
-                     //TODO do update of owner node
-                     //updateNodes.add(owner_uuid);
+                     // this is a property - do nothing
                   }
 
                   break;
@@ -201,9 +200,8 @@
                   else
                   {
                      // must be never happen
-                     // TODO update both nodes
+                     throw new UnsupportedOperationException("Moving of properties is unsupported.");
                   }
-
                   break;
                default :
                   throw new CacheException("Unknown modification " + m.getType());



More information about the exo-jcr-commits mailing list