Show / Hide Table of Contents

Class AppRuntimeBase

An application application runtime providing only assemblies loaded by the runtime.

Inheritance
System.Object
System.Dynamic.DynamicObject
ExpandoBase
Expando
AppRuntimeBase
DynamicAppRuntime
StaticAppRuntime
Implements
IAppRuntime
IExpando
System.Dynamic.IDynamicMetaObjectProvider
IIndexable
ILoggable
Inherited Members
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.Application
Assembly: Kephas.Core.dll
Syntax
public abstract class AppRuntimeBase : Expando, IAppRuntime, IExpando, IDynamicMetaObjectProvider, IIndexable, ILoggable

Constructors

| Improve this Doc View Source

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

Initializes a new instance of the AppRuntimeBase class.

Declaration
protected AppRuntimeBase(IAssemblyLoader assemblyLoader = null, ILogManager logManager = null, Func<AssemblyName, bool> defaultAssemblyFilter = null, string appLocation = null, string appId = null, string appVersion = null, IExpando appArgs = null)
Parameters
Type Name Description
IAssemblyLoader assemblyLoader

Optional. The assembly loader.

ILogManager logManager

Optional. The log manager.

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

Optional. A default filter applied when loading 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.

Fields

| Improve this Doc View Source

AppIdKey

The application identifier key.

Declaration
public const string AppIdKey = "AppId"
Field Value
Type Description
System.String
| Improve this Doc View Source

AppInstanceIdKey

The application instance identifier key.

Declaration
public const string AppInstanceIdKey = "AppInstanceId"
Field Value
Type Description
System.String
| Improve this Doc View Source

AppVersionKey

The application version key.

Declaration
public const string AppVersionKey = "AppVersion"
Field Value
Type Description
System.String
| Improve this Doc View Source

AssemblyFileExtension

The assembly file extension.

Declaration
protected const string AssemblyFileExtension = ".dll"
Field Value
Type Description
System.String
| Improve this Doc View Source

AssemblyFileSearchPattern

A pattern specifying the assembly file search.

Declaration
protected const string AssemblyFileSearchPattern = "*.dll"
Field Value
Type Description
System.String

Properties

| Improve this Doc View Source

AssemblyFilter

Gets the assembly filter.

Declaration
protected Func<AssemblyName, bool> AssemblyFilter { get; }
Property Value
Type Description
System.Func<System.Reflection.AssemblyName, System.Boolean>

The assembly filter.

| Improve this Doc View Source

AssemblyLoader

Gets the assembly loader.

Declaration
public IAssemblyLoader AssemblyLoader { get; }
Property Value
Type Description
IAssemblyLoader

The assembly loader.

| Improve this Doc View Source

Logger

Gets or sets the logger.

Declaration
public ILogger Logger { get; protected set; }
Property Value
Type Description
ILogger

The logger.

Methods

| Improve this Doc View Source

ComputeAppAssemblies(Func<AssemblyName, Boolean>)

Computes the application assemblies.

Declaration
protected virtual IEnumerable<Assembly> ComputeAppAssemblies(Func<AssemblyName, bool> assemblyFilter)
Parameters
Type Name Description
System.Func<System.Reflection.AssemblyName, System.Boolean> assemblyFilter

A filter for the assemblies.

Returns
Type Description
System.Collections.Generic.IEnumerable<System.Reflection.Assembly>

An enumeration of application assemblies.

| Improve this Doc View Source

GetAppAssemblies(Func<AssemblyName, Boolean>)

Gets the application assemblies.

Declaration
public virtual IEnumerable<Assembly> GetAppAssemblies(Func<AssemblyName, bool> assemblyFilter = null)
Parameters
Type Name Description
System.Func<System.Reflection.AssemblyName, System.Boolean> assemblyFilter

Optional. A filter for the assemblies.

Returns
Type Description
System.Collections.Generic.IEnumerable<System.Reflection.Assembly>

An enumeration of application assemblies.

| Improve this Doc View Source

GetAppBinDirectories()

Gets the application bin folders from where application is loaded.

Declaration
public virtual 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.

| Improve this Doc View Source

GetAppLocation()

Gets the application location (directory where the application lies).

Declaration
public virtual string GetAppLocation()
Returns
Type Description
System.String

A path indicating the application location.

| Improve this Doc View Source

GetHostAddress()

Gets host address.

Declaration
public virtual IPAddress GetHostAddress()
Returns
Type Description
System.Net.IPAddress

The host address.

| Improve this Doc View Source

GetHostName()

Gets the name of the host where the application process runs.

Declaration
public virtual string GetHostName()
Returns
Type Description
System.String

The host name.

| Improve this Doc View Source

GetLoadedAssemblies()

Gets the loaded assemblies.

Declaration
protected virtual IList<Assembly> GetLoadedAssemblies()
Returns
Type Description
System.Collections.Generic.IList<System.Reflection.Assembly>

The loaded assemblies.

| Improve this Doc View Source

GetLogger()

Gets the logger.

Declaration
protected virtual ILogger GetLogger()
Returns
Type Description
ILogger

The logger.

| Improve this Doc View Source

GetReferencedAssemblies(Assembly)

Gets the referenced assemblies.

Declaration
protected virtual AssemblyName[] GetReferencedAssemblies(Assembly assembly)
Parameters
Type Name Description
System.Reflection.Assembly assembly

The assembly.

Returns
Type Description
System.Reflection.AssemblyName[]

An array of assembly name.

| Improve this Doc View Source

InitializeAppProperties(Assembly, String, String)

Initializes the application properties: AppId, AppInstanceId, and AppVersion.

Declaration
protected virtual void InitializeAppProperties(Assembly entryAssembly, string appId, string appVersion)
Parameters
Type Name Description
System.Reflection.Assembly entryAssembly

The entry assembly.

System.String appId

Identifier for the application.

System.String appVersion

The application version.

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)
AppRuntimeExtensions.GetAppId(IAppRuntime)
AppRuntimeExtensions.GetAppVersion(IAppRuntime)
AppRuntimeExtensions.GetAppInstanceId(IAppRuntime)
BehaviorValue.ToBehaviorValue<TValue>(TValue)
CollectionExtensions.AddRange<T, TItem>(T, IEnumerable<TItem>)
ExpandoExtensions.Merge<T>(T, Object)
ExpandoExtensions.GetLaxValue<T>(IIndexable, String, T)
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