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 flushDeletes() { if (deletedObjects.size() == 0 && bulkDeleteOperations.size() == 0) { return; } // Handle in entity dependency order for (Class<? extends Entity> entityClass : dbSqlSessionFactory.getDeletionOrder()) { if (deletedObjects.containsKey(entityClass)) { flushDeleteEntities(entityClass, deletedObjects.get(entityClass).values()); deletedObjects.remove(entityClass); } flushBulkDeletes(entityClass); } // Next, in case of custom entities or we've screwed up and forgotten some entity if (deletedObjects.size() > 0) { for (Class<? extends Entity> entityClass : deletedObjects.keySet()) { flushDeleteEntities(entityClass, deletedObjects.get(entityClass).values()); flushBulkDeletes(entityClass); } } deletedObjects.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); } } }