com.marklogic.flux.api.Reprocessor Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of flux-api Show documentation
Show all versions of flux-api Show documentation
Flux API for data movement with MarkLogic
/*
* Copyright © 2024 MarkLogic Corporation. All Rights Reserved.
*/
package com.marklogic.flux.api;
import java.util.Map;
import java.util.function.Consumer;
/**
* Read data from MarkLogic via custom code and reprocess it via custom code.
*/
public interface Reprocessor extends Executor {
interface ReadOptions {
ReadOptions invoke(String modulePath);
ReadOptions javascript(String query);
ReadOptions javascriptFile(String path);
ReadOptions xquery(String query);
ReadOptions xqueryFile(String path);
ReadOptions partitionsInvoke(String modulePath);
ReadOptions partitionsJavascript(String query);
ReadOptions partitionsJavascriptFile(String path);
ReadOptions partitionsXquery(String query);
ReadOptions partitionsXqueryFile(String path);
ReadOptions vars(Map namesAndValues);
ReadOptions logProgress(int interval);
}
interface WriteOptions {
WriteOptions invoke(String modulePath);
WriteOptions javascript(String query);
WriteOptions javascriptFile(String path);
WriteOptions xquery(String query);
WriteOptions xqueryFile(String path);
WriteOptions externalVariableName(String name);
WriteOptions externalVariableDelimiter(String delimiter);
WriteOptions vars(Map namesAndValues);
WriteOptions abortOnWriteFailure(boolean value);
WriteOptions batchSize(int batchSize);
WriteOptions logProgress(int interval);
}
Reprocessor from(Consumer consumer);
Reprocessor to(Consumer consumer);
}