public ConfigDiff guess(final ConfigSource config) {
        logger.info("Started Embulk v" + EmbulkVersion.VERSION);

        final ExecSessionInternal exec = this.newExecSessionInternal(config.deepCopy().getNestedOrGetEmpty("exec"));
        try {
            return this.guessExecutor.guess(exec, config);
        } finally {
            exec.cleanup();
        }
    }
Sets an alternative {@code BulkLoader} instance mainly for testing-purpose.
embulk-core/src/main/java/org/embulk/EmbulkEmbed.java