Child pages
  • Plugin Loader

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Plugin Locations. There are several folders to be checked for the plugins (marked with "(lightbulb)"). The "[/*]" suffix on some of the location paths means that plugin files may be placed into a subfolder, up to one level deep under the main folder, if the plugin consists of multiple files and they're worth separating from the other plugins.

  • Primary Plugins.
    • (lightbulb) (P.JB) Omea Binaries folder. Loaded from the Omea Binaries folder, side-by-side with the entry executable.
      • Each DLL that matches the Plugin Files Mask is loaded by its assembly name, which must correspond to the file name, but for file extension. This provides for the Load context and enables the GAC/NGen functionality. ***
      • If the DLL is not a primary Omea plugin, an error is raised.
        • A primary Omea plugin must have the same strong name key as the plugin loader assembly.
      • If the DLL could not be loaded by its name (assembly name does not agree with the file name), an error is raised.
  • Third-party Plugins.
    • Per-machine plugins.
      • (lightbulb) (P.OB) Plugins folder under the Omea Binaries folder.
        • Plugin Files Mask applies.
        • File Name must agree to the assembly name, as the Load context will, possibly, be applied to these plugins as well.
      • (lightbulb) (P.AU) <AllUsersAppData>/JetBrains/Omea/Plugins[/*] folder.
        • Plugin Files Mask applies.
        • LoadFrom context is used.
    • Per-user plugins.
      • (lightbulb) (P.RA) <RoamingAppData>/JetBrains/Omea/Plugins[/*] folder.
        • Plugin Files Mask applies.
        • LoadFrom context is used.
      • (lightbulb) (P.LA) <LocalAppData>/JetBrains/Omea/Plugins[/*] folder.
        • Plugin Files Mask applies.
        • LoadFrom context is used.
      • (lightbulb) (P.DB) <OmeaDatabaseFolder>/Plugins[/*] folder.
        • Applies to Omea instances running the given database only.
        • Plugin Files Mask applies.
        • LoadFrom context is used.

...