On Thu, 15 Jan 2026 01:22:08 GMT, Alexey Semenyuk <[email protected]> wrote:

>> Alexander Matveev has updated the pull request incrementally with one 
>> additional commit since the last revision:
>> 
>>   8374215: [macos] Clean "lic_template.plist" [v3]
>
> src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/MacDmgLicense.java line 
> 43:
> 
>> 41: final class MacDmgLicense {
>> 42: 
>> 43:     public static void prepareLicense(MacDmgPackage pkg, BuildEnv env,
> 
> It is hard to tell from the method's signature what its inputs and outputs 
> are. It is only clear that it somehow prepares the license. Sometimes it does 
> not, but this becomes clear only after reading the code.
> 
> The `env` parameter is only used to create an `OveridableResource` instance.
> 
> That said, I suggest changing the signature to:
> 
> public static void prepareLicense(Path inputLicenseFile, Path 
> outputLicenseFile) throws IOException;
> 
> 
> And in the body replace 
> 
> env.createResource(DEFAULT_LICENSE_PLIST)
> ``` 
> with 
> 
> new OverridableResource(DEFAULT_LICENSE_PLIST, ResourceLocator.class)
> 
> 
> If the package is configured without the license, 
> `MacDmgLicense.prepareLicense()` should not be called.

How about: `public static void prepareLicensePListFile(Path licenseFile, Path 
licensePListFile) throws IOException;`
It creates PList file from input license. Also, I will rename `licenseFile()` 
to `licensePListFile()`, otherwise proposed call will look like 
`MacDmgLicense.prepareLicense(pkg.licenseFile(), licenseFile());` vs 
`MacDmgLicense.prepareLicensePListFile(pkg.licenseFile(), licensePListFile());`.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/28959#discussion_r2692666167

Reply via email to