package er.neo4jadaptor.ersatz.webobjects; import com.webobjects.eoaccess.EOAttribute; import com.webobjects.foundation.NSKeyValueCoding; import er.neo4jadaptor.ersatz.Translator; /** * Encodes <code>null</code> as {@link NSKeyValueCoding#NullValue}, while all other values remain unchanged. * * @author Jedrzej Sobanski */ public class NSTranslator implements Translator { public static final NSTranslator instance = new NSTranslator(); private NSTranslator() { } public Object fromNeutralValue(Object value, EOAttribute att) { if (value != null) { return value; } else { return NSKeyValueCoding.NullValue; } } public Object toNeutralValue(Object value, EOAttribute att) { if (NSKeyValueCoding.NullValue.equals(value)) { return null; } else { return value; } } }