Airblader opened a new pull request #15896:
URL: https://github.com/apache/flink/pull/15896


   ## What is the purpose of the change
   
   This PR lets the datagen connector properly report its "placeholder" options 
(e.g. `fields.#.kind`) through the `Factory` interface. At the same time, we 
introduce this as a documented pattern and thus reserve `#` as a character for 
it, and ignore required options containing such a character when checking for 
missing required options.
   
   Further work could be done when it comes to the validation, though that 
seems unnecessarily complex.
   
   ## Brief change log
   
   * Document the usage of `#` as a special character on the `Factory` 
interface.
   * Extend the datagen factory to report its placeholder options.
   * Update the validation helper in `FactoryUtil` to respect such options.
   
   ## Verifying this change
   
   This is mostly covered by existing tests, but I have added one case to 
ensure required placeholder properties are not reported as missing.
   
   ## Does this pull request potentially affect one of the following parts:
   
     - Dependencies (does it add or upgrade a dependency): no
     - The public API, i.e., is any changed class annotated with 
`@Public(Evolving)`: no
     - The serializers: no
     - The runtime per-record code paths (performance sensitive): no
     - Anything that affects deployment or recovery: JobManager (and its 
components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: no
     - The S3 file system connector: no
   
   ## Documentation
   
     - Does this pull request introduce a new feature? no
     - If yes, how is the feature documented? JavaDocs
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to