You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@metamodel.apache.org by ka...@apache.org on 2017/05/10 03:54:22 UTC
[20/43] metamodel git commit: METAMODEL-1114: Fixed
METAMODEL-1114: Fixed
Fixes #126
Project: http://git-wip-us.apache.org/repos/asf/metamodel/repo
Commit: http://git-wip-us.apache.org/repos/asf/metamodel/commit/060884c1
Tree: http://git-wip-us.apache.org/repos/asf/metamodel/tree/060884c1
Diff: http://git-wip-us.apache.org/repos/asf/metamodel/diff/060884c1
Branch: refs/heads/5.x
Commit: 060884c17d1c5c35348d2cb675bed1c404013579
Parents: 9c8f0b9
Author: Arjan Seijkens <Ar...@humaninference.com>
Authored: Mon Sep 5 21:16:01 2016 -0700
Committer: Kasper Sørensen <i....@gmail.com>
Committed: Mon Sep 5 21:16:01 2016 -0700
----------------------------------------------------------------------
CHANGES.md | 1 +
.../metamodel/fixedwidth/EbcdicConfiguration.java | 9 ++++++++-
.../apache/metamodel/fixedwidth/EBCDICTest.java | 18 ++++++++++++++++++
3 files changed, 27 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/metamodel/blob/060884c1/CHANGES.md
----------------------------------------------------------------------
diff --git a/CHANGES.md b/CHANGES.md
index c8f288f..f44077e 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -4,6 +4,7 @@
* [METAMODEL-1109] - Fixed diacritics/encoding issue with Fixed Width reader.
* [METAMODEL-1115] - Added support for passing your own PartnerConnection object to the Salesforce.com connector.
* [METAMODEL-1113] - Fixed support for ColumnNamingStrategy in CSV connector.
+ * [METAMODEL-1114] - Added support for ColumnNamingStrategy in EBCDIC connector.
### Apache MetaModel 4.5.4
http://git-wip-us.apache.org/repos/asf/metamodel/blob/060884c1/fixedwidth/src/main/java/org/apache/metamodel/fixedwidth/EbcdicConfiguration.java
----------------------------------------------------------------------
diff --git a/fixedwidth/src/main/java/org/apache/metamodel/fixedwidth/EbcdicConfiguration.java b/fixedwidth/src/main/java/org/apache/metamodel/fixedwidth/EbcdicConfiguration.java
index 389a4f8..e4bff94 100644
--- a/fixedwidth/src/main/java/org/apache/metamodel/fixedwidth/EbcdicConfiguration.java
+++ b/fixedwidth/src/main/java/org/apache/metamodel/fixedwidth/EbcdicConfiguration.java
@@ -18,6 +18,8 @@
*/
package org.apache.metamodel.fixedwidth;
+import org.apache.metamodel.schema.naming.ColumnNamingStrategy;
+
/**
* Special fixed-width configuration for EBCDIC files.
*/
@@ -35,7 +37,12 @@ public final class EbcdicConfiguration extends FixedWidthConfiguration {
public EbcdicConfiguration(int columnNameLineNumber, String encoding, int[] valueWidths,
boolean failOnInconsistentLineWidth, boolean skipEbcdicHeader, boolean eolPresent) {
- super(columnNameLineNumber, null, encoding, valueWidths, failOnInconsistentLineWidth);
+ this(columnNameLineNumber, null, encoding, valueWidths, failOnInconsistentLineWidth, skipEbcdicHeader, eolPresent);
+ }
+
+ public EbcdicConfiguration(int columnNameLineNumber, ColumnNamingStrategy columnNamingStrategy, String encoding,
+ int[] valueWidths, boolean failOnInconsistentLineWidth, boolean skipEbcdicHeader, boolean eolPresent) {
+ super(columnNameLineNumber, columnNamingStrategy, encoding, valueWidths, failOnInconsistentLineWidth);
_skipEbcdicHeader = skipEbcdicHeader;
_eolPresent = eolPresent;
}
http://git-wip-us.apache.org/repos/asf/metamodel/blob/060884c1/fixedwidth/src/test/java/org/apache/metamodel/fixedwidth/EBCDICTest.java
----------------------------------------------------------------------
diff --git a/fixedwidth/src/test/java/org/apache/metamodel/fixedwidth/EBCDICTest.java b/fixedwidth/src/test/java/org/apache/metamodel/fixedwidth/EBCDICTest.java
index ea19960..2b5c8be 100644
--- a/fixedwidth/src/test/java/org/apache/metamodel/fixedwidth/EBCDICTest.java
+++ b/fixedwidth/src/test/java/org/apache/metamodel/fixedwidth/EBCDICTest.java
@@ -20,12 +20,15 @@ package org.apache.metamodel.fixedwidth;
import java.io.File;
+import org.apache.metamodel.DataContext;
import org.apache.metamodel.data.DataSet;
import org.apache.metamodel.schema.Schema;
import org.apache.metamodel.schema.Table;
+import org.apache.metamodel.schema.naming.CustomColumnNamingStrategy;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
public class EBCDICTest {
private static final int[] COLUMN_WIDTHS = new int[] { 2, 7, 10, 10 };
@@ -74,4 +77,19 @@ public class EBCDICTest {
}
}
}
+
+ @Test
+ public void testCustomColumnNames() throws Exception {
+ final String[] columnNames = {"first", "second", "third", "fourth"};
+ final FixedWidthConfiguration configuration = new EbcdicConfiguration(
+ FixedWidthConfiguration.NO_COLUMN_NAME_LINE, new CustomColumnNamingStrategy(columnNames), ENCODING,
+ COLUMN_WIDTHS, false, true, false);
+ final DataContext dataContext = new FixedWidthDataContext(new File(
+ "src/test/resources/fixed-width-2-7-10-10.ebc"), configuration);
+ final Table table = dataContext.getDefaultSchema().getTable(0);
+
+ for (int i = 0; i < columnNames.length; i++) {
+ assertNotNull(table.getColumnByName(columnNames[i]));
+ }
+ }
}