You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by pe...@apache.org on 2022/12/26 08:43:16 UTC

[pulsar] branch master updated: [improve][doc] Java example explaining code without using lombok (#19019)

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

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


The following commit(s) were added to refs/heads/master by this push:
     new b42aed18dac [improve][doc] Java example explaining code without using lombok (#19019)
b42aed18dac is described below

commit b42aed18dac4f04245ded0bf746b3f4e1c352243
Author: Alvaro <10...@users.noreply.github.com>
AuthorDate: Mon Dec 26 09:43:09 2022 +0100

    [improve][doc] Java example explaining code without using lombok (#19019)
---
 site2/docs/schema-understand.md | 22 ++++++++++++++++------
 1 file changed, 16 insertions(+), 6 deletions(-)

diff --git a/site2/docs/schema-understand.md b/site2/docs/schema-understand.md
index 239c81aad57..3aa27c0056b 100644
--- a/site2/docs/schema-understand.md
+++ b/site2/docs/schema-understand.md
@@ -122,15 +122,25 @@ Pulsar gets the schema definition from the predefined `struct` using an Avro lib
 1. Create the _User_ class to define the messages sent to Pulsar topics.
 
    ```java
+   # If you use Lombok
+
+   @Builder
+   @AllArgsConstructor
+   @NoArgsConstructor
    public static class User {
        public String name;
        public int age;
-       public User(String name, int age) {
- 	this.name = name;
-	this.age = age
-       }
-       public User() {}
    }
+
+   # If you DON'T use Lombok you will need to add the constructor like this
+   # 
+   #   public static class User {
+   #    String name;
+   #    int age;
+   #    public User() { } 
+   #    public User(String name, int age) { this.name = name; this.age = age; } }
+   #}
+
    ```
 
 2. Create a producer with a `struct` schema and send messages.
@@ -363,4 +373,4 @@ The following table outlines the mapping between the schema compatibility check
 |  `ALWAYS_INCOMPATIBLE`  |   N/A  | The schema evolution is disabled.                                                                                                                                                                                                                                                                                   | 
 |  <li>`BACKWARD` </li><li>`BACKWARD_TRANSITIVE` </li> |   Consumer first  | There is no guarantee that consumers using the old schema can read data produced using the new schema. Consequently, **upgrade all consumers first**, and then start producing new data.                                                                                                                            | 
 |  <li>`FORWARD` </li><li>`FORWARD_TRANSITIVE` </li> |   Producer first  | There is no guarantee that consumers using the new schema can read data produced using the old schema. Consequently, **upgrade all producers first** to use the new schema and ensure the data that has already been produced using the old schemas are not available to consumers, and then upgrade the consumers. | 
-|  <li>`FULL` </li><li>`FULL_TRANSITIVE` </li> |   Any order  | It is guaranteed that consumers using the old schema can read data produced using the new schema and consumers using the new schema can read data produced using the old schema. Consequently, you can upgrade the producers and consumers in **any order**.                                                        |
\ No newline at end of file
+|  <li>`FULL` </li><li>`FULL_TRANSITIVE` </li> |   Any order  | It is guaranteed that consumers using the old schema can read data produced using the new schema and consumers using the new schema can read data produced using the old schema. Consequently, you can upgrade the producers and consumers in **any order**.                                                        |