/* * Copyright (c) 2012-2015 iWave Software LLC * All Rights Reserved */ package com.emc.sa.service.vipr.compute.tasks; import com.emc.sa.service.vipr.tasks.ViPRExecutionTask; import com.emc.storageos.db.client.model.Host; import com.emc.storageos.model.compute.OsInstallParam; import com.emc.storageos.model.host.HostRestRep; import com.emc.vipr.client.Task; public class InstallOs extends ViPRExecutionTask<Task<HostRestRep>> { private Host host; private OsInstallParam param; private String encryptedPassword; private String decryptedPassword; public InstallOs(Host host, OsInstallParam param) { this.host = host; this.param = param; encryptedPassword = param.getRootPassword(); provideDetailArgs(host.getHostName()); } @Override public Task<HostRestRep> executeTask() throws Exception { decryptedPassword = decrypt(encryptedPassword); param.setRootPassword(decryptedPassword); Task<HostRestRep> task = getClient().hosts().osInstall(host.getId(), param); addOrderIdTag(task.getTaskResource().getId()); return task; } }