# Class MetadataFilter

java.lang.Object
uk.ac.starlink.ttools.filter.BasicFilter
uk.ac.starlink.ttools.filter.MetadataFilter

All Implemented Interfaces:
  `ProcessingFilter`

public class MetadataFilter extends BasicFilter
Filter for extracting column metadata.

Since:
  26 Apr 2006
Author:
  Mark Taylor

## Field Summary

Fields
Modifier and Type
Field
Description
`static final uk.ac.starlink.table.ValueInfo`
`CLASS_INFO`
`static final uk.ac.starlink.table.ValueInfo`
`DESCRIPTION_INFO`
`static final uk.ac.starlink.table.ValueInfo`
`ELSIZE_INFO`
`static final uk.ac.starlink.table.ValueInfo`
`INDEX_INFO`
`static final uk.ac.starlink.table.ValueInfo[]`
`KNOWN_INFOS`
All known metadata items.
`static final uk.ac.starlink.table.ValueInfo`
`NAME_INFO`
`static final uk.ac.starlink.table.ValueInfo`
`SHAPE_INFO`
`static final uk.ac.starlink.table.ValueInfo`
`UCD_INFO`
`static final uk.ac.starlink.table.ValueInfo`
`UNIT_INFO`
`static final uk.ac.starlink.table.ValueInfo`
`UTYPE_INFO`
`static final uk.ac.starlink.table.ValueInfo`
`XTYPE_INFO`

## Constructor Summary

Constructors
Constructor
Description
`MetadataFilter()`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`ProcessingStep`
`createStep(Iterator<String> argIt)`
Creates a new ProcessingStep based on a sequence of command-line arguments.
`protected String[]`
`getDescriptionLines()`
`static uk.ac.starlink.util.MapGroup<uk.ac.starlink.table.ValueInfo, Object>`
`metadataMapGroup(uk.ac.starlink.table.StarTable table)`
Constructs a MapGroup containing column metadata of a given table.

### Methods inherited from class BasicFilter

`explainSyntax, getDescription, getName, getUsage`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### INDEX_INFO

public static final uk.ac.starlink.table.ValueInfo INDEX_INFO

### NAME_INFO

public static final uk.ac.starlink.table.ValueInfo NAME_INFO

### CLASS_INFO

public static final uk.ac.starlink.table.ValueInfo CLASS_INFO

### SHAPE_INFO

public static final uk.ac.starlink.table.ValueInfo SHAPE_INFO

### ELSIZE_INFO

public static final uk.ac.starlink.table.ValueInfo ELSIZE_INFO

### UNIT_INFO

public static final uk.ac.starlink.table.ValueInfo UNIT_INFO

### DESCRIPTION_INFO

public static final uk.ac.starlink.table.ValueInfo DESCRIPTION_INFO

### UCD_INFO

public static final uk.ac.starlink.table.ValueInfo UCD_INFO

### UTYPE_INFO

public static final uk.ac.starlink.table.ValueInfo UTYPE_INFO

### XTYPE_INFO

public static final uk.ac.starlink.table.ValueInfo XTYPE_INFO

### KNOWN_INFOS

public static final uk.ac.starlink.table.ValueInfo[] KNOWN_INFOS
All known metadata items.

## Constructor Details

### MetadataFilter

public MetadataFilter()
Constructor.

## Method Details

### getDescriptionLines

protected String[] getDescriptionLines()

Specified by:
  `getDescriptionLines` in class `BasicFilter`

### createStep

public ProcessingStep createStep(Iterator<String> argIt) throws ArgException
Description copied from interface: `ProcessingFilter`
Creates a new ProcessingStep based on a sequence of command-line arguments. The `argIt` 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 a `ProcessingStep` 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.

Parameters:
  `argIt` - iterator over command-line arguments positioned at the first one
Throws:
  `ArgException`

### metadataMapGroup

public static uk.ac.starlink.util.MapGroup<uk.ac.starlink.table.ValueInfo, Object> metadataMapGroup(uk.ac.starlink.table.StarTable table)
Constructs a MapGroup containing column metadata of a given table.

Parameters:
  `table` - the table for which to extract metadata
Returns:
  mapgroup containing column metadata