/* * Copyright (c) 2012-2015 iWave Software LLC * All Rights Reserved */ package com.emc.sa.service.vipr.compute.tasks; import java.net.URI; import com.emc.sa.service.vipr.tasks.WaitForTask; import com.emc.storageos.db.client.model.Cluster; import com.emc.storageos.db.client.model.VcenterDataCenter; import com.emc.storageos.model.compute.VcenterClusterParam; import com.emc.storageos.model.host.vcenter.VcenterDataCenterRestRep; import com.emc.vipr.client.Task; public class UpdateVcenterCluster extends WaitForTask<VcenterDataCenterRestRep> { private URI cluster; private URI datacenter; public UpdateVcenterCluster(URI cluster, URI datacenter) { this.cluster = cluster; this.datacenter = datacenter; provideDetailArgs(cluster, datacenter); } public UpdateVcenterCluster(Cluster cluster, VcenterDataCenter datacenter) { this.cluster = cluster.getId(); this.datacenter = datacenter.getId(); provideDetailArgs(cluster.getLabel(), datacenter.getLabel()); } @Override public Task<VcenterDataCenterRestRep> doExecute() throws Exception { VcenterClusterParam clusterParam = new VcenterClusterParam(cluster); Task<VcenterDataCenterRestRep> task = getClient().vcenterDataCenters().updateVcenterCluster(datacenter, clusterParam); return task; } }