Package org.apache.metamodel.xml
Class XmlSaxDataContext
- java.lang.Object
-
- org.apache.metamodel.AbstractDataContext
-
- org.apache.metamodel.QueryPostprocessDataContext
-
- org.apache.metamodel.xml.XmlSaxDataContext
-
- All Implemented Interfaces:
org.apache.metamodel.convert.HasReadTypeConverters,org.apache.metamodel.DataContext
public class XmlSaxDataContext extends org.apache.metamodel.QueryPostprocessDataContextXML datacontext which uses SAX parsing for fast and memory effecient reading of XML files. The DataContext requires the user to specify a set of (simplified) XPaths to define which elements are row delimitors and which elements or attributes are value/column definitions.
-
-
Field Summary
Fields Modifier and Type Field Description static StringCOLUMN_NAME_ROW_ID
-
Constructor Summary
Constructors Constructor Description XmlSaxDataContext(File file, XmlSaxTableDef... tableDefs)XmlSaxDataContext(Supplier<InputSource> inputSourceRef, Collection<XmlSaxTableDef> tableDefs)Constructs an XML DataContext based on SAX parsing.XmlSaxDataContext(Supplier<InputSource> inputSourceRef, XmlSaxTableDef... tableDefs)XmlSaxDataContext(org.apache.metamodel.util.Resource resource, Collection<XmlSaxTableDef> tableDefs)XmlSaxDataContext(org.apache.metamodel.util.Resource resource, XmlSaxTableDef... tableDefs)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected org.apache.metamodel.schema.SchemagetMainSchema()protected StringgetMainSchemaName()protected org.apache.metamodel.data.DataSetmaterializeMainSchemaTable(org.apache.metamodel.schema.Table table, List<org.apache.metamodel.schema.Column> columns, int maxRows)-
Methods inherited from class org.apache.metamodel.QueryPostprocessDataContext
addConverter, executeCountQuery, executePrimaryKeyLookupQuery, executeQuery, getDefaultSchemaName, getSchemaByNameInternal, getSchemaNamesInternal, isMainSchemaTable, isScalarFunctionMaterialized, materializeFromItem, materializeMainSchemaTable, materializeMainSchemaTable, materializeMainSchemaTableSelect, materializeTable
-
Methods inherited from class org.apache.metamodel.AbstractDataContext
compileQuery, executeQuery, executeQuery, getColumnByQualifiedLabel, getDefaultSchema, getSchemaByName, getSchemaNames, getSchemas, getTableByQualifiedLabel, isQualifiedPathDelim, onSchemaCacheRefreshed, parseQuery, query, refreshSchemas
-
-
-
-
Field Detail
-
COLUMN_NAME_ROW_ID
public static final String COLUMN_NAME_ROW_ID
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
XmlSaxDataContext
public XmlSaxDataContext(Supplier<InputSource> inputSourceRef, Collection<XmlSaxTableDef> tableDefs)
Constructs an XML DataContext based on SAX parsing.- Parameters:
inputSourceRef- a factory reference for the input source to read the XML from. The ref will be repeatedly called for each access to the file!tableDefs- a collection of table definitions, which provide instructions as to the xpaths to apply to the document.- See Also:
XmlSaxTableDef
-
XmlSaxDataContext
public XmlSaxDataContext(Supplier<InputSource> inputSourceRef, XmlSaxTableDef... tableDefs)
-
XmlSaxDataContext
public XmlSaxDataContext(org.apache.metamodel.util.Resource resource, XmlSaxTableDef... tableDefs)
-
XmlSaxDataContext
public XmlSaxDataContext(org.apache.metamodel.util.Resource resource, Collection<XmlSaxTableDef> tableDefs)
-
XmlSaxDataContext
public XmlSaxDataContext(File file, XmlSaxTableDef... tableDefs)
-
-
Method Detail
-
getMainSchema
protected org.apache.metamodel.schema.Schema getMainSchema() throws org.apache.metamodel.MetaModelException- Specified by:
getMainSchemain classorg.apache.metamodel.QueryPostprocessDataContext- Throws:
org.apache.metamodel.MetaModelException
-
getMainSchemaName
protected String getMainSchemaName() throws org.apache.metamodel.MetaModelException
- Specified by:
getMainSchemaNamein classorg.apache.metamodel.QueryPostprocessDataContext- Throws:
org.apache.metamodel.MetaModelException
-
materializeMainSchemaTable
protected org.apache.metamodel.data.DataSet materializeMainSchemaTable(org.apache.metamodel.schema.Table table, List<org.apache.metamodel.schema.Column> columns, int maxRows)- Specified by:
materializeMainSchemaTablein classorg.apache.metamodel.QueryPostprocessDataContext
-
-