dhp-schemas/src/main/java/eu/dnetlib/dhp/schema/oaf/Qualifier.java

69 lines
1.3 KiB
Java

package eu.dnetlib.dhp.schema.oaf;
import java.io.Serializable;
import java.util.stream.Stream;
import org.apache.commons.lang3.StringUtils;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.google.common.base.Joiner;
public class Qualifier implements Serializable {
private String classid;
private String classname;
private String schemeid;
public String getClassid() {
return classid;
}
public void setClassid(String classid) {
this.classid = classid;
}
public String getClassname() {
return classname;
}
public void setClassname(String classname) {
this.classname = classname;
}
public String getSchemeid() {
return schemeid;
}
public void setSchemeid(String schemeid) {
this.schemeid = schemeid;
}
public String toComparableString() {
return Joiner
.on("::")
.join(
Stream.of(getClassid(), getClassname(), getSchemeid())
.filter(StringUtils::isNotBlank).iterator());
}
@Override
public int hashCode() {
return toComparableString().hashCode();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Qualifier other = (Qualifier) obj;
return toComparableString().equals(other.toComparableString());
}
}