From e3d79bcd1cb7dee1baf1fbd716223f524ad4163c Mon Sep 17 00:00:00 2001 From: Matthijs Brouwer <matthijs@brouwer.info> Date: Wed, 5 Jun 2019 19:25:32 +0200 Subject: [PATCH] replace ArrayUtils with java8 streams solutions --- .../java/mtas/analysis/token/MtasPosition.java | 13 ++++--------- src/main/java/mtas/analysis/token/MtasToken.java | 4 +--- src/main/java/mtas/codec/util/CodecComponent.java | 3 +-- .../util/collector/MtasDataDoubleAdvanced.java | 8 +++++--- .../codec/util/collector/MtasDataDoubleBasic.java | 8 +++++--- .../codec/util/collector/MtasDataDoubleFull.java | 12 ++++++++---- .../util/collector/MtasDataItemDoubleFull.java | 4 ++-- .../util/collector/MtasDataItemLongFull.java | 4 ++-- .../util/collector/MtasDataLongAdvanced.java | 8 +++++--- .../codec/util/collector/MtasDataLongBasic.java | 8 +++++--- .../codec/util/collector/MtasDataLongFull.java | 15 ++++++++++----- 11 files changed, 48 insertions(+), 39 deletions(-) diff --git a/src/main/java/mtas/analysis/token/MtasPosition.java b/src/main/java/mtas/analysis/token/MtasPosition.java index 7e605db..54d450e 100644 --- a/src/main/java/mtas/analysis/token/MtasPosition.java +++ b/src/main/java/mtas/analysis/token/MtasPosition.java @@ -4,7 +4,6 @@ import java.util.Arrays; import java.util.SortedSet; import java.util.TreeSet; -import org.apache.commons.lang.ArrayUtils; /** * The Class MtasPosition. @@ -74,8 +73,7 @@ public class MtasPosition { mtasPositionStart = list.first(); } else { mtasPositionType = POSITION_SET; - mtasPositionList = ArrayUtils - .toPrimitive(list.toArray(new Integer[list.size()])); + mtasPositionList = list.stream().mapToInt(Number::intValue).toArray(); mtasPositionStart = list.first(); mtasPositionEnd = list.last(); if (mtasPositionList.length == (1 + mtasPositionEnd @@ -174,8 +172,7 @@ public class MtasPosition { list.add(p); } } - mtasPositionList = ArrayUtils - .toPrimitive(list.toArray(new Integer[list.size()])); + mtasPositionList = list.stream().mapToInt(Number::intValue).toArray(); mtasPositionStart = list.first(); mtasPositionEnd = list.last(); if (list.size() == 1) { @@ -207,8 +204,7 @@ public class MtasPosition { SortedSet<Integer> list = new TreeSet<>(); list.add(position); list.add(mtasPositionStart); - mtasPositionList = ArrayUtils - .toPrimitive(list.toArray(new Integer[list.size()])); + mtasPositionList = list.stream().mapToInt(Number::intValue).toArray(); mtasPositionStart = list.first(); mtasPositionEnd = list.last(); } @@ -227,8 +223,7 @@ public class MtasPosition { } list.add(position); } - mtasPositionList = ArrayUtils - .toPrimitive(list.toArray(new Integer[list.size()])); + mtasPositionList = list.stream().mapToInt(Number::intValue).toArray(); mtasPositionStart = list.first(); mtasPositionEnd = list.last(); if (list.size() == (1 + mtasPositionEnd - mtasPositionStart)) { diff --git a/src/main/java/mtas/analysis/token/MtasToken.java b/src/main/java/mtas/analysis/token/MtasToken.java index 2a73704..1f9af1f 100644 --- a/src/main/java/mtas/analysis/token/MtasToken.java +++ b/src/main/java/mtas/analysis/token/MtasToken.java @@ -13,7 +13,6 @@ import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.apache.commons.lang.ArrayUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.lucene.analysis.payloads.PayloadHelper; @@ -323,8 +322,7 @@ public abstract class MtasToken { * @param list the list */ final public void addPositions(Set<Integer> list) { - int[] positions = ArrayUtils - .toPrimitive(list.toArray(new Integer[list.size()])); + int[] positions = list.stream().mapToInt(Number::intValue).toArray(); addPositions(positions); } diff --git a/src/main/java/mtas/codec/util/CodecComponent.java b/src/main/java/mtas/codec/util/CodecComponent.java index 43183e8..59409a2 100644 --- a/src/main/java/mtas/codec/util/CodecComponent.java +++ b/src/main/java/mtas/codec/util/CodecComponent.java @@ -46,7 +46,6 @@ import mtas.parser.function.util.MtasFunctionParserFunction; import mtas.parser.function.util.MtasFunctionParserFunctionDefault; import mtas.search.spans.util.MtasSpanQuery; import org.apache.commons.io.IOUtils; -import org.apache.commons.lang.ArrayUtils; import org.apache.lucene.spatial.prefix.PrefixTreeStrategy; import org.apache.lucene.util.BytesRef; import org.locationtech.spatial4j.shape.Shape; @@ -1406,7 +1405,7 @@ public class CodecComponent { String[] subBaseSortTypes = Arrays.copyOfRange(baseSortTypes, 1, baseSortTypes.length); String[] subBaseSortDirections = Arrays.copyOfRange(baseSortDirections, 1, baseSortDirections.length); Integer[] subNumbers = Arrays.copyOfRange(baseNumbers, 1, baseNumbers.length); - Integer[] subStarts = ArrayUtils.toObject(new int[subNumbers.length]); + Integer[] subStarts = Arrays.stream(new int[subNumbers.length]).boxed().toArray(Integer[]::new); dataCollector = DataCollector.getCollector(this.baseCollectorTypes[0], this.baseDataTypes[0], this.baseStatsTypes[0], this.baseStatsItems[0], this.baseSortTypes[0], this.baseSortDirections[0], 0, diff --git a/src/main/java/mtas/codec/util/collector/MtasDataDoubleAdvanced.java b/src/main/java/mtas/codec/util/collector/MtasDataDoubleAdvanced.java index 353027f..82753d3 100644 --- a/src/main/java/mtas/codec/util/collector/MtasDataDoubleAdvanced.java +++ b/src/main/java/mtas/codec/util/collector/MtasDataDoubleAdvanced.java @@ -1,10 +1,10 @@ package mtas.codec.util.collector; import java.io.IOException; +import java.util.Arrays; import java.util.Collections; import java.util.SortedSet; -import org.apache.commons.lang.ArrayUtils; import mtas.codec.util.CodecUtil; /** @@ -116,7 +116,8 @@ public class MtasDataDoubleAdvanced extends MtasDataAdvanced<Double, Double> { public MtasDataCollector<?, ?> add(double[] values, int number) throws IOException { MtasDataCollector<?, ?> dataCollector = add(false); - setValue(newCurrentPosition, ArrayUtils.toObject(values), number, + Double[] objectValues = Arrays.stream(values).boxed().toArray(Double[]::new); + setValue(newCurrentPosition, objectValues, number, newCurrentExisting); return dataCollector; } @@ -181,7 +182,8 @@ public class MtasDataDoubleAdvanced extends MtasDataAdvanced<Double, Double> { throws IOException { if (key != null) { MtasDataCollector<?, ?> subCollector = add(key, false); - setValue(newCurrentPosition, ArrayUtils.toObject(values), number, + Double[] objectValues = Arrays.stream(values).boxed().toArray(Double[]::new); + setValue(newCurrentPosition, objectValues, number, newCurrentExisting); return subCollector; } else { diff --git a/src/main/java/mtas/codec/util/collector/MtasDataDoubleBasic.java b/src/main/java/mtas/codec/util/collector/MtasDataDoubleBasic.java index 9787af8..4a3d006 100644 --- a/src/main/java/mtas/codec/util/collector/MtasDataDoubleBasic.java +++ b/src/main/java/mtas/codec/util/collector/MtasDataDoubleBasic.java @@ -1,10 +1,10 @@ package mtas.codec.util.collector; import java.io.IOException; +import java.util.Arrays; import java.util.Collections; import java.util.SortedSet; -import org.apache.commons.lang.ArrayUtils; import mtas.codec.util.CodecUtil; /** @@ -118,7 +118,8 @@ public class MtasDataDoubleBasic extends MtasDataBasic<Double, Double> { public MtasDataCollector<?, ?> add(double[] values, int number) throws IOException { MtasDataCollector<?, ?> dataCollector = add(false); - setValue(newCurrentPosition, ArrayUtils.toObject(values), number, + Double[] objectValues = Arrays.stream(values).boxed().toArray(Double[]::new); + setValue(newCurrentPosition,objectValues, number, newCurrentExisting); return dataCollector; } @@ -196,7 +197,8 @@ public class MtasDataDoubleBasic extends MtasDataBasic<Double, Double> { throws IOException { if (key != null) { MtasDataCollector<?, ?> subCollector = add(key, false); - setValue(newCurrentPosition, ArrayUtils.toObject(values), number, + Double[] objectValues = Arrays.stream(values).boxed().toArray(Double[]::new); + setValue(newCurrentPosition, objectValues, number, newCurrentExisting); return subCollector; } else { diff --git a/src/main/java/mtas/codec/util/collector/MtasDataDoubleFull.java b/src/main/java/mtas/codec/util/collector/MtasDataDoubleFull.java index ebdea32..120f091 100644 --- a/src/main/java/mtas/codec/util/collector/MtasDataDoubleFull.java +++ b/src/main/java/mtas/codec/util/collector/MtasDataDoubleFull.java @@ -1,10 +1,10 @@ package mtas.codec.util.collector; import java.io.IOException; +import java.util.Arrays; import java.util.Collections; import java.util.SortedSet; -import org.apache.commons.lang.ArrayUtils; import mtas.codec.util.CodecUtil; /** @@ -56,9 +56,11 @@ public class MtasDataDoubleFull extends MtasDataFull<Double, Double> { */ @Override protected MtasDataItemDoubleFull getItem(int i) { + double[] primitiveList; if (i >= 0 && i < size) { + primitiveList = Arrays.stream(fullValueList[i]).mapToDouble(Double::doubleValue).toArray(); return new MtasDataItemDoubleFull( - ArrayUtils.toPrimitive(fullValueList[i]), + primitiveList, hasSub() ? subCollectorListNextLevel[i] : null, getStatsItems(), sortType, sortDirection, errorNumber[i], errorList[i], sourceNumberList[i]); @@ -114,7 +116,8 @@ public class MtasDataDoubleFull extends MtasDataFull<Double, Double> { public MtasDataCollector<?, ?> add(double[] values, int number) throws IOException { MtasDataCollector<?, ?> dataCollector = add(false); - setValue(newCurrentPosition, ArrayUtils.toObject(values), number, + Double[] objectValues = Arrays.stream(values).boxed().toArray(Double[]::new); + setValue(newCurrentPosition, objectValues, number, newCurrentExisting); return dataCollector; } @@ -179,7 +182,8 @@ public class MtasDataDoubleFull extends MtasDataFull<Double, Double> { throws IOException { if (key != null) { MtasDataCollector<?, ?> subCollector = add(key, false); - setValue(newCurrentPosition, ArrayUtils.toObject(values), number, + Double[] objectValues = Arrays.stream(values).boxed().toArray(Double[]::new); + setValue(newCurrentPosition, objectValues, number, newCurrentExisting); return subCollector; } else { diff --git a/src/main/java/mtas/codec/util/collector/MtasDataItemDoubleFull.java b/src/main/java/mtas/codec/util/collector/MtasDataItemDoubleFull.java index 6111316..e43f129 100644 --- a/src/main/java/mtas/codec/util/collector/MtasDataItemDoubleFull.java +++ b/src/main/java/mtas/codec/util/collector/MtasDataItemDoubleFull.java @@ -1,5 +1,6 @@ package mtas.codec.util.collector; +import java.util.Arrays; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.Map; @@ -7,7 +8,6 @@ import java.util.Objects; import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.apache.commons.lang.ArrayUtils; import mtas.codec.util.CodecUtil; /** @@ -36,7 +36,7 @@ public class MtasDataItemDoubleFull extends MtasDataItemFull<Double, Double> { public MtasDataItemDoubleFull(double[] value, MtasDataCollector<?, ?> sub, Set<String> statsItems, String sortType, String sortDirection, int errorNumber, Map<String, Integer> errorList, int sourceNumber) { - super(ArrayUtils.toObject(value), sub, statsItems, sortType, sortDirection, + super(Arrays.stream(value).boxed().toArray(Double[]::new), sub, statsItems, sortType, sortDirection, errorNumber, errorList, new MtasDataDoubleOperations(), sourceNumber); } diff --git a/src/main/java/mtas/codec/util/collector/MtasDataItemLongFull.java b/src/main/java/mtas/codec/util/collector/MtasDataItemLongFull.java index ac14ed9..1da0f32 100644 --- a/src/main/java/mtas/codec/util/collector/MtasDataItemLongFull.java +++ b/src/main/java/mtas/codec/util/collector/MtasDataItemLongFull.java @@ -1,5 +1,6 @@ package mtas.codec.util.collector; +import java.util.Arrays; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.Map; @@ -7,7 +8,6 @@ import java.util.Objects; import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.apache.commons.lang.ArrayUtils; import mtas.codec.util.CodecUtil; /** @@ -36,7 +36,7 @@ class MtasDataItemLongFull extends MtasDataItemFull<Long, Double> { public MtasDataItemLongFull(long[] value, MtasDataCollector<?, ?> sub, Set<String> statsItems, String sortType, String sortDirection, int errorNumber, Map<String, Integer> errorList, int sourceNumber) { - super(ArrayUtils.toObject(value), sub, statsItems, sortType, sortDirection, + super(Arrays.stream(value).boxed().toArray(Long[]::new), sub, statsItems, sortType, sortDirection, errorNumber, errorList, new MtasDataLongOperations(), sourceNumber); } diff --git a/src/main/java/mtas/codec/util/collector/MtasDataLongAdvanced.java b/src/main/java/mtas/codec/util/collector/MtasDataLongAdvanced.java index 88bf298..8e2b74a 100644 --- a/src/main/java/mtas/codec/util/collector/MtasDataLongAdvanced.java +++ b/src/main/java/mtas/codec/util/collector/MtasDataLongAdvanced.java @@ -1,10 +1,10 @@ package mtas.codec.util.collector; import java.io.IOException; +import java.util.Arrays; import java.util.Collections; import java.util.SortedSet; -import org.apache.commons.lang.ArrayUtils; import mtas.codec.util.CodecUtil; /** @@ -88,7 +88,8 @@ public class MtasDataLongAdvanced extends MtasDataAdvanced<Long, Double> { public MtasDataCollector<?, ?> add(long[] values, int number) throws IOException { MtasDataCollector<?, ?> dataCollector = add(false); - setValue(newCurrentPosition, ArrayUtils.toObject(values), number, + Long[] objectValues = Arrays.stream(values).boxed().toArray(Long[]::new); + setValue(newCurrentPosition, objectValues, number, newCurrentExisting); return dataCollector; } @@ -145,7 +146,8 @@ public class MtasDataLongAdvanced extends MtasDataAdvanced<Long, Double> { throws IOException { if (key != null) { MtasDataCollector<?, ?> subCollector = add(key, false); - setValue(newCurrentPosition, ArrayUtils.toObject(values), number, + Long[] objectValues = Arrays.stream(values).boxed().toArray(Long[]::new); + setValue(newCurrentPosition, objectValues, number, newCurrentExisting); return subCollector; } else { diff --git a/src/main/java/mtas/codec/util/collector/MtasDataLongBasic.java b/src/main/java/mtas/codec/util/collector/MtasDataLongBasic.java index 4e8e959..74fc565 100644 --- a/src/main/java/mtas/codec/util/collector/MtasDataLongBasic.java +++ b/src/main/java/mtas/codec/util/collector/MtasDataLongBasic.java @@ -1,10 +1,10 @@ package mtas.codec.util.collector; import java.io.IOException; +import java.util.Arrays; import java.util.Collections; import java.util.SortedSet; -import org.apache.commons.lang.ArrayUtils; import mtas.codec.util.CodecUtil; /** @@ -87,7 +87,8 @@ public class MtasDataLongBasic extends MtasDataBasic<Long, Double> { public MtasDataCollector<?, ?> add(long[] values, int number) throws IOException { MtasDataCollector<?, ?> dataCollector = add(false); - setValue(newCurrentPosition, ArrayUtils.toObject(values), number, + Long[] objectValues = Arrays.stream(values).boxed().toArray(Long[]::new); + setValue(newCurrentPosition, objectValues, number, newCurrentExisting); return dataCollector; } @@ -153,7 +154,8 @@ public class MtasDataLongBasic extends MtasDataBasic<Long, Double> { throws IOException { if (key != null) { MtasDataCollector<?, ?> subCollector = add(key, false); - setValue(newCurrentPosition, ArrayUtils.toObject(values), number, + Long[] objectValues = Arrays.stream(values).boxed().toArray(Long[]::new); + setValue(newCurrentPosition, objectValues, number, newCurrentExisting); return subCollector; } else { diff --git a/src/main/java/mtas/codec/util/collector/MtasDataLongFull.java b/src/main/java/mtas/codec/util/collector/MtasDataLongFull.java index 6abd03a..dcba7c2 100644 --- a/src/main/java/mtas/codec/util/collector/MtasDataLongFull.java +++ b/src/main/java/mtas/codec/util/collector/MtasDataLongFull.java @@ -1,10 +1,11 @@ package mtas.codec.util.collector; import java.io.IOException; +import java.util.Arrays; import java.util.Collections; import java.util.SortedSet; +import java.util.stream.Collectors; -import org.apache.commons.lang.ArrayUtils; import mtas.codec.util.CodecUtil; /** @@ -55,8 +56,10 @@ public class MtasDataLongFull extends MtasDataFull<Long, Double> { */ @Override protected MtasDataItemLongFull getItem(int i) { - if (i >= 0 && i < size) { - return new MtasDataItemLongFull(ArrayUtils.toPrimitive(fullValueList[i]), + long[] primitiveList; + if (i >= 0 && i < size) { + primitiveList = Arrays.stream(fullValueList[i]).mapToLong(Long::longValue).toArray(); + return new MtasDataItemLongFull(primitiveList, hasSub() ? subCollectorListNextLevel[i] : null, getStatsItems(), sortType, sortDirection, errorNumber[i], errorList[i], sourceNumberList[i]); @@ -85,7 +88,8 @@ public class MtasDataLongFull extends MtasDataFull<Long, Double> { public MtasDataCollector<?, ?> add(long[] values, int number) throws IOException { MtasDataCollector<?, ?> dataCollector = add(false); - setValue(newCurrentPosition, ArrayUtils.toObject(values), number, + Long[] objectValues = Arrays.stream(values).boxed().toArray(Long[]::new); + setValue(newCurrentPosition, objectValues, number, newCurrentExisting); return dataCollector; } @@ -142,7 +146,8 @@ public class MtasDataLongFull extends MtasDataFull<Long, Double> { throws IOException { if (key != null) { MtasDataCollector<?, ?> subCollector = add(key, false); - setValue(newCurrentPosition, ArrayUtils.toObject(values), number, + Long[] objectValues = Arrays.stream(values).boxed().toArray(Long[]::new); + setValue(newCurrentPosition, objectValues, number, newCurrentExisting); return subCollector; } else { -- GitLab