Claudenw commented on PR #195:
URL: https://github.com/apache/creadur-rat/pull/195#issuecomment-1890875837
@ottlinger thx for the quick review
I'll make the change to the @TempDir annotation -- I think there are 2 files
where it is needed.
I removed the API module because it consisted of a) class files that were
not being used in the code but that were misleading in name; and more
importantly b) because there were a number of test cases that would have been
converted to Junit5 only to be removed again later.
The harmonization is not necessarily the use of a single API module but
rather that the options in each of the UIs should be similarly constructed
(same basic phrasing) not have 2 UIs where one says
"--enable-default-licenses" (default off) and the other says
"--disable-default-licenses" (default on). Also there are options that have
been added to one UI that are general in nature (i.e. not part of managing the
specific platform the UI is on) and are not available in the other UIs.
I will remove the commented out code. I should have before I submitted this
pull request, but skipped it in favor of getting this code change infront of
more eyes quickly.
I also have to make a pass to update javadocs.
@jbonofre Most of the changes in this request are the migration to Junit 5.
The significant changes are the creation of the classes in the o.a.r..utils
directory, the addition of methods to set the associated properties in
ReportConfiguration along with the tests for those classes and changes.
The request was to warn on duplication so the solution submitted does the
following:
- Creates a ReportingSet class that is a SortedSet implementation (wrapping
and delegating to a SortedSet). it intercepts the calls to `add` and `addAll`
to determine if the new elements are already in the set and take an action.
- If logging is enabled (not set to None on the very thing logging
wrapper `Log`) write a message about the collision to the log at the specific
level.
- If the internal action (ReportingSet.Option) is set to `IGNORE` the
change is ignored, `OVERWRITE` the old entry is replaced, `FAIL` an exception
is thrown.
Finally the ReportingSet has an instance variable called `duplicateFmt` that
is a `Function<T,String>` that produces the information to display in the
message.
The change to ReportConfiguration are to use ReportingSet to contain the
Licenses and LicenseFamilies, and supporting methods to configure (as noted
above).
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]