/** * Creates a new instance of <code>EntityManager</code> using the specified {@link DatabaseProvider}. * * @param provider the {@link DatabaseProvider} to use in all database operations. * @param configuration the configuration for this entity manager */ public EntityManager(DatabaseProvider provider, EntityManagerConfiguration configuration) { this.provider = Objects.requireNonNull(provider, "provider can't be null"); this.configuration = Objects.requireNonNull(configuration); valGenCache = CacheBuilder.newBuilder().build(new CacheLoader<Class<? extends ValueGenerator<?>>, ValueGenerator<?>>() { @Override public ValueGenerator<?> load(Class<? extends ValueGenerator<?>> generatorClass) throws Exception { return generatorClass.newInstance(); } }); // TODO: move caching out of there! nameConverters = new CachingNameConverters(configuration.getNameConverters()); schemaConfiguration = Objects.requireNonNull(configuration.getSchemaConfiguration(), "schema configuration can't be null"); typeMapper = new DefaultPolymorphicTypeMapper(new HashMap<Class<? extends RawEntity<?>>, String>()); entityInfoResolver = Objects.requireNonNull(configuration.getEntityInfoResolverFactory().create(nameConverters, provider.getTypeManager()), "entityInfoResolver"); }
/** * Creates a new instance of <code>EntityManager</code> using the specified {@link DatabaseProvider}. * * @param provider the {@link DatabaseProvider} to use in all database operations. * @param configuration the configuration for this entity manager */ public EntityManager(DatabaseProvider provider, EntityManagerConfiguration configuration) { this.provider = Objects.requireNonNull(provider, "provider can't be null"); this.configuration = Objects.requireNonNull(configuration); valGenCache = CacheBuilder.newBuilder().build(new CacheLoader<Class<? extends ValueGenerator<?>>, ValueGenerator<?>>() { @Override public ValueGenerator<?> load(Class<? extends ValueGenerator<?>> generatorClass) throws Exception { return generatorClass.newInstance(); } }); // TODO: move caching out of there! nameConverters = new CachingNameConverters(configuration.getNameConverters()); schemaConfiguration = Objects.requireNonNull(configuration.getSchemaConfiguration(), "schema configuration can't be null"); typeMapper = new DefaultPolymorphicTypeMapper(new HashMap<Class<? extends RawEntity<?>>, String>()); entityInfoResolver = Objects.requireNonNull(configuration.getEntityInfoResolverFactory().create(nameConverters, provider.getTypeManager()), "entityInfoResolver"); }
public void migrateDestructively(Class<? extends RawEntity<?>>... entities) { try { entityManager.setPolymorphicTypeMapper(new DefaultPolymorphicTypeMapper(entities)); entityManager.migrateDestructively(entities); } catch (SQLException e) { throw new ActiveObjectsSqlException(entityManager, e); } }
public final void migrate(Class<? extends RawEntity<?>>... entities) { try { entityManager.setPolymorphicTypeMapper(new DefaultPolymorphicTypeMapper(entities)); entityManager.migrate(entities); } catch (SQLException e) { throw new ActiveObjectsSqlException(entityManager, e); } }