Overview of Plugins

Understand the different types of plugins and their roles within Olympus-Grid.

In Olympus-Grid, every component that interacts with or extends the platform is considered a plugin. Plugins are the building blocks of the system, enabling developers to assemble tailored solutions by combining modular and reusable components. Whether it's functionality provided by CloudPremise or custom-developed plugins from external developers, plugins make Olympus-Grid highly extensible and adaptable.


What is a Plugin?

A plugin is any component that is compatible with the Olympus-Grid ecosystem. It adheres to predefined interfaces, allowing seamless integration into the platform. Plugins can:

  • Be developed and provided by CloudPremise, often packaged within the namespace for easy deployment.

  • Be built by clients or third-party developers, existing outside the namespace for custom or external use cases.

You can think of Olympus-Grid as a motherboard and plugins as the components that are added to this motherboard to build complete solutions. Each plugin type serves a specific purpose, similar to how CPUs, GPUs, and memory modules serve distinct roles in a computer system.


Types of Plugins

Plugins are categorized into different types, each designed for a specific function within Olympus-Grid. Here’s an overview of the currently supported plugin types:

  1. Plugin (Comprehensive Module)

    • A plugin in this category is a higher-order component that often includes other plugins as part of its solution.

    • Example: A hospital portal plugin might combine trigger handlers, platform event handlers, and API handlers to deliver a comprehensive healthcare solution.

  2. Platform Event Handler

    • These plugins define the behavior when a platform event is fired.

    • The dynamic code registered in this plugin determines what happens during the event's lifecycle.

  3. Trigger Handler

    • These plugins define logic that executes on database transactions.

    • Example: Automatically updating related records when an opportunity is closed.

  4. API Handler

    • These plugins respond to specific REST API routes, triggered by HTTP methods such as GET, POST, PATCH, PUT, or DELETE.

    • Example: An API handler plugin might handle a /api/orders route to process incoming orders.

  5. Thread Handler

    • These plugins execute asynchronous jobs, handling tasks that run outside the standard transaction context.

    • Example: Processing large batches of records in the background.


How Plugins Work

Plugins enable developers to define reusable solutions that integrate seamlessly with Olympus-Grid. Each plugin type is tied to a specific interface or contract, ensuring that the component behaves predictably within the system. For example:

  • A CPU-type plugin must honor the interface defined for computational logic.

  • Other plugin types (like platform event handlers) serve entirely different roles but adhere to their own specific contracts.

By defining these interfaces, Olympus-Grid ensures that any plugin added to the platform will "fit" perfectly, just like the components of a motherboard.


Key Benefits of Plugins

  • Modularity: Break down solutions into reusable, manageable components.

  • Flexibility: Swap out components (plugins) as needed, based on use cases or requirements.

  • Rapid Integration: Quickly integrate new plugins to extend functionality or deliver solutions.

  • Versioning: Plugins can be upgraded or deprecated without disrupting the entire system.

  • Customizability: Build highly tailored solutions by combining CloudPremise and third-party plugins.


Extensibility in Action

Imagine building a hospital management solution using Olympus-Grid. The platform acts as your motherboard, and you can "plug in":

  • A trigger handler to automate notifications when patient records are updated.

  • A platform event handler to process real-time events such as patient check-ins.

  • An API handler to expose REST endpoints for integrating with third-party apps.

  • A thread handler to manage nightly batch processing for billing.

This level of extensibility allows developers to create solutions that evolve with business needs, ensuring that Olympus-Grid remains a future-proof and scalable platform.


Next Steps:

Last updated