[SDC] Onboarding 1710 rebase.
[sdc.git] / openecomp-be / backend / openecomp-sdc-vendor-software-product-manager / src / main / java / org / openecomp / sdc / vendorsoftwareproduct / errors / VendorSoftwareProductInvalidErrorBuilder.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.openecomp.sdc.vendorsoftwareproduct.errors;
22
23 import org.openecomp.sdc.common.errors.ErrorCategory;
24 import org.openecomp.sdc.common.errors.ErrorCode;
25 import org.openecomp.sdc.versioning.dao.types.Version;
26
27 public class VendorSoftwareProductInvalidErrorBuilder {
28   private static final String VSP_INVALID_MSG =
29       "Vendor software product with Id %s and version %s is invalid - does not contain "
30           + "service model.";
31   private static final String VSP_INVALID_MISSING_DEPLOYMENT_FLAVOR_MSG ="VSP has to have a " +
32       "minimum of one Deployment Flavor defined for being able to be instantiated.Please add a Deployment Flavor and re-submit the VSP.";
33   private final ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
34
35   /**
36    * Instantiates a new Vendor software product invalid error builder.
37    *
38    * @param vendorSoftwareProductId the vendor software product id
39    * @param version                 the version
40    */
41   public static ErrorCode VendorSoftwareProductMissingServiceModelErrorBuilder(String
42                                                                          vendorSoftwareProductId,
43                                                              Version version) {
44     ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
45     builder.withId(VendorSoftwareProductErrorCodes.VSP_INVALID);
46     builder.withCategory(ErrorCategory.APPLICATION);
47     builder
48         .withMessage(String.format(VSP_INVALID_MSG, vendorSoftwareProductId, version.toString()));
49     return builder.build();
50   }
51
52   /**
53    * Instantiates a new Vendor software product invalid error builder.
54    */
55   public static ErrorCode VspMissingDeploymentFlavorErrorBuilder() {
56     ErrorCode.ErrorCodeBuilder builder = new ErrorCode.ErrorCodeBuilder();
57     builder.withId(VendorSoftwareProductErrorCodes.VSP_INVALID);
58     builder.withCategory(ErrorCategory.APPLICATION);
59     builder
60         .withMessage(String.format(VSP_INVALID_MISSING_DEPLOYMENT_FLAVOR_MSG));
61     return builder.build();
62   }
63
64 }