package org.springframework.data.simpledb.core.entity; import org.springframework.data.mapping.model.MappingException; import org.springframework.data.simpledb.attributeutil.SimpleDBAttributeConverter; import java.io.Serializable; import java.lang.reflect.Field; import java.text.ParseException; public class SimpleFieldWrapper<T, ID extends Serializable> extends AbstractSimpleFieldWrapper<T, ID> { public SimpleFieldWrapper(Field field, EntityWrapper<T, ID> parent, final boolean isNewParent) { super(field, parent, isNewParent); } @Override public String serializeValue() { return SimpleDBAttributeConverter.encode(this.getFieldValue()); } @Override public Object deserializeValue(String value) { try { return SimpleDBAttributeConverter.decodeToFieldOfType(value, getField().getType()); } catch(IllegalArgumentException e) { throw new MappingException("Could not map attributes", e); } catch(ParseException e) { throw new MappingException("Could not map attributes", e); } } }