Fix for ETSI_CATALOG onboarding NS package
[integration/csit.git] / plans / so / integration-etsi-testing / so-simulators / sdc-simulator / src / main / java / org / onap / so / sdcsimulator / models / ResourceMetadata.java
1 /*-
2  * ============LICENSE_START=======================================================
3  *  Copyright (C) 2021 Nordix Foundation.
4  * ================================================================================
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  * SPDX-License-Identifier: Apache-2.0
18  * ============LICENSE_END=========================================================
19  */
20 package org.onap.so.sdcsimulator.models;
21
22 import java.io.Serializable;
23 import org.springframework.util.ObjectUtils;
24 import com.fasterxml.jackson.annotation.JsonProperty;
25
26 /**
27  *
28  * @author Waqas Ikram (waqas.ikram@est.tech)
29  *
30  */
31 public class ResourceMetadata extends Metadata implements Serializable {
32
33     private static final long serialVersionUID = -6812049917047990700L;
34
35     @JsonProperty("subCategory")
36     private String subCategory;
37
38     public String getSubCategory() {
39         return subCategory;
40     }
41
42     public void setSubCategory(final String subCategory) {
43         this.subCategory = subCategory;
44     }
45
46     public ResourceMetadata subCategory(final String subCategory) {
47         this.subCategory = subCategory;
48         return this;
49     }
50
51     @Override
52     public int hashCode() {
53         final int prime = 31;
54         int result = 1;
55         result = prime * result + super.hashCode();
56         result = prime * result + ((subCategory == null) ? 0 : subCategory.hashCode());
57
58         return result;
59     }
60
61     @Override
62     public boolean equals(final Object obj) {
63         if (obj instanceof ResourceMetadata) {
64             final ResourceMetadata other = (ResourceMetadata) obj;
65             return super.equals(obj) && ObjectUtils.nullSafeEquals(subCategory, other.subCategory);
66
67         }
68         return false;
69     }
70
71     @Override
72     public String toString() {
73         final StringBuilder sb = new StringBuilder();
74         sb.append(super.toString());
75         sb.deleteCharAt(sb.length() - 1);
76         sb.append("    subCategory: ").append(subCategory).append("\n");
77
78         sb.append("}");
79         return sb.toString();
80     }
81
82 }