Uploaded image for project: 'Apache Curator'
  1. Apache Curator
  2. CURATOR-5

Make JsonInstanceSerializer#deserialize leverage ServiceInstanceBuilder

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 2.0.0-incubating
    • TBD
    • Recipes
    • None

    Description

      From https://github.com/Netflix/curator/pull/255

      Proposing a way to change JsonInstanceSerializer leverage ServiceInstance's builder pattern directly.

      See discussion and request to generate a patch here: https://groups.google.com/d/topic/curator-users/Ai9RsVoUdgU/discussion

      ===

      It's possible a lot of the lower-level JSON deserialization code in JsonInstanceSerializer#deserialize() could be passed off to Jackson if ServiceInstanceBuilder's setters also followed the bean patterns (e.g. setId() versus id()). If ServiceInstanceBuilder followed this pattern, Jackson's standard bean deserialization could, I believe, deserialize directly into the ServiceInstanceBuilder and JsonInstanceSerializer#deserialize() could use that higher-level pattern to eliminate a fair chunk of code here.

      ===

      So, why don't we make ServiceInstanceBuilder follow the bean API? Can you update this pull to reflect that? I suggest leaving the old builder-style methods and marking them as deprecated. This way it won't break existing users.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              randgalt Jordan Zimmerman
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated: