[
https://issues.apache.org/jira/browse/FLINK-11068?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16790614#comment-16790614
]
Timo Walther commented on FLINK-11068:
--------------------------------------
Hi [~hequn8128], sorry for not answering earlier. FLINK-11449 is close to
completion. If there are no bigger objections, it will be merged by the end of
the day.
I reordered some methods and fixed some Table JavaDocs in Table, sorry for the
merge conflicts in advance!
I totally agree that {{OverWindow}} and {{Window}} are confusing in the API. I
also noticed that while working on FLINK-11449. {{Window}} was called
{{GroupWindow}} in the early days and was renamed for the over windows which
were renamed again later.
I would be in favor of fixing this issue now but in a backwards compatible way.
Feel free to open a separate PR for just the ported windows before you open a
PR for the {{Table}} classes.
I would propose the following simplified class structure:
{code}
org.apache.flink.table.api.Tumble
org.apache.flink.table.api.Slide
org.apache.flink.table.api.Session
org.apache.flink.table.api.GroupWindow
@Deprecated
org.apache.flink.table.api.java.Tumble extends api.Tumble
@Deprecated
org.apache.flink.table.api.scala.Tumble extends api.Tumble
...
@Deprecated
org.apache.flink.table.api.Window extends GroupWindow
{code}
What do you think?
Adding the table interface to the planner module is totally fine for now. We
will move the class cluster to {{api-java}} later.
> Convert the API classes *Table, *Window to interfaces
> -----------------------------------------------------
>
> Key: FLINK-11068
> URL: https://issues.apache.org/jira/browse/FLINK-11068
> Project: Flink
> Issue Type: Improvement
> Components: API / Table SQL
> Reporter: Timo Walther
> Assignee: Hequn Cheng
> Priority: Major
>
> A more detailed description can be found in
> [FLIP-32|https://cwiki.apache.org/confluence/display/FLINK/FLIP-32%3A+Restructure+flink-table+for+future+contributions].
> This includes: Table, GroupedTable, WindowedTable, WindowGroupedTable,
> OverWindowedTable, Window, OverWindow
> We can keep the "Table" Scala implementation in a planner module until it has
> been converted to Java.
> We can add a method to the planner later to give us a concrete instance. This
> is one possibility to have a smooth transition period instead of changing all
> classes at once.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)