]> source.dussan.org Git - archiva.git/blob
0d28a539d5f4cb22e9fceeefd89884364f76805f
[archiva.git] /
1 package org.apache.archiva.rest.api.v2.model;/*
2  * Licensed to the Apache Software Foundation (ASF) under one
3  * or more contributor license agreements.  See the NOTICE file
4  * distributed with this work for additional information
5  * regarding copyright ownership.  The ASF licenses this file
6  * to you under the Apache License, Version 2.0 (the
7  * "License"); you may not use this file except in compliance
8  * with the License.  You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  * Unless required by applicable law or agreed to in writing,
12  * software distributed under the License is distributed on an
13  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14  * KIND, either express or implied.  See the License for the
15  * specific language governing permissions and limitations
16  * under the License.
17  */
18
19 /*
20  * Licensed to the Apache Software Foundation (ASF) under one
21  * or more contributor license agreements.  See the NOTICE file
22  * distributed with this work for additional information
23  * regarding copyright ownership.  The ASF licenses this file
24  * to you under the Apache License, Version 2.0 (the
25  * "License"); you may not use this file except in compliance
26  * with the License.  You may obtain a copy of the License at
27  *
28  * http://www.apache.org/licenses/LICENSE-2.0
29  * Unless required by applicable law or agreed to in writing,
30  * software distributed under the License is distributed on an
31  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
32  * KIND, either express or implied.  See the License for the
33  * specific language governing permissions and limitations
34  * under the License.
35  */
36
37 import io.swagger.v3.oas.annotations.media.Schema;
38
39 import javax.xml.bind.annotation.XmlRootElement;
40 import java.io.Serializable;
41 import java.util.Objects;
42
43 /**
44  * @author Martin Stockhammer <martin_s@apache.org>
45  */
46 @XmlRootElement(name="beanInformation")
47 @Schema(name="BeanInformation",description = "Information about a bean instance.")
48 public class BeanInformation implements Serializable
49 {
50     private static final long serialVersionUID = -432385743277355987L;
51     private String id;
52     private String displayName;
53     private String descriptionKey;
54     private String defaultDescription;
55     private boolean readonly;
56
57     public BeanInformation( )
58     {
59     }
60
61     public BeanInformation( String id, String displayName, String descriptionKey, String defaultDescription, boolean readonly )
62     {
63         this.id = id;
64         this.displayName = displayName;
65         this.descriptionKey = descriptionKey;
66         this.defaultDescription = defaultDescription;
67         this.readonly = readonly;
68     }
69
70     @Schema(description = "The identifier")
71     public String getId( )
72     {
73         return id;
74     }
75
76     public void setId( String id )
77     {
78         this.id = id;
79     }
80
81     @Schema(name="display_name", description = "The display name")
82     public String getDisplayName( )
83     {
84         return displayName;
85     }
86
87     public void setDisplayName( String displayName )
88     {
89         this.displayName = displayName;
90     }
91
92     @Schema(name="description_key", description = "The translation key for the description")
93     public String getDescriptionKey( )
94     {
95         return descriptionKey;
96     }
97
98     public void setDescriptionKey( String descriptionKey )
99     {
100         this.descriptionKey = descriptionKey;
101     }
102
103     @Schema(name="default_description", description = "The description translated in the default language")
104     public String getDefaultDescription( )
105     {
106         return defaultDescription;
107     }
108
109     public void setDefaultDescription( String defaultDescription )
110     {
111         this.defaultDescription = defaultDescription;
112     }
113
114     @Schema(description = "True, if this bean cannot be removed")
115     public boolean isReadonly( )
116     {
117         return readonly;
118     }
119
120     public void setReadonly( boolean readonly )
121     {
122         this.readonly = readonly;
123     }
124
125     @Override
126     public boolean equals( Object o )
127     {
128         if ( this == o ) return true;
129         if ( o == null || getClass( ) != o.getClass( ) ) return false;
130         BeanInformation that = (BeanInformation) o;
131         return readonly == that.readonly && id.equals( that.id ) && Objects.equals( displayName, that.displayName ) && Objects.equals( descriptionKey, that.descriptionKey ) && Objects.equals( defaultDescription, that.defaultDescription );
132     }
133
134     @Override
135     public int hashCode( )
136     {
137         return Objects.hash( id, displayName, descriptionKey, defaultDescription, readonly );
138     }
139
140     @Override
141     public String toString( )
142     {
143         return "BeanInformation{" +
144             "id='" + id + '\'' +
145             ", display_name='" + displayName + '\'' +
146             ", description_key='" + descriptionKey + '\'' +
147             ", default_description='" + defaultDescription + '\'' +
148             ", readonly=" + readonly +
149             '}';
150     }
151 }