Show / Hide Table of Contents

Class PluginsAppRuntime

The Plugins application runtime.

Inheritance
System.Object
System.Dynamic.DynamicObject
ExpandoBase
Expando
AppRuntimeBase
DynamicAppRuntime
PluginsAppRuntime
Implements
IAppRuntime
IExpando
System.Dynamic.IDynamicMetaObjectProvider
IIndexable
ILoggable
Inherited Members
DynamicAppRuntime.ComputeAppAssemblies(Func<AssemblyName, Boolean>)
DynamicAppRuntime.AddAdditionalAssemblies(IList<Assembly>, Func<AssemblyName, Boolean>)
DynamicAppRuntime.EnumerateFiles(String, String)
DynamicAppRuntime.GetFileName(Assembly)
DynamicAppRuntime.GetAssemblyNameFromAssemblyFileName(String)
AppRuntimeBase.AppIdKey
AppRuntimeBase.AppInstanceIdKey
AppRuntimeBase.AppVersionKey
AppRuntimeBase.AssemblyFileSearchPattern
AppRuntimeBase.AssemblyFileExtension
AppRuntimeBase.AssemblyLoader
AppRuntimeBase.Logger
AppRuntimeBase.AssemblyFilter
AppRuntimeBase.GetAppLocation()
AppRuntimeBase.GetAppAssemblies(Func<AssemblyName, Boolean>)
AppRuntimeBase.GetHostAddress()
AppRuntimeBase.GetHostName()
AppRuntimeBase.GetLogger()
AppRuntimeBase.InitializeAppProperties(Assembly, String, String)
AppRuntimeBase.GetLoadedAssemblies()
AppRuntimeBase.GetReferencedAssemblies(Assembly)
ExpandoBase.Item[String]
ExpandoBase.GetDynamicMemberNames()
ExpandoBase.HasDynamicMember(String)
ExpandoBase.TryGetMember(GetMemberBinder, Object)
ExpandoBase.TrySetMember(SetMemberBinder, Object)
ExpandoBase.TryInvokeMember(InvokeMemberBinder, Object[], Object)
ExpandoBase.ToDictionary(Func<String, String>, Func<Object, Object>)
ExpandoBase.GetInnerObjectTypeInfo()
ExpandoBase.GetThisTypeInfo()
ExpandoBase.TryGetValue(String, Object)
ExpandoBase.TrySetValue(String, Object)
System.Dynamic.DynamicObject.GetMetaObject(System.Linq.Expressions.Expression)
System.Dynamic.DynamicObject.TryBinaryOperation(System.Dynamic.BinaryOperationBinder, System.Object, System.Object)
System.Dynamic.DynamicObject.TryConvert(System.Dynamic.ConvertBinder, System.Object)
System.Dynamic.DynamicObject.TryCreateInstance(System.Dynamic.CreateInstanceBinder, System.Object[], System.Object)
System.Dynamic.DynamicObject.TryDeleteIndex(System.Dynamic.DeleteIndexBinder, System.Object[])
System.Dynamic.DynamicObject.TryDeleteMember(System.Dynamic.DeleteMemberBinder)
System.Dynamic.DynamicObject.TryGetIndex(System.Dynamic.GetIndexBinder, System.Object[], System.Object)
System.Dynamic.DynamicObject.TryInvoke(System.Dynamic.InvokeBinder, System.Object[], System.Object)
System.Dynamic.DynamicObject.TrySetIndex(System.Dynamic.SetIndexBinder, System.Object[], System.Object)
System.Dynamic.DynamicObject.TryUnaryOperation(System.Dynamic.UnaryOperationBinder, System.Object)
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: Kephas.Plugins.Application
Assembly: Kephas.Plugins.dll
Syntax
public class PluginsAppRuntime : DynamicAppRuntime, IAppRuntime, IExpando, IDynamicMetaObjectProvider, IIndexable, ILoggable

Constructors

| Improve this Doc View Source

PluginsAppRuntime(IAssemblyLoader, ILogManager, Func<AssemblyName, Boolean>, String, String, String, IExpando, Nullable<Boolean>, String, String)

Initializes a new instance of the PluginsAppRuntime class.

Declaration
public PluginsAppRuntime(IAssemblyLoader assemblyLoader = null, ILogManager logManager = null, Func<AssemblyName, bool> assemblyFilter = null, string appLocation = null, string appId = null, string appVersion = null, IExpando appArgs = null, bool? enablePlugins = default(bool? ), string pluginsFolder = null, string targetFramework = null)
Parameters
Type Name Description
IAssemblyLoader assemblyLoader

Optional. The assembly loader.

ILogManager logManager

Optional. The log manager.

System.Func<System.Reflection.AssemblyName, System.Boolean> assemblyFilter

Optional. A filter for loaded assemblies.

System.String appLocation

Optional. The application location. If not specified, the current application location is considered.

System.String appId

Optional. Identifier for the application.

System.String appVersion

Optional. The application version.

IExpando appArgs

Optional. The application arguments.

System.Nullable<System.Boolean> enablePlugins

Optional. True to enable, false to disable the plugins.

System.String pluginsFolder

Optional. Pathname of the plugins folder.

System.String targetFramework

Optional. The target framework.

Properties

| Improve this Doc View Source

EnablePlugins

Gets a value indicating whether the plugins are enabled.

Declaration
public bool EnablePlugins { get; }
Property Value
Type Description
System.Boolean

True to enable plugins, false to disable them.

| Improve this Doc View Source

PluginsFolder

Gets the pathname of the plugins folder.

Declaration
public string PluginsFolder { get; }
Property Value
Type Description
System.String

The pathname of the plugins folder.

| Improve this Doc View Source

TargetFramework

Gets the target framework.

Declaration
public string TargetFramework { get; }
Property Value
Type Description
System.String

The target framework.

Methods

| Improve this Doc View Source

ComputeEnablePlugins(Nullable<Boolean>, IExpando)

Calculates a value indicating whether to enable plugins.

Declaration
protected virtual bool ComputeEnablePlugins(bool? enablePlugins, IExpando appArgs)
Parameters
Type Name Description
System.Nullable<System.Boolean> enablePlugins

True to enable, false to disable the plugins.

IExpando appArgs

The application arguments.

Returns
Type Description
System.Boolean

True to enable plugins, false to disable them.

| Improve this Doc View Source

ComputePluginsFolder(String, IExpando)

Calculates the plugins folder.

Declaration
protected virtual string ComputePluginsFolder(string rawPluginsFolder, IExpando appArgs)
Parameters
Type Name Description
System.String rawPluginsFolder

Pathname of the raw plugins folder.

IExpando appArgs

The application arguments.

Returns
Type Description
System.String

The calculated plugins folder.

| Improve this Doc View Source

ComputeTargetFramework(String, IExpando)

Calculates the target framework.

Declaration
protected virtual string ComputeTargetFramework(string targetFramework, IExpando appArgs)
Parameters
Type Name Description
System.String targetFramework

The target framework.

IExpando appArgs

The application arguments.

Returns
Type Description
System.String

The calculated target framework.

| Improve this Doc View Source

EnumeratePluginLocations()

Enumerates the locations for plugins.

Declaration
public virtual IEnumerable<string> EnumeratePluginLocations()
Returns
Type Description
System.Collections.Generic.IEnumerable<System.String>

The locations for plugins.

| Improve this Doc View Source

GetAppBinDirectories()

Gets the application bin folders from where application is loaded.

Declaration
public override IEnumerable<string> GetAppBinDirectories()
Returns
Type Description
System.Collections.Generic.IEnumerable<System.String>

An enumerator that allows foreach to be used to process the application bin folders in this collection.

Overrides
AppRuntimeBase.GetAppBinDirectories()
| Improve this Doc View Source

GetPluginState(String, String)

Gets the plugin state.

Declaration
protected virtual PluginState GetPluginState(string pluginName, string pluginLocation)
Parameters
Type Name Description
System.String pluginName

Name of the plugin.

System.String pluginLocation

The plugin location.

Returns
Type Description
PluginState

The plugin state.

Implements

IAppRuntime
IExpando
System.Dynamic.IDynamicMetaObjectProvider
IIndexable
ILoggable

Extension Methods

AppRuntimeExtensions.GetAppInfo(IAppRuntime)
DynamicObjectExtensions.SetPropertyValue(Object, String, Object)
DynamicObjectExtensions.TrySetPropertyValue(Object, String, Object)
DynamicObjectExtensions.GetPropertyValue(Object, String)
DynamicObjectExtensions.TryGetPropertyValue(Object, String, out Object)
DynamicObjectExtensions.GetRuntimeTypeInfo(Object)
DynamicObjectExtensions.ToDynamic(Object)
DynamicObjectExtensions.ToExpando(Object)
BehaviorValue.ToBehaviorValue<TValue>(TValue)
CollectionExtensions.AddRange<T, TItem>(T, IEnumerable<TItem>)
LoggingExtensions.GetLogger(Object, IContext)
TypeExtensions.GetAbstractType(Object)
TypeExtensions.GetAbstractTypeInfo(Object)
ReflectionHelper.GetTypeInfo(Object)
ApplicationExtensions.GetFeatures(IAppRuntime)
ApplicationExtensions.ContainsFeature(IAppRuntime, String)
EntityEntryExtensions.TryGetAttachedEntityEntry(Object)
  • Improve this Doc
  • View Source
Back to top Generated by DocFX