use of com.cloud.api.response.DomainResponse in project cosmic by MissionCriticalCloud.
the class DomainJoinDaoImpl method newDomainResponse.
@Override
public DomainResponse newDomainResponse(final ResponseView view, final DomainJoinVO domain) {
final DomainResponse domainResponse = new DomainResponse();
domainResponse.setDomainName(domain.getName());
domainResponse.setId(domain.getUuid());
domainResponse.setLevel(domain.getLevel());
domainResponse.setNetworkDomain(domain.getNetworkDomain());
domainResponse.setEmail(domain.getEmail());
final Domain parentDomain = ApiDBUtils.findDomainById(domain.getParent());
if (parentDomain != null) {
domainResponse.setParentDomainId(parentDomain.getUuid());
}
final StringBuilder domainPath = new StringBuilder("ROOT");
(domainPath.append(domain.getPath())).deleteCharAt(domainPath.length() - 1);
domainResponse.setPath(domainPath.toString());
if (domain.getParent() != null) {
domainResponse.setParentDomainName(ApiDBUtils.findDomainById(domain.getParent()).getName());
}
if (domain.getChildCount() > 0) {
domainResponse.setHasChild(true);
}
domainResponse.setState(domain.getState().toString());
domainResponse.setNetworkDomain(domain.getNetworkDomain());
final boolean fullView = (view == ResponseView.Full && domain.getId() == Domain.ROOT_DOMAIN);
setResourceLimits(domain, fullView, domainResponse);
// get resource limits for projects
final long projectLimit = ApiDBUtils.findCorrectResourceLimitForDomain(domain.getProjectLimit(), fullView, ResourceType.project, domain.getId());
final String projectLimitDisplay = (fullView || projectLimit == -1) ? "Unlimited" : String.valueOf(projectLimit);
final long projectTotal = (domain.getProjectTotal() == null) ? 0 : domain.getProjectTotal();
final String projectAvail = (fullView || projectLimit == -1) ? "Unlimited" : String.valueOf(projectLimit - projectTotal);
domainResponse.setProjectLimit(projectLimitDisplay);
domainResponse.setProjectTotal(projectTotal);
domainResponse.setProjectAvailable(projectAvail);
domainResponse.setObjectName("domain");
return domainResponse;
}
use of com.cloud.api.response.DomainResponse in project CloudStack-archive by CloudStack-extras.
the class UpdateDomainCmd method execute.
@Override
public void execute() {
UserContext.current().setEventDetails("Domain Id: " + getId());
Domain domain = _mgr.updateDomain(this);
if (domain != null) {
DomainResponse response = _responseGenerator.createDomainResponse(domain);
response.setResponseName(getCommandName());
this.setResponseObject(response);
} else {
throw new ServerApiException(BaseCmd.INTERNAL_ERROR, "Failed to update domain");
}
}
use of com.cloud.api.response.DomainResponse in project CloudStack-archive by CloudStack-extras.
the class CreateDomainCmd method execute.
@Override
public void execute() {
UserContext.current().setEventDetails("Domain Name: " + getDomainName() + ((getParentDomainId() != null) ? ", Parent DomainId :" + getParentDomainId() : ""));
Domain domain = _domainService.createDomain(getDomainName(), getParentDomainId(), getNetworkDomain());
if (domain != null) {
DomainResponse response = _responseGenerator.createDomainResponse(domain);
response.setResponseName(getCommandName());
this.setResponseObject(response);
} else {
throw new ServerApiException(BaseCmd.INTERNAL_ERROR, "Failed to create domain");
}
}
use of com.cloud.api.response.DomainResponse in project CloudStack-archive by CloudStack-extras.
the class ListDomainsCmd method execute.
@Override
public void execute() {
List<? extends Domain> result = _domainService.searchForDomains(this);
ListResponse<DomainResponse> response = new ListResponse<DomainResponse>();
List<DomainResponse> domainResponses = new ArrayList<DomainResponse>();
for (Domain domain : result) {
DomainResponse domainResponse = _responseGenerator.createDomainResponse(domain);
domainResponse.setObjectName("domain");
domainResponses.add(domainResponse);
}
response.setResponses(domainResponses);
response.setResponseName(getCommandName());
this.setResponseObject(response);
}
use of com.cloud.api.response.DomainResponse in project cosmic by MissionCriticalCloud.
the class CreateDomainCmd method execute.
// ///////////////////////////////////////////////////
// ///////////////// Accessors ///////////////////////
// ///////////////////////////////////////////////////
@Override
public void execute() {
CallContext.current().setEventDetails("Domain Name: " + getDomainName() + ((getParentDomainId() != null) ? ", Parent DomainId :" + getParentDomainId() : ""));
final Domain domain = _domainService.createDomain(getDomainName(), getParentDomainId(), getNetworkDomain(), getDomainUUID(), getEmail());
if (domain != null) {
final DomainResponse response = _responseGenerator.createDomainResponse(domain);
response.setResponseName(getCommandName());
this.setResponseObject(response);
} else {
throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to create domain");
}
}
Aggregations