-
Type:
Improvement
-
Status: Resolved
-
Priority:
P2
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: Not applicable
-
Component/s: cross-language, sdk-go
-
Labels:None
This is a bug for progress on various small usability and UX improvements to the Go SDK implementation of Cross-Language. I don't feel each one individually is important enough for a Jira, but together it's worth recording progress.
Tasks included:
- Adjust user-facing XLang functions so that Sink and Source versions are actually sinks and sources (no outputs and no inputs respectively).
- Rename SourceInputTag and SinkOutputTag since they are no longer used with source/sink versions of the methods.
- Adjust beam/xlang.go so that it doesn't need to import job_management protos. Move the proto creation down into the method the proto is passed to (which is xlangx.Expand).
- Refactor the functions in xlangx/translate.go and how they are used, since right now the functions just get called one after another in sequence.
- Move as many xlang calls out of universal.go as possible. They should be handled as part of the normal sequence of the SDK, such as in proto marshalling and unmarshalling.
- Add wrappers around xlang calls in existing examples, to both give a cleaner interface and provide an example of how xlang transforms should be implemented.