# Dynamic Handlers

Dynamic handlers are typically facilitated by code or package handlers such as [OpenHFTEventHandler](https://docs.rierino.com/configuration/broken-reference), [ScriptLoadedEventHandler](https://docs.rierino.com/configuration/broken-reference) or [JarLoadedEventHandler.](https://docs.rierino.com/configuration/broken-reference)

## Handler Codes

<figure><img src="https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FGTceg27AHZp7Kf8boZvL%2FUI_Handler_Code.png?alt=media&#x26;token=553fcf79-5e3e-48be-93fe-a8d742c9b541" alt=""><figcaption><p>Handler Code UI</p></figcaption></figure>

Handler codes are code blocks which are compiled dynamically at run-time for highly specialized operations which can not be addressed with available event handlers. Handler codes have the following attributes:

* **Name:** Descriptive name of the code
* **Status:** Whether code is currently active or not
* **Description:** Detailed description of what the code does
* **Domain:** Domain of the code which allows deploying multiple codes using a single code handler
* **Engine:** Language / scripting engine to use (e.g. html, java)
* **Code:** Full script or class implementation body

For Java codes, additional attributes are applicable:

* **Class:** Fully qualified class name to be assigned to the code
* **Dependencies:** Extra jar files which shall be retrieved and deployed when compiling the code
* **Code:** Full Java class extending com.rierino.handler.EventHandler, including actionMap mappings to functions

## Handler Packages

<figure><img src="https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FiDZ8NVu4rRWqrCPAX3Jh%2FUI_Handler_Package.png?alt=media&#x26;token=56180642-3d7b-467e-b18c-55144a689a15" alt=""><figcaption><p>Handler Package UI</p></figcaption></figure>

Handler packages are JAR packages of handler classes which are loaded dynamically at run-time, for use cases that are similar to handler codes. Handler packages have the following attributes:

* **Name:** Descriptive name of the package
* **Status:** Whether package is currently active or not
* **Description:** Detailed description of what the package does
* **Domain:** Domain of the package which allows deploying multiple packages using a single package handler
* **Files:** Jar files included in the package with Urls to download them (see [Custom Development](https://docs.rierino.com/configuration/broken-reference) for details)
* **Handlers:** Mapping of unique handler ids to fully qualified class names for handlers included in the package


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.rierino.com/configuration/dynamic-handlers.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
