Package uk.ac.starlink.ttools.filter
Class FixNamesFilter
java.lang.Object
uk.ac.starlink.ttools.filter.BasicFilter
uk.ac.starlink.ttools.filter.FixNamesFilter
- All Implemented Interfaces:
ProcessingFilter
,ProcessingStep
Filter to normalise syntax of column and parameter names so they
are legal java identifiers.
- Since:
- 18 Dec 2009
- Author:
- Mark Taylor
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateStep
(Iterator<String> argIt) Creates a new ProcessingStep based on a sequence of command-line arguments.Performs the name unmunging.String[]
uniqueName
(String name, Set<String> lcNames) Returns a name based on the supplied one, but which is guaranteed different (case-insensitively) from all the names in a supplied set.uk.ac.starlink.table.StarTable
wrap
(uk.ac.starlink.table.StarTable base) Performs a table filtering step.Methods inherited from class uk.ac.starlink.ttools.filter.BasicFilter
explainSyntax, getDescription, getName, getUsage
-
Constructor Details
-
FixNamesFilter
public FixNamesFilter()Constructor.
-
-
Method Details
-
getDescriptionLines
- Specified by:
getDescriptionLines
in classBasicFilter
-
createStep
Description copied from interface:ProcessingFilter
Creates a new ProcessingStep based on a sequence of command-line arguments. TheargIt
argument is an iterator over the command-line arguments positioned just before any arguments intended for this filter. If legal, any that can be comprehended by this filter should be read (iterated over) and removed, and aProcessingStep
should accordingly be returned. In the case of a successful return, it is essential that no arguments other than the ones intended for this filter are read from the iterator.If the argument list is badly-formed as far as this filter is concerned, an
ArgException
should be thrown.- Specified by:
createStep
in interfaceProcessingFilter
- Parameters:
argIt
- iterator over command-line arguments positioned at the first one
-
wrap
public uk.ac.starlink.table.StarTable wrap(uk.ac.starlink.table.StarTable base) Description copied from interface:ProcessingStep
Performs a table filtering step.- Specified by:
wrap
in interfaceProcessingStep
- Parameters:
base
- input table- Returns:
- output table
-
fixName
Performs the name unmunging.- Parameters:
name
- input name- Returns:
- string like name which is a valid java identifier
-
uniqueName
Returns a name based on the supplied one, but which is guaranteed different (case-insensitively) from all the names in a supplied set. If the supplied name is already distinct from the members of the set, it will be returned unchanged.- Parameters:
name
- base namelcNames
- set of lower-case values from which the output must differ case-insensitively; not to be modified- Returns:
- distinct string based on name
-