update author list in license for (JAL-826)
[jalview.git] / src / uk / ac / ebi / picr / model / UPEntry.java
1 /*\r
2  * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7)\r
3  * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle\r
4  * \r
5  * This file is part of Jalview.\r
6  * \r
7  * Jalview is free software: you can redistribute it and/or\r
8  * modify it under the terms of the GNU General Public License \r
9  * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.\r
10  * \r
11  * Jalview is distributed in the hope that it will be useful, but \r
12  * WITHOUT ANY WARRANTY; without even the implied warranty \r
13  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR \r
14  * PURPOSE.  See the GNU General Public License for more details.\r
15  * \r
16  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.\r
17  */\r
18 package uk.ac.ebi.picr.model;\r
19 \r
20 public class UPEntry implements java.io.Serializable\r
21 {\r
22   private java.lang.String CRC64;\r
23 \r
24   private java.lang.String UPI;\r
25 \r
26   private uk.ac.ebi.picr.model.CrossReference[] identicalCrossReferences;\r
27 \r
28   private uk.ac.ebi.picr.model.CrossReference[] logicalCrossReferences;\r
29 \r
30   private java.lang.String sequence;\r
31 \r
32   private java.util.Calendar timestamp;\r
33 \r
34   public UPEntry()\r
35   {\r
36   }\r
37 \r
38   public UPEntry(java.lang.String CRC64, java.lang.String UPI,\r
39           uk.ac.ebi.picr.model.CrossReference[] identicalCrossReferences,\r
40           uk.ac.ebi.picr.model.CrossReference[] logicalCrossReferences,\r
41           java.lang.String sequence, java.util.Calendar timestamp)\r
42   {\r
43     this.CRC64 = CRC64;\r
44     this.UPI = UPI;\r
45     this.identicalCrossReferences = identicalCrossReferences;\r
46     this.logicalCrossReferences = logicalCrossReferences;\r
47     this.sequence = sequence;\r
48     this.timestamp = timestamp;\r
49   }\r
50 \r
51   /**\r
52    * Gets the CRC64 value for this UPEntry.\r
53    * \r
54    * @return CRC64\r
55    */\r
56   public java.lang.String getCRC64()\r
57   {\r
58     return CRC64;\r
59   }\r
60 \r
61   /**\r
62    * Sets the CRC64 value for this UPEntry.\r
63    * \r
64    * @param CRC64\r
65    */\r
66   public void setCRC64(java.lang.String CRC64)\r
67   {\r
68     this.CRC64 = CRC64;\r
69   }\r
70 \r
71   /**\r
72    * Gets the UPI value for this UPEntry.\r
73    * \r
74    * @return UPI\r
75    */\r
76   public java.lang.String getUPI()\r
77   {\r
78     return UPI;\r
79   }\r
80 \r
81   /**\r
82    * Sets the UPI value for this UPEntry.\r
83    * \r
84    * @param UPI\r
85    */\r
86   public void setUPI(java.lang.String UPI)\r
87   {\r
88     this.UPI = UPI;\r
89   }\r
90 \r
91   /**\r
92    * Gets the identicalCrossReferences value for this UPEntry.\r
93    * \r
94    * @return identicalCrossReferences\r
95    */\r
96   public uk.ac.ebi.picr.model.CrossReference[] getIdenticalCrossReferences()\r
97   {\r
98     return identicalCrossReferences;\r
99   }\r
100 \r
101   /**\r
102    * Sets the identicalCrossReferences value for this UPEntry.\r
103    * \r
104    * @param identicalCrossReferences\r
105    */\r
106   public void setIdenticalCrossReferences(\r
107           uk.ac.ebi.picr.model.CrossReference[] identicalCrossReferences)\r
108   {\r
109     this.identicalCrossReferences = identicalCrossReferences;\r
110   }\r
111 \r
112   public uk.ac.ebi.picr.model.CrossReference getIdenticalCrossReferences(\r
113           int i)\r
114   {\r
115     return this.identicalCrossReferences[i];\r
116   }\r
117 \r
118   public void setIdenticalCrossReferences(int i,\r
119           uk.ac.ebi.picr.model.CrossReference _value)\r
120   {\r
121     this.identicalCrossReferences[i] = _value;\r
122   }\r
123 \r
124   /**\r
125    * Gets the logicalCrossReferences value for this UPEntry.\r
126    * \r
127    * @return logicalCrossReferences\r
128    */\r
129   public uk.ac.ebi.picr.model.CrossReference[] getLogicalCrossReferences()\r
130   {\r
131     return logicalCrossReferences;\r
132   }\r
133 \r
134   /**\r
135    * Sets the logicalCrossReferences value for this UPEntry.\r
136    * \r
137    * @param logicalCrossReferences\r
138    */\r
139   public void setLogicalCrossReferences(\r
140           uk.ac.ebi.picr.model.CrossReference[] logicalCrossReferences)\r
141   {\r
142     this.logicalCrossReferences = logicalCrossReferences;\r
143   }\r
144 \r
145   public uk.ac.ebi.picr.model.CrossReference getLogicalCrossReferences(int i)\r
146   {\r
147     return this.logicalCrossReferences[i];\r
148   }\r
149 \r
150   public void setLogicalCrossReferences(int i,\r
151           uk.ac.ebi.picr.model.CrossReference _value)\r
152   {\r
153     this.logicalCrossReferences[i] = _value;\r
154   }\r
155 \r
156   /**\r
157    * Gets the sequence value for this UPEntry.\r
158    * \r
159    * @return sequence\r
160    */\r
161   public java.lang.String getSequence()\r
162   {\r
163     return sequence;\r
164   }\r
165 \r
166   /**\r
167    * Sets the sequence value for this UPEntry.\r
168    * \r
169    * @param sequence\r
170    */\r
171   public void setSequence(java.lang.String sequence)\r
172   {\r
173     this.sequence = sequence;\r
174   }\r
175 \r
176   /**\r
177    * Gets the timestamp value for this UPEntry.\r
178    * \r
179    * @return timestamp\r
180    */\r
181   public java.util.Calendar getTimestamp()\r
182   {\r
183     return timestamp;\r
184   }\r
185 \r
186   /**\r
187    * Sets the timestamp value for this UPEntry.\r
188    * \r
189    * @param timestamp\r
190    */\r
191   public void setTimestamp(java.util.Calendar timestamp)\r
192   {\r
193     this.timestamp = timestamp;\r
194   }\r
195 \r
196   private java.lang.Object __equalsCalc = null;\r
197 \r
198   public synchronized boolean equals(java.lang.Object obj)\r
199   {\r
200     if (!(obj instanceof UPEntry))\r
201       return false;\r
202     UPEntry other = (UPEntry) obj;\r
203     if (obj == null)\r
204       return false;\r
205     if (this == obj)\r
206       return true;\r
207     if (__equalsCalc != null)\r
208     {\r
209       return (__equalsCalc == obj);\r
210     }\r
211     __equalsCalc = obj;\r
212     boolean _equals;\r
213     _equals = true\r
214             && ((this.CRC64 == null && other.getCRC64() == null) || (this.CRC64 != null && this.CRC64\r
215                     .equals(other.getCRC64())))\r
216             && ((this.UPI == null && other.getUPI() == null) || (this.UPI != null && this.UPI\r
217                     .equals(other.getUPI())))\r
218             && ((this.identicalCrossReferences == null && other\r
219                     .getIdenticalCrossReferences() == null) || (this.identicalCrossReferences != null && java.util.Arrays\r
220                     .equals(this.identicalCrossReferences,\r
221                             other.getIdenticalCrossReferences())))\r
222             && ((this.logicalCrossReferences == null && other\r
223                     .getLogicalCrossReferences() == null) || (this.logicalCrossReferences != null && java.util.Arrays\r
224                     .equals(this.logicalCrossReferences,\r
225                             other.getLogicalCrossReferences())))\r
226             && ((this.sequence == null && other.getSequence() == null) || (this.sequence != null && this.sequence\r
227                     .equals(other.getSequence())))\r
228             && ((this.timestamp == null && other.getTimestamp() == null) || (this.timestamp != null && this.timestamp\r
229                     .equals(other.getTimestamp())));\r
230     __equalsCalc = null;\r
231     return _equals;\r
232   }\r
233 \r
234   private boolean __hashCodeCalc = false;\r
235 \r
236   public synchronized int hashCode()\r
237   {\r
238     if (__hashCodeCalc)\r
239     {\r
240       return 0;\r
241     }\r
242     __hashCodeCalc = true;\r
243     int _hashCode = 1;\r
244     if (getCRC64() != null)\r
245     {\r
246       _hashCode += getCRC64().hashCode();\r
247     }\r
248     if (getUPI() != null)\r
249     {\r
250       _hashCode += getUPI().hashCode();\r
251     }\r
252     if (getIdenticalCrossReferences() != null)\r
253     {\r
254       for (int i = 0; i < java.lang.reflect.Array\r
255               .getLength(getIdenticalCrossReferences()); i++)\r
256       {\r
257         java.lang.Object obj = java.lang.reflect.Array.get(\r
258                 getIdenticalCrossReferences(), i);\r
259         if (obj != null && !obj.getClass().isArray())\r
260         {\r
261           _hashCode += obj.hashCode();\r
262         }\r
263       }\r
264     }\r
265     if (getLogicalCrossReferences() != null)\r
266     {\r
267       for (int i = 0; i < java.lang.reflect.Array\r
268               .getLength(getLogicalCrossReferences()); i++)\r
269       {\r
270         java.lang.Object obj = java.lang.reflect.Array.get(\r
271                 getLogicalCrossReferences(), i);\r
272         if (obj != null && !obj.getClass().isArray())\r
273         {\r
274           _hashCode += obj.hashCode();\r
275         }\r
276       }\r
277     }\r
278     if (getSequence() != null)\r
279     {\r
280       _hashCode += getSequence().hashCode();\r
281     }\r
282     if (getTimestamp() != null)\r
283     {\r
284       _hashCode += getTimestamp().hashCode();\r
285     }\r
286     __hashCodeCalc = false;\r
287     return _hashCode;\r
288   }\r
289 \r
290 }\r