1 package org.openecomp.sdc.vendorsoftwareproduct.errors;
3 import org.openecomp.sdc.common.errors.ErrorCategory;
4 import org.openecomp.sdc.common.errors.ErrorCode;
5 import static org.openecomp.sdc.vendorsoftwareproduct.errors.VendorSoftwareProductErrorCodes.UPDATE_COMPUTE_NOT_ALLOWED;
8 public class DuplicateComputeInComponentErrorBuilder {
10 private static final String DUPLICATE_COMPUTE_NAME_NOT_ALLOWED_MSG =
11 "Invalid request, Compute with name %s already exists for component with ID %s.";
12 private static final String COMPUTE_HEAT_READONLY_ATTR_MSG = "Update of attribute %s not allowed "
13 + "for VSP onboarded via HEAT.";
14 private static final String COMPUTE_MANUAL_READONLY_ATTR_MSG = "Update of attribute %s not allowed "
15 + "for VSP onboarded manually.";
18 private final ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
20 public DuplicateComputeInComponentErrorBuilder(String computeName, String componentId ){
21 builder.withId(VendorSoftwareProductErrorCodes.DUPLICATE_COMPUTE_NAME_NOT_ALLOWED);
22 builder.withCategory(ErrorCategory.APPLICATION);
23 builder.withMessage(String.format(DUPLICATE_COMPUTE_NAME_NOT_ALLOWED_MSG,computeName,
28 * Gets duplicate compute name error builder.
30 * @return the duplicate compute name error builder
32 public static ErrorCode getDuplicateComputeNameErrorBuilder(String computeName, String componenetId) {
33 ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
34 builder.withId(VendorSoftwareProductErrorCodes.DUPLICATE_COMPUTE_NAME_NOT_ALLOWED);
35 builder.withCategory(ErrorCategory.APPLICATION);
36 builder.withMessage(String.format(DUPLICATE_COMPUTE_NAME_NOT_ALLOWED_MSG, computeName, componenetId ));
37 return builder.build();
40 public static ErrorCode getComputeHeatReadOnlyErrorBuilder(String name) {
41 ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
42 builder.withId(UPDATE_COMPUTE_NOT_ALLOWED);
43 builder.withCategory(ErrorCategory.APPLICATION);
44 builder.withMessage(String.format(COMPUTE_HEAT_READONLY_ATTR_MSG, name));
45 return builder.build();
49 public ErrorCode build() {
50 return builder.build();