package org.springframework.data.simpledb.core.entity; import org.springframework.data.annotation.Reference; import org.springframework.data.simpledb.core.SimpleDbTemplate; import org.springframework.data.simpledb.reflection.FieldType; import org.springframework.data.simpledb.reflection.MetadataParser; import java.io.Serializable; import java.lang.reflect.Field; /** * Wraps {@link FieldType#REFERENCE_ENTITY} fields. A reference field is annotated with {@link Reference} */ public class ReferenceEntityFieldWrapper<T, ID extends Serializable> extends AbstractSimpleFieldWrapper<T, ID> { public ReferenceEntityFieldWrapper(Field field, EntityWrapper<T, ID> parent, final boolean isNewParent) { super(field, parent, isNewParent); } @Override public String serializeValue() { final Object fieldValue = getFieldValue(); return MetadataParser.getItemName(fieldValue); } /** * Deserialization for nested reference fields is handled by {@link SimpleDbTemplate} */ @Override public Object deserializeValue(String value) { return null; } }