OpenTAP 9.25
API Reference
Public Member Functions | Static Public Member Functions | Protected Member Functions | Properties | List of all members
OpenTap.Package.LockingPackageAction Class Referenceabstract

Base class for ICliActions that use a mutex to lock the Target directory for the duration of the command. More...

Inheritance diagram for OpenTap.Package.LockingPackageAction:
OpenTap.Package.PackageAction OpenTap.Cli.ICliAction OpenTap.ITapPlugin OpenTap.Package.CacheAction OpenTap.Package.IsolatedPackageAction

Public Member Functions

override int Execute (CancellationToken cancellationToken)
 Executes this the action. Derived types should override LockedExecute instead of this. More...
 
- Public Member Functions inherited from OpenTap.Package.PackageAction
delegate void ProgressUpdateDelegate (int progressPercent, string message)
 A delegate used by ProgressUpdate More...
 
delegate void ErrorDelegate (Exception ex)
 A delegate type used by the Error event. More...
 

Static Public Member Functions

static Mutex GetMutex (string target)
 Get the named mutex used to lock the specified OpenTAP installation directory while it is being changed. More...
 
static bool RunIsolated (string application=null, string target=null)
 Only here for compatibility. Use IsolatedPackageAction instead of calling this.
 

Protected Member Functions

abstract int LockedExecute (CancellationToken cancellationToken)
 The code to be executed by the action while the Target directory is locked. More...
 
- Protected Member Functions inherited from OpenTap.Package.PackageAction
void RaiseError (Exception ex)
 Call this to raise the Error event. More...
 
void RaiseProgressUpdate (int progressPercent, string message)
 Call this to raise the ProgressUpdate event. More...
 

Properties

bool Unlocked [getset]
 Unlockes the package action to allow multiple running at the same time.
 
string Target [getset]
 The location to apply the command to. The default is the location of OpenTap.PackageManager.exe
 

Additional Inherited Members

- Static Protected Attributes inherited from OpenTap.Package.PackageAction
static TraceSource log = OpenTap.Log.CreateSource("PackageAction")
 Log source for PackageAction plugins.
 
- Events inherited from OpenTap.Package.PackageAction
ProgressUpdateDelegate ProgressUpdate
 Called by the action to indicate how far it has gotten. Will usually be called with a progressPercent of 100 to indicate that it is done.
 
ErrorDelegate Error
 Called when a critical error happens.
 

Detailed Description

Base class for ICliActions that use a mutex to lock the Target directory for the duration of the command.

Member Function Documentation

◆ Execute()

override int OpenTap.Package.LockingPackageAction.Execute ( CancellationToken  cancellationToken)
inlinevirtual

Executes this the action. Derived types should override LockedExecute instead of this.

Returns
Return 0 to indicate success. Otherwise return a custom errorcode that will be set as the exitcode from the CLI.

Implements OpenTap.Package.PackageAction.

◆ GetMutex()

static Mutex OpenTap.Package.LockingPackageAction.GetMutex ( string  target)
inlinestatic

Get the named mutex used to lock the specified OpenTAP installation directory while it is being changed.

Parameters
targetThe OpenTAP installation directory
Returns

◆ LockedExecute()

abstract int OpenTap.Package.LockingPackageAction.LockedExecute ( CancellationToken  cancellationToken)
protectedpure virtual

The code to be executed by the action while the Target directory is locked.

Returns
Return 0 to indicate success. Otherwise return a custom errorcode that will be set as the exitcode from the CLI.

Implemented in OpenTap.Package.CacheAction.

OpenTAP 9.25 API built Tue Aug 6 2024 07:49:25