@Override public DeleteHandler buildDeleteHandler(SessionFactoryImplementor factory, HqlSqlWalker walker) { return delegate.buildDeleteHandler(factory, walker); }
@Override public void prepare(JdbcServices jdbcServices, JdbcConnectionAccess jdbcConnectionAccess, Mappings mappings, Mapping mapping, Map map) { delegate.prepare(jdbcServices, jdbcConnectionAccess, mappings, mapping, map); }
@Override public void release(JdbcServices jdbcServices, JdbcConnectionAccess jdbcConnectionAccess) { delegate.release(jdbcServices, jdbcConnectionAccess); } }
@Override public UpdateHandler buildUpdateHandler(SessionFactoryImplementor factory, HqlSqlWalker walker) { UpdateHandler updateHandler = delegate.buildUpdateHandler(factory, walker); final UpdateStatement updateStatement = (UpdateStatement) walker.getAST(); final FromElement fromElement = updateStatement.getFromClause().getFromElement(); final AbstractEntityPersister targetedPersister = (AbstractEntityPersister) fromElement.getQueryable(); // Only do this when we have secondary tables if (targetedPersister.getConstraintOrderedTableNameClosure().length > 1) { if (updateHandler instanceof TableBasedUpdateHandlerImpl) { return new CustomTableBasedUpdateHandlerImpl((TableBasedUpdateHandlerImpl) updateHandler, walker); } else { LOG.warning("Unsupported update handler that can't be adapted to support updates to secondary tables: " + updateHandler); } } return updateHandler; }
@Override public UpdateHandler buildUpdateHandler(SessionFactoryImplementor factory, HqlSqlWalker walker) { UpdateHandler updateHandler = delegate.buildUpdateHandler(factory, walker); final UpdateStatement updateStatement = (UpdateStatement) walker.getAST(); final FromElement fromElement = updateStatement.getFromClause().getFromElement(); final AbstractEntityPersister targetedPersister = (AbstractEntityPersister) fromElement.getQueryable(); // Only do this when we have secondary tables if (targetedPersister.getConstraintOrderedTableNameClosure().length > 1) { if (updateHandler instanceof TableBasedUpdateHandlerImpl) { return new CustomTableBasedUpdateHandlerImpl((TableBasedUpdateHandlerImpl) updateHandler, walker); } else { LOG.warning("Unsupported update handler that can't be adapted to support updates to secondary tables: " + updateHandler); } } return updateHandler; }
@Override public void release(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess) { delegate.release(jdbcServices, connectionAccess); } }
@Override public void prepare(JdbcServices jdbcServices, JdbcConnectionAccess jdbcConnectionAccess, Mappings mappings, Mapping mapping, Map map) { delegate.prepare(jdbcServices, jdbcConnectionAccess, mappings, mapping, map); }
@Override public DeleteHandler buildDeleteHandler(SessionFactoryImplementor factory, HqlSqlWalker walker) { return delegate.buildDeleteHandler(factory, walker); }
@Override public UpdateHandler buildUpdateHandler(SessionFactoryImplementor factory, HqlSqlWalker walker) { UpdateHandler updateHandler = delegate.buildUpdateHandler(factory, walker); final UpdateStatement updateStatement = (UpdateStatement) walker.getAST(); final FromElement fromElement = updateStatement.getFromClause().getFromElement(); final AbstractEntityPersister targetedPersister = (AbstractEntityPersister) fromElement.getQueryable(); // Only do this when we have secondary tables if (targetedPersister.getConstraintOrderedTableNameClosure().length > 1) { if (updateHandler instanceof TableBasedUpdateHandlerImpl) { return new CustomTableBasedUpdateHandlerImpl((TableBasedUpdateHandlerImpl) updateHandler, walker); } else { LOG.warning("Unsupported update handler that can't be adapted to support updates to secondary tables: " + updateHandler); } } return updateHandler; }
@Override public void release(JdbcServices jdbcServices, JdbcConnectionAccess connectionAccess) { delegate.release(jdbcServices, connectionAccess); } }
@Override public void prepare(JdbcServices jdbcServices, JdbcConnectionAccess jdbcConnectionAccess, Mappings mappings, Mapping mapping, Map map) { delegate.prepare(jdbcServices, jdbcConnectionAccess, mappings, mapping, map); }
@Override public DeleteHandler buildDeleteHandler(SessionFactoryImplementor factory, HqlSqlWalker walker) { return delegate.buildDeleteHandler(factory, walker); }