/*
* This file is part of ADDIS (Aggregate Data Drug Information System).
* ADDIS is distributed from http://drugis.org/.
* Copyright © 2009 Gert van Valkenhoef, Tommi Tervonen.
* Copyright © 2010 Gert van Valkenhoef, Tommi Tervonen, Tijs Zwinkels,
* Maarten Jacobs, Hanno Koeslag, Florin Schimbinschi, Ahmad Kamal, Daniel
* Reid.
* Copyright © 2011 Gert van Valkenhoef, Ahmad Kamal, Daniel Reid, Florin
* Schimbinschi.
* Copyright © 2012 Gert van Valkenhoef, Daniel Reid, Joël Kuiper, Wouter
* Reckman.
* Copyright © 2013 Gert van Valkenhoef, Joël Kuiper.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package org.drugis.addis.entities;
import java.util.Collections;
import java.util.Set;
public class Drug extends AbstractNamedEntity<Drug> implements Comparable<Drug> {
private String d_atcCode = "";
public static final String PROPERTY_ATCCODE = "atcCode";
public Drug(String name, String atcCode) {
super(name);
d_atcCode = atcCode;
}
public String getAtcCode() {
return d_atcCode;
}
public void setAtcCode(String atcCode) {
String oldVal = d_atcCode;
d_atcCode = atcCode;
firePropertyChange(PROPERTY_ATCCODE, oldVal, d_atcCode);
}
@Override
public String toString() {
return getName();
}
@Override
public boolean equals(Object o) {
if (o instanceof Drug) {
return super.equals(o);
}
return false;
}
@Override
public boolean deepEquals(Entity other) {
if(!equals(other)) {
return false;
}
Drug d = (Drug) other;
return (getAtcCode().equals(d.getAtcCode()));
}
@Override
public Set<Entity> getDependencies() {
return Collections.emptySet();
}
public void setName(String name) {
String oldVal = d_name;
d_name = name;
firePropertyChange(PROPERTY_NAME, oldVal, d_name);
}
}