You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2017/08/04 20:12:58 UTC

[1/4] airavata-php-gateway git commit: AIRAVATA-2505 Upgrade Airavata to Thrift 0.10.0

Repository: airavata-php-gateway
Updated Branches:
  refs/heads/thrift-0.10.0-upgrade [created] 135abc69e


http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Tenant/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Tenant/Types.php b/app/libraries/Airavata/Model/Tenant/Types.php
index b217adf..84efc01 100644
--- a/app/libraries/Airavata/Model/Tenant/Types.php
+++ b/app/libraries/Airavata/Model/Tenant/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Tenant;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated
@@ -38,77 +38,314 @@ final class TenantApprovalStatus {
   );
 }
 
-class Tenant {
+class TenantPreferences {
   static $_TSPEC;
 
   /**
    * @var string
    */
-  public $tenantId = null;
+  public $tenantAdminFirstName = null;
   /**
-   * @var int
+   * @var string
    */
-  public $tenantApprovalStatus = null;
+  public $tenantAdminLastName = null;
   /**
    * @var string
    */
-  public $tenantName = null;
+  public $tenantAdminEmail = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        10 => array(
+          'var' => 'tenantAdminFirstName',
+          'type' => TType::STRING,
+          ),
+        11 => array(
+          'var' => 'tenantAdminLastName',
+          'type' => TType::STRING,
+          ),
+        12 => array(
+          'var' => 'tenantAdminEmail',
+          'type' => TType::STRING,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['tenantAdminFirstName'])) {
+        $this->tenantAdminFirstName = $vals['tenantAdminFirstName'];
+      }
+      if (isset($vals['tenantAdminLastName'])) {
+        $this->tenantAdminLastName = $vals['tenantAdminLastName'];
+      }
+      if (isset($vals['tenantAdminEmail'])) {
+        $this->tenantAdminEmail = $vals['tenantAdminEmail'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'TenantPreferences';
+  }
+
+  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 10:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->tenantAdminFirstName);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 11:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->tenantAdminLastName);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 12:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->tenantAdminEmail);
+          } 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('TenantPreferences');
+    if ($this->tenantAdminFirstName !== null) {
+      $xfer += $output->writeFieldBegin('tenantAdminFirstName', TType::STRING, 10);
+      $xfer += $output->writeString($this->tenantAdminFirstName);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->tenantAdminLastName !== null) {
+      $xfer += $output->writeFieldBegin('tenantAdminLastName', TType::STRING, 11);
+      $xfer += $output->writeString($this->tenantAdminLastName);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->tenantAdminEmail !== null) {
+      $xfer += $output->writeFieldBegin('tenantAdminEmail', TType::STRING, 12);
+      $xfer += $output->writeString($this->tenantAdminEmail);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class TenantConfig {
+  static $_TSPEC;
+
   /**
    * @var string
    */
-  public $domain = null;
+  public $oauthClientId = null;
   /**
    * @var string
    */
-  public $emailAddress = null;
+  public $oauthClientSecret = null;
   /**
    * @var string
    */
-  public $tenantAcronym = null;
+  public $identityServerUserName = null;
   /**
    * @var string
    */
-  public $tenantURL = null;
+  public $identityServerPasswordToken = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        16 => array(
+          'var' => 'oauthClientId',
+          'type' => TType::STRING,
+          ),
+        17 => array(
+          'var' => 'oauthClientSecret',
+          'type' => TType::STRING,
+          ),
+        13 => array(
+          'var' => 'identityServerUserName',
+          'type' => TType::STRING,
+          ),
+        14 => array(
+          'var' => 'identityServerPasswordToken',
+          'type' => TType::STRING,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['oauthClientId'])) {
+        $this->oauthClientId = $vals['oauthClientId'];
+      }
+      if (isset($vals['oauthClientSecret'])) {
+        $this->oauthClientSecret = $vals['oauthClientSecret'];
+      }
+      if (isset($vals['identityServerUserName'])) {
+        $this->identityServerUserName = $vals['identityServerUserName'];
+      }
+      if (isset($vals['identityServerPasswordToken'])) {
+        $this->identityServerPasswordToken = $vals['identityServerPasswordToken'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'TenantConfig';
+  }
+
+  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 16:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->oauthClientId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 17:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->oauthClientSecret);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 13:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->identityServerUserName);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 14:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->identityServerPasswordToken);
+          } 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('TenantConfig');
+    if ($this->identityServerUserName !== null) {
+      $xfer += $output->writeFieldBegin('identityServerUserName', TType::STRING, 13);
+      $xfer += $output->writeString($this->identityServerUserName);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->identityServerPasswordToken !== null) {
+      $xfer += $output->writeFieldBegin('identityServerPasswordToken', TType::STRING, 14);
+      $xfer += $output->writeString($this->identityServerPasswordToken);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->oauthClientId !== null) {
+      $xfer += $output->writeFieldBegin('oauthClientId', TType::STRING, 16);
+      $xfer += $output->writeString($this->oauthClientId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->oauthClientSecret !== null) {
+      $xfer += $output->writeFieldBegin('oauthClientSecret', TType::STRING, 17);
+      $xfer += $output->writeString($this->oauthClientSecret);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Tenant {
+  static $_TSPEC;
+
   /**
    * @var string
    */
-  public $tenantPublicAbstract = null;
+  public $tenantId = null;
   /**
-   * @var string
+   * @var int
    */
-  public $reviewProposalDescription = null;
+  public $tenantApprovalStatus = null;
   /**
    * @var string
    */
-  public $tenantAdminFirstName = null;
+  public $tenantName = null;
   /**
    * @var string
    */
-  public $tenantAdminLastName = null;
+  public $domain = null;
   /**
    * @var string
    */
-  public $tenantAdminEmail = null;
+  public $emailAddress = null;
   /**
    * @var string
    */
-  public $identityServerUserName = null;
+  public $tenantAcronym = null;
   /**
    * @var string
    */
-  public $identityServerPasswordToken = null;
+  public $tenantURL = null;
   /**
    * @var string
    */
-  public $declinedReason = null;
+  public $tenantPublicAbstract = null;
   /**
    * @var string
    */
-  public $oauthClientId = null;
+  public $reviewProposalDescription = null;
   /**
    * @var string
    */
-  public $oauthClientSecret = null;
+  public $declinedReason = null;
   /**
    * @var int
    */
@@ -157,38 +394,10 @@ class Tenant {
           'var' => 'reviewProposalDescription',
           'type' => TType::STRING,
           ),
-        10 => array(
-          'var' => 'tenantAdminFirstName',
-          'type' => TType::STRING,
-          ),
-        11 => array(
-          'var' => 'tenantAdminLastName',
-          'type' => TType::STRING,
-          ),
-        12 => array(
-          'var' => 'tenantAdminEmail',
-          'type' => TType::STRING,
-          ),
-        13 => array(
-          'var' => 'identityServerUserName',
-          'type' => TType::STRING,
-          ),
-        14 => array(
-          'var' => 'identityServerPasswordToken',
-          'type' => TType::STRING,
-          ),
         15 => array(
           'var' => 'declinedReason',
           'type' => TType::STRING,
           ),
-        16 => array(
-          'var' => 'oauthClientId',
-          'type' => TType::STRING,
-          ),
-        17 => array(
-          'var' => 'oauthClientSecret',
-          'type' => TType::STRING,
-          ),
         18 => array(
           'var' => 'requestCreationTime',
           'type' => TType::I64,
@@ -227,30 +436,9 @@ class Tenant {
       if (isset($vals['reviewProposalDescription'])) {
         $this->reviewProposalDescription = $vals['reviewProposalDescription'];
       }
-      if (isset($vals['tenantAdminFirstName'])) {
-        $this->tenantAdminFirstName = $vals['tenantAdminFirstName'];
-      }
-      if (isset($vals['tenantAdminLastName'])) {
-        $this->tenantAdminLastName = $vals['tenantAdminLastName'];
-      }
-      if (isset($vals['tenantAdminEmail'])) {
-        $this->tenantAdminEmail = $vals['tenantAdminEmail'];
-      }
-      if (isset($vals['identityServerUserName'])) {
-        $this->identityServerUserName = $vals['identityServerUserName'];
-      }
-      if (isset($vals['identityServerPasswordToken'])) {
-        $this->identityServerPasswordToken = $vals['identityServerPasswordToken'];
-      }
       if (isset($vals['declinedReason'])) {
         $this->declinedReason = $vals['declinedReason'];
       }
-      if (isset($vals['oauthClientId'])) {
-        $this->oauthClientId = $vals['oauthClientId'];
-      }
-      if (isset($vals['oauthClientSecret'])) {
-        $this->oauthClientSecret = $vals['oauthClientSecret'];
-      }
       if (isset($vals['requestCreationTime'])) {
         $this->requestCreationTime = $vals['requestCreationTime'];
       }
@@ -342,41 +530,6 @@ class Tenant {
             $xfer += $input->skip($ftype);
           }
           break;
-        case 10:
-          if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->tenantAdminFirstName);
-          } else {
-            $xfer += $input->skip($ftype);
-          }
-          break;
-        case 11:
-          if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->tenantAdminLastName);
-          } else {
-            $xfer += $input->skip($ftype);
-          }
-          break;
-        case 12:
-          if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->tenantAdminEmail);
-          } else {
-            $xfer += $input->skip($ftype);
-          }
-          break;
-        case 13:
-          if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->identityServerUserName);
-          } else {
-            $xfer += $input->skip($ftype);
-          }
-          break;
-        case 14:
-          if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->identityServerPasswordToken);
-          } else {
-            $xfer += $input->skip($ftype);
-          }
-          break;
         case 15:
           if ($ftype == TType::STRING) {
             $xfer += $input->readString($this->declinedReason);
@@ -384,20 +537,6 @@ class Tenant {
             $xfer += $input->skip($ftype);
           }
           break;
-        case 16:
-          if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->oauthClientId);
-          } else {
-            $xfer += $input->skip($ftype);
-          }
-          break;
-        case 17:
-          if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->oauthClientSecret);
-          } else {
-            $xfer += $input->skip($ftype);
-          }
-          break;
         case 18:
           if ($ftype == TType::I64) {
             $xfer += $input->readI64($this->requestCreationTime);
@@ -470,46 +609,11 @@ class Tenant {
       $xfer += $output->writeString($this->reviewProposalDescription);
       $xfer += $output->writeFieldEnd();
     }
-    if ($this->tenantAdminFirstName !== null) {
-      $xfer += $output->writeFieldBegin('tenantAdminFirstName', TType::STRING, 10);
-      $xfer += $output->writeString($this->tenantAdminFirstName);
-      $xfer += $output->writeFieldEnd();
-    }
-    if ($this->tenantAdminLastName !== null) {
-      $xfer += $output->writeFieldBegin('tenantAdminLastName', TType::STRING, 11);
-      $xfer += $output->writeString($this->tenantAdminLastName);
-      $xfer += $output->writeFieldEnd();
-    }
-    if ($this->tenantAdminEmail !== null) {
-      $xfer += $output->writeFieldBegin('tenantAdminEmail', TType::STRING, 12);
-      $xfer += $output->writeString($this->tenantAdminEmail);
-      $xfer += $output->writeFieldEnd();
-    }
-    if ($this->identityServerUserName !== null) {
-      $xfer += $output->writeFieldBegin('identityServerUserName', TType::STRING, 13);
-      $xfer += $output->writeString($this->identityServerUserName);
-      $xfer += $output->writeFieldEnd();
-    }
-    if ($this->identityServerPasswordToken !== null) {
-      $xfer += $output->writeFieldBegin('identityServerPasswordToken', TType::STRING, 14);
-      $xfer += $output->writeString($this->identityServerPasswordToken);
-      $xfer += $output->writeFieldEnd();
-    }
     if ($this->declinedReason !== null) {
       $xfer += $output->writeFieldBegin('declinedReason', TType::STRING, 15);
       $xfer += $output->writeString($this->declinedReason);
       $xfer += $output->writeFieldEnd();
     }
-    if ($this->oauthClientId !== null) {
-      $xfer += $output->writeFieldBegin('oauthClientId', TType::STRING, 16);
-      $xfer += $output->writeString($this->oauthClientId);
-      $xfer += $output->writeFieldEnd();
-    }
-    if ($this->oauthClientSecret !== null) {
-      $xfer += $output->writeFieldBegin('oauthClientSecret', TType::STRING, 17);
-      $xfer += $output->writeString($this->oauthClientSecret);
-      $xfer += $output->writeFieldEnd();
-    }
     if ($this->requestCreationTime !== null) {
       $xfer += $output->writeFieldBegin('requestCreationTime', TType::I64, 18);
       $xfer += $output->writeI64($this->requestCreationTime);

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Types.php b/app/libraries/Airavata/Model/Types.php
index 71d3e01..bbd041b 100644
--- a/app/libraries/Airavata/Model/Types.php
+++ b/app/libraries/Airavata/Model/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/User/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/User/Types.php b/app/libraries/Airavata/Model/User/Types.php
index 493b615..cef4420 100644
--- a/app/libraries/Airavata/Model/User/Types.php
+++ b/app/libraries/Airavata/Model/User/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\User;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Workspace/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Workspace/Types.php b/app/libraries/Airavata/Model/Workspace/Types.php
index 850778a..8a2f3cb 100644
--- a/app/libraries/Airavata/Model/Workspace/Types.php
+++ b/app/libraries/Airavata/Model/Workspace/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Workspace;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/Error/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/Error/Types.php b/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/Error/Types.php
index 28fa514..fb73d5a 100644
--- a/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/Error/Types.php
+++ b/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/Error/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Service\Iam\Admin\Services\CPI\Error;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/IamAdminServices.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/IamAdminServices.php b/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/IamAdminServices.php
index 963fc80..30f7abd 100644
--- a/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/IamAdminServices.php
+++ b/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/IamAdminServices.php
@@ -1,7 +1,7 @@
 <?php
 namespace Airavata\Service\Iam\Admin\Services\CPI;
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated
@@ -105,6 +105,7 @@ interface IamAdminServicesIf {
   public function getUsersWithRole(\Airavata\Model\Security\AuthzToken $authzToken, $roleName);
 }
 
+
 class IamAdminServicesClient implements \Airavata\Service\Iam\Admin\Services\CPI\IamAdminServicesIf {
   protected $input_ = null;
   protected $output_ = null;
@@ -702,6 +703,7 @@ class IamAdminServicesClient implements \Airavata\Service\Iam\Admin\Services\CPI
 
 }
 
+
 // HELPER FUNCTIONS AND STRUCTURES
 
 class IamAdminServices_getAPIVersion_args {

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/Types.php b/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/Types.php
index fb21133..54391ec 100644
--- a/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/Types.php
+++ b/app/libraries/Airavata/Service/Iam/Admin/Services/CPI/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Service\Iam\Admin\Services\CPI;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Service/Profile/Tenant/CPI/Error/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Service/Profile/Tenant/CPI/Error/Types.php b/app/libraries/Airavata/Service/Profile/Tenant/CPI/Error/Types.php
index 796dbf6..90afbf2 100644
--- a/app/libraries/Airavata/Service/Profile/Tenant/CPI/Error/Types.php
+++ b/app/libraries/Airavata/Service/Profile/Tenant/CPI/Error/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Service\Profile\Tenant\CPI\Error;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Service/Profile/Tenant/CPI/TenantProfileService.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Service/Profile/Tenant/CPI/TenantProfileService.php b/app/libraries/Airavata/Service/Profile/Tenant/CPI/TenantProfileService.php
index a1211be..633771e 100644
--- a/app/libraries/Airavata/Service/Profile/Tenant/CPI/TenantProfileService.php
+++ b/app/libraries/Airavata/Service/Profile/Tenant/CPI/TenantProfileService.php
@@ -1,7 +1,7 @@
 <?php
 namespace Airavata\Service\Profile\Tenant\CPI;
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated
@@ -84,6 +84,7 @@ interface TenantProfileServiceIf {
   public function getAllGatewaysForUser(\Airavata\Model\Security\AuthzToken $authzToken, $requesterUsername);
 }
 
+
 class TenantProfileServiceClient implements \Airavata\Service\Profile\Tenant\CPI\TenantProfileServiceIf {
   protected $input_ = null;
   protected $output_ = null;
@@ -560,6 +561,7 @@ class TenantProfileServiceClient implements \Airavata\Service\Profile\Tenant\CPI
 
 }
 
+
 // HELPER FUNCTIONS AND STRUCTURES
 
 class TenantProfileService_getAPIVersion_args {

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Service/Profile/Tenant/CPI/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Service/Profile/Tenant/CPI/Types.php b/app/libraries/Airavata/Service/Profile/Tenant/CPI/Types.php
index 92038a2..41891f4 100644
--- a/app/libraries/Airavata/Service/Profile/Tenant/CPI/Types.php
+++ b/app/libraries/Airavata/Service/Profile/Tenant/CPI/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Service\Profile\Tenant\CPI;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Service/Profile/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Service/Profile/Types.php b/app/libraries/Airavata/Service/Profile/Types.php
index f6eafb7..271a25e 100644
--- a/app/libraries/Airavata/Service/Profile/Types.php
+++ b/app/libraries/Airavata/Service/Profile/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Service\Profile;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Service/Profile/User/CPI/Error/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Service/Profile/User/CPI/Error/Types.php b/app/libraries/Airavata/Service/Profile/User/CPI/Error/Types.php
index b633c38..ab0f081 100644
--- a/app/libraries/Airavata/Service/Profile/User/CPI/Error/Types.php
+++ b/app/libraries/Airavata/Service/Profile/User/CPI/Error/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Service\Profile\User\CPI\Error;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Service/Profile/User/CPI/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Service/Profile/User/CPI/Types.php b/app/libraries/Airavata/Service/Profile/User/CPI/Types.php
index c5c6626..bceeb65 100644
--- a/app/libraries/Airavata/Service/Profile/User/CPI/Types.php
+++ b/app/libraries/Airavata/Service/Profile/User/CPI/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Service\Profile\User\CPI;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Service/Profile/User/CPI/UserProfileService.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Service/Profile/User/CPI/UserProfileService.php b/app/libraries/Airavata/Service/Profile/User/CPI/UserProfileService.php
index 6c773b6..0efa67e 100644
--- a/app/libraries/Airavata/Service/Profile/User/CPI/UserProfileService.php
+++ b/app/libraries/Airavata/Service/Profile/User/CPI/UserProfileService.php
@@ -1,7 +1,7 @@
 <?php
 namespace Airavata\Service\Profile\User\CPI;
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated
@@ -128,6 +128,7 @@ interface UserProfileServiceIf {
   public function doesUserExist(\Airavata\Model\Security\AuthzToken $authzToken, $userId, $gatewayId);
 }
 
+
 class UserProfileServiceClient implements \Airavata\Service\Profile\User\CPI\UserProfileServiceIf {
   protected $input_ = null;
   protected $output_ = null;
@@ -494,6 +495,7 @@ class UserProfileServiceClient implements \Airavata\Service\Profile\User\CPI\Use
 
 }
 
+
 // HELPER FUNCTIONS AND STRUCTURES
 
 class UserProfileService_addUserProfile_args {


[4/4] airavata-php-gateway git commit: AIRAVATA-2505 Upgrade Airavata to Thrift 0.10.0

Posted by ma...@apache.org.
AIRAVATA-2505 Upgrade Airavata to Thrift 0.10.0


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

Branch: refs/heads/thrift-0.10.0-upgrade
Commit: 135abc69e10526ca05edcdc258c9d7cbb72e925d
Parents: aedf097
Author: Marcus Christie <ma...@iu.edu>
Authored: Fri Aug 4 16:12:16 2017 -0400
Committer: Marcus Christie <ma...@iu.edu>
Committed: Fri Aug 4 16:12:16 2017 -0400

----------------------------------------------------------------------
 app/libraries/Airavata/API/Airavata.php         |    84 +-
 app/libraries/Airavata/API/Error/Types.php      |     2 +-
 .../API/Sharing/SharingRegistryService.php      | 14248 +++++++++++++++++
 app/libraries/Airavata/API/Sharing/Types.php    |    20 +
 app/libraries/Airavata/API/Types.php            |     2 +-
 .../Model/AppCatalog/AppDeployment/Types.php    |     2 +-
 .../Model/AppCatalog/AppInterface/Types.php     |     2 +-
 .../Model/AppCatalog/ComputeResource/Types.php  |     2 +-
 .../Model/AppCatalog/GatewayProfile/Types.php   |     2 +-
 .../Model/AppCatalog/Parallelism/Types.php      |     2 +-
 .../Model/AppCatalog/StorageResource/Types.php  |     2 +-
 .../AppCatalog/UserResourceProfile/Types.php    |     2 +-
 .../Airavata/Model/Application/Io/Types.php     |     2 +-
 app/libraries/Airavata/Model/Commons/Types.php  |     2 +-
 .../Airavata/Model/Credential/Store/Types.php   |     2 +-
 .../Airavata/Model/Data/Movement/Types.php      |     2 +-
 .../Airavata/Model/Data/Replica/Types.php       |     2 +-
 app/libraries/Airavata/Model/Dbevent/Types.php  |     2 +-
 .../Airavata/Model/Experiment/Types.php         |     2 +-
 app/libraries/Airavata/Model/Group/Types.php    |     2 +-
 app/libraries/Airavata/Model/Job/Types.php      |     2 +-
 .../Airavata/Model/Messaging/Event/Types.php    |     2 +-
 app/libraries/Airavata/Model/Process/Types.php  |     2 +-
 .../Airavata/Model/Scheduling/Types.php         |     2 +-
 app/libraries/Airavata/Model/Security/Types.php |     2 +-
 app/libraries/Airavata/Model/Sharing/Types.php  |  2360 +++
 app/libraries/Airavata/Model/Status/Types.php   |     2 +-
 app/libraries/Airavata/Model/Task/Types.php     |     2 +-
 app/libraries/Airavata/Model/Tenant/Types.php   |   412 +-
 app/libraries/Airavata/Model/Types.php          |     2 +-
 app/libraries/Airavata/Model/User/Types.php     |     2 +-
 .../Airavata/Model/Workspace/Types.php          |     2 +-
 .../Iam/Admin/Services/CPI/Error/Types.php      |     2 +-
 .../Iam/Admin/Services/CPI/IamAdminServices.php |     4 +-
 .../Service/Iam/Admin/Services/CPI/Types.php    |     2 +-
 .../Service/Profile/Tenant/CPI/Error/Types.php  |     2 +-
 .../Profile/Tenant/CPI/TenantProfileService.php |     4 +-
 .../Service/Profile/Tenant/CPI/Types.php        |     2 +-
 .../Airavata/Service/Profile/Types.php          |     2 +-
 .../Service/Profile/User/CPI/Error/Types.php    |     2 +-
 .../Airavata/Service/Profile/User/CPI/Types.php |     2 +-
 .../Profile/User/CPI/UserProfileService.php     |     4 +-
 42 files changed, 16947 insertions(+), 257 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/API/Airavata.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/API/Airavata.php b/app/libraries/Airavata/API/Airavata.php
index ae27035..f191dac 100644
--- a/app/libraries/Airavata/API/Airavata.php
+++ b/app/libraries/Airavata/API/Airavata.php
@@ -1,7 +1,7 @@
 <?php
 namespace Airavata\API;
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated
@@ -4045,7 +4045,7 @@ interface AiravataIf {
   /**
    * @param \Airavata\Model\Security\AuthzToken $authzToken
    * @param \Airavata\Model\Group\GroupModel $groupModel
-   * @return bool
+   * @return string
    * @throws \Airavata\API\Error\InvalidRequestException
    * @throws \Airavata\API\Error\AiravataClientException
    * @throws \Airavata\API\Error\AiravataSystemException
@@ -4066,14 +4066,13 @@ interface AiravataIf {
    * @param \Airavata\Model\Security\AuthzToken $authzToken
    * @param string $groupId
    * @param string $ownerId
-   * @param string $gatewayId
    * @return bool
    * @throws \Airavata\API\Error\InvalidRequestException
    * @throws \Airavata\API\Error\AiravataClientException
    * @throws \Airavata\API\Error\AiravataSystemException
    * @throws \Airavata\API\Error\AuthorizationException
    */
-  public function deleteGroup(\Airavata\Model\Security\AuthzToken $authzToken, $groupId, $ownerId, $gatewayId);
+  public function deleteGroup(\Airavata\Model\Security\AuthzToken $authzToken, $groupId, $ownerId);
   /**
    * @param \Airavata\Model\Security\AuthzToken $authzToken
    * @param string $groupId
@@ -4087,16 +4086,16 @@ interface AiravataIf {
   /**
    * @param \Airavata\Model\Security\AuthzToken $authzToken
    * @param string $userName
-   * @param string $gatewayId
    * @return \Airavata\Model\Group\GroupModel[]
    * @throws \Airavata\API\Error\InvalidRequestException
    * @throws \Airavata\API\Error\AiravataClientException
    * @throws \Airavata\API\Error\AiravataSystemException
    * @throws \Airavata\API\Error\AuthorizationException
    */
-  public function getAllGroupsUserBelongs(\Airavata\Model\Security\AuthzToken $authzToken, $userName, $gatewayId);
+  public function getAllGroupsUserBelongs(\Airavata\Model\Security\AuthzToken $authzToken, $userName);
 }
 
+
 class AiravataClient implements \Airavata\API\AiravataIf {
   protected $input_ = null;
   protected $output_ = null;
@@ -14860,19 +14859,18 @@ class AiravataClient implements \Airavata\API\AiravataIf {
     throw new \Exception("updateGroup failed: unknown result");
   }
 
-  public function deleteGroup(\Airavata\Model\Security\AuthzToken $authzToken, $groupId, $ownerId, $gatewayId)
+  public function deleteGroup(\Airavata\Model\Security\AuthzToken $authzToken, $groupId, $ownerId)
   {
-    $this->send_deleteGroup($authzToken, $groupId, $ownerId, $gatewayId);
+    $this->send_deleteGroup($authzToken, $groupId, $ownerId);
     return $this->recv_deleteGroup();
   }
 
-  public function send_deleteGroup(\Airavata\Model\Security\AuthzToken $authzToken, $groupId, $ownerId, $gatewayId)
+  public function send_deleteGroup(\Airavata\Model\Security\AuthzToken $authzToken, $groupId, $ownerId)
   {
     $args = new \Airavata\API\Airavata_deleteGroup_args();
     $args->authzToken = $authzToken;
     $args->groupId = $groupId;
     $args->ownerId = $ownerId;
-    $args->gatewayId = $gatewayId;
     $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
     if ($bin_accel)
     {
@@ -14990,18 +14988,17 @@ class AiravataClient implements \Airavata\API\AiravataIf {
     throw new \Exception("getGroup failed: unknown result");
   }
 
-  public function getAllGroupsUserBelongs(\Airavata\Model\Security\AuthzToken $authzToken, $userName, $gatewayId)
+  public function getAllGroupsUserBelongs(\Airavata\Model\Security\AuthzToken $authzToken, $userName)
   {
-    $this->send_getAllGroupsUserBelongs($authzToken, $userName, $gatewayId);
+    $this->send_getAllGroupsUserBelongs($authzToken, $userName);
     return $this->recv_getAllGroupsUserBelongs();
   }
 
-  public function send_getAllGroupsUserBelongs(\Airavata\Model\Security\AuthzToken $authzToken, $userName, $gatewayId)
+  public function send_getAllGroupsUserBelongs(\Airavata\Model\Security\AuthzToken $authzToken, $userName)
   {
     $args = new \Airavata\API\Airavata_getAllGroupsUserBelongs_args();
     $args->authzToken = $authzToken;
     $args->userName = $userName;
-    $args->gatewayId = $gatewayId;
     $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
     if ($bin_accel)
     {
@@ -15057,6 +15054,7 @@ class AiravataClient implements \Airavata\API\AiravataIf {
 
 }
 
+
 // HELPER FUNCTIONS AND STRUCTURES
 
 class Airavata_getAPIVersion_args {
@@ -65533,7 +65531,7 @@ class Airavata_createGroup_result {
   static $_TSPEC;
 
   /**
-   * @var bool
+   * @var string
    */
   public $success = null;
   /**
@@ -65558,7 +65556,7 @@ class Airavata_createGroup_result {
       self::$_TSPEC = array(
         0 => array(
           'var' => 'success',
-          'type' => TType::BOOL,
+          'type' => TType::STRING,
           ),
         1 => array(
           'var' => 'ire',
@@ -65621,8 +65619,8 @@ class Airavata_createGroup_result {
       switch ($fid)
       {
         case 0:
-          if ($ftype == TType::BOOL) {
-            $xfer += $input->readBool($this->success);
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->success);
           } else {
             $xfer += $input->skip($ftype);
           }
@@ -65673,8 +65671,8 @@ class Airavata_createGroup_result {
     $xfer = 0;
     $xfer += $output->writeStructBegin('Airavata_createGroup_result');
     if ($this->success !== null) {
-      $xfer += $output->writeFieldBegin('success', TType::BOOL, 0);
-      $xfer += $output->writeBool($this->success);
+      $xfer += $output->writeFieldBegin('success', TType::STRING, 0);
+      $xfer += $output->writeString($this->success);
       $xfer += $output->writeFieldEnd();
     }
     if ($this->ire !== null) {
@@ -66002,10 +66000,6 @@ class Airavata_deleteGroup_args {
    * @var string
    */
   public $ownerId = null;
-  /**
-   * @var string
-   */
-  public $gatewayId = null;
 
   public function __construct($vals=null) {
     if (!isset(self::$_TSPEC)) {
@@ -66023,10 +66017,6 @@ class Airavata_deleteGroup_args {
           'var' => 'ownerId',
           'type' => TType::STRING,
           ),
-        4 => array(
-          'var' => 'gatewayId',
-          'type' => TType::STRING,
-          ),
         );
     }
     if (is_array($vals)) {
@@ -66039,9 +66029,6 @@ class Airavata_deleteGroup_args {
       if (isset($vals['ownerId'])) {
         $this->ownerId = $vals['ownerId'];
       }
-      if (isset($vals['gatewayId'])) {
-        $this->gatewayId = $vals['gatewayId'];
-      }
     }
   }
 
@@ -66086,13 +66073,6 @@ class Airavata_deleteGroup_args {
             $xfer += $input->skip($ftype);
           }
           break;
-        case 4:
-          if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->gatewayId);
-          } else {
-            $xfer += $input->skip($ftype);
-          }
-          break;
         default:
           $xfer += $input->skip($ftype);
           break;
@@ -66124,11 +66104,6 @@ class Airavata_deleteGroup_args {
       $xfer += $output->writeString($this->ownerId);
       $xfer += $output->writeFieldEnd();
     }
-    if ($this->gatewayId !== null) {
-      $xfer += $output->writeFieldBegin('gatewayId', TType::STRING, 4);
-      $xfer += $output->writeString($this->gatewayId);
-      $xfer += $output->writeFieldEnd();
-    }
     $xfer += $output->writeFieldStop();
     $xfer += $output->writeStructEnd();
     return $xfer;
@@ -66605,10 +66580,6 @@ class Airavata_getAllGroupsUserBelongs_args {
    * @var string
    */
   public $userName = null;
-  /**
-   * @var string
-   */
-  public $gatewayId = null;
 
   public function __construct($vals=null) {
     if (!isset(self::$_TSPEC)) {
@@ -66622,10 +66593,6 @@ class Airavata_getAllGroupsUserBelongs_args {
           'var' => 'userName',
           'type' => TType::STRING,
           ),
-        3 => array(
-          'var' => 'gatewayId',
-          'type' => TType::STRING,
-          ),
         );
     }
     if (is_array($vals)) {
@@ -66635,9 +66602,6 @@ class Airavata_getAllGroupsUserBelongs_args {
       if (isset($vals['userName'])) {
         $this->userName = $vals['userName'];
       }
-      if (isset($vals['gatewayId'])) {
-        $this->gatewayId = $vals['gatewayId'];
-      }
     }
   }
 
@@ -66675,13 +66639,6 @@ class Airavata_getAllGroupsUserBelongs_args {
             $xfer += $input->skip($ftype);
           }
           break;
-        case 3:
-          if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->gatewayId);
-          } else {
-            $xfer += $input->skip($ftype);
-          }
-          break;
         default:
           $xfer += $input->skip($ftype);
           break;
@@ -66708,11 +66665,6 @@ class Airavata_getAllGroupsUserBelongs_args {
       $xfer += $output->writeString($this->userName);
       $xfer += $output->writeFieldEnd();
     }
-    if ($this->gatewayId !== null) {
-      $xfer += $output->writeFieldBegin('gatewayId', TType::STRING, 3);
-      $xfer += $output->writeString($this->gatewayId);
-      $xfer += $output->writeFieldEnd();
-    }
     $xfer += $output->writeFieldStop();
     $xfer += $output->writeStructEnd();
     return $xfer;

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/API/Error/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/API/Error/Types.php b/app/libraries/Airavata/API/Error/Types.php
index 0b5258d..97cedfa 100644
--- a/app/libraries/Airavata/API/Error/Types.php
+++ b/app/libraries/Airavata/API/Error/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\API\Error;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated


[3/4] airavata-php-gateway git commit: AIRAVATA-2505 Upgrade Airavata to Thrift 0.10.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/API/Sharing/SharingRegistryService.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/API/Sharing/SharingRegistryService.php b/app/libraries/Airavata/API/Sharing/SharingRegistryService.php
new file mode 100644
index 0000000..e20d2a7
--- /dev/null
+++ b/app/libraries/Airavata/API/Sharing/SharingRegistryService.php
@@ -0,0 +1,14248 @@
+<?php
+namespace Airavata\API\Sharing;
+/**
+ * Autogenerated by Thrift Compiler (0.10.0)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+use Thrift\Base\TBase;
+use Thrift\Type\TType;
+use Thrift\Type\TMessageType;
+use Thrift\Exception\TException;
+use Thrift\Exception\TProtocolException;
+use Thrift\Protocol\TProtocol;
+use Thrift\Protocol\TBinaryProtocolAccelerated;
+use Thrift\Exception\TApplicationException;
+
+
+interface SharingRegistryServiceIf {
+  /**
+   * <p>API method to create a new domain</p>
+   * 
+   * @param \Airavata\Model\Sharing\Domain $domain
+   * @return string
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   * @throws \Airavata\Model\Sharing\DuplicateEntryException
+   */
+  public function createDomain(\Airavata\Model\Sharing\Domain $domain);
+  /**
+   * <p>API method to update a domain</p>
+   * 
+   * @param \Airavata\Model\Sharing\Domain $domain
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function updateDomain(\Airavata\Model\Sharing\Domain $domain);
+  /**
+   * <p>API method to check Domain Exists</p>
+   * 
+   * @param string $domainId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function isDomainExists($domainId);
+  /**
+   * <p>API method to delete domain</p>
+   * 
+   * @param string $domainId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function deleteDomain($domainId);
+  /**
+   * <p>API method to retrieve a domain</p>
+   * 
+   * @param string $domainId
+   * @return \Airavata\Model\Sharing\Domain <p>Domain is the entity that enables multi-tenency in this componenet. Every tenant will be
+   * operating separately it's own silo which is identified by the domain id. In the current implementation domain id
+   * will be same as the domain name</p>
+   * <li>domainId : Will be generated by the server based on the domain name</li>
+   * <li><b>name</b> : A single word name that identifies the domain e.g seagrid, ultrascan</li>
+   * <li>description : A short description for the domain</li>
+   * <li>createdTime : Will be set by the system</li>
+   * <li>updatedTime : Will be set by the system</li>
+   * 
+   * 
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getDomain($domainId);
+  /**
+   * <p>API method to get all domain.</p>
+   * 
+   * @param int $offset
+   * @param int $limit
+   * @return \Airavata\Model\Sharing\Domain[]
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getDomains($offset, $limit);
+  /**
+   * <p>API method to register a user in the system</p>
+   * 
+   * @param \Airavata\Model\Sharing\User $user
+   * @return string
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   * @throws \Airavata\Model\Sharing\DuplicateEntryException
+   */
+  public function createUser(\Airavata\Model\Sharing\User $user);
+  /**
+   * <p>API method to update existing user</p>
+   * 
+   * @param \Airavata\Model\Sharing\User $user
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function updatedUser(\Airavata\Model\Sharing\User $user);
+  /**
+   * <p>API method to check User Exists</p>
+   * 
+   * @param string $domainId
+   * @param string $userId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function isUserExists($domainId, $userId);
+  /**
+   * <p>API method to delete user</p>
+   * 
+   * @param string $domainId
+   * @param string $userId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function deleteUser($domainId, $userId);
+  /**
+   * <p>API method to get a user</p>
+   * 
+   * @param string $domainId
+   * @param string $userId
+   * @return \Airavata\Model\Sharing\User <p>User is the model used to register a user in the system. Minimal user information will be required to provide
+   * regarding the user.</p>
+   * <li><b>userId</b> : User id provided by the client</li>
+   * <li><b>domainId</b> : Domain id for that user</li>
+   * <li><b>userName</b> : User name for the user</li>
+   * <li><b>firstName</b> : First name of the user</li>
+   * <li><b>lastName</b> : Last name of the user</li>
+   * <li><b>email</b> : Email address of the user</li>
+   * <li>icon : A binary field for storing the user icon</li>
+   * <li>createdTime : If client provides this value then the system will use it if not the current time will be set</li>
+   * <li>updatedTime : If client provides this value then the system will use it if not the current time will be set</li>
+   * 
+   * 
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getUser($domainId, $userId);
+  /**
+   * <p>API method to get a list of users in a specific domain.</p>
+   * <li>domainId : Domain id</li>
+   * <li>offset : Starting result number</li>
+   * <li>limit : Number of max results to be sent</li>
+   * 
+   * @param string $domainId
+   * @param int $offset
+   * @param int $limit
+   * @return \Airavata\Model\Sharing\User[]
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getUsers($domainId, $offset, $limit);
+  /**
+   * <p>API method to create a new group</p>
+   * 
+   * @param \Airavata\Model\Sharing\UserGroup $group
+   * @return string
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function createGroup(\Airavata\Model\Sharing\UserGroup $group);
+  /**
+   * <p>API method to update a group</p>
+   * 
+   * @param \Airavata\Model\Sharing\UserGroup $group
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function updateGroup(\Airavata\Model\Sharing\UserGroup $group);
+  /**
+   * <p>API method to check Group Exists</p>
+   * 
+   * @param string $domainId
+   * @param string $groupId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function isGroupExists($domainId, $groupId);
+  /**
+   * <p>API method to delete a group</p>
+   * 
+   * @param string $domainId
+   * @param string $groupId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function deleteGroup($domainId, $groupId);
+  /**
+   * <p>API method to get a group</p>
+   * 
+   * @param string $domainId
+   * @param string $groupId
+   * @return \Airavata\Model\Sharing\UserGroup <p>User group is a collection of users.</p>
+   *  <li><b>groupId</b> : Group id provided by the client</li>
+   *  <li><b>domainId</b> : Domain id for this user group</li>
+   *  <li><b>name</b> : Name for the user group. should be one word</li>
+   *  <li>description : Short description for the group.</li>
+   *  <li><b>ownerId</b> : Owner id of this group.</li>
+   *  <li><b>groupType</b> : Group type (DOMAIN_LEVEL_GROUP, USER_LEVEL_GROUP)</li>
+   *  <li><b>groupCardinality</b> : Group cardinality (SINGLE_USER, MULTI_USER)</li>
+   *  <li>createdTime : Will be set by the system</li>
+   *  <li>updatedTime : Will be set by the system</li>
+   *  
+   * 
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getGroup($domainId, $groupId);
+  /**
+   * <p>API method to get groups in a domainId.</p>
+   * 
+   * @param string $domainId
+   * @param int $offset
+   * @param int $limit
+   * @return \Airavata\Model\Sharing\UserGroup[]
+   */
+  public function getGroups($domainId, $offset, $limit);
+  /**
+   * <p>API method to add list of users to a group</p>
+   * 
+   * @param string $domainId
+   * @param string[] $userIds
+   * @param string $groupId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function addUsersToGroup($domainId, array $userIds, $groupId);
+  /**
+   * <p>API method to remove users from a group</p>
+   * 
+   * @param string $domainId
+   * @param string[] $userIds
+   * @param string $groupId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function removeUsersFromGroup($domainId, array $userIds, $groupId);
+  /**
+   * <p>API method to get list of child users in a group. Only the direct members will be returned.</p>
+   * 
+   * @param string $domainId
+   * @param string $groupId
+   * @param int $offset
+   * @param int $limit
+   * @return \Airavata\Model\Sharing\User[]
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getGroupMembersOfTypeUser($domainId, $groupId, $offset, $limit);
+  /**
+   * <p>API method to get list of child groups in a group. Only the direct members will be returned.</p>
+   * 
+   * @param string $domainId
+   * @param string $groupId
+   * @param int $offset
+   * @param int $limit
+   * @return \Airavata\Model\Sharing\UserGroup[]
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getGroupMembersOfTypeGroup($domainId, $groupId, $offset, $limit);
+  /**
+   * <p>API method to add a child group to a parent group.</p>
+   * 
+   * @param string $domainId
+   * @param string[] $childIds
+   * @param string $groupId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function addChildGroupsToParentGroup($domainId, array $childIds, $groupId);
+  /**
+   * <p>API method to remove a child group from parent group.</p>
+   * 
+   * @param string $domainId
+   * @param string $childId
+   * @param string $groupId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function removeChildGroupFromParentGroup($domainId, $childId, $groupId);
+  /**
+   * @param string $domainId
+   * @param string $userId
+   * @return \Airavata\Model\Sharing\UserGroup[]
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getAllMemberGroupsForUser($domainId, $userId);
+  /**
+   * <p>API method to create a new entity type</p>
+   * 
+   * @param \Airavata\Model\Sharing\EntityType $entityType
+   * @return string
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   * @throws \Airavata\Model\Sharing\DuplicateEntryException
+   */
+  public function createEntityType(\Airavata\Model\Sharing\EntityType $entityType);
+  /**
+   * <p>API method to update entity type</p>
+   * 
+   * @param \Airavata\Model\Sharing\EntityType $entityType
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function updateEntityType(\Airavata\Model\Sharing\EntityType $entityType);
+  /**
+   * <p>API method to check EntityType Exists</p>
+   * 
+   * @param string $domainId
+   * @param string $entityTypeId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function isEntityTypeExists($domainId, $entityTypeId);
+  /**
+   * <p>API method to delete entity type</p>
+   * 
+   * @param string $domainId
+   * @param string $entityTypeId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function deleteEntityType($domainId, $entityTypeId);
+  /**
+   * <p>API method to get an entity type</p>
+   * 
+   * @param string $domainId
+   * @param string $entityTypeId
+   * @return \Airavata\Model\Sharing\EntityType <p>client defined entity types</p>
+   * <li><b>entityTypeId</b> : Entity type id provided by the client</li>
+   * <li><b>domainId</b> : Domain id of the domain.</li>
+   * <li><b>name</b> : Name for the entity type. Should be a single word.</li>
+   * <li>description : Short description for the entity type.</li>
+   * <li>createdTime : Will be set by the system</li>
+   * <li>updatedTime : Will be set by the system</li>
+   * 
+   * 
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getEntityType($domainId, $entityTypeId);
+  /**
+   * <p>API method to get entity types in a domainId.</p>
+   * 
+   * @param string $domainId
+   * @param int $offset
+   * @param int $limit
+   * @return \Airavata\Model\Sharing\EntityType[]
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getEntityTypes($domainId, $offset, $limit);
+  /**
+   * <p>API method to register new entity</p>
+   * 
+   * @param \Airavata\Model\Sharing\Entity $entity
+   * @return string
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function createEntity(\Airavata\Model\Sharing\Entity $entity);
+  /**
+   * <p>API method to update entity</p>
+   * 
+   * @param \Airavata\Model\Sharing\Entity $entity
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function updateEntity(\Airavata\Model\Sharing\Entity $entity);
+  /**
+   * <p>API method to check Entity Exists</p>
+   * 
+   * @param string $domainId
+   * @param string $entityId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function isEntityExists($domainId, $entityId);
+  /**
+   * <p>API method to delete entity</p>
+   * 
+   * @param string $domainId
+   * @param string $entityId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function deleteEntity($domainId, $entityId);
+  /**
+   * <p>API method to get entity</p>
+   * 
+   * @param string $domainId
+   * @param string $entityId
+   * @return \Airavata\Model\Sharing\Entity <p>Entity object which is used to register an entity in the system.</p>
+   * <li><b>entityId</b> : Entity id provided by the client</li>
+   * <li><b>domainId</b> : Domain id</li>
+   * <li><b>entityTypeId</b> : Entity type id</li>
+   * <li><b>ownerId</b> : Owner id</li>
+   * <li>parentEntityId : Parent entity id</li>
+   * <li><b>name</b> : Name</li>
+   * <li>description : Short description for the entity</li>
+   * <li>binaryData : Any information stored in binary format</li>
+   * <li>fullText : A string which will be considered for full text search</li>
+   * <li><b>originalEntityCreationTime</b> : When registering old records what is the original entity creation time. If not
+   * set will be default to current time</li>
+   * <li>createdTime : Will be set by the system</li>
+   * <li>updatedTime : Will be set by the system</li>
+   * 
+   * 
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getEntity($domainId, $entityId);
+  /**
+   * <p>API method to search entities</p>
+   * 
+   * @param string $domainId
+   * @param string $userId
+   * @param \Airavata\Model\Sharing\SearchCriteria[] $filters
+   * @param int $offset
+   * @param int $limit
+   * @return \Airavata\Model\Sharing\Entity[]
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function searchEntities($domainId, $userId, array $filters, $offset, $limit);
+  /**
+   * <p>API method to get a list of shared users given the entity id</p>
+   * 
+   * @param string $domainId
+   * @param string $entityId
+   * @param string $permissionTypeId
+   * @return \Airavata\Model\Sharing\User[]
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getListOfSharedUsers($domainId, $entityId, $permissionTypeId);
+  /**
+   * <p>API method to get a list of shared groups given the entity id</p>
+   * 
+   * @param string $domainId
+   * @param string $entityId
+   * @param string $permissionTypeId
+   * @return \Airavata\Model\Sharing\UserGroup[]
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getListOfSharedGroups($domainId, $entityId, $permissionTypeId);
+  /**
+   * <p>API method to create permission type</p>
+   * 
+   * @param \Airavata\Model\Sharing\PermissionType $permissionType
+   * @return string
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   * @throws \Airavata\Model\Sharing\DuplicateEntryException
+   */
+  public function createPermissionType(\Airavata\Model\Sharing\PermissionType $permissionType);
+  /**
+   * <p>API method to update permission type</p>
+   * 
+   * @param \Airavata\Model\Sharing\PermissionType $permissionType
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function updatePermissionType(\Airavata\Model\Sharing\PermissionType $permissionType);
+  /**
+   * <p>API method to check Permission Exists</p>
+   * 
+   * @param string $dimainId
+   * @param string $permissionId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function isPermissionExists($dimainId, $permissionId);
+  /**
+   * <p>API method to delete permission type</p>
+   * 
+   * @param string $domainId
+   * @param string $permissionTypeId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function deletePermissionType($domainId, $permissionTypeId);
+  /**
+   * <p>API method to get permission type</p>
+   * 
+   * @param string $domainId
+   * @param string $permissionTypeId
+   * @return \Airavata\Model\Sharing\PermissionType <p>Object for creating client defined permission type</p>
+   * <li><b>permissionTypeId</b> : Permission type id provided by the client</li>
+   * <li><b>domainId</b> : Domain id</li>
+   * <li><b>name</b> : Single word name for the permission</li>
+   * <li>description : Short description for the permission type</li>
+   * <li>createdTime : Will be set by the system</li>
+   * <li>updatedTime : Will be set by the system</li>
+   * 
+   * 
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getPermissionType($domainId, $permissionTypeId);
+  /**
+   * <p>API method to get list of permission types in a given domainId.</p>
+   * 
+   * @param string $domainId
+   * @param int $offset
+   * @param int $limit
+   * @return \Airavata\Model\Sharing\PermissionType[]
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function getPermissionTypes($domainId, $offset, $limit);
+  /**
+   * <p>API method to share an entity with users</p>
+   * 
+   * @param string $domainId
+   * @param string $entityId
+   * @param string[] $userList
+   * @param string $perssionTypeId
+   * @param bool $cascadePermission
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function shareEntityWithUsers($domainId, $entityId, array $userList, $perssionTypeId, $cascadePermission);
+  /**
+   * <p>API method to revoke sharing from a list of users</p>
+   * 
+   * @param string $domainId
+   * @param string $entityId
+   * @param string[] $userList
+   * @param string $perssionTypeId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function revokeEntitySharingFromUsers($domainId, $entityId, array $userList, $perssionTypeId);
+  /**
+   * <p>API method to share an entity with list of groups</p>
+   * 
+   * @param string $domainId
+   * @param string $entityId
+   * @param string[] $groupList
+   * @param string $perssionTypeId
+   * @param bool $cascadePermission
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function shareEntityWithGroups($domainId, $entityId, array $groupList, $perssionTypeId, $cascadePermission);
+  /**
+   * <p>API method to revoke sharing from list of users</p>
+   * 
+   * @param string $domainId
+   * @param string $entityId
+   * @param string[] $groupList
+   * @param string $perssionTypeId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function revokeEntitySharingFromGroups($domainId, $entityId, array $groupList, $perssionTypeId);
+  /**
+   * <p>API method to check whether a user has access to a specific entity</p>
+   * 
+   * @param string $domainId
+   * @param string $userId
+   * @param string $entityId
+   * @param string $permissionTypeId
+   * @return bool
+   * @throws \Airavata\Model\Sharing\SharingRegistryException
+   */
+  public function userHasAccess($domainId, $userId, $entityId, $permissionTypeId);
+}
+
+
+class SharingRegistryServiceClient implements \Airavata\API\Sharing\SharingRegistryServiceIf {
+  protected $input_ = null;
+  protected $output_ = null;
+
+  protected $seqid_ = 0;
+
+  public function __construct($input, $output=null) {
+    $this->input_ = $input;
+    $this->output_ = $output ? $output : $input;
+  }
+
+  public function createDomain(\Airavata\Model\Sharing\Domain $domain)
+  {
+    $this->send_createDomain($domain);
+    return $this->recv_createDomain();
+  }
+
+  public function send_createDomain(\Airavata\Model\Sharing\Domain $domain)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_createDomain_args();
+    $args->domain = $domain;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'createDomain', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('createDomain', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_createDomain()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_createDomain_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\Sharing\SharingRegistryService_createDomain_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    if ($result->dee !== null) {
+      throw $result->dee;
+    }
+    throw new \Exception("createDomain failed: unknown result");
+  }
+
+  public function updateDomain(\Airavata\Model\Sharing\Domain $domain)
+  {
+    $this->send_updateDomain($domain);
+    return $this->recv_updateDomain();
+  }
+
+  public function send_updateDomain(\Airavata\Model\Sharing\Domain $domain)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_updateDomain_args();
+    $args->domain = $domain;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'updateDomain', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('updateDomain', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_updateDomain()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_updateDomain_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\Sharing\SharingRegistryService_updateDomain_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("updateDomain failed: unknown result");
+  }
+
+  public function isDomainExists($domainId)
+  {
+    $this->send_isDomainExists($domainId);
+    return $this->recv_isDomainExists();
+  }
+
+  public function send_isDomainExists($domainId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_isDomainExists_args();
+    $args->domainId = $domainId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'isDomainExists', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('isDomainExists', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_isDomainExists()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_isDomainExists_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\Sharing\SharingRegistryService_isDomainExists_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("isDomainExists failed: unknown result");
+  }
+
+  public function deleteDomain($domainId)
+  {
+    $this->send_deleteDomain($domainId);
+    return $this->recv_deleteDomain();
+  }
+
+  public function send_deleteDomain($domainId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_deleteDomain_args();
+    $args->domainId = $domainId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'deleteDomain', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('deleteDomain', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_deleteDomain()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_deleteDomain_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\Sharing\SharingRegistryService_deleteDomain_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("deleteDomain failed: unknown result");
+  }
+
+  public function getDomain($domainId)
+  {
+    $this->send_getDomain($domainId);
+    return $this->recv_getDomain();
+  }
+
+  public function send_getDomain($domainId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_getDomain_args();
+    $args->domainId = $domainId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getDomain', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getDomain', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getDomain()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_getDomain_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\Sharing\SharingRegistryService_getDomain_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("getDomain failed: unknown result");
+  }
+
+  public function getDomains($offset, $limit)
+  {
+    $this->send_getDomains($offset, $limit);
+    return $this->recv_getDomains();
+  }
+
+  public function send_getDomains($offset, $limit)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_getDomains_args();
+    $args->offset = $offset;
+    $args->limit = $limit;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getDomains', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getDomains', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getDomains()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_getDomains_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\Sharing\SharingRegistryService_getDomains_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("getDomains failed: unknown result");
+  }
+
+  public function createUser(\Airavata\Model\Sharing\User $user)
+  {
+    $this->send_createUser($user);
+    return $this->recv_createUser();
+  }
+
+  public function send_createUser(\Airavata\Model\Sharing\User $user)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_createUser_args();
+    $args->user = $user;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'createUser', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('createUser', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_createUser()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_createUser_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\Sharing\SharingRegistryService_createUser_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    if ($result->dee !== null) {
+      throw $result->dee;
+    }
+    throw new \Exception("createUser failed: unknown result");
+  }
+
+  public function updatedUser(\Airavata\Model\Sharing\User $user)
+  {
+    $this->send_updatedUser($user);
+    return $this->recv_updatedUser();
+  }
+
+  public function send_updatedUser(\Airavata\Model\Sharing\User $user)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_updatedUser_args();
+    $args->user = $user;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'updatedUser', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('updatedUser', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_updatedUser()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_updatedUser_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\Sharing\SharingRegistryService_updatedUser_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("updatedUser failed: unknown result");
+  }
+
+  public function isUserExists($domainId, $userId)
+  {
+    $this->send_isUserExists($domainId, $userId);
+    return $this->recv_isUserExists();
+  }
+
+  public function send_isUserExists($domainId, $userId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_isUserExists_args();
+    $args->domainId = $domainId;
+    $args->userId = $userId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'isUserExists', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('isUserExists', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_isUserExists()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_isUserExists_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\Sharing\SharingRegistryService_isUserExists_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("isUserExists failed: unknown result");
+  }
+
+  public function deleteUser($domainId, $userId)
+  {
+    $this->send_deleteUser($domainId, $userId);
+    return $this->recv_deleteUser();
+  }
+
+  public function send_deleteUser($domainId, $userId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_deleteUser_args();
+    $args->domainId = $domainId;
+    $args->userId = $userId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'deleteUser', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('deleteUser', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_deleteUser()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_deleteUser_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\Sharing\SharingRegistryService_deleteUser_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("deleteUser failed: unknown result");
+  }
+
+  public function getUser($domainId, $userId)
+  {
+    $this->send_getUser($domainId, $userId);
+    return $this->recv_getUser();
+  }
+
+  public function send_getUser($domainId, $userId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_getUser_args();
+    $args->domainId = $domainId;
+    $args->userId = $userId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getUser', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getUser', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getUser()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_getUser_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\Sharing\SharingRegistryService_getUser_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("getUser failed: unknown result");
+  }
+
+  public function getUsers($domainId, $offset, $limit)
+  {
+    $this->send_getUsers($domainId, $offset, $limit);
+    return $this->recv_getUsers();
+  }
+
+  public function send_getUsers($domainId, $offset, $limit)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_getUsers_args();
+    $args->domainId = $domainId;
+    $args->offset = $offset;
+    $args->limit = $limit;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getUsers', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getUsers', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getUsers()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_getUsers_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\Sharing\SharingRegistryService_getUsers_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("getUsers failed: unknown result");
+  }
+
+  public function createGroup(\Airavata\Model\Sharing\UserGroup $group)
+  {
+    $this->send_createGroup($group);
+    return $this->recv_createGroup();
+  }
+
+  public function send_createGroup(\Airavata\Model\Sharing\UserGroup $group)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_createGroup_args();
+    $args->group = $group;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'createGroup', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('createGroup', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_createGroup()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_createGroup_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\Sharing\SharingRegistryService_createGroup_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("createGroup failed: unknown result");
+  }
+
+  public function updateGroup(\Airavata\Model\Sharing\UserGroup $group)
+  {
+    $this->send_updateGroup($group);
+    return $this->recv_updateGroup();
+  }
+
+  public function send_updateGroup(\Airavata\Model\Sharing\UserGroup $group)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_updateGroup_args();
+    $args->group = $group;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'updateGroup', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('updateGroup', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_updateGroup()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_updateGroup_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\Sharing\SharingRegistryService_updateGroup_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("updateGroup failed: unknown result");
+  }
+
+  public function isGroupExists($domainId, $groupId)
+  {
+    $this->send_isGroupExists($domainId, $groupId);
+    return $this->recv_isGroupExists();
+  }
+
+  public function send_isGroupExists($domainId, $groupId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_isGroupExists_args();
+    $args->domainId = $domainId;
+    $args->groupId = $groupId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'isGroupExists', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('isGroupExists', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_isGroupExists()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_isGroupExists_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\Sharing\SharingRegistryService_isGroupExists_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("isGroupExists failed: unknown result");
+  }
+
+  public function deleteGroup($domainId, $groupId)
+  {
+    $this->send_deleteGroup($domainId, $groupId);
+    return $this->recv_deleteGroup();
+  }
+
+  public function send_deleteGroup($domainId, $groupId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_deleteGroup_args();
+    $args->domainId = $domainId;
+    $args->groupId = $groupId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'deleteGroup', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('deleteGroup', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_deleteGroup()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_deleteGroup_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\Sharing\SharingRegistryService_deleteGroup_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("deleteGroup failed: unknown result");
+  }
+
+  public function getGroup($domainId, $groupId)
+  {
+    $this->send_getGroup($domainId, $groupId);
+    return $this->recv_getGroup();
+  }
+
+  public function send_getGroup($domainId, $groupId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_getGroup_args();
+    $args->domainId = $domainId;
+    $args->groupId = $groupId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getGroup', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getGroup', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getGroup()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_getGroup_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\Sharing\SharingRegistryService_getGroup_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("getGroup failed: unknown result");
+  }
+
+  public function getGroups($domainId, $offset, $limit)
+  {
+    $this->send_getGroups($domainId, $offset, $limit);
+    return $this->recv_getGroups();
+  }
+
+  public function send_getGroups($domainId, $offset, $limit)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_getGroups_args();
+    $args->domainId = $domainId;
+    $args->offset = $offset;
+    $args->limit = $limit;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getGroups', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getGroups', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getGroups()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_getGroups_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\Sharing\SharingRegistryService_getGroups_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    throw new \Exception("getGroups failed: unknown result");
+  }
+
+  public function addUsersToGroup($domainId, array $userIds, $groupId)
+  {
+    $this->send_addUsersToGroup($domainId, $userIds, $groupId);
+    return $this->recv_addUsersToGroup();
+  }
+
+  public function send_addUsersToGroup($domainId, array $userIds, $groupId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_addUsersToGroup_args();
+    $args->domainId = $domainId;
+    $args->userIds = $userIds;
+    $args->groupId = $groupId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'addUsersToGroup', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('addUsersToGroup', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_addUsersToGroup()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_addUsersToGroup_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\Sharing\SharingRegistryService_addUsersToGroup_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("addUsersToGroup failed: unknown result");
+  }
+
+  public function removeUsersFromGroup($domainId, array $userIds, $groupId)
+  {
+    $this->send_removeUsersFromGroup($domainId, $userIds, $groupId);
+    return $this->recv_removeUsersFromGroup();
+  }
+
+  public function send_removeUsersFromGroup($domainId, array $userIds, $groupId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_removeUsersFromGroup_args();
+    $args->domainId = $domainId;
+    $args->userIds = $userIds;
+    $args->groupId = $groupId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'removeUsersFromGroup', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('removeUsersFromGroup', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_removeUsersFromGroup()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_removeUsersFromGroup_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\Sharing\SharingRegistryService_removeUsersFromGroup_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("removeUsersFromGroup failed: unknown result");
+  }
+
+  public function getGroupMembersOfTypeUser($domainId, $groupId, $offset, $limit)
+  {
+    $this->send_getGroupMembersOfTypeUser($domainId, $groupId, $offset, $limit);
+    return $this->recv_getGroupMembersOfTypeUser();
+  }
+
+  public function send_getGroupMembersOfTypeUser($domainId, $groupId, $offset, $limit)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_getGroupMembersOfTypeUser_args();
+    $args->domainId = $domainId;
+    $args->groupId = $groupId;
+    $args->offset = $offset;
+    $args->limit = $limit;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getGroupMembersOfTypeUser', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getGroupMembersOfTypeUser', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getGroupMembersOfTypeUser()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_getGroupMembersOfTypeUser_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\Sharing\SharingRegistryService_getGroupMembersOfTypeUser_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("getGroupMembersOfTypeUser failed: unknown result");
+  }
+
+  public function getGroupMembersOfTypeGroup($domainId, $groupId, $offset, $limit)
+  {
+    $this->send_getGroupMembersOfTypeGroup($domainId, $groupId, $offset, $limit);
+    return $this->recv_getGroupMembersOfTypeGroup();
+  }
+
+  public function send_getGroupMembersOfTypeGroup($domainId, $groupId, $offset, $limit)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_getGroupMembersOfTypeGroup_args();
+    $args->domainId = $domainId;
+    $args->groupId = $groupId;
+    $args->offset = $offset;
+    $args->limit = $limit;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getGroupMembersOfTypeGroup', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getGroupMembersOfTypeGroup', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getGroupMembersOfTypeGroup()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_getGroupMembersOfTypeGroup_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\Sharing\SharingRegistryService_getGroupMembersOfTypeGroup_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("getGroupMembersOfTypeGroup failed: unknown result");
+  }
+
+  public function addChildGroupsToParentGroup($domainId, array $childIds, $groupId)
+  {
+    $this->send_addChildGroupsToParentGroup($domainId, $childIds, $groupId);
+    return $this->recv_addChildGroupsToParentGroup();
+  }
+
+  public function send_addChildGroupsToParentGroup($domainId, array $childIds, $groupId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_addChildGroupsToParentGroup_args();
+    $args->domainId = $domainId;
+    $args->childIds = $childIds;
+    $args->groupId = $groupId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'addChildGroupsToParentGroup', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('addChildGroupsToParentGroup', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_addChildGroupsToParentGroup()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_addChildGroupsToParentGroup_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\Sharing\SharingRegistryService_addChildGroupsToParentGroup_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("addChildGroupsToParentGroup failed: unknown result");
+  }
+
+  public function removeChildGroupFromParentGroup($domainId, $childId, $groupId)
+  {
+    $this->send_removeChildGroupFromParentGroup($domainId, $childId, $groupId);
+    return $this->recv_removeChildGroupFromParentGroup();
+  }
+
+  public function send_removeChildGroupFromParentGroup($domainId, $childId, $groupId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_removeChildGroupFromParentGroup_args();
+    $args->domainId = $domainId;
+    $args->childId = $childId;
+    $args->groupId = $groupId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'removeChildGroupFromParentGroup', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('removeChildGroupFromParentGroup', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_removeChildGroupFromParentGroup()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_removeChildGroupFromParentGroup_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\Sharing\SharingRegistryService_removeChildGroupFromParentGroup_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("removeChildGroupFromParentGroup failed: unknown result");
+  }
+
+  public function getAllMemberGroupsForUser($domainId, $userId)
+  {
+    $this->send_getAllMemberGroupsForUser($domainId, $userId);
+    return $this->recv_getAllMemberGroupsForUser();
+  }
+
+  public function send_getAllMemberGroupsForUser($domainId, $userId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_getAllMemberGroupsForUser_args();
+    $args->domainId = $domainId;
+    $args->userId = $userId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getAllMemberGroupsForUser', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getAllMemberGroupsForUser', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getAllMemberGroupsForUser()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_getAllMemberGroupsForUser_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\Sharing\SharingRegistryService_getAllMemberGroupsForUser_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("getAllMemberGroupsForUser failed: unknown result");
+  }
+
+  public function createEntityType(\Airavata\Model\Sharing\EntityType $entityType)
+  {
+    $this->send_createEntityType($entityType);
+    return $this->recv_createEntityType();
+  }
+
+  public function send_createEntityType(\Airavata\Model\Sharing\EntityType $entityType)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_createEntityType_args();
+    $args->entityType = $entityType;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'createEntityType', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('createEntityType', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_createEntityType()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_createEntityType_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\Sharing\SharingRegistryService_createEntityType_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    if ($result->dee !== null) {
+      throw $result->dee;
+    }
+    throw new \Exception("createEntityType failed: unknown result");
+  }
+
+  public function updateEntityType(\Airavata\Model\Sharing\EntityType $entityType)
+  {
+    $this->send_updateEntityType($entityType);
+    return $this->recv_updateEntityType();
+  }
+
+  public function send_updateEntityType(\Airavata\Model\Sharing\EntityType $entityType)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_updateEntityType_args();
+    $args->entityType = $entityType;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'updateEntityType', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('updateEntityType', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_updateEntityType()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_updateEntityType_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\Sharing\SharingRegistryService_updateEntityType_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("updateEntityType failed: unknown result");
+  }
+
+  public function isEntityTypeExists($domainId, $entityTypeId)
+  {
+    $this->send_isEntityTypeExists($domainId, $entityTypeId);
+    return $this->recv_isEntityTypeExists();
+  }
+
+  public function send_isEntityTypeExists($domainId, $entityTypeId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_isEntityTypeExists_args();
+    $args->domainId = $domainId;
+    $args->entityTypeId = $entityTypeId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'isEntityTypeExists', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('isEntityTypeExists', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_isEntityTypeExists()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_isEntityTypeExists_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\Sharing\SharingRegistryService_isEntityTypeExists_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("isEntityTypeExists failed: unknown result");
+  }
+
+  public function deleteEntityType($domainId, $entityTypeId)
+  {
+    $this->send_deleteEntityType($domainId, $entityTypeId);
+    return $this->recv_deleteEntityType();
+  }
+
+  public function send_deleteEntityType($domainId, $entityTypeId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_deleteEntityType_args();
+    $args->domainId = $domainId;
+    $args->entityTypeId = $entityTypeId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'deleteEntityType', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('deleteEntityType', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_deleteEntityType()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_deleteEntityType_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\Sharing\SharingRegistryService_deleteEntityType_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("deleteEntityType failed: unknown result");
+  }
+
+  public function getEntityType($domainId, $entityTypeId)
+  {
+    $this->send_getEntityType($domainId, $entityTypeId);
+    return $this->recv_getEntityType();
+  }
+
+  public function send_getEntityType($domainId, $entityTypeId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_getEntityType_args();
+    $args->domainId = $domainId;
+    $args->entityTypeId = $entityTypeId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getEntityType', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getEntityType', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getEntityType()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_getEntityType_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\Sharing\SharingRegistryService_getEntityType_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("getEntityType failed: unknown result");
+  }
+
+  public function getEntityTypes($domainId, $offset, $limit)
+  {
+    $this->send_getEntityTypes($domainId, $offset, $limit);
+    return $this->recv_getEntityTypes();
+  }
+
+  public function send_getEntityTypes($domainId, $offset, $limit)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_getEntityTypes_args();
+    $args->domainId = $domainId;
+    $args->offset = $offset;
+    $args->limit = $limit;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getEntityTypes', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getEntityTypes', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getEntityTypes()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_getEntityTypes_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\Sharing\SharingRegistryService_getEntityTypes_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("getEntityTypes failed: unknown result");
+  }
+
+  public function createEntity(\Airavata\Model\Sharing\Entity $entity)
+  {
+    $this->send_createEntity($entity);
+    return $this->recv_createEntity();
+  }
+
+  public function send_createEntity(\Airavata\Model\Sharing\Entity $entity)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_createEntity_args();
+    $args->entity = $entity;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'createEntity', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('createEntity', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_createEntity()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_createEntity_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\Sharing\SharingRegistryService_createEntity_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("createEntity failed: unknown result");
+  }
+
+  public function updateEntity(\Airavata\Model\Sharing\Entity $entity)
+  {
+    $this->send_updateEntity($entity);
+    return $this->recv_updateEntity();
+  }
+
+  public function send_updateEntity(\Airavata\Model\Sharing\Entity $entity)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_updateEntity_args();
+    $args->entity = $entity;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'updateEntity', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('updateEntity', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_updateEntity()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Sharing\SharingRegistryService_updateEntity_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\Sharing\SharingRegistryService_updateEntity_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->sre !== null) {
+      throw $result->sre;
+    }
+    throw new \Exception("updateEntity failed: unknown result");
+  }
+
+  public function isEntityExists($domainId, $entityId)
+  {
+    $this->send_isEntityExists($domainId, $entityId);
+    return $this->recv_isEntityExists();
+  }
+
+  public function send_isEntityExists($domainId, $entityId)
+  {
+    $args = new \Airavata\API\Sharing\SharingRegistryService_isEntityExists_args();
+    $args->domainId = $domainId;
+    $args->entityId = $entityId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'isEntityExists', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('isEntityExists', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_isEntityExists()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && f

<TRUNCATED>

[2/4] airavata-php-gateway git commit: AIRAVATA-2505 Upgrade Airavata to Thrift 0.10.0

Posted by ma...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/API/Sharing/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/API/Sharing/Types.php b/app/libraries/Airavata/API/Sharing/Types.php
new file mode 100644
index 0000000..050b73e
--- /dev/null
+++ b/app/libraries/Airavata/API/Sharing/Types.php
@@ -0,0 +1,20 @@
+<?php
+namespace Airavata\API\Sharing;
+
+/**
+ * Autogenerated by Thrift Compiler (0.10.0)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+use Thrift\Base\TBase;
+use Thrift\Type\TType;
+use Thrift\Type\TMessageType;
+use Thrift\Exception\TException;
+use Thrift\Exception\TProtocolException;
+use Thrift\Protocol\TProtocol;
+use Thrift\Protocol\TBinaryProtocolAccelerated;
+use Thrift\Exception\TApplicationException;
+
+
+

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/API/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/API/Types.php b/app/libraries/Airavata/API/Types.php
index 84e30af..f1235c6 100644
--- a/app/libraries/Airavata/API/Types.php
+++ b/app/libraries/Airavata/API/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\API;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/AppCatalog/AppDeployment/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/AppCatalog/AppDeployment/Types.php b/app/libraries/Airavata/Model/AppCatalog/AppDeployment/Types.php
index abcb322..32ab54a 100644
--- a/app/libraries/Airavata/Model/AppCatalog/AppDeployment/Types.php
+++ b/app/libraries/Airavata/Model/AppCatalog/AppDeployment/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\AppCatalog\AppDeployment;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/AppCatalog/AppInterface/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/AppCatalog/AppInterface/Types.php b/app/libraries/Airavata/Model/AppCatalog/AppInterface/Types.php
index 2477b43..644539f 100644
--- a/app/libraries/Airavata/Model/AppCatalog/AppInterface/Types.php
+++ b/app/libraries/Airavata/Model/AppCatalog/AppInterface/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\AppCatalog\AppInterface;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/AppCatalog/ComputeResource/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/AppCatalog/ComputeResource/Types.php b/app/libraries/Airavata/Model/AppCatalog/ComputeResource/Types.php
index 47e6e24..d42d05f 100644
--- a/app/libraries/Airavata/Model/AppCatalog/ComputeResource/Types.php
+++ b/app/libraries/Airavata/Model/AppCatalog/ComputeResource/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\AppCatalog\ComputeResource;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/AppCatalog/GatewayProfile/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/AppCatalog/GatewayProfile/Types.php b/app/libraries/Airavata/Model/AppCatalog/GatewayProfile/Types.php
index f0b329d..eaeb533 100644
--- a/app/libraries/Airavata/Model/AppCatalog/GatewayProfile/Types.php
+++ b/app/libraries/Airavata/Model/AppCatalog/GatewayProfile/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\AppCatalog\GatewayProfile;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/AppCatalog/Parallelism/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/AppCatalog/Parallelism/Types.php b/app/libraries/Airavata/Model/AppCatalog/Parallelism/Types.php
index e633a53..1b55232 100644
--- a/app/libraries/Airavata/Model/AppCatalog/Parallelism/Types.php
+++ b/app/libraries/Airavata/Model/AppCatalog/Parallelism/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\AppCatalog\Parallelism;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/AppCatalog/StorageResource/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/AppCatalog/StorageResource/Types.php b/app/libraries/Airavata/Model/AppCatalog/StorageResource/Types.php
index 93df378..ed1a4f8 100644
--- a/app/libraries/Airavata/Model/AppCatalog/StorageResource/Types.php
+++ b/app/libraries/Airavata/Model/AppCatalog/StorageResource/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\AppCatalog\StorageResource;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/AppCatalog/UserResourceProfile/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/AppCatalog/UserResourceProfile/Types.php b/app/libraries/Airavata/Model/AppCatalog/UserResourceProfile/Types.php
index 8ab78a0..1dc625a 100644
--- a/app/libraries/Airavata/Model/AppCatalog/UserResourceProfile/Types.php
+++ b/app/libraries/Airavata/Model/AppCatalog/UserResourceProfile/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\AppCatalog\UserResourceProfile;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Application/Io/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Application/Io/Types.php b/app/libraries/Airavata/Model/Application/Io/Types.php
index b8bdf76..c417a5b 100644
--- a/app/libraries/Airavata/Model/Application/Io/Types.php
+++ b/app/libraries/Airavata/Model/Application/Io/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Application\Io;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Commons/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Commons/Types.php b/app/libraries/Airavata/Model/Commons/Types.php
index ecc9532..2f657fe 100644
--- a/app/libraries/Airavata/Model/Commons/Types.php
+++ b/app/libraries/Airavata/Model/Commons/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Commons;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Credential/Store/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Credential/Store/Types.php b/app/libraries/Airavata/Model/Credential/Store/Types.php
index 861403d..625b8c7 100644
--- a/app/libraries/Airavata/Model/Credential/Store/Types.php
+++ b/app/libraries/Airavata/Model/Credential/Store/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Credential\Store;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Data/Movement/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Data/Movement/Types.php b/app/libraries/Airavata/Model/Data/Movement/Types.php
index 274a4a8..6a6c1c1 100644
--- a/app/libraries/Airavata/Model/Data/Movement/Types.php
+++ b/app/libraries/Airavata/Model/Data/Movement/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Data\Movement;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Data/Replica/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Data/Replica/Types.php b/app/libraries/Airavata/Model/Data/Replica/Types.php
index d6e208e..295c058 100644
--- a/app/libraries/Airavata/Model/Data/Replica/Types.php
+++ b/app/libraries/Airavata/Model/Data/Replica/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Data\Replica;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Dbevent/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Dbevent/Types.php b/app/libraries/Airavata/Model/Dbevent/Types.php
index bfbc983..0fa98e4 100644
--- a/app/libraries/Airavata/Model/Dbevent/Types.php
+++ b/app/libraries/Airavata/Model/Dbevent/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Dbevent;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Experiment/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Experiment/Types.php b/app/libraries/Airavata/Model/Experiment/Types.php
index f015ff4..7719ea7 100644
--- a/app/libraries/Airavata/Model/Experiment/Types.php
+++ b/app/libraries/Airavata/Model/Experiment/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Experiment;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Group/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Group/Types.php b/app/libraries/Airavata/Model/Group/Types.php
index ec7a68e..199e8cf 100644
--- a/app/libraries/Airavata/Model/Group/Types.php
+++ b/app/libraries/Airavata/Model/Group/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Group;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Job/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Job/Types.php b/app/libraries/Airavata/Model/Job/Types.php
index bb25859..361f278 100644
--- a/app/libraries/Airavata/Model/Job/Types.php
+++ b/app/libraries/Airavata/Model/Job/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Job;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Messaging/Event/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Messaging/Event/Types.php b/app/libraries/Airavata/Model/Messaging/Event/Types.php
index fed31a4..cb6df57 100644
--- a/app/libraries/Airavata/Model/Messaging/Event/Types.php
+++ b/app/libraries/Airavata/Model/Messaging/Event/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Messaging\Event;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Process/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Process/Types.php b/app/libraries/Airavata/Model/Process/Types.php
index dc69623..ca80fe5 100644
--- a/app/libraries/Airavata/Model/Process/Types.php
+++ b/app/libraries/Airavata/Model/Process/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Process;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Scheduling/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Scheduling/Types.php b/app/libraries/Airavata/Model/Scheduling/Types.php
index 9eb8ebb..2e556a4 100644
--- a/app/libraries/Airavata/Model/Scheduling/Types.php
+++ b/app/libraries/Airavata/Model/Scheduling/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Scheduling;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Security/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Security/Types.php b/app/libraries/Airavata/Model/Security/Types.php
index f388971..ce71bfc 100644
--- a/app/libraries/Airavata/Model/Security/Types.php
+++ b/app/libraries/Airavata/Model/Security/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Security;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Sharing/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Sharing/Types.php b/app/libraries/Airavata/Model/Sharing/Types.php
new file mode 100644
index 0000000..1e6c4b2
--- /dev/null
+++ b/app/libraries/Airavata/Model/Sharing/Types.php
@@ -0,0 +1,2360 @@
+<?php
+namespace Airavata\Model\Sharing;
+
+/**
+ * Autogenerated by Thrift Compiler (0.10.0)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+use Thrift\Base\TBase;
+use Thrift\Type\TType;
+use Thrift\Type\TMessageType;
+use Thrift\Exception\TException;
+use Thrift\Exception\TProtocolException;
+use Thrift\Protocol\TProtocol;
+use Thrift\Protocol\TBinaryProtocolAccelerated;
+use Thrift\Exception\TApplicationException;
+
+
+/**
+ * <p>This is an system internal enum used to define single user groups and multi users groups. Every user is also
+ * considered as a group in it's own right for implementation ease</p>
+ * 
+ */
+final class GroupCardinality {
+  const SINGLE_USER = 0;
+  const MULTI_USER = 1;
+  static public $__names = array(
+    0 => 'SINGLE_USER',
+    1 => 'MULTI_USER',
+  );
+}
+
+/**
+ * <p>Group types can be either user level or domain level groups.</p>
+ * 
+ */
+final class GroupType {
+  const DOMAIN_LEVEL_GROUP = 0;
+  const USER_LEVEL_GROUP = 1;
+  static public $__names = array(
+    0 => 'DOMAIN_LEVEL_GROUP',
+    1 => 'USER_LEVEL_GROUP',
+  );
+}
+
+/**
+ * <p>System internal data type to match group child types</p>
+ * 
+ */
+final class GroupChildType {
+  const USER = 0;
+  const GROUP = 1;
+  static public $__names = array(
+    0 => 'USER',
+    1 => 'GROUP',
+  );
+}
+
+/**
+ * <p>This list of fields that can be used to search entities</p>
+ * <li>NAME : Name of the entity</li>
+ * <li>DESCRIPTION : Description of the entity</li>
+ * <li>FULL_TEXT : Full text field of the entity</li>
+ * <li>PARENT_ENTITY_ID : Parent entity id of the entity</li>
+ * <li>OWNER_ID : Owner of the entity</li>
+ * <li>CREATED_TIME : Created time of the entity</li>
+ * <li>UPDATED_TIME : Updated time of the entity</li>
+ * <li>SHARED_COUNT : Number of directly shared users and groups</li>
+ * 
+ */
+final class EntitySearchField {
+  const NAME = 0;
+  const DESCRIPTION = 1;
+  const FULL_TEXT = 2;
+  const PARRENT_ENTITY_ID = 3;
+  const OWNER_ID = 4;
+  const PERMISSION_TYPE_ID = 5;
+  const CREATED_TIME = 6;
+  const UPDATED_TIME = 7;
+  const ENTITY_TYPE_ID = 8;
+  const SHARED_COUNT = 9;
+  static public $__names = array(
+    0 => 'NAME',
+    1 => 'DESCRIPTION',
+    2 => 'FULL_TEXT',
+    3 => 'PARRENT_ENTITY_ID',
+    4 => 'OWNER_ID',
+    5 => 'PERMISSION_TYPE_ID',
+    6 => 'CREATED_TIME',
+    7 => 'UPDATED_TIME',
+    8 => 'ENTITY_TYPE_ID',
+    9 => 'SHARED_COUNT',
+  );
+}
+
+/**
+ * <p>Different search operators that can be used with the entity search fields</p>
+ * <li>EQUAL : Simply matches for equality. Applicable for name, and parent entity id</li>
+ * <li>LIKE : Check for the condition %$FIELD% condition. Applicable for name, and description</li>
+ * <li>FULL_TEXT : Does a full text search. Only applicable for the FULL_TEXT field.</li>
+ * <li>GTE : Greater than or equal. Only applicable for created time, updated time and shared count.</li>
+ * <li>LTE : Less than or equal. Only applicable for created time, updated time and shared count.</li>
+ * 
+ */
+final class SearchCondition {
+  const EQUAL = 0;
+  const LIKE = 1;
+  const FULL_TEXT = 2;
+  const GTE = 3;
+  const LTE = 4;
+  const NOT = 5;
+  static public $__names = array(
+    0 => 'EQUAL',
+    1 => 'LIKE',
+    2 => 'FULL_TEXT',
+    3 => 'GTE',
+    4 => 'LTE',
+    5 => 'NOT',
+  );
+}
+
+/**
+ * <p>This is an internal enum type for managing sharings</p>
+ * 
+ */
+final class SharingType {
+  const DIRECT_NON_CASCADING = 0;
+  const DIRECT_CASCADING = 1;
+  const INDIRECT_CASCADING = 2;
+  static public $__names = array(
+    0 => 'DIRECT_NON_CASCADING',
+    1 => 'DIRECT_CASCADING',
+    2 => 'INDIRECT_CASCADING',
+  );
+}
+
+/**
+ * <p>Domain is the entity that enables multi-tenency in this componenet. Every tenant will be
+ * operating separately it's own silo which is identified by the domain id. In the current implementation domain id
+ * will be same as the domain name</p>
+ * <li>domainId : Will be generated by the server based on the domain name</li>
+ * <li><b>name</b> : A single word name that identifies the domain e.g seagrid, ultrascan</li>
+ * <li>description : A short description for the domain</li>
+ * <li>createdTime : Will be set by the system</li>
+ * <li>updatedTime : Will be set by the system</li>
+ * 
+ */
+class Domain {
+  static $_TSPEC;
+
+  /**
+   * @var string
+   */
+  public $domainId = "DO_NOT_SET_AT_CLIENTS_ID";
+  /**
+   * @var string
+   */
+  public $name = null;
+  /**
+   * @var string
+   */
+  public $description = null;
+  /**
+   * @var int
+   */
+  public $createdTime = null;
+  /**
+   * @var int
+   */
+  public $updatedTime = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'domainId',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'name',
+          'type' => TType::STRING,
+          ),
+        3 => array(
+          'var' => 'description',
+          'type' => TType::STRING,
+          ),
+        4 => array(
+          'var' => 'createdTime',
+          'type' => TType::I64,
+          ),
+        5 => array(
+          'var' => 'updatedTime',
+          'type' => TType::I64,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['domainId'])) {
+        $this->domainId = $vals['domainId'];
+      }
+      if (isset($vals['name'])) {
+        $this->name = $vals['name'];
+      }
+      if (isset($vals['description'])) {
+        $this->description = $vals['description'];
+      }
+      if (isset($vals['createdTime'])) {
+        $this->createdTime = $vals['createdTime'];
+      }
+      if (isset($vals['updatedTime'])) {
+        $this->updatedTime = $vals['updatedTime'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Domain';
+  }
+
+  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->domainId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->name);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->description);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 4:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->createdTime);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 5:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->updatedTime);
+          } 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('Domain');
+    if ($this->domainId !== null) {
+      $xfer += $output->writeFieldBegin('domainId', TType::STRING, 1);
+      $xfer += $output->writeString($this->domainId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->name !== null) {
+      $xfer += $output->writeFieldBegin('name', TType::STRING, 2);
+      $xfer += $output->writeString($this->name);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->description !== null) {
+      $xfer += $output->writeFieldBegin('description', TType::STRING, 3);
+      $xfer += $output->writeString($this->description);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->createdTime !== null) {
+      $xfer += $output->writeFieldBegin('createdTime', TType::I64, 4);
+      $xfer += $output->writeI64($this->createdTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->updatedTime !== null) {
+      $xfer += $output->writeFieldBegin('updatedTime', TType::I64, 5);
+      $xfer += $output->writeI64($this->updatedTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+/**
+ * <p>User is the model used to register a user in the system. Minimal user information will be required to provide
+ * regarding the user.</p>
+ * <li><b>userId</b> : User id provided by the client</li>
+ * <li><b>domainId</b> : Domain id for that user</li>
+ * <li><b>userName</b> : User name for the user</li>
+ * <li><b>firstName</b> : First name of the user</li>
+ * <li><b>lastName</b> : Last name of the user</li>
+ * <li><b>email</b> : Email address of the user</li>
+ * <li>icon : A binary field for storing the user icon</li>
+ * <li>createdTime : If client provides this value then the system will use it if not the current time will be set</li>
+ * <li>updatedTime : If client provides this value then the system will use it if not the current time will be set</li>
+ * 
+ */
+class User {
+  static $_TSPEC;
+
+  /**
+   * @var string
+   */
+  public $userId = null;
+  /**
+   * @var string
+   */
+  public $domainId = null;
+  /**
+   * @var string
+   */
+  public $userName = null;
+  /**
+   * @var string
+   */
+  public $firstName = null;
+  /**
+   * @var string
+   */
+  public $lastName = null;
+  /**
+   * @var string
+   */
+  public $email = null;
+  /**
+   * @var string
+   */
+  public $icon = null;
+  /**
+   * @var int
+   */
+  public $createdTime = null;
+  /**
+   * @var int
+   */
+  public $updatedTime = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'userId',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'domainId',
+          'type' => TType::STRING,
+          ),
+        3 => array(
+          'var' => 'userName',
+          'type' => TType::STRING,
+          ),
+        4 => array(
+          'var' => 'firstName',
+          'type' => TType::STRING,
+          ),
+        5 => array(
+          'var' => 'lastName',
+          'type' => TType::STRING,
+          ),
+        6 => array(
+          'var' => 'email',
+          'type' => TType::STRING,
+          ),
+        7 => array(
+          'var' => 'icon',
+          'type' => TType::STRING,
+          ),
+        8 => array(
+          'var' => 'createdTime',
+          'type' => TType::I64,
+          ),
+        9 => array(
+          'var' => 'updatedTime',
+          'type' => TType::I64,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['userId'])) {
+        $this->userId = $vals['userId'];
+      }
+      if (isset($vals['domainId'])) {
+        $this->domainId = $vals['domainId'];
+      }
+      if (isset($vals['userName'])) {
+        $this->userName = $vals['userName'];
+      }
+      if (isset($vals['firstName'])) {
+        $this->firstName = $vals['firstName'];
+      }
+      if (isset($vals['lastName'])) {
+        $this->lastName = $vals['lastName'];
+      }
+      if (isset($vals['email'])) {
+        $this->email = $vals['email'];
+      }
+      if (isset($vals['icon'])) {
+        $this->icon = $vals['icon'];
+      }
+      if (isset($vals['createdTime'])) {
+        $this->createdTime = $vals['createdTime'];
+      }
+      if (isset($vals['updatedTime'])) {
+        $this->updatedTime = $vals['updatedTime'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'User';
+  }
+
+  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->userId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->domainId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->userName);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 4:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->firstName);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 5:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->lastName);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 6:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->email);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 7:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->icon);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 8:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->createdTime);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 9:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->updatedTime);
+          } 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('User');
+    if ($this->userId !== null) {
+      $xfer += $output->writeFieldBegin('userId', TType::STRING, 1);
+      $xfer += $output->writeString($this->userId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->domainId !== null) {
+      $xfer += $output->writeFieldBegin('domainId', TType::STRING, 2);
+      $xfer += $output->writeString($this->domainId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->userName !== null) {
+      $xfer += $output->writeFieldBegin('userName', TType::STRING, 3);
+      $xfer += $output->writeString($this->userName);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->firstName !== null) {
+      $xfer += $output->writeFieldBegin('firstName', TType::STRING, 4);
+      $xfer += $output->writeString($this->firstName);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->lastName !== null) {
+      $xfer += $output->writeFieldBegin('lastName', TType::STRING, 5);
+      $xfer += $output->writeString($this->lastName);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->email !== null) {
+      $xfer += $output->writeFieldBegin('email', TType::STRING, 6);
+      $xfer += $output->writeString($this->email);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->icon !== null) {
+      $xfer += $output->writeFieldBegin('icon', TType::STRING, 7);
+      $xfer += $output->writeString($this->icon);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->createdTime !== null) {
+      $xfer += $output->writeFieldBegin('createdTime', TType::I64, 8);
+      $xfer += $output->writeI64($this->createdTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->updatedTime !== null) {
+      $xfer += $output->writeFieldBegin('updatedTime', TType::I64, 9);
+      $xfer += $output->writeI64($this->updatedTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+/**
+ * <p>User group is a collection of users.</p>
+ *  <li><b>groupId</b> : Group id provided by the client</li>
+ *  <li><b>domainId</b> : Domain id for this user group</li>
+ *  <li><b>name</b> : Name for the user group. should be one word</li>
+ *  <li>description : Short description for the group.</li>
+ *  <li><b>ownerId</b> : Owner id of this group.</li>
+ *  <li><b>groupType</b> : Group type (DOMAIN_LEVEL_GROUP, USER_LEVEL_GROUP)</li>
+ *  <li><b>groupCardinality</b> : Group cardinality (SINGLE_USER, MULTI_USER)</li>
+ *  <li>createdTime : Will be set by the system</li>
+ *  <li>updatedTime : Will be set by the system</li>
+ *  
+ */
+class UserGroup {
+  static $_TSPEC;
+
+  /**
+   * @var string
+   */
+  public $groupId = null;
+  /**
+   * @var string
+   */
+  public $domainId = null;
+  /**
+   * @var string
+   */
+  public $name = null;
+  /**
+   * @var string
+   */
+  public $description = null;
+  /**
+   * @var string
+   */
+  public $ownerId = null;
+  /**
+   * @var int
+   */
+  public $groupType = null;
+  /**
+   * @var int
+   */
+  public $groupCardinality = null;
+  /**
+   * @var int
+   */
+  public $createdTime = null;
+  /**
+   * @var int
+   */
+  public $updatedTime = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'groupId',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'domainId',
+          'type' => TType::STRING,
+          ),
+        3 => array(
+          'var' => 'name',
+          'type' => TType::STRING,
+          ),
+        4 => array(
+          'var' => 'description',
+          'type' => TType::STRING,
+          ),
+        5 => array(
+          'var' => 'ownerId',
+          'type' => TType::STRING,
+          ),
+        6 => array(
+          'var' => 'groupType',
+          'type' => TType::I32,
+          ),
+        7 => array(
+          'var' => 'groupCardinality',
+          'type' => TType::I32,
+          ),
+        8 => array(
+          'var' => 'createdTime',
+          'type' => TType::I64,
+          ),
+        9 => array(
+          'var' => 'updatedTime',
+          'type' => TType::I64,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['groupId'])) {
+        $this->groupId = $vals['groupId'];
+      }
+      if (isset($vals['domainId'])) {
+        $this->domainId = $vals['domainId'];
+      }
+      if (isset($vals['name'])) {
+        $this->name = $vals['name'];
+      }
+      if (isset($vals['description'])) {
+        $this->description = $vals['description'];
+      }
+      if (isset($vals['ownerId'])) {
+        $this->ownerId = $vals['ownerId'];
+      }
+      if (isset($vals['groupType'])) {
+        $this->groupType = $vals['groupType'];
+      }
+      if (isset($vals['groupCardinality'])) {
+        $this->groupCardinality = $vals['groupCardinality'];
+      }
+      if (isset($vals['createdTime'])) {
+        $this->createdTime = $vals['createdTime'];
+      }
+      if (isset($vals['updatedTime'])) {
+        $this->updatedTime = $vals['updatedTime'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'UserGroup';
+  }
+
+  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->groupId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->domainId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->name);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 4:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->description);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 5:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->ownerId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 6:
+          if ($ftype == TType::I32) {
+            $xfer += $input->readI32($this->groupType);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 7:
+          if ($ftype == TType::I32) {
+            $xfer += $input->readI32($this->groupCardinality);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 8:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->createdTime);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 9:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->updatedTime);
+          } 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('UserGroup');
+    if ($this->groupId !== null) {
+      $xfer += $output->writeFieldBegin('groupId', TType::STRING, 1);
+      $xfer += $output->writeString($this->groupId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->domainId !== null) {
+      $xfer += $output->writeFieldBegin('domainId', TType::STRING, 2);
+      $xfer += $output->writeString($this->domainId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->name !== null) {
+      $xfer += $output->writeFieldBegin('name', TType::STRING, 3);
+      $xfer += $output->writeString($this->name);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->description !== null) {
+      $xfer += $output->writeFieldBegin('description', TType::STRING, 4);
+      $xfer += $output->writeString($this->description);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ownerId !== null) {
+      $xfer += $output->writeFieldBegin('ownerId', TType::STRING, 5);
+      $xfer += $output->writeString($this->ownerId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->groupType !== null) {
+      $xfer += $output->writeFieldBegin('groupType', TType::I32, 6);
+      $xfer += $output->writeI32($this->groupType);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->groupCardinality !== null) {
+      $xfer += $output->writeFieldBegin('groupCardinality', TType::I32, 7);
+      $xfer += $output->writeI32($this->groupCardinality);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->createdTime !== null) {
+      $xfer += $output->writeFieldBegin('createdTime', TType::I64, 8);
+      $xfer += $output->writeI64($this->createdTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->updatedTime !== null) {
+      $xfer += $output->writeFieldBegin('updatedTime', TType::I64, 9);
+      $xfer += $output->writeI64($this->updatedTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+/**
+ * <p>System internal data type to map group memberships</p>
+ * 
+ */
+class GroupMembership {
+  static $_TSPEC;
+
+  /**
+   * @var string
+   */
+  public $parentId = null;
+  /**
+   * @var string
+   */
+  public $childId = null;
+  /**
+   * @var string
+   */
+  public $domainId = null;
+  /**
+   * @var int
+   */
+  public $childType = null;
+  /**
+   * @var int
+   */
+  public $createdTime = null;
+  /**
+   * @var int
+   */
+  public $updatedTime = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'parentId',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'childId',
+          'type' => TType::STRING,
+          ),
+        3 => array(
+          'var' => 'domainId',
+          'type' => TType::STRING,
+          ),
+        4 => array(
+          'var' => 'childType',
+          'type' => TType::I32,
+          ),
+        5 => array(
+          'var' => 'createdTime',
+          'type' => TType::I64,
+          ),
+        6 => array(
+          'var' => 'updatedTime',
+          'type' => TType::I64,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['parentId'])) {
+        $this->parentId = $vals['parentId'];
+      }
+      if (isset($vals['childId'])) {
+        $this->childId = $vals['childId'];
+      }
+      if (isset($vals['domainId'])) {
+        $this->domainId = $vals['domainId'];
+      }
+      if (isset($vals['childType'])) {
+        $this->childType = $vals['childType'];
+      }
+      if (isset($vals['createdTime'])) {
+        $this->createdTime = $vals['createdTime'];
+      }
+      if (isset($vals['updatedTime'])) {
+        $this->updatedTime = $vals['updatedTime'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'GroupMembership';
+  }
+
+  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->parentId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->childId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->domainId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 4:
+          if ($ftype == TType::I32) {
+            $xfer += $input->readI32($this->childType);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 5:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->createdTime);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 6:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->updatedTime);
+          } 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('GroupMembership');
+    if ($this->parentId !== null) {
+      $xfer += $output->writeFieldBegin('parentId', TType::STRING, 1);
+      $xfer += $output->writeString($this->parentId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->childId !== null) {
+      $xfer += $output->writeFieldBegin('childId', TType::STRING, 2);
+      $xfer += $output->writeString($this->childId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->domainId !== null) {
+      $xfer += $output->writeFieldBegin('domainId', TType::STRING, 3);
+      $xfer += $output->writeString($this->domainId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->childType !== null) {
+      $xfer += $output->writeFieldBegin('childType', TType::I32, 4);
+      $xfer += $output->writeI32($this->childType);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->createdTime !== null) {
+      $xfer += $output->writeFieldBegin('createdTime', TType::I64, 5);
+      $xfer += $output->writeI64($this->createdTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->updatedTime !== null) {
+      $xfer += $output->writeFieldBegin('updatedTime', TType::I64, 6);
+      $xfer += $output->writeI64($this->updatedTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+/**
+ * <p>client defined entity types</p>
+ * <li><b>entityTypeId</b> : Entity type id provided by the client</li>
+ * <li><b>domainId</b> : Domain id of the domain.</li>
+ * <li><b>name</b> : Name for the entity type. Should be a single word.</li>
+ * <li>description : Short description for the entity type.</li>
+ * <li>createdTime : Will be set by the system</li>
+ * <li>updatedTime : Will be set by the system</li>
+ * 
+ */
+class EntityType {
+  static $_TSPEC;
+
+  /**
+   * @var string
+   */
+  public $entityTypeId = null;
+  /**
+   * @var string
+   */
+  public $domainId = null;
+  /**
+   * @var string
+   */
+  public $name = null;
+  /**
+   * @var string
+   */
+  public $description = null;
+  /**
+   * @var int
+   */
+  public $createdTime = null;
+  /**
+   * @var int
+   */
+  public $updatedTime = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'entityTypeId',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'domainId',
+          'type' => TType::STRING,
+          ),
+        3 => array(
+          'var' => 'name',
+          'type' => TType::STRING,
+          ),
+        4 => array(
+          'var' => 'description',
+          'type' => TType::STRING,
+          ),
+        5 => array(
+          'var' => 'createdTime',
+          'type' => TType::I64,
+          ),
+        6 => array(
+          'var' => 'updatedTime',
+          'type' => TType::I64,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['entityTypeId'])) {
+        $this->entityTypeId = $vals['entityTypeId'];
+      }
+      if (isset($vals['domainId'])) {
+        $this->domainId = $vals['domainId'];
+      }
+      if (isset($vals['name'])) {
+        $this->name = $vals['name'];
+      }
+      if (isset($vals['description'])) {
+        $this->description = $vals['description'];
+      }
+      if (isset($vals['createdTime'])) {
+        $this->createdTime = $vals['createdTime'];
+      }
+      if (isset($vals['updatedTime'])) {
+        $this->updatedTime = $vals['updatedTime'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'EntityType';
+  }
+
+  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->entityTypeId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->domainId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->name);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 4:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->description);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 5:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->createdTime);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 6:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->updatedTime);
+          } 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('EntityType');
+    if ($this->entityTypeId !== null) {
+      $xfer += $output->writeFieldBegin('entityTypeId', TType::STRING, 1);
+      $xfer += $output->writeString($this->entityTypeId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->domainId !== null) {
+      $xfer += $output->writeFieldBegin('domainId', TType::STRING, 2);
+      $xfer += $output->writeString($this->domainId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->name !== null) {
+      $xfer += $output->writeFieldBegin('name', TType::STRING, 3);
+      $xfer += $output->writeString($this->name);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->description !== null) {
+      $xfer += $output->writeFieldBegin('description', TType::STRING, 4);
+      $xfer += $output->writeString($this->description);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->createdTime !== null) {
+      $xfer += $output->writeFieldBegin('createdTime', TType::I64, 5);
+      $xfer += $output->writeI64($this->createdTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->updatedTime !== null) {
+      $xfer += $output->writeFieldBegin('updatedTime', TType::I64, 6);
+      $xfer += $output->writeI64($this->updatedTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+/**
+ * <p>Container object for search criteria</p>
+ * <li><b>searchField</b> : Entity search field</li>
+ * <li><b>value</b> : Search value</li>
+ * <li><b>searchCondition</b> : EQUAL, LIKE etc..</li>
+ * 
+ */
+class SearchCriteria {
+  static $_TSPEC;
+
+  /**
+   * @var int
+   */
+  public $searchField = null;
+  /**
+   * @var string
+   */
+  public $value = null;
+  /**
+   * @var int
+   */
+  public $searchCondition = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'searchField',
+          'type' => TType::I32,
+          ),
+        2 => array(
+          'var' => 'value',
+          'type' => TType::STRING,
+          ),
+        3 => array(
+          'var' => 'searchCondition',
+          'type' => TType::I32,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['searchField'])) {
+        $this->searchField = $vals['searchField'];
+      }
+      if (isset($vals['value'])) {
+        $this->value = $vals['value'];
+      }
+      if (isset($vals['searchCondition'])) {
+        $this->searchCondition = $vals['searchCondition'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'SearchCriteria';
+  }
+
+  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::I32) {
+            $xfer += $input->readI32($this->searchField);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->value);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::I32) {
+            $xfer += $input->readI32($this->searchCondition);
+          } 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('SearchCriteria');
+    if ($this->searchField !== null) {
+      $xfer += $output->writeFieldBegin('searchField', TType::I32, 1);
+      $xfer += $output->writeI32($this->searchField);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->value !== null) {
+      $xfer += $output->writeFieldBegin('value', TType::STRING, 2);
+      $xfer += $output->writeString($this->value);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->searchCondition !== null) {
+      $xfer += $output->writeFieldBegin('searchCondition', TType::I32, 3);
+      $xfer += $output->writeI32($this->searchCondition);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+/**
+ * <p>Entity object which is used to register an entity in the system.</p>
+ * <li><b>entityId</b> : Entity id provided by the client</li>
+ * <li><b>domainId</b> : Domain id</li>
+ * <li><b>entityTypeId</b> : Entity type id</li>
+ * <li><b>ownerId</b> : Owner id</li>
+ * <li>parentEntityId : Parent entity id</li>
+ * <li><b>name</b> : Name</li>
+ * <li>description : Short description for the entity</li>
+ * <li>binaryData : Any information stored in binary format</li>
+ * <li>fullText : A string which will be considered for full text search</li>
+ * <li><b>originalEntityCreationTime</b> : When registering old records what is the original entity creation time. If not
+ * set will be default to current time</li>
+ * <li>createdTime : Will be set by the system</li>
+ * <li>updatedTime : Will be set by the system</li>
+ * 
+ */
+class Entity {
+  static $_TSPEC;
+
+  /**
+   * @var string
+   */
+  public $entityId = null;
+  /**
+   * @var string
+   */
+  public $domainId = null;
+  /**
+   * @var string
+   */
+  public $entityTypeId = null;
+  /**
+   * @var string
+   */
+  public $ownerId = null;
+  /**
+   * @var string
+   */
+  public $parentEntityId = null;
+  /**
+   * @var string
+   */
+  public $name = null;
+  /**
+   * @var string
+   */
+  public $description = null;
+  /**
+   * @var string
+   */
+  public $binaryData = null;
+  /**
+   * @var string
+   */
+  public $fullText = null;
+  /**
+   * @var int
+   */
+  public $sharedCount = 0;
+  /**
+   * @var int
+   */
+  public $originalEntityCreationTime = null;
+  /**
+   * @var int
+   */
+  public $createdTime = null;
+  /**
+   * @var int
+   */
+  public $updatedTime = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'entityId',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'domainId',
+          'type' => TType::STRING,
+          ),
+        3 => array(
+          'var' => 'entityTypeId',
+          'type' => TType::STRING,
+          ),
+        4 => array(
+          'var' => 'ownerId',
+          'type' => TType::STRING,
+          ),
+        5 => array(
+          'var' => 'parentEntityId',
+          'type' => TType::STRING,
+          ),
+        6 => array(
+          'var' => 'name',
+          'type' => TType::STRING,
+          ),
+        7 => array(
+          'var' => 'description',
+          'type' => TType::STRING,
+          ),
+        8 => array(
+          'var' => 'binaryData',
+          'type' => TType::STRING,
+          ),
+        9 => array(
+          'var' => 'fullText',
+          'type' => TType::STRING,
+          ),
+        10 => array(
+          'var' => 'sharedCount',
+          'type' => TType::I64,
+          ),
+        11 => array(
+          'var' => 'originalEntityCreationTime',
+          'type' => TType::I64,
+          ),
+        12 => array(
+          'var' => 'createdTime',
+          'type' => TType::I64,
+          ),
+        13 => array(
+          'var' => 'updatedTime',
+          'type' => TType::I64,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['entityId'])) {
+        $this->entityId = $vals['entityId'];
+      }
+      if (isset($vals['domainId'])) {
+        $this->domainId = $vals['domainId'];
+      }
+      if (isset($vals['entityTypeId'])) {
+        $this->entityTypeId = $vals['entityTypeId'];
+      }
+      if (isset($vals['ownerId'])) {
+        $this->ownerId = $vals['ownerId'];
+      }
+      if (isset($vals['parentEntityId'])) {
+        $this->parentEntityId = $vals['parentEntityId'];
+      }
+      if (isset($vals['name'])) {
+        $this->name = $vals['name'];
+      }
+      if (isset($vals['description'])) {
+        $this->description = $vals['description'];
+      }
+      if (isset($vals['binaryData'])) {
+        $this->binaryData = $vals['binaryData'];
+      }
+      if (isset($vals['fullText'])) {
+        $this->fullText = $vals['fullText'];
+      }
+      if (isset($vals['sharedCount'])) {
+        $this->sharedCount = $vals['sharedCount'];
+      }
+      if (isset($vals['originalEntityCreationTime'])) {
+        $this->originalEntityCreationTime = $vals['originalEntityCreationTime'];
+      }
+      if (isset($vals['createdTime'])) {
+        $this->createdTime = $vals['createdTime'];
+      }
+      if (isset($vals['updatedTime'])) {
+        $this->updatedTime = $vals['updatedTime'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Entity';
+  }
+
+  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->entityId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->domainId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->entityTypeId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 4:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->ownerId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 5:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->parentEntityId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 6:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->name);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 7:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->description);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 8:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->binaryData);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 9:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->fullText);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 10:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->sharedCount);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 11:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->originalEntityCreationTime);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 12:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->createdTime);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 13:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->updatedTime);
+          } 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('Entity');
+    if ($this->entityId !== null) {
+      $xfer += $output->writeFieldBegin('entityId', TType::STRING, 1);
+      $xfer += $output->writeString($this->entityId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->domainId !== null) {
+      $xfer += $output->writeFieldBegin('domainId', TType::STRING, 2);
+      $xfer += $output->writeString($this->domainId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->entityTypeId !== null) {
+      $xfer += $output->writeFieldBegin('entityTypeId', TType::STRING, 3);
+      $xfer += $output->writeString($this->entityTypeId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ownerId !== null) {
+      $xfer += $output->writeFieldBegin('ownerId', TType::STRING, 4);
+      $xfer += $output->writeString($this->ownerId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->parentEntityId !== null) {
+      $xfer += $output->writeFieldBegin('parentEntityId', TType::STRING, 5);
+      $xfer += $output->writeString($this->parentEntityId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->name !== null) {
+      $xfer += $output->writeFieldBegin('name', TType::STRING, 6);
+      $xfer += $output->writeString($this->name);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->description !== null) {
+      $xfer += $output->writeFieldBegin('description', TType::STRING, 7);
+      $xfer += $output->writeString($this->description);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->binaryData !== null) {
+      $xfer += $output->writeFieldBegin('binaryData', TType::STRING, 8);
+      $xfer += $output->writeString($this->binaryData);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->fullText !== null) {
+      $xfer += $output->writeFieldBegin('fullText', TType::STRING, 9);
+      $xfer += $output->writeString($this->fullText);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->sharedCount !== null) {
+      $xfer += $output->writeFieldBegin('sharedCount', TType::I64, 10);
+      $xfer += $output->writeI64($this->sharedCount);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->originalEntityCreationTime !== null) {
+      $xfer += $output->writeFieldBegin('originalEntityCreationTime', TType::I64, 11);
+      $xfer += $output->writeI64($this->originalEntityCreationTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->createdTime !== null) {
+      $xfer += $output->writeFieldBegin('createdTime', TType::I64, 12);
+      $xfer += $output->writeI64($this->createdTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->updatedTime !== null) {
+      $xfer += $output->writeFieldBegin('updatedTime', TType::I64, 13);
+      $xfer += $output->writeI64($this->updatedTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+/**
+ * <p>Object for creating client defined permission type</p>
+ * <li><b>permissionTypeId</b> : Permission type id provided by the client</li>
+ * <li><b>domainId</b> : Domain id</li>
+ * <li><b>name</b> : Single word name for the permission</li>
+ * <li>description : Short description for the permission type</li>
+ * <li>createdTime : Will be set by the system</li>
+ * <li>updatedTime : Will be set by the system</li>
+ * 
+ */
+class PermissionType {
+  static $_TSPEC;
+
+  /**
+   * @var string
+   */
+  public $permissionTypeId = null;
+  /**
+   * @var string
+   */
+  public $domainId = null;
+  /**
+   * @var string
+   */
+  public $name = null;
+  /**
+   * @var string
+   */
+  public $description = null;
+  /**
+   * @var int
+   */
+  public $createdTime = null;
+  /**
+   * @var int
+   */
+  public $updatedTime = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'permissionTypeId',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'domainId',
+          'type' => TType::STRING,
+          ),
+        3 => array(
+          'var' => 'name',
+          'type' => TType::STRING,
+          ),
+        4 => array(
+          'var' => 'description',
+          'type' => TType::STRING,
+          ),
+        5 => array(
+          'var' => 'createdTime',
+          'type' => TType::I64,
+          ),
+        6 => array(
+          'var' => 'updatedTime',
+          'type' => TType::I64,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['permissionTypeId'])) {
+        $this->permissionTypeId = $vals['permissionTypeId'];
+      }
+      if (isset($vals['domainId'])) {
+        $this->domainId = $vals['domainId'];
+      }
+      if (isset($vals['name'])) {
+        $this->name = $vals['name'];
+      }
+      if (isset($vals['description'])) {
+        $this->description = $vals['description'];
+      }
+      if (isset($vals['createdTime'])) {
+        $this->createdTime = $vals['createdTime'];
+      }
+      if (isset($vals['updatedTime'])) {
+        $this->updatedTime = $vals['updatedTime'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'PermissionType';
+  }
+
+  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->permissionTypeId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->domainId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->name);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 4:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->description);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 5:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->createdTime);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 6:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->updatedTime);
+          } 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('PermissionType');
+    if ($this->permissionTypeId !== null) {
+      $xfer += $output->writeFieldBegin('permissionTypeId', TType::STRING, 1);
+      $xfer += $output->writeString($this->permissionTypeId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->domainId !== null) {
+      $xfer += $output->writeFieldBegin('domainId', TType::STRING, 2);
+      $xfer += $output->writeString($this->domainId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->name !== null) {
+      $xfer += $output->writeFieldBegin('name', TType::STRING, 3);
+      $xfer += $output->writeString($this->name);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->description !== null) {
+      $xfer += $output->writeFieldBegin('description', TType::STRING, 4);
+      $xfer += $output->writeString($this->description);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->createdTime !== null) {
+      $xfer += $output->writeFieldBegin('createdTime', TType::I64, 5);
+      $xfer += $output->writeI64($this->createdTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->updatedTime !== null) {
+      $xfer += $output->writeFieldBegin('updatedTime', TType::I64, 6);
+      $xfer += $output->writeI64($this->updatedTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+/**
+ * <p>This is an internal enum type for managing sharings</p>
+ * 
+ */
+class Sharing {
+  static $_TSPEC;
+
+  /**
+   * @var string
+   */
+  public $permissionTypeId = null;
+  /**
+   * @var string
+   */
+  public $entityId = null;
+  /**
+   * @var string
+   */
+  public $groupId = null;
+  /**
+   * @var int
+   */
+  public $sharingType = null;
+  /**
+   * @var string
+   */
+  public $domainId = null;
+  /**
+   * @var string
+   */
+  public $inheritedParentId = null;
+  /**
+   * @var int
+   */
+  public $createdTime = null;
+  /**
+   * @var int
+   */
+  public $updatedTime = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'permissionTypeId',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'entityId',
+          'type' => TType::STRING,
+          ),
+        3 => array(
+          'var' => 'groupId',
+          'type' => TType::STRING,
+          ),
+        4 => array(
+          'var' => 'sharingType',
+          'type' => TType::I32,
+          ),
+        5 => array(
+          'var' => 'domainId',
+          'type' => TType::STRING,
+          ),
+        6 => array(
+          'var' => 'inheritedParentId',
+          'type' => TType::STRING,
+          ),
+        7 => array(
+          'var' => 'createdTime',
+          'type' => TType::I64,
+          ),
+        8 => array(
+          'var' => 'updatedTime',
+          'type' => TType::I64,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['permissionTypeId'])) {
+        $this->permissionTypeId = $vals['permissionTypeId'];
+      }
+      if (isset($vals['entityId'])) {
+        $this->entityId = $vals['entityId'];
+      }
+      if (isset($vals['groupId'])) {
+        $this->groupId = $vals['groupId'];
+      }
+      if (isset($vals['sharingType'])) {
+        $this->sharingType = $vals['sharingType'];
+      }
+      if (isset($vals['domainId'])) {
+        $this->domainId = $vals['domainId'];
+      }
+      if (isset($vals['inheritedParentId'])) {
+        $this->inheritedParentId = $vals['inheritedParentId'];
+      }
+      if (isset($vals['createdTime'])) {
+        $this->createdTime = $vals['createdTime'];
+      }
+      if (isset($vals['updatedTime'])) {
+        $this->updatedTime = $vals['updatedTime'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Sharing';
+  }
+
+  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->permissionTypeId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->entityId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->groupId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 4:
+          if ($ftype == TType::I32) {
+            $xfer += $input->readI32($this->sharingType);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 5:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->domainId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 6:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->inheritedParentId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 7:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->createdTime);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 8:
+          if ($ftype == TType::I64) {
+            $xfer += $input->readI64($this->updatedTime);
+          } 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('Sharing');
+    if ($this->permissionTypeId !== null) {
+      $xfer += $output->writeFieldBegin('permissionTypeId', TType::STRING, 1);
+      $xfer += $output->writeString($this->permissionTypeId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->entityId !== null) {
+      $xfer += $output->writeFieldBegin('entityId', TType::STRING, 2);
+      $xfer += $output->writeString($this->entityId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->groupId !== null) {
+      $xfer += $output->writeFieldBegin('groupId', TType::STRING, 3);
+      $xfer += $output->writeString($this->groupId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->sharingType !== null) {
+      $xfer += $output->writeFieldBegin('sharingType', TType::I32, 4);
+      $xfer += $output->writeI32($this->sharingType);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->domainId !== null) {
+      $xfer += $output->writeFieldBegin('domainId', TType::STRING, 5);
+      $xfer += $output->writeString($this->domainId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->inheritedParentId !== null) {
+      $xfer += $output->writeFieldBegin('inheritedParentId', TType::STRING, 6);
+      $xfer += $output->writeString($this->inheritedParentId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->createdTime !== null) {
+      $xfer += $output->writeFieldBegin('createdTime', TType::I64, 7);
+      $xfer += $output->writeI64($this->createdTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->updatedTime !== null) {
+      $xfer += $output->writeFieldBegin('updatedTime', TType::I64, 8);
+      $xfer += $output->writeI64($this->updatedTime);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+/**
+ * <p>Exception model used in the sharing registry service</p>
+ * 
+ */
+class SharingRegistryException extends TException {
+  static $_TSPEC;
+
+  /**
+   * @var string
+   */
+  public $message = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'message',
+          'type' => TType::STRING,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['message'])) {
+        $this->message = $vals['message'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'SharingRegistryException';
+  }
+
+  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->message);
+          } 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('SharingRegistryException');
+    if ($this->message !== null) {
+      $xfer += $output->writeFieldBegin('message', TType::STRING, 1);
+      $xfer += $output->writeString($this->message);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+/**
+ * This exception is thrown when you try to save a duplicate entity that already exists
+ *   in the database.
+ * 
+ *   message: contains the associated error message
+ * 
+ */
+class DuplicateEntryException extends TException {
+  static $_TSPEC;
+
+  /**
+   * @var string
+   */
+  public $message = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'message',
+          'type' => TType::STRING,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['message'])) {
+        $this->message = $vals['message'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'DuplicateEntryException';
+  }
+
+  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->message);
+          } 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('DuplicateEntryException');
+    if ($this->message !== null) {
+      $xfer += $output->writeFieldBegin('message', TType::STRING, 1);
+      $xfer += $output->writeString($this->message);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+final class Constant extends \Thrift\Type\TConstant {
+  static protected $DO_NOT_SET_AT_CLIENTS_ID;
+
+  static protected function init_DO_NOT_SET_AT_CLIENTS_ID() {
+    return "DO_NOT_SET_AT_CLIENTS_ID";
+  }
+}
+
+

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Status/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Status/Types.php b/app/libraries/Airavata/Model/Status/Types.php
index 0a0a23b..a992fd0 100644
--- a/app/libraries/Airavata/Model/Status/Types.php
+++ b/app/libraries/Airavata/Model/Status/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Status;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated

http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/135abc69/app/libraries/Airavata/Model/Task/Types.php
----------------------------------------------------------------------
diff --git a/app/libraries/Airavata/Model/Task/Types.php b/app/libraries/Airavata/Model/Task/Types.php
index 202fde8..5691abf 100644
--- a/app/libraries/Airavata/Model/Task/Types.php
+++ b/app/libraries/Airavata/Model/Task/Types.php
@@ -2,7 +2,7 @@
 namespace Airavata\Model\Task;
 
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated