Search in sources :

Example 6 with DomainResponse

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;
}
Also used : DomainResponse(com.cloud.api.response.DomainResponse) Domain(com.cloud.domain.Domain)

Example 7 with 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");
    }
}
Also used : ServerApiException(com.cloud.api.ServerApiException) DomainResponse(com.cloud.api.response.DomainResponse) Domain(com.cloud.domain.Domain)

Example 8 with DomainResponse

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");
    }
}
Also used : ServerApiException(com.cloud.api.ServerApiException) DomainResponse(com.cloud.api.response.DomainResponse) Domain(com.cloud.domain.Domain)

Example 9 with DomainResponse

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);
}
Also used : ListResponse(com.cloud.api.response.ListResponse) DomainResponse(com.cloud.api.response.DomainResponse) ArrayList(java.util.ArrayList) Domain(com.cloud.domain.Domain)

Example 10 with DomainResponse

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");
    }
}
Also used : ServerApiException(com.cloud.api.ServerApiException) DomainResponse(com.cloud.api.response.DomainResponse) Domain(com.cloud.domain.Domain)

Aggregations

DomainResponse (com.cloud.api.response.DomainResponse)10 Domain (com.cloud.domain.Domain)9 ServerApiException (com.cloud.api.ServerApiException)4 ListResponse (com.cloud.api.response.ListResponse)4 ArrayList (java.util.ArrayList)4 List (java.util.List)2 ResponseView (com.cloud.api.ResponseObject.ResponseView)1 ListDomainsCmdByAdmin (com.cloud.api.command.admin.domain.ListDomainsCmdByAdmin)1 DomainJoinVO (com.cloud.api.query.vo.DomainJoinVO)1