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

Go Runtime Handle Callbacks #2048

Closed
1 task done
MrArnoldPalmer opened this issue Sep 26, 2020 · 3 comments · Fixed by cdk8s-team/cdk8s-operator#228 or awslabs/aws-delivlib-sample#83
Closed
1 task done

Go Runtime Handle Callbacks #2048

MrArnoldPalmer opened this issue Sep 26, 2020 · 3 comments · Fixed by cdk8s-team/cdk8s-operator#228 or awslabs/aws-delivlib-sample#83
Assignees
Labels
effort/large Large work item – several weeks of effort feature-request A feature should be added or improved. language/go Regarding GoLang bindings p1

Comments

@MrArnoldPalmer
Copy link
Contributor

MrArnoldPalmer commented Sep 26, 2020

🚀 Feature Request

Runtime methods currently don't handle callback responses from the API. Basically, they should 😄. This is a non-trivial task that kernel request methods need to handle.

The custom UnmarshalJSON implementation for runtime response apis may be an appropriate place to distinguish between a callback response and everything else, as this is where error and ok responses are currently deciphered. Decoding the callback should trigger additional runtime request round trips until a complete response is received.

@MrArnoldPalmer MrArnoldPalmer added language/go Regarding GoLang bindings feature-request A feature should be added or improved. effort/large Large work item – several weeks of effort p1 labels Sep 26, 2020
@MrArnoldPalmer MrArnoldPalmer added this to the GoLang Alpha milestone Sep 26, 2020
This was referenced Oct 13, 2020
@SoManyHs SoManyHs assigned SoManyHs and unassigned MrArnoldPalmer Dec 1, 2020
@MrArnoldPalmer MrArnoldPalmer mentioned this issue Jan 20, 2021
2 tasks
@MrArnoldPalmer MrArnoldPalmer added blocked Work is blocked on this issue for this codebase. Other labels or comments may indicate why. and removed blocked Work is blocked on this issue for this codebase. Other labels or comments may indicate why. labels Feb 11, 2021
RomainMuller added a commit that referenced this issue Mar 3, 2021
Pure go implementations of jsii interfaces are detected upon being
passed as a parameter to a JavaScript call. When this happens, a
`create` call is sent to the `@jsii/kernel` process with the correct
list of implemented interface FQNs, and all necessary overrides records.
The object is then registered into the new `ObjectStore` for later
reference.

When a callback request interrupts the normal request/response flow, the
`kernel.Client` will handle the callback by getting the appropriate
receiver object, invoking the designated go implementation, and sending
the result to the `@jsii/kernel` process before resuming normal response
handling.

Related to #2048 (partial support)
This was referenced Mar 17, 2021
@iliapolo
Copy link
Contributor

Emm..not sure what happening here with all these linked issues, I definitely did not intend to close this out.

@github-actions
Copy link
Contributor

⚠️COMMENT VISIBILITY WARNING⚠️

Comments on closed issues are hard for our team to see.
If you need more assistance, please either tag a team member or open a new issue that references this one.
If you wish to keep having a conversation with other community members under this issue feel free to do so.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment