Interface MetadataManager
- All Known Implementing Classes:
ImplicitColumnManager
,NoOpMetadataManager
public interface MetadataManager
Queries can contain a wildcard (*), table columns, or special
system-defined columns (the file metadata columns AKA implicit
columns, the `columns` column of CSV, etc.).
This class provides a generalized way of handling such extended columns. That is, this handles metadata for columns defined by the scan or file; columns defined by the table (the actual data metadata) is handled elsewhere.
Objects of this interface are driven by the projection processing framework which provides a vector cache from which to obtain materialized columns. The implementation must provide a projection parser to pick out the columns which this object handles.
A better name might be ImplicitMetadataManager to signify that this is about metadata other than table columns.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
bind
(ResultVectorCache vectorCache) void
close()
Event indicating the end of a scan.void
define()
Define (materialize) the columns which this manager represents.void
endFile()
Event indicating the end of a file (or other data source.)void
load
(int rowCount) Load data into the custom columns, if needed (such as for null or implicit columns.)resolver()
-
Method Details
-
bind
-
projectionParser
ScanLevelProjection.ScanProjectionParser projectionParser() -
resolver
-
define
void define()Define (materialize) the columns which this manager represents. -
load
void load(int rowCount) Load data into the custom columns, if needed (such as for null or implicit columns.)- Parameters:
rowCount
- number of rows read into a batch.
-
endFile
void endFile()Event indicating the end of a file (or other data source.) -
close
void close()Event indicating the end of a scan.
-