Class CLIOutputAdaptiveOracle<I,O>

java.lang.Object
de.learnlib.oracle.membership.CLIOutputAdaptiveOracle<I,O>
Type Parameters:
I - input symbol type
O - output symbol type
All Implemented Interfaces:
AdaptiveMembershipOracle<I,O>, BatchProcessor<AdaptiveQuery<I,O>>, SingleAdaptiveMembershipOracle<I,O>

public class CLIOutputAdaptiveOracle<I,O> extends Object implements SingleAdaptiveMembershipOracle<I,O>
An oracle that delegates its queries to an external program via the command-line interface. Outputs of the queries are determined based on the provided output transformer.

Queries are translated to program arguments via the symbol's Object.toString() method. Due to the nature of AdaptiveMembershipOracles, communication is inherently stateful, i.e., the program is executed multiple times with a single query symbol each, preceded by a single invocation with only the reset symbol.

The outputTransformer is used to transform responses of the individual invocations.