/*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* Other licenses:
* -----------------------------------------------------------------------------
* Commercial licenses for this work are available. These replace the above
* ASL 2.0 and offer limited warranties, support, maintenance, and commercial
* database integrations.
*
* For more information, please visit: http://www.jooq.org/licenses
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
package org.jooq;
import org.jetbrains.annotations.*;
import java.io.File;
import java.io.InputStream;
import java.io.Reader;
import java.nio.charset.Charset;
import java.nio.charset.CharsetDecoder;
import java.util.Iterator;
import java.util.stream.Stream;
import org.xml.sax.InputSource;
The Loader
API is used for configuring data loads.
The step in constructing the Loader
object where you can specify the load type and data source.
Author: Lukas Eder, Johannes Bühler
/**
* The <code>Loader</code> API is used for configuring data loads.
* <p>
* The step in constructing the {@link Loader} object where you can specify the
* load type and data source.
*
* @author Lukas Eder
* @author Johannes Bühler
*/
public interface LoaderSourceStep<R extends Record> {
Load in-memory data.
Feed a set of array representations of records to the loader API. Each array's elements are matched with the subsequent LoaderRowsStep.fields(Field...)
specification, by index. The values in each array are converted to the matching field's DataType
via DataType.convert(Object)
. The matching is similar to that of Record.fromArray(Object[], Field<?>...)
.
/**
* Load in-memory data.
* <p>
* Feed a set of array representations of records to the loader API. Each
* array's elements are matched with the subsequent
* {@link LoaderRowsStep#fields(Field...)} specification, by index. The
* values in each array are converted to the matching field's
* {@link DataType} via {@link DataType#convert(Object)}. The matching is
* similar to that of {@link Record#fromArray(Object[], Field...)}.
*/
@NotNull
@Support
LoaderRowsStep<R> loadArrays(Object[]... arrays);
Load in-memory data.
Like loadArrays(Object[][])
, providing the possibility of lazy materialisation of the input arrays.
See Also:
/**
* Load in-memory data.
* <p>
* Like {@link #loadArrays(Object[][])}, providing the possibility of lazy
* materialisation of the input arrays.
*
* @see #loadArrays(Object[][])
* @see Record#fromArray(Object[], Field...)
*/
@NotNull
@Support
LoaderRowsStep<R> loadArrays(Iterable<? extends Object[]> arrays);
Load in-memory data.
Like loadArrays(Object[][])
, providing the possibility of lazy materialisation of the input arrays.
See Also:
/**
* Load in-memory data.
* <p>
* Like {@link #loadArrays(Object[][])}, providing the possibility of lazy
* materialisation of the input arrays.
*
* @see #loadArrays(Object[][])
* @see Record#fromArray(Object[], Field...)
*/
@NotNull
@Support
LoaderRowsStep<R> loadArrays(Iterator<? extends Object[]> arrays);
Load in-memory data.
Like loadArrays(Object[][])
, providing the possibility of lazy materialisation of the input arrays.
See Also:
/**
* Load in-memory data.
* <p>
* Like {@link #loadArrays(Object[][])}, providing the possibility of lazy
* materialisation of the input arrays.
*
* @see #loadArrays(Object[][])
* @see Record#fromArray(Object[], Field...)
*/
@NotNull
@Support
LoaderRowsStep<R> loadArrays(Stream<? extends Object[]> arrays);
Load in-memory data.
/**
* Load in-memory data.
*/
@NotNull
@Support
LoaderRowsStep<R> loadRecords(Record... records);
Load in-memory data.
See Also: - loadRecords(Record...)
/**
* Load in-memory data.
*
* @see #loadRecords(Record...)
*/
@NotNull
@Support
LoaderRowsStep<R> loadRecords(Iterable<? extends Record> records);
Load in-memory data.
See Also: - loadRecords(Record...)
/**
* Load in-memory data.
*
* @see #loadRecords(Record...)
*/
@NotNull
@Support
LoaderRowsStep<R> loadRecords(Iterator<? extends Record> records);
Load in-memory data.
See Also: - loadRecords(Record...)
/**
* Load in-memory data.
*
* @see #loadRecords(Record...)
*/
@NotNull
@Support
LoaderRowsStep<R> loadRecords(Stream<? extends Record> records);
Load CSV data.
/**
* Load CSV data.
*/
@NotNull
@Support
LoaderCSVStep<R> loadCSV(File file);
Load CSV data.
/**
* Load CSV data.
*/
@NotNull
@Support
LoaderCSVStep<R> loadCSV(File file, String charsetName);
Load CSV data.
/**
* Load CSV data.
*/
@NotNull
@Support
LoaderCSVStep<R> loadCSV(File file, Charset cs);
Load CSV data.
/**
* Load CSV data.
*/
@NotNull
@Support
LoaderCSVStep<R> loadCSV(File file, CharsetDecoder dec);
Load CSV data.
/**
* Load CSV data.
*/
@NotNull
@Support
LoaderCSVStep<R> loadCSV(String data);
Load CSV data.
/**
* Load CSV data.
*/
@NotNull
@Support
LoaderCSVStep<R> loadCSV(InputStream stream);
Load CSV data.
/**
* Load CSV data.
*/
@NotNull
@Support
LoaderCSVStep<R> loadCSV(InputStream stream, String charsetName);
Load CSV data.
/**
* Load CSV data.
*/
@NotNull
@Support
LoaderCSVStep<R> loadCSV(InputStream stream, Charset cs);
Load CSV data.
/**
* Load CSV data.
*/
@NotNull
@Support
LoaderCSVStep<R> loadCSV(InputStream stream, CharsetDecoder dec);
Load CSV data.
/**
* Load CSV data.
*/
@NotNull
@Support
LoaderCSVStep<R> loadCSV(Reader reader);
Load CSV data.
/**
* Load CSV data.
*/
@NotNull
@Support
LoaderCSVStep<R> loadCSV(Source source);
Load XML data.
/**
* Load XML data.
*/
@NotNull
@Support
LoaderXMLStep<R> loadXML(File file);
Load XML data.
/**
* Load XML data.
*/
@NotNull
@Support
LoaderXMLStep<R> loadXML(File file, String charsetName);
Load XML data.
/**
* Load XML data.
*/
@NotNull
@Support
LoaderXMLStep<R> loadXML(File file, Charset cs);
Load XML data.
/**
* Load XML data.
*/
@NotNull
@Support
LoaderXMLStep<R> loadXML(File file, CharsetDecoder dec);
Load XML data.
/**
* Load XML data.
*/
@NotNull
@Support
LoaderXMLStep<R> loadXML(String data);
Load XML data.
/**
* Load XML data.
*/
@NotNull
@Support
LoaderXMLStep<R> loadXML(InputStream stream);
Load XML data.
/**
* Load XML data.
*/
@NotNull
@Support
LoaderXMLStep<R> loadXML(InputStream stream, String charsetName);
Load XML data.
/**
* Load XML data.
*/
@NotNull
@Support
LoaderXMLStep<R> loadXML(InputStream stream, Charset cs);
Load XML data.
/**
* Load XML data.
*/
@NotNull
@Support
LoaderXMLStep<R> loadXML(InputStream stream, CharsetDecoder dec);
Load XML data.
/**
* Load XML data.
*/
@NotNull
@Support
LoaderXMLStep<R> loadXML(Reader reader);
Load XML data.
/**
* Load XML data.
*/
@NotNull
@Support
LoaderXMLStep<R> loadXML(InputSource source);
Load XML data.
/**
* Load XML data.
*/
@NotNull
@Support
LoaderXMLStep<R> loadXML(Source source);
Load JSON data.
/**
* Load JSON data.
*/
@NotNull
@Support
LoaderJSONStep<R> loadJSON(File file);
Load JSON data.
/**
* Load JSON data.
*/
@NotNull
@Support
LoaderJSONStep<R> loadJSON(File file, String charsetName);
Load JSON data.
/**
* Load JSON data.
*/
@NotNull
@Support
LoaderJSONStep<R> loadJSON(File file, Charset cs);
Load JSON data.
/**
* Load JSON data.
*/
@NotNull
@Support
LoaderJSONStep<R> loadJSON(File file, CharsetDecoder dec);
Load JSON data.
/**
* Load JSON data.
*/
@NotNull
@Support
LoaderJSONStep<R> loadJSON(String data);
Load JSON data.
/**
* Load JSON data.
*/
@NotNull
@Support
LoaderJSONStep<R> loadJSON(InputStream stream);
Load JSON data.
/**
* Load JSON data.
*/
@NotNull
@Support
LoaderJSONStep<R> loadJSON(InputStream stream, String charsetName);
Load JSON data.
/**
* Load JSON data.
*/
@NotNull
@Support
LoaderJSONStep<R> loadJSON(InputStream stream, Charset cs);
Load JSON data.
/**
* Load JSON data.
*/
@NotNull
@Support
LoaderJSONStep<R> loadJSON(InputStream stream, CharsetDecoder dec);
Load JSON data.
/**
* Load JSON data.
*/
@NotNull
@Support
LoaderJSONStep<R> loadJSON(Reader reader);
Load JSON data.
/**
* Load JSON data.
*/
@NotNull
@Support
LoaderJSONStep<R> loadJSON(Source source);
}