C# Class Disco.Services.Plugins.Plugins

Show file Open project: garysharp/Disco

Public Methods

Method Description
CurrentDomain_AssemblyResolve ( object sender, ResolveEventArgs args ) : Assembly
GetPlugin ( Assembly PluginAssembly ) : PluginManifest
GetPlugin ( string PluginId ) : PluginManifest
GetPlugin ( string PluginId, Type ContainsCategoryType ) : PluginManifest
GetPluginFeature ( string PluginFeatureId ) : PluginFeatureManifest
GetPluginFeature ( string PluginFeatureId, Type CategoryType ) : PluginFeatureManifest
GetPluginFeatures ( ) : List
GetPluginFeatures ( Type FeatureCategoryType ) : List
GetPlugins ( ) : List
InitalizePlugins ( DiscoDataContext Database ) : void
PluginFeatureCategoryDisplayName ( Type FeatureCategoryType ) : string
PluginFeatureInstalled ( string PluginFeatureId ) : bool
PluginInstalled ( string PluginId ) : bool
TryGetPlugin ( Assembly PluginAssembly, PluginManifest &PluginManifest ) : bool
TryGetPlugin ( string PluginId, PluginManifest &PluginManifest ) : bool
TryGetPlugin ( string PluginId, Type ContainsCategoryType, PluginManifest &PluginManifest ) : bool
TryGetPluginFeature ( string PluginFeatureId, PluginFeatureManifest &PluginFeatureManifest ) : bool
TryGetPluginFeature ( string PluginFeatureId, Type CategoryType, PluginFeatureManifest &PluginFeatureManifest ) : bool
UpdatePlugin ( DiscoDataContext Database, PluginManifest ExistingManifest, Stream UpdatePluginPackage, PluginLibraryIncompatibility PluginLibraryIncompatibility = null ) : PluginManifest
UpdatePlugin ( DiscoDataContext Database, PluginManifest ExistingManifest, String UpdatePluginPackageFilePath, PluginLibraryIncompatibility PluginLibraryIncompatibility = null ) : PluginManifest

Private Methods

Method Description
AddPlugin ( PluginManifest Manifest ) : void
CurrentDomain_AssemblyResolve_ByPlugin ( PluginManifest pluginManifest, ResolveEventArgs args ) : Assembly
InitializeFeatureCategoryDetails ( IEnumerable pluginManifests ) : string>.Dictionary
ReinitializePluginHostEnvironment ( ) : void
RestartApp ( int DelayMilliseconds ) : void

Method Details

CurrentDomain_AssemblyResolve() public static method

public static CurrentDomain_AssemblyResolve ( object sender, ResolveEventArgs args ) : Assembly
sender object
args System.ResolveEventArgs
return System.Reflection.Assembly

GetPlugin() public static method

public static GetPlugin ( Assembly PluginAssembly ) : PluginManifest
PluginAssembly System.Reflection.Assembly
return PluginManifest

GetPlugin() public static method

public static GetPlugin ( string PluginId ) : PluginManifest
PluginId string
return PluginManifest

GetPlugin() public static method

public static GetPlugin ( string PluginId, Type ContainsCategoryType ) : PluginManifest
PluginId string
ContainsCategoryType System.Type
return PluginManifest

GetPluginFeature() public static method

public static GetPluginFeature ( string PluginFeatureId ) : PluginFeatureManifest
PluginFeatureId string
return PluginFeatureManifest

GetPluginFeature() public static method

public static GetPluginFeature ( string PluginFeatureId, Type CategoryType ) : PluginFeatureManifest
PluginFeatureId string
CategoryType System.Type
return PluginFeatureManifest

GetPluginFeatures() public static method

public static GetPluginFeatures ( ) : List
return List

GetPluginFeatures() public static method

public static GetPluginFeatures ( Type FeatureCategoryType ) : List
FeatureCategoryType System.Type
return List

GetPlugins() public static method

public static GetPlugins ( ) : List
return List

InitalizePlugins() public static method

public static InitalizePlugins ( DiscoDataContext Database ) : void
Database Disco.Data.Repository.DiscoDataContext
return void

PluginFeatureCategoryDisplayName() public static method

public static PluginFeatureCategoryDisplayName ( Type FeatureCategoryType ) : string
FeatureCategoryType System.Type
return string

PluginFeatureInstalled() public static method

public static PluginFeatureInstalled ( string PluginFeatureId ) : bool
PluginFeatureId string
return bool

PluginInstalled() public static method

public static PluginInstalled ( string PluginId ) : bool
PluginId string
return bool

TryGetPlugin() public static method

public static TryGetPlugin ( Assembly PluginAssembly, PluginManifest &PluginManifest ) : bool
PluginAssembly System.Reflection.Assembly
PluginManifest PluginManifest
return bool

TryGetPlugin() public static method

public static TryGetPlugin ( string PluginId, PluginManifest &PluginManifest ) : bool
PluginId string
PluginManifest PluginManifest
return bool

TryGetPlugin() public static method

public static TryGetPlugin ( string PluginId, Type ContainsCategoryType, PluginManifest &PluginManifest ) : bool
PluginId string
ContainsCategoryType System.Type
PluginManifest PluginManifest
return bool

TryGetPluginFeature() public static method

public static TryGetPluginFeature ( string PluginFeatureId, PluginFeatureManifest &PluginFeatureManifest ) : bool
PluginFeatureId string
PluginFeatureManifest PluginFeatureManifest
return bool

TryGetPluginFeature() public static method

public static TryGetPluginFeature ( string PluginFeatureId, Type CategoryType, PluginFeatureManifest &PluginFeatureManifest ) : bool
PluginFeatureId string
CategoryType System.Type
PluginFeatureManifest PluginFeatureManifest
return bool

UpdatePlugin() public static method

public static UpdatePlugin ( DiscoDataContext Database, PluginManifest ExistingManifest, Stream UpdatePluginPackage, PluginLibraryIncompatibility PluginLibraryIncompatibility = null ) : PluginManifest
Database Disco.Data.Repository.DiscoDataContext
ExistingManifest PluginManifest
UpdatePluginPackage Stream
PluginLibraryIncompatibility Disco.Models.Services.Interop.DiscoServices.PluginLibraryIncompatibility
return PluginManifest

UpdatePlugin() public static method

public static UpdatePlugin ( DiscoDataContext Database, PluginManifest ExistingManifest, String UpdatePluginPackageFilePath, PluginLibraryIncompatibility PluginLibraryIncompatibility = null ) : PluginManifest
Database Disco.Data.Repository.DiscoDataContext
ExistingManifest PluginManifest
UpdatePluginPackageFilePath String
PluginLibraryIncompatibility Disco.Models.Services.Interop.DiscoServices.PluginLibraryIncompatibility
return PluginManifest