druid
druid copied to clipboard
Refactor WindowOperatorQueryKit to use WindowStage class for representing different window stages
Description
This PR refactors WindowOperatorQueryKit
to use a new class WindowStage
to represent the different window stages. Previously we were dealing with List<OperatorFactory>
or List<List<OperatorFactory>>
, and doing a bunch of instanceof
checks, so this refactor makes it much more readable and cleaner.
This PR does not have any functional change.
This PR has:
- [x] been self-reviewed.
- [ ] added documentation for new or modified features or behaviors.
- [ ] a release note entry in the PR description.
- [ ] added Javadocs for most classes and all non-trivial methods. Linked related entities via Javadoc links.
- [ ] added or updated version, license, or notice information in licenses.yaml
- [ ] added comments explaining the "why" and the intent of the code wherever would not be obvious for an unfamiliar reader.
- [ ] added unit tests or modified existing tests to cover new code paths, ensuring the threshold for code coverage is met.
- [ ] added integration tests.
- [ ] been tested in a test Druid cluster.