1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.commons.cache.remote;
17
18 import java.io.Serializable;
19
20
21
22
23
24
25
26 public class ObjectArrayResponse implements CacheResponse {
27 protected Serializable[] _sers = null;
28
29 public ObjectArrayResponse(Serializable[] sers) {
30 _sers = sers;
31 }
32
33 public Serializable[] getArray() {
34 return _sers;
35 }
36
37 public Serializable getObject(int i) {
38 return _sers[i];
39 }
40
41 public int getLength() {
42 return _sers.length;
43 }
44
45 public boolean equals(ObjectArrayResponse res) {
46 if(null == res) {
47 return false;
48 } else if(null == res.getArray()) {
49 return (null == _sers);
50 } else if(null == _sers) {
51 return false;
52 } else if(_sers.length != res.getLength()) {
53 return false;
54 } else {
55 for(int i=0;i<_sers.length;i++) {
56 if(! (_sers[i] == null ? ( null == res.getObject(i) ) : _sers[i].equals(res.getObject(i)) ) ) {
57 return false;
58 }
59 }
60 return true;
61 }
62 }
63
64 public int hashCode() {
65 if(null == _sers) {
66 return this.getClass().getName().hashCode();
67 } else {
68 int hc = 0;
69 for(int i=0;i<_sers.length;i++) {
70 try {
71 hc ^= _sers[i].hashCode();
72 } catch(NullPointerException e) {
73
74 }
75 }
76 return hc;
77 }
78 }
79 }