Repository: airavata
Updated Branches:
  refs/heads/develop a963d3f0c -> ec6e9d0ae


http://git-wip-us.apache.org/repos/asf/airavata/blob/03afa2da/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataProductMetaData.java
----------------------------------------------------------------------
diff --git 
a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataProductMetaData.java
 
b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataProductMetaData.java
index 8285fcf..f3b696f 100644
--- 
a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataProductMetaData.java
+++ 
b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataProductMetaData.java
@@ -30,20 +30,20 @@ import javax.persistence.*;
 @IdClass(DataProductMetaData_PK.class)
 public class DataProductMetaData {
     private final static Logger logger = 
LoggerFactory.getLogger(DataProductMetaData.class);
-    private String productId;
+    private String productUri;
     private String key;
     private String value;
 
     private DataProduct dataProduct;
 
     @Id
-    @Column(name = "PRODUCT_ID")
-    public String getProductId() {
-        return productId;
+    @Column(name = "PRODUCT_URI")
+    public String getProductUri() {
+        return productUri;
     }
 
-    public void setProductId(String productId) {
-        this.productId = productId;
+    public void setProductUri(String productUri) {
+        this.productUri = productUri;
     }
 
     @Id
@@ -66,7 +66,7 @@ public class DataProductMetaData {
     }
 
     @ManyToOne
-    @JoinColumn(name = "PRODUCT_ID", referencedColumnName = "PRODUCT_ID")
+    @JoinColumn(name = "PRODUCT_URI", referencedColumnName = "PRODUCT_URI")
     public DataProduct getDataProduct() {
         return dataProduct;
     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/03afa2da/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataProductMetaData_PK.java
----------------------------------------------------------------------
diff --git 
a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataProductMetaData_PK.java
 
b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataProductMetaData_PK.java
index 2242d3b..a5313d8 100644
--- 
a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataProductMetaData_PK.java
+++ 
b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataProductMetaData_PK.java
@@ -28,15 +28,15 @@ import java.io.Serializable;
 public class DataProductMetaData_PK implements Serializable {
     private final static Logger logger = 
LoggerFactory.getLogger(DataProductMetaData_PK.class);
 
-    private String productId;
+    private String productUri;
     private String key;
 
-    public String getProductId() {
-        return productId;
+    public String getProductUri() {
+        return productUri;
     }
 
-    public void setProductId(String productId) {
-        this.productId = productId;
+    public void setProductUri(String productUri) {
+        this.productUri = productUri;
     }
 
     public String getKey() {

http://git-wip-us.apache.org/repos/asf/airavata/blob/03afa2da/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataReplicaLocation.java
----------------------------------------------------------------------
diff --git 
a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataReplicaLocation.java
 
b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataReplicaLocation.java
index fa38815..bdfb9a7 100644
--- 
a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataReplicaLocation.java
+++ 
b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/model/DataReplicaLocation.java
@@ -32,11 +32,11 @@ import java.util.Collection;
 public class DataReplicaLocation {
     private final static Logger logger = 
LoggerFactory.getLogger(DataReplicaLocation.class);
     private String replicaId;
-    private String productId;
+    private String productUri;
     private String replicaName;
     private String replicaDescription;
     private String storageResourceId;
-    private String fileAbsolutePath;
+    private String filePath;
     private String replicaLocationCategory;
     private String replicaPersistentType;
     private Timestamp creationTime;
@@ -56,13 +56,13 @@ public class DataReplicaLocation {
         this.replicaId = replicaId;
     }
 
-    @Column(name = "PRODUCT_ID")
-    public String getProductId() {
-        return productId;
+    @Column(name = "PRODUCT_URI")
+    public String getProductUri() {
+        return productUri;
     }
 
-    public void setProductId(String productId) {
-        this.productId = productId;
+    public void setProductUri(String productUri) {
+        this.productUri = productUri;
     }
 
 
@@ -93,13 +93,13 @@ public class DataReplicaLocation {
         this.storageResourceId = storageResourceId;
     }
 
-    @Column(name = "FILE_ABSOLUTE_PATH")
-    public String getFileAbsolutePath() {
-        return fileAbsolutePath;
+    @Column(name = "FILE_PATH")
+    public String getFilePath() {
+        return filePath;
     }
 
-    public void setFileAbsolutePath(String fileAbsolutePath) {
-        this.fileAbsolutePath = fileAbsolutePath;
+    public void setFilePath(String filePath) {
+        this.filePath = filePath;
     }
 
     @Column(name = "CREATION_TIME")
@@ -149,7 +149,7 @@ public class DataReplicaLocation {
     }
 
     @ManyToOne
-    @JoinColumn(name = "PRODUCT_ID", referencedColumnName = "PRODUCT_ID")
+    @JoinColumn(name = "PRODUCT_URI", referencedColumnName = "PRODUCT_URI")
     public DataProduct getDataProduct() {
         return dataProduct;
     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/03afa2da/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/utils/ThriftDataModelConversion.java
----------------------------------------------------------------------
diff --git 
a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/utils/ThriftDataModelConversion.java
 
b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/utils/ThriftDataModelConversion.java
index 5f256f4..5426e8b 100644
--- 
a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/utils/ThriftDataModelConversion.java
+++ 
b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/data/catalog/utils/ThriftDataModelConversion.java
@@ -42,9 +42,10 @@ public class ThriftDataModelConversion {
     public static DataProductModel getDataProductModel(DataProduct 
dataProduct){
         if (dataProduct != null) {
             DataProductModel dataProductModel = new DataProductModel();
-            dataProductModel.setProductId(dataProduct.getResourceId());
+            dataProductModel.setProductUri(dataProduct.getProductUri());
+            dataProductModel.setLogicalPath(dataProduct.getLogicalPath());
             dataProductModel.setGatewayId(dataProduct.getGatewayId());
-            
dataProductModel.setParentProductId(dataProduct.getParentProductId());
+            
dataProductModel.setParentProductUri(dataProduct.getParentProductUri());
             dataProductModel.setProductName(dataProduct.getProductName());
             if(dataProduct.getDataProductType() != null)
                 
dataProductModel.setDataProductType(DataProductType.valueOf(dataProduct.getDataProductType()));
@@ -83,10 +84,11 @@ public class ThriftDataModelConversion {
     }
 
     public static DataProduct getUpdatedDataProduct(DataProductModel 
dataProductModel, DataProduct dataProduct){
-        dataProduct.setResourceId(dataProductModel.getProductId());
+        dataProduct.setProductUri(dataProductModel.getProductUri());
+        dataProduct.setLogicalPath(dataProductModel.getLogicalPath());
         dataProduct.setGatewayId(dataProductModel.getGatewayId());
         dataProduct.setProductName(dataProductModel.getProductName());
-        dataProduct.setParentProductId(dataProductModel.getParentProductId());
+        
dataProduct.setParentProductUri(dataProductModel.getParentProductUri());
         if(dataProductModel.getDataProductType() != null)
             
dataProduct.setDataProductType(dataProductModel.getDataProductType().toString());
         else
@@ -103,7 +105,7 @@ public class ThriftDataModelConversion {
             dataProductModel.getProductMetadata().keySet().stream().forEach(k 
-> {
                 String v = dataProductModel.getProductMetadata().get(k);
                 DataProductMetaData temp = new DataProductMetaData();
-                temp.setProductId(dataProduct.getResourceId());
+                temp.setProductUri(dataProduct.getProductUri());
                 temp.setKey(k);
                 temp.setValue(v);
                 dataProductMetaData.add(temp);
@@ -114,7 +116,7 @@ public class ThriftDataModelConversion {
             ArrayList<DataReplicaLocation> dataReplicaLocations = new 
ArrayList<>();
             dataProductModel.getReplicaLocations().stream().forEach(r->{
                 DataReplicaLocation dataReplicaLocationModel = 
getDataReplicaLocation(r);
-                
dataReplicaLocationModel.setProductId(dataProductModel.getProductId());
+                
dataReplicaLocationModel.setProductUri(dataProductModel.getProductUri());
                 dataReplicaLocations.add(dataReplicaLocationModel);
             });
             dataProduct.setDataReplicaLocations(dataReplicaLocations);
@@ -131,13 +133,13 @@ public class ThriftDataModelConversion {
         if (replicaLocation != null) {
             DataReplicaLocationModel replicaLocationModel = new 
DataReplicaLocationModel();
             replicaLocationModel.setReplicaId(replicaLocation.getReplicaId());
-            replicaLocationModel.setProductId(replicaLocation.getProductId());
+            
replicaLocationModel.setProductUri(replicaLocation.getProductUri());
             
replicaLocationModel.setReplicaName(replicaLocation.getReplicaName());
             
replicaLocationModel.setReplicaDescription(replicaLocation.getReplicaDescription());
             
replicaLocationModel.setStorageResourceId(replicaLocation.getStorageResourceId());
             if(replicaLocation.getValidUntilTime() != null)
                 
replicaLocationModel.setValidUntilTime(replicaLocation.getValidUntilTime().getTime());
-            
replicaLocationModel.setFilePath(replicaLocation.getFileAbsolutePath());
+            replicaLocationModel.setFilePath(replicaLocation.getFilePath());
             if(replicaLocation.getCreationTime() != null)
                 
replicaLocationModel.setCreationTime(replicaLocation.getCreationTime().getTime());
             if(replicaLocation.getLastModifiedTime() != null)
@@ -165,11 +167,11 @@ public class ThriftDataModelConversion {
     public static DataReplicaLocation 
getUpdatedDataReplicaLocation(DataReplicaLocationModel dataReplicaLocationModel,
                                                                     
DataReplicaLocation dataReplicaLocation){
         
dataReplicaLocation.setReplicaId(dataReplicaLocationModel.getReplicaId());
-        
dataReplicaLocation.setProductId(dataReplicaLocationModel.getProductId());
+        
dataReplicaLocation.setProductUri(dataReplicaLocationModel.getProductUri());
         
dataReplicaLocation.setReplicaName(dataReplicaLocationModel.getReplicaName());
         
dataReplicaLocation.setReplicaDescription(dataReplicaLocationModel.getReplicaDescription());
         
dataReplicaLocation.setStorageResourceId(dataReplicaLocationModel.getStorageResourceId());
-        
dataReplicaLocation.setFileAbsolutePath(dataReplicaLocationModel.getFilePath());
+        
dataReplicaLocation.setFilePath(dataReplicaLocationModel.getFilePath());
         if(dataReplicaLocationModel.getValidUntilTime() > 0)
             dataReplicaLocation.setValidUntilTime(new 
Timestamp(dataReplicaLocationModel.getValidUntilTime()));
         if(dataReplicaLocationModel.getCreationTime() > 0)
@@ -185,7 +187,7 @@ public class ThriftDataModelConversion {
             
dataReplicaLocationModel.getReplicaMetadata().keySet().stream().forEach(k -> {
                 String v = 
dataReplicaLocationModel.getReplicaMetadata().get(k);
                 DataReplicaMetaData temp = new DataReplicaMetaData();
-                temp.setReplicaId(dataReplicaLocationModel.getProductId());
+                temp.setReplicaId(dataReplicaLocationModel.getProductUri());
                 temp.setKey(k);
                 temp.setValue(v);
                 dataReplicaMetadata.add(temp);

http://git-wip-us.apache.org/repos/asf/airavata/blob/03afa2da/modules/registry/registry-core/src/main/resources/datacatalog-derby.sql
----------------------------------------------------------------------
diff --git 
a/modules/registry/registry-core/src/main/resources/datacatalog-derby.sql 
b/modules/registry/registry-core/src/main/resources/datacatalog-derby.sql
index 56b8b65..78dc165 100644
--- a/modules/registry/registry-core/src/main/resources/datacatalog-derby.sql
+++ b/modules/registry/registry-core/src/main/resources/datacatalog-derby.sql
@@ -21,40 +21,41 @@
 
 CREATE TABLE DATA_PRODUCT
 (
-        PRODUCT_ID VARCHAR (255),
+        PRODUCT_URI VARCHAR (255),
         GATEWAY_ID VARCHAR (255),
         PRODUCT_NAME VARCHAR (255),
         PRODUCT_DESCRIPTION VARCHAR (1024),
-        PARENT_PRODUCT_ID VARCHAR (255),
+        PARENT_PRODUCT_URI VARCHAR (255),
+        LOGICAL_PATH VARCHAR (255),
         OWNER_NAME VARCHAR (255),
         PRODUCT_SIZE INTEGER ,
         CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
         LAST_MODIFIED_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
-        PRIMARY KEY (PRODUCT_ID)
+        PRIMARY KEY (PRODUCT_URI)
 );
 
 CREATE TABLE DATA_REPLICA_LOCATION
 (
         REPLICA_ID VARCHAR (255),
-        PRODUCT_ID VARCHAR (255) NOT NULL,
+        PRODUCT_URI VARCHAR (255) NOT NULL,
         REPLICA_NAME VARCHAR (255),
         REPLICA_DESCRIPTION VARCHAR (1024),
         STORAGE_RESOURCE_ID VARCHAR (255),
-        FILE_ABSOLUTE_PATH VARCHAR (4096),
+        FILE_PATH VARCHAR (4096),
         CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
         LAST_MODIFIED_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
         VALID_UNTIL_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
         PRIMARY KEY (REPLICA_ID),
-        FOREIGN KEY (PRODUCT_ID) REFERENCES DATA_PRODUCT(PRODUCT_ID) ON DELETE 
CASCADE
+        FOREIGN KEY (PRODUCT_URI) REFERENCES DATA_PRODUCT(PRODUCT_URI) ON 
DELETE CASCADE
 );
 
 CREATE TABLE DATA_PRODUCT_METADATA
 (
-        PRODUCT_ID VARCHAR(255),
+        PRODUCT_URI VARCHAR(255),
         METADATA_KEY VARCHAR(255),
         METADATA_VALUE VARCHAR(2048),
-        PRIMARY KEY(PRODUCT_ID, METADATA_KEY),
-        FOREIGN KEY (PRODUCT_ID) REFERENCES DATA_PRODUCT(PRODUCT_ID) ON DELETE 
CASCADE
+        PRIMARY KEY(PRODUCT_URI, METADATA_KEY),
+        FOREIGN KEY (PRODUCT_URI) REFERENCES DATA_PRODUCT(PRODUCT_URI) ON 
DELETE CASCADE
 );
 
 CREATE TABLE DATA_REPLICA_METADATA

http://git-wip-us.apache.org/repos/asf/airavata/blob/03afa2da/modules/registry/registry-core/src/main/resources/datacatalog-mysql.sql
----------------------------------------------------------------------
diff --git 
a/modules/registry/registry-core/src/main/resources/datacatalog-mysql.sql 
b/modules/registry/registry-core/src/main/resources/datacatalog-mysql.sql
index 04b6715..e74c4b8 100644
--- a/modules/registry/registry-core/src/main/resources/datacatalog-mysql.sql
+++ b/modules/registry/registry-core/src/main/resources/datacatalog-mysql.sql
@@ -19,42 +19,43 @@
  *
  */
 
-CREATE TABLE DATA_RESOURCE
+CREATE TABLE DATA_PRODUCT
 (
-        RESOURCE_ID VARCHAR (255),
+        PRODUCT_URI VARCHAR (255),
         GATEWAY_ID VARCHAR (255),
-        RESOURCE_NAME VARCHAR (255),
-        RESOURCE_DESCRIPTION VARCHAR (255),
+        PRODUCT_NAME VARCHAR (255),
+        LOGICAL_PATH VARCHAR (255),
+        PRODUCT_DESCRIPTION VARCHAR (255),
         OWNER_NAME VARCHAR (255),
-        PARENT_RESOURCE_ID VARCHAR (255),
-        RESOURCE_SIZE INT,
+        PARENT_PRODUCT_ID VARCHAR (255),
+        PRODUCT_SIZE INT,
         CREATION_TIME TIMESTAMP NULL DEFAULT '0000-00-00 00:00:00',
         LAST_MODIFIED_TIME TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE 
CURRENT_TIMESTAMP,
-        PRIMARY KEY (RESOURCE_ID)
+        PRIMARY KEY (PRODUCT_URI)
 );
 
 CREATE TABLE DATA_REPLICA_LOCATION
 (
         REPLICA_ID VARCHAR (255),
-        RESOURCE_ID VARCHAR (255) NOT NULL,
+        PRODUCT_URI VARCHAR (255) NOT NULL,
         REPLICA_NAME VARCHAR (255),
         REPLICA_DESCRIPTION VARCHAR (255),
         STORAGE_RESOURCE_ID VARCHAR (255),
-        FILE_ABSOLUTE_PATH VARCHAR (255),
+        FILE_PATH VARCHAR (255),
         CREATION_TIME TIMESTAMP NULL DEFAULT '0000-00-00 00:00:00',
         LAST_MODIFIED_TIME TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE 
CURRENT_TIMESTAMP,
         VALID_UNTIL_TIME TIMESTAMP NULL DEFAULT '0000-00-00 00:00:00',
         PRIMARY KEY (REPLICA_ID),
-        FOREIGN KEY (RESOURCE_ID) REFERENCES DATA_RESOURCE(RESOURCE_ID) ON 
DELETE CASCADE
+        FOREIGN KEY (PRODUCT_URI) REFERENCES DATA_PRODUCT(PRODUCT_URI) ON 
DELETE CASCADE
 );
 
-CREATE TABLE DATA_RESOURCE_METADATA
+CREATE TABLE DATA_PRODUCT_METADATA
 (
-        RESOURCE_ID VARCHAR(255),
+        PRODUCT_URI VARCHAR(255),
         METADATA_KEY VARCHAR(255),
         METADATA_VALUE VARCHAR(255),
-        PRIMARY KEY(RESOURCE_ID, METADATA_KEY),
-        FOREIGN KEY (RESOURCE_ID) REFERENCES DATA_RESOURCE(RESOURCE_ID) ON 
DELETE CASCADE
+        PRIMARY KEY(PRODUCT_URI, METADATA_KEY),
+        FOREIGN KEY (PRODUCT_URI) REFERENCES DATA_PRODUCT(PRODUCT_URI) ON 
DELETE CASCADE
 );
 
 CREATE TABLE DATA_REPLICA_METADATA

http://git-wip-us.apache.org/repos/asf/airavata/blob/03afa2da/modules/registry/registry-core/src/test/java/org/apache/airavata/data/catalog/DataCatalogTest.java
----------------------------------------------------------------------
diff --git 
a/modules/registry/registry-core/src/test/java/org/apache/airavata/data/catalog/DataCatalogTest.java
 
b/modules/registry/registry-core/src/test/java/org/apache/airavata/data/catalog/DataCatalogTest.java
index 3e9f598..9c86c60 100644
--- 
a/modules/registry/registry-core/src/test/java/org/apache/airavata/data/catalog/DataCatalogTest.java
+++ 
b/modules/registry/registry-core/src/test/java/org/apache/airavata/data/catalog/DataCatalogTest.java
@@ -78,8 +78,8 @@ public class DataCatalogTest {
     @Test
     public void testPublishDataProduct(){
         try {
-            String productId = 
datacatalog.registerDataProduct(dataProductModel);
-            org.junit.Assert.assertNotNull(productId);
+            String productUri = 
datacatalog.registerDataProduct(dataProductModel);
+            org.junit.Assert.assertNotNull(productUri);
         } catch (DataCatalogException e) {
             e.printStackTrace();
             Assert.fail();
@@ -91,11 +91,11 @@ public class DataCatalogTest {
         try {
             boolean result = datacatalog.removeDataProduct("234234234");
             Assert.assertFalse(result);
-            String productId = 
datacatalog.registerDataProduct(dataProductModel);
-            Assert.assertNotNull(productId);
-            result = datacatalog.removeDataProduct(productId);
+            String productUri = 
datacatalog.registerDataProduct(dataProductModel);
+            Assert.assertNotNull(productUri);
+            result = datacatalog.removeDataProduct(productUri);
             Assert.assertTrue(result);
-            result = datacatalog.removeDataProduct(productId);
+            result = datacatalog.removeDataProduct(productUri);
             Assert.assertFalse(result);
         } catch (DataCatalogException e) {
             e.printStackTrace();
@@ -107,15 +107,15 @@ public class DataCatalogTest {
     public void testGetDataProduct(){
         try {
             dataProductModel.setDataProductType(DataProductType.COLLECTION);
-            String productId = 
datacatalog.registerDataProduct(dataProductModel);
-            Assert.assertNotNull(productId);
-            DataProductModel persistedCopy = 
datacatalog.getDataProduct(productId);
+            String productUri = 
datacatalog.registerDataProduct(dataProductModel);
+            Assert.assertNotNull(productUri);
+            DataProductModel persistedCopy = 
datacatalog.getDataProduct(productUri);
             Assert.assertNotNull(persistedCopy);
-            dataProductModel.setParentProductId(productId);
+            dataProductModel.setParentProductUri(productUri);
             dataProductModel.setDataProductType(DataProductType.FILE);
             datacatalog.registerDataProduct(dataProductModel);
             datacatalog.registerDataProduct(dataProductModel);
-            persistedCopy = datacatalog.getDataProduct(productId);
+            persistedCopy = datacatalog.getDataProduct(productUri);
             Assert.assertTrue(persistedCopy.getChildProducts().size()==2);
         } catch (DataCatalogException e) {
             e.printStackTrace();
@@ -126,18 +126,18 @@ public class DataCatalogTest {
     @Test
     public void testUpdateDataProduct(){
         try {
-            dataProductModel.setProductId(UUID.randomUUID().toString());
+            dataProductModel.setProductUri(UUID.randomUUID().toString());
             boolean result = datacatalog.updateDataProduct(dataProductModel);
             Assert.assertFalse(result);
             datacatalog.registerDataProduct(dataProductModel);
             dataProductModel.setProductName("updated-name");
             datacatalog.updateDataProduct(dataProductModel);
-            dataProductModel = 
datacatalog.getDataProduct(dataProductModel.getProductId());
+            dataProductModel = 
datacatalog.getDataProduct(dataProductModel.getProductUri());
             
Assert.assertTrue(dataProductModel.getProductName().equals("updated-name"));
             Assert.assertTrue(dataProductModel.getProductMetadata().size()==1);
             dataProductModel.getProductMetadata().put("name2","name2");
             datacatalog.updateDataProduct(dataProductModel);
-            dataProductModel = 
datacatalog.getDataProduct(dataProductModel.getProductId());
+            dataProductModel = 
datacatalog.getDataProduct(dataProductModel.getProductUri());
             Assert.assertTrue(dataProductModel.getProductMetadata().size()==2);
         } catch (DataCatalogException e) {
             e.printStackTrace();
@@ -148,8 +148,8 @@ public class DataCatalogTest {
     @Test
     public void testPublishReplicaLocation(){
         try {
-            String productId = 
datacatalog.registerDataProduct(dataProductModel);
-            replicaLocationModel.setProductId(productId);
+            String productUri = 
datacatalog.registerDataProduct(dataProductModel);
+            replicaLocationModel.setProductUri(productUri);
             String replicaId = 
datacatalog.registerReplicaLocation(replicaLocationModel);
             Assert.assertNotNull(replicaId);;
         } catch (DataCatalogException e) {
@@ -161,8 +161,8 @@ public class DataCatalogTest {
     @Test
     public void testRemoveReplicaLocation(){
         try {
-            String productId = 
datacatalog.registerDataProduct(dataProductModel);
-            replicaLocationModel.setProductId(productId);
+            String productUri = 
datacatalog.registerDataProduct(dataProductModel);
+            replicaLocationModel.setProductUri(productUri);
             String replicaId = 
datacatalog.registerReplicaLocation(replicaLocationModel);
             boolean result = datacatalog.removeReplicaLocation(replicaId);
             Assert.assertTrue(result);
@@ -177,8 +177,8 @@ public class DataCatalogTest {
     @Test
     public void testGetReplicaLocation(){
         try {
-            String productId = 
datacatalog.registerDataProduct(dataProductModel);
-            replicaLocationModel.setProductId(productId);
+            String productUri = 
datacatalog.registerDataProduct(dataProductModel);
+            replicaLocationModel.setProductUri(productUri);
             String replicaId = 
datacatalog.registerReplicaLocation(replicaLocationModel);
             DataReplicaLocationModel persistedCopy = 
datacatalog.getReplicaLocation(replicaId);
             Assert.assertNotNull(persistedCopy);
@@ -191,8 +191,8 @@ public class DataCatalogTest {
     @Test
     public void testUpdateReplicaLocation(){
         try {
-            String productId = 
datacatalog.registerDataProduct(dataProductModel);
-            replicaLocationModel.setProductId(productId);
+            String productUri = 
datacatalog.registerDataProduct(dataProductModel);
+            replicaLocationModel.setProductUri(productUri);
             String replicaId = 
datacatalog.registerReplicaLocation(replicaLocationModel);
             DataReplicaLocationModel persistedCopy = 
datacatalog.getReplicaLocation(replicaId);
             persistedCopy.setReplicaDescription("updated-description");
@@ -209,10 +209,10 @@ public class DataCatalogTest {
     @Test
     public void testGetAllReplicaLocations(){
         try {
-            String productId = 
datacatalog.registerDataProduct(dataProductModel);
-            replicaLocationModel.setProductId(productId);
+            String productUri = 
datacatalog.registerDataProduct(dataProductModel);
+            replicaLocationModel.setProductUri(productUri);
             datacatalog.registerReplicaLocation(replicaLocationModel);
-            List<DataReplicaLocationModel> replicaLocationModelList = 
datacatalog.getAllReplicaLocations(productId);
+            List<DataReplicaLocationModel> replicaLocationModelList = 
datacatalog.getAllReplicaLocations(productUri);
             
Assert.assertNotNull(replicaLocationModelList.get(0).getReplicaId());
         } catch (DataCatalogException e) {
             e.printStackTrace();

http://git-wip-us.apache.org/repos/asf/airavata/blob/03afa2da/thrift-interface-descriptions/airavata-apis/airavata_api.thrift
----------------------------------------------------------------------
diff --git a/thrift-interface-descriptions/airavata-apis/airavata_api.thrift 
b/thrift-interface-descriptions/airavata-apis/airavata_api.thrift
index 3e6f70a..6e6f38f 100644
--- a/thrift-interface-descriptions/airavata-apis/airavata_api.thrift
+++ b/thrift-interface-descriptions/airavata-apis/airavata_api.thrift
@@ -2153,7 +2153,7 @@ service Airavata {
    * Add a Local data movement details to a compute resource
    *  App catalog will return a dataMovementInterfaceId which will be added to 
the dataMovementInterfaces.
    *
-   * @param productId
+   * @param productUri
    *   The identifier of the compute resource to which JobSubmission protocol 
to be added
    *
    * @param DMType
@@ -2170,7 +2170,7 @@ service Airavata {
    *
    **/
   string addLocalDataMovementDetails(1: required security_model.AuthzToken 
authzToken,
-            2: required string productId,
+            2: required string productUri,
             3: required data_movement_models.DMType dataMoveType,
             4: required i32 priorityOrder,
             5: required data_movement_models.LOCALDataMovement 
localDataMovement)
@@ -2223,7 +2223,7 @@ service Airavata {
    * Add a SCP data movement details to a compute resource
    *  App catalog will return a dataMovementInterfaceId which will be added to 
the dataMovementInterfaces.
    *
-   * @param productId
+   * @param productUri
    *   The identifier of the compute resource to which JobSubmission protocol 
to be added
    *
    * @param priorityOrder
@@ -2237,7 +2237,7 @@ service Airavata {
    *
   */
   string addSCPDataMovementDetails(1: required security_model.AuthzToken 
authzToken,
-            2: required string productId,
+            2: required string productUri,
             3: required data_movement_models.DMType dataMoveType,
             4: required i32 priorityOrder,
             5: required data_movement_models.SCPDataMovement scpDataMovement)
@@ -2289,7 +2289,7 @@ service Airavata {
    * Add a UNICORE data movement details to a compute resource
    *  App catalog will return a dataMovementInterfaceId which will be added to 
the dataMovementInterfaces.
    *
-   * @param productId
+   * @param productUri
    *   The identifier of the compute resource to which data movement protocol 
to be added
    *
    * @param priorityOrder
@@ -2303,7 +2303,7 @@ service Airavata {
    *
   */
  string addUnicoreDataMovementDetails(1: required security_model.AuthzToken 
authzToken,
-              2: required string productId,
+              2: required string productUri,
               3: required data_movement_models.DMType dataMoveType,
               4: required i32 priorityOrder,
               5: required data_movement_models.UnicoreDataMovement 
unicoreDataMovement)
@@ -2358,7 +2358,7 @@ service Airavata {
    * Add a GridFTP data movement details to a compute resource
    *  App catalog will return a dataMovementInterfaceId which will be added to 
the dataMovementInterfaces.
    *
-   * @param productId
+   * @param productUri
    *   The identifier of the compute resource to which dataMovement protocol 
to be added
    *
    * @param DMType
@@ -2376,7 +2376,7 @@ service Airavata {
    **/
 
   string addGridFTPDataMovementDetails(1: required security_model.AuthzToken 
authzToken,
-            2: required string productId,
+            2: required string productUri,
             3: required data_movement_models.DMType dataMoveType,
             4: required i32 priorityOrder,
             5: required data_movement_models.GridFTPDataMovement 
gridFTPDataMovement)
@@ -2529,7 +2529,7 @@ service Airavata {
    *
    **/
 
-  bool deleteDataMovementInterface(1: required security_model.AuthzToken 
authzToken, 2: required string productId,
+  bool deleteDataMovementInterface(1: required security_model.AuthzToken 
authzToken, 2: required string productUri,
             3: required string dataMovementInterfaceId,
             4: required data_movement_models.DMType dataMoveType,)
        throws (1: airavata_errors.InvalidRequestException ire,

http://git-wip-us.apache.org/repos/asf/airavata/blob/03afa2da/thrift-interface-descriptions/data-models/data-catalog-models/data_catalog_models.thrift
----------------------------------------------------------------------
diff --git 
a/thrift-interface-descriptions/data-models/data-catalog-models/data_catalog_models.thrift
 
b/thrift-interface-descriptions/data-models/data-catalog-models/data_catalog_models.thrift
index 19454bd..9876b20 100644
--- 
a/thrift-interface-descriptions/data-models/data-catalog-models/data_catalog_models.thrift
+++ 
b/thrift-interface-descriptions/data-models/data-catalog-models/data_catalog_models.thrift
@@ -41,24 +41,25 @@ enum DataProductType {
 }
 
 struct DataProductModel {
-    1: optional string productId,
+    1: optional string productUri,
     2: optional string gatewayId,
-    3: optional string parentProductId,
-    4: optional string productName,
-    5: optional string productDescription,
-    6: optional string ownerName,
-    7: optional DataProductType dataProductType,
-    8: optional i32 productSize,
-    9: optional i64 creationTime,
-    10: optional i64 lastModifiedTime,
-    11: optional map<string, string> productMetadata,
-    12: optional list<DataReplicaLocationModel> replicaLocations,
-    13: optional list<DataProductModel> childProducts
+    3: optional string parentProductUri,
+    4: optional string logicalPath,
+    5: optional string productName,
+    6: optional string productDescription,
+    7: optional string ownerName,
+    8: optional DataProductType dataProductType,
+    9: optional i32 productSize,
+    10: optional i64 creationTime,
+    11: optional i64 lastModifiedTime,
+    12: optional map<string, string> productMetadata,
+    13: optional list<DataReplicaLocationModel> replicaLocations,
+    14: optional list<DataProductModel> childProducts
 }
 
 struct DataReplicaLocationModel {
     1: optional string replicaId,
-    2: optional string productId,
+    2: optional string productUri,
     3: optional string replicaName,
     4: optional string replicaDescription,
     5: optional i64 creationTime,

Reply via email to