adding search criteria as a new struct

Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/bff76559
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/bff76559
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/bff76559

Branch: refs/heads/develop
Commit: bff76559ecdb0a49250404aab4c57a5e41630d1c
Parents: 6250ff1
Author: scnakandala <supun.nakand...@gmail.com>
Authored: Wed Oct 12 16:42:40 2016 -0400
Committer: scnakandala <supun.nakand...@gmail.com>
Committed: Wed Oct 12 16:42:45 2016 -0400

----------------------------------------------------------------------
 .../server/handler/AiravataServerHandler.java   |    6 +-
 modules/sharing-registry/README.md              |    2 +-
 .../sharing/registry/AiravataDataMigrator.java  |  166 ++
 .../airavata/sharing/registry/DataMigrator.java |  166 --
 .../db/repositories/EntityRepository.java       |   35 +-
 .../sharing/registry/db/utils/DBConstants.java  |   18 +-
 .../server/SharingRegistryServerHandler.java    |    2 +-
 .../SharingRegistryServerHandlerTest.java       |    9 +-
 .../sharing-registry-stubs/pom.xml              |   14 +
 .../sharing/registry/models/Domain.java         |    2 +-
 .../sharing/registry/models/Entity.java         |    2 +-
 .../registry/models/EntitySearchField.java      |   53 +
 .../registry/models/EntitySearchFields.java     |   48 -
 .../sharing/registry/models/EntityType.java     |    2 +-
 .../registry/models/GroupMembership.java        |    2 +-
 .../sharing/registry/models/PermissionType.java |    2 +-
 .../registry/models/SearchCondition.java        |   51 +
 .../sharing/registry/models/SearchCriteria.java |  642 +++++++
 .../sharing/registry/models/Sharing.java        |    2 +-
 .../models/SharingRegistryException.java        |   36 +-
 .../airavata/sharing/registry/models/User.java  |    2 +-
 .../sharing/registry/models/UserGroup.java      |    2 +-
 .../service/cpi/GovRegistryService.java         | 1609 +++++++++---------
 .../thrift_models/sharing_cpi.thrift            |    3 +-
 .../thrift_models/sharing_models.thrift         |   19 +-
 25 files changed, 1829 insertions(+), 1066 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
----------------------------------------------------------------------
diff --git 
a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
 
b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
index a0a563c..f0c0559 100644
--- 
a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
+++ 
b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
@@ -756,7 +756,7 @@ public class AiravataServerHandler implements 
Airavata.Iface {
                 // user projects + user accessible projects
                 List<String> accessibleProjectIds = new ArrayList<>();
                 
sharingRegistryServerHandler.searchEntities(userName+"@"+gatewayId , 
gatewayId+":PROJECT",
-                        new HashMap<>(), offset, 
limit).stream().forEach(p->accessibleProjectIds.add(p.entityId));
+                        new ArrayList<>(), offset, 
limit).stream().forEach(p->accessibleProjectIds.add(p.entityId));
                 return getRegistryServiceClient().searchProjects(gatewayId, 
userName, accessibleProjectIds, new HashMap<>(), limit, offset);
             }else{
                 return getRegistryServiceClient().getUserProjects(gatewayId, 
userName, limit, offset);
@@ -801,7 +801,7 @@ public class AiravataServerHandler implements 
Airavata.Iface {
 
             if(ServerSettings.isEnableSharing())
                 
sharingRegistryServerHandler.searchEntities(userName+"@"+gatewayId, 
gatewayId+":PROJECT",
-                        new HashMap<>(), 0, 
-1).stream().forEach(e->accessibleProjIds.add(e.entityId));
+                        new ArrayList<>(), 0, 
-1).stream().forEach(e->accessibleProjIds.add(e.entityId));
 
             return getRegistryServiceClient().searchProjects(gatewayId, 
userName, accessibleProjIds, filters, limit, offset);
         }catch (Exception e) {
@@ -838,7 +838,7 @@ public class AiravataServerHandler implements 
Airavata.Iface {
             List<String> accessibleExpIds = new ArrayList<>();
             if(ServerSettings.isEnableSharing())
                 
sharingRegistryServerHandler.searchEntities(userName+"@"+gatewayId, 
gatewayId+":EXPERIMENT",
-                        new HashMap<>(), 0, 
-1).forEach(e->accessibleExpIds.add(e.entityId));
+                        new ArrayList<>(), 0, 
-1).forEach(e->accessibleExpIds.add(e.entityId));
             return getRegistryServiceClient().searchExperiments(gatewayId, 
userName, accessibleExpIds, filters, limit, offset);
         }catch (Exception e) {
             logger.error("Error while retrieving experiments", e);

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/README.md
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/README.md 
b/modules/sharing-registry/README.md
index 299e7b4..524a36b 100644
--- a/modules/sharing-registry/README.md
+++ b/modules/sharing-registry/README.md
@@ -1,3 +1,3 @@
-## Airavata Governance Registry
+## Airavata Sharing Registry
 
 * This module implements a generic service for access controlling to resources 
and to provide group based resource sharing
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/AiravataDataMigrator.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/AiravataDataMigrator.java
 
b/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/AiravataDataMigrator.java
new file mode 100644
index 0000000..1a80683
--- /dev/null
+++ 
b/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/AiravataDataMigrator.java
@@ -0,0 +1,166 @@
+/*
+ *
+ * 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.airavata.sharing.registry;
+
+import org.apache.airavata.common.exception.ApplicationSettingsException;
+import org.apache.airavata.sharing.registry.models.*;
+import 
org.apache.airavata.sharing.registry.server.SharingRegistryServerHandler;
+import org.apache.thrift.TException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.sql.Connection;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.util.HashMap;
+import java.util.Map;
+
+public class AiravataDataMigrator {
+    private final static Logger logger = 
LoggerFactory.getLogger(AiravataDataMigrator.class);
+
+    public static void main(String[] args) throws SQLException, 
ClassNotFoundException, TException, ApplicationSettingsException {
+        Connection expCatConnection = 
ConnectionFactory.getInstance().getExpCatConnection();
+
+        SharingRegistryServerHandler govRegistryServerHandler = new 
SharingRegistryServerHandler();
+
+        String query = "SELECT * FROM GATEWAY";
+        Statement statement = expCatConnection.createStatement();
+        ResultSet rs = statement.executeQuery(query);
+
+        while (rs.next()) {
+            //Creating domain entries
+            Domain domain = new Domain();
+            domain.setDomainId(rs.getString("GATEWAY_ID"));
+            if(rs.getString("GATEWAY_NAME") != null)
+                domain.setName(rs.getString("GATEWAY_NAME"));
+            else
+                domain.setName(rs.getString("GATEWAY_ID"));
+            domain.setDescription("Domain entry for " + domain.name);
+
+            govRegistryServerHandler.createDomain(domain);
+
+            //Creating Entity Types for each domain
+            EntityType entityType = new EntityType();
+            entityType.setEntityTypeId(domain.domainId+":PROJECT");
+            entityType.setDomainId(domain.domainId);
+            entityType.setName("PROJECT");
+            entityType.setDescription("Project entity type");
+            govRegistryServerHandler.createEntityType(entityType);
+
+            entityType = new EntityType();
+            entityType.setEntityTypeId(domain.domainId+":EXPERIMENT");
+            entityType.setDomainId(domain.domainId);
+            entityType.setName("EXPERIMENT");
+            entityType.setDescription("Experiment entity type");
+            govRegistryServerHandler.createEntityType(entityType);
+
+            entityType = new EntityType();
+            entityType.setEntityTypeId(domain.domainId+":FILE");
+            entityType.setDomainId(domain.domainId);
+            entityType.setName("FILE");
+            entityType.setDescription("File entity type");
+            govRegistryServerHandler.createEntityType(entityType);
+
+            //Creating Permission Types for each domain
+            PermissionType permissionType = new PermissionType();
+            permissionType.setPermissionTypeId(domain.domainId+":READ");
+            permissionType.setDomainId(domain.domainId);
+            permissionType.setName("READ");
+            permissionType.setDescription("Read permission type");
+            govRegistryServerHandler.createPermissionType(permissionType);
+
+            permissionType = new PermissionType();
+            permissionType.setPermissionTypeId(domain.domainId+":WRITE");
+            permissionType.setDomainId(domain.domainId);
+            permissionType.setName("WRITE");
+            permissionType.setDescription("Write permission type");
+            govRegistryServerHandler.createPermissionType(permissionType);
+        }
+
+        //Creating user entries
+        query = "SELECT * FROM USERS";
+        statement = expCatConnection.createStatement();
+        rs = statement.executeQuery(query);
+        while(rs.next()){
+            User user = new User();
+            user.setUserId(rs.getString("AIRAVATA_INTERNAL_USER_ID"));
+            user.setDomainId(rs.getString("GATEWAY_ID"));
+            user.setUserName(rs.getString("USER_NAME"));
+
+            govRegistryServerHandler.createUser(user);
+        }
+
+        //Creating project entries
+        query = "SELECT * FROM PROJECT";
+        statement = expCatConnection.createStatement();
+        rs = statement.executeQuery(query);
+        while(rs.next()){
+            Entity entity = new Entity();
+            entity.setEntityId(rs.getString("PROJECT_ID"));
+            entity.setDomainId(rs.getString("GATEWAY_ID"));
+            entity.setEntityTypeId(rs.getString("GATEWAY_ID") + ":PROJECT");
+            entity.setOwnerId(rs.getString("USER_NAME") + "@" + 
rs.getString("GATEWAY_ID"));
+            entity.setName(rs.getString("PROJECT_NAME"));
+            entity.setDescription(rs.getString("DESCRIPTION"));
+            if(entity.getDescription() == null)
+                entity.setFullText(entity.getName());
+            else
+                entity.setFullText(entity.getName() + " " + 
entity.getDescription());
+            Map<String, String> metadata = new HashMap<>();
+            metadata.put("CREATION_TIME", 
rs.getDate("CREATION_TIME").toString());
+
+            govRegistryServerHandler.createEntity(entity);
+        }
+
+        //Creating experiment entries
+        query = "SELECT * FROM EXPERIMENT";
+        statement = expCatConnection.createStatement();
+        rs = statement.executeQuery(query);
+        while(rs.next()){
+            Entity entity = new Entity();
+            entity.setEntityId(rs.getString("EXPERIMENT_ID"));
+            entity.setDomainId(rs.getString("GATEWAY_ID"));
+            entity.setEntityTypeId(rs.getString("GATEWAY_ID") + ":EXPERIMENT");
+            entity.setOwnerId(rs.getString("USER_NAME") + "@" + 
rs.getString("GATEWAY_ID"));
+            entity.setParentEntityId(rs.getString("PROJECT_ID"));
+            entity.setName(rs.getString("EXPERIMENT_NAME"));
+            entity.setDescription(rs.getString("DESCRIPTION"));
+            if(entity.getDescription() == null)
+                entity.setFullText(entity.getName());
+            else
+                entity.setFullText(entity.getName() + " " + 
entity.getDescription());
+            Map<String, String> metadata = new HashMap<>();
+            metadata.put("CREATION_TIME", 
rs.getDate("CREATION_TIME").toString());
+            metadata.put("EXPERIMENT_TYPE", rs.getString("EXPERIMENT_TYPE"));
+            metadata.put("EXECUTION_ID", rs.getString("EXECUTION_ID"));
+            metadata.put("GATEWAY_EXECUTION_ID", 
rs.getString("GATEWAY_EXECUTION_ID"));
+            metadata.put("ENABLE_EMAIL_NOTIFICATION", 
rs.getString("ENABLE_EMAIL_NOTIFICATION"));
+            metadata.put("EMAIL_ADDRESSES", rs.getString("EMAIL_ADDRESSES"));
+            metadata.put("GATEWAY_INSTANCE_ID", 
rs.getString("GATEWAY_INSTANCE_ID"));
+            metadata.put("ARCHIVE", rs.getString("ARCHIVE"));
+
+            govRegistryServerHandler.createEntity(entity);
+        }
+
+        expCatConnection.close();
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/DataMigrator.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/DataMigrator.java
 
b/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/DataMigrator.java
deleted file mode 100644
index ea23042..0000000
--- 
a/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/DataMigrator.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/*
- *
- * 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.airavata.sharing.registry;
-
-import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.apache.airavata.sharing.registry.models.*;
-import 
org.apache.airavata.sharing.registry.server.SharingRegistryServerHandler;
-import org.apache.thrift.TException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.sql.Connection;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-import java.util.HashMap;
-import java.util.Map;
-
-public class DataMigrator {
-    private final static Logger logger = 
LoggerFactory.getLogger(DataMigrator.class);
-
-    public static void main(String[] args) throws SQLException, 
ClassNotFoundException, TException, ApplicationSettingsException {
-        Connection expCatConnection = 
ConnectionFactory.getInstance().getExpCatConnection();
-
-        SharingRegistryServerHandler govRegistryServerHandler = new 
SharingRegistryServerHandler();
-
-        String query = "SELECT * FROM GATEWAY";
-        Statement statement = expCatConnection.createStatement();
-        ResultSet rs = statement.executeQuery(query);
-
-        while (rs.next()) {
-            //Creating domain entries
-            Domain domain = new Domain();
-            domain.setDomainId(rs.getString("GATEWAY_ID"));
-            if(rs.getString("GATEWAY_NAME") != null)
-                domain.setName(rs.getString("GATEWAY_NAME"));
-            else
-                domain.setName(rs.getString("GATEWAY_ID"));
-            domain.setDescription("Domain entry for " + domain.name);
-
-            govRegistryServerHandler.createDomain(domain);
-
-            //Creating Entity Types for each domain
-            EntityType entityType = new EntityType();
-            entityType.setEntityTypeId(domain.domainId+":PROJECT");
-            entityType.setDomainId(domain.domainId);
-            entityType.setName("PROJECT");
-            entityType.setDescription("Project entity type");
-            govRegistryServerHandler.createEntityType(entityType);
-
-            entityType = new EntityType();
-            entityType.setEntityTypeId(domain.domainId+":EXPERIMENT");
-            entityType.setDomainId(domain.domainId);
-            entityType.setName("EXPERIMENT");
-            entityType.setDescription("Experiment entity type");
-            govRegistryServerHandler.createEntityType(entityType);
-
-            entityType = new EntityType();
-            entityType.setEntityTypeId(domain.domainId+":FILE");
-            entityType.setDomainId(domain.domainId);
-            entityType.setName("FILE");
-            entityType.setDescription("File entity type");
-            govRegistryServerHandler.createEntityType(entityType);
-
-            //Creating Permission Types for each domain
-            PermissionType permissionType = new PermissionType();
-            permissionType.setPermissionTypeId(domain.domainId+":READ");
-            permissionType.setDomainId(domain.domainId);
-            permissionType.setName("READ");
-            permissionType.setDescription("Read permission type");
-            govRegistryServerHandler.createPermissionType(permissionType);
-
-            permissionType = new PermissionType();
-            permissionType.setPermissionTypeId(domain.domainId+":WRITE");
-            permissionType.setDomainId(domain.domainId);
-            permissionType.setName("WRITE");
-            permissionType.setDescription("Write permission type");
-            govRegistryServerHandler.createPermissionType(permissionType);
-        }
-
-        //Creating user entries
-        query = "SELECT * FROM USERS";
-        statement = expCatConnection.createStatement();
-        rs = statement.executeQuery(query);
-        while(rs.next()){
-            User user = new User();
-            user.setUserId(rs.getString("AIRAVATA_INTERNAL_USER_ID"));
-            user.setDomainId(rs.getString("GATEWAY_ID"));
-            user.setUserName(rs.getString("USER_NAME"));
-
-            govRegistryServerHandler.createUser(user);
-        }
-
-        //Creating project entries
-        query = "SELECT * FROM PROJECT";
-        statement = expCatConnection.createStatement();
-        rs = statement.executeQuery(query);
-        while(rs.next()){
-            Entity entity = new Entity();
-            entity.setEntityId(rs.getString("PROJECT_ID"));
-            entity.setDomainId(rs.getString("GATEWAY_ID"));
-            entity.setEntityTypeId(rs.getString("GATEWAY_ID") + ":PROJECT");
-            entity.setOwnerId(rs.getString("USER_NAME") + "@" + 
rs.getString("GATEWAY_ID"));
-            entity.setName(rs.getString("PROJECT_NAME"));
-            entity.setDescription(rs.getString("DESCRIPTION"));
-            if(entity.getDescription() == null)
-                entity.setFullText(entity.getName());
-            else
-                entity.setFullText(entity.getName() + " " + 
entity.getDescription());
-            Map<String, String> metadata = new HashMap<>();
-            metadata.put("CREATION_TIME", 
rs.getDate("CREATION_TIME").toString());
-
-            govRegistryServerHandler.createEntity(entity);
-        }
-
-        //Creating experiment entries
-        query = "SELECT * FROM EXPERIMENT";
-        statement = expCatConnection.createStatement();
-        rs = statement.executeQuery(query);
-        while(rs.next()){
-            Entity entity = new Entity();
-            entity.setEntityId(rs.getString("EXPERIMENT_ID"));
-            entity.setDomainId(rs.getString("GATEWAY_ID"));
-            entity.setEntityTypeId(rs.getString("GATEWAY_ID") + ":EXPERIMENT");
-            entity.setOwnerId(rs.getString("USER_NAME") + "@" + 
rs.getString("GATEWAY_ID"));
-            entity.setParentEntityId(rs.getString("PROJECT_ID"));
-            entity.setName(rs.getString("EXPERIMENT_NAME"));
-            entity.setDescription(rs.getString("DESCRIPTION"));
-            if(entity.getDescription() == null)
-                entity.setFullText(entity.getName());
-            else
-                entity.setFullText(entity.getName() + " " + 
entity.getDescription());
-            Map<String, String> metadata = new HashMap<>();
-            metadata.put("CREATION_TIME", 
rs.getDate("CREATION_TIME").toString());
-            metadata.put("EXPERIMENT_TYPE", rs.getString("EXPERIMENT_TYPE"));
-            metadata.put("EXECUTION_ID", rs.getString("EXECUTION_ID"));
-            metadata.put("GATEWAY_EXECUTION_ID", 
rs.getString("GATEWAY_EXECUTION_ID"));
-            metadata.put("ENABLE_EMAIL_NOTIFICATION", 
rs.getString("ENABLE_EMAIL_NOTIFICATION"));
-            metadata.put("EMAIL_ADDRESSES", rs.getString("EMAIL_ADDRESSES"));
-            metadata.put("GATEWAY_INSTANCE_ID", 
rs.getString("GATEWAY_INSTANCE_ID"));
-            metadata.put("ARCHIVE", rs.getString("ARCHIVE"));
-
-            govRegistryServerHandler.createEntity(entity);
-        }
-
-        expCatConnection.close();
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/db/repositories/EntityRepository.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/db/repositories/EntityRepository.java
 
b/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/db/repositories/EntityRepository.java
index bc726f6..b7137d2 100644
--- 
a/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/db/repositories/EntityRepository.java
+++ 
b/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/db/repositories/EntityRepository.java
@@ -23,15 +23,12 @@ package 
org.apache.airavata.sharing.registry.db.repositories;
 import org.apache.airavata.sharing.registry.db.entities.EntityEntity;
 import org.apache.airavata.sharing.registry.db.entities.SharingEntity;
 import org.apache.airavata.sharing.registry.db.utils.DBConstants;
-import org.apache.airavata.sharing.registry.models.Entity;
-import org.apache.airavata.sharing.registry.models.EntitySearchFields;
-import org.apache.airavata.sharing.registry.models.SharingRegistryException;
+import org.apache.airavata.sharing.registry.models.*;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.util.HashMap;
 import java.util.List;
-import java.util.Map;
 
 public class EntityRepository extends AbstractRepository<Entity, EntityEntity, 
String> {
     private final static Logger logger = 
LoggerFactory.getLogger(EntityRepository.class);
@@ -46,7 +43,7 @@ public class EntityRepository extends 
AbstractRepository<Entity, EntityEntity, S
         return select(filters, 0, -1);
     }
 
-    public List<Entity> searchEntities(List<String> groupIds, String 
entityTypeId, Map<EntitySearchFields, String> filters,
+    public List<Entity> searchEntities(List<String> groupIds, String 
entityTypeId, List<SearchCriteria> filters,
                                        int offset, int limit) throws 
SharingRegistryException {
         String groupIdString = "'";
         for(String groupId : groupIds)
@@ -58,13 +55,27 @@ public class EntityRepository extends 
AbstractRepository<Entity, EntityEntity, S
                 "S." + DBConstants.SharingTable.GROUP_ID + " IN(" + 
groupIdString + ") AND E." + DBConstants.EntityTable.ENTITY_TYPE_ID + "='" +
                 entityTypeId + "' AND ";
 
-        for(Map.Entry<EntitySearchFields, String> mapEntry : 
filters.entrySet()){
-            if(mapEntry.getKey().equals(EntitySearchFields.NAME)){
-                query += "E." + DBConstants.EntityTable.NAME + " LIKE '%" + 
mapEntry.getValue() + "%' AND ";
-            }else if(mapEntry.getKey().equals(EntitySearchFields.DESCRIPTION)){
-                query += "E." + DBConstants.EntityTable.DESCRIPTION + " LIKE 
'%" + mapEntry.getValue() + "%' AND ";
-            }else if(mapEntry.getKey().equals(EntitySearchFields.FULL_TEXT)){
-                query += "E." + DBConstants.EntityTable.FULL_TEXT + " LIKE '%" 
+ mapEntry.getValue() + "%' AND ";
+        for(SearchCriteria searchCriteria : filters){
+            if(searchCriteria.getSearchField().equals(EntitySearchField.NAME)){
+                query += "E." + DBConstants.EntityTable.NAME + " LIKE '%" + 
searchCriteria.getValue() + "%' AND ";
+            }else 
if(searchCriteria.getSearchField().equals(EntitySearchField.DESCRIPTION)){
+                query += "E." + DBConstants.EntityTable.DESCRIPTION + " LIKE 
'%" + searchCriteria.getValue() + "%' AND ";
+            }else 
if(searchCriteria.getSearchField().equals(EntitySearchField.FULL_TEXT)){
+                query += "E." + DBConstants.EntityTable.FULL_TEXT + " LIKE '%" 
+ searchCriteria.getValue() + "%' AND ";
+            }else 
if(searchCriteria.getSearchField().equals(EntitySearchField.PRRENT_ENTITY_ID)){
+                query += "E." + DBConstants.EntityTable.PARENT_ENTITY_ID + " = 
'" + searchCriteria.getValue() + "' AND ";
+            }else 
if(searchCriteria.getSearchField().equals(EntitySearchField.CREATED_TIME)){
+                
if(searchCriteria.getSearchCondition().equals(SearchCondition.GTE)){
+                    query += "E." + DBConstants.EntityTable.CREATED_TIME + " 
>= " + Integer.parseInt(searchCriteria.getValue().trim()) + " AND ";
+                }else{
+                    query += "E." + DBConstants.EntityTable.CREATED_TIME + " 
<= " + Integer.parseInt(searchCriteria.getValue().trim()) + " AND ";
+                }
+            }else 
if(searchCriteria.getSearchField().equals(EntitySearchField.UPDATED_TIME)){
+                
if(searchCriteria.getSearchCondition().equals(SearchCondition.GTE)){
+                    query += "E." + DBConstants.EntityTable.UPDATED_TIME + " 
>= " + Integer.parseInt(searchCriteria.getValue().trim()) + " AND ";
+                }else{
+                    query += "E." + DBConstants.EntityTable.UPDATED_TIME + " 
<= " + Integer.parseInt(searchCriteria.getValue().trim()) + " AND ";
+                }
             }
         }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/db/utils/DBConstants.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/db/utils/DBConstants.java
 
b/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/db/utils/DBConstants.java
index f963de2..387e0e5 100644
--- 
a/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/db/utils/DBConstants.java
+++ 
b/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/db/utils/DBConstants.java
@@ -26,18 +26,22 @@ import org.slf4j.LoggerFactory;
 public class DBConstants {
     private final static Logger logger = 
LoggerFactory.getLogger(DBConstants.class);
 
-    public static int SELECT_MAX_ROWS = 10000;
+    public static int SELECT_MAX_ROWS = 1000;
 
     public static class DomainTable {
         public static String DOMAIN_ID = "domainId";
         public static String NAME = "name";
         public static String DESCRIPTION = "description";
+        public static final String CREATED_TIME = "createdTime";
+        public static final String UPDATED_TIME = "updatedTime";
     }
 
     public static class UserTable {
         public static String USER_ID = "userId";
         public static String DOMAIN_ID = "domainId";
         public static String USER_NAME = "userName";
+        public static final String CREATED_TIME = "createdTime";
+        public static final String UPDATED_TIME = "updatedTime";
     }
 
     public static class UserGroupTable {
@@ -47,23 +51,31 @@ public class DBConstants {
         public static String DESCRIPTION = "description";
         public static String OWNER_ID = "ownerId";
         public static String GROUP_TYPE = "groupType";
+        public static final String CREATED_TIME = "createdTime";
+        public static final String UPDATED_TIME = "updatedTime";
     }
 
     public static class GroupMembershipTable {
         public static String PARENT_ID = "parentId";
         public static String CHILD_ID = "childId";
         public static String CHILD_TYPE = "childType";
+        public static final String CREATED_TIME = "createdTime";
+        public static final String UPDATED_TIME = "updatedTime";
     }
 
     public static class EntityTypeTable {
         public static String ENTITY_TYPE_ID = "entityTypeId";
         public static String DOMAIN_ID = "domainId";
+        public static final String CREATED_TIME = "createdTime";
+        public static final String UPDATED_TIME = "updatedTime";
     }
 
     public static class PermissionTypeTable {
         public static String ENTITY_TYPE_ID = "permissionTypeId";
         public static String DOMAIN_ID = "domainId";
         public static String NAME = "name";
+        public static final String CREATED_TIME = "createdTime";
+        public static final String UPDATED_TIME = "updatedTime";
     }
 
     public static class EntityTable {
@@ -73,6 +85,8 @@ public class DBConstants {
         public static String NAME = "name";
         public static String DESCRIPTION = "description";
         public static String FULL_TEXT = "fullText";
+        public static final String CREATED_TIME = "createdTime";
+        public static final String UPDATED_TIME = "updatedTime";
     }
 
     public static class SharingTable {
@@ -81,5 +95,7 @@ public class DBConstants {
         public static String GROUP_ID = "groupId";
         public static String INHERITED_PARENT_ID = "inheritedParentId";
         public static final String SHARING_TYPE = "sharingType";
+        public static final String CREATED_TIME = "createdTime";
+        public static final String UPDATED_TIME = "updatedTime";
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/server/SharingRegistryServerHandler.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/server/SharingRegistryServerHandler.java
 
b/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/server/SharingRegistryServerHandler.java
index 1c7714f..7f2eb32 100644
--- 
a/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/server/SharingRegistryServerHandler.java
+++ 
b/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/server/SharingRegistryServerHandler.java
@@ -435,7 +435,7 @@ public class SharingRegistryServerHandler implements 
GovRegistryService.Iface{
     }
 
     @Override
-    public List<Entity> searchEntities(String userId, String entityTypeId, 
Map<EntitySearchFields, String> filters,
+    public List<Entity> searchEntities(String userId, String entityTypeId, 
List<SearchCriteria> filters,
                                        int offset, int limit) throws 
SharingRegistryException, TException {
         List<String> groupIds = new ArrayList<>();
         groupIds.add(userId);

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-core/src/test/java/org/apache/airavata/sharing/registry/SharingRegistryServerHandlerTest.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-core/src/test/java/org/apache/airavata/sharing/registry/SharingRegistryServerHandlerTest.java
 
b/modules/sharing-registry/sharing-registry-core/src/test/java/org/apache/airavata/sharing/registry/SharingRegistryServerHandlerTest.java
index 09e98ca..cf92856 100644
--- 
a/modules/sharing-registry/sharing-registry-core/src/test/java/org/apache/airavata/sharing/registry/SharingRegistryServerHandlerTest.java
+++ 
b/modules/sharing-registry/sharing-registry-core/src/test/java/org/apache/airavata/sharing/registry/SharingRegistryServerHandlerTest.java
@@ -32,6 +32,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import java.sql.SQLException;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.HashMap;
 import java.util.Map;
@@ -272,8 +273,12 @@ public class SharingRegistryServerHandlerTest {
         Assert.assertTrue(sharingRegistryServerHandler.userHasAccess(domainId, 
userId1, entityId4, permissionTypeId1));
         
Assert.assertFalse(sharingRegistryServerHandler.userHasAccess(domainId, 
userId3, entityId1, permissionTypeId1));
 
-        HashMap<EntitySearchFields, String> filters = new HashMap<>();
-        filters.put(EntitySearchFields.NAME, "Input");
+        ArrayList<SearchCriteria> filters = new ArrayList<>();
+        SearchCriteria searchCriteria = new SearchCriteria();
+        searchCriteria.setSearchCondition(SearchCondition.LIKE);
+        searchCriteria.setValue("Input");
+        searchCriteria.setSearchField(EntitySearchField.NAME);
+        filters.add(searchCriteria);
         Assert.assertTrue(sharingRegistryServerHandler.searchEntities(userId1, 
entityTypeId3, filters, 0, -1).size() > 0);
 
         
Assert.assertNotNull(sharingRegistryServerHandler.getListOfSharedUsers(entityId1,
 permissionTypeId1));

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/pom.xml
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/sharing-registry-stubs/pom.xml 
b/modules/sharing-registry/sharing-registry-stubs/pom.xml
index f0a46ef..eb47dc9 100644
--- a/modules/sharing-registry/sharing-registry-stubs/pom.xml
+++ b/modules/sharing-registry/sharing-registry-stubs/pom.xml
@@ -20,5 +20,19 @@
         </dependency>
     </dependencies>
 
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <version>3.5.1</version>
+                <configuration>
+                    <source>1.8</source>
+                    <target>1.8</target>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
 
 </project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Domain.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Domain.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Domain.java
index eb30e38..f3b5d25 100644
--- 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Domain.java
+++ 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Domain.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-06")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-12")
 public class Domain implements org.apache.thrift.TBase<Domain, 
Domain._Fields>, java.io.Serializable, Cloneable, Comparable<Domain> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new 
org.apache.thrift.protocol.TStruct("Domain");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Entity.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Entity.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Entity.java
index 0818b70..6f169aa 100644
--- 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Entity.java
+++ 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Entity.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-06")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-12")
 public class Entity implements org.apache.thrift.TBase<Entity, 
Entity._Fields>, java.io.Serializable, Cloneable, Comparable<Entity> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new 
org.apache.thrift.protocol.TStruct("Entity");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntitySearchField.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntitySearchField.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntitySearchField.java
new file mode 100644
index 0000000..8a88f01
--- /dev/null
+++ 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntitySearchField.java
@@ -0,0 +1,53 @@
+/**
+ * Autogenerated by Thrift Compiler (0.9.3)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.airavata.sharing.registry.models;
+
+
+public enum EntitySearchField implements org.apache.thrift.TEnum {
+  NAME(0),
+  DESCRIPTION(1),
+  FULL_TEXT(2),
+  PRRENT_ENTITY_ID(3),
+  CREATED_TIME(4),
+  UPDATED_TIME(5);
+
+  private final int value;
+
+  private EntitySearchField(int value) {
+    this.value = value;
+  }
+
+  /**
+   * Get the integer value of this enum value, as defined in the Thrift IDL.
+   */
+  public int getValue() {
+    return value;
+  }
+
+  /**
+   * Find a the enum type by its integer value, as defined in the Thrift IDL.
+   * @return null if the value is not found.
+   */
+  public static EntitySearchField findByValue(int value) { 
+    switch (value) {
+      case 0:
+        return NAME;
+      case 1:
+        return DESCRIPTION;
+      case 2:
+        return FULL_TEXT;
+      case 3:
+        return PRRENT_ENTITY_ID;
+      case 4:
+        return CREATED_TIME;
+      case 5:
+        return UPDATED_TIME;
+      default:
+        return null;
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntitySearchFields.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntitySearchFields.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntitySearchFields.java
deleted file mode 100644
index 6832191..0000000
--- 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntitySearchFields.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/**
- * Autogenerated by Thrift Compiler (0.9.3)
- *
- * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
- *  @generated
- */
-package org.apache.airavata.sharing.registry.models;
-
-
-import java.util.Map;
-import java.util.HashMap;
-import org.apache.thrift.TEnum;
-
-public enum EntitySearchFields implements org.apache.thrift.TEnum {
-  NAME(0),
-  DESCRIPTION(1),
-  FULL_TEXT(2);
-
-  private final int value;
-
-  private EntitySearchFields(int value) {
-    this.value = value;
-  }
-
-  /**
-   * Get the integer value of this enum value, as defined in the Thrift IDL.
-   */
-  public int getValue() {
-    return value;
-  }
-
-  /**
-   * Find a the enum type by its integer value, as defined in the Thrift IDL.
-   * @return null if the value is not found.
-   */
-  public static EntitySearchFields findByValue(int value) { 
-    switch (value) {
-      case 0:
-        return NAME;
-      case 1:
-        return DESCRIPTION;
-      case 2:
-        return FULL_TEXT;
-      default:
-        return null;
-    }
-  }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntityType.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntityType.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntityType.java
index 4244502..95220e3 100644
--- 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntityType.java
+++ 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntityType.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-06")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-12")
 public class EntityType implements org.apache.thrift.TBase<EntityType, 
EntityType._Fields>, java.io.Serializable, Cloneable, Comparable<EntityType> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new 
org.apache.thrift.protocol.TStruct("EntityType");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupMembership.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupMembership.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupMembership.java
index 5ec148f..784ae02 100644
--- 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupMembership.java
+++ 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupMembership.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-06")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-12")
 public class GroupMembership implements 
org.apache.thrift.TBase<GroupMembership, GroupMembership._Fields>, 
java.io.Serializable, Cloneable, Comparable<GroupMembership> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new 
org.apache.thrift.protocol.TStruct("GroupMembership");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/PermissionType.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/PermissionType.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/PermissionType.java
index 806c15b..bb3c945 100644
--- 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/PermissionType.java
+++ 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/PermissionType.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-06")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-12")
 public class PermissionType implements org.apache.thrift.TBase<PermissionType, 
PermissionType._Fields>, java.io.Serializable, Cloneable, 
Comparable<PermissionType> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new 
org.apache.thrift.protocol.TStruct("PermissionType");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SearchCondition.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SearchCondition.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SearchCondition.java
new file mode 100644
index 0000000..a111c6a
--- /dev/null
+++ 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SearchCondition.java
@@ -0,0 +1,51 @@
+/**
+ * Autogenerated by Thrift Compiler (0.9.3)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.airavata.sharing.registry.models;
+
+
+import java.util.Map;
+import java.util.HashMap;
+import org.apache.thrift.TEnum;
+
+public enum SearchCondition implements org.apache.thrift.TEnum {
+  EQUAL(0),
+  LIKE(1),
+  GTE(2),
+  LTE(3);
+
+  private final int value;
+
+  private SearchCondition(int value) {
+    this.value = value;
+  }
+
+  /**
+   * Get the integer value of this enum value, as defined in the Thrift IDL.
+   */
+  public int getValue() {
+    return value;
+  }
+
+  /**
+   * Find a the enum type by its integer value, as defined in the Thrift IDL.
+   * @return null if the value is not found.
+   */
+  public static SearchCondition findByValue(int value) { 
+    switch (value) {
+      case 0:
+        return EQUAL;
+      case 1:
+        return LIKE;
+      case 2:
+        return GTE;
+      case 3:
+        return LTE;
+      default:
+        return null;
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SearchCriteria.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SearchCriteria.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SearchCriteria.java
new file mode 100644
index 0000000..3693a19
--- /dev/null
+++ 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SearchCriteria.java
@@ -0,0 +1,642 @@
+/**
+ * Autogenerated by Thrift Compiler (0.9.3)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.airavata.sharing.registry.models;
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
+import javax.annotation.Generated;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-12")
+public class SearchCriteria implements org.apache.thrift.TBase<SearchCriteria, 
SearchCriteria._Fields>, java.io.Serializable, Cloneable, 
Comparable<SearchCriteria> {
+  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new 
org.apache.thrift.protocol.TStruct("SearchCriteria");
+
+  private static final org.apache.thrift.protocol.TField 
SEARCH_FIELD_FIELD_DESC = new org.apache.thrift.protocol.TField("searchField", 
org.apache.thrift.protocol.TType.I32, (short)1);
+  private static final org.apache.thrift.protocol.TField VALUE_FIELD_DESC = 
new org.apache.thrift.protocol.TField("value", 
org.apache.thrift.protocol.TType.STRING, (short)2);
+  private static final org.apache.thrift.protocol.TField 
SEARCH_CONDITION_FIELD_DESC = new 
org.apache.thrift.protocol.TField("searchCondition", 
org.apache.thrift.protocol.TType.I32, (short)3);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = 
new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new 
SearchCriteriaStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new SearchCriteriaTupleSchemeFactory());
+  }
+
+  /**
+   * 
+   * @see EntitySearchField
+   */
+  public EntitySearchField searchField; // optional
+  public String value; // optional
+  /**
+   * 
+   * @see SearchCondition
+   */
+  public SearchCondition searchCondition; // optional
+
+  /** The set of fields this struct contains, along with convenience methods 
for finding and manipulating them. */
+  public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+    /**
+     * 
+     * @see EntitySearchField
+     */
+    SEARCH_FIELD((short)1, "searchField"),
+    VALUE((short)2, "value"),
+    /**
+     * 
+     * @see SearchCondition
+     */
+    SEARCH_CONDITION((short)3, "searchCondition");
+
+    private static final Map<String, _Fields> byName = new HashMap<String, 
_Fields>();
+
+    static {
+      for (_Fields field : EnumSet.allOf(_Fields.class)) {
+        byName.put(field.getFieldName(), field);
+      }
+    }
+
+    /**
+     * Find the _Fields constant that matches fieldId, or null if its not 
found.
+     */
+    public static _Fields findByThriftId(int fieldId) {
+      switch(fieldId) {
+        case 1: // SEARCH_FIELD
+          return SEARCH_FIELD;
+        case 2: // VALUE
+          return VALUE;
+        case 3: // SEARCH_CONDITION
+          return SEARCH_CONDITION;
+        default:
+          return null;
+      }
+    }
+
+    /**
+     * Find the _Fields constant that matches fieldId, throwing an exception
+     * if it is not found.
+     */
+    public static _Fields findByThriftIdOrThrow(int fieldId) {
+      _Fields fields = findByThriftId(fieldId);
+      if (fields == null) throw new IllegalArgumentException("Field " + 
fieldId + " doesn't exist!");
+      return fields;
+    }
+
+    /**
+     * Find the _Fields constant that matches name, or null if its not found.
+     */
+    public static _Fields findByName(String name) {
+      return byName.get(name);
+    }
+
+    private final short _thriftId;
+    private final String _fieldName;
+
+    _Fields(short thriftId, String fieldName) {
+      _thriftId = thriftId;
+      _fieldName = fieldName;
+    }
+
+    public short getThriftFieldId() {
+      return _thriftId;
+    }
+
+    public String getFieldName() {
+      return _fieldName;
+    }
+  }
+
+  // isset id assignments
+  private static final _Fields optionals[] = 
{_Fields.SEARCH_FIELD,_Fields.VALUE,_Fields.SEARCH_CONDITION};
+  public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> 
metaDataMap;
+  static {
+    Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new 
EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.SEARCH_FIELD, new 
org.apache.thrift.meta_data.FieldMetaData("searchField", 
org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new 
org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, 
EntitySearchField.class)));
+    tmpMap.put(_Fields.VALUE, new 
org.apache.thrift.meta_data.FieldMetaData("value", 
org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new 
org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.SEARCH_CONDITION, new 
org.apache.thrift.meta_data.FieldMetaData("searchCondition", 
org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new 
org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, 
SearchCondition.class)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    
org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(SearchCriteria.class,
 metaDataMap);
+  }
+
+  public SearchCriteria() {
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public SearchCriteria(SearchCriteria other) {
+    if (other.isSetSearchField()) {
+      this.searchField = other.searchField;
+    }
+    if (other.isSetValue()) {
+      this.value = other.value;
+    }
+    if (other.isSetSearchCondition()) {
+      this.searchCondition = other.searchCondition;
+    }
+  }
+
+  public SearchCriteria deepCopy() {
+    return new SearchCriteria(this);
+  }
+
+  @Override
+  public void clear() {
+    this.searchField = null;
+    this.value = null;
+    this.searchCondition = null;
+  }
+
+  /**
+   * 
+   * @see EntitySearchField
+   */
+  public EntitySearchField getSearchField() {
+    return this.searchField;
+  }
+
+  /**
+   * 
+   * @see EntitySearchField
+   */
+  public SearchCriteria setSearchField(EntitySearchField searchField) {
+    this.searchField = searchField;
+    return this;
+  }
+
+  public void unsetSearchField() {
+    this.searchField = null;
+  }
+
+  /** Returns true if field searchField is set (has been assigned a value) and 
false otherwise */
+  public boolean isSetSearchField() {
+    return this.searchField != null;
+  }
+
+  public void setSearchFieldIsSet(boolean value) {
+    if (!value) {
+      this.searchField = null;
+    }
+  }
+
+  public String getValue() {
+    return this.value;
+  }
+
+  public SearchCriteria setValue(String value) {
+    this.value = value;
+    return this;
+  }
+
+  public void unsetValue() {
+    this.value = null;
+  }
+
+  /** Returns true if field value is set (has been assigned a value) and false 
otherwise */
+  public boolean isSetValue() {
+    return this.value != null;
+  }
+
+  public void setValueIsSet(boolean value) {
+    if (!value) {
+      this.value = null;
+    }
+  }
+
+  /**
+   * 
+   * @see SearchCondition
+   */
+  public SearchCondition getSearchCondition() {
+    return this.searchCondition;
+  }
+
+  /**
+   * 
+   * @see SearchCondition
+   */
+  public SearchCriteria setSearchCondition(SearchCondition searchCondition) {
+    this.searchCondition = searchCondition;
+    return this;
+  }
+
+  public void unsetSearchCondition() {
+    this.searchCondition = null;
+  }
+
+  /** Returns true if field searchCondition is set (has been assigned a value) 
and false otherwise */
+  public boolean isSetSearchCondition() {
+    return this.searchCondition != null;
+  }
+
+  public void setSearchConditionIsSet(boolean value) {
+    if (!value) {
+      this.searchCondition = null;
+    }
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case SEARCH_FIELD:
+      if (value == null) {
+        unsetSearchField();
+      } else {
+        setSearchField((EntitySearchField)value);
+      }
+      break;
+
+    case VALUE:
+      if (value == null) {
+        unsetValue();
+      } else {
+        setValue((String)value);
+      }
+      break;
+
+    case SEARCH_CONDITION:
+      if (value == null) {
+        unsetSearchCondition();
+      } else {
+        setSearchCondition((SearchCondition)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case SEARCH_FIELD:
+      return getSearchField();
+
+    case VALUE:
+      return getValue();
+
+    case SEARCH_CONDITION:
+      return getSearchCondition();
+
+    }
+    throw new IllegalStateException();
+  }
+
+  /** Returns true if field corresponding to fieldID is set (has been assigned 
a value) and false otherwise */
+  public boolean isSet(_Fields field) {
+    if (field == null) {
+      throw new IllegalArgumentException();
+    }
+
+    switch (field) {
+    case SEARCH_FIELD:
+      return isSetSearchField();
+    case VALUE:
+      return isSetValue();
+    case SEARCH_CONDITION:
+      return isSetSearchCondition();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof SearchCriteria)
+      return this.equals((SearchCriteria)that);
+    return false;
+  }
+
+  public boolean equals(SearchCriteria that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_searchField = true && this.isSetSearchField();
+    boolean that_present_searchField = true && that.isSetSearchField();
+    if (this_present_searchField || that_present_searchField) {
+      if (!(this_present_searchField && that_present_searchField))
+        return false;
+      if (!this.searchField.equals(that.searchField))
+        return false;
+    }
+
+    boolean this_present_value = true && this.isSetValue();
+    boolean that_present_value = true && that.isSetValue();
+    if (this_present_value || that_present_value) {
+      if (!(this_present_value && that_present_value))
+        return false;
+      if (!this.value.equals(that.value))
+        return false;
+    }
+
+    boolean this_present_searchCondition = true && this.isSetSearchCondition();
+    boolean that_present_searchCondition = true && that.isSetSearchCondition();
+    if (this_present_searchCondition || that_present_searchCondition) {
+      if (!(this_present_searchCondition && that_present_searchCondition))
+        return false;
+      if (!this.searchCondition.equals(that.searchCondition))
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    List<Object> list = new ArrayList<Object>();
+
+    boolean present_searchField = true && (isSetSearchField());
+    list.add(present_searchField);
+    if (present_searchField)
+      list.add(searchField.getValue());
+
+    boolean present_value = true && (isSetValue());
+    list.add(present_value);
+    if (present_value)
+      list.add(value);
+
+    boolean present_searchCondition = true && (isSetSearchCondition());
+    list.add(present_searchCondition);
+    if (present_searchCondition)
+      list.add(searchCondition.getValue());
+
+    return list.hashCode();
+  }
+
+  @Override
+  public int compareTo(SearchCriteria other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+
+    lastComparison = 
Boolean.valueOf(isSetSearchField()).compareTo(other.isSetSearchField());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetSearchField()) {
+      lastComparison = 
org.apache.thrift.TBaseHelper.compareTo(this.searchField, other.searchField);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = 
Boolean.valueOf(isSetValue()).compareTo(other.isSetValue());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetValue()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.value, 
other.value);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = 
Boolean.valueOf(isSetSearchCondition()).compareTo(other.isSetSearchCondition());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetSearchCondition()) {
+      lastComparison = 
org.apache.thrift.TBaseHelper.compareTo(this.searchCondition, 
other.searchCondition);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.thrift.protocol.TProtocol iprot) throws 
org.apache.thrift.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.thrift.protocol.TProtocol oprot) throws 
org.apache.thrift.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("SearchCriteria(");
+    boolean first = true;
+
+    if (isSetSearchField()) {
+      sb.append("searchField:");
+      if (this.searchField == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.searchField);
+      }
+      first = false;
+    }
+    if (isSetValue()) {
+      if (!first) sb.append(", ");
+      sb.append("value:");
+      if (this.value == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.value);
+      }
+      first = false;
+    }
+    if (isSetSearchCondition()) {
+      if (!first) sb.append(", ");
+      sb.append("searchCondition:");
+      if (this.searchCondition == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.searchCondition);
+      }
+      first = false;
+    }
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.thrift.TException {
+    // check for required fields
+    // check for sub-struct validity
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws 
java.io.IOException {
+    try {
+      write(new org.apache.thrift.protocol.TCompactProtocol(new 
org.apache.thrift.transport.TIOStreamTransport(out)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private void readObject(java.io.ObjectInputStream in) throws 
java.io.IOException, ClassNotFoundException {
+    try {
+      read(new org.apache.thrift.protocol.TCompactProtocol(new 
org.apache.thrift.transport.TIOStreamTransport(in)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class SearchCriteriaStandardSchemeFactory implements 
SchemeFactory {
+    public SearchCriteriaStandardScheme getScheme() {
+      return new SearchCriteriaStandardScheme();
+    }
+  }
+
+  private static class SearchCriteriaStandardScheme extends 
StandardScheme<SearchCriteria> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, 
SearchCriteria struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // SEARCH_FIELD
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.searchField = 
org.apache.airavata.sharing.registry.models.EntitySearchField.findByValue(iprot.readI32());
+              struct.setSearchFieldIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, 
schemeField.type);
+            }
+            break;
+          case 2: // VALUE
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.value = iprot.readString();
+              struct.setValueIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, 
schemeField.type);
+            }
+            break;
+          case 3: // SEARCH_CONDITION
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.searchCondition = 
org.apache.airavata.sharing.registry.models.SearchCondition.findByValue(iprot.readI32());
+              struct.setSearchConditionIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, 
schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, 
schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+
+      // check for required fields of primitive type, which can't be checked 
in the validate method
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, 
SearchCriteria struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.searchField != null) {
+        if (struct.isSetSearchField()) {
+          oprot.writeFieldBegin(SEARCH_FIELD_FIELD_DESC);
+          oprot.writeI32(struct.searchField.getValue());
+          oprot.writeFieldEnd();
+        }
+      }
+      if (struct.value != null) {
+        if (struct.isSetValue()) {
+          oprot.writeFieldBegin(VALUE_FIELD_DESC);
+          oprot.writeString(struct.value);
+          oprot.writeFieldEnd();
+        }
+      }
+      if (struct.searchCondition != null) {
+        if (struct.isSetSearchCondition()) {
+          oprot.writeFieldBegin(SEARCH_CONDITION_FIELD_DESC);
+          oprot.writeI32(struct.searchCondition.getValue());
+          oprot.writeFieldEnd();
+        }
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class SearchCriteriaTupleSchemeFactory implements 
SchemeFactory {
+    public SearchCriteriaTupleScheme getScheme() {
+      return new SearchCriteriaTupleScheme();
+    }
+  }
+
+  private static class SearchCriteriaTupleScheme extends 
TupleScheme<SearchCriteria> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, 
SearchCriteria struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      BitSet optionals = new BitSet();
+      if (struct.isSetSearchField()) {
+        optionals.set(0);
+      }
+      if (struct.isSetValue()) {
+        optionals.set(1);
+      }
+      if (struct.isSetSearchCondition()) {
+        optionals.set(2);
+      }
+      oprot.writeBitSet(optionals, 3);
+      if (struct.isSetSearchField()) {
+        oprot.writeI32(struct.searchField.getValue());
+      }
+      if (struct.isSetValue()) {
+        oprot.writeString(struct.value);
+      }
+      if (struct.isSetSearchCondition()) {
+        oprot.writeI32(struct.searchCondition.getValue());
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, SearchCriteria 
struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      BitSet incoming = iprot.readBitSet(3);
+      if (incoming.get(0)) {
+        struct.searchField = 
org.apache.airavata.sharing.registry.models.EntitySearchField.findByValue(iprot.readI32());
+        struct.setSearchFieldIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.value = iprot.readString();
+        struct.setValueIsSet(true);
+      }
+      if (incoming.get(2)) {
+        struct.searchCondition = 
org.apache.airavata.sharing.registry.models.SearchCondition.findByValue(iprot.readI32());
+        struct.setSearchConditionIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Sharing.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Sharing.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Sharing.java
index c2ddf18..ba914cd 100644
--- 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Sharing.java
+++ 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Sharing.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-06")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-12")
 public class Sharing implements org.apache.thrift.TBase<Sharing, 
Sharing._Fields>, java.io.Serializable, Cloneable, Comparable<Sharing> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new 
org.apache.thrift.protocol.TStruct("Sharing");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SharingRegistryException.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SharingRegistryException.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SharingRegistryException.java
index 83d0c00..97917d8 100644
--- 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SharingRegistryException.java
+++ 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/SharingRegistryException.java
@@ -12,19 +12,29 @@ import org.apache.thrift.scheme.StandardScheme;
 
 import org.apache.thrift.scheme.TupleScheme;
 import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
 import org.apache.thrift.TException;
-
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
 import java.util.List;
 import java.util.ArrayList;
 import java.util.Map;
 import java.util.HashMap;
 import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
 import java.util.EnumSet;
 import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
 import javax.annotation.Generated;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-06")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-12")
 public class SharingRegistryException extends TException implements 
org.apache.thrift.TBase<SharingRegistryException, 
SharingRegistryException._Fields>, java.io.Serializable, Cloneable, 
Comparable<SharingRegistryException> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new 
org.apache.thrift.protocol.TStruct("SharingRegistryException");
 
@@ -32,8 +42,8 @@ public class SharingRegistryException extends TException 
implements org.apache.t
 
   private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = 
new HashMap<Class<? extends IScheme>, SchemeFactory>();
   static {
-    schemes.put(StandardScheme.class, new 
GovRegistryExceptionStandardSchemeFactory());
-    schemes.put(TupleScheme.class, new 
GovRegistryExceptionTupleSchemeFactory());
+    schemes.put(StandardScheme.class, new 
SharingRegistryExceptionStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new 
SharingRegistryExceptionTupleSchemeFactory());
   }
 
   public String message; // required
@@ -110,7 +120,7 @@ public class SharingRegistryException extends TException 
implements org.apache.t
   }
 
   public SharingRegistryException(
-          String message)
+    String message)
   {
     this();
     this.message = message;
@@ -303,13 +313,13 @@ public class SharingRegistryException extends TException 
implements org.apache.t
     }
   }
 
-  private static class GovRegistryExceptionStandardSchemeFactory implements 
SchemeFactory {
-    public GovRegistryExceptionStandardScheme getScheme() {
-      return new GovRegistryExceptionStandardScheme();
+  private static class SharingRegistryExceptionStandardSchemeFactory 
implements SchemeFactory {
+    public SharingRegistryExceptionStandardScheme getScheme() {
+      return new SharingRegistryExceptionStandardScheme();
     }
   }
 
-  private static class GovRegistryExceptionStandardScheme extends 
StandardScheme<SharingRegistryException> {
+  private static class SharingRegistryExceptionStandardScheme extends 
StandardScheme<SharingRegistryException> {
 
     public void read(org.apache.thrift.protocol.TProtocol iprot, 
SharingRegistryException struct) throws org.apache.thrift.TException {
       org.apache.thrift.protocol.TField schemeField;
@@ -355,13 +365,13 @@ public class SharingRegistryException extends TException 
implements org.apache.t
 
   }
 
-  private static class GovRegistryExceptionTupleSchemeFactory implements 
SchemeFactory {
-    public GovRegistryExceptionTupleScheme getScheme() {
-      return new GovRegistryExceptionTupleScheme();
+  private static class SharingRegistryExceptionTupleSchemeFactory implements 
SchemeFactory {
+    public SharingRegistryExceptionTupleScheme getScheme() {
+      return new SharingRegistryExceptionTupleScheme();
     }
   }
 
-  private static class GovRegistryExceptionTupleScheme extends 
TupleScheme<SharingRegistryException> {
+  private static class SharingRegistryExceptionTupleScheme extends 
TupleScheme<SharingRegistryException> {
 
     @Override
     public void write(org.apache.thrift.protocol.TProtocol prot, 
SharingRegistryException struct) throws org.apache.thrift.TException {

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/User.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/User.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/User.java
index d37ff2a..91649ca 100644
--- 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/User.java
+++ 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/User.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-06")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-12")
 public class User implements org.apache.thrift.TBase<User, User._Fields>, 
java.io.Serializable, Cloneable, Comparable<User> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new 
org.apache.thrift.protocol.TStruct("User");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/bff76559/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/UserGroup.java
----------------------------------------------------------------------
diff --git 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/UserGroup.java
 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/UserGroup.java
index f3a9a02..f121e63 100644
--- 
a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/UserGroup.java
+++ 
b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/UserGroup.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-06")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = 
"2016-10-12")
 public class UserGroup implements org.apache.thrift.TBase<UserGroup, 
UserGroup._Fields>, java.io.Serializable, Cloneable, Comparable<UserGroup> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new 
org.apache.thrift.protocol.TStruct("UserGroup");
 

Reply via email to