@Component
public class GccTemplateConverter extends AbstractConverter<TemplateJson, GccTemplate> {
@Override
public TemplateJson convert(GccTemplate entity) {
TemplateJson gccTemplateJson = new TemplateJson();
gccTemplateJson.setName(entity.getName());
gccTemplateJson.setCloudPlatform(CloudPlatform.GCC);
gccTemplateJson.setId(entity.getId());
gccTemplateJson.setVolumeCount(entity.getVolumeCount());
gccTemplateJson.setVolumeSize(entity.getVolumeSize());
gccTemplateJson.setDescription(entity.getDescription());
Map<String, Object> props = new HashMap<>();
putProperty(props, GccTemplateParam.IMAGETYPE.getName(), entity.getGccImageType());
putProperty(props, GccTemplateParam.INSTANCETYPE.getName(), entity.getGccInstanceType());
putProperty(props, GccTemplateParam.ZONE.getName(), entity.getGccZone());
putProperty(props, GccTemplateParam.CONTAINERCOUNT.getName(), entity.getContainerCount());
putProperty(props, GccTemplateParam.TYPE.getName(), entity.getGccRawDiskType());
gccTemplateJson.setParameters(props);
gccTemplateJson.setDescription(entity.getDescription() == null ? "" : entity.getDescription());
return gccTemplateJson;
}