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

Introducing: result handlers #391

Merged
merged 10 commits into from
Dec 7, 2018
Merged

Introducing: result handlers #391

merged 10 commits into from
Dec 7, 2018

Conversation

cicdw
Copy link
Member

@cicdw cicdw commented Dec 7, 2018

Large portion of #389

This PR introduces a new tool in the core toolkit: ResultHandlers. A result handler is a configurable class for "serializing" and "deserializing" state results, where "serialize" means serialize plus place into remote storage, and "deserialize" means pull from remote storage and then deserialize. Note that currently this is only serializing state.result, not cached_inputs (that will be the next PR).

An instantiated result handler is (optionally) attached to a flow, and then passed down into client calls as needed.

In implementing this new feature, I also refactored the client into a full submodule.

Things left (not necessarily in this PR unless others want that):

  • handle cached_inputs and cached_states
  • handle expiration
  • add default
  • serialize these / package them up with the Flow for deployment

@cicdw cicdw merged commit d4b3c7f into master Dec 7, 2018
@cicdw cicdw deleted the custom-result-serializers branch December 7, 2018 23:38
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.

2 participants