}
private Executor newExecutor() throws SQLException {
Environment environment = configuration.getEnvironment();
if (environment == null)
throw new ExecutorException("ResultLoader could not load lazily. Environment was not configured.");
TransactionFactory txFactory = environment.getTransactionFactory();
if (txFactory == null)
throw new ExecutorException("ResultLoader could not load lazily. Transaction Factory was not configured.");
DataSource ds = environment.getDataSource();
if (ds == null) throw new ExecutorException("ResultLoader could not load lazily. DataSource was not configured.");
Connection conn = ds.getConnection();
conn = wrapConnection(conn);
Transaction tx = txFactory.newTransaction(conn, false);
return configuration.newExecutor(tx, ExecutorType.SIMPLE);
}