You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ch...@apache.org on 2014/05/22 17:06:16 UTC

[2/5] fixing AIRAVATA-1257, AIRAVATA-1258

http://git-wip-us.apache.org/repos/asf/airavata/blob/a3658305/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
index d38fe46..a422c0d 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
@@ -24,6 +24,8 @@ interface AiravataIf {
   public function getAllUserProjects($userName);
   public function searchProjectsByProjectName($userName, $projectName);
   public function searchProjectsByProjectDesc($userName, $description);
+  public function searchExperimentsByName($userName, $expName);
+  public function searchExperimentsByDesc($userName, $description);
   public function getAllExperimentsInProject($projectId);
   public function getAllUserExperiments($userName);
   public function createExperiment(\Airavata\Model\Workspace\Experiment\Experiment $experiment);
@@ -460,6 +462,128 @@ class AiravataClient implements \Airavata\API\AiravataIf {
     throw new \Exception("searchProjectsByProjectDesc failed: unknown result");
   }
 
+  public function searchExperimentsByName($userName, $expName)
+  {
+    $this->send_searchExperimentsByName($userName, $expName);
+    return $this->recv_searchExperimentsByName();
+  }
+
+  public function send_searchExperimentsByName($userName, $expName)
+  {
+    $args = new \Airavata\API\Airavata_searchExperimentsByName_args();
+    $args->userName = $userName;
+    $args->expName = $expName;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'searchExperimentsByName', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('searchExperimentsByName', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_searchExperimentsByName()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_searchExperimentsByName_result', $this->input_->isStrictRead());
+    else
+    {
+      $rseqid = 0;
+      $fname = null;
+      $mtype = 0;
+
+      $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+      if ($mtype == TMessageType::EXCEPTION) {
+        $x = new TApplicationException();
+        $x->read($this->input_);
+        $this->input_->readMessageEnd();
+        throw $x;
+      }
+      $result = new \Airavata\API\Airavata_searchExperimentsByName_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->ire !== null) {
+      throw $result->ire;
+    }
+    if ($result->ace !== null) {
+      throw $result->ace;
+    }
+    if ($result->ase !== null) {
+      throw $result->ase;
+    }
+    throw new \Exception("searchExperimentsByName failed: unknown result");
+  }
+
+  public function searchExperimentsByDesc($userName, $description)
+  {
+    $this->send_searchExperimentsByDesc($userName, $description);
+    return $this->recv_searchExperimentsByDesc();
+  }
+
+  public function send_searchExperimentsByDesc($userName, $description)
+  {
+    $args = new \Airavata\API\Airavata_searchExperimentsByDesc_args();
+    $args->userName = $userName;
+    $args->description = $description;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'searchExperimentsByDesc', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('searchExperimentsByDesc', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_searchExperimentsByDesc()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_searchExperimentsByDesc_result', $this->input_->isStrictRead());
+    else
+    {
+      $rseqid = 0;
+      $fname = null;
+      $mtype = 0;
+
+      $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+      if ($mtype == TMessageType::EXCEPTION) {
+        $x = new TApplicationException();
+        $x->read($this->input_);
+        $this->input_->readMessageEnd();
+        throw $x;
+      }
+      $result = new \Airavata\API\Airavata_searchExperimentsByDesc_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->ire !== null) {
+      throw $result->ire;
+    }
+    if ($result->ace !== null) {
+      throw $result->ace;
+    }
+    if ($result->ase !== null) {
+      throw $result->ase;
+    }
+    throw new \Exception("searchExperimentsByDesc failed: unknown result");
+  }
+
   public function getAllExperimentsInProject($projectId)
   {
     $this->send_getAllExperimentsInProject($projectId);
@@ -1778,20 +1902,473 @@ class Airavata_updateProject_result {
           } else {
             $xfer += $input->skip($ftype);
           }
-          break;
-        default:
-          $xfer += $input->skip($ftype);
-          break;
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('Airavata_updateProject_result');
+    if ($this->ire !== null) {
+      $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+      $xfer += $this->ire->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ace !== null) {
+      $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+      $xfer += $this->ace->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ase !== null) {
+      $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+      $xfer += $this->ase->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_getProject_args {
+  static $_TSPEC;
+
+  public $projectId = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'projectId',
+          'type' => TType::STRING,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['projectId'])) {
+        $this->projectId = $vals['projectId'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_getProject_args';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 1:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->projectId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('Airavata_getProject_args');
+    if ($this->projectId !== null) {
+      $xfer += $output->writeFieldBegin('projectId', TType::STRING, 1);
+      $xfer += $output->writeString($this->projectId);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_getProject_result {
+  static $_TSPEC;
+
+  public $success = null;
+  public $ire = null;
+  public $ace = null;
+  public $ase = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        0 => array(
+          'var' => 'success',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\Model\Workspace\Project',
+          ),
+        1 => array(
+          'var' => 'ire',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\InvalidRequestException',
+          ),
+        2 => array(
+          'var' => 'ace',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataClientException',
+          ),
+        3 => array(
+          'var' => 'ase',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataSystemException',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['success'])) {
+        $this->success = $vals['success'];
+      }
+      if (isset($vals['ire'])) {
+        $this->ire = $vals['ire'];
+      }
+      if (isset($vals['ace'])) {
+        $this->ace = $vals['ace'];
+      }
+      if (isset($vals['ase'])) {
+        $this->ase = $vals['ase'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_getProject_result';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 0:
+          if ($ftype == TType::STRUCT) {
+            $this->success = new \Airavata\Model\Workspace\Project();
+            $xfer += $this->success->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 1:
+          if ($ftype == TType::STRUCT) {
+            $this->ire = new \Airavata\API\Error\InvalidRequestException();
+            $xfer += $this->ire->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRUCT) {
+            $this->ace = new \Airavata\API\Error\AiravataClientException();
+            $xfer += $this->ace->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->ase = new \Airavata\API\Error\AiravataSystemException();
+            $xfer += $this->ase->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('Airavata_getProject_result');
+    if ($this->success !== null) {
+      if (!is_object($this->success)) {
+        throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('success', TType::STRUCT, 0);
+      $xfer += $this->success->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ire !== null) {
+      $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+      $xfer += $this->ire->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ace !== null) {
+      $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+      $xfer += $this->ace->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ase !== null) {
+      $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+      $xfer += $this->ase->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_getAllUserProjects_args {
+  static $_TSPEC;
+
+  public $userName = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'userName',
+          'type' => TType::STRING,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['userName'])) {
+        $this->userName = $vals['userName'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_getAllUserProjects_args';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 1:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->userName);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('Airavata_getAllUserProjects_args');
+    if ($this->userName !== null) {
+      $xfer += $output->writeFieldBegin('userName', TType::STRING, 1);
+      $xfer += $output->writeString($this->userName);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_getAllUserProjects_result {
+  static $_TSPEC;
+
+  public $success = null;
+  public $ire = null;
+  public $ace = null;
+  public $ase = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        0 => array(
+          'var' => 'success',
+          'type' => TType::LST,
+          'etype' => TType::STRUCT,
+          'elem' => array(
+            'type' => TType::STRUCT,
+            'class' => '\Airavata\Model\Workspace\Project',
+            ),
+          ),
+        1 => array(
+          'var' => 'ire',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\InvalidRequestException',
+          ),
+        2 => array(
+          'var' => 'ace',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataClientException',
+          ),
+        3 => array(
+          'var' => 'ase',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataSystemException',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['success'])) {
+        $this->success = $vals['success'];
+      }
+      if (isset($vals['ire'])) {
+        $this->ire = $vals['ire'];
+      }
+      if (isset($vals['ace'])) {
+        $this->ace = $vals['ace'];
+      }
+      if (isset($vals['ase'])) {
+        $this->ase = $vals['ase'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_getAllUserProjects_result';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 0:
+          if ($ftype == TType::LST) {
+            $this->success = array();
+            $_size0 = 0;
+            $_etype3 = 0;
+            $xfer += $input->readListBegin($_etype3, $_size0);
+            for ($_i4 = 0; $_i4 < $_size0; ++$_i4)
+            {
+              $elem5 = null;
+              $elem5 = new \Airavata\Model\Workspace\Project();
+              $xfer += $elem5->read($input);
+              $this->success []= $elem5;
+            }
+            $xfer += $input->readListEnd();
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 1:
+          if ($ftype == TType::STRUCT) {
+            $this->ire = new \Airavata\API\Error\InvalidRequestException();
+            $xfer += $this->ire->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRUCT) {
+            $this->ace = new \Airavata\API\Error\AiravataClientException();
+            $xfer += $this->ace->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->ase = new \Airavata\API\Error\AiravataSystemException();
+            $xfer += $this->ase->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('Airavata_getAllUserProjects_result');
+    if ($this->success !== null) {
+      if (!is_array($this->success)) {
+        throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('success', TType::LST, 0);
+      {
+        $output->writeListBegin(TType::STRUCT, count($this->success));
+        {
+          foreach ($this->success as $iter6)
+          {
+            $xfer += $iter6->write($output);
+          }
+        }
+        $output->writeListEnd();
       }
-      $xfer += $input->readFieldEnd();
+      $xfer += $output->writeFieldEnd();
     }
-    $xfer += $input->readStructEnd();
-    return $xfer;
-  }
-
-  public function write($output) {
-    $xfer = 0;
-    $xfer += $output->writeStructBegin('Airavata_updateProject_result');
     if ($this->ire !== null) {
       $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
       $xfer += $this->ire->write($output);
@@ -1814,29 +2391,37 @@ class Airavata_updateProject_result {
 
 }
 
-class Airavata_getProject_args {
+class Airavata_searchProjectsByProjectName_args {
   static $_TSPEC;
 
-  public $projectId = null;
+  public $userName = null;
+  public $projectName = null;
 
   public function __construct($vals=null) {
     if (!isset(self::$_TSPEC)) {
       self::$_TSPEC = array(
         1 => array(
-          'var' => 'projectId',
+          'var' => 'userName',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'projectName',
           'type' => TType::STRING,
           ),
         );
     }
     if (is_array($vals)) {
-      if (isset($vals['projectId'])) {
-        $this->projectId = $vals['projectId'];
+      if (isset($vals['userName'])) {
+        $this->userName = $vals['userName'];
+      }
+      if (isset($vals['projectName'])) {
+        $this->projectName = $vals['projectName'];
       }
     }
   }
 
   public function getName() {
-    return 'Airavata_getProject_args';
+    return 'Airavata_searchProjectsByProjectName_args';
   }
 
   public function read($input)
@@ -1856,7 +2441,14 @@ class Airavata_getProject_args {
       {
         case 1:
           if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->projectId);
+            $xfer += $input->readString($this->userName);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->projectName);
           } else {
             $xfer += $input->skip($ftype);
           }
@@ -1873,10 +2465,15 @@ class Airavata_getProject_args {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += $output->writeStructBegin('Airavata_getProject_args');
-    if ($this->projectId !== null) {
-      $xfer += $output->writeFieldBegin('projectId', TType::STRING, 1);
-      $xfer += $output->writeString($this->projectId);
+    $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectName_args');
+    if ($this->userName !== null) {
+      $xfer += $output->writeFieldBegin('userName', TType::STRING, 1);
+      $xfer += $output->writeString($this->userName);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->projectName !== null) {
+      $xfer += $output->writeFieldBegin('projectName', TType::STRING, 2);
+      $xfer += $output->writeString($this->projectName);
       $xfer += $output->writeFieldEnd();
     }
     $xfer += $output->writeFieldStop();
@@ -1886,7 +2483,7 @@ class Airavata_getProject_args {
 
 }
 
-class Airavata_getProject_result {
+class Airavata_searchProjectsByProjectName_result {
   static $_TSPEC;
 
   public $success = null;
@@ -1899,8 +2496,12 @@ class Airavata_getProject_result {
       self::$_TSPEC = array(
         0 => array(
           'var' => 'success',
-          'type' => TType::STRUCT,
-          'class' => '\Airavata\Model\Workspace\Project',
+          'type' => TType::LST,
+          'etype' => TType::STRUCT,
+          'elem' => array(
+            'type' => TType::STRUCT,
+            'class' => '\Airavata\Model\Workspace\Project',
+            ),
           ),
         1 => array(
           'var' => 'ire',
@@ -1936,7 +2537,7 @@ class Airavata_getProject_result {
   }
 
   public function getName() {
-    return 'Airavata_getProject_result';
+    return 'Airavata_searchProjectsByProjectName_result';
   }
 
   public function read($input)
@@ -1955,9 +2556,19 @@ class Airavata_getProject_result {
       switch ($fid)
       {
         case 0:
-          if ($ftype == TType::STRUCT) {
-            $this->success = new \Airavata\Model\Workspace\Project();
-            $xfer += $this->success->read($input);
+          if ($ftype == TType::LST) {
+            $this->success = array();
+            $_size7 = 0;
+            $_etype10 = 0;
+            $xfer += $input->readListBegin($_etype10, $_size7);
+            for ($_i11 = 0; $_i11 < $_size7; ++$_i11)
+            {
+              $elem12 = null;
+              $elem12 = new \Airavata\Model\Workspace\Project();
+              $xfer += $elem12->read($input);
+              $this->success []= $elem12;
+            }
+            $xfer += $input->readListEnd();
           } else {
             $xfer += $input->skip($ftype);
           }
@@ -1998,13 +2609,22 @@ class Airavata_getProject_result {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += $output->writeStructBegin('Airavata_getProject_result');
+    $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectName_result');
     if ($this->success !== null) {
-      if (!is_object($this->success)) {
+      if (!is_array($this->success)) {
         throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
       }
-      $xfer += $output->writeFieldBegin('success', TType::STRUCT, 0);
-      $xfer += $this->success->write($output);
+      $xfer += $output->writeFieldBegin('success', TType::LST, 0);
+      {
+        $output->writeListBegin(TType::STRUCT, count($this->success));
+        {
+          foreach ($this->success as $iter13)
+          {
+            $xfer += $iter13->write($output);
+          }
+        }
+        $output->writeListEnd();
+      }
       $xfer += $output->writeFieldEnd();
     }
     if ($this->ire !== null) {
@@ -2029,10 +2649,11 @@ class Airavata_getProject_result {
 
 }
 
-class Airavata_getAllUserProjects_args {
+class Airavata_searchProjectsByProjectDesc_args {
   static $_TSPEC;
 
   public $userName = null;
+  public $description = null;
 
   public function __construct($vals=null) {
     if (!isset(self::$_TSPEC)) {
@@ -2041,17 +2662,24 @@ class Airavata_getAllUserProjects_args {
           'var' => 'userName',
           'type' => TType::STRING,
           ),
+        2 => array(
+          'var' => 'description',
+          'type' => TType::STRING,
+          ),
         );
     }
     if (is_array($vals)) {
       if (isset($vals['userName'])) {
         $this->userName = $vals['userName'];
       }
+      if (isset($vals['description'])) {
+        $this->description = $vals['description'];
+      }
     }
   }
 
   public function getName() {
-    return 'Airavata_getAllUserProjects_args';
+    return 'Airavata_searchProjectsByProjectDesc_args';
   }
 
   public function read($input)
@@ -2076,6 +2704,13 @@ class Airavata_getAllUserProjects_args {
             $xfer += $input->skip($ftype);
           }
           break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->description);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
         default:
           $xfer += $input->skip($ftype);
           break;
@@ -2088,12 +2723,17 @@ class Airavata_getAllUserProjects_args {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += $output->writeStructBegin('Airavata_getAllUserProjects_args');
+    $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectDesc_args');
     if ($this->userName !== null) {
       $xfer += $output->writeFieldBegin('userName', TType::STRING, 1);
       $xfer += $output->writeString($this->userName);
       $xfer += $output->writeFieldEnd();
     }
+    if ($this->description !== null) {
+      $xfer += $output->writeFieldBegin('description', TType::STRING, 2);
+      $xfer += $output->writeString($this->description);
+      $xfer += $output->writeFieldEnd();
+    }
     $xfer += $output->writeFieldStop();
     $xfer += $output->writeStructEnd();
     return $xfer;
@@ -2101,7 +2741,7 @@ class Airavata_getAllUserProjects_args {
 
 }
 
-class Airavata_getAllUserProjects_result {
+class Airavata_searchProjectsByProjectDesc_result {
   static $_TSPEC;
 
   public $success = null;
@@ -2155,7 +2795,7 @@ class Airavata_getAllUserProjects_result {
   }
 
   public function getName() {
-    return 'Airavata_getAllUserProjects_result';
+    return 'Airavata_searchProjectsByProjectDesc_result';
   }
 
   public function read($input)
@@ -2176,15 +2816,15 @@ class Airavata_getAllUserProjects_result {
         case 0:
           if ($ftype == TType::LST) {
             $this->success = array();
-            $_size0 = 0;
-            $_etype3 = 0;
-            $xfer += $input->readListBegin($_etype3, $_size0);
-            for ($_i4 = 0; $_i4 < $_size0; ++$_i4)
+            $_size14 = 0;
+            $_etype17 = 0;
+            $xfer += $input->readListBegin($_etype17, $_size14);
+            for ($_i18 = 0; $_i18 < $_size14; ++$_i18)
             {
-              $elem5 = null;
-              $elem5 = new \Airavata\Model\Workspace\Project();
-              $xfer += $elem5->read($input);
-              $this->success []= $elem5;
+              $elem19 = null;
+              $elem19 = new \Airavata\Model\Workspace\Project();
+              $xfer += $elem19->read($input);
+              $this->success []= $elem19;
             }
             $xfer += $input->readListEnd();
           } else {
@@ -2227,7 +2867,7 @@ class Airavata_getAllUserProjects_result {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += $output->writeStructBegin('Airavata_getAllUserProjects_result');
+    $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectDesc_result');
     if ($this->success !== null) {
       if (!is_array($this->success)) {
         throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
@@ -2236,9 +2876,9 @@ class Airavata_getAllUserProjects_result {
       {
         $output->writeListBegin(TType::STRUCT, count($this->success));
         {
-          foreach ($this->success as $iter6)
+          foreach ($this->success as $iter20)
           {
-            $xfer += $iter6->write($output);
+            $xfer += $iter20->write($output);
           }
         }
         $output->writeListEnd();
@@ -2267,11 +2907,11 @@ class Airavata_getAllUserProjects_result {
 
 }
 
-class Airavata_searchProjectsByProjectName_args {
+class Airavata_searchExperimentsByName_args {
   static $_TSPEC;
 
   public $userName = null;
-  public $projectName = null;
+  public $expName = null;
 
   public function __construct($vals=null) {
     if (!isset(self::$_TSPEC)) {
@@ -2281,7 +2921,7 @@ class Airavata_searchProjectsByProjectName_args {
           'type' => TType::STRING,
           ),
         2 => array(
-          'var' => 'projectName',
+          'var' => 'expName',
           'type' => TType::STRING,
           ),
         );
@@ -2290,14 +2930,14 @@ class Airavata_searchProjectsByProjectName_args {
       if (isset($vals['userName'])) {
         $this->userName = $vals['userName'];
       }
-      if (isset($vals['projectName'])) {
-        $this->projectName = $vals['projectName'];
+      if (isset($vals['expName'])) {
+        $this->expName = $vals['expName'];
       }
     }
   }
 
   public function getName() {
-    return 'Airavata_searchProjectsByProjectName_args';
+    return 'Airavata_searchExperimentsByName_args';
   }
 
   public function read($input)
@@ -2324,7 +2964,7 @@ class Airavata_searchProjectsByProjectName_args {
           break;
         case 2:
           if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->projectName);
+            $xfer += $input->readString($this->expName);
           } else {
             $xfer += $input->skip($ftype);
           }
@@ -2341,15 +2981,15 @@ class Airavata_searchProjectsByProjectName_args {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectName_args');
+    $xfer += $output->writeStructBegin('Airavata_searchExperimentsByName_args');
     if ($this->userName !== null) {
       $xfer += $output->writeFieldBegin('userName', TType::STRING, 1);
       $xfer += $output->writeString($this->userName);
       $xfer += $output->writeFieldEnd();
     }
-    if ($this->projectName !== null) {
-      $xfer += $output->writeFieldBegin('projectName', TType::STRING, 2);
-      $xfer += $output->writeString($this->projectName);
+    if ($this->expName !== null) {
+      $xfer += $output->writeFieldBegin('expName', TType::STRING, 2);
+      $xfer += $output->writeString($this->expName);
       $xfer += $output->writeFieldEnd();
     }
     $xfer += $output->writeFieldStop();
@@ -2359,7 +2999,7 @@ class Airavata_searchProjectsByProjectName_args {
 
 }
 
-class Airavata_searchProjectsByProjectName_result {
+class Airavata_searchExperimentsByName_result {
   static $_TSPEC;
 
   public $success = null;
@@ -2376,7 +3016,7 @@ class Airavata_searchProjectsByProjectName_result {
           'etype' => TType::STRUCT,
           'elem' => array(
             'type' => TType::STRUCT,
-            'class' => '\Airavata\Model\Workspace\Project',
+            'class' => '\Airavata\Model\Workspace\Experiment\ExperimentSummary',
             ),
           ),
         1 => array(
@@ -2413,7 +3053,7 @@ class Airavata_searchProjectsByProjectName_result {
   }
 
   public function getName() {
-    return 'Airavata_searchProjectsByProjectName_result';
+    return 'Airavata_searchExperimentsByName_result';
   }
 
   public function read($input)
@@ -2434,15 +3074,15 @@ class Airavata_searchProjectsByProjectName_result {
         case 0:
           if ($ftype == TType::LST) {
             $this->success = array();
-            $_size7 = 0;
-            $_etype10 = 0;
-            $xfer += $input->readListBegin($_etype10, $_size7);
-            for ($_i11 = 0; $_i11 < $_size7; ++$_i11)
+            $_size21 = 0;
+            $_etype24 = 0;
+            $xfer += $input->readListBegin($_etype24, $_size21);
+            for ($_i25 = 0; $_i25 < $_size21; ++$_i25)
             {
-              $elem12 = null;
-              $elem12 = new \Airavata\Model\Workspace\Project();
-              $xfer += $elem12->read($input);
-              $this->success []= $elem12;
+              $elem26 = null;
+              $elem26 = new \Airavata\Model\Workspace\Experiment\ExperimentSummary();
+              $xfer += $elem26->read($input);
+              $this->success []= $elem26;
             }
             $xfer += $input->readListEnd();
           } else {
@@ -2485,7 +3125,7 @@ class Airavata_searchProjectsByProjectName_result {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectName_result');
+    $xfer += $output->writeStructBegin('Airavata_searchExperimentsByName_result');
     if ($this->success !== null) {
       if (!is_array($this->success)) {
         throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
@@ -2494,9 +3134,9 @@ class Airavata_searchProjectsByProjectName_result {
       {
         $output->writeListBegin(TType::STRUCT, count($this->success));
         {
-          foreach ($this->success as $iter13)
+          foreach ($this->success as $iter27)
           {
-            $xfer += $iter13->write($output);
+            $xfer += $iter27->write($output);
           }
         }
         $output->writeListEnd();
@@ -2525,7 +3165,7 @@ class Airavata_searchProjectsByProjectName_result {
 
 }
 
-class Airavata_searchProjectsByProjectDesc_args {
+class Airavata_searchExperimentsByDesc_args {
   static $_TSPEC;
 
   public $userName = null;
@@ -2555,7 +3195,7 @@ class Airavata_searchProjectsByProjectDesc_args {
   }
 
   public function getName() {
-    return 'Airavata_searchProjectsByProjectDesc_args';
+    return 'Airavata_searchExperimentsByDesc_args';
   }
 
   public function read($input)
@@ -2599,7 +3239,7 @@ class Airavata_searchProjectsByProjectDesc_args {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectDesc_args');
+    $xfer += $output->writeStructBegin('Airavata_searchExperimentsByDesc_args');
     if ($this->userName !== null) {
       $xfer += $output->writeFieldBegin('userName', TType::STRING, 1);
       $xfer += $output->writeString($this->userName);
@@ -2617,7 +3257,7 @@ class Airavata_searchProjectsByProjectDesc_args {
 
 }
 
-class Airavata_searchProjectsByProjectDesc_result {
+class Airavata_searchExperimentsByDesc_result {
   static $_TSPEC;
 
   public $success = null;
@@ -2634,7 +3274,7 @@ class Airavata_searchProjectsByProjectDesc_result {
           'etype' => TType::STRUCT,
           'elem' => array(
             'type' => TType::STRUCT,
-            'class' => '\Airavata\Model\Workspace\Project',
+            'class' => '\Airavata\Model\Workspace\Experiment\ExperimentSummary',
             ),
           ),
         1 => array(
@@ -2671,7 +3311,7 @@ class Airavata_searchProjectsByProjectDesc_result {
   }
 
   public function getName() {
-    return 'Airavata_searchProjectsByProjectDesc_result';
+    return 'Airavata_searchExperimentsByDesc_result';
   }
 
   public function read($input)
@@ -2692,15 +3332,15 @@ class Airavata_searchProjectsByProjectDesc_result {
         case 0:
           if ($ftype == TType::LST) {
             $this->success = array();
-            $_size14 = 0;
-            $_etype17 = 0;
-            $xfer += $input->readListBegin($_etype17, $_size14);
-            for ($_i18 = 0; $_i18 < $_size14; ++$_i18)
+            $_size28 = 0;
+            $_etype31 = 0;
+            $xfer += $input->readListBegin($_etype31, $_size28);
+            for ($_i32 = 0; $_i32 < $_size28; ++$_i32)
             {
-              $elem19 = null;
-              $elem19 = new \Airavata\Model\Workspace\Project();
-              $xfer += $elem19->read($input);
-              $this->success []= $elem19;
+              $elem33 = null;
+              $elem33 = new \Airavata\Model\Workspace\Experiment\ExperimentSummary();
+              $xfer += $elem33->read($input);
+              $this->success []= $elem33;
             }
             $xfer += $input->readListEnd();
           } else {
@@ -2743,7 +3383,7 @@ class Airavata_searchProjectsByProjectDesc_result {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += $output->writeStructBegin('Airavata_searchProjectsByProjectDesc_result');
+    $xfer += $output->writeStructBegin('Airavata_searchExperimentsByDesc_result');
     if ($this->success !== null) {
       if (!is_array($this->success)) {
         throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
@@ -2752,9 +3392,9 @@ class Airavata_searchProjectsByProjectDesc_result {
       {
         $output->writeListBegin(TType::STRUCT, count($this->success));
         {
-          foreach ($this->success as $iter20)
+          foreach ($this->success as $iter34)
           {
-            $xfer += $iter20->write($output);
+            $xfer += $iter34->write($output);
           }
         }
         $output->writeListEnd();
@@ -2930,15 +3570,15 @@ class Airavata_getAllExperimentsInProject_result {
         case 0:
           if ($ftype == TType::LST) {
             $this->success = array();
-            $_size21 = 0;
-            $_etype24 = 0;
-            $xfer += $input->readListBegin($_etype24, $_size21);
-            for ($_i25 = 0; $_i25 < $_size21; ++$_i25)
+            $_size35 = 0;
+            $_etype38 = 0;
+            $xfer += $input->readListBegin($_etype38, $_size35);
+            for ($_i39 = 0; $_i39 < $_size35; ++$_i39)
             {
-              $elem26 = null;
-              $elem26 = new \Airavata\Model\Workspace\Experiment\Experiment();
-              $xfer += $elem26->read($input);
-              $this->success []= $elem26;
+              $elem40 = null;
+              $elem40 = new \Airavata\Model\Workspace\Experiment\Experiment();
+              $xfer += $elem40->read($input);
+              $this->success []= $elem40;
             }
             $xfer += $input->readListEnd();
           } else {
@@ -2990,9 +3630,9 @@ class Airavata_getAllExperimentsInProject_result {
       {
         $output->writeListBegin(TType::STRUCT, count($this->success));
         {
-          foreach ($this->success as $iter27)
+          foreach ($this->success as $iter41)
           {
-            $xfer += $iter27->write($output);
+            $xfer += $iter41->write($output);
           }
         }
         $output->writeListEnd();
@@ -3168,15 +3808,15 @@ class Airavata_getAllUserExperiments_result {
         case 0:
           if ($ftype == TType::LST) {
             $this->success = array();
-            $_size28 = 0;
-            $_etype31 = 0;
-            $xfer += $input->readListBegin($_etype31, $_size28);
-            for ($_i32 = 0; $_i32 < $_size28; ++$_i32)
+            $_size42 = 0;
+            $_etype45 = 0;
+            $xfer += $input->readListBegin($_etype45, $_size42);
+            for ($_i46 = 0; $_i46 < $_size42; ++$_i46)
             {
-              $elem33 = null;
-              $elem33 = new \Airavata\Model\Workspace\Experiment\Experiment();
-              $xfer += $elem33->read($input);
-              $this->success []= $elem33;
+              $elem47 = null;
+              $elem47 = new \Airavata\Model\Workspace\Experiment\Experiment();
+              $xfer += $elem47->read($input);
+              $this->success []= $elem47;
             }
             $xfer += $input->readListEnd();
           } else {
@@ -3228,9 +3868,9 @@ class Airavata_getAllUserExperiments_result {
       {
         $output->writeListBegin(TType::STRUCT, count($this->success));
         {
-          foreach ($this->success as $iter34)
+          foreach ($this->success as $iter48)
           {
-            $xfer += $iter34->write($output);
+            $xfer += $iter48->write($output);
           }
         }
         $output->writeListEnd();
@@ -5085,15 +5725,15 @@ class Airavata_getExperimentOutputs_result {
         case 0:
           if ($ftype == TType::LST) {
             $this->success = array();
-            $_size35 = 0;
-            $_etype38 = 0;
-            $xfer += $input->readListBegin($_etype38, $_size35);
-            for ($_i39 = 0; $_i39 < $_size35; ++$_i39)
+            $_size49 = 0;
+            $_etype52 = 0;
+            $xfer += $input->readListBegin($_etype52, $_size49);
+            for ($_i53 = 0; $_i53 < $_size49; ++$_i53)
             {
-              $elem40 = null;
-              $elem40 = new \Airavata\Model\Workspace\Experiment\DataObjectType();
-              $xfer += $elem40->read($input);
-              $this->success []= $elem40;
+              $elem54 = null;
+              $elem54 = new \Airavata\Model\Workspace\Experiment\DataObjectType();
+              $xfer += $elem54->read($input);
+              $this->success []= $elem54;
             }
             $xfer += $input->readListEnd();
           } else {
@@ -5121,9 +5761,9 @@ class Airavata_getExperimentOutputs_result {
       {
         $output->writeListBegin(TType::STRUCT, count($this->success));
         {
-          foreach ($this->success as $iter41)
+          foreach ($this->success as $iter55)
           {
-            $xfer += $iter41->write($output);
+            $xfer += $iter55->write($output);
           }
         }
         $output->writeListEnd();
@@ -5261,18 +5901,18 @@ class Airavata_getJobStatuses_result {
         case 0:
           if ($ftype == TType::MAP) {
             $this->success = array();
-            $_size42 = 0;
-            $_ktype43 = 0;
-            $_vtype44 = 0;
-            $xfer += $input->readMapBegin($_ktype43, $_vtype44, $_size42);
-            for ($_i46 = 0; $_i46 < $_size42; ++$_i46)
+            $_size56 = 0;
+            $_ktype57 = 0;
+            $_vtype58 = 0;
+            $xfer += $input->readMapBegin($_ktype57, $_vtype58, $_size56);
+            for ($_i60 = 0; $_i60 < $_size56; ++$_i60)
             {
-              $key47 = '';
-              $val48 = new \Airavata\Model\Workspace\Experiment\JobStatus();
-              $xfer += $input->readString($key47);
-              $val48 = new \Airavata\Model\Workspace\Experiment\JobStatus();
-              $xfer += $val48->read($input);
-              $this->success[$key47] = $val48;
+              $key61 = '';
+              $val62 = new \Airavata\Model\Workspace\Experiment\JobStatus();
+              $xfer += $input->readString($key61);
+              $val62 = new \Airavata\Model\Workspace\Experiment\JobStatus();
+              $xfer += $val62->read($input);
+              $this->success[$key61] = $val62;
             }
             $xfer += $input->readMapEnd();
           } else {
@@ -5300,10 +5940,10 @@ class Airavata_getJobStatuses_result {
       {
         $output->writeMapBegin(TType::STRING, TType::STRUCT, count($this->success));
         {
-          foreach ($this->success as $kiter49 => $viter50)
+          foreach ($this->success as $kiter63 => $viter64)
           {
-            $xfer += $output->writeString($kiter49);
-            $xfer += $viter50->write($output);
+            $xfer += $output->writeString($kiter63);
+            $xfer += $viter64->write($output);
           }
         }
         $output->writeMapEnd();

http://git-wip-us.apache.org/repos/asf/airavata/blob/a3658305/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php
index 456ae7b..267939c 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php
@@ -3898,6 +3898,251 @@ class Experiment {
 
 }
 
+class ExperimentSummary {
+  static $_TSPEC;
+
+  public $experimentID = null;
+  public $projectID = null;
+  public $creationTime = null;
+  public $userName = null;
+  public $name = null;
+  public $description = null;
+  public $experimentStatus = null;
+  public $errors = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'experimentID',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'projectID',
+          'type' => TType::STRING,
+          ),
+        3 => array(
+          'var' => 'creationTime',
+          'type' => TType::I64,
+          ),
+        4 => array(
+          'var' => 'userName',
+          'type' => TType::STRING,
+          ),
+        5 => array(
+          'var' => 'name',
+          'type' => TType::STRING,
+          ),
+        6 => array(
+          'var' => 'description',
+          'type' => TType::STRING,
+          ),
+        7 => array(
+          'var' => 'experimentStatus',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\Model\Workspace\Experiment\ExperimentStatus',
+          ),
+        8 => array(
+          'var' => 'errors',
+          'type' => TType::LST,
+          'etype' => TType::STRUCT,
+          'elem' => array(
+            'type' => TType::STRUCT,
+            'class' => '\Airavata\Model\Workspace\Experiment\ErrorDetails',
+            ),
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['experimentID'])) {
+        $this->experimentID = $vals['experimentID'];
+      }
+      if (isset($vals['projectID'])) {
+        $this->projectID = $vals['projectID'];
+      }
+      if (isset($vals['creationTime'])) {
+        $this->creationTime = $vals['creationTime'];
+      }
+      if (isset($vals['userName'])) {
+        $this->userName = $vals['userName'];
+      }
+      if (isset($vals['name'])) {
+        $this->name = $vals['name'];
+      }
+      if (isset($vals['description'])) {
+        $this->description = $vals['description'];
+      }
+      if (isset($vals['experimentStatus'])) {
+        $this->experimentStatus = $vals['experimentStatus'];
+      }
+      if (isset($vals['errors'])) {
+        $this->errors = $vals['errors'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'ExperimentSummary';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 1:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->experimentID);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->projectID);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->creationTime);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 4:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->userName);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 5:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->name);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 6:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->description);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 7:
+          if ($ftype == TType::STRUCT) {
+            $this->experimentStatus = new \Airavata\Model\Workspace\Experiment\ExperimentStatus();
+            $xfer += $this->experimentStatus->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 8:
+          if ($ftype == TType::LST) {
+            $this->errors = array();
+            $_size119 = 0;
+            $_etype122 = 0;
+            $xfer += $input->readListBegin($_etype122, $_size119);
+            for ($_i123 = 0; $_i123 < $_size119; ++$_i123)
+            {
+              $elem124 = null;
+              $elem124 = new \Airavata\Model\Workspace\Experiment\ErrorDetails();
+              $xfer += $elem124->read($input);
+              $this->errors []= $elem124;
+            }
+            $xfer += $input->readListEnd();
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('ExperimentSummary');
+    if ($this->experimentID !== null) {
+      $xfer += $output->writeFieldBegin('experimentID', TType::STRING, 1);
+      $xfer += $output->writeString($this->experimentID);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->projectID !== null) {
+      $xfer += $output->writeFieldBegin('projectID', TType::STRING, 2);
+      $xfer += $output->writeString($this->projectID);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->creationTime !== null) {
+      $xfer += $output->writeFieldBegin('creationTime', TType::I64, 3);
+      $xfer += $output->writeI64($this->creationTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->userName !== null) {
+      $xfer += $output->writeFieldBegin('userName', TType::STRING, 4);
+      $xfer += $output->writeString($this->userName);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->name !== null) {
+      $xfer += $output->writeFieldBegin('name', TType::STRING, 5);
+      $xfer += $output->writeString($this->name);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->description !== null) {
+      $xfer += $output->writeFieldBegin('description', TType::STRING, 6);
+      $xfer += $output->writeString($this->description);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->experimentStatus !== null) {
+      if (!is_object($this->experimentStatus)) {
+        throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('experimentStatus', TType::STRUCT, 7);
+      $xfer += $this->experimentStatus->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->errors !== null) {
+      if (!is_array($this->errors)) {
+        throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('errors', TType::LST, 8);
+      {
+        $output->writeListBegin(TType::STRUCT, count($this->errors));
+        {
+          foreach ($this->errors as $iter125)
+          {
+            $xfer += $iter125->write($output);
+          }
+        }
+        $output->writeListEnd();
+      }
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
 $GLOBALS['experimentModel_CONSTANTS']['DEFAULT_ID'] = "DO_NOT_SET_AT_CLIENTS";
 
 $GLOBALS['experimentModel_CONSTANTS']['DEFAULT_PROJECT_NAME'] = "DEFAULT";

http://git-wip-us.apache.org/repos/asf/airavata/blob/a3658305/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java
index 49f4100..57907f8 100644
--- a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java
+++ b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java
@@ -69,28 +69,49 @@ public class CreateLaunchExperiment {
 //            final String expId = createExperimentForStampede(airavata);
             final String expId = createExperimentForLocalHost(airavata);
             System.out.println("Experiment ID : " + expId);
-            updateExperiment(airavata, expId);
+//            updateExperiment(airavata, expId);
             launchExperiment(airavata, expId);
             System.out.println("Launched successfully");
             List<Experiment> experiments = getExperimentsForUser(airavata, "admin");
+            List<ExperimentSummary> searchedExps1 = searchExperimentsByName(airavata, "admin", "echo");
+            List<ExperimentSummary> searchedExps2 = searchExperimentsByDesc(airavata, "admin", "Echo");
             List<Project> projects = getAllUserProject(airavata, "admin");
             List<Project> searchProjects1 = searchProjectsByProjectName(airavata, "admin", "project");
             List<Project> searchProjects2 = searchProjectsByProjectDesc(airavata, "admin", "test");
-            for (Experiment exp : experiments){
-                System.out.println(" exp id : " + exp.getExperimentID());
+//            for (Experiment exp : experiments){
+//                System.out.println(" exp id : " + exp.getExperimentID());
+//                System.out.println("experiment Description : " + exp.getDescription()) ;
+//                if (exp.getExperimentStatus() != null) {
+//                    System.out.println(" exp status : " + exp.getExperimentStatus().getExperimentState().toString());
+//                }
+//            }
+
+            for (ExperimentSummary exp : searchedExps1){
+                System.out.println("search results by experiment name");
+                System.out.println("experiment ID : " + exp.getExperimentID()) ;
+                System.out.println("experiment Description : " + exp.getDescription()) ;
                 if (exp.getExperimentStatus() != null) {
                     System.out.println(" exp status : " + exp.getExperimentStatus().getExperimentState().toString());
                 }
             }
-            for (Project pr : searchProjects1){
-                System.out.println(" project id : " + pr.getProjectID());
-            }
 
-            for (Project pr : searchProjects2){
-                System.out.println(" project id : " + pr.getProjectID());
-                System.out.println(" project desc : " + pr.getDescription());
+            for (ExperimentSummary exp : searchedExps2){
+                System.out.println("search results by experiment desc");
+                System.out.println("experiment ID : " + exp.getExperimentID()) ;
+                if (exp.getExperimentStatus() != null) {
+                    System.out.println(" exp status : " + exp.getExperimentStatus().getExperimentState().toString());
+                }
             }
 
+//            for (Project pr : searchProjects1){
+//                System.out.println(" project id : " + pr.getProjectID());
+//            }
+//
+//            for (Project pr : searchProjects2){
+//                System.out.println(" project id : " + pr.getProjectID());
+//                System.out.println(" project desc : " + pr.getDescription());
+//            }
+
             Thread monitor = (new Thread(){
                  public void run() {
                      Map<String, JobStatus> jobStatuses = null;
@@ -511,4 +532,34 @@ public class CreateLaunchExperiment {
         }
         return null;
     }
+
+    public static List<ExperimentSummary> searchExperimentsByName (Airavata.Client client, String user, String expName){
+        try {
+            return client.searchExperimentsByName(user, expName);
+        } catch (AiravataSystemException e) {
+            e.printStackTrace();
+        } catch (InvalidRequestException e) {
+            e.printStackTrace();
+        } catch (AiravataClientException e) {
+            e.printStackTrace();
+        }catch (TException e){
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+    public static List<ExperimentSummary> searchExperimentsByDesc(Airavata.Client client, String user, String desc){
+        try {
+            return client.searchExperimentsByDesc(user, desc);
+        } catch (AiravataSystemException e) {
+            e.printStackTrace();
+        } catch (InvalidRequestException e) {
+            e.printStackTrace();
+        } catch (AiravataClientException e) {
+            e.printStackTrace();
+        }catch (TException e){
+            e.printStackTrace();
+        }
+        return null;
+    }
 }