.. java:import:: org.apache.commons.io IOUtils .. java:import:: org.datanucleus NucleusContext .. java:import:: org.datanucleus.api.jdo JDOPersistenceManagerFactory .. java:import:: org.datanucleus.store.schema SchemaAwareStoreManager .. java:import:: org.motechproject.mds.service JarGeneratorService .. java:import:: org.motechproject.mds.util ClassName .. java:import:: org.slf4j Logger .. java:import:: org.slf4j LoggerFactory .. java:import:: org.springframework.beans.factory InitializingBean .. java:import:: org.springframework.core.io ClassPathResource .. java:import:: java.io IOException .. java:import:: java.io InputStream .. java:import:: java.util HashSet .. java:import:: java.util Properties .. java:import:: java.util Set SchemaGenerator =============== .. java:package:: org.motechproject.mds.jdo :noindex: .. java:type:: public class SchemaGenerator implements InitializingBean The schema generator class is responsible for generating the table schema for entities upon start. Schema for all entity classes has to be generated, otherwise issues might arise in foreign key generation for example. This code runs in the generated entities bundle. Constructors ------------ SchemaGenerator ^^^^^^^^^^^^^^^ .. java:constructor:: public SchemaGenerator(JDOPersistenceManagerFactory persistenceManagerFactory) :outertype: SchemaGenerator Methods ------- afterPropertiesSet ^^^^^^^^^^^^^^^^^^ .. java:method:: @Override public void afterPropertiesSet() :outertype: SchemaGenerator generateSchema ^^^^^^^^^^^^^^ .. java:method:: public void generateSchema() :outertype: SchemaGenerator