Package uk.ac.starlink.ttools.join
Class MatchEngineParameter
- java.lang.Object
-
- uk.ac.starlink.task.Parameter<uk.ac.starlink.table.join.MatchEngine>
-
- uk.ac.starlink.ttools.join.MatchEngineParameter
-
- All Implemented Interfaces:
ExtraParameter
public class MatchEngineParameter extends uk.ac.starlink.task.Parameter<uk.ac.starlink.table.join.MatchEngine> implements ExtraParameter
Parameter for acquiring aMatchEngine
.- Since:
- 2 Sep 2005
- Author:
- Mark Taylor
-
-
Constructor Summary
Constructors Constructor Description MatchEngineParameter(java.lang.String name)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static void
configureTupleParameter(WordsParameter tupleParam, uk.ac.starlink.table.join.MatchEngine matcher)
Configures a tuple parameter for use with a given MatchEngine.uk.ac.starlink.table.join.MatchEngine
createEngine(java.lang.String name)
Returns a new, unconfigured match engine given a short naming string.WordsParameter
createMatchTupleParameter(java.lang.String numLabel)
Creates a new parameter for specifying value tuples for a table, suitable for use with this one.java.lang.String
getConfigUsage(uk.ac.starlink.table.join.MatchEngine engine, uk.ac.starlink.task.Parameter wordsParam, uk.ac.starlink.table.DescribedValue[] configs)
Returns a string giving the usage for a parameter with configuration subparameters.static java.lang.String[]
getExampleValues()
Returns strings naming a set of example match engine parameter values.java.lang.String
getExtraUsage(TableEnvironment env)
Returns an extended usage message.static java.lang.String
getInfoUsage(uk.ac.starlink.table.ValueInfo info)
Returns a usage fragment appropriate to specifying a value on the command line in accordance with the metadata given in a ValueInfo object.uk.ac.starlink.task.Parameter
getMatchParametersParameter()
Returns the associated parameter which is used for specifying the fixed value parameters for the engine supplied by this parameter.uk.ac.starlink.table.ValueInfo
getScoreInfo(uk.ac.starlink.task.Environment env)
Returns the match score metadata associated with this parameter.uk.ac.starlink.task.Parameter
getScoreParameter()
Returns the associated parameter which is used for specifying the match score column metadata.uk.ac.starlink.task.Parameter
getTuningParametersParameter()
Returns the associated parameter which is used for specifying optional tuning parameters for the engine supplied by this parameter.java.lang.String
getValuesUsage(uk.ac.starlink.table.join.MatchEngine engine, int startLeng)
Returns a string giving the usage for the values parameter part of the matching command line.uk.ac.starlink.table.join.MatchEngine
matchEngineValue(uk.ac.starlink.task.Environment env)
Returns the value of this parameter as a MatchEngine.uk.ac.starlink.table.join.MatchEngine
stringToObject(uk.ac.starlink.task.Environment env, java.lang.String stringVal)
-
Methods inherited from class uk.ac.starlink.task.Parameter
clearValue, getDescription, getName, getPosition, getPreferExplicit, getPrompt, getStringDefault, getUsage, getValueClass, isNullPermitted, objectToString, objectValue, setDescription, setDescription, setName, setNullPermitted, setPosition, setPreferExplicit, setPrompt, setStringDefault, setUsage, setValue, setValueFromObject, setValueFromString, stringValue, toArray, toString
-
-
-
-
Method Detail
-
getExtraUsage
public java.lang.String getExtraUsage(TableEnvironment env)
Description copied from interface:ExtraParameter
Returns an extended usage message. This should not repeat the content of the normal usage message. It should be preformatted, that is it should contain newlines to keep the line length down to less than 80 characters.- Specified by:
getExtraUsage
in interfaceExtraParameter
- Parameters:
env
- execution envrionment- Returns:
- extended usage message
-
getMatchParametersParameter
public uk.ac.starlink.task.Parameter getMatchParametersParameter()
Returns the associated parameter which is used for specifying the fixed value parameters for the engine supplied by this parameter.- Returns:
- params parameter
-
getTuningParametersParameter
public uk.ac.starlink.task.Parameter getTuningParametersParameter()
Returns the associated parameter which is used for specifying optional tuning parameters for the engine supplied by this parameter.- Returns:
- tuning parameter
-
getScoreParameter
public uk.ac.starlink.task.Parameter getScoreParameter()
Returns the associated parameter which is used for specifying the match score column metadata. Do not interrogate this parameter directly - usegetScoreInfo(uk.ac.starlink.task.Environment)
.- Returns:
- match score parameter
-
getScoreInfo
public uk.ac.starlink.table.ValueInfo getScoreInfo(uk.ac.starlink.task.Environment env) throws uk.ac.starlink.task.TaskException
Returns the match score metadata associated with this parameter.- Parameters:
env
- execution environment- Returns:
- match score metadata; may be null
- Throws:
uk.ac.starlink.task.TaskException
-
createMatchTupleParameter
public WordsParameter createMatchTupleParameter(java.lang.String numLabel)
Creates a new parameter for specifying value tuples for a table, suitable for use with this one.The supplied
numLabel
parameter distinguishes the parameter name if there are several; it is usually "1", "2", ... or "N" for a generic number or "" if there is only one. The autogenerated documentation will be adjusted accordingly.- Parameters:
numLabel
- identifier for the new parameter
-
configureTupleParameter
public static void configureTupleParameter(WordsParameter tupleParam, uk.ac.starlink.table.join.MatchEngine matcher)
Configures a tuple parameter for use with a given MatchEngine. Amongst other things, the required word count will be set, so that itsWordsParameter.wordsValue(uk.ac.starlink.task.Environment)
will return an array of the correct size for the match engine.- Parameters:
tupleParam
- tuple parameter to interrogate, probably generated earlier bycreateMatchTupleParameter(java.lang.String)
matcher
- match engine which will be used
-
matchEngineValue
public uk.ac.starlink.table.join.MatchEngine matchEngineValue(uk.ac.starlink.task.Environment env) throws uk.ac.starlink.task.TaskException
Returns the value of this parameter as a MatchEngine.- Parameters:
env
- execution environment- Returns:
- match engine
- Throws:
uk.ac.starlink.task.TaskException
-
stringToObject
public uk.ac.starlink.table.join.MatchEngine stringToObject(uk.ac.starlink.task.Environment env, java.lang.String stringVal) throws uk.ac.starlink.task.TaskException
- Specified by:
stringToObject
in classuk.ac.starlink.task.Parameter<uk.ac.starlink.table.join.MatchEngine>
- Throws:
uk.ac.starlink.task.TaskException
-
createEngine
public uk.ac.starlink.table.join.MatchEngine createEngine(java.lang.String name) throws uk.ac.starlink.task.UsageException
Returns a new, unconfigured match engine given a short naming string. Names may be separated by a '+', in which case a combined engine is returned.- Parameters:
name
- label to select match engine type- Returns:
- new match engine
- Throws:
uk.ac.starlink.task.UsageException
-
getValuesUsage
public java.lang.String getValuesUsage(uk.ac.starlink.table.join.MatchEngine engine, int startLeng)
Returns a string giving the usage for the values parameter part of the matching command line.- Parameters:
engine
- match enginestartLeng
- running line length at which the values part begins on the output- Returns:
- values usage - possibly empty, not null
-
getConfigUsage
public java.lang.String getConfigUsage(uk.ac.starlink.table.join.MatchEngine engine, uk.ac.starlink.task.Parameter wordsParam, uk.ac.starlink.table.DescribedValue[] configs)
Returns a string giving the usage for a parameter with configuration subparameters.- Parameters:
engine
- match enginewordsParam
- parameter providing values for the subparametersconfigs
- modifiable subparameters- Returns:
- params usage - possibly empty, not null
-
getInfoUsage
public static java.lang.String getInfoUsage(uk.ac.starlink.table.ValueInfo info)
Returns a usage fragment appropriate to specifying a value on the command line in accordance with the metadata given in a ValueInfo object.- Parameters:
info
- value metadata specification- Returns:
- usage fragment
-
getExampleValues
public static java.lang.String[] getExampleValues()
Returns strings naming a set of example match engine parameter values. These are used in the documentation.
-
-