ModularVaultApplicationBase Class

Common base class for application that was to use separate modules in the implementation.

Definition

Namespace: MFiles.VAF
Assembly: MFiles.VAF (in MFiles.VAF.dll) Version: 24.1.706.1
C#
public class ModularVaultApplicationBase : VaultApplicationBase, 
	IModuleManager, IVaultApplication
Inheritance
Object    MethodSource    VaultApplicationBase    ModularVaultApplicationBase
Implements
IVaultApplication, IModuleManager

Constructors

Properties

AdminConfigurationsManager Admin Configuration Manager to handle the wire-up between M-Files Admin and Dashboard Nodes.
(Inherited from VaultApplicationBase)
ApplicationDefinition The application definition information.
(Inherited from VaultApplicationBase)
ApplicationRunningStatus Returns the application running status. Indicates if the application is starting, stopping or running normally.
(Inherited from VaultApplicationBase)
AuthenticationData The optional authentication data for the application.
(Inherited from VaultApplicationBase)
AvailabilityGroupStatusWriter Multi-server availability group status reporter.
(Inherited from VaultApplicationBase)
BackgroundOperations A manager for creating background operations.
(Inherited from VaultApplicationBase)
ConfigurationStorage The configuration storage object.
(Inherited from VaultApplicationBase)
EventSourceIdentifier Returns the vault application event source identifier that is used when logging to Windows event log.
(Inherited from VaultApplicationBase)
ExecutionTracer The execution tracer object.
(Inherited from VaultApplicationBase)
InitialLoadComplete True after the Initialize() method has been executed.
(Inherited from VaultApplicationBase)
KillProcessOnStartOperationsException
(Inherited from VaultApplicationBase)
License The optional license of the application. Set this in inherited class constructor to get license.
(Inherited from VaultApplicationBase)
LogContextHelper
(Inherited from VaultApplicationBase)
MetadataStructureValidationResult The results from the metadata structure validation.
(Inherited from VaultApplicationBase)
MetadataStructureValidator The metadata structure validator object.
(Inherited from VaultApplicationBase)
ModuleLoader The module loader object.
ModulesInError  
PermanentVault The permanent vault object, runs as MFServer user.
(Inherited from VaultApplicationBase)
TaskManager
(Inherited from VaultApplicationBase)
TaskQueueManager  
TaskQueueResolver
(Inherited from VaultApplicationBase)
ValidationRecursionLimit The number of levels the valdiator is allowed to traverse before throwing an exception. This value protects against infinite recursion loops, but may need to be increased for applications with deeply nested configuration settings. Note: Using some built-in types may significantly increase the configuration depth, like SearchConditionsJA.
(Inherited from VaultApplicationBase)

Methods

AddVaultExtensionMethod Adds a vault extension method that does not have a separate event handler proxy.
(Inherited from VaultApplicationBase)
AllowLoadOfModule Return whether this module should be loaded or not.
AnonymousExtensionMethodsSupported
(Inherited from VaultApplicationBase)
AssertApplicationInStableState Throws an exception if the application is in a state where it cannot properly handle server events.
(Inherited from VaultApplicationBase)
ClearAutomaticallyGeneratedScripts Clears the automatically generated scripts that are no longer used from the metadata structure (from property definitions and workflow states).
(Inherited from VaultApplicationBase)
CollectUnusedHandlers Method for collecting extension method names which are unused.
(Inherited from VaultApplicationBase)
ConvertToLocalVault Overridable factory method for local vault objects. Converts the vault object to locally used and possibly stored vault object. This method allows the implementations to improve the performance by using in-process vault. Overriding functionality may e.g. implement local caching features to the vault.
(Inherited from VaultApplicationBase)
CreateAdminConfigurationManager Overridable factory method to create the admin configuration manager object.
(Inherited from VaultApplicationBase)
CreateConfigurationStorage Overridable factory method to create the configuration storage object.
(Inherited from VaultApplicationBase)
CreateEventHandlerMethodInfo Overridable factory method to create the event handler method info.
(Inherited from VaultApplicationBase)
CreateExecutionTracer Overridable factory method to create the execution tracer object.
(Inherited from VaultApplicationBase)
CreateMetadataStructureCacheEventSink Creates the metadata structure cache event sink that can be used to update the cache based on events. Currently only updating the users, user groups and logins is supported. - The default setting is to disable all event driven caches, so we return a null value. - To enable event driven caches, override to return a `new MetadataStructureCacheEventSink( cache );`
(Inherited from VaultApplicationBase)
CreateMetadataStructureValidator Overridable factory method to create the metadata structure validator component.
(Overrides VaultApplicationBaseCreateMetadataStructureValidator)
CreateModuleLoader Overridable factory method to create the module loader component.
CreatePropertyMethodInfo Overridable factory method to create the property method info.
(Inherited from VaultApplicationBase)
CreateStateMethodInfo Overridable factory method to create the state method info.
(Inherited from VaultApplicationBase)
CreateStateTransitionMethodInfo Overridable factory method to create the state transition method info.
(Inherited from VaultApplicationBase)
CreateTaskManager
(Inherited from VaultApplicationBase)
CreateVaultAnonymousExtensionMethodInfo
(Inherited from VaultApplicationBase)
CreateVaultExtensionMethodInfo Overridable factory method to create the vault extension method info.
(Inherited from VaultApplicationBase)
EvaluateAutomaticStateTransitionTrigger Invokes the registered automatic state transition condition handlers.
(Inherited from VaultApplicationBase)
EvaluateStatePostConditions Invokes all the state post-condition evaluation handlers.
(Inherited from VaultApplicationBase)
EvaluateStatePreConditions Invokes all the state precondition evaluation handlers.
(Inherited from VaultApplicationBase)
EventHandlerBelongsToThisVaultApplication Check if the event handler belongs to this application.
(Inherited from VaultApplicationBase)
ExecuteAnonymousVaultExtensionMethod
(Inherited from VaultApplicationBase)
ExecuteVaultExtensionMethod Executes the defined vault extension method.
(Inherited from VaultApplicationBase)
GetApplicationLicenseDetails Called by platform to request the license details text, either currently loaded or the given license.
(Inherited from VaultApplicationBase)
GetApplicationLicenseStatus Called to request the status information of the application.
(Inherited from VaultApplicationBase)
GetAppModule Returns the loaded module instance based on the given configuration key.
GetDelegateScriptTemplate Method for reading the VBScript template from the resources.
(Inherited from VaultApplicationBase)
GetEventHandlerDelegateScript Method for retrieving the VBScript delegation code for the certain event type.
(Inherited from VaultApplicationBase)
GetEventHandlerEnvironment Creates the local event handler environment.
(Inherited from VaultApplicationBase)
GetEventHandlerExecutionOrderPreserver
(Inherited from VaultApplicationBase)
GetEventHandlerPrefix
(Inherited from VaultApplicationBase)
GetMetadataStructureCache Creates the metadata structure cache for the given vault. If the caching is not desired then this method should be overridden and it should return null.
(Inherited from VaultApplicationBase)
GetMethodsByAttributeT Returns a collection of the methods decorated with the given attribute.
(Inherited from MethodSource)
GetModule Returns the loaded module instance based on the given configuration key.
GetPrivateMethodSources Gets private method sources
(Inherited from VaultApplicationBase)
GetPropertyAutomaticNumber Invokes the property customized automatic numbering handler.
(Inherited from VaultApplicationBase)
GetPropertyCustomValue Invokes the property custom value calculation handler.
(Inherited from VaultApplicationBase)
GetPropertyEnvironment Creates the local property environment.
(Inherited from VaultApplicationBase)
GetPropertyHandlerDelegateScript Method for retrieving the VBScript delegation code for the certain state.
(Inherited from VaultApplicationBase)
GetStateEnvironment Creates the local state environment.
(Inherited from VaultApplicationBase)
GetStateHandlerDelegateScript Method for retrieving the VBScript delegation code for the certain state.
(Inherited from VaultApplicationBase)
GetStateTransitionEnvironment Creates the local state environment.
(Inherited from VaultApplicationBase)
GetStateTransitionHandlerDelegateScript Method for retrieving the VBScript delegation code for a certain state transition.
(Inherited from VaultApplicationBase)
GetTransactionRunner
(Inherited from VaultApplicationBase)
GetVaultExtensionMethodDelegateScript
(Inherited from VaultApplicationBase)
GetVaultExtensionMethodEventHandlerProxyName Returns the name for the vault extension method event handler proxy of this Vault Application.
(Inherited from VaultApplicationBase)
Initialize Initializes the vault application in the specified vault. The method e.g. installs required event delegating scripts in the vault.
(Overrides VaultApplicationBaseInitialize(Vault))
InitializeApplication Protected overridable for the child classes to override instead of Initialize. InitializeApplication can be used to make changes to the vault structure.
(Inherited from VaultApplicationBase)
InitializeAvailabilityGroupStatusWriter Protected overridable for the child classes to override so they can pass in their own settings. PermanentVault is initialized and should be used as the vault connection.
(Inherited from VaultApplicationBase)
InitializeImpl Reload clears the internal data structures and loads the modules and their event handlers.
(Overrides VaultApplicationBaseInitializeImpl(Vault))
InitializeTaskManager
(Overrides VaultApplicationBaseInitializeTaskManager)
InitializeTaskQueueManager  
InitializeTaskQueueResolver
(Inherited from VaultApplicationBase)
Install Installs the application.
(Overrides VaultApplicationBaseInstall(Vault))
InstallApplication Protected overridable for the child classes to override instead of Install. InstallApplication can be used to prevent installation of the application. InstallApplication should also install any additional required components. InstallApplication cannot make changes to the vault structure.
(Inherited from VaultApplicationBase)
InstallEventHandlerAndVaultExtensionMethodDelegateScripts Generates and installs the VBScript delegate scripts for event handlers defined in the application.
(Inherited from VaultApplicationBase)
InstallHandlerDelegateScripts Generates and installs the VBScript delegate scripts for all handlers that are defined in the application.
(Inherited from VaultApplicationBase)
InstallPropertyHandlerDelegateScripts Generates and installs the VBScript delegate scripts for property handlers defined in the application.
(Inherited from VaultApplicationBase)
InstallStateAndStateTransitionHandlerDelegateScripts Generates and installs the VBScript delegate scripts for state handlers defined in the application.
(Inherited from VaultApplicationBase)
IsGeneratedAutomatically Checks if the given script is generated automatically. This is decided by the existence of a line with certain content.
(Inherited from VaultApplicationBase)
IsHandlerDefinedForProperty Checks if the has handler(s) of the given type.
(Inherited from VaultApplicationBase)
IsHandlerDefinedForState Checks if the state has handler(s) of the given type.
(Inherited from VaultApplicationBase)
IsHandlerDefinedForStateTransition Checks if the state has handler(s) of the given type.
(Inherited from VaultApplicationBase)
IsModuleOperational Checks whether the module is enabled. To be enabled, there is no need for configuration, or the configuration is enabled.
LoadHandlerMethods Finds and caches all event handler methods and vault extension methods in the assembly. The methods are decorated with specific attributes.
(Overrides VaultApplicationBaseLoadHandlerMethods(Vault))
LoadModules Create and add instance of each available IModule class into modules collection.
NewEnvironment Returns a new Event Handler environment, to be populated in the event handler script.
(Inherited from VaultApplicationBase)
PopulateConfigurationObjects(Vault) Searches the vault application for marked configuration objects (MFConfiguration attribute) and loads and validates them.
(Inherited from VaultApplicationBase)
PopulateConfigurationObjects(Vault, Object) Populates a configuration objects from single host object.
(Inherited from VaultApplicationBase)
PopulateConfigurationObjectsAndValidate Populates and validates objects marked with MFConfiguration attribute.
(Inherited from VaultApplicationBase)
PopulateModuleConfigurationObjects Searches the modules for marked configuration objects (MFConfiguration attribute) and loads and validates them.
RegisterEventHandlers Registers the specified event handler method.
(Inherited from VaultApplicationBase)
RegisterHandlersT Generic method for collecting all methods from the given source that are decorated with the specified attribute type.
(Inherited from VaultApplicationBase)
RegisterMethodsFromSource Registers all methods from the specified source.
(Inherited from VaultApplicationBase)
RegisterPropertyHandler Registers the specified property handler method.
(Inherited from VaultApplicationBase)
RegisterStateHandler Registers the specified state handler method.
(Inherited from VaultApplicationBase)
RegisterStateTransitionHandler Registers the specified state transition handler method.
(Inherited from VaultApplicationBase)
RegisterVaultAnonymousExtensionMethodHandler
(Inherited from VaultApplicationBase)
RegisterVaultExtensionMethodHandler Registers the specified vault extension method.
(Inherited from VaultApplicationBase)
ReinitializeMetadataStructureCache Reinitialize the metadata structure cache.
(Inherited from VaultApplicationBase)
Reload Reload clear the internal data structures and loads the modules and their event handlers.
RemoveVaultExtensionMethod Removes a vault extension method that does not have a separate event handler proxy.
(Inherited from VaultApplicationBase)
ReportMetadataStructureValidationErrors Handles the validation results. By default only outputs errors to event log.
(Inherited from VaultApplicationBase)
ReportModuleMetadataStructureValidationErrors Handles the validation results. By default only outputs errors to event log.
Run Invokes all methods that have the MFEventHandlerAttribute and are applicable to this event.
(Inherited from VaultApplicationBase)
RunStateAction Invokes the state run action handlers.
(Inherited from VaultApplicationBase)
SetApplicationLicense Setting in new license content. Gets called after application instantiation before Initialize(), and also when a new license is applyed from MF-Admin.
(Inherited from VaultApplicationBase)
SetAuthenticationData Sets the authentication data for the vault application.
(Inherited from VaultApplicationBase)
SetCallingThreadCulture Sets the current thread culture according to the current user's culture.
(Inherited from VaultApplicationBase)
SetEventHandlers Overridable method for setting event handlers.
(Inherited from VaultApplicationBase)
ShouldUpdateScript Checks if the script should be updated. The script should be updated only if the old script was automatically generated and the new script differs from the old one.
(Inherited from VaultApplicationBase)
StartApplication Starts the modules.
(Overrides VaultApplicationBaseStartApplication)
StartOperations Starts the vault operations in the specified vault. The method e.g. begins to use the vault in a background job. - NOTE: Once this method releases the vault object will have been disposed. - When overriding this method in classes that extend this one, any logic that - needs to use that vault must be processed before the base.StartOperations() method is - called. Alternatively you can place the logic inside an override of the - StartApplication() method or inside the RegisterTaskQueues() method for - Vault applications that implement the IUsesTaskQueue interface. - ADDITIONAL NOTE: The PermanentVault reference will still be available.
(Inherited from VaultApplicationBase)
StartTaskQueueProcessing
(Inherited from VaultApplicationBase)
TraceCustomEvent Adds a custom event to the execution tracer.
(Inherited from VaultApplicationBase)
Uninitialize Un-initializes the vault application in the specified vault. - NOTE: Once this method releases the vault object will have been disposed. - When overriding this method in classes that extend this one, any logic that - needs to use that vault must be processed before the base.Uninitialize() method is - called. Alternatively you can place the logic inside an override of the - UninitializeApplication() method.
(Inherited from VaultApplicationBase)
UninitializeApplication Protected overridable for the child classes to override instead of Uninitialize. UninitializeApplication can be used make changes in the vault structure.
(Inherited from VaultApplicationBase)
UninitializeImpl Un-initializes the vault application in the specified vault.
(Overrides VaultApplicationBaseUninitializeImpl(Vault))
Uninstall Uninstall the application. - NOTE: Once this method releases the vault object will have been disposed. - When overriding this method in classes that extend this one, any logic that - needs to use that vault must be processed before the base.Uninstall() method is - called. Alternatively you can place the logic inside an override of the - UninstallApplication() method.
(Inherited from VaultApplicationBase)
UninstallApplication Protected overridable for the child classes to override instead of Uninitialize. UninstallApplication can be used to prevent uninstallation of the application. UninstallApplication should also uninstall any additional required components, that were installed by the InstallApplication-method. UninstallApplication cannot make changes to the vault structure.
(Inherited from VaultApplicationBase)
UpdatePropertyDefScripts Overridable method for updating property definition scripts.
(Inherited from VaultApplicationBase)
UpdateWorkflowScripts Overridable method for updating a workflow scripts.
(Inherited from VaultApplicationBase)
ValidateMetadataStructure Validates the application and all types in the same assembly.
(Inherited from VaultApplicationBase)
ValidateModuleMetadataStructure Override for validating the module assemblies.
ValidatePropertyValue Invokes all property validation handlers.
(Inherited from VaultApplicationBase)
VaultActionNotification
(Inherited from VaultApplicationBase)

Fields

anonymousMethods
(Inherited from VaultApplicationBase)
applicationRunningStatus Indicates the application running status. This is volatile because the value can be accessed from multiple threads to avoid caching delays -- the enumeration read and write itself is atomic.
(Inherited from VaultApplicationBase)
cacheEventSink The vault listeners registered to update the metadatastructurecache backing vault instances.
(Inherited from VaultApplicationBase)
eventHandlerMethods Collections of the event handling methods.
(Inherited from VaultApplicationBase)
eventSourceIdentifier The application event source identifier that is used in conjunction with the Windows event log.
(Inherited from VaultApplicationBase)
MaxTimeToWaitBackgroundOperationsAtUninitialization Defines how long the background operations can be waited at uninitialization.
(Inherited from VaultApplicationBase)
modules Loaded modules.
modulesInError Flag identifying if any of the enabled loaded modules is in error state.
propertyMethods Collection of property extension methods by property.
(Inherited from VaultApplicationBase)
stateMethods Collection of state extension methods by state.
(Inherited from VaultApplicationBase)
stateTransitionMethods Collection of state transition extension methods by state.
(Inherited from VaultApplicationBase)
unusedAnonymousMethodNames
(Inherited from VaultApplicationBase)
unusedVaultExtensionNames List of vault extension method names which are known but not used.
(Inherited from VaultApplicationBase)
vaultExtensionMethods Collection of vault extension methods by name.
(Inherited from VaultApplicationBase)

See Also