001 package org.maltparser.core.propagation.spec;
002
003 /**
004 * @author Johan Hall
005 *
006 */
007 public class PropagationSpec {
008 public static final long serialVersionUID = 1L;
009 private String from;
010 private String to;
011 private String _for; // for
012 private String over;
013
014 public PropagationSpec(String from, String to, String _for, String over) {
015 setFrom(from);
016 setTo(to);
017 setFor(_for);
018 setOver(over);
019 }
020
021 public String getFrom() {
022 return from;
023 }
024
025 public void setFrom(String from) {
026 this.from = from;
027 }
028
029 public String getTo() {
030 return to;
031 }
032
033 public void setTo(String to) {
034 this.to = to;
035 }
036
037 public String getFor() {
038 return _for;
039 }
040
041 public void setFor(String _for) {
042 this._for = _for;
043 }
044
045 public String getOver() {
046 return over;
047 }
048
049 public void setOver(String over) {
050 this.over = over;
051 }
052
053 @Override
054 public int hashCode() {
055 final int prime = 31;
056 int result = 1;
057 result = prime * result + ((_for == null) ? 0 : _for.hashCode());
058 result = prime * result + ((from == null) ? 0 : from.hashCode());
059 result = prime * result + ((over == null) ? 0 : over.hashCode());
060 result = prime * result + ((to == null) ? 0 : to.hashCode());
061 return result;
062 }
063
064 @Override
065 public boolean equals(Object obj) {
066 if (this == obj)
067 return true;
068 if (obj == null)
069 return false;
070 if (getClass() != obj.getClass())
071 return false;
072 PropagationSpec other = (PropagationSpec) obj;
073 if (_for == null) {
074 if (other._for != null)
075 return false;
076 } else if (!_for.equals(other._for))
077 return false;
078 if (from == null) {
079 if (other.from != null)
080 return false;
081 } else if (!from.equals(other.from))
082 return false;
083 if (over == null) {
084 if (other.over != null)
085 return false;
086 } else if (!over.equals(other.over))
087 return false;
088 if (to == null) {
089 if (other.to != null)
090 return false;
091 } else if (!to.equals(other.to))
092 return false;
093 return true;
094 }
095
096 @Override
097 public String toString() {
098 StringBuilder sb = new StringBuilder();
099 sb.append("FROM: "); sb.append(from);sb.append("\n");
100 sb.append("TO : "); sb.append(to);sb.append("\n");
101 sb.append("FOR : "); sb.append(_for);sb.append("\n");
102 sb.append("OVER: "); sb.append(over);sb.append("\n");
103 return sb.toString();
104 }
105 }