Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Implemented
    • Affects Version/s: None
    • Fix Version/s: 1.3.0
    • Component/s: Core
    • Labels:
      None

      Description

      Currently, it is trivial to create a Row, for example:

      Row row = new Row(3);
      row.setField(0, "hello");
      row.setField(1, true);
      row.setField(2, 1L);
      

      It would be nice to have a help method of to create a Row, such as:

      Row row = Row.of("hello", true, 1L);
      

        Issue Links

          Activity

          Hide
          githubbot ASF GitHub Bot added a comment -

          GitHub user wuchong opened a pull request:

          https://github.com/apache/flink/pull/3038

          FLINK-5385 [core] Add a help function to create Row

          Thanks for contributing to Apache Flink. Before you open your pull request, please take the following check list into consideration.
          If your changes take all of the items into account, feel free to open your pull request. For more information and/or questions please refer to the [How To Contribute guide](http://flink.apache.org/how-to-contribute.html).
          In addition to going through the list, please provide a meaningful description of your changes.

          • [x] General
          • The pull request references the related JIRA issue ("[FLINK-XXX] Jira title text")
          • The pull request addresses only one issue
          • Each commit in the PR has a meaningful commit message (including the JIRA id)
          • [ ] Documentation
          • Documentation has been added for new functionality
          • Old documentation affected by the pull request has been updated
          • JavaDoc for public methods has been added
          • [x] Tests & Build
          • Functionality added by the pull request is covered by tests
          • `mvn clean verify` has been executed successfully locally or a Travis build has passed

          Currently, it is trivial to create a Row, for example:

          ```java
          Row row = new Row(3);
          row.setField(0, "hello");
          row.setField(1, true);
          row.setField(2, 1L);
          ```

          This PR introduces an `of` help method to create a Row, such as:

          ```java
          Row row = Row.of("hello", true, 1L);
          ```

          You can merge this pull request into a Git repository by running:

          $ git pull https://github.com/wuchong/flink rowof-FLINK-5385

          Alternatively you can review and apply these changes as the patch at:

          https://github.com/apache/flink/pull/3038.patch

          To close this pull request, make a commit to your master/trunk branch
          with (at least) the following in the commit message:

          This closes #3038


          commit 8213c4722b83e5e6573cb7d84940a09d0fe1211f
          Author: Jark Wu <wuchong.wc@alibaba-inc.com>
          Date: 2016-12-22T06:23:57Z

          FLINK-5385 [core] Add a help function to create Row


          Show
          githubbot ASF GitHub Bot added a comment - GitHub user wuchong opened a pull request: https://github.com/apache/flink/pull/3038 FLINK-5385 [core] Add a help function to create Row Thanks for contributing to Apache Flink. Before you open your pull request, please take the following check list into consideration. If your changes take all of the items into account, feel free to open your pull request. For more information and/or questions please refer to the [How To Contribute guide] ( http://flink.apache.org/how-to-contribute.html ). In addition to going through the list, please provide a meaningful description of your changes. [x] General The pull request references the related JIRA issue (" [FLINK-XXX] Jira title text") The pull request addresses only one issue Each commit in the PR has a meaningful commit message (including the JIRA id) [ ] Documentation Documentation has been added for new functionality Old documentation affected by the pull request has been updated JavaDoc for public methods has been added [x] Tests & Build Functionality added by the pull request is covered by tests `mvn clean verify` has been executed successfully locally or a Travis build has passed Currently, it is trivial to create a Row, for example: ```java Row row = new Row(3); row.setField(0, "hello"); row.setField(1, true); row.setField(2, 1L); ``` This PR introduces an `of` help method to create a Row, such as: ```java Row row = Row.of("hello", true, 1L); ``` You can merge this pull request into a Git repository by running: $ git pull https://github.com/wuchong/flink rowof- FLINK-5385 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/flink/pull/3038.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #3038 commit 8213c4722b83e5e6573cb7d84940a09d0fe1211f Author: Jark Wu <wuchong.wc@alibaba-inc.com> Date: 2016-12-22T06:23:57Z FLINK-5385 [core] Add a help function to create Row
          Hide
          githubbot ASF GitHub Bot added a comment -

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

          https://github.com/apache/flink/pull/3038#discussion_r93594019

          — Diff: flink-core/src/main/java/org/apache/flink/types/Row.java —
          @@ -113,4 +113,30 @@ public boolean equals(Object o) {
          public int hashCode()

          { return Arrays.hashCode(fields); }

          +
          + /**
          + * Creates a new Row and assigns the given values to the Row's fields.
          + * This is more convenient than using the constructor.
          + *
          + * <p>For example:
          + *
          + * <pre>
          + * Row.of("hello", true, 1L);}
          + * </pre>
          + * instead of
          + * <pre>
          + * Row row = new Row(3);
          + * row.setField(0, "hello");
          + * row.setField(1, true);
          + * row.setField(2, 1L);
          + * </pre>
          + *
          + */
          + public static Row of(Object... objects) {
          — End diff –

          I would rename `objects` to `fields` or `values`

          Show
          githubbot ASF GitHub Bot added a comment - Github user fhueske commented on a diff in the pull request: https://github.com/apache/flink/pull/3038#discussion_r93594019 — Diff: flink-core/src/main/java/org/apache/flink/types/Row.java — @@ -113,4 +113,30 @@ public boolean equals(Object o) { public int hashCode() { return Arrays.hashCode(fields); } + + /** + * Creates a new Row and assigns the given values to the Row's fields. + * This is more convenient than using the constructor. + * + * <p>For example: + * + * <pre> + * Row.of("hello", true, 1L);} + * </pre> + * instead of + * <pre> + * Row row = new Row(3); + * row.setField(0, "hello"); + * row.setField(1, true); + * row.setField(2, 1L); + * </pre> + * + */ + public static Row of(Object... objects) { — End diff – I would rename `objects` to `fields` or `values`
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user fhueske commented on the issue:

          https://github.com/apache/flink/pull/3038

          good idea!
          +1 to merge

          Show
          githubbot ASF GitHub Bot added a comment - Github user fhueske commented on the issue: https://github.com/apache/flink/pull/3038 good idea! +1 to merge
          Hide
          githubbot ASF GitHub Bot added a comment -

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

          https://github.com/apache/flink/pull/3038#discussion_r93594267

          — Diff: flink-core/src/main/java/org/apache/flink/types/Row.java —
          @@ -113,4 +113,30 @@ public boolean equals(Object o) {
          public int hashCode()

          { return Arrays.hashCode(fields); }

          +
          + /**
          + * Creates a new Row and assigns the given values to the Row's fields.
          + * This is more convenient than using the constructor.
          + *
          + * <p>For example:
          + *
          + * <pre>
          + * Row.of("hello", true, 1L);}
          + * </pre>
          + * instead of
          + * <pre>
          + * Row row = new Row(3);
          + * row.setField(0, "hello");
          + * row.setField(1, true);
          + * row.setField(2, 1L);
          + * </pre>
          + *
          + */
          + public static Row of(Object... objects) {
          — End diff –

          good point!

          Show
          githubbot ASF GitHub Bot added a comment - Github user wuchong commented on a diff in the pull request: https://github.com/apache/flink/pull/3038#discussion_r93594267 — Diff: flink-core/src/main/java/org/apache/flink/types/Row.java — @@ -113,4 +113,30 @@ public boolean equals(Object o) { public int hashCode() { return Arrays.hashCode(fields); } + + /** + * Creates a new Row and assigns the given values to the Row's fields. + * This is more convenient than using the constructor. + * + * <p>For example: + * + * <pre> + * Row.of("hello", true, 1L);} + * </pre> + * instead of + * <pre> + * Row row = new Row(3); + * row.setField(0, "hello"); + * row.setField(1, true); + * row.setField(2, 1L); + * </pre> + * + */ + public static Row of(Object... objects) { — End diff – good point!
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user fhueske commented on the issue:

          https://github.com/apache/flink/pull/3038

          merging

          Show
          githubbot ASF GitHub Bot added a comment - Github user fhueske commented on the issue: https://github.com/apache/flink/pull/3038 merging
          Hide
          githubbot ASF GitHub Bot added a comment -

          Github user asfgit closed the pull request at:

          https://github.com/apache/flink/pull/3038

          Show
          githubbot ASF GitHub Bot added a comment - Github user asfgit closed the pull request at: https://github.com/apache/flink/pull/3038
          Hide
          fhueske Fabian Hueske added a comment -

          Implemented with 61ae04fb5dcb0d29efe96f1f19ba35e5ab1e360e

          Show
          fhueske Fabian Hueske added a comment - Implemented with 61ae04fb5dcb0d29efe96f1f19ba35e5ab1e360e

            People

            • Assignee:
              jark Jark Wu
              Reporter:
              jark Jark Wu
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development