use of com.sequenceiq.cloudbreak.common.json.Json in project cloudbreak by hortonworks.
the class ImageService method decorateImageWithUserDataForStack.
public void decorateImageWithUserDataForStack(Stack stack, Map<InstanceGroupType, String> userData) throws CloudbreakImageNotFoundException {
Image image = componentConfigProviderService.getImage(stack.getId());
image.setUserdata(userData);
Component imageComponent = new Component(IMAGE, IMAGE.name(), new Json(image), stack);
componentConfigProviderService.replaceImageComponentWithNew(imageComponent);
}
use of com.sequenceiq.cloudbreak.common.json.Json in project cloudbreak by hortonworks.
the class ClusterUpgradeTargetImageService method createTargetImageComponent.
private Component createTargetImageComponent(Long stackId, StatedImage targetImage) {
Stack stack = stackService.getById(stackId);
Image imageModel = stackImageService.getImageModelFromStatedImage(stack, getCurrentImage(stack), targetImage);
return new Component(ComponentType.IMAGE, TARGET_IMAGE, new Json(imageModel), stack);
}
use of com.sequenceiq.cloudbreak.common.json.Json in project cloudbreak by hortonworks.
the class StackImageService method replaceStackImageComponent.
private void replaceStackImageComponent(Stack stack, StatedImage targetImage) {
try {
Image newImage = getImageModelFromStatedImage(stack, componentConfigProviderService.getImage(stack.getId()), targetImage);
Component imageComponent = new Component(ComponentType.IMAGE, ComponentType.IMAGE.name(), new Json(newImage), stack);
componentConfigProviderService.replaceImageComponentWithNew(imageComponent);
} catch (CloudbreakImageNotFoundException e) {
LOGGER.info("Could not find image", e);
throw new CloudbreakServiceException("Could not find image", e);
}
}
use of com.sequenceiq.cloudbreak.common.json.Json in project cloudbreak by hortonworks.
the class StackService method addCloudbreakDetailsForStack.
private void addCloudbreakDetailsForStack(Stack stack) {
CloudbreakDetails cbDetails = new CloudbreakDetails(cbVersion);
try {
Component cbDetailsComponent = new Component(ComponentType.CLOUDBREAK_DETAILS, ComponentType.CLOUDBREAK_DETAILS.name(), new Json(cbDetails), stack);
componentConfigProviderService.store(cbDetailsComponent);
} catch (IllegalArgumentException e) {
LOGGER.info("Could not create Cloudbreak details component.", e);
}
}
use of com.sequenceiq.cloudbreak.common.json.Json in project cloudbreak by hortonworks.
the class StackService method addTemplateForStack.
private void addTemplateForStack(Stack stack, String template) {
StackTemplate stackTemplate = new StackTemplate(template, cbVersion);
try {
Component stackTemplateComponent = new Component(ComponentType.STACK_TEMPLATE, ComponentType.STACK_TEMPLATE.name(), new Json(stackTemplate), stack);
componentConfigProviderService.store(stackTemplateComponent);
} catch (IllegalArgumentException e) {
LOGGER.info("Could not create Cloudbreak details component.", e);
}
}
Aggregations