Mono.Addins 0.4.0.0 1.0.0.0 System.Object System.IDisposable An add-in registry.

An add-in registry is a data structure used by the add-in engine to locate add-ins to load.

A registry can be configured to look for add-ins in several directories. However, add-ins copied to those directories won't be detected until an explicit add-in scan is requested. The registry can be updated by an application by calling Registry.Update(), or by a user by running the 'mautil' add-in setup tool.

The registry has information about the location of every add-in and a timestamp of the last check, so the Update method will only scan new or modified add-ins. An application might add a call to Registry.Update() in the Main method to detect all new add-ins every time the app is started.

Every add-in added to the registry is parsed and validated, and if there is any error it will be rejected. The registry is also in charge of scanning the add-in assemblies and look for extensions and other information declared using custom attributes. That information is merged with the manifest information (if there is one) to create a complete add-in description ready to be used at run-time.

Mono.Addins allows sharing an add-in registry among several applications. In this context, all applications sharing the registry share the same extension point tree, and it is possible to implement add-ins which extend several hosts.

- Constructor
  Location of the add-in registry.
  Initializes a new instance.
  Creates a new add-in registry located in the provided path.
  0.4.0.0
- Constructor
  0.4.0.0
  To be added.
  To be added.
  To be added.
  To be added.
- Property
  System.String Gets the default add-ins folder of the registry. The default add-ins folder. For every add-in registry there is an add-in folder where the registry will look for add-ins by default. This folder is an "addins" subdirectory of the directory where the repository is located. In most cases, this folder will only contain .addins files referencing other more convenient locations for add-ins. 0.4.0.0
- Method
  System.Void `` Identifier of the add-in. Disables an add-in. Disables an add-in. If the add-in engine is initialized and it is using this registry, all extensions from this add-in will be unloaded.

  When an add-in is disabled, all extension points it defines will be ignored by the add-in engine. Other add-ins which depend on the disabled add-in will also automatically be disabled.

  0.4.0.0
- Method
  System.Void Disposes the add-in engine. Disposes the add-in engine. 0.4.0.0
- Method
  System.Void `` To be added. To be added. To be added. 0.4.0.0
- Method
  System.Void `` Identifier of the add-in. Enables an add-in. Enables an add-in. If the add-in engine is initialized and it is using this registry, all extensions from this add-in will be loaded.

  If the enabled add-in depends on other add-ins which are disabled, those will automatically be enabled too.

  0.4.0.0
- Method
  Mono.Addins.Addin `` Identifier of the add-in. Returns an add-in from the registry. The add-in, or 'null' if not found.

  The add-in identifier may optionally include a version number. For example:

  `Addin addin = AddinManager.Registry.GetAddin ("TextEditor.Xml,1.0.0.0");`

  In this case, if the exact version is not found, it will return one than is compatible with the required version.

  0.4.0.0
- Method
  Mono.Addins.Addin `` `` Identifier of the add-in. 'true' if the exact add-in version must be found. Returns an add-in from the registry. The add-in, or 'null' if not found.

  The add-in identifier may optionally include a version number. For example:

  `Addin addin = AddinManager.Registry.GetAddin ("TextEditor.Xml,1.0.0.0", false);`

  In this case, if the exact version is not found and exactVersionMatch is 'false', it will return one than is compatible with the required version.

  0.4.0.0
- Method
  Mono.Addins.Description.AddinDescription `` `` Progress montitor to keep track of the description parsing process. File that implements the add-in. It may be an assembly or a .addin file. Gets the description of an add-in. The description of the add-in. Parses the provided file and returns a complete description of the add-in, or null if the file doesn't implement an add-in.

  The file doesn't need to be in an add-in directory belonging to the registry, however if the add-in has dependencies, those will be looked up in the registry.

  0.4.0.0
- Method
  Mono.Addins.Addin[] Gets all add-in roots registered in the registry. Descriptions of all add-in roots. Gets all add-in roots registered in the registry. 0.4.0.0
- Method
  Mono.Addins.Addin[] Gets all add-ins registered in the registry. Add-ins registered in the registry. Gets all add-ins registered in the registry. 0.4.0.0
- Method
  Mono.Addins.AddinRegistry Gets the global registry. The global registry. The global add-in registry is created in "~/.config/mono.addins", and it is the default registry used when none is specified. 0.4.0.0
- Method
  0.4.0.0
  System.String[] `` To be added. To be added. To be added. To be added.
- Method
  System.Boolean `` Identifier of the add-in. Checks whether an add-in is enabled. 'true' if the add-in is enabled. 0.4.0.0
- Method
  0.4.0.0
  Mono.Addins.Description.AddinDescription `` To be added. To be added. To be added. To be added.
- Method
  0.4.0.0
  Mono.Addins.Description.AddinDescription `` `` To be added. To be added. To be added. To be added. To be added.
- Method
  System.Void `` Progress monitor to keep track of the rebuild operation. Regenerates the cached data of the add-in registry. Regenerates all data cached by the registry. 0.4.0.0
- Property
  System.String Location of the add-in registry. Location of the registry. Location of the registry. 0.4.0.0
- Method
  System.Void To be added. To be added. 0.4.0.0
- Method
  System.Void `` Progress monitor to keep track of the update operation. Updates the add-in registry. This method must be called after modifying, installing or uninstalling add-ins.

  When calling Update, every add-in added to the registry is parsed and validated, and if there is any error it will be rejected. It will also cache add-in information needed at run-time.

  If during the update operation the registry finds new add-ins or detects that some add-ins have been deleted, the loaded extension points will be updated to include or exclude extension nodes from those add-ins.

  0.4.0.0