[exo-jcr-commits] exo-jcr SVN: r613 - jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache.

do-not-reply at jboss.org do-not-reply at jboss.org
Thu Nov 12 11:18:40 EST 2009


Author: pnedonosko
Date: 2009-11-12 11:18:40 -0500 (Thu, 12 Nov 2009)
New Revision: 613

Modified:
   jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JDBCCacheLoaderTest.java
Log:
EXOJCR-201: test for JDBC loader

Modified: jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JDBCCacheLoaderTest.java
===================================================================
--- jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JDBCCacheLoaderTest.java	2009-11-12 16:07:40 UTC (rev 612)
+++ jcr/branches/1.12.0-JBC/component/core/src/test/java/org/exoplatform/services/jcr/impl/storage/jbosscache/JDBCCacheLoaderTest.java	2009-11-12 16:18:40 UTC (rev 613)
@@ -83,23 +83,18 @@
 
       loader = new JDBCCacheLoader();
       loader.injectDependencies(persistentContainer);
-      
+
       initJCRRoot();
    }
-   
-   
 
    @Override
    protected void tearDown() throws Exception
    {
       // delete all in DB
-      
-      
+
       super.tearDown();
    }
 
-
-
    protected void initPersistence() throws Exception
    {
       // Create WorkspaceEntry
@@ -180,36 +175,36 @@
 
          containerEntry.setValueStorages(list);
       }
-      
+
       WorkspaceEntry workspaceEntry =
          new WorkspaceEntry(wsName != null ? wsName : IdGenerator.generate(), "nt:unstructured");
       workspaceEntry.setContainer(containerEntry);
 
-//      // Indexer
-//      ArrayList qParams = new ArrayList();
-//      qParams.add(new SimpleParameterEntry("indexDir", "../temp/index/" + IdGenerator.generate()));
-//      QueryHandlerEntry qEntry =
-//         new QueryHandlerEntry("org.exoplatform.services.jcr.impl.core.query.lucene.SearchIndex", qParams);
-//      workspaceEntry.setQueryHandler(qEntry);
-//
-//      // cache
-//      ArrayList cacheParams = new ArrayList();
-//      cacheParams.add(new SimpleParameterEntry("maxSize", "2000"));
-//      cacheParams.add(new SimpleParameterEntry("liveTime", "20m"));
-//      CacheEntry cacheEntry = new CacheEntry(cacheParams);
-//      cacheEntry.setType("org.exoplatform.services.jcr.impl.dataflow.persistent.LinkedWorkspaceStorageCacheImpl");
-//      workspaceEntry.setCache(cacheEntry);
-//      
-//      // lock
-//      LockManagerEntry lockManagerEntry = new LockManagerEntry();
-//      lockManagerEntry.setTimeout(900000);
-//      LockPersisterEntry persisterEntry = new LockPersisterEntry();
-//      persisterEntry.setType("org.exoplatform.services.jcr.impl.core.lock.FileSystemLockPersister");
-//      ArrayList lpParams = new ArrayList();
-//      lpParams.add(new SimpleParameterEntry("path", "../temp/lock"));
-//      persisterEntry.setParameters(lpParams);
-//      lockManagerEntry.setPersister(persisterEntry);
-//      workspaceEntry.setLockManager(lockManagerEntry);
+      //      // Indexer
+      //      ArrayList qParams = new ArrayList();
+      //      qParams.add(new SimpleParameterEntry("indexDir", "../temp/index/" + IdGenerator.generate()));
+      //      QueryHandlerEntry qEntry =
+      //         new QueryHandlerEntry("org.exoplatform.services.jcr.impl.core.query.lucene.SearchIndex", qParams);
+      //      workspaceEntry.setQueryHandler(qEntry);
+      //
+      //      // cache
+      //      ArrayList cacheParams = new ArrayList();
+      //      cacheParams.add(new SimpleParameterEntry("maxSize", "2000"));
+      //      cacheParams.add(new SimpleParameterEntry("liveTime", "20m"));
+      //      CacheEntry cacheEntry = new CacheEntry(cacheParams);
+      //      cacheEntry.setType("org.exoplatform.services.jcr.impl.dataflow.persistent.LinkedWorkspaceStorageCacheImpl");
+      //      workspaceEntry.setCache(cacheEntry);
+      //      
+      //      // lock
+      //      LockManagerEntry lockManagerEntry = new LockManagerEntry();
+      //      lockManagerEntry.setTimeout(900000);
+      //      LockPersisterEntry persisterEntry = new LockPersisterEntry();
+      //      persisterEntry.setType("org.exoplatform.services.jcr.impl.core.lock.FileSystemLockPersister");
+      //      ArrayList lpParams = new ArrayList();
+      //      lpParams.add(new SimpleParameterEntry("path", "../temp/lock"));
+      //      persisterEntry.setParameters(lpParams);
+      //      lockManagerEntry.setPersister(persisterEntry);
+      //      workspaceEntry.setLockManager(lockManagerEntry);
 
       // workspaceEntry
       return workspaceEntry;
@@ -247,7 +242,7 @@
       WorkspaceStorageConnection conn = persistentContainer.openConnection();
 
       // add root (/) with jcr:primaryType
-      addDbNode(conn, Constants.ROOT_PATH, Constants.ROOT_UUID, Constants.NT_UNSTRUCTURED, null);
+      addDbNode(conn, Constants.ROOT_PATH, Constants.ROOT_UUID, Constants.NT_UNSTRUCTURED);
 
       // add property (/jcr:mixinTypes)
       List<InternalQName> mixins = new ArrayList<InternalQName>();
@@ -258,14 +253,14 @@
 
       conn.commit();
    }
-   
+
    private void deleteJCRRoot() throws Exception
    {
       // prepare     
       WorkspaceStorageConnection conn = persistentContainer.openConnection();
 
       // add root (/) with jcr:primaryType
-      addDbNode(conn, Constants.ROOT_PATH, Constants.ROOT_UUID, Constants.NT_UNSTRUCTURED, null);
+      addDbNode(conn, Constants.ROOT_PATH, Constants.ROOT_UUID, Constants.NT_UNSTRUCTURED);
 
       // add property (/jcr:mixinTypes)
       List<InternalQName> mixins = new ArrayList<InternalQName>();
@@ -286,20 +281,14 @@
     * @param primaryType InternalQName
     * @throws Exception
     */
-   private void addDbNode(WorkspaceStorageConnection conn, QPath root, String nodeId, InternalQName primaryType, InternalQName[] mixinTypeNames)
-      throws Exception
+   private void addDbNode(WorkspaceStorageConnection conn, QPath root, String nodeId, InternalQName primaryType) throws Exception
    {
-      // create node with property jcr:primaryType
-      List<ItemData> list = createNode(root, nodeId, primaryType, mixinTypeNames);
-      
-      // add node with property jcr:primaryType
-      for (ItemData itemData : list)
-      {
-         if (itemData instanceof NodeData)
-            conn.add((NodeData)itemData);
-         else
-            conn.add((PropertyData)itemData);
-      }
+      // add root (/)
+      conn.add(new TransientNodeData(root, nodeId, 1, primaryType, new InternalQName[0], 0, null,
+         new AccessControlList()));
+
+      // add property (/jcr:primaryType)
+      conn.add(createProperty(root, nodeId, Constants.JCR_PRIMARYTYPE, primaryType, false));
    }
 
    /**
@@ -311,18 +300,18 @@
     * @param mixinTypeNames InternalQName 
     * @throws Exception
     */
-   private List<ItemData> createNode(QPath path, String nodeId, InternalQName primaryType, InternalQName[] mixinTypeNames)
-      throws Exception
+   private List<ItemData> createNode(QPath path, String nodeId, InternalQName primaryType,
+      InternalQName[] mixinTypeNames) throws Exception
    {
       List<ItemData> list = new ArrayList<ItemData>();
-      
+
       // add node 
-      list.add(new TransientNodeData(path, nodeId, 1, primaryType, (mixinTypeNames == null ? new InternalQName[0] : null), 0, null,
-         new AccessControlList()));
+      list.add(new TransientNodeData(path, nodeId, 1, primaryType, (mixinTypeNames == null ? new InternalQName[0]
+         : null), 0, null, new AccessControlList()));
 
       // add property (/jcr:primaryType)
       list.add(createProperty(path, nodeId, Constants.JCR_PRIMARYTYPE, primaryType, false));
-      
+
       return list;
    }
 
@@ -341,14 +330,14 @@
       InternalQName propertyName, Object propertyValue, boolean multiValued) throws Exception
    {
       TransientPropertyData propData = createProperty(nodePath, nodeId, propertyName, propertyValue, multiValued);
-      
+
       conn.add(propData);
 
       return propData;
    }
-   
+
    /**
-    * Create Property.
+    * Create Property data.
     *
     * @param nodePath QPath
     * @param nodeId String
@@ -357,13 +346,12 @@
     * @return TransientPropertyData
     * @throws Exception
     */
-   private TransientPropertyData createProperty(QPath nodePath, String nodeId,
-      InternalQName propertyName, Object propertyValue, boolean multiValued) throws Exception
+   private TransientPropertyData createProperty(QPath nodePath, String nodeId, InternalQName propertyName,
+      Object propertyValue, boolean multiValued) throws Exception
    {
       String propId = IdGenerator.generate();
       QPath propPath = QPath.makeChildPath(nodePath, propertyName);
-      TransientPropertyData propData =
-         new TransientPropertyData(propPath, propId, 1, 1, nodeId, multiValued);
+      TransientPropertyData propData = new TransientPropertyData(propPath, propId, 1, 1, nodeId, multiValued);
 
       List<Object> values = new ArrayList<Object>();
       if (multiValued)
@@ -398,7 +386,7 @@
 
       return propData;
    }
-   
+
    /**
     * Delete Property to the connection but doesn't save it.
     *
@@ -413,7 +401,7 @@
    {
       // add property (/jcr:primaryType)
       addDbProperty(conn, root, Constants.ROOT_UUID, Constants.JCR_PRIMARYTYPE, primaryType, false);
-      
+
       // add root (/)
       conn.delete(new TransientNodeData(root, nodeId, 1, primaryType, new InternalQName[0], 0, null,
          new AccessControlList()));
@@ -425,25 +413,27 @@
    {
       // prepare
       String nodeId = IdGenerator.generate();
-      List<ItemData> list = createNode(QPath.makeChildPath(Constants.ROOT_PATH, InternalQName.parse("[]node")), nodeId, Constants.NT_UNSTRUCTURED, null);
-      
+      List<ItemData> list =
+         createNode(QPath.makeChildPath(Constants.ROOT_PATH, InternalQName.parse("[]node")), nodeId,
+            Constants.NT_UNSTRUCTURED, null);
+
       List<Modification> modifications = new ArrayList<Modification>();
-      
-      for (ItemData itemData : list) 
+
+      for (ItemData itemData : list)
          if (itemData instanceof NodeData)
-            modifications.addAll(addNode((NodeData) itemData));
+            modifications.addAll(addNode((NodeData)itemData));
          else
-            modifications.addAll(addProperty((PropertyData) itemData));
-      
+            modifications.addAll(addProperty((PropertyData)itemData));
+
       loader.put(modifications);
 
       // tests it
-      NodeData srcNodeData =  (NodeData) list.get(0);
-      
+      NodeData srcNodeData = (NodeData)list.get(0);
+
       WorkspaceStorageConnection conn = persistentContainer.openConnection();
-      
-      NodeData destNodeData = (NodeData) conn.getItemData(nodeId);
-      
+
+      NodeData destNodeData = (NodeData)conn.getItemData(nodeId);
+
       assertNotNull(destNodeData);
       assertEquals(srcNodeData.getIdentifier(), destNodeData.getIdentifier());
       assertEquals(srcNodeData.getOrderNumber(), destNodeData.getOrderNumber());
@@ -456,19 +446,20 @@
    public void testAddProperty() throws Exception
    {
       // prepare
-      TransientPropertyData propData = createProperty(Constants.ROOT_PATH, Constants.ROOT_UUID, Constants.JCR_DATA,  "JCR DATA VALUE", false);
-      
+      TransientPropertyData propData =
+         createProperty(Constants.ROOT_PATH, Constants.ROOT_UUID, Constants.JCR_DATA, "JCR DATA VALUE", false);
+
       List<Modification> modifications = new ArrayList<Modification>();
-      
+
       modifications.addAll(addProperty(propData));
-      
+
       loader.put(modifications);
 
       // tests it
       WorkspaceStorageConnection connection = persistentContainer.openConnection();
-      
-      PropertyData destPropData = (PropertyData) connection.getItemData(propData.getIdentifier());
-      
+
+      PropertyData destPropData = (PropertyData)connection.getItemData(propData.getIdentifier());
+
       assertNotNull(destPropData);
       assertEquals(propData.getIdentifier(), destPropData.getIdentifier());
       assertEquals(propData.getParentIdentifier(), destPropData.getParentIdentifier());
@@ -477,10 +468,10 @@
       assertEquals(propData.getQPath(), destPropData.getQPath());
       assertEquals(propData.getValues().size(), destPropData.getValues().size());
       assertEquals(1, destPropData.getValues().size());
-      
+
       ValueData valueData = destPropData.getValues().get(0);
-      assertEquals("JCR DATA VALUE", new String (valueData.getAsByteArray(), "UTF-8"));
-      
+      assertEquals("JCR DATA VALUE", new String(valueData.getAsByteArray(), "UTF-8"));
+
    }
 
    public void testDeleteNode() throws Exception
@@ -488,35 +479,36 @@
 
       // prepare
       WorkspaceStorageConnection conn = persistentContainer.openConnection();
-      
+
       String nodeId = IdGenerator.generate();
-      addDbNode(conn, QPath.makeChildPath(Constants.ROOT_PATH, InternalQName.parse("[]node")), nodeId, Constants.NT_UNSTRUCTURED, null);
+      addDbNode(conn, QPath.makeChildPath(Constants.ROOT_PATH, InternalQName.parse("[]node")), nodeId,
+         Constants.NT_UNSTRUCTURED);
       conn.commit();
-      
+
       List<Modification> modifications = new ArrayList<Modification>();
-      
+
       conn = persistentContainer.openConnection();
-      
-      NodeData nodeData = (NodeData) conn.getItemData(nodeId);
-      
+
+      NodeData nodeData = (NodeData)conn.getItemData(nodeId);
+
       List<PropertyData> properties = conn.getChildPropertiesData(nodeData);
-      
+
       for (PropertyData propertyData : properties)
          modifications.addAll(removeProperty(propertyData));
-      
+
       modifications.addAll(removeNode(nodeData));
-      
+
       loader.put(modifications);
-      
+
       // tests it
       conn = persistentContainer.openConnection();
-      
-      NodeData removedNodeData = (NodeData) conn.getItemData(nodeData.getIdentifier()); 
-      
+
+      NodeData removedNodeData = (NodeData)conn.getItemData(nodeData.getIdentifier());
+
       assertNull(removedNodeData);
-      
+
       for (PropertyData propertyData : properties)
-         assertNull((PropertyData) conn.getItemData(propertyData.getIdentifier()));
+         assertNull((PropertyData)conn.getItemData(propertyData.getIdentifier()));
 
    }
 
@@ -525,26 +517,29 @@
 
       // prepare
       WorkspaceStorageConnection conn = persistentContainer.openConnection();
-      
+
       String nodeId = IdGenerator.generate();
-      addDbNode(conn, QPath.makeChildPath(Constants.ROOT_PATH, InternalQName.parse("[]node")), nodeId, Constants.NT_UNSTRUCTURED, null);
+      addDbNode(conn, QPath.makeChildPath(Constants.ROOT_PATH, InternalQName.parse("[]node")), nodeId,
+         Constants.NT_UNSTRUCTURED);
       conn.commit();
-      
+
       conn = persistentContainer.openConnection();
-      PropertyData propData = addDbProperty(conn, QPath.makeChildPath(Constants.ROOT_PATH, InternalQName.parse("[]node")), nodeId, InternalQName.parse("[]prop1"), "_Tesed_VALUE", false);
+      PropertyData propData =
+         addDbProperty(conn, QPath.makeChildPath(Constants.ROOT_PATH, InternalQName.parse("[]node")), nodeId,
+            InternalQName.parse("[]prop1"), "_Tesed_VALUE", false);
       conn.commit();
-      
+
       List<Modification> modifications = new ArrayList<Modification>();
-      
+
       modifications.addAll(removeProperty(propData));
-      
+
       loader.put(modifications);
-      
+
       // tests it
       conn = persistentContainer.openConnection();
-      
-      PropertyData removedPropertyData = (PropertyData) conn.getItemData(propData.getIdentifier()); 
-      
+
+      PropertyData removedPropertyData = (PropertyData)conn.getItemData(propData.getIdentifier());
+
       assertNull(removedPropertyData);
    }
 
@@ -552,9 +547,9 @@
    {
 
       // prepare
-      
+
       // tests it
-      
+
    }
 
    public void testUpdateProperty() throws Exception
@@ -580,22 +575,23 @@
 
       // prepare
       WorkspaceStorageConnection conn = persistentContainer.openConnection();
-      
+
       String nodeId = IdGenerator.generate();
-      addDbNode(conn, QPath.makeChildPath(Constants.ROOT_PATH, InternalQName.parse("[]node")), nodeId, Constants.NT_UNSTRUCTURED, null);
+      addDbNode(conn, QPath.makeChildPath(Constants.ROOT_PATH, InternalQName.parse("[]node")), nodeId,
+         Constants.NT_UNSTRUCTURED);
       conn.commit();
-      
+
       // tests it
       conn = persistentContainer.openConnection();
-      
-      NodeData srcNodeData =  (NodeData) conn.getItemData(nodeId);
-      
-      Map<Object, Object> attrebutes = loader.get(Fqn.fromString("/"+JBossCacheStorage.NODES + "/" + nodeId));
-      
+
+      NodeData srcNodeData = (NodeData)conn.getItemData(nodeId);
+
+      Map<Object, Object> attrebutes = loader.get(Fqn.fromString("/" + JBossCacheStorage.NODES + "/" + nodeId));
+
       assertNotNull(attrebutes);
-      
-      NodeData destNodeData = (NodeData) attrebutes.get(JBossCacheStorage.ITEM_DATA);
-      
+
+      NodeData destNodeData = (NodeData)attrebutes.get(JBossCacheStorage.ITEM_DATA);
+
       assertNotNull(destNodeData);
       assertEquals(srcNodeData.getIdentifier(), destNodeData.getIdentifier());
       assertEquals(srcNodeData.getOrderNumber(), destNodeData.getOrderNumber());
@@ -619,17 +615,20 @@
 
       // prepare
       WorkspaceStorageConnection connection = persistentContainer.openConnection();
-      
-      TransientPropertyData propData = addDbProperty(connection, Constants.ROOT_PATH, Constants.ROOT_UUID, Constants.JCR_DATA,  "JCR DATA VALUE", false);
+
+      TransientPropertyData propData =
+         addDbProperty(connection, Constants.ROOT_PATH, Constants.ROOT_UUID, Constants.JCR_DATA, "JCR DATA VALUE",
+            false);
       connection.commit();
-      
+
       // tests it
-      Map<Object, Object> attrebutes = loader.get(Fqn.fromString("/"+JBossCacheStorage.PROPS + "/" + propData.getIdentifier()));
-      
+      Map<Object, Object> attrebutes =
+         loader.get(Fqn.fromString("/" + JBossCacheStorage.PROPS + "/" + propData.getIdentifier()));
+
       assertNotNull(attrebutes);
-      
-      PropertyData destPropData = (PropertyData) attrebutes.get(JBossCacheStorage.ITEM_DATA);
-      
+
+      PropertyData destPropData = (PropertyData)attrebutes.get(JBossCacheStorage.ITEM_DATA);
+
       assertNotNull(destPropData);
       assertEquals(propData.getIdentifier(), destPropData.getIdentifier());
       assertEquals(propData.getParentIdentifier(), destPropData.getParentIdentifier());
@@ -638,9 +637,9 @@
       assertEquals(propData.getQPath(), destPropData.getQPath());
       assertEquals(propData.getValues().size(), destPropData.getValues().size());
       assertEquals(1, destPropData.getValues().size());
-      
+
       ValueData valueData = destPropData.getValues().get(0);
-      assertEquals("JCR DATA VALUE", new String (valueData.getAsByteArray(), "UTF-8"));
+      assertEquals("JCR DATA VALUE", new String(valueData.getAsByteArray(), "UTF-8"));
 
    }
 



More information about the exo-jcr-commits mailing list