package com.sequenceiq.cloudbreak.cloud.transform; import java.util.List; import com.sequenceiq.cloudbreak.cloud.context.CloudContext; import com.sequenceiq.cloudbreak.cloud.event.resource.LaunchStackRequest; import com.sequenceiq.cloudbreak.cloud.event.resource.LaunchStackResult; import com.sequenceiq.cloudbreak.cloud.event.resource.UpscaleStackRequest; import com.sequenceiq.cloudbreak.cloud.event.resource.UpscaleStackResult; import com.sequenceiq.cloudbreak.cloud.model.CloudResourceStatus; import com.sequenceiq.cloudbreak.cloud.task.ResourcesStatePollerResult; public class ResourcesStatePollerResults { private ResourcesStatePollerResults() { } public static ResourcesStatePollerResult build(CloudContext context, List<CloudResourceStatus> results) { CloudResourceStatus status = ResourceStatusLists.aggregate(results); return new ResourcesStatePollerResult(context, status.getStatus(), status.getStatusReason(), results); } public static LaunchStackResult transformToLaunchStackResult(LaunchStackRequest request, ResourcesStatePollerResult result) { return new LaunchStackResult(request, result.getResults()); } public static UpscaleStackResult transformToUpscaleStackResult(ResourcesStatePollerResult result, UpscaleStackRequest request) { return new UpscaleStackResult(request, result.getStatus(), result.getResults()); } }