[#8391] Fixed regression
This commit is contained in:
parent
6bff643921
commit
fe5342fe9a
@ -43,6 +43,8 @@ import static org.jooq.impl.DefaultDataType.getDataType;
|
||||
import static org.jooq.impl.SQLDataType.VARCHAR;
|
||||
import static org.jooq.tools.StringUtils.defaultIfBlank;
|
||||
|
||||
import java.io.Reader;
|
||||
import java.io.StringReader;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
@ -74,10 +76,14 @@ final class JSONReader {
|
||||
}
|
||||
|
||||
final Result<Record> read(String string) {
|
||||
return read(new StringReader(string));
|
||||
}
|
||||
|
||||
final Result<Record> read(final Reader reader) {
|
||||
try {
|
||||
|
||||
@SuppressWarnings("rawtypes")
|
||||
Object root = new JSONParser().parse(string, new ContainerFactory() {
|
||||
Object root = new JSONParser().parse(reader, new ContainerFactory() {
|
||||
@Override
|
||||
public Map createObjectContainer() {
|
||||
return new LinkedHashMap();
|
||||
|
||||
@ -82,6 +82,7 @@ import org.jooq.LoaderRowListener;
|
||||
import org.jooq.LoaderRowsStep;
|
||||
import org.jooq.LoaderXMLStep;
|
||||
import org.jooq.Record;
|
||||
import org.jooq.Result;
|
||||
import org.jooq.SelectQuery;
|
||||
import org.jooq.Table;
|
||||
import org.jooq.exception.DataAccessException;
|
||||
@ -649,15 +650,16 @@ final class LoaderImpl<R extends Record> implements
|
||||
}
|
||||
|
||||
private void executeJSON() throws IOException {
|
||||
JSONReader reader = null;
|
||||
BufferedReader reader = null;
|
||||
|
||||
try {
|
||||
reader = new JSONReader(data.reader());
|
||||
source = Tools.fieldsByName(reader.getFields());
|
||||
reader = data.reader();
|
||||
Result<Record> r = new JSONReader(create).read(reader);
|
||||
source = r.fields();
|
||||
|
||||
// The current json format is not designed for streaming. Thats why
|
||||
// all records are loaded at once.
|
||||
List<String[]> allRecords = reader.readAll();
|
||||
List<Object[]> allRecords = Arrays.asList(r.intoArrays());
|
||||
executeSQL(allRecords.iterator());
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user