http://git-wip-us.apache.org/repos/asf/airavata/blob/82e57526/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
----------------------------------------------------------------------
diff --git 
a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
 
b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
index b5d948b..9b8c7e9 100644
--- 
a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
+++ 
b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
@@ -2850,14 +2850,18 @@ class AiravataHandler : virtual public AiravataIf {
    * @param userId
    *   The identifier for the requested user resource profile.
    * 
+   * @param gatewayID
+   *   The identifier to link a gateway for the requested user resource 
profile.
+   * 
    * @return UserResourceProfile
    *    User Resource Profile Object.
    * 
    * 
    * @param authzToken
    * @param userId
+   * @param gatewayID
    */
-  void getUserResourceProfile( 
::apache::airavata::model::appcatalog::userresourceprofile::UserResourceProfile&
 _return, const  ::apache::airavata::model::security::AuthzToken& authzToken, 
const std::string& userId) {
+  void getUserResourceProfile( 
::apache::airavata::model::appcatalog::userresourceprofile::UserResourceProfile&
 _return, const  ::apache::airavata::model::security::AuthzToken& authzToken, 
const std::string& userId, const std::string& gatewayID) {
     // Your implementation goes here
     printf("getUserResourceProfile\n");
   }
@@ -2868,6 +2872,9 @@ class AiravataHandler : virtual public AiravataIf {
    * @param userId
    *   The identifier for the requested user resource to be updated.
    * 
+   * @param gatewayID
+   *   The identifier to link a gateway for the requested user resource 
profile.
+   * 
    * @param UserResourceProfile
    *    User Resource Profile Object.
    * 
@@ -2877,9 +2884,10 @@ class AiravataHandler : virtual public AiravataIf {
    * 
    * @param authzToken
    * @param userId
+   * @param gatewayID
    * @param userResourceProfile
    */
-  bool updateUserResourceProfile(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const  
::apache::airavata::model::appcatalog::userresourceprofile::UserResourceProfile&
 userResourceProfile) {
+  bool updateUserResourceProfile(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& gatewayID, const  
::apache::airavata::model::appcatalog::userresourceprofile::UserResourceProfile&
 userResourceProfile) {
     // Your implementation goes here
     printf("updateUserResourceProfile\n");
   }
@@ -2890,14 +2898,18 @@ class AiravataHandler : virtual public AiravataIf {
    * @param userId
    *   The identifier for the requested user resource to be deleted.
    * 
+   * @param gatewayID
+   *   The identifier to link a gateway for the requested user resource 
profile.
+   * 
    * @return status
    *   Returns a success/failure of the deletion.
    * 
    * 
    * @param authzToken
    * @param userId
+   * @param gatewayID
    */
-  bool deleteUserResourceProfile(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId) {
+  bool deleteUserResourceProfile(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& gatewayID) {
     // Your implementation goes here
     printf("deleteUserResourceProfile\n");
   }
@@ -2908,6 +2920,9 @@ class AiravataHandler : virtual public AiravataIf {
    * @param userId
    *   The identifier for the User resource profile to be added.
    * 
+   * @param gatewayID
+   *   The identifier to link a gateway for the requested user resource 
profile.
+   * 
    * @param computeResourceId
    *   Preferences related to a particular compute resource
    * 
@@ -2921,10 +2936,11 @@ class AiravataHandler : virtual public AiravataIf {
    * 
    * @param authzToken
    * @param userId
-   * @param computeResourceId
-   * @param computeResourcePreference
+   * @param gatewayID
+   * @param userComputeResourceId
+   * @param userComputeResourcePreference
    */
-  bool addUserComputeResourcePreference(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& computeResourceId, const  
::apache::airavata::model::appcatalog::userresourceprofile::ComputeResourcePreference&
 computeResourcePreference) {
+  bool addUserComputeResourcePreference(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& gatewayID, const std::string& userComputeResourceId, 
const  
::apache::airavata::model::appcatalog::userresourceprofile::UserComputeResourcePreference&
 userComputeResourcePreference) {
     // Your implementation goes here
     printf("addUserComputeResourcePreference\n");
   }
@@ -2935,6 +2951,9 @@ class AiravataHandler : virtual public AiravataIf {
    * @param userId
    *   The identifier of the user resource profile to be added.
    * 
+   * @param gatewayID
+   *   The identifier to link a gateway for the requested user resource 
profile.
+   * 
    * @param storageResourceId
    *   Preferences related to a particular compute resource
    * 
@@ -2948,10 +2967,11 @@ class AiravataHandler : virtual public AiravataIf {
    * 
    * @param authzToken
    * @param userId
-   * @param storageResourceId
-   * @param storagePreference
+   * @param gatewayID
+   * @param userStorageResourceId
+   * @param userStoragePreference
    */
-  bool addUserStoragePreference(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& storageResourceId, const  
::apache::airavata::model::appcatalog::userresourceprofile::StoragePreference& 
storagePreference) {
+  bool addUserStoragePreference(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& gatewayID, const std::string& userStorageResourceId, 
const  
::apache::airavata::model::appcatalog::userresourceprofile::UserStoragePreference&
 userStoragePreference) {
     // Your implementation goes here
     printf("addUserStoragePreference\n");
   }
@@ -2963,7 +2983,10 @@ class AiravataHandler : virtual public AiravataIf {
    * @param userId
    *   The identifier for the user profile to be requested
    * 
-   * @param computeResourceId
+   * @param gatewayID
+   *   The identifier to link a gateway for the requested user resource 
profile.
+   * 
+   * @param userComputeResourceId
    *   Preferences related to a particular compute resource
    * 
    * @return computeResourcePreference
@@ -2972,9 +2995,10 @@ class AiravataHandler : virtual public AiravataIf {
    * 
    * @param authzToken
    * @param userId
-   * @param computeResourceId
+   * @param gatewayID
+   * @param userComputeResourceId
    */
-  void getUserComputeResourcePreference( 
::apache::airavata::model::appcatalog::userresourceprofile::ComputeResourcePreference&
 _return, const  ::apache::airavata::model::security::AuthzToken& authzToken, 
const std::string& userId, const std::string& computeResourceId) {
+  void getUserComputeResourcePreference( 
::apache::airavata::model::appcatalog::userresourceprofile::UserComputeResourcePreference&
 _return, const  ::apache::airavata::model::security::AuthzToken& authzToken, 
const std::string& userId, const std::string& gatewayID, const std::string& 
userComputeResourceId) {
     // Your implementation goes here
     printf("getUserComputeResourcePreference\n");
   }
@@ -2986,24 +3010,73 @@ class AiravataHandler : virtual public AiravataIf {
    * @param userId
    *   The identifier of the user resource profile to request to fetch the 
particular storage resource preference.
    * 
-   * @param storageResourceId
+   * @param gatewayID
+   *   The identifier to link a gateway for the requested user resource 
profile.
+   * 
+   * @param userStorageResourceId
    *   Identifier of the Stprage Preference required to be fetched.
    * 
-   * @return StoragePreference
+   * @return UserStoragePreference
    *   Returns the StoragePreference object.
    * 
    * 
    * @param authzToken
    * @param userId
-   * @param storageResourceId
+   * @param gatewayID
+   * @param userStorageResourceId
    */
-  void getUserStoragePreference( 
::apache::airavata::model::appcatalog::userresourceprofile::StoragePreference& 
_return, const  ::apache::airavata::model::security::AuthzToken& authzToken, 
const std::string& userId, const std::string& storageResourceId) {
+  void getUserStoragePreference( 
::apache::airavata::model::appcatalog::userresourceprofile::UserStoragePreference&
 _return, const  ::apache::airavata::model::security::AuthzToken& authzToken, 
const std::string& userId, const std::string& gatewayID, const std::string& 
userStorageResourceId) {
     // Your implementation goes here
     printf("getUserStoragePreference\n");
   }
 
   /**
    * 
+   * Fetch all Compute Resource Preferences of a registered gateway profile.
+   * 
+   * @param userId
+   *   The identifier of the user resource profile to request to fetch the 
particular storage resource preference.
+   * 
+   * @param gatewayID
+   *   The identifier for the gateway profile to be requested
+   * 
+   * @return computeResourcePreference
+   *   Returns the ComputeResourcePreference object.
+   * 
+   * 
+   * @param authzToken
+   * @param userId
+   * @param gatewayID
+   */
+  void getAllUserComputeResourcePreferences(std::vector< 
::apache::airavata::model::appcatalog::userresourceprofile::UserComputeResourcePreference>
 & _return, const  ::apache::airavata::model::security::AuthzToken& authzToken, 
const std::string& userId, const std::string& gatewayID) {
+    // Your implementation goes here
+    printf("getAllUserComputeResourcePreferences\n");
+  }
+
+  /**
+   * Fetch all User Storage Resource Preferences of a registered user profile.
+   * 
+   * @param userId
+   *   The identifier of the user resource profile to request to fetch the 
particular storage resource preference.
+   * 
+   * @param gatewayID
+   *   The identifier for the gateway profile to be requested
+   * 
+   * @return StoragePreference
+   *   Returns the StoragePreference object.
+   * 
+   * 
+   * @param authzToken
+   * @param userId
+   * @param gatewayID
+   */
+  void getAllUserStoragePreferences(std::vector< 
::apache::airavata::model::appcatalog::userresourceprofile::UserStoragePreference>
 & _return, const  ::apache::airavata::model::security::AuthzToken& authzToken, 
const std::string& userId, const std::string& gatewayID) {
+    // Your implementation goes here
+    printf("getAllUserStoragePreferences\n");
+  }
+
+  /**
+   * 
    * Fetch all user resources Profiles registered
    * 
    * @return UserResourceProfile
@@ -3024,10 +3097,13 @@ class AiravataHandler : virtual public AiravataIf {
    * @param userId
    *   The identifier for the user profile to be updated.
    * 
-   * @param computeResourceId
+   * @param gatewayID
+   *   The identifier to link a gateway for the requested user resource 
profile.
+   * 
+   * @param userComputeResourceId
    *   Preferences related to a particular compute resource
    * 
-   * @param computeResourcePreference
+   * @param userComputeResourcePreference
    *   The ComputeResourcePreference object to be updated to the resource 
profile.
    * 
    * @return status
@@ -3036,10 +3112,11 @@ class AiravataHandler : virtual public AiravataIf {
    * 
    * @param authzToken
    * @param userId
-   * @param computeResourceId
-   * @param computeResourcePreference
+   * @param gatewayID
+   * @param userComputeResourceId
+   * @param userComputeResourcePreference
    */
-  bool updateUserComputeResourcePreference(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& computeResourceId, const  
::apache::airavata::model::appcatalog::userresourceprofile::ComputeResourcePreference&
 computeResourcePreference) {
+  bool updateUserComputeResourcePreference(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& gatewayID, const std::string& userComputeResourceId, 
const  
::apache::airavata::model::appcatalog::userresourceprofile::UserComputeResourcePreference&
 userComputeResourcePreference) {
     // Your implementation goes here
     printf("updateUserComputeResourcePreference\n");
   }
@@ -3050,10 +3127,13 @@ class AiravataHandler : virtual public AiravataIf {
    * @param userId
    *   The identifier of the user resource profile to be updated.
    * 
-   * @param storageId
+   * @param gatewayID
+   *   The identifier to link a gateway for the requested user resource 
profile.
+   * 
+   * @param userStorageId
    *   The Storage resource identifier of the one that you want to update
    * 
-   * @param storagePreference
+   * @param userStoragePreference
    *   The storagePreference object to be updated to the resource profile.
    * 
    * @return status
@@ -3062,10 +3142,11 @@ class AiravataHandler : virtual public AiravataIf {
    * 
    * @param authzToken
    * @param userId
-   * @param storageId
-   * @param storagePreference
+   * @param gatewayID
+   * @param userStorageId
+   * @param userStoragePreference
    */
-  bool updateUserStoragePreference(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& storageId, const  
::apache::airavata::model::appcatalog::userresourceprofile::StoragePreference& 
storagePreference) {
+  bool updateUserStoragePreference(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& gatewayID, const std::string& userStorageId, const  
::apache::airavata::model::appcatalog::userresourceprofile::UserStoragePreference&
 userStoragePreference) {
     // Your implementation goes here
     printf("updateUserStoragePreference\n");
   }
@@ -3076,7 +3157,10 @@ class AiravataHandler : virtual public AiravataIf {
    * @param userId
    *   The identifier for the user resource profile to be deleted.
    * 
-   * @param computeResourceId
+   * @param gatewayID
+   *   The identifier to link a gateway for the requested user resource 
profile.
+   * 
+   * @param userComputeResourceId
    *   Preferences related to a particular compute resource
    * 
    * @return status
@@ -3085,9 +3169,10 @@ class AiravataHandler : virtual public AiravataIf {
    * 
    * @param authzToken
    * @param userId
-   * @param computeResourceId
+   * @param gatewayID
+   * @param userComputeResourceId
    */
-  bool deleteUserComputeResourcePreference(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& computeResourceId) {
+  bool deleteUserComputeResourcePreference(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& gatewayID, const std::string& userComputeResourceId) 
{
     // Your implementation goes here
     printf("deleteUserComputeResourcePreference\n");
   }
@@ -3098,7 +3183,10 @@ class AiravataHandler : virtual public AiravataIf {
    * @param userId
    *   The identifier of the user profile to be deleted.
    * 
-   * @param storageId
+   * @param gatewayID
+   *   The identifier to link a gateway for the requested user resource 
profile.
+   * 
+   * @param userStorageId
    *   ID of the storage preference you want to delete.
    * 
    * @return status
@@ -3107,9 +3195,10 @@ class AiravataHandler : virtual public AiravataIf {
    * 
    * @param authzToken
    * @param userId
-   * @param storageId
+   * @param gatewayID
+   * @param userStorageId
    */
-  bool deleteUserStoragePreference(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& storageId) {
+  bool deleteUserStoragePreference(const  
::apache::airavata::model::security::AuthzToken& authzToken, const std::string& 
userId, const std::string& gatewayID, const std::string& userStorageId) {
     // Your implementation goes here
     printf("deleteUserStoragePreference\n");
   }
@@ -3238,11 +3327,6 @@ class AiravataHandler : virtual public AiravataIf {
     printf("getAllGroupsUserBelongs\n");
   }
 
-  bool isDataSharingEnabled() {
-    // Your implementation goes here
-    printf("isDataSharingEnabled\n");
-  }
-
 };
 
 int main(int argc, char **argv) {

http://git-wip-us.apache.org/repos/asf/airavata/blob/82e57526/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/user_resource_profile_model_types.cpp
----------------------------------------------------------------------
diff --git 
a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/user_resource_profile_model_types.cpp
 
b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/user_resource_profile_model_types.cpp
index 2971e4f..cac2b0a 100644
--- 
a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/user_resource_profile_model_types.cpp
+++ 
b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/user_resource_profile_model_types.cpp
@@ -31,60 +31,60 @@
 namespace apache { namespace airavata { namespace model { namespace appcatalog 
{ namespace userresourceprofile {
 
 
-ComputeResourcePreference::~ComputeResourcePreference() throw() {
+UserComputeResourcePreference::~UserComputeResourcePreference() throw() {
 }
 
 
-void ComputeResourcePreference::__set_computeResourceId(const std::string& 
val) {
+void UserComputeResourcePreference::__set_computeResourceId(const std::string& 
val) {
   this->computeResourceId = val;
 }
 
-void ComputeResourcePreference::__set_loginUserName(const std::string& val) {
+void UserComputeResourcePreference::__set_loginUserName(const std::string& 
val) {
   this->loginUserName = val;
 __isset.loginUserName = true;
 }
 
-void ComputeResourcePreference::__set_preferredBatchQueue(const std::string& 
val) {
+void UserComputeResourcePreference::__set_preferredBatchQueue(const 
std::string& val) {
   this->preferredBatchQueue = val;
 __isset.preferredBatchQueue = true;
 }
 
-void ComputeResourcePreference::__set_scratchLocation(const std::string& val) {
+void UserComputeResourcePreference::__set_scratchLocation(const std::string& 
val) {
   this->scratchLocation = val;
 __isset.scratchLocation = true;
 }
 
-void ComputeResourcePreference::__set_allocationProjectNumber(const 
std::string& val) {
+void UserComputeResourcePreference::__set_allocationProjectNumber(const 
std::string& val) {
   this->allocationProjectNumber = val;
 __isset.allocationProjectNumber = true;
 }
 
-void 
ComputeResourcePreference::__set_resourceSpecificCredentialStoreToken(const 
std::string& val) {
+void 
UserComputeResourcePreference::__set_resourceSpecificCredentialStoreToken(const 
std::string& val) {
   this->resourceSpecificCredentialStoreToken = val;
 __isset.resourceSpecificCredentialStoreToken = true;
 }
 
-void ComputeResourcePreference::__set_qualityOfService(const std::string& val) 
{
+void UserComputeResourcePreference::__set_qualityOfService(const std::string& 
val) {
   this->qualityOfService = val;
 __isset.qualityOfService = true;
 }
 
-void ComputeResourcePreference::__set_reservation(const std::string& val) {
+void UserComputeResourcePreference::__set_reservation(const std::string& val) {
   this->reservation = val;
 __isset.reservation = true;
 }
 
-void ComputeResourcePreference::__set_reservationStartTime(const int64_t val) {
+void UserComputeResourcePreference::__set_reservationStartTime(const int64_t 
val) {
   this->reservationStartTime = val;
 __isset.reservationStartTime = true;
 }
 
-void ComputeResourcePreference::__set_reservationEndTime(const int64_t val) {
+void UserComputeResourcePreference::__set_reservationEndTime(const int64_t 
val) {
   this->reservationEndTime = val;
 __isset.reservationEndTime = true;
 }
 
-uint32_t 
ComputeResourcePreference::read(::apache::thrift::protocol::TProtocol* iprot) {
+uint32_t 
UserComputeResourcePreference::read(::apache::thrift::protocol::TProtocol* 
iprot) {
 
   apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
@@ -200,10 +200,10 @@ uint32_t 
ComputeResourcePreference::read(::apache::thrift::protocol::TProtocol*
   return xfer;
 }
 
-uint32_t 
ComputeResourcePreference::write(::apache::thrift::protocol::TProtocol* oprot) 
const {
+uint32_t 
UserComputeResourcePreference::write(::apache::thrift::protocol::TProtocol* 
oprot) const {
   uint32_t xfer = 0;
   apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
-  xfer += oprot->writeStructBegin("ComputeResourcePreference");
+  xfer += oprot->writeStructBegin("UserComputeResourcePreference");
 
   xfer += oprot->writeFieldBegin("computeResourceId", 
::apache::thrift::protocol::T_STRING, 1);
   xfer += oprot->writeString(this->computeResourceId);
@@ -259,7 +259,7 @@ uint32_t 
ComputeResourcePreference::write(::apache::thrift::protocol::TProtocol*
   return xfer;
 }
 
-void swap(ComputeResourcePreference &a, ComputeResourcePreference &b) {
+void swap(UserComputeResourcePreference &a, UserComputeResourcePreference &b) {
   using ::std::swap;
   swap(a.computeResourceId, b.computeResourceId);
   swap(a.loginUserName, b.loginUserName);
@@ -274,7 +274,7 @@ void swap(ComputeResourcePreference &a, 
ComputeResourcePreference &b) {
   swap(a.__isset, b.__isset);
 }
 
-ComputeResourcePreference::ComputeResourcePreference(const 
ComputeResourcePreference& other0) {
+UserComputeResourcePreference::UserComputeResourcePreference(const 
UserComputeResourcePreference& other0) {
   computeResourceId = other0.computeResourceId;
   loginUserName = other0.loginUserName;
   preferredBatchQueue = other0.preferredBatchQueue;
@@ -287,7 +287,7 @@ ComputeResourcePreference::ComputeResourcePreference(const 
ComputeResourcePrefer
   reservationEndTime = other0.reservationEndTime;
   __isset = other0.__isset;
 }
-ComputeResourcePreference& ComputeResourcePreference::operator=(const 
ComputeResourcePreference& other1) {
+UserComputeResourcePreference& UserComputeResourcePreference::operator=(const 
UserComputeResourcePreference& other1) {
   computeResourceId = other1.computeResourceId;
   loginUserName = other1.loginUserName;
   preferredBatchQueue = other1.preferredBatchQueue;
@@ -301,9 +301,9 @@ ComputeResourcePreference& 
ComputeResourcePreference::operator=(const ComputeRes
   __isset = other1.__isset;
   return *this;
 }
-void ComputeResourcePreference::printTo(std::ostream& out) const {
+void UserComputeResourcePreference::printTo(std::ostream& out) const {
   using ::apache::thrift::to_string;
-  out << "ComputeResourcePreference(";
+  out << "UserComputeResourcePreference(";
   out << "computeResourceId=" << to_string(computeResourceId);
   out << ", " << "loginUserName="; (__isset.loginUserName ? (out << 
to_string(loginUserName)) : (out << "<null>"));
   out << ", " << "preferredBatchQueue="; (__isset.preferredBatchQueue ? (out 
<< to_string(preferredBatchQueue)) : (out << "<null>"));
@@ -318,30 +318,30 @@ void ComputeResourcePreference::printTo(std::ostream& 
out) const {
 }
 
 
-StoragePreference::~StoragePreference() throw() {
+UserStoragePreference::~UserStoragePreference() throw() {
 }
 
 
-void StoragePreference::__set_storageResourceId(const std::string& val) {
+void UserStoragePreference::__set_storageResourceId(const std::string& val) {
   this->storageResourceId = val;
 }
 
-void StoragePreference::__set_loginUserName(const std::string& val) {
+void UserStoragePreference::__set_loginUserName(const std::string& val) {
   this->loginUserName = val;
 __isset.loginUserName = true;
 }
 
-void StoragePreference::__set_fileSystemRootLocation(const std::string& val) {
+void UserStoragePreference::__set_fileSystemRootLocation(const std::string& 
val) {
   this->fileSystemRootLocation = val;
 __isset.fileSystemRootLocation = true;
 }
 
-void StoragePreference::__set_resourceSpecificCredentialStoreToken(const 
std::string& val) {
+void UserStoragePreference::__set_resourceSpecificCredentialStoreToken(const 
std::string& val) {
   this->resourceSpecificCredentialStoreToken = val;
 __isset.resourceSpecificCredentialStoreToken = true;
 }
 
-uint32_t StoragePreference::read(::apache::thrift::protocol::TProtocol* iprot) 
{
+uint32_t UserStoragePreference::read(::apache::thrift::protocol::TProtocol* 
iprot) {
 
   apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
@@ -409,10 +409,10 @@ uint32_t 
StoragePreference::read(::apache::thrift::protocol::TProtocol* iprot) {
   return xfer;
 }
 
-uint32_t StoragePreference::write(::apache::thrift::protocol::TProtocol* 
oprot) const {
+uint32_t UserStoragePreference::write(::apache::thrift::protocol::TProtocol* 
oprot) const {
   uint32_t xfer = 0;
   apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
-  xfer += oprot->writeStructBegin("StoragePreference");
+  xfer += oprot->writeStructBegin("UserStoragePreference");
 
   xfer += oprot->writeFieldBegin("storageResourceId", 
::apache::thrift::protocol::T_STRING, 1);
   xfer += oprot->writeString(this->storageResourceId);
@@ -438,7 +438,7 @@ uint32_t 
StoragePreference::write(::apache::thrift::protocol::TProtocol* oprot)
   return xfer;
 }
 
-void swap(StoragePreference &a, StoragePreference &b) {
+void swap(UserStoragePreference &a, UserStoragePreference &b) {
   using ::std::swap;
   swap(a.storageResourceId, b.storageResourceId);
   swap(a.loginUserName, b.loginUserName);
@@ -447,14 +447,14 @@ void swap(StoragePreference &a, StoragePreference &b) {
   swap(a.__isset, b.__isset);
 }
 
-StoragePreference::StoragePreference(const StoragePreference& other2) {
+UserStoragePreference::UserStoragePreference(const UserStoragePreference& 
other2) {
   storageResourceId = other2.storageResourceId;
   loginUserName = other2.loginUserName;
   fileSystemRootLocation = other2.fileSystemRootLocation;
   resourceSpecificCredentialStoreToken = 
other2.resourceSpecificCredentialStoreToken;
   __isset = other2.__isset;
 }
-StoragePreference& StoragePreference::operator=(const StoragePreference& 
other3) {
+UserStoragePreference& UserStoragePreference::operator=(const 
UserStoragePreference& other3) {
   storageResourceId = other3.storageResourceId;
   loginUserName = other3.loginUserName;
   fileSystemRootLocation = other3.fileSystemRootLocation;
@@ -462,9 +462,9 @@ StoragePreference& StoragePreference::operator=(const 
StoragePreference& other3)
   __isset = other3.__isset;
   return *this;
 }
-void StoragePreference::printTo(std::ostream& out) const {
+void UserStoragePreference::printTo(std::ostream& out) const {
   using ::apache::thrift::to_string;
-  out << "StoragePreference(";
+  out << "UserStoragePreference(";
   out << "storageResourceId=" << to_string(storageResourceId);
   out << ", " << "loginUserName="; (__isset.loginUserName ? (out << 
to_string(loginUserName)) : (out << "<null>"));
   out << ", " << "fileSystemRootLocation="; (__isset.fileSystemRootLocation ? 
(out << to_string(fileSystemRootLocation)) : (out << "<null>"));
@@ -481,19 +481,23 @@ void UserResourceProfile::__set_userId(const std::string& 
val) {
   this->userId = val;
 }
 
+void UserResourceProfile::__set_gatewayID(const std::string& val) {
+  this->gatewayID = val;
+}
+
 void UserResourceProfile::__set_credentialStoreToken(const std::string& val) {
   this->credentialStoreToken = val;
 __isset.credentialStoreToken = true;
 }
 
-void UserResourceProfile::__set_computeResourcePreferences(const 
std::vector<ComputeResourcePreference> & val) {
-  this->computeResourcePreferences = val;
-__isset.computeResourcePreferences = true;
+void UserResourceProfile::__set_userComputeResourcePreferences(const 
std::vector<UserComputeResourcePreference> & val) {
+  this->userComputeResourcePreferences = val;
+__isset.userComputeResourcePreferences = true;
 }
 
-void UserResourceProfile::__set_storagePreferences(const 
std::vector<StoragePreference> & val) {
-  this->storagePreferences = val;
-__isset.storagePreferences = true;
+void UserResourceProfile::__set_userStoragePreferences(const 
std::vector<UserStoragePreference> & val) {
+  this->userStoragePreferences = val;
+__isset.userStoragePreferences = true;
 }
 
 void UserResourceProfile::__set_identityServerTenant(const std::string& val) {
@@ -519,6 +523,7 @@ uint32_t 
UserResourceProfile::read(::apache::thrift::protocol::TProtocol* iprot)
   using ::apache::thrift::protocol::TProtocolException;
 
   bool isset_userId = false;
+  bool isset_gatewayID = false;
 
   while (true)
   {
@@ -538,53 +543,61 @@ uint32_t 
UserResourceProfile::read(::apache::thrift::protocol::TProtocol* iprot)
         break;
       case 2:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->gatewayID);
+          isset_gatewayID = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->credentialStoreToken);
           this->__isset.credentialStoreToken = true;
         } else {
           xfer += iprot->skip(ftype);
         }
         break;
-      case 3:
+      case 4:
         if (ftype == ::apache::thrift::protocol::T_LIST) {
           {
-            this->computeResourcePreferences.clear();
+            this->userComputeResourcePreferences.clear();
             uint32_t _size4;
             ::apache::thrift::protocol::TType _etype7;
             xfer += iprot->readListBegin(_etype7, _size4);
-            this->computeResourcePreferences.resize(_size4);
+            this->userComputeResourcePreferences.resize(_size4);
             uint32_t _i8;
             for (_i8 = 0; _i8 < _size4; ++_i8)
             {
-              xfer += this->computeResourcePreferences[_i8].read(iprot);
+              xfer += this->userComputeResourcePreferences[_i8].read(iprot);
             }
             xfer += iprot->readListEnd();
           }
-          this->__isset.computeResourcePreferences = true;
+          this->__isset.userComputeResourcePreferences = true;
         } else {
           xfer += iprot->skip(ftype);
         }
         break;
-      case 4:
+      case 5:
         if (ftype == ::apache::thrift::protocol::T_LIST) {
           {
-            this->storagePreferences.clear();
+            this->userStoragePreferences.clear();
             uint32_t _size9;
             ::apache::thrift::protocol::TType _etype12;
             xfer += iprot->readListBegin(_etype12, _size9);
-            this->storagePreferences.resize(_size9);
+            this->userStoragePreferences.resize(_size9);
             uint32_t _i13;
             for (_i13 = 0; _i13 < _size9; ++_i13)
             {
-              xfer += this->storagePreferences[_i13].read(iprot);
+              xfer += this->userStoragePreferences[_i13].read(iprot);
             }
             xfer += iprot->readListEnd();
           }
-          this->__isset.storagePreferences = true;
+          this->__isset.userStoragePreferences = true;
         } else {
           xfer += iprot->skip(ftype);
         }
         break;
-      case 5:
+      case 6:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->identityServerTenant);
           this->__isset.identityServerTenant = true;
@@ -592,7 +605,7 @@ uint32_t 
UserResourceProfile::read(::apache::thrift::protocol::TProtocol* iprot)
           xfer += iprot->skip(ftype);
         }
         break;
-      case 6:
+      case 7:
         if (ftype == ::apache::thrift::protocol::T_STRING) {
           xfer += iprot->readString(this->identityServerPwdCredToken);
           this->__isset.identityServerPwdCredToken = true;
@@ -611,6 +624,8 @@ uint32_t 
UserResourceProfile::read(::apache::thrift::protocol::TProtocol* iprot)
 
   if (!isset_userId)
     throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_gatewayID)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
   return xfer;
 }
 
@@ -623,17 +638,21 @@ uint32_t 
UserResourceProfile::write(::apache::thrift::protocol::TProtocol* oprot
   xfer += oprot->writeString(this->userId);
   xfer += oprot->writeFieldEnd();
 
+  xfer += oprot->writeFieldBegin("gatewayID", 
::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeString(this->gatewayID);
+  xfer += oprot->writeFieldEnd();
+
   if (this->__isset.credentialStoreToken) {
-    xfer += oprot->writeFieldBegin("credentialStoreToken", 
::apache::thrift::protocol::T_STRING, 2);
+    xfer += oprot->writeFieldBegin("credentialStoreToken", 
::apache::thrift::protocol::T_STRING, 3);
     xfer += oprot->writeString(this->credentialStoreToken);
     xfer += oprot->writeFieldEnd();
   }
-  if (this->__isset.computeResourcePreferences) {
-    xfer += oprot->writeFieldBegin("computeResourcePreferences", 
::apache::thrift::protocol::T_LIST, 3);
+  if (this->__isset.userComputeResourcePreferences) {
+    xfer += oprot->writeFieldBegin("userComputeResourcePreferences", 
::apache::thrift::protocol::T_LIST, 4);
     {
-      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, 
static_cast<uint32_t>(this->computeResourcePreferences.size()));
-      std::vector<ComputeResourcePreference> ::const_iterator _iter14;
-      for (_iter14 = this->computeResourcePreferences.begin(); _iter14 != 
this->computeResourcePreferences.end(); ++_iter14)
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, 
static_cast<uint32_t>(this->userComputeResourcePreferences.size()));
+      std::vector<UserComputeResourcePreference> ::const_iterator _iter14;
+      for (_iter14 = this->userComputeResourcePreferences.begin(); _iter14 != 
this->userComputeResourcePreferences.end(); ++_iter14)
       {
         xfer += (*_iter14).write(oprot);
       }
@@ -641,12 +660,12 @@ uint32_t 
UserResourceProfile::write(::apache::thrift::protocol::TProtocol* oprot
     }
     xfer += oprot->writeFieldEnd();
   }
-  if (this->__isset.storagePreferences) {
-    xfer += oprot->writeFieldBegin("storagePreferences", 
::apache::thrift::protocol::T_LIST, 4);
+  if (this->__isset.userStoragePreferences) {
+    xfer += oprot->writeFieldBegin("userStoragePreferences", 
::apache::thrift::protocol::T_LIST, 5);
     {
-      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, 
static_cast<uint32_t>(this->storagePreferences.size()));
-      std::vector<StoragePreference> ::const_iterator _iter15;
-      for (_iter15 = this->storagePreferences.begin(); _iter15 != 
this->storagePreferences.end(); ++_iter15)
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, 
static_cast<uint32_t>(this->userStoragePreferences.size()));
+      std::vector<UserStoragePreference> ::const_iterator _iter15;
+      for (_iter15 = this->userStoragePreferences.begin(); _iter15 != 
this->userStoragePreferences.end(); ++_iter15)
       {
         xfer += (*_iter15).write(oprot);
       }
@@ -655,12 +674,12 @@ uint32_t 
UserResourceProfile::write(::apache::thrift::protocol::TProtocol* oprot
     xfer += oprot->writeFieldEnd();
   }
   if (this->__isset.identityServerTenant) {
-    xfer += oprot->writeFieldBegin("identityServerTenant", 
::apache::thrift::protocol::T_STRING, 5);
+    xfer += oprot->writeFieldBegin("identityServerTenant", 
::apache::thrift::protocol::T_STRING, 6);
     xfer += oprot->writeString(this->identityServerTenant);
     xfer += oprot->writeFieldEnd();
   }
   if (this->__isset.identityServerPwdCredToken) {
-    xfer += oprot->writeFieldBegin("identityServerPwdCredToken", 
::apache::thrift::protocol::T_STRING, 6);
+    xfer += oprot->writeFieldBegin("identityServerPwdCredToken", 
::apache::thrift::protocol::T_STRING, 7);
     xfer += oprot->writeString(this->identityServerPwdCredToken);
     xfer += oprot->writeFieldEnd();
   }
@@ -672,9 +691,10 @@ uint32_t 
UserResourceProfile::write(::apache::thrift::protocol::TProtocol* oprot
 void swap(UserResourceProfile &a, UserResourceProfile &b) {
   using ::std::swap;
   swap(a.userId, b.userId);
+  swap(a.gatewayID, b.gatewayID);
   swap(a.credentialStoreToken, b.credentialStoreToken);
-  swap(a.computeResourcePreferences, b.computeResourcePreferences);
-  swap(a.storagePreferences, b.storagePreferences);
+  swap(a.userComputeResourcePreferences, b.userComputeResourcePreferences);
+  swap(a.userStoragePreferences, b.userStoragePreferences);
   swap(a.identityServerTenant, b.identityServerTenant);
   swap(a.identityServerPwdCredToken, b.identityServerPwdCredToken);
   swap(a.__isset, b.__isset);
@@ -682,18 +702,20 @@ void swap(UserResourceProfile &a, UserResourceProfile &b) 
{
 
 UserResourceProfile::UserResourceProfile(const UserResourceProfile& other16) {
   userId = other16.userId;
+  gatewayID = other16.gatewayID;
   credentialStoreToken = other16.credentialStoreToken;
-  computeResourcePreferences = other16.computeResourcePreferences;
-  storagePreferences = other16.storagePreferences;
+  userComputeResourcePreferences = other16.userComputeResourcePreferences;
+  userStoragePreferences = other16.userStoragePreferences;
   identityServerTenant = other16.identityServerTenant;
   identityServerPwdCredToken = other16.identityServerPwdCredToken;
   __isset = other16.__isset;
 }
 UserResourceProfile& UserResourceProfile::operator=(const UserResourceProfile& 
other17) {
   userId = other17.userId;
+  gatewayID = other17.gatewayID;
   credentialStoreToken = other17.credentialStoreToken;
-  computeResourcePreferences = other17.computeResourcePreferences;
-  storagePreferences = other17.storagePreferences;
+  userComputeResourcePreferences = other17.userComputeResourcePreferences;
+  userStoragePreferences = other17.userStoragePreferences;
   identityServerTenant = other17.identityServerTenant;
   identityServerPwdCredToken = other17.identityServerPwdCredToken;
   __isset = other17.__isset;
@@ -703,9 +725,10 @@ void UserResourceProfile::printTo(std::ostream& out) const 
{
   using ::apache::thrift::to_string;
   out << "UserResourceProfile(";
   out << "userId=" << to_string(userId);
+  out << ", " << "gatewayID=" << to_string(gatewayID);
   out << ", " << "credentialStoreToken="; (__isset.credentialStoreToken ? (out 
<< to_string(credentialStoreToken)) : (out << "<null>"));
-  out << ", " << "computeResourcePreferences="; 
(__isset.computeResourcePreferences ? (out << 
to_string(computeResourcePreferences)) : (out << "<null>"));
-  out << ", " << "storagePreferences="; (__isset.storagePreferences ? (out << 
to_string(storagePreferences)) : (out << "<null>"));
+  out << ", " << "userComputeResourcePreferences="; 
(__isset.userComputeResourcePreferences ? (out << 
to_string(userComputeResourcePreferences)) : (out << "<null>"));
+  out << ", " << "userStoragePreferences="; (__isset.userStoragePreferences ? 
(out << to_string(userStoragePreferences)) : (out << "<null>"));
   out << ", " << "identityServerTenant="; (__isset.identityServerTenant ? (out 
<< to_string(identityServerTenant)) : (out << "<null>"));
   out << ", " << "identityServerPwdCredToken="; 
(__isset.identityServerPwdCredToken ? (out << 
to_string(identityServerPwdCredToken)) : (out << "<null>"));
   out << ")";

http://git-wip-us.apache.org/repos/asf/airavata/blob/82e57526/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/user_resource_profile_model_types.h
----------------------------------------------------------------------
diff --git 
a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/user_resource_profile_model_types.h
 
b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/user_resource_profile_model_types.h
index 683ab14..fa3f1e6 100644
--- 
a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/user_resource_profile_model_types.h
+++ 
b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/user_resource_profile_model_types.h
@@ -39,14 +39,14 @@
 
 namespace apache { namespace airavata { namespace model { namespace appcatalog 
{ namespace userresourceprofile {
 
-class ComputeResourcePreference;
+class UserComputeResourcePreference;
 
-class StoragePreference;
+class UserStoragePreference;
 
 class UserResourceProfile;
 
-typedef struct _ComputeResourcePreference__isset {
-  _ComputeResourcePreference__isset() : loginUserName(false), 
preferredBatchQueue(false), scratchLocation(false), 
allocationProjectNumber(false), resourceSpecificCredentialStoreToken(false), 
qualityOfService(false), reservation(false), reservationStartTime(false), 
reservationEndTime(false) {}
+typedef struct _UserComputeResourcePreference__isset {
+  _UserComputeResourcePreference__isset() : loginUserName(false), 
preferredBatchQueue(false), scratchLocation(false), 
allocationProjectNumber(false), resourceSpecificCredentialStoreToken(false), 
qualityOfService(false), reservation(false), reservationStartTime(false), 
reservationEndTime(false) {}
   bool loginUserName :1;
   bool preferredBatchQueue :1;
   bool scratchLocation :1;
@@ -56,17 +56,17 @@ typedef struct _ComputeResourcePreference__isset {
   bool reservation :1;
   bool reservationStartTime :1;
   bool reservationEndTime :1;
-} _ComputeResourcePreference__isset;
+} _UserComputeResourcePreference__isset;
 
-class ComputeResourcePreference {
+class UserComputeResourcePreference {
  public:
 
-  ComputeResourcePreference(const ComputeResourcePreference&);
-  ComputeResourcePreference& operator=(const ComputeResourcePreference&);
-  ComputeResourcePreference() : computeResourceId(), loginUserName(), 
preferredBatchQueue(), scratchLocation(), allocationProjectNumber(), 
resourceSpecificCredentialStoreToken(), qualityOfService(), reservation(), 
reservationStartTime(0), reservationEndTime(0) {
+  UserComputeResourcePreference(const UserComputeResourcePreference&);
+  UserComputeResourcePreference& operator=(const 
UserComputeResourcePreference&);
+  UserComputeResourcePreference() : computeResourceId(), loginUserName(), 
preferredBatchQueue(), scratchLocation(), allocationProjectNumber(), 
resourceSpecificCredentialStoreToken(), qualityOfService(), reservation(), 
reservationStartTime(0), reservationEndTime(0) {
   }
 
-  virtual ~ComputeResourcePreference() throw();
+  virtual ~UserComputeResourcePreference() throw();
   std::string computeResourceId;
   std::string loginUserName;
   std::string preferredBatchQueue;
@@ -78,7 +78,7 @@ class ComputeResourcePreference {
   int64_t reservationStartTime;
   int64_t reservationEndTime;
 
-  _ComputeResourcePreference__isset __isset;
+  _UserComputeResourcePreference__isset __isset;
 
   void __set_computeResourceId(const std::string& val);
 
@@ -100,7 +100,7 @@ class ComputeResourcePreference {
 
   void __set_reservationEndTime(const int64_t val);
 
-  bool operator == (const ComputeResourcePreference & rhs) const
+  bool operator == (const UserComputeResourcePreference & rhs) const
   {
     if (!(computeResourceId == rhs.computeResourceId))
       return false;
@@ -142,11 +142,11 @@ class ComputeResourcePreference {
       return false;
     return true;
   }
-  bool operator != (const ComputeResourcePreference &rhs) const {
+  bool operator != (const UserComputeResourcePreference &rhs) const {
     return !(*this == rhs);
   }
 
-  bool operator < (const ComputeResourcePreference & ) const;
+  bool operator < (const UserComputeResourcePreference & ) const;
 
   uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
   uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
@@ -154,36 +154,36 @@ class ComputeResourcePreference {
   virtual void printTo(std::ostream& out) const;
 };
 
-void swap(ComputeResourcePreference &a, ComputeResourcePreference &b);
+void swap(UserComputeResourcePreference &a, UserComputeResourcePreference &b);
 
-inline std::ostream& operator<<(std::ostream& out, const 
ComputeResourcePreference& obj)
+inline std::ostream& operator<<(std::ostream& out, const 
UserComputeResourcePreference& obj)
 {
   obj.printTo(out);
   return out;
 }
 
-typedef struct _StoragePreference__isset {
-  _StoragePreference__isset() : loginUserName(false), 
fileSystemRootLocation(false), resourceSpecificCredentialStoreToken(false) {}
+typedef struct _UserStoragePreference__isset {
+  _UserStoragePreference__isset() : loginUserName(false), 
fileSystemRootLocation(false), resourceSpecificCredentialStoreToken(false) {}
   bool loginUserName :1;
   bool fileSystemRootLocation :1;
   bool resourceSpecificCredentialStoreToken :1;
-} _StoragePreference__isset;
+} _UserStoragePreference__isset;
 
-class StoragePreference {
+class UserStoragePreference {
  public:
 
-  StoragePreference(const StoragePreference&);
-  StoragePreference& operator=(const StoragePreference&);
-  StoragePreference() : storageResourceId(), loginUserName(), 
fileSystemRootLocation(), resourceSpecificCredentialStoreToken() {
+  UserStoragePreference(const UserStoragePreference&);
+  UserStoragePreference& operator=(const UserStoragePreference&);
+  UserStoragePreference() : storageResourceId(), loginUserName(), 
fileSystemRootLocation(), resourceSpecificCredentialStoreToken() {
   }
 
-  virtual ~StoragePreference() throw();
+  virtual ~UserStoragePreference() throw();
   std::string storageResourceId;
   std::string loginUserName;
   std::string fileSystemRootLocation;
   std::string resourceSpecificCredentialStoreToken;
 
-  _StoragePreference__isset __isset;
+  _UserStoragePreference__isset __isset;
 
   void __set_storageResourceId(const std::string& val);
 
@@ -193,7 +193,7 @@ class StoragePreference {
 
   void __set_resourceSpecificCredentialStoreToken(const std::string& val);
 
-  bool operator == (const StoragePreference & rhs) const
+  bool operator == (const UserStoragePreference & rhs) const
   {
     if (!(storageResourceId == rhs.storageResourceId))
       return false;
@@ -211,11 +211,11 @@ class StoragePreference {
       return false;
     return true;
   }
-  bool operator != (const StoragePreference &rhs) const {
+  bool operator != (const UserStoragePreference &rhs) const {
     return !(*this == rhs);
   }
 
-  bool operator < (const StoragePreference & ) const;
+  bool operator < (const UserStoragePreference & ) const;
 
   uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
   uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
@@ -223,19 +223,19 @@ class StoragePreference {
   virtual void printTo(std::ostream& out) const;
 };
 
-void swap(StoragePreference &a, StoragePreference &b);
+void swap(UserStoragePreference &a, UserStoragePreference &b);
 
-inline std::ostream& operator<<(std::ostream& out, const StoragePreference& 
obj)
+inline std::ostream& operator<<(std::ostream& out, const 
UserStoragePreference& obj)
 {
   obj.printTo(out);
   return out;
 }
 
 typedef struct _UserResourceProfile__isset {
-  _UserResourceProfile__isset() : credentialStoreToken(false), 
computeResourcePreferences(false), storagePreferences(false), 
identityServerTenant(false), identityServerPwdCredToken(false) {}
+  _UserResourceProfile__isset() : credentialStoreToken(false), 
userComputeResourcePreferences(false), userStoragePreferences(false), 
identityServerTenant(false), identityServerPwdCredToken(false) {}
   bool credentialStoreToken :1;
-  bool computeResourcePreferences :1;
-  bool storagePreferences :1;
+  bool userComputeResourcePreferences :1;
+  bool userStoragePreferences :1;
   bool identityServerTenant :1;
   bool identityServerPwdCredToken :1;
 } _UserResourceProfile__isset;
@@ -245,14 +245,15 @@ class UserResourceProfile {
 
   UserResourceProfile(const UserResourceProfile&);
   UserResourceProfile& operator=(const UserResourceProfile&);
-  UserResourceProfile() : userId(), credentialStoreToken(), 
identityServerTenant(), identityServerPwdCredToken() {
+  UserResourceProfile() : userId(), gatewayID(), credentialStoreToken(), 
identityServerTenant(), identityServerPwdCredToken() {
   }
 
   virtual ~UserResourceProfile() throw();
   std::string userId;
+  std::string gatewayID;
   std::string credentialStoreToken;
-  std::vector<ComputeResourcePreference>  computeResourcePreferences;
-  std::vector<StoragePreference>  storagePreferences;
+  std::vector<UserComputeResourcePreference>  userComputeResourcePreferences;
+  std::vector<UserStoragePreference>  userStoragePreferences;
   std::string identityServerTenant;
   std::string identityServerPwdCredToken;
 
@@ -260,11 +261,13 @@ class UserResourceProfile {
 
   void __set_userId(const std::string& val);
 
+  void __set_gatewayID(const std::string& val);
+
   void __set_credentialStoreToken(const std::string& val);
 
-  void __set_computeResourcePreferences(const 
std::vector<ComputeResourcePreference> & val);
+  void __set_userComputeResourcePreferences(const 
std::vector<UserComputeResourcePreference> & val);
 
-  void __set_storagePreferences(const std::vector<StoragePreference> & val);
+  void __set_userStoragePreferences(const std::vector<UserStoragePreference> & 
val);
 
   void __set_identityServerTenant(const std::string& val);
 
@@ -274,17 +277,19 @@ class UserResourceProfile {
   {
     if (!(userId == rhs.userId))
       return false;
+    if (!(gatewayID == rhs.gatewayID))
+      return false;
     if (__isset.credentialStoreToken != rhs.__isset.credentialStoreToken)
       return false;
     else if (__isset.credentialStoreToken && !(credentialStoreToken == 
rhs.credentialStoreToken))
       return false;
-    if (__isset.computeResourcePreferences != 
rhs.__isset.computeResourcePreferences)
+    if (__isset.userComputeResourcePreferences != 
rhs.__isset.userComputeResourcePreferences)
       return false;
-    else if (__isset.computeResourcePreferences && 
!(computeResourcePreferences == rhs.computeResourcePreferences))
+    else if (__isset.userComputeResourcePreferences && 
!(userComputeResourcePreferences == rhs.userComputeResourcePreferences))
       return false;
-    if (__isset.storagePreferences != rhs.__isset.storagePreferences)
+    if (__isset.userStoragePreferences != rhs.__isset.userStoragePreferences)
       return false;
-    else if (__isset.storagePreferences && !(storagePreferences == 
rhs.storagePreferences))
+    else if (__isset.userStoragePreferences && !(userStoragePreferences == 
rhs.userStoragePreferences))
       return false;
     if (__isset.identityServerTenant != rhs.__isset.identityServerTenant)
       return false;

Reply via email to