use of com.sequenceiq.cloudbreak.cloud.yarn.client.model.request.DeleteApplicationRequest in project cloudbreak by hortonworks.
the class YarnResourceConnector method terminate.
@Override
public List<CloudResourceStatus> terminate(AuthenticatedContext authenticatedContext, CloudStack stack, List<CloudResource> cloudResources) {
for (CloudResource resource : cloudResources) {
switch(resource.getType()) {
case YARN_APPLICATION:
YarnClient yarnClient = yarnClientUtil.createYarnClient(authenticatedContext);
String yarnApplicationName = resource.getName();
String stackName = authenticatedContext.getCloudContext().getName();
LOGGER.info("Terminate stack: {}", stackName);
try {
DeleteApplicationRequest deleteApplicationRequest = new DeleteApplicationRequest();
deleteApplicationRequest.setName(yarnApplicationName);
yarnClient.deleteApplication(deleteApplicationRequest);
LOGGER.info("Yarn Applicatin has been deleted");
} catch (MalformedURLException | YarnClientException e) {
throw new CloudConnectorException("Stack cannot be deleted", e);
}
break;
default:
throw new CloudConnectorException(String.format("Invalid resource type: %s", resource.getType()));
}
}
return check(authenticatedContext, cloudResources);
}
Aggregations