use of com.arm.mbed.cloud.sdk.internal.iam.model.UserInfoResp in project mbed-cloud-sdk-java by ARMmbed.
the class AccountManagement method updateUser.
/**
* Updates a user.
* <p>
* Example:
*
* <pre>
* {@code
* try {
* User user = new User();
* String userId = "015f4ac587f500000000000100109294";
* user.setId(userId);
* user.setEmail("javaSDK@arm.com");
* user.setUsername("javaSDK");
* user.setFullName("New JavaSDK");
*
* User newUser = accountManagementApi.updateUser(user);
* System.out.println("New User name: " + newUser.getFullName());
* assert userId == newUser.getId();
* } catch (MbedCloudException e) {
* e.printStackTrace();
* }
* }
* </pre>
*
* @param user
* User to update.
* @return updated user.
* @throws MbedCloudException
* if a problem occurred during request processing.
*/
@API
@Nullable
public User updateUser(@NonNull User user) throws MbedCloudException {
checkNotNull(user, TAG_USER);
checkNotNull(user.getId(), TAG_USER_UUID);
// checkModelValidity(user, TAG_USER);
User updatedUser = null;
if (user.hasEmailBeenUpdated()) {
updatedUser = user;
} else {
updatedUser = user.clone();
updatedUser.setEmail(null);
}
final User finalUser = updatedUser;
return CloudCaller.call(this, "updateUser()", UserAdapter.getMapper(), new CloudCall<UserInfoResp>() {
@Override
public Call<UserInfoResp> call() {
return endpoint.getAdmin().updateUser(finalUser.getId(), UserAdapter.reverseMapUpdate(finalUser));
}
});
}
use of com.arm.mbed.cloud.sdk.internal.iam.model.UserInfoResp in project mbed-cloud-sdk-java by ARMmbed.
the class UserAdapter method mapList.
/**
* Maps list of users.
*
* @param list
* of users to map.
* @return list of users.
*/
public static ListResponse<User> mapList(UserInfoRespList list) {
final UserInfoRespList userList = list;
final RespList<UserInfoResp> respList = new RespList<UserInfoResp>() {
@Override
public Boolean getHasMore() {
return (userList == null) ? null : userList.isHasMore();
}
@Override
public Integer getTotalCount() {
return (userList == null) ? null : userList.getTotalCount();
}
@Override
public String getAfter() {
return (userList == null) ? null : userList.getAfter();
}
@Override
public Integer getLimit() {
return (userList == null) ? null : userList.getLimit();
}
@Override
public String getOrder() {
return (userList == null) ? null : userList.getOrder().toString();
}
@Override
public List<UserInfoResp> getData() {
return (userList == null) ? null : userList.getData();
}
};
return GenericAdapter.mapList(respList, getMapper());
}
use of com.arm.mbed.cloud.sdk.internal.iam.model.UserInfoResp in project mbed-cloud-sdk-java by ARMmbed.
the class AccountManagement method addUser.
/**
* Adds a user.
* <p>
* Example:
*
* <pre>
* {@code
* try {
* User user = new User();
* user.setEmail("javaSDK@arm.com");
* user.setUsername("javaSDK");
* user.setFullName("Java SDK");
*
* User newUser = accountManagementApi.addUser(user);
* System.out.println("User ID: " + newUser.getId());
* } catch (MbedCloudException e) {
* e.printStackTrace();
* }
* }
* </pre>
*
* @param user
* User to add.
* @return added user.
* @throws MbedCloudException
* if a problem occurred during request processing.
*/
@API
@NonNull
public User addUser(@NonNull User user) throws MbedCloudException {
checkNotNull(user, TAG_USER);
checkModelValidity(user, TAG_USER);
final User finalUser = user;
return CloudCaller.call(this, "addUser()", UserAdapter.getMapper(), new CloudCall<UserInfoResp>() {
@Override
public Call<UserInfoResp> call() {
return endpoint.getAdmin().createUser(UserAdapter.reverseMapAdd(finalUser), "create");
}
});
}
Aggregations