On Mon, 4 Jul 2022 23:38:08 GMT, Alex Kasko <aka...@openjdk.org> wrote:

>> jpackage implementation of file association on Windows currently passes a 
>> selected filename as an only argument to associated executable.
>> 
>> It is proposed to introduce additional option in file association property 
>> file to allow optionally support additional arguments using `%*` batch 
>> wildcard.
>> 
>> Note, current implementation, while fully functional, is only a **DRAFT** 
>> one, it is not ready for integration in this form. I would appreciate any 
>> guidance on the following points:
>> 
>>  - option naming inside a properties file, currently `pass-all-args` is used
>>  - option naming in a bundler parameter implementation, it is not clear if 
>> it should introduce a new group of "file association windows specific 
>> options" next to the existing "file association mac specific options" group
>>  - test organization to cover the new option: currently it is included 
>> inside `FileAssociationTest` and piggybacks on the existing (and unrelated) 
>> `includeDescription` parameter; it is not clear whether it should be done in 
>> a separate test and whether to include runs for every parameter combination
>>  - test run implementation: currently arguments are checked when a file with 
>> associated extension is invoked from command line; it is not clear whether 
>> it would be more appropriate instead to create a desktop shortcut with the 
>> same command as a target and to invoke it with `java.awt.Desktop`
>> 
>> Also please note, that full install/uninstall run is currently enabled in 
>> `FileAssociationTest`, it is intended to be used only in a draft code during 
>> the development and to be removed (to use the same "install or unpack" logic 
>> as other tests) in a final version.
>> 
>> Testing:
>>  
>> - [x] test to cover new logic is included
>> - [x] ran jtreg:jdk/tools/jpackage with no new failures
>
> Alex Kasko has updated the pull request with a new target base due to a merge 
> or a rebase. The pull request now contains three commits:
> 
>  - enable passing args, add test coverage
>  - Added input params validation
>  - Proposed test changes to make FA testing of jpackage more flexible

I've rebased the changes on top of PR 9331 and rebased the result on top of 
recent master (to have JDK-8288961 to be able to run MSI test). I think the 
patch if ready for review now.

Note on non-ASCII arguments support: I've found that Windows system locale 
needs to be changed to support specific language. Checked manually that such 
args are passed successfully with both command-line and LNK shortcut arguments. 
Left a note on this in test.

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

PR: https://git.openjdk.org/jdk/pull/9224

Reply via email to