.. java:import:: org.motechproject.mds.domain ClassData .. java:import:: org.motechproject.mds.domain Entity .. java:import:: javax.jdo.metadata JDOMetadata EntityMetadataBuilder ===================== .. java:package:: org.motechproject.mds.builder :noindex: .. java:type:: public interface EntityMetadataBuilder The \ ``EntityMetadataBuilderImpl``\ class is responsible for building jdo metadata for an entity class. Methods ------- addBaseMetadata ^^^^^^^^^^^^^^^ .. java:method:: void addBaseMetadata(JDOMetadata jdoMetadata, ClassData classData) :outertype: EntityMetadataBuilder Adds base information about package and class name to a \ :java:ref:`javax.jdo.metadata.JDOMetadata`\ instance. :param jdoMetadata: an empty instance of \ :java:ref:`javax.jdo.metadata.JDOMetadata`\ . :param classData: an instance of \ :java:ref:`org.motechproject.mds.domain.ClassData`\ addEntityMetadata ^^^^^^^^^^^^^^^^^ .. java:method:: void addEntityMetadata(JDOMetadata jdoMetadata, Entity entity) :outertype: EntityMetadataBuilder Adds information about package and class name to a \ :java:ref:`javax.jdo.metadata.JDOMetadata`\ instance. :param jdoMetadata: a empty instance of \ :java:ref:`javax.jdo.metadata.JDOMetadata`\ . :param entity: a instance of \ :java:ref:`org.motechproject.mds.domain.Entity`\ addHelperClassMetadata ^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: void addHelperClassMetadata(JDOMetadata jdoMetadata, ClassData classData, Entity entity) :outertype: EntityMetadataBuilder Creates metadata with basic information about package and class name to the \ :java:ref:`javax.jdo.metadata.JDOMetadata`\ instance. Additionally, fetches fields from passed entites and adds metadata for fields, if it's necessary. If entity is null, it will work just like \ ``addBaseMetadata(JDOMetadata, ClassData)``\ and won't add any metadata for fields. :param jdoMetadata: an empty instance of \ :java:ref:`javax.jdo.metadata.JDOMetadata`\ . :param classData: an instance of \ :java:ref:`org.motechproject.mds.domain.ClassData`\ :param entity: an entity to fetch fields from fixEnhancerIssuesInMetadata ^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. java:method:: void fixEnhancerIssuesInMetadata(JDOMetadata jdoMetadata) :outertype: EntityMetadataBuilder This updates the metadata after enhancement. Nucleus makes some "corrections" which do not work with the runtime enhancer.