http://git-wip-us.apache.org/repos/asf/airavata/blob/404913ac/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/DataMovementProtocolResource.java
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/DataMovementProtocolResource.java
 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/DataMovementProtocolResource.java
index db7080d..6a5b88e 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/DataMovementProtocolResource.java
+++ 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/DataMovementProtocolResource.java
@@ -1,360 +1,360 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.aiaravata.application.catalog.data.resources;
-
-import org.airavata.appcatalog.cpi.AppCatalogException;
-import org.apache.aiaravata.application.catalog.data.model.ComputeResource;
-import 
org.apache.aiaravata.application.catalog.data.model.DataMovementProtocol;
-import 
org.apache.aiaravata.application.catalog.data.model.DataMovementProtocolPK;
-import org.apache.aiaravata.application.catalog.data.util.AppCatalogJPAUtils;
-import 
org.apache.aiaravata.application.catalog.data.util.AppCatalogQueryGenerator;
-import 
org.apache.aiaravata.application.catalog.data.util.AppCatalogResourceType;
-import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import javax.persistence.EntityManager;
-import javax.persistence.Query;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class DataMovementProtocolResource extends AbstractResource {
-
-    private final static Logger logger = 
LoggerFactory.getLogger(DataMovementProtocolResource.class);
-
-    private String resourceID;
-    private String dataMoveID;
-    private String dataMoveType;
-    private ComputeResourceResource computeHostResource;
-
-    public void remove(Object identifier) throws AppCatalogException {
-        HashMap<String, String> ids;
-        if (identifier instanceof Map) {
-            ids = (HashMap) identifier;
-        } else {
-            logger.error("Identifier should be a map with the field name and 
it's value");
-            throw new AppCatalogException("Identifier should be a map with the 
field name and it's value");
-        }
-
-        EntityManager em = null;
-        try {
-            em = AppCatalogJPAUtils.getEntityManager();
-            em.getTransaction().begin();
-            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(DATA_MOVEMENT_PROTOCOL);
-            generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_TYPE, 
ids.get(DataMoveProtocolConstants.DATA_MOVE_TYPE));
-            generator.setParameter(DataMoveProtocolConstants.RESOURCE_ID, 
ids.get(DataMoveProtocolConstants.RESOURCE_ID));
-            generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_ID, 
ids.get(DataMoveProtocolConstants.DATA_MOVE_ID));
-            Query q = generator.deleteQuery(em);
-            q.executeUpdate();
-            em.getTransaction().commit();
-            em.close();
-        } catch (ApplicationSettingsException e) {
-            logger.error(e.getMessage(), e);
-            throw new AppCatalogException(e);
-        } finally {
-            if (em != null && em.isOpen()) {
-                if (em.getTransaction().isActive()) {
-                    em.getTransaction().rollback();
-                }
-                em.close();
-            }
-        }
-    }
-
-    public Resource get(Object identifier) throws AppCatalogException {
-        HashMap<String, String> ids;
-        if (identifier instanceof Map) {
-            ids = (HashMap) identifier;
-        } else {
-            logger.error("Identifier should be a map with the field name and 
it's value");
-            throw new AppCatalogException("Identifier should be a map with the 
field name and it's value");
-        }
-
-        EntityManager em = null;
-        try {
-            em = AppCatalogJPAUtils.getEntityManager();
-            em.getTransaction().begin();
-            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(DATA_MOVEMENT_PROTOCOL);
-            generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_TYPE, 
ids.get(DataMoveProtocolConstants.DATA_MOVE_TYPE));
-            generator.setParameter(DataMoveProtocolConstants.RESOURCE_ID, 
ids.get(DataMoveProtocolConstants.RESOURCE_ID));
-            generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_ID, 
ids.get(DataMoveProtocolConstants.DATA_MOVE_ID));
-            Query q = generator.selectQuery(em);
-            DataMovementProtocol dataMovementProtocol = (DataMovementProtocol) 
q.getSingleResult();
-            DataMovementProtocolResource dataMovementProtocolResource =
-                    (DataMovementProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.DATA_MOVEMENT_PROTOCOL, 
dataMovementProtocol);
-            em.getTransaction().commit();
-            em.close();
-            return dataMovementProtocolResource;
-        } catch (ApplicationSettingsException e) {
-            logger.error(e.getMessage(), e);
-            throw new AppCatalogException(e);
-        } finally {
-            if (em != null && em.isOpen()) {
-                if (em.getTransaction().isActive()) {
-                    em.getTransaction().rollback();
-                }
-                em.close();
-            }
-        }
-    }
-
-    public List<Resource> get(String fieldName, Object value) throws 
AppCatalogException {
-        List<Resource> dataMoveProtocolResourcesList = new 
ArrayList<Resource>();
-        EntityManager em = null;
-        try {
-            em = AppCatalogJPAUtils.getEntityManager();
-            em.getTransaction().begin();
-            Query q;
-            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(DATA_MOVEMENT_PROTOCOL);
-            List results;
-            if (fieldName.equals(DataMoveProtocolConstants.RESOURCE_ID)) {
-                generator.setParameter(DataMoveProtocolConstants.RESOURCE_ID, 
value);
-                q = generator.selectQuery(em);
-                results = q.getResultList();
-                if (results.size() != 0) {
-                    for (Object result : results) {
-                        DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) result;
-                        DataMovementProtocolResource 
dataMovementProtocolResource =
-                                (DataMovementProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.DATA_MOVEMENT_PROTOCOL, 
dataMovementProtocol);
-                        
dataMoveProtocolResourcesList.add(dataMovementProtocolResource);
-                    }
-                }
-            } else if 
(fieldName.equals(DataMoveProtocolConstants.DATA_MOVE_TYPE)) {
-                
generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_TYPE, value);
-                q = generator.selectQuery(em);
-                results = q.getResultList();
-                if (results.size() != 0) {
-                    for (Object result : results) {
-                        DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) result;
-                        DataMovementProtocolResource 
dataMovementProtocolResource =
-                                (DataMovementProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.DATA_MOVEMENT_PROTOCOL, 
dataMovementProtocol);
-                        
dataMoveProtocolResourcesList.add(dataMovementProtocolResource);
-                    }
-                }
-            } else if 
(fieldName.equals(DataMoveProtocolConstants.DATA_MOVE_ID)) {
-                generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_ID, 
value);
-                q = generator.selectQuery(em);
-                results = q.getResultList();
-                if (results.size() != 0) {
-                    for (Object result : results) {
-                        DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) result;
-                        DataMovementProtocolResource 
dataMovementProtocolResource =
-                                (DataMovementProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.DATA_MOVEMENT_PROTOCOL, 
dataMovementProtocol);
-                        
dataMoveProtocolResourcesList.add(dataMovementProtocolResource);
-                    }
-                }
-            } else {
-                em.getTransaction().commit();
-                em.close();
-                logger.error("Unsupported field name for Data Movement 
Protocol Resource.", new IllegalArgumentException());
-                throw new IllegalArgumentException("Unsupported field name for 
Data Movement Protocol Resource.");
-            }
-            em.getTransaction().commit();
-            em.close();
-        } catch (Exception e) {
-            logger.error(e.getMessage(), e);
-            throw new AppCatalogException(e);
-        } finally {
-            if (em != null && em.isOpen()) {
-                if (em.getTransaction().isActive()) {
-                    em.getTransaction().rollback();
-                }
-                em.close();
-            }
-        }
-        return dataMoveProtocolResourcesList;
-    }
-
-    @Override
-    public List<Resource> getAll() throws AppCatalogException {
-        return null;
-    }
-
-    @Override
-    public List<String> getAllIds() throws AppCatalogException {
-        return null;
-    }
-
-    public List<String> getIds(String fieldName, Object value) throws 
AppCatalogException {
-        List<String> dataMovementProtocolIDs = new ArrayList<String>();
-        EntityManager em = null;
-        try {
-            em = AppCatalogJPAUtils.getEntityManager();
-            em.getTransaction().begin();
-            Query q;
-            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(DATA_MOVEMENT_PROTOCOL);
-            List results;
-            if (fieldName.equals(DataMoveProtocolConstants.DATA_MOVE_ID)) {
-                generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_ID, 
value);
-                q = generator.selectQuery(em);
-                results = q.getResultList();
-                if (results.size() != 0) {
-                    for (Object result : results) {
-                        DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) result;
-                        
dataMovementProtocolIDs.add(dataMovementProtocol.getDataMoveID());
-                    }
-                }
-            } else if 
(fieldName.equals(DataMoveProtocolConstants.RESOURCE_ID)) {
-                generator.setParameter(DataMoveProtocolConstants.RESOURCE_ID, 
value);
-                q = generator.selectQuery(em);
-                results = q.getResultList();
-                if (results.size() != 0) {
-                    for (Object result : results) {
-                        DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) result;
-                        
dataMovementProtocolIDs.add(dataMovementProtocol.getDataMoveID());
-                    }
-                }
-            } else if 
(fieldName.equals(DataMoveProtocolConstants.DATA_MOVE_TYPE)) {
-                
generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_TYPE, value);
-                q = generator.selectQuery(em);
-                results = q.getResultList();
-                if (results.size() != 0) {
-                    for (Object result : results) {
-                        DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) result;
-                        
dataMovementProtocolIDs.add(dataMovementProtocol.getDataMoveID());
-                    }
-                }
-            } else {
-                em.getTransaction().commit();
-                em.close();
-                logger.error("Unsupported field name for Data Move Protocol 
resource.", new IllegalArgumentException());
-                throw new IllegalArgumentException("Unsupported field name for 
Data Move Protocol Resource.");
-            }
-            em.getTransaction().commit();
-            em.close();
-        } catch (Exception e) {
-            logger.error(e.getMessage(), e);
-            throw new AppCatalogException(e);
-        } finally {
-            if (em != null && em.isOpen()) {
-                if (em.getTransaction().isActive()) {
-                    em.getTransaction().rollback();
-                }
-                em.close();
-            }
-        }
-        return dataMovementProtocolIDs;
-    }
-
-    public void save() throws AppCatalogException {
-        EntityManager em = null;
-        try {
-            em = AppCatalogJPAUtils.getEntityManager();
-            DataMovementProtocol existingDataMovementProtocol = 
em.find(DataMovementProtocol.class, new DataMovementProtocolPK(resourceID, 
dataMoveID, dataMoveType));
-            em.close();
-
-            em = AppCatalogJPAUtils.getEntityManager();
-            em.getTransaction().begin();
-            if (existingDataMovementProtocol != null) {
-                existingDataMovementProtocol.setDataMoveID(dataMoveType);
-                existingDataMovementProtocol.setDataMoveID(dataMoveID);
-                ComputeResource computeResource = 
em.find(ComputeResource.class, resourceID);
-                
existingDataMovementProtocol.setComputeResource(computeResource);
-                existingDataMovementProtocol.setResourceID(resourceID);
-                em.merge(existingDataMovementProtocol);
-            } else {
-                DataMovementProtocol dataMovementProtocol = new 
DataMovementProtocol();
-                dataMovementProtocol.setDataMoveType(dataMoveType);
-                dataMovementProtocol.setDataMoveID(dataMoveID);
-                dataMovementProtocol.setResourceID(resourceID);
-                ComputeResource computeResource = 
em.find(ComputeResource.class, resourceID);
-                dataMovementProtocol.setComputeResource(computeResource);
-                em.persist(dataMovementProtocol);
-            }
-            em.getTransaction().commit();
-            em.close();
-        } catch (Exception e) {
-            logger.error(e.getMessage(), e);
-            throw new AppCatalogException(e);
-        } finally {
-            if (em != null && em.isOpen()) {
-                if (em.getTransaction().isActive()) {
-                    em.getTransaction().rollback();
-                }
-                em.close();
-            }
-        }
-    }
-
-    public boolean isExists(Object identifier) throws AppCatalogException {
-        HashMap<String, String> ids;
-        if (identifier instanceof Map) {
-            ids = (HashMap) identifier;
-        } else {
-            logger.error("Identifier should be a map with the field name and 
it's value");
-            throw new AppCatalogException("Identifier should be a map with the 
field name and it's value");
-        }
-
-        EntityManager em = null;
-        try {
-            em = AppCatalogJPAUtils.getEntityManager();
-            DataMovementProtocol dataMovementProtocol = 
em.find(DataMovementProtocol.class, new DataMovementProtocolPK(
-                    ids.get(DataMoveProtocolConstants.RESOURCE_ID),
-                    ids.get(DataMoveProtocolConstants.DATA_MOVE_ID), 
ids.get(DataMoveProtocolConstants.DATA_MOVE_TYPE)));
-
-            em.close();
-            return dataMovementProtocol != null;
-        } catch (ApplicationSettingsException e) {
-            logger.error(e.getMessage(), e);
-            throw new AppCatalogException(e);
-        } finally {
-            if (em != null && em.isOpen()) {
-                if (em.getTransaction().isActive()) {
-                    em.getTransaction().rollback();
-                }
-                em.close();
-            }
-        }
-    }
-
-    public String getResourceID() {
-        return resourceID;
-    }
-
-    public void setResourceID(String resourceID) {
-        this.resourceID = resourceID;
-    }
-
-    public String getDataMoveID() {
-        return dataMoveID;
-    }
-
-    public void setDataMoveID(String dataMoveID) {
-        this.dataMoveID = dataMoveID;
-    }
-
-    public String getDataMoveType() {
-        return dataMoveType;
-    }
-
-    public void setDataMoveType(String dataMoveType) {
-        this.dataMoveType = dataMoveType;
-    }
-
-    public ComputeResourceResource getComputeHostResource() {
-        return computeHostResource;
-    }
-
-    public void setComputeHostResource(ComputeResourceResource 
computeHostResource) {
-        this.computeHostResource = computeHostResource;
-    }
-}
+///**
+// * Licensed to the Apache Software Foundation (ASF) under one
+// * or more contributor license agreements.  See the NOTICE file
+// * distributed with this work for additional information
+// * regarding copyright ownership.  The ASF licenses this file
+// * to you under the Apache License, Version 2.0 (the
+// * "License"); you may not use this file except in compliance
+// * with the License.  You may obtain a copy of the License at
+// *
+// *   http://www.apache.org/licenses/LICENSE-2.0
+// *
+// * Unless required by applicable law or agreed to in writing,
+// * software distributed under the License is distributed on an
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// * KIND, either express or implied.  See the License for the
+// * specific language governing permissions and limitations
+// * under the License.
+// */
+//
+//package org.apache.aiaravata.application.catalog.data.resources;
+//
+//import org.airavata.appcatalog.cpi.AppCatalogException;
+//import org.apache.aiaravata.application.catalog.data.model.ComputeResource;
+//import 
org.apache.aiaravata.application.catalog.data.model.DataMovementProtocol;
+//import 
org.apache.aiaravata.application.catalog.data.model.DataMovementProtocolPK;
+//import org.apache.aiaravata.application.catalog.data.util.AppCatalogJPAUtils;
+//import 
org.apache.aiaravata.application.catalog.data.util.AppCatalogQueryGenerator;
+//import 
org.apache.aiaravata.application.catalog.data.util.AppCatalogResourceType;
+//import org.apache.airavata.common.exception.ApplicationSettingsException;
+//import org.slf4j.Logger;
+//import org.slf4j.LoggerFactory;
+//
+//import javax.persistence.EntityManager;
+//import javax.persistence.Query;
+//import java.util.ArrayList;
+//import java.util.HashMap;
+//import java.util.List;
+//import java.util.Map;
+//
+//public class DataMovementProtocolResource extends AbstractResource {
+//
+//    private final static Logger logger = 
LoggerFactory.getLogger(DataMovementProtocolResource.class);
+//
+//    private String resourceID;
+//    private String dataMoveID;
+//    private String dataMoveType;
+//    private ComputeResourceResource computeHostResource;
+//
+//    public void remove(Object identifier) throws AppCatalogException {
+//        HashMap<String, String> ids;
+//        if (identifier instanceof Map) {
+//            ids = (HashMap) identifier;
+//        } else {
+//            logger.error("Identifier should be a map with the field name and 
it's value");
+//            throw new AppCatalogException("Identifier should be a map with 
the field name and it's value");
+//        }
+//
+//        EntityManager em = null;
+//        try {
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            em.getTransaction().begin();
+//            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(DATA_MOVEMENT_PROTOCOL);
+//            generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_TYPE, 
ids.get(DataMoveProtocolConstants.DATA_MOVE_TYPE));
+//            generator.setParameter(DataMoveProtocolConstants.RESOURCE_ID, 
ids.get(DataMoveProtocolConstants.RESOURCE_ID));
+//            generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_ID, 
ids.get(DataMoveProtocolConstants.DATA_MOVE_ID));
+//            Query q = generator.deleteQuery(em);
+//            q.executeUpdate();
+//            em.getTransaction().commit();
+//            em.close();
+//        } catch (ApplicationSettingsException e) {
+//            logger.error(e.getMessage(), e);
+//            throw new AppCatalogException(e);
+//        } finally {
+//            if (em != null && em.isOpen()) {
+//                if (em.getTransaction().isActive()) {
+//                    em.getTransaction().rollback();
+//                }
+//                em.close();
+//            }
+//        }
+//    }
+//
+//    public Resource get(Object identifier) throws AppCatalogException {
+//        HashMap<String, String> ids;
+//        if (identifier instanceof Map) {
+//            ids = (HashMap) identifier;
+//        } else {
+//            logger.error("Identifier should be a map with the field name and 
it's value");
+//            throw new AppCatalogException("Identifier should be a map with 
the field name and it's value");
+//        }
+//
+//        EntityManager em = null;
+//        try {
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            em.getTransaction().begin();
+//            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(DATA_MOVEMENT_PROTOCOL);
+//            generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_TYPE, 
ids.get(DataMoveProtocolConstants.DATA_MOVE_TYPE));
+//            generator.setParameter(DataMoveProtocolConstants.RESOURCE_ID, 
ids.get(DataMoveProtocolConstants.RESOURCE_ID));
+//            generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_ID, 
ids.get(DataMoveProtocolConstants.DATA_MOVE_ID));
+//            Query q = generator.selectQuery(em);
+//            DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) q.getSingleResult();
+//            DataMovementProtocolResource dataMovementProtocolResource =
+//                    (DataMovementProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.DATA_MOVEMENT_PROTOCOL, 
dataMovementProtocol);
+//            em.getTransaction().commit();
+//            em.close();
+//            return dataMovementProtocolResource;
+//        } catch (ApplicationSettingsException e) {
+//            logger.error(e.getMessage(), e);
+//            throw new AppCatalogException(e);
+//        } finally {
+//            if (em != null && em.isOpen()) {
+//                if (em.getTransaction().isActive()) {
+//                    em.getTransaction().rollback();
+//                }
+//                em.close();
+//            }
+//        }
+//    }
+//
+//    public List<Resource> get(String fieldName, Object value) throws 
AppCatalogException {
+//        List<Resource> dataMoveProtocolResourcesList = new 
ArrayList<Resource>();
+//        EntityManager em = null;
+//        try {
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            em.getTransaction().begin();
+//            Query q;
+//            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(DATA_MOVEMENT_PROTOCOL);
+//            List results;
+//            if (fieldName.equals(DataMoveProtocolConstants.RESOURCE_ID)) {
+//                
generator.setParameter(DataMoveProtocolConstants.RESOURCE_ID, value);
+//                q = generator.selectQuery(em);
+//                results = q.getResultList();
+//                if (results.size() != 0) {
+//                    for (Object result : results) {
+//                        DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) result;
+//                        DataMovementProtocolResource 
dataMovementProtocolResource =
+//                                (DataMovementProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.DATA_MOVEMENT_PROTOCOL, 
dataMovementProtocol);
+//                        
dataMoveProtocolResourcesList.add(dataMovementProtocolResource);
+//                    }
+//                }
+//            } else if 
(fieldName.equals(DataMoveProtocolConstants.DATA_MOVE_TYPE)) {
+//                
generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_TYPE, value);
+//                q = generator.selectQuery(em);
+//                results = q.getResultList();
+//                if (results.size() != 0) {
+//                    for (Object result : results) {
+//                        DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) result;
+//                        DataMovementProtocolResource 
dataMovementProtocolResource =
+//                                (DataMovementProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.DATA_MOVEMENT_PROTOCOL, 
dataMovementProtocol);
+//                        
dataMoveProtocolResourcesList.add(dataMovementProtocolResource);
+//                    }
+//                }
+//            } else if 
(fieldName.equals(DataMoveProtocolConstants.DATA_MOVE_ID)) {
+//                
generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_ID, value);
+//                q = generator.selectQuery(em);
+//                results = q.getResultList();
+//                if (results.size() != 0) {
+//                    for (Object result : results) {
+//                        DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) result;
+//                        DataMovementProtocolResource 
dataMovementProtocolResource =
+//                                (DataMovementProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.DATA_MOVEMENT_PROTOCOL, 
dataMovementProtocol);
+//                        
dataMoveProtocolResourcesList.add(dataMovementProtocolResource);
+//                    }
+//                }
+//            } else {
+//                em.getTransaction().commit();
+//                em.close();
+//                logger.error("Unsupported field name for Data Movement 
Protocol Resource.", new IllegalArgumentException());
+//                throw new IllegalArgumentException("Unsupported field name 
for Data Movement Protocol Resource.");
+//            }
+//            em.getTransaction().commit();
+//            em.close();
+//        } catch (Exception e) {
+//            logger.error(e.getMessage(), e);
+//            throw new AppCatalogException(e);
+//        } finally {
+//            if (em != null && em.isOpen()) {
+//                if (em.getTransaction().isActive()) {
+//                    em.getTransaction().rollback();
+//                }
+//                em.close();
+//            }
+//        }
+//        return dataMoveProtocolResourcesList;
+//    }
+//
+//    @Override
+//    public List<Resource> getAll() throws AppCatalogException {
+//        return null;
+//    }
+//
+//    @Override
+//    public List<String> getAllIds() throws AppCatalogException {
+//        return null;
+//    }
+//
+//    public List<String> getIds(String fieldName, Object value) throws 
AppCatalogException {
+//        List<String> dataMovementProtocolIDs = new ArrayList<String>();
+//        EntityManager em = null;
+//        try {
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            em.getTransaction().begin();
+//            Query q;
+//            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(DATA_MOVEMENT_PROTOCOL);
+//            List results;
+//            if (fieldName.equals(DataMoveProtocolConstants.DATA_MOVE_ID)) {
+//                
generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_ID, value);
+//                q = generator.selectQuery(em);
+//                results = q.getResultList();
+//                if (results.size() != 0) {
+//                    for (Object result : results) {
+//                        DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) result;
+//                        
dataMovementProtocolIDs.add(dataMovementProtocol.getDataMoveID());
+//                    }
+//                }
+//            } else if 
(fieldName.equals(DataMoveProtocolConstants.RESOURCE_ID)) {
+//                
generator.setParameter(DataMoveProtocolConstants.RESOURCE_ID, value);
+//                q = generator.selectQuery(em);
+//                results = q.getResultList();
+//                if (results.size() != 0) {
+//                    for (Object result : results) {
+//                        DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) result;
+//                        
dataMovementProtocolIDs.add(dataMovementProtocol.getDataMoveID());
+//                    }
+//                }
+//            } else if 
(fieldName.equals(DataMoveProtocolConstants.DATA_MOVE_TYPE)) {
+//                
generator.setParameter(DataMoveProtocolConstants.DATA_MOVE_TYPE, value);
+//                q = generator.selectQuery(em);
+//                results = q.getResultList();
+//                if (results.size() != 0) {
+//                    for (Object result : results) {
+//                        DataMovementProtocol dataMovementProtocol = 
(DataMovementProtocol) result;
+//                        
dataMovementProtocolIDs.add(dataMovementProtocol.getDataMoveID());
+//                    }
+//                }
+//            } else {
+//                em.getTransaction().commit();
+//                em.close();
+//                logger.error("Unsupported field name for Data Move Protocol 
resource.", new IllegalArgumentException());
+//                throw new IllegalArgumentException("Unsupported field name 
for Data Move Protocol Resource.");
+//            }
+//            em.getTransaction().commit();
+//            em.close();
+//        } catch (Exception e) {
+//            logger.error(e.getMessage(), e);
+//            throw new AppCatalogException(e);
+//        } finally {
+//            if (em != null && em.isOpen()) {
+//                if (em.getTransaction().isActive()) {
+//                    em.getTransaction().rollback();
+//                }
+//                em.close();
+//            }
+//        }
+//        return dataMovementProtocolIDs;
+//    }
+//
+//    public void save() throws AppCatalogException {
+//        EntityManager em = null;
+//        try {
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            DataMovementProtocol existingDataMovementProtocol = 
em.find(DataMovementProtocol.class, new DataMovementProtocolPK(resourceID, 
dataMoveID, dataMoveType));
+//            em.close();
+//
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            em.getTransaction().begin();
+//            if (existingDataMovementProtocol != null) {
+//                existingDataMovementProtocol.setDataMoveID(dataMoveType);
+//                existingDataMovementProtocol.setDataMoveID(dataMoveID);
+//                ComputeResource computeResource = 
em.find(ComputeResource.class, resourceID);
+//                
existingDataMovementProtocol.setComputeResource(computeResource);
+//                existingDataMovementProtocol.setResourceID(resourceID);
+//                em.merge(existingDataMovementProtocol);
+//            } else {
+//                DataMovementProtocol dataMovementProtocol = new 
DataMovementProtocol();
+//                dataMovementProtocol.setDataMoveType(dataMoveType);
+//                dataMovementProtocol.setDataMoveID(dataMoveID);
+//                dataMovementProtocol.setResourceID(resourceID);
+//                ComputeResource computeResource = 
em.find(ComputeResource.class, resourceID);
+//                dataMovementProtocol.setComputeResource(computeResource);
+//                em.persist(dataMovementProtocol);
+//            }
+//            em.getTransaction().commit();
+//            em.close();
+//        } catch (Exception e) {
+//            logger.error(e.getMessage(), e);
+//            throw new AppCatalogException(e);
+//        } finally {
+//            if (em != null && em.isOpen()) {
+//                if (em.getTransaction().isActive()) {
+//                    em.getTransaction().rollback();
+//                }
+//                em.close();
+//            }
+//        }
+//    }
+//
+//    public boolean isExists(Object identifier) throws AppCatalogException {
+//        HashMap<String, String> ids;
+//        if (identifier instanceof Map) {
+//            ids = (HashMap) identifier;
+//        } else {
+//            logger.error("Identifier should be a map with the field name and 
it's value");
+//            throw new AppCatalogException("Identifier should be a map with 
the field name and it's value");
+//        }
+//
+//        EntityManager em = null;
+//        try {
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            DataMovementProtocol dataMovementProtocol = 
em.find(DataMovementProtocol.class, new DataMovementProtocolPK(
+//                    ids.get(DataMoveProtocolConstants.RESOURCE_ID),
+//                    ids.get(DataMoveProtocolConstants.DATA_MOVE_ID), 
ids.get(DataMoveProtocolConstants.DATA_MOVE_TYPE)));
+//
+//            em.close();
+//            return dataMovementProtocol != null;
+//        } catch (ApplicationSettingsException e) {
+//            logger.error(e.getMessage(), e);
+//            throw new AppCatalogException(e);
+//        } finally {
+//            if (em != null && em.isOpen()) {
+//                if (em.getTransaction().isActive()) {
+//                    em.getTransaction().rollback();
+//                }
+//                em.close();
+//            }
+//        }
+//    }
+//
+//    public String getResourceID() {
+//        return resourceID;
+//    }
+//
+//    public void setResourceID(String resourceID) {
+//        this.resourceID = resourceID;
+//    }
+//
+//    public String getDataMoveID() {
+//        return dataMoveID;
+//    }
+//
+//    public void setDataMoveID(String dataMoveID) {
+//        this.dataMoveID = dataMoveID;
+//    }
+//
+//    public String getDataMoveType() {
+//        return dataMoveType;
+//    }
+//
+//    public void setDataMoveType(String dataMoveType) {
+//        this.dataMoveType = dataMoveType;
+//    }
+//
+//    public ComputeResourceResource getComputeHostResource() {
+//        return computeHostResource;
+//    }
+//
+//    public void setComputeHostResource(ComputeResourceResource 
computeHostResource) {
+//        this.computeHostResource = computeHostResource;
+//    }
+//}

http://git-wip-us.apache.org/repos/asf/airavata/blob/404913ac/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GatewayProfileResource.java
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GatewayProfileResource.java
 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GatewayProfileResource.java
index 47c1c8a..3fe339a 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GatewayProfileResource.java
+++ 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GatewayProfileResource.java
@@ -30,6 +30,7 @@ import org.slf4j.LoggerFactory;
 
 import javax.persistence.EntityManager;
 import javax.persistence.Query;
+import java.sql.Timestamp;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -39,6 +40,24 @@ public class GatewayProfileResource extends AbstractResource 
{
     private String gatewayID;
     private String gatewayName;
     private String gatewayDesc;
+    private Timestamp createdTime;
+    private Timestamp updatedTime;
+
+    public Timestamp getCreatedTime() {
+        return createdTime;
+    }
+
+    public void setCreatedTime(Timestamp createdTime) {
+        this.createdTime = createdTime;
+    }
+
+    public Timestamp getUpdatedTime() {
+        return updatedTime;
+    }
+
+    public void setUpdatedTime(Timestamp updatedTime) {
+        this.updatedTime = updatedTime;
+    }
 
     public void remove(Object identifier) throws AppCatalogException {
         EntityManager em = null;
@@ -220,12 +239,14 @@ public class GatewayProfileResource extends 
AbstractResource {
             if (existingGatewayProfile != null) {
                 existingGatewayProfile.setGatewayDesc(gatewayDesc);
                 existingGatewayProfile.setGatewayName(gatewayName);
+                existingGatewayProfile.setUpdateTime(updatedTime);
                 em.merge(existingGatewayProfile);
             } else {
                 GatewayProfile gatewayProfile = new GatewayProfile();
                 gatewayProfile.setGatewayID(gatewayID);
                 gatewayProfile.setGatewayName(gatewayName);
                 gatewayProfile.setGatewayDesc(gatewayDesc);
+                gatewayProfile.setCreationTime(createdTime);
                 em.persist(gatewayProfile);
             }
             em.getTransaction().commit();

http://git-wip-us.apache.org/repos/asf/airavata/blob/404913ac/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GridftpDataMovementResource.java
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GridftpDataMovementResource.java
 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GridftpDataMovementResource.java
index 2b350c9..70b9af9 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GridftpDataMovementResource.java
+++ 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GridftpDataMovementResource.java
@@ -19,6 +19,7 @@
 
 package org.apache.aiaravata.application.catalog.data.resources;
 
+import java.sql.Timestamp;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -38,6 +39,24 @@ public class GridftpDataMovementResource extends 
AbstractResource {
        private final static Logger logger = 
LoggerFactory.getLogger(GridftpDataMovementResource.class);
        private String dataMovementInterfaceId;
        private String securityProtocol;
+    private Timestamp createdTime;
+    private Timestamp updatedTime;
+
+    public Timestamp getCreatedTime() {
+        return createdTime;
+    }
+
+    public void setCreatedTime(Timestamp createdTime) {
+        this.createdTime = createdTime;
+    }
+
+    public Timestamp getUpdatedTime() {
+        return updatedTime;
+    }
+
+    public void setUpdatedTime(Timestamp updatedTime) {
+        this.updatedTime = updatedTime;
+    }
        
        @Override
        public void remove(Object identifier) throws AppCatalogException {
@@ -193,8 +212,10 @@ public class GridftpDataMovementResource extends 
AbstractResource {
                        em.getTransaction().begin();
                        if (existingGridftpDataMovement == null) {
                                gridftpDataMovement = new GridftpDataMovement();
+                gridftpDataMovement.setCreationTime(createdTime);
                        } else {
                                gridftpDataMovement = 
existingGridftpDataMovement;
+                gridftpDataMovement.setUpdateTime(updatedTime);
                        }
                        
gridftpDataMovement.setDataMovementInterfaceId(getDataMovementInterfaceId());
                        
gridftpDataMovement.setSecurityProtocol(getSecurityProtocol());

http://git-wip-us.apache.org/repos/asf/airavata/blob/404913ac/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GridftpEndpointResource.java
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GridftpEndpointResource.java
 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GridftpEndpointResource.java
index d325fdf..8364711 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GridftpEndpointResource.java
+++ 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/GridftpEndpointResource.java
@@ -19,6 +19,7 @@
 
 package org.apache.aiaravata.application.catalog.data.resources;
 
+import java.sql.Timestamp;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -43,6 +44,24 @@ public class GridftpEndpointResource extends 
AbstractResource {
        private String endpoint;
        private String dataMovementInterfaceId;
        private GridftpDataMovementResource gridftpDataMovementResource;
+    private Timestamp createdTime;
+    private Timestamp updatedTime;
+
+    public Timestamp getCreatedTime() {
+        return createdTime;
+    }
+
+    public void setCreatedTime(Timestamp createdTime) {
+        this.createdTime = createdTime;
+    }
+
+    public Timestamp getUpdatedTime() {
+        return updatedTime;
+    }
+
+    public void setUpdatedTime(Timestamp updatedTime) {
+        this.updatedTime = updatedTime;
+    }
        
        @Override
        public void remove(Object identifier) throws AppCatalogException {
@@ -214,8 +233,10 @@ public class GridftpEndpointResource extends 
AbstractResource {
                        em.getTransaction().begin();
                        if (existingGridftpEndpoint == null) {
                                gridftpEndpoint = new GridftpEndpoint();
+                gridftpEndpoint.setCreationTime(createdTime);
                        } else {
                                gridftpEndpoint = existingGridftpEndpoint;
+                gridftpEndpoint.setUpdateTime(updatedTime);
                        }
                        gridftpEndpoint.setEndpoint(getEndpoint());
                        
gridftpEndpoint.setDataMovementInterfaceId(getDataMovementInterfaceId());

http://git-wip-us.apache.org/repos/asf/airavata/blob/404913ac/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/JobSubmissionInterfaceResource.java
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/JobSubmissionInterfaceResource.java
 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/JobSubmissionInterfaceResource.java
index 745dd93..8654789 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/JobSubmissionInterfaceResource.java
+++ 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/JobSubmissionInterfaceResource.java
@@ -21,6 +21,7 @@
 
 package org.apache.aiaravata.application.catalog.data.resources;
 
+import java.sql.Timestamp;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -47,6 +48,24 @@ public class JobSubmissionInterfaceResource extends 
AbstractResource {
        private ComputeResourceResource computeHostResource;
        private String jobSubmissionProtocol;
        private int priorityOrder;
+    private Timestamp createdTime;
+    private Timestamp updatedTime;
+
+    public Timestamp getCreatedTime() {
+        return createdTime;
+    }
+
+    public void setCreatedTime(Timestamp createdTime) {
+        this.createdTime = createdTime;
+    }
+
+    public Timestamp getUpdatedTime() {
+        return updatedTime;
+    }
+
+    public void setUpdatedTime(Timestamp updatedTime) {
+        this.updatedTime = updatedTime;
+    }
        
        @Override
        public void remove(Object identifier) throws AppCatalogException {
@@ -218,8 +237,10 @@ public class JobSubmissionInterfaceResource extends 
AbstractResource {
                        em.getTransaction().begin();
                        if (existingJobSubmissionInterface == null) {
                                jobSubmissionInterface = new 
JobSubmissionInterface();
+                jobSubmissionInterface.setCreationTime(createdTime);
                        } else {
                                jobSubmissionInterface = 
existingJobSubmissionInterface;
+                jobSubmissionInterface.setUpdateTime(updatedTime);
                        }
                        
jobSubmissionInterface.setJobSubmissionInterfaceId(getJobSubmissionInterfaceId());
                        
jobSubmissionInterface.setComputeResourceId(getComputeResourceId());

http://git-wip-us.apache.org/repos/asf/airavata/blob/404913ac/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/JobSubmissionProtocolResource.java
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/JobSubmissionProtocolResource.java
 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/JobSubmissionProtocolResource.java
index 6c965a2..d6134af 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/JobSubmissionProtocolResource.java
+++ 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/JobSubmissionProtocolResource.java
@@ -1,359 +1,359 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.aiaravata.application.catalog.data.resources;
-
-import org.airavata.appcatalog.cpi.AppCatalogException;
-import org.apache.aiaravata.application.catalog.data.model.ComputeResource;
-import 
org.apache.aiaravata.application.catalog.data.model.JobSubmissionProtocol;
-import 
org.apache.aiaravata.application.catalog.data.model.JobSubmissionProtocolPK;
-import org.apache.aiaravata.application.catalog.data.util.AppCatalogJPAUtils;
-import 
org.apache.aiaravata.application.catalog.data.util.AppCatalogQueryGenerator;
-import 
org.apache.aiaravata.application.catalog.data.util.AppCatalogResourceType;
-import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import javax.persistence.EntityManager;
-import javax.persistence.Query;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class JobSubmissionProtocolResource extends AbstractResource {
-
-    private final static Logger logger = 
LoggerFactory.getLogger(JobSubmissionProtocolResource.class);
-
-    private String resourceID;
-    private String submissionID;
-    private String jobType;
-    private ComputeResourceResource computeHostResource;
-
-    public void remove(Object identifier) throws AppCatalogException {
-        HashMap<String, String> ids;
-        if (identifier instanceof Map) {
-            ids = (HashMap) identifier;
-        } else {
-            logger.error("Identifier should be a map with the field name and 
it's value");
-            throw new AppCatalogException("Identifier should be a map with the 
field name and it's value");
-        }
-
-        EntityManager em = null;
-        try {
-            em = AppCatalogJPAUtils.getEntityManager();
-            em.getTransaction().begin();
-            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(JOB_SUBMISSION_PROTOCOL);
-            generator.setParameter(JobSubmissionProtocolConstants.RESOURCE_ID, 
ids.get(JobSubmissionProtocolConstants.RESOURCE_ID));
-            
generator.setParameter(JobSubmissionProtocolConstants.SUBMISSION_ID, 
ids.get(JobSubmissionProtocolConstants.SUBMISSION_ID));
-            generator.setParameter(JobSubmissionProtocolConstants.JOB_TYPE, 
ids.get(JobSubmissionProtocolConstants.JOB_TYPE));
-            Query q = generator.deleteQuery(em);
-            q.executeUpdate();
-            em.getTransaction().commit();
-            em.close();
-        } catch (ApplicationSettingsException e) {
-            logger.error(e.getMessage(), e);
-            throw new AppCatalogException(e);
-        } finally {
-            if (em != null && em.isOpen()) {
-                if (em.getTransaction().isActive()) {
-                    em.getTransaction().rollback();
-                }
-                em.close();
-            }
-        }
-    }
-
-    public Resource get(Object identifier) throws AppCatalogException {
-        HashMap<String, String> ids;
-        if (identifier instanceof Map) {
-            ids = (HashMap) identifier;
-        } else {
-            logger.error("Identifier should be a map with the field name and 
it's value");
-            throw new AppCatalogException("Identifier should be a map with the 
field name and it's value");
-        }
-
-        EntityManager em = null;
-        try {
-            em = AppCatalogJPAUtils.getEntityManager();
-            em.getTransaction().begin();
-            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(JOB_SUBMISSION_PROTOCOL);
-            generator.setParameter(JobSubmissionProtocolConstants.RESOURCE_ID, 
ids.get(JobSubmissionProtocolConstants.RESOURCE_ID));
-            
generator.setParameter(JobSubmissionProtocolConstants.SUBMISSION_ID, 
ids.get(JobSubmissionProtocolConstants.SUBMISSION_ID));
-            generator.setParameter(JobSubmissionProtocolConstants.JOB_TYPE, 
ids.get(JobSubmissionProtocolConstants.JOB_TYPE));
-            Query q = generator.selectQuery(em);
-            JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) q.getSingleResult();
-            JobSubmissionProtocolResource jobSubmissionProtocolResource =
-                    (JobSubmissionProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.JOB_SUBMISSION_PROTOCOL, 
jobSubmissionProtocol);
-            em.getTransaction().commit();
-            em.close();
-            return jobSubmissionProtocolResource;
-        } catch (ApplicationSettingsException e) {
-            logger.error(e.getMessage(), e);
-            throw new AppCatalogException(e);
-        } finally {
-            if (em != null && em.isOpen()) {
-                if (em.getTransaction().isActive()) {
-                    em.getTransaction().rollback();
-                }
-                em.close();
-            }
-        }
-    }
-
-    public List<Resource> get(String fieldName, Object value) throws 
AppCatalogException {
-        List<Resource> jobSubmissionProtocolResourceList = new 
ArrayList<Resource>();
-        EntityManager em = null;
-        try {
-            em = AppCatalogJPAUtils.getEntityManager();
-            em.getTransaction().begin();
-            Query q;
-            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(JOB_SUBMISSION_PROTOCOL);
-            List results;
-            if 
(fieldName.equals(JobSubmissionProtocolConstants.SUBMISSION_ID)) {
-                
generator.setParameter(JobSubmissionProtocolConstants.SUBMISSION_ID, value);
-                q = generator.selectQuery(em);
-                results = q.getResultList();
-                if (results.size() != 0) {
-                    for (Object result : results) {
-                        JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) result;
-                        JobSubmissionProtocolResource 
jobSubmissionProtocolResource =
-                                (JobSubmissionProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.JOB_SUBMISSION_PROTOCOL, 
jobSubmissionProtocol);
-                        
jobSubmissionProtocolResourceList.add(jobSubmissionProtocolResource);
-                    }
-                }
-            } else if 
(fieldName.equals(JobSubmissionProtocolConstants.JOB_TYPE)) {
-                
generator.setParameter(JobSubmissionProtocolConstants.JOB_TYPE, value);
-                q = generator.selectQuery(em);
-                results = q.getResultList();
-                if (results.size() != 0) {
-                    for (Object result : results) {
-                        JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) result;
-                        JobSubmissionProtocolResource 
jobSubmissionProtocolResource =
-                                (JobSubmissionProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.JOB_SUBMISSION_PROTOCOL, 
jobSubmissionProtocol);
-                        
jobSubmissionProtocolResourceList.add(jobSubmissionProtocolResource);
-                    }
-                }
-            } else if (fieldName.equals(HostIPAddressConstants.RESOURCE_ID)) {
-                generator.setParameter(HostIPAddressConstants.RESOURCE_ID, 
value);
-                q = generator.selectQuery(em);
-                results = q.getResultList();
-                if (results.size() != 0) {
-                    for (Object result : results) {
-                        JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) result;
-                        JobSubmissionProtocolResource 
jobSubmissionProtocolResource =
-                                (JobSubmissionProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.JOB_SUBMISSION_PROTOCOL, 
jobSubmissionProtocol);
-                        
jobSubmissionProtocolResourceList.add(jobSubmissionProtocolResource);
-                    }
-                }
-            } else {
-                em.getTransaction().commit();
-                em.close();
-                logger.error("Unsupported field name for Job Submission 
Protocol Resource.", new IllegalArgumentException());
-                throw new IllegalArgumentException("Unsupported field name for 
Job Submission Protocol Resource.");
-            }
-            em.getTransaction().commit();
-            em.close();
-        } catch (Exception e) {
-            logger.error(e.getMessage(), e);
-            throw new AppCatalogException(e);
-        } finally {
-            if (em != null && em.isOpen()) {
-                if (em.getTransaction().isActive()) {
-                    em.getTransaction().rollback();
-                }
-                em.close();
-            }
-        }
-        return jobSubmissionProtocolResourceList;
-    }
-
-    @Override
-    public List<Resource> getAll() throws AppCatalogException {
-        return null;
-    }
-
-    @Override
-    public List<String> getAllIds() throws AppCatalogException {
-        return null;
-    }
-
-    public List<String> getIds(String fieldName, Object value) throws 
AppCatalogException {
-        List<String> jobSubmissionProtocolIDs = new ArrayList<String>();
-        EntityManager em = null;
-        try {
-            em = AppCatalogJPAUtils.getEntityManager();
-            em.getTransaction().begin();
-            Query q;
-            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(JOB_SUBMISSION_PROTOCOL);
-            List results;
-            if 
(fieldName.equals(JobSubmissionProtocolConstants.SUBMISSION_ID)) {
-                
generator.setParameter(JobSubmissionProtocolConstants.SUBMISSION_ID, value);
-                q = generator.selectQuery(em);
-                results = q.getResultList();
-                if (results.size() != 0) {
-                    for (Object result : results) {
-                        JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) result;
-                        
jobSubmissionProtocolIDs.add(jobSubmissionProtocol.getSubmissionID());
-                    }
-                }
-            } else if 
(fieldName.equals(JobSubmissionProtocolConstants.RESOURCE_ID)) {
-                
generator.setParameter(JobSubmissionProtocolConstants.RESOURCE_ID, value);
-                q = generator.selectQuery(em);
-                results = q.getResultList();
-                if (results.size() != 0) {
-                    for (Object result : results) {
-                        JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) result;
-                        
jobSubmissionProtocolIDs.add(jobSubmissionProtocol.getSubmissionID());
-                    }
-                }
-            } else if 
(fieldName.equals(JobSubmissionProtocolConstants.JOB_TYPE)) {
-                
generator.setParameter(JobSubmissionProtocolConstants.JOB_TYPE, value);
-                q = generator.selectQuery(em);
-                results = q.getResultList();
-                if (results.size() != 0) {
-                    for (Object result : results) {
-                        JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) result;
-                        
jobSubmissionProtocolIDs.add(jobSubmissionProtocol.getSubmissionID());
-                    }
-                }
-            } else {
-                em.getTransaction().commit();
-                em.close();
-                logger.error("Unsupported field name for Job Submission 
Protocol resource.", new IllegalArgumentException());
-                throw new IllegalArgumentException("Unsupported field name for 
Job Submission Protocol Resource.");
-            }
-            em.getTransaction().commit();
-            em.close();
-        } catch (Exception e) {
-            logger.error(e.getMessage(), e);
-            throw new AppCatalogException(e);
-        } finally {
-            if (em != null && em.isOpen()) {
-                if (em.getTransaction().isActive()) {
-                    em.getTransaction().rollback();
-                }
-                em.close();
-            }
-        }
-        return jobSubmissionProtocolIDs;
-    }
-
-    public void save() throws AppCatalogException {
-        EntityManager em = null;
-        try {
-            em = AppCatalogJPAUtils.getEntityManager();
-            JobSubmissionProtocol existingJobSubProtocol = 
em.find(JobSubmissionProtocol.class, new JobSubmissionProtocolPK(resourceID, 
submissionID, jobType));
-            em.close();
-
-            em = AppCatalogJPAUtils.getEntityManager();
-            em.getTransaction().begin();
-            ComputeResource computeResource = em.find(ComputeResource.class, 
resourceID);
-            if (existingJobSubProtocol != null) {
-                existingJobSubProtocol.setJobType(jobType);
-                existingJobSubProtocol.setSubmissionID(submissionID);
-                existingJobSubProtocol.setComputeResource(computeResource);
-                existingJobSubProtocol.setResourceID(resourceID);
-                em.merge(existingJobSubProtocol);
-            } else {
-                JobSubmissionProtocol jobSubmissionProtocol = new 
JobSubmissionProtocol();
-                jobSubmissionProtocol.setJobType(jobType);
-                jobSubmissionProtocol.setSubmissionID(submissionID);
-                jobSubmissionProtocol.setResourceID(resourceID);
-                jobSubmissionProtocol.setComputeResource(computeResource);
-                em.persist(jobSubmissionProtocol);
-            }
-            em.getTransaction().commit();
-            em.close();
-        } catch (Exception e) {
-            logger.error(e.getMessage(), e);
-            throw new AppCatalogException(e);
-        } finally {
-            if (em != null && em.isOpen()) {
-                if (em.getTransaction().isActive()) {
-                    em.getTransaction().rollback();
-                }
-                em.close();
-            }
-        }
-
-    }
-
-    public boolean isExists(Object identifier) throws AppCatalogException {
-        HashMap<String, String> ids;
-        if (identifier instanceof Map) {
-            ids = (HashMap) identifier;
-        } else {
-            logger.error("Identifier should be a map with the field name and 
it's value");
-            throw new AppCatalogException("Identifier should be a map with the 
field name and it's value");
-        }
-
-        EntityManager em = null;
-        try {
-            em = AppCatalogJPAUtils.getEntityManager();
-            JobSubmissionProtocol jobSubmissionProtocol = 
em.find(JobSubmissionProtocol.class, new 
JobSubmissionProtocolPK(ids.get(JobSubmissionProtocolConstants.RESOURCE_ID),
-                    ids.get(JobSubmissionProtocolConstants.SUBMISSION_ID), 
ids.get(JobSubmissionProtocolConstants.JOB_TYPE)));
-
-            em.close();
-            return jobSubmissionProtocol != null;
-        } catch (ApplicationSettingsException e) {
-            logger.error(e.getMessage(), e);
-            throw new AppCatalogException(e);
-        } finally {
-            if (em != null && em.isOpen()) {
-                if (em.getTransaction().isActive()) {
-                    em.getTransaction().rollback();
-                }
-                em.close();
-            }
-        }
-    }
-
-    public String getResourceID() {
-        return resourceID;
-    }
-
-    public void setResourceID(String resourceID) {
-        this.resourceID = resourceID;
-    }
-
-    public String getSubmissionID() {
-        return submissionID;
-    }
-
-    public void setSubmissionID(String submissionID) {
-        this.submissionID = submissionID;
-    }
-
-    public String getJobType() {
-        return jobType;
-    }
-
-    public void setJobType(String jobType) {
-        this.jobType = jobType;
-    }
-
-    public ComputeResourceResource getComputeHostResource() {
-        return computeHostResource;
-    }
-
-    public void setComputeHostResource(ComputeResourceResource 
computeHostResource) {
-        this.computeHostResource = computeHostResource;
-    }
-}
+///**
+// * Licensed to the Apache Software Foundation (ASF) under one
+// * or more contributor license agreements.  See the NOTICE file
+// * distributed with this work for additional information
+// * regarding copyright ownership.  The ASF licenses this file
+// * to you under the Apache License, Version 2.0 (the
+// * "License"); you may not use this file except in compliance
+// * with the License.  You may obtain a copy of the License at
+// *
+// *   http://www.apache.org/licenses/LICENSE-2.0
+// *
+// * Unless required by applicable law or agreed to in writing,
+// * software distributed under the License is distributed on an
+// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// * KIND, either express or implied.  See the License for the
+// * specific language governing permissions and limitations
+// * under the License.
+// */
+//
+//package org.apache.aiaravata.application.catalog.data.resources;
+//
+//import org.airavata.appcatalog.cpi.AppCatalogException;
+//import org.apache.aiaravata.application.catalog.data.model.ComputeResource;
+//import 
org.apache.aiaravata.application.catalog.data.model.JobSubmissionProtocol;
+//import 
org.apache.aiaravata.application.catalog.data.model.JobSubmissionProtocolPK;
+//import org.apache.aiaravata.application.catalog.data.util.AppCatalogJPAUtils;
+//import 
org.apache.aiaravata.application.catalog.data.util.AppCatalogQueryGenerator;
+//import 
org.apache.aiaravata.application.catalog.data.util.AppCatalogResourceType;
+//import org.apache.airavata.common.exception.ApplicationSettingsException;
+//import org.slf4j.Logger;
+//import org.slf4j.LoggerFactory;
+//
+//import javax.persistence.EntityManager;
+//import javax.persistence.Query;
+//import java.util.ArrayList;
+//import java.util.HashMap;
+//import java.util.List;
+//import java.util.Map;
+//
+//public class JobSubmissionProtocolResource extends AbstractResource {
+//
+//    private final static Logger logger = 
LoggerFactory.getLogger(JobSubmissionProtocolResource.class);
+//
+//    private String resourceID;
+//    private String submissionID;
+//    private String jobType;
+//    private ComputeResourceResource computeHostResource;
+//
+//    public void remove(Object identifier) throws AppCatalogException {
+//        HashMap<String, String> ids;
+//        if (identifier instanceof Map) {
+//            ids = (HashMap) identifier;
+//        } else {
+//            logger.error("Identifier should be a map with the field name and 
it's value");
+//            throw new AppCatalogException("Identifier should be a map with 
the field name and it's value");
+//        }
+//
+//        EntityManager em = null;
+//        try {
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            em.getTransaction().begin();
+//            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(JOB_SUBMISSION_PROTOCOL);
+//            
generator.setParameter(JobSubmissionProtocolConstants.RESOURCE_ID, 
ids.get(JobSubmissionProtocolConstants.RESOURCE_ID));
+//            
generator.setParameter(JobSubmissionProtocolConstants.SUBMISSION_ID, 
ids.get(JobSubmissionProtocolConstants.SUBMISSION_ID));
+//            generator.setParameter(JobSubmissionProtocolConstants.JOB_TYPE, 
ids.get(JobSubmissionProtocolConstants.JOB_TYPE));
+//            Query q = generator.deleteQuery(em);
+//            q.executeUpdate();
+//            em.getTransaction().commit();
+//            em.close();
+//        } catch (ApplicationSettingsException e) {
+//            logger.error(e.getMessage(), e);
+//            throw new AppCatalogException(e);
+//        } finally {
+//            if (em != null && em.isOpen()) {
+//                if (em.getTransaction().isActive()) {
+//                    em.getTransaction().rollback();
+//                }
+//                em.close();
+//            }
+//        }
+//    }
+//
+//    public Resource get(Object identifier) throws AppCatalogException {
+//        HashMap<String, String> ids;
+//        if (identifier instanceof Map) {
+//            ids = (HashMap) identifier;
+//        } else {
+//            logger.error("Identifier should be a map with the field name and 
it's value");
+//            throw new AppCatalogException("Identifier should be a map with 
the field name and it's value");
+//        }
+//
+//        EntityManager em = null;
+//        try {
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            em.getTransaction().begin();
+//            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(JOB_SUBMISSION_PROTOCOL);
+//            
generator.setParameter(JobSubmissionProtocolConstants.RESOURCE_ID, 
ids.get(JobSubmissionProtocolConstants.RESOURCE_ID));
+//            
generator.setParameter(JobSubmissionProtocolConstants.SUBMISSION_ID, 
ids.get(JobSubmissionProtocolConstants.SUBMISSION_ID));
+//            generator.setParameter(JobSubmissionProtocolConstants.JOB_TYPE, 
ids.get(JobSubmissionProtocolConstants.JOB_TYPE));
+//            Query q = generator.selectQuery(em);
+//            JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) q.getSingleResult();
+//            JobSubmissionProtocolResource jobSubmissionProtocolResource =
+//                    (JobSubmissionProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.JOB_SUBMISSION_PROTOCOL, 
jobSubmissionProtocol);
+//            em.getTransaction().commit();
+//            em.close();
+//            return jobSubmissionProtocolResource;
+//        } catch (ApplicationSettingsException e) {
+//            logger.error(e.getMessage(), e);
+//            throw new AppCatalogException(e);
+//        } finally {
+//            if (em != null && em.isOpen()) {
+//                if (em.getTransaction().isActive()) {
+//                    em.getTransaction().rollback();
+//                }
+//                em.close();
+//            }
+//        }
+//    }
+//
+//    public List<Resource> get(String fieldName, Object value) throws 
AppCatalogException {
+//        List<Resource> jobSubmissionProtocolResourceList = new 
ArrayList<Resource>();
+//        EntityManager em = null;
+//        try {
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            em.getTransaction().begin();
+//            Query q;
+//            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(JOB_SUBMISSION_PROTOCOL);
+//            List results;
+//            if 
(fieldName.equals(JobSubmissionProtocolConstants.SUBMISSION_ID)) {
+//                
generator.setParameter(JobSubmissionProtocolConstants.SUBMISSION_ID, value);
+//                q = generator.selectQuery(em);
+//                results = q.getResultList();
+//                if (results.size() != 0) {
+//                    for (Object result : results) {
+//                        JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) result;
+//                        JobSubmissionProtocolResource 
jobSubmissionProtocolResource =
+//                                (JobSubmissionProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.JOB_SUBMISSION_PROTOCOL, 
jobSubmissionProtocol);
+//                        
jobSubmissionProtocolResourceList.add(jobSubmissionProtocolResource);
+//                    }
+//                }
+//            } else if 
(fieldName.equals(JobSubmissionProtocolConstants.JOB_TYPE)) {
+//                
generator.setParameter(JobSubmissionProtocolConstants.JOB_TYPE, value);
+//                q = generator.selectQuery(em);
+//                results = q.getResultList();
+//                if (results.size() != 0) {
+//                    for (Object result : results) {
+//                        JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) result;
+//                        JobSubmissionProtocolResource 
jobSubmissionProtocolResource =
+//                                (JobSubmissionProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.JOB_SUBMISSION_PROTOCOL, 
jobSubmissionProtocol);
+//                        
jobSubmissionProtocolResourceList.add(jobSubmissionProtocolResource);
+//                    }
+//                }
+//            } else if (fieldName.equals(HostIPAddressConstants.RESOURCE_ID)) 
{
+//                generator.setParameter(HostIPAddressConstants.RESOURCE_ID, 
value);
+//                q = generator.selectQuery(em);
+//                results = q.getResultList();
+//                if (results.size() != 0) {
+//                    for (Object result : results) {
+//                        JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) result;
+//                        JobSubmissionProtocolResource 
jobSubmissionProtocolResource =
+//                                (JobSubmissionProtocolResource) 
AppCatalogJPAUtils.getResource(AppCatalogResourceType.JOB_SUBMISSION_PROTOCOL, 
jobSubmissionProtocol);
+//                        
jobSubmissionProtocolResourceList.add(jobSubmissionProtocolResource);
+//                    }
+//                }
+//            } else {
+//                em.getTransaction().commit();
+//                em.close();
+//                logger.error("Unsupported field name for Job Submission 
Protocol Resource.", new IllegalArgumentException());
+//                throw new IllegalArgumentException("Unsupported field name 
for Job Submission Protocol Resource.");
+//            }
+//            em.getTransaction().commit();
+//            em.close();
+//        } catch (Exception e) {
+//            logger.error(e.getMessage(), e);
+//            throw new AppCatalogException(e);
+//        } finally {
+//            if (em != null && em.isOpen()) {
+//                if (em.getTransaction().isActive()) {
+//                    em.getTransaction().rollback();
+//                }
+//                em.close();
+//            }
+//        }
+//        return jobSubmissionProtocolResourceList;
+//    }
+//
+//    @Override
+//    public List<Resource> getAll() throws AppCatalogException {
+//        return null;
+//    }
+//
+//    @Override
+//    public List<String> getAllIds() throws AppCatalogException {
+//        return null;
+//    }
+//
+//    public List<String> getIds(String fieldName, Object value) throws 
AppCatalogException {
+//        List<String> jobSubmissionProtocolIDs = new ArrayList<String>();
+//        EntityManager em = null;
+//        try {
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            em.getTransaction().begin();
+//            Query q;
+//            AppCatalogQueryGenerator generator = new 
AppCatalogQueryGenerator(JOB_SUBMISSION_PROTOCOL);
+//            List results;
+//            if 
(fieldName.equals(JobSubmissionProtocolConstants.SUBMISSION_ID)) {
+//                
generator.setParameter(JobSubmissionProtocolConstants.SUBMISSION_ID, value);
+//                q = generator.selectQuery(em);
+//                results = q.getResultList();
+//                if (results.size() != 0) {
+//                    for (Object result : results) {
+//                        JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) result;
+//                        
jobSubmissionProtocolIDs.add(jobSubmissionProtocol.getSubmissionID());
+//                    }
+//                }
+//            } else if 
(fieldName.equals(JobSubmissionProtocolConstants.RESOURCE_ID)) {
+//                
generator.setParameter(JobSubmissionProtocolConstants.RESOURCE_ID, value);
+//                q = generator.selectQuery(em);
+//                results = q.getResultList();
+//                if (results.size() != 0) {
+//                    for (Object result : results) {
+//                        JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) result;
+//                        
jobSubmissionProtocolIDs.add(jobSubmissionProtocol.getSubmissionID());
+//                    }
+//                }
+//            } else if 
(fieldName.equals(JobSubmissionProtocolConstants.JOB_TYPE)) {
+//                
generator.setParameter(JobSubmissionProtocolConstants.JOB_TYPE, value);
+//                q = generator.selectQuery(em);
+//                results = q.getResultList();
+//                if (results.size() != 0) {
+//                    for (Object result : results) {
+//                        JobSubmissionProtocol jobSubmissionProtocol = 
(JobSubmissionProtocol) result;
+//                        
jobSubmissionProtocolIDs.add(jobSubmissionProtocol.getSubmissionID());
+//                    }
+//                }
+//            } else {
+//                em.getTransaction().commit();
+//                em.close();
+//                logger.error("Unsupported field name for Job Submission 
Protocol resource.", new IllegalArgumentException());
+//                throw new IllegalArgumentException("Unsupported field name 
for Job Submission Protocol Resource.");
+//            }
+//            em.getTransaction().commit();
+//            em.close();
+//        } catch (Exception e) {
+//            logger.error(e.getMessage(), e);
+//            throw new AppCatalogException(e);
+//        } finally {
+//            if (em != null && em.isOpen()) {
+//                if (em.getTransaction().isActive()) {
+//                    em.getTransaction().rollback();
+//                }
+//                em.close();
+//            }
+//        }
+//        return jobSubmissionProtocolIDs;
+//    }
+//
+//    public void save() throws AppCatalogException {
+//        EntityManager em = null;
+//        try {
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            JobSubmissionProtocol existingJobSubProtocol = 
em.find(JobSubmissionProtocol.class, new JobSubmissionProtocolPK(resourceID, 
submissionID, jobType));
+//            em.close();
+//
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            em.getTransaction().begin();
+//            ComputeResource computeResource = em.find(ComputeResource.class, 
resourceID);
+//            if (existingJobSubProtocol != null) {
+//                existingJobSubProtocol.setJobType(jobType);
+//                existingJobSubProtocol.setSubmissionID(submissionID);
+//                existingJobSubProtocol.setComputeResource(computeResource);
+//                existingJobSubProtocol.setResourceID(resourceID);
+//                em.merge(existingJobSubProtocol);
+//            } else {
+//                JobSubmissionProtocol jobSubmissionProtocol = new 
JobSubmissionProtocol();
+//                jobSubmissionProtocol.setJobType(jobType);
+//                jobSubmissionProtocol.setSubmissionID(submissionID);
+//                jobSubmissionProtocol.setResourceID(resourceID);
+//                jobSubmissionProtocol.setComputeResource(computeResource);
+//                em.persist(jobSubmissionProtocol);
+//            }
+//            em.getTransaction().commit();
+//            em.close();
+//        } catch (Exception e) {
+//            logger.error(e.getMessage(), e);
+//            throw new AppCatalogException(e);
+//        } finally {
+//            if (em != null && em.isOpen()) {
+//                if (em.getTransaction().isActive()) {
+//                    em.getTransaction().rollback();
+//                }
+//                em.close();
+//            }
+//        }
+//
+//    }
+//
+//    public boolean isExists(Object identifier) throws AppCatalogException {
+//        HashMap<String, String> ids;
+//        if (identifier instanceof Map) {
+//            ids = (HashMap) identifier;
+//        } else {
+//            logger.error("Identifier should be a map with the field name and 
it's value");
+//            throw new AppCatalogException("Identifier should be a map with 
the field name and it's value");
+//        }
+//
+//        EntityManager em = null;
+//        try {
+//            em = AppCatalogJPAUtils.getEntityManager();
+//            JobSubmissionProtocol jobSubmissionProtocol = 
em.find(JobSubmissionProtocol.class, new 
JobSubmissionProtocolPK(ids.get(JobSubmissionProtocolConstants.RESOURCE_ID),
+//                    ids.get(JobSubmissionProtocolConstants.SUBMISSION_ID), 
ids.get(JobSubmissionProtocolConstants.JOB_TYPE)));
+//
+//            em.close();
+//            return jobSubmissionProtocol != null;
+//        } catch (ApplicationSettingsException e) {
+//            logger.error(e.getMessage(), e);
+//            throw new AppCatalogException(e);
+//        } finally {
+//            if (em != null && em.isOpen()) {
+//                if (em.getTransaction().isActive()) {
+//                    em.getTransaction().rollback();
+//                }
+//                em.close();
+//            }
+//        }
+//    }
+//
+//    public String getResourceID() {
+//        return resourceID;
+//    }
+//
+//    public void setResourceID(String resourceID) {
+//        this.resourceID = resourceID;
+//    }
+//
+//    public String getSubmissionID() {
+//        return submissionID;
+//    }
+//
+//    public void setSubmissionID(String submissionID) {
+//        this.submissionID = submissionID;
+//    }
+//
+//    public String getJobType() {
+//        return jobType;
+//    }
+//
+//    public void setJobType(String jobType) {
+//        this.jobType = jobType;
+//    }
+//
+//    public ComputeResourceResource getComputeHostResource() {
+//        return computeHostResource;
+//    }
+//
+//    public void setComputeHostResource(ComputeResourceResource 
computeHostResource) {
+//        this.computeHostResource = computeHostResource;
+//    }
+//}

http://git-wip-us.apache.org/repos/asf/airavata/blob/404913ac/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/LocalSubmissionResource.java
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/LocalSubmissionResource.java
 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/LocalSubmissionResource.java
index 6774b04..e954fae 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/LocalSubmissionResource.java
+++ 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/LocalSubmissionResource.java
@@ -21,6 +21,7 @@
 
 package org.apache.aiaravata.application.catalog.data.resources;
 
+import java.sql.Timestamp;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -42,6 +43,24 @@ public class LocalSubmissionResource extends 
AbstractResource {
        private String resourceJobManagerId;
        private ResourceJobManagerResource resourceJobManagerResource;
        private String jobSubmissionInterfaceId;
+    private Timestamp createdTime;
+    private Timestamp updatedTime;
+
+    public Timestamp getCreatedTime() {
+        return createdTime;
+    }
+
+    public void setCreatedTime(Timestamp createdTime) {
+        this.createdTime = createdTime;
+    }
+
+    public Timestamp getUpdatedTime() {
+        return updatedTime;
+    }
+
+    public void setUpdatedTime(Timestamp updatedTime) {
+        this.updatedTime = updatedTime;
+    }
        
        @Override
        public void remove(Object identifier) throws AppCatalogException {
@@ -197,8 +216,10 @@ public class LocalSubmissionResource extends 
AbstractResource {
                        em.getTransaction().begin();
                        if (existingLocalSubmission == null) {
                                localSubmission = new LocalSubmission();
+                localSubmission.setCreationTime(createdTime);
                        } else {
                                localSubmission = existingLocalSubmission;
+                localSubmission.setUpdateTime(updatedTime);
                        }
                        
localSubmission.setResourceJobManagerId(getResourceJobManagerId());
                        ResourceJobManager resourceJobManager = 
em.find(ResourceJobManager.class, getResourceJobManagerId());

http://git-wip-us.apache.org/repos/asf/airavata/blob/404913ac/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/ResourceJobManagerResource.java
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/ResourceJobManagerResource.java
 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/ResourceJobManagerResource.java
index 7ba0141..3addb71 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/ResourceJobManagerResource.java
+++ 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/ResourceJobManagerResource.java
@@ -21,6 +21,7 @@
 
 package org.apache.aiaravata.application.catalog.data.resources;
 
+import java.sql.Timestamp;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -42,6 +43,24 @@ public class ResourceJobManagerResource extends 
AbstractResource {
        private String pushMonitoringEndpoint;
        private String jobManagerBinPath;
        private String resourceJobManagerType;
+    private Timestamp createdTime;
+    private Timestamp updatedTime;
+
+    public Timestamp getCreatedTime() {
+        return createdTime;
+    }
+
+    public void setCreatedTime(Timestamp createdTime) {
+        this.createdTime = createdTime;
+    }
+
+    public Timestamp getUpdatedTime() {
+        return updatedTime;
+    }
+
+    public void setUpdatedTime(Timestamp updatedTime) {
+        this.updatedTime = updatedTime;
+    }
        
        @Override
        public void remove(Object identifier) throws AppCatalogException {
@@ -197,8 +216,10 @@ public class ResourceJobManagerResource extends 
AbstractResource {
                        em.getTransaction().begin();
                        if (existingResourceJobManager == null) {
                                resourceJobManager = new ResourceJobManager();
+                resourceJobManager.setCreationTime(createdTime);
                        } else {
                                resourceJobManager = existingResourceJobManager;
+                resourceJobManager.setUpdateTime(updatedTime);
                        }
                        
resourceJobManager.setResourceJobManagerId(getResourceJobManagerId());
                        
resourceJobManager.setPushMonitoringEndpoint(getPushMonitoringEndpoint());

http://git-wip-us.apache.org/repos/asf/airavata/blob/404913ac/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/ScpDataMovementResource.java
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/ScpDataMovementResource.java
 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/ScpDataMovementResource.java
index b1fccfe..8c995b6 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/ScpDataMovementResource.java
+++ 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/ScpDataMovementResource.java
@@ -30,6 +30,7 @@ import org.slf4j.LoggerFactory;
 
 import javax.persistence.EntityManager;
 import javax.persistence.Query;
+import java.sql.Timestamp;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -40,6 +41,24 @@ public class ScpDataMovementResource extends 
AbstractResource {
        private String securityProtocol;
        private String alternativeScpHostname;
        private int sshPort;
+    private Timestamp createdTime;
+    private Timestamp updatedTime;
+
+    public Timestamp getCreatedTime() {
+        return createdTime;
+    }
+
+    public void setCreatedTime(Timestamp createdTime) {
+        this.createdTime = createdTime;
+    }
+
+    public Timestamp getUpdatedTime() {
+        return updatedTime;
+    }
+
+    public void setUpdatedTime(Timestamp updatedTime) {
+        this.updatedTime = updatedTime;
+    }
        
        @Override
        public void remove(Object identifier) throws AppCatalogException {
@@ -195,8 +214,10 @@ public class ScpDataMovementResource extends 
AbstractResource {
                        em.getTransaction().begin();
                        if (existingScpDataMovement == null) {
                                scpDataMovement = new ScpDataMovement();
+                scpDataMovement.setCreationTime(createdTime);
                        } else {
                                scpDataMovement = existingScpDataMovement;
+                scpDataMovement.setUpdateTime(updatedTime);
                        }
                        
scpDataMovement.setQueueDescription(getQueueDescription());
                        
scpDataMovement.setDataMovementInterfaceId(getDataMovementInterfaceId());

Reply via email to