You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by re...@apache.org on 2018/07/09 18:21:09 UTC

[beam] branch master updated (997ee3a -> 784f17e)

This is an automated email from the ASF dual-hosted git repository.

reuvenlax pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git.


    from 997ee3a  Merge pull request #5842 from cclauss/print_is_a_function_in_python3
     add 0b353a4  Add schema inference from POJO.
     add b2eaf22  Add BYTES type to schema, and POJO inference.
     add 5a244e3  Add automatic getter/setter inference from POJOS.    * Recursive POJOs and collection/map fields still not support.    * getter/setter generation still needs to be moved into helper class.    * Still missing optimized Row -> POJO conversion when the Row is a wrapper around a POJO.
     add 1df588d  Handle setter for ByteBuffer fields. Setter will be called with a byte[] parameter (as that's what Row.getBytes vends), so make sure we wrap it before assiging.
     add be3f53d  Split Row into separate subclass for RowWithStorage and RowWithGetters. This also allows a fast path for Row -> T conversion for the case of RowWithGetters.
     add 01e3c41  Introduce FieldValueGetterFactory and FieldValueSetterFactory.
     add 6cde85f  Add support for nested, array, and map types.
     add c9a983f  Refactor getter-based SchemaProvider into a common base class.
     add c7f97a8  Refactor getter/setter conversion utilities into a library. This cleans up the code, and makes these utilities reusable for other types of getters (e.g. JavaBean getters).
     add 536fe4b  Refactor Schema inference from POJOs so much of the code can be reused for other class types.
     add cdea677  Add encoding byte BYTES type.
     add f5c0b71  Make FieldValueGetter and FieldValueSetter generic types again.
     add 633bac3  Start adding JavaBean getters and setters.
     add dfd72db  Make sure that field order is stable, and make tests robust to unpredictable field order.
     add b1aade9  Simplify convertArray.
     add 5d0ca72  Address code-review comments.
     add 5194e00  Address code-review comments.
     add 77f66df  Add better validation to isSetter isGetter
     new 784f17e  Merge pull request #5873: [BEAM-4453] Add schema support for Java POJOs and Java Beans

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../java/org/apache/beam/sdk/coders/RowCoder.java  |   4 +
 .../org/apache/beam/sdk/schemas/DefaultSchema.java |   7 +-
 .../sdk/schemas/GetterBasedSchemaProvider.java     | 146 ++++++
 .../apache/beam/sdk/schemas/JavaBeanSchema.java    |  53 ++
 .../apache/beam/sdk/schemas/JavaFieldSchema.java   |  53 ++
 .../java/org/apache/beam/sdk/schemas/Schema.java   |  19 +-
 .../apache/beam/sdk/schemas/SchemaProvider.java    |   9 +-
 .../beam/sdk/schemas/utils/ByteBuddyUtils.java     | 563 +++++++++++++++++++++
 .../beam/sdk/schemas/utils/JavaBeanUtils.java      | 326 ++++++++++++
 .../apache/beam/sdk/schemas/utils/POJOUtils.java   | 299 +++++++++++
 .../beam/sdk/schemas/utils/ReflectUtils.java       | 135 +++++
 .../sdk/schemas/utils/StaticSchemaInference.java   | 219 ++++++++
 .../beam/sdk/schemas/{ => utils}/package-info.java |   5 +-
 .../main/java/org/apache/beam/sdk/values/Row.java  | 131 +++--
 .../org/apache/beam/sdk/values/RowWithGetters.java | 122 +++++
 .../RowWithStorage.java}                           |  43 +-
 .../beam/sdk/values/reflect/ByteBuddyUtils.java    |   6 +-
 .../beam/sdk/values/reflect/FieldValueGetter.java  |   7 +-
 ...erFactory.java => FieldValueGetterFactory.java} |  19 +-
 ...FieldValueGetter.java => FieldValueSetter.java} |  27 +-
 ...erFactory.java => FieldValueSetterFactory.java} |  19 +-
 .../sdk/values/reflect/GeneratedGetterFactory.java |   2 +-
 ...tterFactory.java => JavaBeanGetterFactory.java} |  18 +-
 ...tterFactory.java => JavaBeanSetterFactory.java} |  18 +-
 ...terFactory.java => PojoValueGetterFactory.java} |  18 +-
 ...terFactory.java => PojoValueSetterFactory.java} |  18 +-
 .../beam/sdk/schemas/JavaBeanSchemaTest.java       | 338 +++++++++++++
 .../beam/sdk/schemas/JavaFieldSchemaTest.java      | 344 +++++++++++++
 .../beam/sdk/schemas/SchemaRegistryTest.java       |   8 +-
 .../beam/sdk/schemas/utils/JavaBeanUtilsTest.java  | 220 ++++++++
 .../beam/sdk/schemas/utils/POJOUtilsTest.java      | 214 ++++++++
 .../beam/sdk/schemas/utils/SchemaTestUtils.java    |  78 +++
 .../beam/sdk/schemas/utils/TestJavaBeans.java      | 491 ++++++++++++++++++
 .../apache/beam/sdk/schemas/utils/TestPOJOs.java   | 268 ++++++++++
 .../beam/sdk/transforms/ParDoSchemaTest.java       |  38 ++
 .../values/reflect/DefaultSchemaFactoryTest.java   |   4 +-
 .../extensions/sql/impl/utils/CalciteUtils.java    |   1 +
 .../sdk/extensions/sql/SqlSchemaFactoryTest.java   |   7 +-
 .../operator/BeamSqlInputRefExpressionTest.java    |   2 +-
 39 files changed, 4147 insertions(+), 152 deletions(-)
 create mode 100644 sdks/java/core/src/main/java/org/apache/beam/sdk/schemas/GetterBasedSchemaProvider.java
 create mode 100644 sdks/java/core/src/main/java/org/apache/beam/sdk/schemas/JavaBeanSchema.java
 create mode 100644 sdks/java/core/src/main/java/org/apache/beam/sdk/schemas/JavaFieldSchema.java
 create mode 100644 sdks/java/core/src/main/java/org/apache/beam/sdk/schemas/utils/ByteBuddyUtils.java
 create mode 100644 sdks/java/core/src/main/java/org/apache/beam/sdk/schemas/utils/JavaBeanUtils.java
 create mode 100644 sdks/java/core/src/main/java/org/apache/beam/sdk/schemas/utils/POJOUtils.java
 create mode 100644 sdks/java/core/src/main/java/org/apache/beam/sdk/schemas/utils/ReflectUtils.java
 create mode 100644 sdks/java/core/src/main/java/org/apache/beam/sdk/schemas/utils/StaticSchemaInference.java
 copy sdks/java/core/src/main/java/org/apache/beam/sdk/schemas/{ => utils}/package-info.java (84%)
 create mode 100644 sdks/java/core/src/main/java/org/apache/beam/sdk/values/RowWithGetters.java
 copy sdks/java/core/src/main/java/org/apache/beam/sdk/{coders/StructuralByteArray.java => values/RowWithStorage.java} (53%)
 copy sdks/java/core/src/main/java/org/apache/beam/sdk/values/reflect/{GetterFactory.java => FieldValueGetterFactory.java} (66%)
 copy sdks/java/core/src/main/java/org/apache/beam/sdk/values/reflect/{FieldValueGetter.java => FieldValueSetter.java} (62%)
 copy sdks/java/core/src/main/java/org/apache/beam/sdk/values/reflect/{GetterFactory.java => FieldValueSetterFactory.java} (66%)
 copy sdks/java/core/src/main/java/org/apache/beam/sdk/values/reflect/{GetterFactory.java => JavaBeanGetterFactory.java} (67%)
 copy sdks/java/core/src/main/java/org/apache/beam/sdk/values/reflect/{GetterFactory.java => JavaBeanSetterFactory.java} (67%)
 copy sdks/java/core/src/main/java/org/apache/beam/sdk/values/reflect/{GetterFactory.java => PojoValueGetterFactory.java} (68%)
 copy sdks/java/core/src/main/java/org/apache/beam/sdk/values/reflect/{GetterFactory.java => PojoValueSetterFactory.java} (68%)
 create mode 100644 sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/JavaBeanSchemaTest.java
 create mode 100644 sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/JavaFieldSchemaTest.java
 create mode 100644 sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/utils/JavaBeanUtilsTest.java
 create mode 100644 sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/utils/POJOUtilsTest.java
 create mode 100644 sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/utils/SchemaTestUtils.java
 create mode 100644 sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/utils/TestJavaBeans.java
 create mode 100644 sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/utils/TestPOJOs.java


[beam] 01/01: Merge pull request #5873: [BEAM-4453] Add schema support for Java POJOs and Java Beans

Posted by re...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

reuvenlax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git

commit 784f17ed66205976be6702a344add057705eb0a6
Merge: 997ee3a 77f66df
Author: reuvenlax <re...@google.com>
AuthorDate: Mon Jul 9 11:21:00 2018 -0700

    Merge pull request #5873: [BEAM-4453] Add schema support for Java POJOs and Java Beans

 .../java/org/apache/beam/sdk/coders/RowCoder.java  |   4 +
 .../org/apache/beam/sdk/schemas/DefaultSchema.java |   7 +-
 .../sdk/schemas/GetterBasedSchemaProvider.java     | 146 ++++++
 .../apache/beam/sdk/schemas/JavaBeanSchema.java    |  53 ++
 .../apache/beam/sdk/schemas/JavaFieldSchema.java   |  53 ++
 .../java/org/apache/beam/sdk/schemas/Schema.java   |  19 +-
 .../apache/beam/sdk/schemas/SchemaProvider.java    |   9 +-
 .../beam/sdk/schemas/utils/ByteBuddyUtils.java     | 563 +++++++++++++++++++++
 .../beam/sdk/schemas/utils/JavaBeanUtils.java      | 326 ++++++++++++
 .../apache/beam/sdk/schemas/utils/POJOUtils.java   | 299 +++++++++++
 .../beam/sdk/schemas/utils/ReflectUtils.java       | 135 +++++
 .../sdk/schemas/utils/StaticSchemaInference.java   | 219 ++++++++
 .../utils/package-info.java}                       |  23 +-
 .../main/java/org/apache/beam/sdk/values/Row.java  | 131 +++--
 .../org/apache/beam/sdk/values/RowWithGetters.java | 122 +++++
 .../org/apache/beam/sdk/values/RowWithStorage.java |  54 ++
 .../beam/sdk/values/reflect/ByteBuddyUtils.java    |   6 +-
 .../beam/sdk/values/reflect/FieldValueGetter.java  |   7 +-
 ...lueGetter.java => FieldValueGetterFactory.java} |  26 +-
 ...FieldValueGetter.java => FieldValueSetter.java} |  27 +-
 ...lueGetter.java => FieldValueSetterFactory.java} |  26 +-
 .../sdk/values/reflect/GeneratedGetterFactory.java |   2 +-
 ...ValueGetter.java => JavaBeanGetterFactory.java} |  25 +-
 ...ValueGetter.java => JavaBeanSetterFactory.java} |  25 +-
 ...alueGetter.java => PojoValueGetterFactory.java} |  25 +-
 ...alueGetter.java => PojoValueSetterFactory.java} |  25 +-
 .../beam/sdk/schemas/JavaBeanSchemaTest.java       | 338 +++++++++++++
 .../beam/sdk/schemas/JavaFieldSchemaTest.java      | 344 +++++++++++++
 .../beam/sdk/schemas/SchemaRegistryTest.java       |   8 +-
 .../beam/sdk/schemas/utils/JavaBeanUtilsTest.java  | 220 ++++++++
 .../beam/sdk/schemas/utils/POJOUtilsTest.java      | 214 ++++++++
 .../beam/sdk/schemas/utils/SchemaTestUtils.java    |  78 +++
 .../beam/sdk/schemas/utils/TestJavaBeans.java      | 491 ++++++++++++++++++
 .../apache/beam/sdk/schemas/utils/TestPOJOs.java   | 268 ++++++++++
 .../beam/sdk/transforms/ParDoSchemaTest.java       |  38 ++
 .../values/reflect/DefaultSchemaFactoryTest.java   |   4 +-
 .../extensions/sql/impl/utils/CalciteUtils.java    |   1 +
 .../sdk/extensions/sql/SqlSchemaFactoryTest.java   |   7 +-
 .../operator/BeamSqlInputRefExpressionTest.java    |   2 +-
 39 files changed, 4185 insertions(+), 185 deletions(-)