CLOUDSTACK-7908: UserVmResponse returns userid/username information of the creator

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
This commit is contained in:
Rohit Yadav 2015-02-16 16:12:22 +05:30
parent 2b7073c73f
commit 2580edbcfb
2 changed files with 33 additions and 0 deletions

View File

@ -52,6 +52,14 @@ public class UserVmResponse extends BaseResponse implements ControlledEntityResp
@Param(description = "the account associated with the virtual machine")
private String accountName;
@SerializedName(ApiConstants.USER_ID)
@Param(description = "the user's ID who deployed the virtual machine")
private String userId;
@SerializedName(ApiConstants.USERNAME)
@Param(description = "the user's name who deployed the virtual machine")
private String userName;
@SerializedName(ApiConstants.PROJECT_ID)
@Param(description = "the project id of the vm")
private String projectId;
@ -315,6 +323,14 @@ public class UserVmResponse extends BaseResponse implements ControlledEntityResp
return accountName;
}
public String getUserId() {
return userId;
}
public String getUserName() {
return userName;
}
public String getProjectId() {
return projectId;
}
@ -535,6 +551,14 @@ public class UserVmResponse extends BaseResponse implements ControlledEntityResp
this.accountName = accountName;
}
public void setUserId(String userId) {
this.userId = userId;
}
public void setUserName(String userName) {
this.userName = userName;
}
@Override
public void setDomainId(String domainId) {
this.domainId = domainId;

View File

@ -48,6 +48,8 @@ import com.cloud.hypervisor.Hypervisor.HypervisorType;
import com.cloud.service.ServiceOfferingDetailsVO;
import com.cloud.user.Account;
import com.cloud.user.AccountManager;
import com.cloud.user.User;
import com.cloud.user.dao.UserDao;
import com.cloud.uservm.UserVm;
import com.cloud.utils.db.GenericDaoBase;
import com.cloud.utils.db.SearchBuilder;
@ -70,6 +72,8 @@ public class UserVmJoinDaoImpl extends GenericDaoBase<UserVmJoinVO, Long> implem
public AccountManager _accountMgr;
@Inject
private UserVmDetailsDao _userVmDetailsDao;
@Inject
private UserDao _userDao;
private final SearchBuilder<UserVmJoinVO> VmDetailSearch;
private final SearchBuilder<UserVmJoinVO> activeVmByIsoSearch;
@ -121,6 +125,11 @@ public class UserVmJoinDaoImpl extends GenericDaoBase<UserVmJoinVO, Long> implem
userVmResponse.setAccountName(userVm.getAccountName());
}
User user = _userDao.getUser(userVm.getUserId());
if (user != null) {
userVmResponse.setUserId(user.getUuid());
userVmResponse.setUserName(user.getUsername());
}
userVmResponse.setDomainId(userVm.getDomainUuid());
userVmResponse.setDomainName(userVm.getDomainName());