You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oodt.apache.org by ma...@apache.org on 2011/01/11 04:15:30 UTC

svn commit: r1057466 - in /oodt/trunk/filemgr/src: main/java/org/apache/oodt/cas/filemgr/versioning/InPlaceVersioner.java test/org/apache/oodt/cas/filemgr/versioning/TestInPlaceVersioner.java

Author: mattmann
Date: Tue Jan 11 03:15:29 2011
New Revision: 1057466

URL: http://svn.apache.org/viewvc?rev=1057466&view=rev
Log:
- fix for OODT-108 Ability for the file manager to ingest a file in place: made it work for hierarchical products too, added unit test

Modified:
    oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/versioning/InPlaceVersioner.java
    oodt/trunk/filemgr/src/test/org/apache/oodt/cas/filemgr/versioning/TestInPlaceVersioner.java

Modified: oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/versioning/InPlaceVersioner.java
URL: http://svn.apache.org/viewvc/oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/versioning/InPlaceVersioner.java?rev=1057466&r1=1057465&r2=1057466&view=diff
==============================================================================
--- oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/versioning/InPlaceVersioner.java (original)
+++ oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/versioning/InPlaceVersioner.java Tue Jan 11 03:15:29 2011
@@ -57,9 +57,6 @@ public class InPlaceVersioner implements
    */
   public void createDataStoreReferences(Product product, Metadata metadata)
       throws VersioningException {
-
-    if (product.getProductStructure().equals(Product.STRUCTURE_FLAT)) {
-
       for (Reference r : product.getProductReferences()) {
         r.setDataStoreReference(r.getOrigReference());
         LOG.log(Level.INFO, "in-place ingestion at datastore path: "
@@ -67,10 +64,6 @@ public class InPlaceVersioner implements
             + ".which is the same as the product's origin: "
             + r.getOrigReference());
       }
-    } else {
-      throw new VersioningException("Unsupported product structure: "
-          + product.getProductStructure());
-    }
 
   }
 

Modified: oodt/trunk/filemgr/src/test/org/apache/oodt/cas/filemgr/versioning/TestInPlaceVersioner.java
URL: http://svn.apache.org/viewvc/oodt/trunk/filemgr/src/test/org/apache/oodt/cas/filemgr/versioning/TestInPlaceVersioner.java?rev=1057466&r1=1057465&r2=1057466&view=diff
==============================================================================
--- oodt/trunk/filemgr/src/test/org/apache/oodt/cas/filemgr/versioning/TestInPlaceVersioner.java (original)
+++ oodt/trunk/filemgr/src/test/org/apache/oodt/cas/filemgr/versioning/TestInPlaceVersioner.java Tue Jan 11 03:15:29 2011
@@ -38,7 +38,7 @@ public class TestInPlaceVersioner extend
   /**
    * @since OODT-108
    */
-  public void testVersioner() {
+  public void testVersionerFlat() {
     Product p = Product.getDefaultFlatProduct("test", "urn:oodt:GenericFile");
     Reference r = new Reference("file:///tmp/test.txt", null, 0L);
     p.getProductReferences().add(r);
@@ -51,4 +51,29 @@ public class TestInPlaceVersioner extend
     }
     assertTrue(r.getDataStoreReference().equals(r.getOrigReference()));
   }
+
+  /**
+   * @since OODT-108
+   */
+  public void testVersionerHierarchical() {
+    Product p = Product.getDefaultFlatProduct("test", "urn:oodt:GenericFile");
+    p.setProductStructure(Product.STRUCTURE_HIERARCHICAL);
+    Reference r = new Reference("file:///tmp", null, 0L);
+    Reference r2 = new Reference("file:///tmp/file1.txt", null, 4096L);
+    Reference r3 = new Reference("file:///tmp/file2.txt", null, 4096L);
+    p.getProductReferences().add(r);
+    p.getProductReferences().add(r2);
+    p.getProductReferences().add(r3);
+    InPlaceVersioner versioner = new InPlaceVersioner();
+    Metadata met = new Metadata();
+    try {
+      versioner.createDataStoreReferences(p, met);
+    } catch (Exception e) {
+      fail(e.getMessage());
+    }
+
+    for (Reference ref : p.getProductReferences()) {
+      assertEquals(ref.getDataStoreReference(), ref.getOrigReference());
+    }
+  }
 }