Github user twalthr commented on the issue: https://github.com/apache/flink/pull/2298 @StephanEwen A user can also call `CsvInputFormat.nextRecord()` because it is public, but this was never a problem. If we want to restrict visibility of `TableSource` interface methods, we have to convert the interfaces to classes and provide 3 class for batch, stream, batch&stream. Also not very nice. In general, the Scala classes hide the Java API streams and environments within the Table API. But in this case the user wants to implement a custom TableSource and since the Table API is internally using the Java API I think it is ok, if Java API and not Scala API is used for that.
--- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---