Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor protocol-jackson to use the new immutable protocol #8973

Merged
merged 5 commits into from
Mar 26, 2022

Conversation

npepinpe
Copy link
Member

Description

This PR updates the protocol-jackson module to make use of the new immutable protocol classes in protocol, using the protocol-util module to discover and map the abstract and concrete types together. As mentioned in the issue, the tests are somewhat minimal, but will be fleshed out as soon as the record factory is added in the next step.

Related issues

related to #8837

Definition of Done

Not all items need to be done depending on the issue and the pull request.

Code changes:

  • The changes are backwards compatibility with previous versions
  • If it fixes a bug then PRs are created to backport the fix to the last two minor versions. You can trigger a backport by assigning labels (e.g. backport stable/1.3) to the PR, in case that fails you need to create backports manually.

Testing:

  • There are unit/integration tests that verify all acceptance criterias of the issue
  • New tests are written to ensure backwards compatibility with further versions
  • The behavior is tested manually
  • The change has been verified by a QA run
  • The impact of the changes is verified by a benchmark

Documentation:

  • The documentation is updated (e.g. BPMN reference, configuration, examples, get-started guides, etc.)
  • New content is added to the release announcement
  • If the PR changes how BPMN processes are validated (e.g. support new BPMN element) then the Camunda modeling team should be informed to adjust the BPMN linting.

@npepinpe npepinpe force-pushed the 8837-protocol-jackson branch 3 times, most recently from 80e2287 to e0b2df0 Compare March 24, 2022 14:45
@npepinpe npepinpe requested a review from korthout March 24, 2022 14:47
@npepinpe npepinpe linked an issue Mar 24, 2022 that may be closed by this pull request
Copy link
Member

@korthout korthout left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work @npepinpe LGTM 🍸

As I had already reviewed this, I haven't got much new to say. Please have a look at my suggestions.

Copy link
Member

@korthout korthout left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👏 LGTM

@npepinpe npepinpe force-pushed the 8837-new-protocol-util branch 2 times, most recently from d8b0176 to 8078a32 Compare March 25, 2022 17:37
Base automatically changed from 8837-new-protocol-util to main March 26, 2022 10:18
Removes the old immutable `protocol-jackson`, and use the new one found
directly in the `protocol` module.

This completely changes how the module is used. The API is now to create
a new `ObjectMapper` and register an instance of `ZeebeProtocolModule`,
which knows how to serialize and deserialize records using the new
immutable protocol. This is achieved by reusing the mapping utilities
found in `protocol-util`.
@npepinpe
Copy link
Member Author

bors merge

zeebe-bors-camunda bot added a commit that referenced this pull request Mar 26, 2022
8973: Refactor protocol-jackson to use the new immutable protocol r=npepinpe a=npepinpe

## Description

This PR updates the `protocol-jackson` module to make use of the new immutable protocol classes in `protocol`, using the `protocol-util` module to discover and map the abstract and concrete types together. As mentioned in the issue, the tests are somewhat minimal, but will be fleshed out as soon as the record factory is added in the next step.

## Related issues

related to #8837 



Co-authored-by: Nicolas Pepin-Perreault <nicolas.pepin-perreault@camunda.com>
@zeebe-bors-camunda
Copy link
Contributor

Build failed:

@npepinpe npepinpe merged commit 0eb8ac2 into main Mar 26, 2022
@npepinpe npepinpe deleted the 8837-protocol-jackson branch March 26, 2022 10:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Protocol Jackson improvements
3 participants