package org.drugis.common.beans;
import org.drugis.common.EqualsUtil;
import com.jgoodies.binding.value.AbstractConverter;
import com.jgoodies.binding.value.ValueModel;
public class ValueEqualsModel extends AbstractConverter {
private static final long serialVersionUID = 7371154626359770150L;
private Object d_expectedValue;
public ValueEqualsModel(final ValueModel model, final Object expectedValue) {
super(model);
d_expectedValue = expectedValue;
}
public void setValue(final Object newValue) {
throw new UnsupportedOperationException(getClass().getSimpleName() + " is read-only");
}
public Object convertFromSubject(final Object subjectValue) {
return EqualsUtil.equal(d_expectedValue, subjectValue);
}
public void setExpected(Object expectedValue) {
Object oldVal = getValue();
d_expectedValue = expectedValue;
firePropertyChange("value", oldVal, getValue());
}
}