The Metanome algorithm interface allows an algorithm to query for ARBITRARY_NUMBER_OF_VALUES in the following way:
@Override
public ArrayList<ConfigurationRequirement<?>> getConfigurationRequirements() {
ArrayList<ConfigurationRequirement<?>> configs = new ArrayList<ConfigurationRequirement<?>>();
ConfigurationRequirementString tableNames = new ConfigurationRequirementString("INPUT_TABLES", ConfigurationRequirement.ARBITRARY_NUMBER_OF_VALUES);
configs.add(tableNames);
return configs;
}
We can now set multiple string values for this algorithm:
@Override
public void setStringConfigurationValue(String identifier, String... values) throws AlgorithmConfigurationException {
if ("INPUT_TABLES".equals(identifier))
this.tableNames = values;
}
Setting arbitrary many parameter values is (apart from input sources), however, not possible in the Metanome Frontend.
Solution: If a parameter is labeled as ConfigurationRequirement.ARBITRARY_NUMBER_OF_VALUES present a button to add additional input fields for that parameter or add an empty field whenever one parameter-input-box was filled. When submitting an execution, send all these parameter values to the requesting algorithm.
The Metanome algorithm interface allows an algorithm to query for
ARBITRARY_NUMBER_OF_VALUES
in the following way:We can now set multiple string values for this algorithm:
Setting arbitrary many parameter values is (apart from input sources), however, not possible in the Metanome Frontend.
Solution: If a parameter is labeled as
ConfigurationRequirement.ARBITRARY_NUMBER_OF_VALUES
present a button to add additional input fields for that parameter or add an empty field whenever one parameter-input-box was filled. When submitting an execution, send all these parameter values to the requesting algorithm.