0ba1562ee935000e745d6e2f68df944ad5f22fad
[idea/community.git] / plugins / groovy / src / org / jetbrains / plugins / groovy / annotator / intentions / dynamic / MyPair.java
1 /*
2  * Copyright 2000-2009 JetBrains s.r.o.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package org.jetbrains.plugins.groovy.annotator.intentions.dynamic;
17
18 import java.util.Arrays;
19
20 /**
21  * User: Dmitry.Krasilschikov
22  * Date: 29.02.2008
23  */
24 public class MyPair  {
25   public String first = null;
26   public String second = null;
27
28   public MyPair() {
29   }
30
31   public MyPair(String first, String second) {
32     this.first = first;
33     this.second = second;
34   }
35
36   public void setFirst(String first) {
37     this.first = first;
38   }
39   
40   public void setSecond(String second) {
41     this.second = second;
42   }
43
44   public final int hashCode() {
45     int hashCode = 0;
46     if (first != null) {
47       hashCode += hashCode(first);
48     }
49     if (second != null) {
50       hashCode += hashCode(second);
51     }
52     return hashCode;
53   }
54
55   private static int hashCode(final Object o) {
56     return (o instanceof Object[]) ? Arrays.hashCode((Object[]) o) : o.hashCode();
57   }
58
59   public String toString() {
60     return "<" + first + "," + second + ">";
61   }
62 }