Skip to content

Commit 1b04680

Browse files
committed
fix: corrected issues from deps update
1 parent d8df456 commit 1b04680

2 files changed

Lines changed: 23 additions & 16 deletions

File tree

etl/src/main/java/com/orientechnologies/orient/etl/extractor/OETLCSVExtractor.java

Lines changed: 22 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import java.util.Map;
3737
import java.util.logging.Level;
3838
import org.apache.commons.csv.CSVFormat;
39+
import org.apache.commons.csv.CSVFormat.Builder;
3940
import org.apache.commons.csv.CSVParser;
4041
import org.apache.commons.csv.CSVRecord;
4142

@@ -90,19 +91,20 @@ public String getUnit() {
9091
public void configure(ODocument iConfiguration, OCommandContext iContext) {
9192
super.configure(iConfiguration, iContext);
9293

93-
csvFormat =
94+
Builder builder =
9495
CSVFormat.newFormat(',')
95-
.withNullString(NULL_STRING)
96-
.withEscape('\\')
97-
.withQuote('"')
98-
.withCommentMarker('#');
96+
.builder()
97+
.setNullString(NULL_STRING)
98+
.setEscape('\\')
99+
.setQuote('"')
100+
.setCommentMarker('#');
99101

100102
if (iConfiguration.containsField("predefinedFormat")) {
101-
csvFormat = CSVFormat.valueOf(iConfiguration.<String>field("predefinedFormat"));
103+
builder = CSVFormat.valueOf(iConfiguration.<String>field("predefinedFormat")).builder();
102104
}
103105

104106
if (iConfiguration.containsField("separator")) {
105-
csvFormat = csvFormat.withDelimiter(iConfiguration.field("separator").toString().charAt(0));
107+
builder = builder.setDelimiter(iConfiguration.field("separator").toString().charAt(0));
106108
}
107109

108110
if (iConfiguration.containsField("dateFormat")) {
@@ -114,21 +116,24 @@ public void configure(ODocument iConfiguration, OCommandContext iContext) {
114116

115117
if (iConfiguration.containsField("ignoreEmptyLines")) {
116118
boolean ignoreEmptyLines = iConfiguration.field("ignoreEmptyLines");
117-
csvFormat = csvFormat.withIgnoreEmptyLines(ignoreEmptyLines);
119+
builder = builder.setIgnoreEmptyLines(ignoreEmptyLines);
118120
}
119121

120122
if (iConfiguration.containsField("ignoreMissingColumns")) {
121123
boolean ignoreMissingColumns = iConfiguration.field("ignoreMissingColumns");
122-
csvFormat = csvFormat.withAllowMissingColumnNames(ignoreMissingColumns);
124+
builder = builder.setAllowMissingColumnNames(ignoreMissingColumns);
123125
}
124126

125127
if (iConfiguration.containsField("columnsOnFirstLine")) {
126128
Boolean columnsOnFirstLine = (Boolean) iConfiguration.field("columnsOnFirstLine");
127129
if (columnsOnFirstLine.equals(Boolean.TRUE)) {
128-
csvFormat = csvFormat.withHeader();
130+
builder = builder.setHeader();
131+
} else {
132+
builder = builder.setAllowMissingColumnNames(true);
129133
}
130134
} else {
131-
csvFormat = csvFormat.withHeader();
135+
builder = builder.setHeader();
136+
builder = builder.setAllowMissingColumnNames(true);
132137
}
133138

134139
if (iConfiguration.containsField("columns")) {
@@ -147,7 +152,8 @@ public void configure(ODocument iConfiguration, OCommandContext iContext) {
147152
}
148153

149154
log(Level.INFO, "column types: %s", columnTypes);
150-
csvFormat = csvFormat.withHeader(columnNames.toArray(new String[] {})).withSkipHeaderRecord();
155+
builder = builder.setHeader(columnNames.toArray(new String[] {}));
156+
builder = builder.setSkipHeaderRecord(true);
151157
}
152158

153159
if (iConfiguration.containsField("skipFrom")) {
@@ -160,23 +166,24 @@ public void configure(ODocument iConfiguration, OCommandContext iContext) {
160166

161167
if (iConfiguration.containsField("nullValue")) {
162168
nullValue = iConfiguration.<String>field("nullValue");
163-
csvFormat = csvFormat.withNullString(nullValue);
169+
builder = builder.setNullString(nullValue);
164170
}
165171

166172
if (iConfiguration.containsField("quote")) {
167173
final String value = iConfiguration.field("quote").toString();
168174
if (!value.isEmpty()) {
169-
csvFormat = csvFormat.withQuote(value.charAt(0));
175+
builder = builder.setQuote(value.charAt(0));
170176
}
171177
}
178+
csvFormat = builder.get();
172179
}
173180

174181
@Override
175182
public void extract(final Reader iReader) {
176183
super.extract(iReader);
177184
try {
178185

179-
CSVParser parser = new CSVParser(iReader, csvFormat);
186+
CSVParser parser = CSVParser.parse(iReader, csvFormat);
180187

181188
recordIterator = parser.iterator();
182189
} catch (IOException e) {

etl/src/test/java/com/orientechnologies/orient/etl/extractor/OETLCSVExtractorTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -538,7 +538,7 @@ public void testCsvParsingFormat() {
538538
@Test
539539
public void testMissingColumns() {
540540
String cfgJson =
541-
"{source: { content: { value: 'name,value,,\nfrank,myvalue,,'} }, extractor : { csv : { \"ignoreMissingColumns\": true } }, loader : { test: {} } }";
541+
"{source: { content: { value: 'name,value,\nfrank,myvalue,'} }, extractor : { csv : { \"ignoreMissingColumns\": true } }, loader : { test: {} } }";
542542
configure(cfgJson);
543543
proc.execute();
544544

0 commit comments

Comments
 (0)