RFR: 8273104: Refactoring option parser for UL
Ioi Lam
iklam at openjdk.java.net
Wed Sep 1 04:37:46 UTC 2021
On Sun, 29 Aug 2021 03:48:06 GMT, Yasumasa Suenaga <ysuenaga at openjdk.org> wrote:
> As we discussed in PR #4885 and in [its CSR](https://bugs.openjdk.java.net/browse/JDK-8271188), we want to introduce `foldmultilines` to stdout/err UL output. However we have no chance to configure `LogOutput` for stdout/err (`LogStdoutOutput`/`LogStderrOutput`) becasuse they will be instantiated statically in logFileStreamOutput.cpp.
>
> So we need to refactor UL option parser to propagate options to all extended classes of `LogOutput`.
>
> * Move `parse_option()` to `LogOutput` from `LogFileOutput`, then it becames public member.
> * Introduce `set_option()` in `LogOutput` as a pure virtual member to apply options to each log output, then it is implemented in both `LogFileStreamOutput` and `LogFileOutput`.
> * Move both `FoldMultilinesOptionKey` and `_fold_mulilines` in `LogFileStreamOutput` to private member because they are no longer to need to be public.
>
> I want to send PR to introduce `foldmultilines` to stdout/err like https://github.com/YaSuenag/jdk/compare/ul-refactoring...YaSuenag:foldmultilines-for-stdout after this.
This refactoring looks good to me. Thanks for doing it.
-------------
Marked as reviewed by iklam (Reviewer).
PR: https://git.openjdk.java.net/jdk/pull/5293
More information about the hotspot-runtime-dev
mailing list