You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2015/03/04 10:10:05 UTC

[jira] [Commented] (FLINK-1512) Add CsvReader for reading into POJOs.

    [ https://issues.apache.org/jira/browse/FLINK-1512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14346626#comment-14346626 ] 

ASF GitHub Bot commented on FLINK-1512:
---------------------------------------

Github user chiwanpark commented on a diff in the pull request:

    https://github.com/apache/flink/pull/426#discussion_r25760453
  
    --- Diff: flink-java/src/main/java/org/apache/flink/api/java/io/CsvInputFormat.java ---
    @@ -235,8 +252,21 @@ public OUT readRecord(OUT reuse, byte[] bytes, int offset, int numBytes) throws
     		
     		if (parseRecord(parsedValues, bytes, offset, numBytes)) {
     			// valid parse, map values into pact record
    -			for (int i = 0; i < parsedValues.length; i++) {
    -				reuse.setField(parsedValues[i], i);
    +			if (pojoTypeInfo == null) {
    +				Tuple result = (Tuple) reuse;
    +				for (int i = 0; i < parsedValues.length; i++) {
    +					result.setField(parsedValues[i], i);
    +				}
    +			} else {
    +				for (int i = 0; i < parsedValues.length; i++) {
    +					try {
    +						pojoTypeInfo.getPojoFieldAt(i).field.set(reuse, parsedValues[i]);
    --- End diff --
    
    @rmetzger Thanks! I modify my implementation to set the fields accessible in `CsvInputFormat` and `ScalaCsvInputFormat` and add a test case with private fields.


> Add CsvReader for reading into POJOs.
> -------------------------------------
>
>                 Key: FLINK-1512
>                 URL: https://issues.apache.org/jira/browse/FLINK-1512
>             Project: Flink
>          Issue Type: New Feature
>          Components: Java API, Scala API
>            Reporter: Robert Metzger
>            Assignee: Chiwan Park
>            Priority: Minor
>              Labels: starter
>
> Currently, the {{CsvReader}} supports only TupleXX types. 
> It would be nice if users were also able to read into POJOs.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)