class JPADataObjectFieldEditor extends FieldEditor implements JPADataObjectFieldEditorView.Presenter {

    @Override
    protected void loadDataObjectField(DataObject dataObject, ObjectProperty objectField) {
        clear();
        setReadonly(true);
        if (dataObject != null && objectField != null) {
            this.dataObject = dataObject;
            this.objectField = objectField;

            updateIdentifierField(objectField.getAnnotation(JPADomainAnnotations.JAVAX_PERSISTENCE_ID_ANNOTATION));
            updateColumnFields(objectField.getAnnotation(JPADomainAnnotations.JAVAX_PERSISTENCE_COLUMN_ANNOTATION));
            updateGeneratedValueField(objectField.getAnnotation(JPADomainAnnotations.JAVAX_PERSISTENCE_GENERATED_VALUE_ANNOTATION));
            updateSequenceGeneratorField(objectField.getAnnotation(JPADomainAnnotations.JAVAX_PERSISTENCE_SEQUENCE_GENERATOR_ANNOTATION));
            updateRelationshipField(getCurrentRelationshipAnnotation(objectField));

            setReadonly(getContext() == null || getContext().isReadonly());
        }
        loadPropertyEditor();
    }

    @Inject public  JPADataObjectFieldEditor(JPADataObjectFieldEditorView view,
                                    DomainHandlerRegistry handlerRegistry,
                                    Event<DataModelerEvent> dataModelerEvent,
                                    DataModelCommandBuilder commandBuilder);

}