package com.sequenceiq.cloudbreak.cloud.model; import java.util.List; import java.util.Map; import com.google.common.collect.ImmutableList; import com.sequenceiq.cloudbreak.cloud.model.generic.DynamicModel; public class InstanceTemplate extends DynamicModel { private final String flavor; private final String groupName; private final Long privateId; private final List<Volume> volumes; private final InstanceStatus status; public InstanceTemplate(String flavor, String groupName, Long privateId, List<Volume> volumes, InstanceStatus status, Map<String, Object> parameters) { super(parameters); this.flavor = flavor; this.groupName = groupName; this.privateId = privateId; this.volumes = ImmutableList.copyOf(volumes); this.status = status; } public String getFlavor() { return flavor; } public List<Volume> getVolumes() { return volumes; } public String getVolumeType() { return volumes.get(0).getType(); } public int getVolumeSize() { return volumes.get(0).getSize(); } public String getGroupName() { return groupName; } public Long getPrivateId() { return privateId; } public InstanceStatus getStatus() { return status; } @Override public String toString() { final StringBuilder sb = new StringBuilder("InstanceTemplate{"); sb.append("flavor='").append(flavor).append('\''); sb.append(", groupName='").append(groupName).append('\''); sb.append(", privateId=").append(privateId); sb.append(", volumes=").append(volumes); sb.append(", status=").append(status); sb.append('}'); return sb.toString(); } }