package org.sculptor.examples.library.person.mapper; import org.sculptor.examples.library.person.domain.Person; import com.mongodb.BasicDBObject; import com.mongodb.DBObject; public class PersonMapper extends PersonMapperBase { private static final PersonMapper instance = new PersonMapper(); protected PersonMapper() { } public static PersonMapper getInstance() { return instance; } @Override public Person toDomain(DBObject from) { if (from == null) { return null; } // backwards compatibility, converting from old name structure to new if (!from.containsField("name") && from.containsField("firstName") && from.containsField("lastName")) { BasicDBObject name = new BasicDBObject(); name.put("first", from.get("firstName")); name.put("last", from.get("lastName")); from.put("name", name); } return super.toDomain(from); } @Override public DBObject toData(Person from) { return super.toData(from); } }