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/07/02 23:08:50 UTC
svn commit: r1142303 - in /oodt/trunk: CHANGES.txt
filemgr/src/main/java/org/apache/oodt/cas/filemgr/versioning/BasicVersioner.java
filemgr/src/test/org/apache/oodt/cas/filemgr/versioning/TestBasicVersioner.java
Author: mattmann
Date: Sat Jul 2 21:08:50 2011
New Revision: 1142303
URL: http://svn.apache.org/viewvc?rev=1142303&view=rev
Log:
- fix for OODT-295 BasicVersioner doesn't work with Hierarchical Products
Modified:
oodt/trunk/CHANGES.txt
oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/versioning/BasicVersioner.java
oodt/trunk/filemgr/src/test/org/apache/oodt/cas/filemgr/versioning/TestBasicVersioner.java
Modified: oodt/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/oodt/trunk/CHANGES.txt?rev=1142303&r1=1142302&r2=1142303&view=diff
==============================================================================
--- oodt/trunk/CHANGES.txt (original)
+++ oodt/trunk/CHANGES.txt Sat Jul 2 21:08:50 2011
@@ -1,6 +1,12 @@
Apache OODT Change Log
======================
+Release 0.4: Current Development
+
+* OODT-295 BasicVersioner doesn't work with Hierarchical
+ Products (mattmann, Tim Stough)
+
+
Release 0.3
--------------------------------------------
Release Date: June 20th, 2011
Modified: oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/versioning/BasicVersioner.java
URL: http://svn.apache.org/viewvc/oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/versioning/BasicVersioner.java?rev=1142303&r1=1142302&r2=1142303&view=diff
==============================================================================
--- oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/versioning/BasicVersioner.java (original)
+++ oodt/trunk/filemgr/src/main/java/org/apache/oodt/cas/filemgr/versioning/BasicVersioner.java Sat Jul 2 21:08:50 2011
@@ -86,8 +86,12 @@ public class BasicVersioner implements V
try {
dataStoreRef = new File(new URI(productRepoPath)).toURL()
- .toExternalForm()
- + URLEncoder.encode(productName, "UTF-8") + "/";
+ .toExternalForm();
+ if(!dataStoreRef.endsWith("/")){
+ dataStoreRef+="/";
+ }
+
+ dataStoreRef+= URLEncoder.encode(productName, "UTF-8") + "/";
LOG.log(Level.INFO, "BasicVersioner: generated DataStore ref: "
+ dataStoreRef + " from origRef: "
+ r.getOrigReference());
Modified: oodt/trunk/filemgr/src/test/org/apache/oodt/cas/filemgr/versioning/TestBasicVersioner.java
URL: http://svn.apache.org/viewvc/oodt/trunk/filemgr/src/test/org/apache/oodt/cas/filemgr/versioning/TestBasicVersioner.java?rev=1142303&r1=1142302&r2=1142303&view=diff
==============================================================================
--- oodt/trunk/filemgr/src/test/org/apache/oodt/cas/filemgr/versioning/TestBasicVersioner.java (original)
+++ oodt/trunk/filemgr/src/test/org/apache/oodt/cas/filemgr/versioning/TestBasicVersioner.java Sat Jul 2 21:08:50 2011
@@ -29,6 +29,7 @@ import org.apache.oodt.cas.filemgr.struc
import org.apache.oodt.cas.filemgr.structs.ProductType;
import org.apache.oodt.cas.filemgr.structs.Reference;
import org.apache.oodt.cas.filemgr.structs.exceptions.VersioningException;
+import org.apache.oodt.cas.metadata.Metadata;
//Junit imports
import junit.framework.TestCase;
@@ -87,4 +88,29 @@ public class TestBasicVersioner extends
}
+ public void testVersionHierarchical() {
+ String expected = "file:/archive/testdir/";
+ Product p = Product
+ .getDefaultFlatProduct("testdir", "urn:oodt:GenericFile");
+ p.setProductStructure(Product.STRUCTURE_HIERARCHICAL);
+ p.getProductType().setProductRepositoryPath("file:///archive");
+
+ p.getProductReferences().add(
+ new Reference("file:///tmp/somedir/", null, 4L));
+ p.getProductReferences().add(
+ new Reference("file:///tmp/somedir/file.txt", null, 4096L));
+
+ BasicVersioner versioner = new BasicVersioner();
+ try {
+ versioner.createDataStoreReferences(p, new Metadata());
+ } catch (Exception e) {
+ fail(e.getMessage());
+ }
+
+ assertNotNull(p.getProductReferences());
+ assertEquals(2, p.getProductReferences().size());
+ assertEquals(expected, p.getProductReferences().get(0)
+ .getDataStoreReference());
+ }
+
}