Implement controlled app launch (T-401)
This commit is contained in:
@@ -1,14 +1,28 @@
|
||||
package windows
|
||||
|
||||
import (
|
||||
"errors"
|
||||
|
||||
"softbox.local/core/application/launch"
|
||||
)
|
||||
|
||||
// Edition identifies the application build channel shown by the UI.
|
||||
type Edition string
|
||||
|
||||
const EditionLegacy Edition = "Legacy"
|
||||
|
||||
// ErrUnsupported reports that a Windows-only capability is unavailable on the
|
||||
// current host. Callers must treat it as an unknown state, never as a stopped
|
||||
// process or a compatible system.
|
||||
var ErrUnsupported = errors.New("windows platform capability is unsupported on this host")
|
||||
|
||||
// Platform is the minimal boundary for target-specific capabilities.
|
||||
type Platform interface {
|
||||
OS() string
|
||||
Edition() Edition
|
||||
IsCompatible(minOS string) (bool, error)
|
||||
IsRunning(appID, entrypoint string) (bool, error)
|
||||
Start(command launch.Command) (int, error)
|
||||
}
|
||||
|
||||
// New returns the platform implementation selected by build tags.
|
||||
|
||||
Reference in New Issue
Block a user