You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sc...@apache.org on 2015/08/02 22:42:49 UTC

[08/13] airavata git commit: removing non paginated versions of API methods for project and experiment retrieval, from Airavata API

http://git-wip-us.apache.org/repos/asf/airavata/blob/dc61c676/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
index 17cc59c..e1f991b 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
@@ -4070,11 +4070,11 @@ uint32_t Airavata_deleteProject_presult::read(::apache::thrift::protocol::TProto
 }
 
 
-Airavata_getAllUserProjects_args::~Airavata_getAllUserProjects_args() throw() {
+Airavata_getUserProjects_args::~Airavata_getUserProjects_args() throw() {
 }
 
 
-uint32_t Airavata_getAllUserProjects_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_getUserProjects_args::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -4085,8 +4085,11 @@ uint32_t Airavata_getAllUserProjects_args::read(::apache::thrift::protocol::TPro
 
   using ::apache::thrift::protocol::TProtocolException;
 
+  bool isset_authzToken = false;
   bool isset_gatewayId = false;
   bool isset_userName = false;
+  bool isset_limit = false;
+  bool isset_offset = false;
 
   while (true)
   {
@@ -4097,6 +4100,14 @@ uint32_t Airavata_getAllUserProjects_args::read(::apache::thrift::protocol::TPro
     switch (fid)
     {
       case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->authzToken.read(iprot);
+          isset_authzToken = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->gatewayId);
           isset_gatewayId = true;
@@ -4104,7 +4115,7 @@ uint32_t Airavata_getAllUserProjects_args::read(::apache::thrift::protocol::TPro
           xfer += iprot->skip(ftype);
         }
         break;
-      case 2:
+      case 3:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->userName);
           isset_userName = true;
@@ -4112,6 +4123,22 @@ uint32_t Airavata_getAllUserProjects_args::read(::apache::thrift::protocol::TPro
           xfer += iprot->skip(ftype);
         }
         break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          xfer += iprot->readI32(this->limit);
+          isset_limit = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          xfer += iprot->readI32(this->offset);
+          isset_offset = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
       default:
         xfer += iprot->skip(ftype);
         break;
@@ -4121,26 +4148,44 @@ uint32_t Airavata_getAllUserProjects_args::read(::apache::thrift::protocol::TPro
 
   xfer += iprot->readStructEnd();
 
+  if (!isset_authzToken)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_gatewayId)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_userName)
     throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_limit)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_offset)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
   return xfer;
 }
 
-uint32_t Airavata_getAllUserProjects_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_getUserProjects_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_getAllUserProjects_args");
+  xfer += oprot->writeStructBegin("Airavata_getUserProjects_args");
 
-  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
+  xfer += this->authzToken.write(oprot);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 2);
   xfer += oprot->writeString(this->gatewayId);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 3);
   xfer += oprot->writeString(this->userName);
   xfer += oprot->writeFieldEnd();
 
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+  xfer += oprot->writeI32(this->limit);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeI32(this->offset);
+  xfer += oprot->writeFieldEnd();
+
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
   oprot->decrementRecursionDepth();
@@ -4148,23 +4193,35 @@ uint32_t Airavata_getAllUserProjects_args::write(::apache::thrift::protocol::TPr
 }
 
 
-Airavata_getAllUserProjects_pargs::~Airavata_getAllUserProjects_pargs() throw() {
+Airavata_getUserProjects_pargs::~Airavata_getUserProjects_pargs() throw() {
 }
 
 
-uint32_t Airavata_getAllUserProjects_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_getUserProjects_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_getAllUserProjects_pargs");
+  xfer += oprot->writeStructBegin("Airavata_getUserProjects_pargs");
 
-  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
+  xfer += (*(this->authzToken)).write(oprot);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 2);
   xfer += oprot->writeString((*(this->gatewayId)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 3);
   xfer += oprot->writeString((*(this->userName)));
   xfer += oprot->writeFieldEnd();
 
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+  xfer += oprot->writeI32((*(this->limit)));
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeI32((*(this->offset)));
+  xfer += oprot->writeFieldEnd();
+
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
   oprot->decrementRecursionDepth();
@@ -4172,11 +4229,11 @@ uint32_t Airavata_getAllUserProjects_pargs::write(::apache::thrift::protocol::TP
 }
 
 
-Airavata_getAllUserProjects_result::~Airavata_getAllUserProjects_result() throw() {
+Airavata_getUserProjects_result::~Airavata_getUserProjects_result() throw() {
 }
 
 
-uint32_t Airavata_getAllUserProjects_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_getUserProjects_result::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -4240,6 +4297,14 @@ uint32_t Airavata_getAllUserProjects_result::read(::apache::thrift::protocol::TP
           xfer += iprot->skip(ftype);
         }
         break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ae.read(iprot);
+          this->__isset.ae = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
       default:
         xfer += iprot->skip(ftype);
         break;
@@ -4252,11 +4317,11 @@ uint32_t Airavata_getAllUserProjects_result::read(::apache::thrift::protocol::TP
   return xfer;
 }
 
-uint32_t Airavata_getAllUserProjects_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_getUserProjects_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   uint32_t xfer = 0;
 
-  xfer += oprot->writeStructBegin("Airavata_getAllUserProjects_result");
+  xfer += oprot->writeStructBegin("Airavata_getUserProjects_result");
 
   if (this->__isset.success) {
     xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
@@ -4282,6 +4347,10 @@ uint32_t Airavata_getAllUserProjects_result::write(::apache::thrift::protocol::T
     xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 3);
     xfer += this->ase.write(oprot);
     xfer += oprot->writeFieldEnd();
+  } else if (this->__isset.ae) {
+    xfer += oprot->writeFieldBegin("ae", ::apache::thrift::protocol::T_STRUCT, 4);
+    xfer += this->ae.write(oprot);
+    xfer += oprot->writeFieldEnd();
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
@@ -4289,11 +4358,11 @@ uint32_t Airavata_getAllUserProjects_result::write(::apache::thrift::protocol::T
 }
 
 
-Airavata_getAllUserProjects_presult::~Airavata_getAllUserProjects_presult() throw() {
+Airavata_getUserProjects_presult::~Airavata_getUserProjects_presult() throw() {
 }
 
 
-uint32_t Airavata_getAllUserProjects_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_getUserProjects_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -4357,6 +4426,14 @@ uint32_t Airavata_getAllUserProjects_presult::read(::apache::thrift::protocol::T
           xfer += iprot->skip(ftype);
         }
         break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ae.read(iprot);
+          this->__isset.ae = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
       default:
         xfer += iprot->skip(ftype);
         break;
@@ -4370,11 +4447,11 @@ uint32_t Airavata_getAllUserProjects_presult::read(::apache::thrift::protocol::T
 }
 
 
-Airavata_getAllUserProjectsWithPagination_args::~Airavata_getAllUserProjectsWithPagination_args() throw() {
+Airavata_searchProjectsByProjectName_args::~Airavata_searchProjectsByProjectName_args() throw() {
 }
 
 
-uint32_t Airavata_getAllUserProjectsWithPagination_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectName_args::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -4388,6 +4465,7 @@ uint32_t Airavata_getAllUserProjectsWithPagination_args::read(::apache::thrift::
   bool isset_authzToken = false;
   bool isset_gatewayId = false;
   bool isset_userName = false;
+  bool isset_projectName = false;
   bool isset_limit = false;
   bool isset_offset = false;
 
@@ -4424,6 +4502,14 @@ uint32_t Airavata_getAllUserProjectsWithPagination_args::read(::apache::thrift::
         }
         break;
       case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->projectName);
+          isset_projectName = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
         if (ftype == ::apache::thrift::protocol::T_I32) {
           xfer += iprot->readI32(this->limit);
           isset_limit = true;
@@ -4431,7 +4517,7 @@ uint32_t Airavata_getAllUserProjectsWithPagination_args::read(::apache::thrift::
           xfer += iprot->skip(ftype);
         }
         break;
-      case 5:
+      case 6:
         if (ftype == ::apache::thrift::protocol::T_I32) {
           xfer += iprot->readI32(this->offset);
           isset_offset = true;
@@ -4454,6 +4540,8 @@ uint32_t Airavata_getAllUserProjectsWithPagination_args::read(::apache::thrift::
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_userName)
     throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_projectName)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_limit)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_offset)
@@ -4461,10 +4549,10 @@ uint32_t Airavata_getAllUserProjectsWithPagination_args::read(::apache::thrift::
   return xfer;
 }
 
-uint32_t Airavata_getAllUserProjectsWithPagination_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectName_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_getAllUserProjectsWithPagination_args");
+  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectName_args");
 
   xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
   xfer += this->authzToken.write(oprot);
@@ -4478,11 +4566,15 @@ uint32_t Airavata_getAllUserProjectsWithPagination_args::write(::apache::thrift:
   xfer += oprot->writeString(this->userName);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+  xfer += oprot->writeFieldBegin("projectName", ::apache::thrift::protocol::T_STRING, 4);
+  xfer += oprot->writeString(this->projectName);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
   xfer += oprot->writeI32(this->limit);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 6);
   xfer += oprot->writeI32(this->offset);
   xfer += oprot->writeFieldEnd();
 
@@ -4493,14 +4585,14 @@ uint32_t Airavata_getAllUserProjectsWithPagination_args::write(::apache::thrift:
 }
 
 
-Airavata_getAllUserProjectsWithPagination_pargs::~Airavata_getAllUserProjectsWithPagination_pargs() throw() {
+Airavata_searchProjectsByProjectName_pargs::~Airavata_searchProjectsByProjectName_pargs() throw() {
 }
 
 
-uint32_t Airavata_getAllUserProjectsWithPagination_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectName_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_getAllUserProjectsWithPagination_pargs");
+  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectName_pargs");
 
   xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
   xfer += (*(this->authzToken)).write(oprot);
@@ -4514,11 +4606,15 @@ uint32_t Airavata_getAllUserProjectsWithPagination_pargs::write(::apache::thrift
   xfer += oprot->writeString((*(this->userName)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 4);
+  xfer += oprot->writeFieldBegin("projectName", ::apache::thrift::protocol::T_STRING, 4);
+  xfer += oprot->writeString((*(this->projectName)));
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
   xfer += oprot->writeI32((*(this->limit)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 6);
   xfer += oprot->writeI32((*(this->offset)));
   xfer += oprot->writeFieldEnd();
 
@@ -4529,11 +4625,11 @@ uint32_t Airavata_getAllUserProjectsWithPagination_pargs::write(::apache::thrift
 }
 
 
-Airavata_getAllUserProjectsWithPagination_result::~Airavata_getAllUserProjectsWithPagination_result() throw() {
+Airavata_searchProjectsByProjectName_result::~Airavata_searchProjectsByProjectName_result() throw() {
 }
 
 
-uint32_t Airavata_getAllUserProjectsWithPagination_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectName_result::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -4617,11 +4713,11 @@ uint32_t Airavata_getAllUserProjectsWithPagination_result::read(::apache::thrift
   return xfer;
 }
 
-uint32_t Airavata_getAllUserProjectsWithPagination_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectName_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   uint32_t xfer = 0;
 
-  xfer += oprot->writeStructBegin("Airavata_getAllUserProjectsWithPagination_result");
+  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectName_result");
 
   if (this->__isset.success) {
     xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
@@ -4658,11 +4754,11 @@ uint32_t Airavata_getAllUserProjectsWithPagination_result::write(::apache::thrif
 }
 
 
-Airavata_getAllUserProjectsWithPagination_presult::~Airavata_getAllUserProjectsWithPagination_presult() throw() {
+Airavata_searchProjectsByProjectName_presult::~Airavata_searchProjectsByProjectName_presult() throw() {
 }
 
 
-uint32_t Airavata_getAllUserProjectsWithPagination_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectName_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -4747,11 +4843,11 @@ uint32_t Airavata_getAllUserProjectsWithPagination_presult::read(::apache::thrif
 }
 
 
-Airavata_searchProjectsByProjectName_args::~Airavata_searchProjectsByProjectName_args() throw() {
+Airavata_searchProjectsByProjectDesc_args::~Airavata_searchProjectsByProjectDesc_args() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectName_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -4762,9 +4858,12 @@ uint32_t Airavata_searchProjectsByProjectName_args::read(::apache::thrift::proto
 
   using ::apache::thrift::protocol::TProtocolException;
 
+  bool isset_authzToken = false;
   bool isset_gatewayId = false;
   bool isset_userName = false;
-  bool isset_projectName = false;
+  bool isset_description = false;
+  bool isset_limit = false;
+  bool isset_offset = false;
 
   while (true)
   {
@@ -4775,6 +4874,14 @@ uint32_t Airavata_searchProjectsByProjectName_args::read(::apache::thrift::proto
     switch (fid)
     {
       case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->authzToken.read(iprot);
+          isset_authzToken = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->gatewayId);
           isset_gatewayId = true;
@@ -4782,7 +4889,7 @@ uint32_t Airavata_searchProjectsByProjectName_args::read(::apache::thrift::proto
           xfer += iprot->skip(ftype);
         }
         break;
-      case 2:
+      case 3:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->userName);
           isset_userName = true;
@@ -4790,10 +4897,26 @@ uint32_t Airavata_searchProjectsByProjectName_args::read(::apache::thrift::proto
           xfer += iprot->skip(ftype);
         }
         break;
-      case 3:
+      case 4:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
-          xfer += iprot->readString(this->projectName);
-          isset_projectName = true;
+          xfer += iprot->readString(this->description);
+          isset_description = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          xfer += iprot->readI32(this->limit);
+          isset_limit = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          xfer += iprot->readI32(this->offset);
+          isset_offset = true;
         } else {
           xfer += iprot->skip(ftype);
         }
@@ -4807,30 +4930,48 @@ uint32_t Airavata_searchProjectsByProjectName_args::read(::apache::thrift::proto
 
   xfer += iprot->readStructEnd();
 
+  if (!isset_authzToken)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_gatewayId)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_userName)
     throw TProtocolException(TProtocolException::INVALID_DATA);
-  if (!isset_projectName)
+  if (!isset_description)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_limit)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_offset)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   return xfer;
 }
 
-uint32_t Airavata_searchProjectsByProjectName_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectDesc_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectName_args");
+  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDesc_args");
 
-  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
+  xfer += this->authzToken.write(oprot);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 2);
   xfer += oprot->writeString(this->gatewayId);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 3);
   xfer += oprot->writeString(this->userName);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("projectName", ::apache::thrift::protocol::T_STRING, 3);
-  xfer += oprot->writeString(this->projectName);
+  xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 4);
+  xfer += oprot->writeString(this->description);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeI32(this->limit);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 6);
+  xfer += oprot->writeI32(this->offset);
   xfer += oprot->writeFieldEnd();
 
   xfer += oprot->writeFieldStop();
@@ -4840,25 +4981,37 @@ uint32_t Airavata_searchProjectsByProjectName_args::write(::apache::thrift::prot
 }
 
 
-Airavata_searchProjectsByProjectName_pargs::~Airavata_searchProjectsByProjectName_pargs() throw() {
+Airavata_searchProjectsByProjectDesc_pargs::~Airavata_searchProjectsByProjectDesc_pargs() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectName_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectDesc_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectName_pargs");
+  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDesc_pargs");
 
-  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
+  xfer += (*(this->authzToken)).write(oprot);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 2);
   xfer += oprot->writeString((*(this->gatewayId)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 3);
   xfer += oprot->writeString((*(this->userName)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("projectName", ::apache::thrift::protocol::T_STRING, 3);
-  xfer += oprot->writeString((*(this->projectName)));
+  xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 4);
+  xfer += oprot->writeString((*(this->description)));
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeI32((*(this->limit)));
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 6);
+  xfer += oprot->writeI32((*(this->offset)));
   xfer += oprot->writeFieldEnd();
 
   xfer += oprot->writeFieldStop();
@@ -4868,11 +5021,11 @@ uint32_t Airavata_searchProjectsByProjectName_pargs::write(::apache::thrift::pro
 }
 
 
-Airavata_searchProjectsByProjectName_result::~Airavata_searchProjectsByProjectName_result() throw() {
+Airavata_searchProjectsByProjectDesc_result::~Airavata_searchProjectsByProjectDesc_result() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectName_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectDesc_result::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -4936,6 +5089,14 @@ uint32_t Airavata_searchProjectsByProjectName_result::read(::apache::thrift::pro
           xfer += iprot->skip(ftype);
         }
         break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ae.read(iprot);
+          this->__isset.ae = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
       default:
         xfer += iprot->skip(ftype);
         break;
@@ -4948,11 +5109,11 @@ uint32_t Airavata_searchProjectsByProjectName_result::read(::apache::thrift::pro
   return xfer;
 }
 
-uint32_t Airavata_searchProjectsByProjectName_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchProjectsByProjectDesc_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   uint32_t xfer = 0;
 
-  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectName_result");
+  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDesc_result");
 
   if (this->__isset.success) {
     xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
@@ -4978,6 +5139,10 @@ uint32_t Airavata_searchProjectsByProjectName_result::write(::apache::thrift::pr
     xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 3);
     xfer += this->ase.write(oprot);
     xfer += oprot->writeFieldEnd();
+  } else if (this->__isset.ae) {
+    xfer += oprot->writeFieldBegin("ae", ::apache::thrift::protocol::T_STRUCT, 4);
+    xfer += this->ae.write(oprot);
+    xfer += oprot->writeFieldEnd();
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
@@ -4985,11 +5150,11 @@ uint32_t Airavata_searchProjectsByProjectName_result::write(::apache::thrift::pr
 }
 
 
-Airavata_searchProjectsByProjectName_presult::~Airavata_searchProjectsByProjectName_presult() throw() {
+Airavata_searchProjectsByProjectDesc_presult::~Airavata_searchProjectsByProjectDesc_presult() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectName_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchProjectsByProjectDesc_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -5053,6 +5218,14 @@ uint32_t Airavata_searchProjectsByProjectName_presult::read(::apache::thrift::pr
           xfer += iprot->skip(ftype);
         }
         break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ae.read(iprot);
+          this->__isset.ae = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
       default:
         xfer += iprot->skip(ftype);
         break;
@@ -5066,11 +5239,11 @@ uint32_t Airavata_searchProjectsByProjectName_presult::read(::apache::thrift::pr
 }
 
 
-Airavata_searchProjectsByProjectNameWithPagination_args::~Airavata_searchProjectsByProjectNameWithPagination_args() throw() {
+Airavata_searchExperimentsByName_args::~Airavata_searchExperimentsByName_args() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectNameWithPagination_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByName_args::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -5084,7 +5257,7 @@ uint32_t Airavata_searchProjectsByProjectNameWithPagination_args::read(::apache:
   bool isset_authzToken = false;
   bool isset_gatewayId = false;
   bool isset_userName = false;
-  bool isset_projectName = false;
+  bool isset_expName = false;
   bool isset_limit = false;
   bool isset_offset = false;
 
@@ -5122,8 +5295,8 @@ uint32_t Airavata_searchProjectsByProjectNameWithPagination_args::read(::apache:
         break;
       case 4:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
-          xfer += iprot->readString(this->projectName);
-          isset_projectName = true;
+          xfer += iprot->readString(this->expName);
+          isset_expName = true;
         } else {
           xfer += iprot->skip(ftype);
         }
@@ -5159,7 +5332,7 @@ uint32_t Airavata_searchProjectsByProjectNameWithPagination_args::read(::apache:
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_userName)
     throw TProtocolException(TProtocolException::INVALID_DATA);
-  if (!isset_projectName)
+  if (!isset_expName)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_limit)
     throw TProtocolException(TProtocolException::INVALID_DATA);
@@ -5168,10 +5341,10 @@ uint32_t Airavata_searchProjectsByProjectNameWithPagination_args::read(::apache:
   return xfer;
 }
 
-uint32_t Airavata_searchProjectsByProjectNameWithPagination_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByName_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectNameWithPagination_args");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByName_args");
 
   xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
   xfer += this->authzToken.write(oprot);
@@ -5185,8 +5358,8 @@ uint32_t Airavata_searchProjectsByProjectNameWithPagination_args::write(::apache
   xfer += oprot->writeString(this->userName);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("projectName", ::apache::thrift::protocol::T_STRING, 4);
-  xfer += oprot->writeString(this->projectName);
+  xfer += oprot->writeFieldBegin("expName", ::apache::thrift::protocol::T_STRING, 4);
+  xfer += oprot->writeString(this->expName);
   xfer += oprot->writeFieldEnd();
 
   xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
@@ -5204,14 +5377,14 @@ uint32_t Airavata_searchProjectsByProjectNameWithPagination_args::write(::apache
 }
 
 
-Airavata_searchProjectsByProjectNameWithPagination_pargs::~Airavata_searchProjectsByProjectNameWithPagination_pargs() throw() {
+Airavata_searchExperimentsByName_pargs::~Airavata_searchExperimentsByName_pargs() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectNameWithPagination_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByName_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectNameWithPagination_pargs");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByName_pargs");
 
   xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
   xfer += (*(this->authzToken)).write(oprot);
@@ -5225,8 +5398,8 @@ uint32_t Airavata_searchProjectsByProjectNameWithPagination_pargs::write(::apach
   xfer += oprot->writeString((*(this->userName)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("projectName", ::apache::thrift::protocol::T_STRING, 4);
-  xfer += oprot->writeString((*(this->projectName)));
+  xfer += oprot->writeFieldBegin("expName", ::apache::thrift::protocol::T_STRING, 4);
+  xfer += oprot->writeString((*(this->expName)));
   xfer += oprot->writeFieldEnd();
 
   xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
@@ -5244,11 +5417,11 @@ uint32_t Airavata_searchProjectsByProjectNameWithPagination_pargs::write(::apach
 }
 
 
-Airavata_searchProjectsByProjectNameWithPagination_result::~Airavata_searchProjectsByProjectNameWithPagination_result() throw() {
+Airavata_searchExperimentsByName_result::~Airavata_searchExperimentsByName_result() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectNameWithPagination_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByName_result::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -5332,17 +5505,17 @@ uint32_t Airavata_searchProjectsByProjectNameWithPagination_result::read(::apach
   return xfer;
 }
 
-uint32_t Airavata_searchProjectsByProjectNameWithPagination_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByName_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   uint32_t xfer = 0;
 
-  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectNameWithPagination_result");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByName_result");
 
   if (this->__isset.success) {
     xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
     {
       xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
-      std::vector< ::apache::airavata::model::workspace::Project> ::const_iterator _iter64;
+      std::vector< ::apache::airavata::model::experiment::ExperimentSummaryModel> ::const_iterator _iter64;
       for (_iter64 = this->success.begin(); _iter64 != this->success.end(); ++_iter64)
       {
         xfer += (*_iter64).write(oprot);
@@ -5373,11 +5546,11 @@ uint32_t Airavata_searchProjectsByProjectNameWithPagination_result::write(::apac
 }
 
 
-Airavata_searchProjectsByProjectNameWithPagination_presult::~Airavata_searchProjectsByProjectNameWithPagination_presult() throw() {
+Airavata_searchExperimentsByName_presult::~Airavata_searchExperimentsByName_presult() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectNameWithPagination_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByName_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -5462,11 +5635,11 @@ uint32_t Airavata_searchProjectsByProjectNameWithPagination_presult::read(::apac
 }
 
 
-Airavata_searchProjectsByProjectDesc_args::~Airavata_searchProjectsByProjectDesc_args() throw() {
+Airavata_searchExperimentsByDesc_args::~Airavata_searchExperimentsByDesc_args() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByDesc_args::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -5477,9 +5650,12 @@ uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::proto
 
   using ::apache::thrift::protocol::TProtocolException;
 
+  bool isset_authzToken = false;
   bool isset_gatewayId = false;
   bool isset_userName = false;
   bool isset_description = false;
+  bool isset_limit = false;
+  bool isset_offset = false;
 
   while (true)
   {
@@ -5490,6 +5666,14 @@ uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::proto
     switch (fid)
     {
       case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->authzToken.read(iprot);
+          isset_authzToken = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->gatewayId);
           isset_gatewayId = true;
@@ -5497,7 +5681,7 @@ uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::proto
           xfer += iprot->skip(ftype);
         }
         break;
-      case 2:
+      case 3:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->userName);
           isset_userName = true;
@@ -5505,7 +5689,7 @@ uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::proto
           xfer += iprot->skip(ftype);
         }
         break;
-      case 3:
+      case 4:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->description);
           isset_description = true;
@@ -5513,6 +5697,22 @@ uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::proto
           xfer += iprot->skip(ftype);
         }
         break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          xfer += iprot->readI32(this->limit);
+          isset_limit = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          xfer += iprot->readI32(this->offset);
+          isset_offset = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
       default:
         xfer += iprot->skip(ftype);
         break;
@@ -5522,32 +5722,50 @@ uint32_t Airavata_searchProjectsByProjectDesc_args::read(::apache::thrift::proto
 
   xfer += iprot->readStructEnd();
 
+  if (!isset_authzToken)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_gatewayId)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_userName)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_description)
     throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_limit)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_offset)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
   return xfer;
 }
 
-uint32_t Airavata_searchProjectsByProjectDesc_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByDesc_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDesc_args");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDesc_args");
 
-  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
+  xfer += this->authzToken.write(oprot);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 2);
   xfer += oprot->writeString(this->gatewayId);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 3);
   xfer += oprot->writeString(this->userName);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
+  xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 4);
   xfer += oprot->writeString(this->description);
   xfer += oprot->writeFieldEnd();
 
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeI32(this->limit);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 6);
+  xfer += oprot->writeI32(this->offset);
+  xfer += oprot->writeFieldEnd();
+
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
   oprot->decrementRecursionDepth();
@@ -5555,27 +5773,39 @@ uint32_t Airavata_searchProjectsByProjectDesc_args::write(::apache::thrift::prot
 }
 
 
-Airavata_searchProjectsByProjectDesc_pargs::~Airavata_searchProjectsByProjectDesc_pargs() throw() {
+Airavata_searchExperimentsByDesc_pargs::~Airavata_searchExperimentsByDesc_pargs() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectDesc_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByDesc_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDesc_pargs");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDesc_pargs");
 
-  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
+  xfer += (*(this->authzToken)).write(oprot);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 2);
   xfer += oprot->writeString((*(this->gatewayId)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 3);
   xfer += oprot->writeString((*(this->userName)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
+  xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 4);
   xfer += oprot->writeString((*(this->description)));
   xfer += oprot->writeFieldEnd();
 
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeI32((*(this->limit)));
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 6);
+  xfer += oprot->writeI32((*(this->offset)));
+  xfer += oprot->writeFieldEnd();
+
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
   oprot->decrementRecursionDepth();
@@ -5583,11 +5813,11 @@ uint32_t Airavata_searchProjectsByProjectDesc_pargs::write(::apache::thrift::pro
 }
 
 
-Airavata_searchProjectsByProjectDesc_result::~Airavata_searchProjectsByProjectDesc_result() throw() {
+Airavata_searchExperimentsByDesc_result::~Airavata_searchExperimentsByDesc_result() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectDesc_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByDesc_result::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -5651,6 +5881,14 @@ uint32_t Airavata_searchProjectsByProjectDesc_result::read(::apache::thrift::pro
           xfer += iprot->skip(ftype);
         }
         break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ae.read(iprot);
+          this->__isset.ae = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
       default:
         xfer += iprot->skip(ftype);
         break;
@@ -5663,17 +5901,17 @@ uint32_t Airavata_searchProjectsByProjectDesc_result::read(::apache::thrift::pro
   return xfer;
 }
 
-uint32_t Airavata_searchProjectsByProjectDesc_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByDesc_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   uint32_t xfer = 0;
 
-  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDesc_result");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDesc_result");
 
   if (this->__isset.success) {
     xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
     {
       xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
-      std::vector< ::apache::airavata::model::workspace::Project> ::const_iterator _iter75;
+      std::vector< ::apache::airavata::model::experiment::ExperimentSummaryModel> ::const_iterator _iter75;
       for (_iter75 = this->success.begin(); _iter75 != this->success.end(); ++_iter75)
       {
         xfer += (*_iter75).write(oprot);
@@ -5693,6 +5931,10 @@ uint32_t Airavata_searchProjectsByProjectDesc_result::write(::apache::thrift::pr
     xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 3);
     xfer += this->ase.write(oprot);
     xfer += oprot->writeFieldEnd();
+  } else if (this->__isset.ae) {
+    xfer += oprot->writeFieldBegin("ae", ::apache::thrift::protocol::T_STRUCT, 4);
+    xfer += this->ae.write(oprot);
+    xfer += oprot->writeFieldEnd();
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
@@ -5700,11 +5942,11 @@ uint32_t Airavata_searchProjectsByProjectDesc_result::write(::apache::thrift::pr
 }
 
 
-Airavata_searchProjectsByProjectDesc_presult::~Airavata_searchProjectsByProjectDesc_presult() throw() {
+Airavata_searchExperimentsByDesc_presult::~Airavata_searchExperimentsByDesc_presult() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectDesc_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByDesc_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -5768,6 +6010,14 @@ uint32_t Airavata_searchProjectsByProjectDesc_presult::read(::apache::thrift::pr
           xfer += iprot->skip(ftype);
         }
         break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ae.read(iprot);
+          this->__isset.ae = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
       default:
         xfer += iprot->skip(ftype);
         break;
@@ -5781,11 +6031,11 @@ uint32_t Airavata_searchProjectsByProjectDesc_presult::read(::apache::thrift::pr
 }
 
 
-Airavata_searchProjectsByProjectDescWithPagination_args::~Airavata_searchProjectsByProjectDescWithPagination_args() throw() {
+Airavata_searchExperimentsByApplication_args::~Airavata_searchExperimentsByApplication_args() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectDescWithPagination_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByApplication_args::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -5799,7 +6049,7 @@ uint32_t Airavata_searchProjectsByProjectDescWithPagination_args::read(::apache:
   bool isset_authzToken = false;
   bool isset_gatewayId = false;
   bool isset_userName = false;
-  bool isset_description = false;
+  bool isset_applicationId = false;
   bool isset_limit = false;
   bool isset_offset = false;
 
@@ -5837,8 +6087,8 @@ uint32_t Airavata_searchProjectsByProjectDescWithPagination_args::read(::apache:
         break;
       case 4:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
-          xfer += iprot->readString(this->description);
-          isset_description = true;
+          xfer += iprot->readString(this->applicationId);
+          isset_applicationId = true;
         } else {
           xfer += iprot->skip(ftype);
         }
@@ -5874,7 +6124,7 @@ uint32_t Airavata_searchProjectsByProjectDescWithPagination_args::read(::apache:
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_userName)
     throw TProtocolException(TProtocolException::INVALID_DATA);
-  if (!isset_description)
+  if (!isset_applicationId)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_limit)
     throw TProtocolException(TProtocolException::INVALID_DATA);
@@ -5883,10 +6133,10 @@ uint32_t Airavata_searchProjectsByProjectDescWithPagination_args::read(::apache:
   return xfer;
 }
 
-uint32_t Airavata_searchProjectsByProjectDescWithPagination_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByApplication_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDescWithPagination_args");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByApplication_args");
 
   xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
   xfer += this->authzToken.write(oprot);
@@ -5900,8 +6150,8 @@ uint32_t Airavata_searchProjectsByProjectDescWithPagination_args::write(::apache
   xfer += oprot->writeString(this->userName);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 4);
-  xfer += oprot->writeString(this->description);
+  xfer += oprot->writeFieldBegin("applicationId", ::apache::thrift::protocol::T_STRING, 4);
+  xfer += oprot->writeString(this->applicationId);
   xfer += oprot->writeFieldEnd();
 
   xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
@@ -5919,14 +6169,14 @@ uint32_t Airavata_searchProjectsByProjectDescWithPagination_args::write(::apache
 }
 
 
-Airavata_searchProjectsByProjectDescWithPagination_pargs::~Airavata_searchProjectsByProjectDescWithPagination_pargs() throw() {
+Airavata_searchExperimentsByApplication_pargs::~Airavata_searchExperimentsByApplication_pargs() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectDescWithPagination_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByApplication_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDescWithPagination_pargs");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByApplication_pargs");
 
   xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
   xfer += (*(this->authzToken)).write(oprot);
@@ -5940,8 +6190,8 @@ uint32_t Airavata_searchProjectsByProjectDescWithPagination_pargs::write(::apach
   xfer += oprot->writeString((*(this->userName)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 4);
-  xfer += oprot->writeString((*(this->description)));
+  xfer += oprot->writeFieldBegin("applicationId", ::apache::thrift::protocol::T_STRING, 4);
+  xfer += oprot->writeString((*(this->applicationId)));
   xfer += oprot->writeFieldEnd();
 
   xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
@@ -5959,11 +6209,11 @@ uint32_t Airavata_searchProjectsByProjectDescWithPagination_pargs::write(::apach
 }
 
 
-Airavata_searchProjectsByProjectDescWithPagination_result::~Airavata_searchProjectsByProjectDescWithPagination_result() throw() {
+Airavata_searchExperimentsByApplication_result::~Airavata_searchExperimentsByApplication_result() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectDescWithPagination_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByApplication_result::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -6047,17 +6297,17 @@ uint32_t Airavata_searchProjectsByProjectDescWithPagination_result::read(::apach
   return xfer;
 }
 
-uint32_t Airavata_searchProjectsByProjectDescWithPagination_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByApplication_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   uint32_t xfer = 0;
 
-  xfer += oprot->writeStructBegin("Airavata_searchProjectsByProjectDescWithPagination_result");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByApplication_result");
 
   if (this->__isset.success) {
     xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
     {
       xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
-      std::vector< ::apache::airavata::model::workspace::Project> ::const_iterator _iter86;
+      std::vector< ::apache::airavata::model::experiment::ExperimentSummaryModel> ::const_iterator _iter86;
       for (_iter86 = this->success.begin(); _iter86 != this->success.end(); ++_iter86)
       {
         xfer += (*_iter86).write(oprot);
@@ -6088,11 +6338,11 @@ uint32_t Airavata_searchProjectsByProjectDescWithPagination_result::write(::apac
 }
 
 
-Airavata_searchProjectsByProjectDescWithPagination_presult::~Airavata_searchProjectsByProjectDescWithPagination_presult() throw() {
+Airavata_searchExperimentsByApplication_presult::~Airavata_searchExperimentsByApplication_presult() throw() {
 }
 
 
-uint32_t Airavata_searchProjectsByProjectDescWithPagination_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByApplication_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -6177,11 +6427,11 @@ uint32_t Airavata_searchProjectsByProjectDescWithPagination_presult::read(::apac
 }
 
 
-Airavata_searchExperimentsByName_args::~Airavata_searchExperimentsByName_args() throw() {
+Airavata_searchExperimentsByStatus_args::~Airavata_searchExperimentsByStatus_args() throw() {
 }
 
 
-uint32_t Airavata_searchExperimentsByName_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByStatus_args::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -6192,9 +6442,12 @@ uint32_t Airavata_searchExperimentsByName_args::read(::apache::thrift::protocol:
 
   using ::apache::thrift::protocol::TProtocolException;
 
+  bool isset_authzToken = false;
   bool isset_gatewayId = false;
   bool isset_userName = false;
-  bool isset_expName = false;
+  bool isset_experimentState = false;
+  bool isset_limit = false;
+  bool isset_offset = false;
 
   while (true)
   {
@@ -6205,6 +6458,14 @@ uint32_t Airavata_searchExperimentsByName_args::read(::apache::thrift::protocol:
     switch (fid)
     {
       case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->authzToken.read(iprot);
+          isset_authzToken = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->gatewayId);
           isset_gatewayId = true;
@@ -6212,7 +6473,7 @@ uint32_t Airavata_searchExperimentsByName_args::read(::apache::thrift::protocol:
           xfer += iprot->skip(ftype);
         }
         break;
-      case 2:
+      case 3:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->userName);
           isset_userName = true;
@@ -6220,10 +6481,28 @@ uint32_t Airavata_searchExperimentsByName_args::read(::apache::thrift::protocol:
           xfer += iprot->skip(ftype);
         }
         break;
-      case 3:
-        if (ftype == ::apache::thrift::protocol::T_STRING) {
-          xfer += iprot->readString(this->expName);
-          isset_expName = true;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          int32_t ecast92;
+          xfer += iprot->readI32(ecast92);
+          this->experimentState = ( ::apache::airavata::model::status::ExperimentState::type)ecast92;
+          isset_experimentState = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          xfer += iprot->readI32(this->limit);
+          isset_limit = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          xfer += iprot->readI32(this->offset);
+          isset_offset = true;
         } else {
           xfer += iprot->skip(ftype);
         }
@@ -6237,30 +6516,48 @@ uint32_t Airavata_searchExperimentsByName_args::read(::apache::thrift::protocol:
 
   xfer += iprot->readStructEnd();
 
+  if (!isset_authzToken)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_gatewayId)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_userName)
     throw TProtocolException(TProtocolException::INVALID_DATA);
-  if (!isset_expName)
+  if (!isset_experimentState)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_limit)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_offset)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   return xfer;
 }
 
-uint32_t Airavata_searchExperimentsByName_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByStatus_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByName_args");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByStatus_args");
 
-  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
+  xfer += this->authzToken.write(oprot);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 2);
   xfer += oprot->writeString(this->gatewayId);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 3);
   xfer += oprot->writeString(this->userName);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("expName", ::apache::thrift::protocol::T_STRING, 3);
-  xfer += oprot->writeString(this->expName);
+  xfer += oprot->writeFieldBegin("experimentState", ::apache::thrift::protocol::T_I32, 4);
+  xfer += oprot->writeI32((int32_t)this->experimentState);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeI32(this->limit);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 6);
+  xfer += oprot->writeI32(this->offset);
   xfer += oprot->writeFieldEnd();
 
   xfer += oprot->writeFieldStop();
@@ -6270,25 +6567,37 @@ uint32_t Airavata_searchExperimentsByName_args::write(::apache::thrift::protocol
 }
 
 
-Airavata_searchExperimentsByName_pargs::~Airavata_searchExperimentsByName_pargs() throw() {
+Airavata_searchExperimentsByStatus_pargs::~Airavata_searchExperimentsByStatus_pargs() throw() {
 }
 
 
-uint32_t Airavata_searchExperimentsByName_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByStatus_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByName_pargs");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByStatus_pargs");
 
-  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
+  xfer += (*(this->authzToken)).write(oprot);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 2);
   xfer += oprot->writeString((*(this->gatewayId)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 3);
   xfer += oprot->writeString((*(this->userName)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("expName", ::apache::thrift::protocol::T_STRING, 3);
-  xfer += oprot->writeString((*(this->expName)));
+  xfer += oprot->writeFieldBegin("experimentState", ::apache::thrift::protocol::T_I32, 4);
+  xfer += oprot->writeI32((int32_t)(*(this->experimentState)));
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeI32((*(this->limit)));
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 6);
+  xfer += oprot->writeI32((*(this->offset)));
   xfer += oprot->writeFieldEnd();
 
   xfer += oprot->writeFieldStop();
@@ -6298,11 +6607,11 @@ uint32_t Airavata_searchExperimentsByName_pargs::write(::apache::thrift::protoco
 }
 
 
-Airavata_searchExperimentsByName_result::~Airavata_searchExperimentsByName_result() throw() {
+Airavata_searchExperimentsByStatus_result::~Airavata_searchExperimentsByStatus_result() throw() {
 }
 
 
-uint32_t Airavata_searchExperimentsByName_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByStatus_result::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -6326,14 +6635,14 @@ uint32_t Airavata_searchExperimentsByName_result::read(::apache::thrift::protoco
         if (ftype == ::apache::thrift::protocol::T_LIST) {
           {
             this->success.clear();
-            uint32_t _size92;
-            ::apache::thrift::protocol::TType _etype95;
-            xfer += iprot->readListBegin(_etype95, _size92);
-            this->success.resize(_size92);
-            uint32_t _i96;
-            for (_i96 = 0; _i96 < _size92; ++_i96)
+            uint32_t _size93;
+            ::apache::thrift::protocol::TType _etype96;
+            xfer += iprot->readListBegin(_etype96, _size93);
+            this->success.resize(_size93);
+            uint32_t _i97;
+            for (_i97 = 0; _i97 < _size93; ++_i97)
             {
-              xfer += this->success[_i96].read(iprot);
+              xfer += this->success[_i97].read(iprot);
             }
             xfer += iprot->readListEnd();
           }
@@ -6366,6 +6675,14 @@ uint32_t Airavata_searchExperimentsByName_result::read(::apache::thrift::protoco
           xfer += iprot->skip(ftype);
         }
         break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ae.read(iprot);
+          this->__isset.ae = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
       default:
         xfer += iprot->skip(ftype);
         break;
@@ -6378,20 +6695,20 @@ uint32_t Airavata_searchExperimentsByName_result::read(::apache::thrift::protoco
   return xfer;
 }
 
-uint32_t Airavata_searchExperimentsByName_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByStatus_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   uint32_t xfer = 0;
 
-  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByName_result");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByStatus_result");
 
   if (this->__isset.success) {
     xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
     {
       xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
-      std::vector< ::apache::airavata::model::experiment::ExperimentSummaryModel> ::const_iterator _iter97;
-      for (_iter97 = this->success.begin(); _iter97 != this->success.end(); ++_iter97)
+      std::vector< ::apache::airavata::model::experiment::ExperimentSummaryModel> ::const_iterator _iter98;
+      for (_iter98 = this->success.begin(); _iter98 != this->success.end(); ++_iter98)
       {
-        xfer += (*_iter97).write(oprot);
+        xfer += (*_iter98).write(oprot);
       }
       xfer += oprot->writeListEnd();
     }
@@ -6408,6 +6725,10 @@ uint32_t Airavata_searchExperimentsByName_result::write(::apache::thrift::protoc
     xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 3);
     xfer += this->ase.write(oprot);
     xfer += oprot->writeFieldEnd();
+  } else if (this->__isset.ae) {
+    xfer += oprot->writeFieldBegin("ae", ::apache::thrift::protocol::T_STRUCT, 4);
+    xfer += this->ae.write(oprot);
+    xfer += oprot->writeFieldEnd();
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
@@ -6415,11 +6736,11 @@ uint32_t Airavata_searchExperimentsByName_result::write(::apache::thrift::protoc
 }
 
 
-Airavata_searchExperimentsByName_presult::~Airavata_searchExperimentsByName_presult() throw() {
+Airavata_searchExperimentsByStatus_presult::~Airavata_searchExperimentsByStatus_presult() throw() {
 }
 
 
-uint32_t Airavata_searchExperimentsByName_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByStatus_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -6443,14 +6764,14 @@ uint32_t Airavata_searchExperimentsByName_presult::read(::apache::thrift::protoc
         if (ftype == ::apache::thrift::protocol::T_LIST) {
           {
             (*(this->success)).clear();
-            uint32_t _size98;
-            ::apache::thrift::protocol::TType _etype101;
-            xfer += iprot->readListBegin(_etype101, _size98);
-            (*(this->success)).resize(_size98);
-            uint32_t _i102;
-            for (_i102 = 0; _i102 < _size98; ++_i102)
+            uint32_t _size99;
+            ::apache::thrift::protocol::TType _etype102;
+            xfer += iprot->readListBegin(_etype102, _size99);
+            (*(this->success)).resize(_size99);
+            uint32_t _i103;
+            for (_i103 = 0; _i103 < _size99; ++_i103)
             {
-              xfer += (*(this->success))[_i102].read(iprot);
+              xfer += (*(this->success))[_i103].read(iprot);
             }
             xfer += iprot->readListEnd();
           }
@@ -6483,6 +6804,14 @@ uint32_t Airavata_searchExperimentsByName_presult::read(::apache::thrift::protoc
           xfer += iprot->skip(ftype);
         }
         break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ae.read(iprot);
+          this->__isset.ae = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
       default:
         xfer += iprot->skip(ftype);
         break;
@@ -6496,11 +6825,11 @@ uint32_t Airavata_searchExperimentsByName_presult::read(::apache::thrift::protoc
 }
 
 
-Airavata_searchExperimentsByNameWithPagination_args::~Airavata_searchExperimentsByNameWithPagination_args() throw() {
+Airavata_searchExperimentsByCreationTime_args::~Airavata_searchExperimentsByCreationTime_args() throw() {
 }
 
 
-uint32_t Airavata_searchExperimentsByNameWithPagination_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByCreationTime_args::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -6514,7 +6843,8 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_args::read(::apache::thr
   bool isset_authzToken = false;
   bool isset_gatewayId = false;
   bool isset_userName = false;
-  bool isset_expName = false;
+  bool isset_fromTime = false;
+  bool isset_toTime = false;
   bool isset_limit = false;
   bool isset_offset = false;
 
@@ -6551,14 +6881,22 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_args::read(::apache::thr
         }
         break;
       case 4:
-        if (ftype == ::apache::thrift::protocol::T_STRING) {
-          xfer += iprot->readString(this->expName);
-          isset_expName = true;
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->fromTime);
+          isset_fromTime = true;
         } else {
           xfer += iprot->skip(ftype);
         }
         break;
       case 5:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->toTime);
+          isset_toTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
         if (ftype == ::apache::thrift::protocol::T_I32) {
           xfer += iprot->readI32(this->limit);
           isset_limit = true;
@@ -6566,7 +6904,7 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_args::read(::apache::thr
           xfer += iprot->skip(ftype);
         }
         break;
-      case 6:
+      case 7:
         if (ftype == ::apache::thrift::protocol::T_I32) {
           xfer += iprot->readI32(this->offset);
           isset_offset = true;
@@ -6589,7 +6927,9 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_args::read(::apache::thr
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_userName)
     throw TProtocolException(TProtocolException::INVALID_DATA);
-  if (!isset_expName)
+  if (!isset_fromTime)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_toTime)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_limit)
     throw TProtocolException(TProtocolException::INVALID_DATA);
@@ -6598,10 +6938,10 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_args::read(::apache::thr
   return xfer;
 }
 
-uint32_t Airavata_searchExperimentsByNameWithPagination_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByCreationTime_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByNameWithPagination_args");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByCreationTime_args");
 
   xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
   xfer += this->authzToken.write(oprot);
@@ -6615,15 +6955,19 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_args::write(::apache::th
   xfer += oprot->writeString(this->userName);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("expName", ::apache::thrift::protocol::T_STRING, 4);
-  xfer += oprot->writeString(this->expName);
+  xfer += oprot->writeFieldBegin("fromTime", ::apache::thrift::protocol::T_I64, 4);
+  xfer += oprot->writeI64(this->fromTime);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeFieldBegin("toTime", ::apache::thrift::protocol::T_I64, 5);
+  xfer += oprot->writeI64(this->toTime);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 6);
   xfer += oprot->writeI32(this->limit);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 6);
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 7);
   xfer += oprot->writeI32(this->offset);
   xfer += oprot->writeFieldEnd();
 
@@ -6634,14 +6978,14 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_args::write(::apache::th
 }
 
 
-Airavata_searchExperimentsByNameWithPagination_pargs::~Airavata_searchExperimentsByNameWithPagination_pargs() throw() {
+Airavata_searchExperimentsByCreationTime_pargs::~Airavata_searchExperimentsByCreationTime_pargs() throw() {
 }
 
 
-uint32_t Airavata_searchExperimentsByNameWithPagination_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByCreationTime_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByNameWithPagination_pargs");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByCreationTime_pargs");
 
   xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
   xfer += (*(this->authzToken)).write(oprot);
@@ -6655,15 +6999,19 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_pargs::write(::apache::t
   xfer += oprot->writeString((*(this->userName)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("expName", ::apache::thrift::protocol::T_STRING, 4);
-  xfer += oprot->writeString((*(this->expName)));
+  xfer += oprot->writeFieldBegin("fromTime", ::apache::thrift::protocol::T_I64, 4);
+  xfer += oprot->writeI64((*(this->fromTime)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeFieldBegin("toTime", ::apache::thrift::protocol::T_I64, 5);
+  xfer += oprot->writeI64((*(this->toTime)));
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 6);
   xfer += oprot->writeI32((*(this->limit)));
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 6);
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 7);
   xfer += oprot->writeI32((*(this->offset)));
   xfer += oprot->writeFieldEnd();
 
@@ -6674,11 +7022,11 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_pargs::write(::apache::t
 }
 
 
-Airavata_searchExperimentsByNameWithPagination_result::~Airavata_searchExperimentsByNameWithPagination_result() throw() {
+Airavata_searchExperimentsByCreationTime_result::~Airavata_searchExperimentsByCreationTime_result() throw() {
 }
 
 
-uint32_t Airavata_searchExperimentsByNameWithPagination_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByCreationTime_result::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -6702,14 +7050,14 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_result::read(::apache::t
         if (ftype == ::apache::thrift::protocol::T_LIST) {
           {
             this->success.clear();
-            uint32_t _size103;
-            ::apache::thrift::protocol::TType _etype106;
-            xfer += iprot->readListBegin(_etype106, _size103);
-            this->success.resize(_size103);
-            uint32_t _i107;
-            for (_i107 = 0; _i107 < _size103; ++_i107)
+            uint32_t _size104;
+            ::apache::thrift::protocol::TType _etype107;
+            xfer += iprot->readListBegin(_etype107, _size104);
+            this->success.resize(_size104);
+            uint32_t _i108;
+            for (_i108 = 0; _i108 < _size104; ++_i108)
             {
-              xfer += this->success[_i107].read(iprot);
+              xfer += this->success[_i108].read(iprot);
             }
             xfer += iprot->readListEnd();
           }
@@ -6762,20 +7110,20 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_result::read(::apache::t
   return xfer;
 }
 
-uint32_t Airavata_searchExperimentsByNameWithPagination_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperimentsByCreationTime_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   uint32_t xfer = 0;
 
-  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByNameWithPagination_result");
+  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByCreationTime_result");
 
   if (this->__isset.success) {
     xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_LIST, 0);
     {
       xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->success.size()));
-      std::vector< ::apache::airavata::model::experiment::ExperimentSummaryModel> ::const_iterator _iter108;
-      for (_iter108 = this->success.begin(); _iter108 != this->success.end(); ++_iter108)
+      std::vector< ::apache::airavata::model::experiment::ExperimentSummaryModel> ::const_iterator _iter109;
+      for (_iter109 = this->success.begin(); _iter109 != this->success.end(); ++_iter109)
       {
-        xfer += (*_iter108).write(oprot);
+        xfer += (*_iter109).write(oprot);
       }
       xfer += oprot->writeListEnd();
     }
@@ -6803,11 +7151,11 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_result::write(::apache::
 }
 
 
-Airavata_searchExperimentsByNameWithPagination_presult::~Airavata_searchExperimentsByNameWithPagination_presult() throw() {
+Airavata_searchExperimentsByCreationTime_presult::~Airavata_searchExperimentsByCreationTime_presult() throw() {
 }
 
 
-uint32_t Airavata_searchExperimentsByNameWithPagination_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperimentsByCreationTime_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -6831,14 +7179,14 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_presult::read(::apache::
         if (ftype == ::apache::thrift::protocol::T_LIST) {
           {
             (*(this->success)).clear();
-            uint32_t _size109;
-            ::apache::thrift::protocol::TType _etype112;
-            xfer += iprot->readListBegin(_etype112, _size109);
-            (*(this->success)).resize(_size109);
-            uint32_t _i113;
-            for (_i113 = 0; _i113 < _size109; ++_i113)
+            uint32_t _size110;
+            ::apache::thrift::protocol::TType _etype113;
+            xfer += iprot->readListBegin(_etype113, _size110);
+            (*(this->success)).resize(_size110);
+            uint32_t _i114;
+            for (_i114 = 0; _i114 < _size110; ++_i114)
             {
-              xfer += (*(this->success))[_i113].read(iprot);
+              xfer += (*(this->success))[_i114].read(iprot);
             }
             xfer += iprot->readListEnd();
           }
@@ -6892,11 +7240,11 @@ uint32_t Airavata_searchExperimentsByNameWithPagination_presult::read(::apache::
 }
 
 
-Airavata_searchExperimentsByDesc_args::~Airavata_searchExperimentsByDesc_args() throw() {
+Airavata_searchExperiments_args::~Airavata_searchExperiments_args() throw() {
 }
 
 
-uint32_t Airavata_searchExperimentsByDesc_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t Airavata_searchExperiments_args::read(::apache::thrift::protocol::TProtocol* iprot) {
 
   uint32_t xfer = 0;
   std::string fname;
@@ -6907,9 +7255,11 @@ uint32_t Airavata_searchExperimentsByDesc_args::read(::apache::thrift::protocol:
 
   using ::apache::thrift::protocol::TProtocolException;
 
+  bool isset_authzToken = false;
   bool isset_gatewayId = false;
   bool isset_userName = false;
-  bool isset_description = false;
+  bool isset_limit = false;
+  bool isset_offset = false;
 
   while (true)
   {
@@ -6920,6 +7270,14 @@ uint32_t Airavata_searchExperimentsByDesc_args::read(::apache::thrift::protocol:
     switch (fid)
     {
       case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->authzToken.read(iprot);
+          isset_authzToken = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->gatewayId);
           isset_gatewayId = true;
@@ -6927,7 +7285,7 @@ uint32_t Airavata_searchExperimentsByDesc_args::read(::apache::thrift::protocol:
           xfer += iprot->skip(ftype);
         }
         break;
-      case 2:
+      case 3:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->userName);
           isset_userName = true;
@@ -6935,10 +7293,43 @@ uint32_t Airavata_searchExperimentsByDesc_args::read(::apache::thrift::protocol:
           xfer += iprot->skip(ftype);
         }
         break;
-      case 3:
-        if (ftype == ::apache::thrift::protocol::T_STRING) {
-          xfer += iprot->readString(this->description);
-          isset_description = true;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_MAP) {
+          {
+            this->filters.clear();
+            uint32_t _size115;
+            ::apache::thrift::protocol::TType _ktype116;
+            ::apache::thrift::protocol::TType _vtype117;
+            xfer += iprot->readMapBegin(_ktype116, _vtype117, _size115);
+            uint32_t _i119;
+            for (_i119 = 0; _i119 < _size115; ++_i119)
+            {
+               ::apache::airavata::model::experiment::ExperimentSearchFields::type _key120;
+              int32_t ecast122;
+              xfer += iprot->readI32(ecast122);
+              _key120 = ( ::apache::airavata::model::experiment::ExperimentSearchFields::type)ecast122;
+              std::string& _val121 = this->filters[_key120];
+              xfer += iprot->readString(_val121);
+            }
+            xfer += iprot->readMapEnd();
+          }
+          this->__isset.filters = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          xfer += iprot->readI32(this->limit);
+          isset_limit = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          xfer += iprot->readI32(this->offset);
+          isset_offset = true;
         } else {
           xfer += iprot->skip(ftype);
         }
@@ -6952,58 +7343,55 @@ uint32_t Airavata_searchExperimentsByDesc_args::read(::apache::thrift::protocol:
 
   xfer += iprot->readStructEnd();
 
+  if (!isset_authzToken)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_gatewayId)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_userName)
     throw TProtocolException(TProtocolException::INVALID_DATA);
-  if (!isset_description)
+  if (!isset_limit)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_offset)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   return xfer;
 }
 
-uint32_t Airavata_searchExperimentsByDesc_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+uint32_t Airavata_searchExperiments_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
   oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDesc_args");
+  xfer += oprot->writeStructBegin("Airavata_searchExperiments_args");
 
-  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
-  xfer += oprot->writeString(this->gatewayId);
+  xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
+  xfer += this->authzToken.write(oprot);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
-  xfer += oprot->writeString(this->userName);
+  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeString(this->gatewayId);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
-  xfer += oprot->writeString(this->description);
+  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 3);
+  xfer += oprot->writeString(this->userName);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldStop();
-  xfer += oprot->writeStructEnd();
-  oprot->decrementRecursionDepth();
-  return xfer;
-}
-
-
-Airavata_searchExperimentsByDesc_pargs::~Airavata_searchExperimentsByDesc_pargs() throw() {
-}
-
-
-uint32_t Airavata_searchExperimentsByDesc_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
-  uint32_t xfer = 0;
-  oprot->incrementRecursionDepth();
-  xfer += oprot->writeStructBegin("Airavata_searchExperimentsByDesc_pargs");
-
-  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 1);
-  xfer += oprot->writeString((*(this->gatewayId)));
+  xfer += oprot->writeFieldBegin("filters", ::apache::thrift::protocol::T_MAP, 4);
+  {
+    xfer += oprot->writeMapBegin(::apache::thrift::protocol::T_I32, ::apache::thrift::protocol::T_STRING, static_cast<uint32_t>(this->filters.size()));
+    std::map< ::apache::airavata::model::experiment::ExperimentSearchFields::type, std::string> ::const_iterator _iter123;
+    for (_iter123 = this->filters.begin(); _iter123 != this->filters.end(); ++_iter123)
+    {
+      xfer += oprot->writeI32((int32_t)_iter123->first);
+      xfer += oprot->writeString(_iter123->second);
+    }
+    xfer += oprot->writeMapEnd();
+  }
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 2);
-  xfer += oprot->writeString((*(this->userName)));
+  xfer += oprot->writeFieldBegin("limit", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeI32(this->limit);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
-  xfer += oprot->writeString((*(this->description)));
+  xfer += oprot->writeFieldBegin("offset", ::apache::thrift::protocol::T_I32, 6);
+  xfer += oprot->writeI32(this->offset);
   xfer += oprot->writeFieldEnd();
 
   xfer += oprot->writeFieldStop();
@@ -7013,128 +7401,60 @@ uint32_t Airavata_searchExperimentsByDesc_pargs::write(::apache::thrift::protoco
 }
 
 
-Airavata_searchExperimentsByDesc_result::~Airavata_searchExperimentsByDesc_result() throw() {
+Airavata_searchExperiments_pargs::~Airavata_searchExperiments_pargs() throw() {
 }
 
 
-uint32_t Airavata_searchExperimentsByDesc_result::read(::apache::thrift::protocol::TProtocol* iprot) {
-
+uint32_t Airavata_searchExperiments_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  std::string fname;
-  ::apache::thrift::protocol::TType ftype;
-  int16_t fid;
+  oprot->incrementRecursionDepth();
+  xfer += oprot->writeStructBegin("Airavata_searchExperiments_pargs");
 
-  xfer += iprot->readStructBegin(fname);
+  xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
+  xfer += (*(this->authzToken)).write(oprot);
+  xfer += oprot->writeFieldEnd();
 
-  using ::apache::thrift::protocol::TProtocolException;
+  xfer += oprot->writeFieldBegin("gatewayId", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeString((*(this->gatewayId)));
+  xfer += oprot->writeFieldEnd();
 
+  xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 3);
+  xfer += oprot->writeString((*(this->userName)));
+  xfer += oprot->writeFieldEnd();
 
-  while (true)
+  xfer += oprot->writeFieldBegin("filters", ::apache::thrift::protocol::T_MAP, 4);
   {
-    xfer += iprot->readFieldBegin(fname, ftype, fid);
-    if (ftype == ::apache::thrift::protocol::T_STOP) {
-      break;
-    }
-    switch (fid)
+    xfer += oprot->writeMapBegin(::apache::thrift::protocol::T_I32, ::apache::thrift::protocol::T_STRING, static_cast<uint32_t>((*(this->filters)).size()));
+    std::map< ::apache::airavata::model::experiment::ExperimentSearchFields::type, std::string> ::const_iterator _iter124;
+    for (_iter124 = (*(this->filters)).begin(); _iter124 != (*(this->filters)).end(); ++_iter124)
     {
-      case 0:
-        if (ftype == ::apache::thrift::protocol::T_LIST) {
-          {
-            this->success.clear();
-            uint32_t _size114;
-            ::apache::thrift::protocol::TType _etype117;
-            xfer += iprot->readListBegin(_etype117, _size114);
-            this->success.resize(_size114);
-            uint32_t _i118;
-            for (_i118 = 0; _i118 < _size114; ++_i118)
-            {
-              xfer += this->success[_i118].read(ipro

<TRUNCATED>