Click or drag to resize

DefaultBenchManager Class

This is the default implementation of a IBenchManager.
Inheritance Hierarchy
SystemObject
  Mastersign.BenchDefaultBenchManager

Namespace:  Mastersign.Bench
Assembly:  BenchLib (in BenchLib.dll) Version: 0.22.0.0 (0.22.0.0)
Syntax
public class DefaultBenchManager : IBenchManager, 
	IDisposable

The DefaultBenchManager type exposes the following members.

Constructors
  NameDescription
Public methodDefaultBenchManager
Initializes a new instance of DefaultBenchManager with a SimpleExecutionHost and a ConsoleUserInterface.
Top
Properties
  NameDescription
Public propertyConfig
The configuration of the Bench system.
Public propertyDownloader
The downloader for downloading app resources.
Public propertyEnv
The environment variables of the Bench system.
Public propertyIsDisposed
Returns a value, indicating of this instance was already disposed.
Public propertyProcessExecutionHost
The host for starting and running Windows processes.
Public propertyUI
The user interface to communicate with the user.
Public propertyVerbose
A flag, controlling if non error messages should be displayed to the user. If it is set to true, all messages are displayed; otherwise only error messages are displayed.
Top
Methods
  NameDescription
Public methodAutoSetup
Runs a full automatic setup, including app resource download, app installation of all active apps and setup of the environment.
Public methodCleanUpAppResources
Deletes all obsolete app resources from the cache.
Public methodCloneBenchEnvironment
Creates a clone of a given Bench environment, including a specific selection of directories and files.
Public methodDeleteAppResource
Deletes the cached resource of the specified app.
Public methodDeleteAppResources
Deletes all cached app resources.
Public methodDispose
Disposes all disposable child objects.
Public methodDownloadAppResource
Downloads the resource for the specified app, in case it is not already cached.
Public methodDownloadAppResources
Downloads the app resources for all active apps, in case they are not already cached.
Public methodDownloadBenchUpdate
Downloads the latest Bench binary and bootstrap file.
Public methodEquals (Inherited from Object.)
Public methodExportBenchEnvironment
Creates a transfer package of a given Bench environment, including a specific selection of directories and files.
Protected methodFinalize (Inherited from Object.)
Public methodGetHashCode (Inherited from Object.)
Public methodGetType (Inherited from Object.)
Public methodInstallApp
Installs the specified app, in case it is not already installed. This also downloads missing app resources.
Public methodInstallApps
Installs all active apps, in case they are not already installed. This also downloads missing app resources.
Public methodLoadAppLibraries
Loads the app libraries, configured in the configuration.
Protected methodMemberwiseClone (Inherited from Object.)
Public methodReinstallApp
Uninstalls the specified app, and then installs it again.
Public methodReinstallApps
Uninstalls all installed apps, and then installs all active apps again.
Public methodSetupRequiredApps
Sets up only the apps required by Bench.
Public methodToString (Inherited from Object.)
Public methodUninstallApp
Uninstalls the specified app, in case it is installed.
Public methodUninstallApps
Uninstalls all installed apps.
Public methodUpdateEnvironment
Sets up the environment, including the env.cmd, the launcher scripts and launcher shortcuts. It also runs all custom environment scripts.
Public methodUpgradeApp
Upgrades the specified app, if it can be upgraded.
Public methodUpgradeApps
Upgrades all active apps, which can be upgraded.
Top
Remarks
This implementation currently also acts as a facade for BenchTasks to be used by auto\lib\Setup-Bench.ps1, which is certainly an indicator for a bad design decision, and should be refactored.
See Also