protected void defaultInitDbSqlSessionFactoryEntitySettings(List<Class<? extends Entity>> insertOrder, List<Class<? extends Entity>> deleteOrder) { for (Class<? extends Entity> clazz : insertOrder) { dbSqlSessionFactory.getInsertionOrder().add(clazz); if (isBulkInsertEnabled) { dbSqlSessionFactory.getBulkInserteableEntityClasses().add(clazz); } } for (Class<? extends Entity> clazz : deleteOrder) { dbSqlSessionFactory.getDeletionOrder().add(clazz); } }
protected void flushInserts() { if (insertedObjects.size() == 0) { return; } // Handle in entity dependency order for (Class<? extends Entity> entityClass : dbSqlSessionFactory.getInsertionOrder()) { if (insertedObjects.containsKey(entityClass)) { flushInsertEntities(entityClass, insertedObjects.get(entityClass).values()); insertedObjects.remove(entityClass); } } // Next, in case of custom entities or we've screwed up and forgotten some entity if (insertedObjects.size() > 0) { for (Class<? extends Entity> entityClass : insertedObjects.keySet()) { flushInsertEntities(entityClass, insertedObjects.get(entityClass).values()); } } insertedObjects.clear(); }
protected void initDbSqlSessionFactory(AbstractEngineConfiguration engineConfiguration, AbstractEngineConfiguration targetEngineConfiguration) { DbSqlSessionFactory dbSqlSessionFactory = engineConfiguration.getDbSqlSessionFactory(); targetEngineConfiguration.setDbSqlSessionFactory(engineConfiguration.getDbSqlSessionFactory()); targetEngineConfiguration.setSqlSessionFactory(engineConfiguration.getSqlSessionFactory()); if (getEntityInsertionOrder() != null) { for (Class<? extends Entity> clazz : getEntityInsertionOrder()) { dbSqlSessionFactory.getInsertionOrder().add(clazz); } } if (getEntityDeletionOrder() != null) { for (Class<? extends Entity> clazz : getEntityDeletionOrder()) { dbSqlSessionFactory.getDeletionOrder().add(clazz); } } }