Project

General

Profile

1
package eu.dnetlib.enabling.tools.blackboard;
2

    
3
import javax.xml.bind.annotation.XmlAttribute;
4
import javax.xml.bind.annotation.XmlRootElement;
5

    
6
import org.apache.commons.lang3.builder.EqualsBuilder;
7
import org.apache.commons.lang3.builder.HashCodeBuilder;
8

    
9
/**
10
 * Blackboard parameter.
11
 *
12
 * @author marko
13
 */
14
@XmlRootElement(name = "PARAMETER")
15
public class BlackboardParameterImpl implements BlackboardParameter {
16

    
17
	/**
18
	 * hash seed.
19
	 */
20
	private static final int HASH_SEED_2 = 59;
21

    
22
	/**
23
	 * hash seed.
24
	 */
25
	private static final int HASH_SEED = 35;
26

    
27
	/**
28
	 * parameter name.
29
	 */
30
	private String name;
31

    
32
	/**
33
	 * parameter value.
34
	 */
35
	private String value;
36

    
37
	/**
38
	 * {@inheritDoc}
39
	 *
40
	 * @see java.lang.Object#equals(java.lang.Object)
41
	 */
42
	@Override
43
	public boolean equals(final Object obj) {
44
		if (!(obj instanceof BlackboardParameter))
45
			return false;
46

    
47
		if (this == obj)
48
			return true;
49

    
50
		final BlackboardParameter rhs = (BlackboardParameter) obj;
51
		return new EqualsBuilder().append(name, rhs.getName()).append(value, rhs.getValue()).isEquals();
52
	}
53

    
54
	/**
55
	 * {@inheritDoc}
56
	 *
57
	 * @see java.lang.Object#hashCode()
58
	 */
59
	@Override
60
	public int hashCode() {
61
		return new HashCodeBuilder(HASH_SEED, HASH_SEED_2).append(name).append(value).toHashCode();
62
	}
63

    
64
	@Override
65
	@XmlAttribute
66
	public String getName() {
67
		return name;
68
	}
69

    
70
	@Override
71
	public void setName(final String name) {
72
		this.name = name;
73
	}
74

    
75
	@Override
76
	@XmlAttribute
77
	public String getValue() {
78
		return value;
79
	}
80

    
81
	@Override
82
	public void setValue(final String value) {
83
		this.value = value;
84
	}
85

    
86
}
(16-16/27)