On Wed, 10 Dec 2025 05:03:47 GMT, Alexey Semenyuk <[email protected]> wrote:

> - Move code shared between jpackage's Executor and jpackage's test lib 
> Executor into `jdk.jpackage.internal.util.CommandOutputControl` class using 
> the latter one as the baseline for the new class; [CommandOutputControl class 
> javadoc](https://alexeysemenyukoracle.github.io/jpackage-javadoc/jdk.jpackage/jdk/jpackage/internal/util/CommandOutputControl.html).
> - Place "execute with retries" logic into 
> `jdk.jpackage.internal.util.RetryExecutor` class and use it from both 
> jpackage and jpackage's test lib. Use `jdk.jpackage.internal.RetryExecutor` 
> class as the baseline.
> - Add `ObjectFactory`, `ExecutorFactory`, and `RetryExecutorFactory` 
> interfaces to the "jdk.jpackage.internal" package. They enable the use of 
> command mocks with jpackage.
> - Add `jdk.jpackage.test.mock` package. It facilitates creating command 
> mocks. Use it to test LibProvidersLookup, LinuxSystemEnvironment, 
> LinuxPackageArch, MacDmgSystemEnvironment, and MacDmgPackager classes.
> 
> Supplementary changes:
>  - Make `jdk.jpackage.internal.SystemEnvironment` and all implementing 
> classes package private

This pull request has now been integrated.

Changeset: 663a0833
Author:    Alexey Semenyuk <[email protected]>
URL:       
https://git.openjdk.org/jdk/commit/663a08331a83c852622b8b11900f12b0dc3dbe82
Stats:     10678 lines in 88 files changed: 8624 ins; 1643 del; 411 mod

8374219: Fix issues in jpackage's Executor class

Reviewed-by: almatvee

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

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

Reply via email to