Interface LaravelUi5\Core\Ui5\Contracts\ExecutableInterface

Generic contract for any executable UI5 component.

This interface unifies the runtime contract for classes that can be executed by the framework, such as:

  • {@see DataProviderInterface}: read-only providers that return structured data (e.g., for Cards, Resources, Reports).
  • {@see ActionHandlerInterface}: state-changing handlers that perform mutations or trigger workflows (e.g. "toggle-lock", "approve-invoice").

Having this shared contract allows controllers and orchestration services to interact with both providers and handlers in a uniform way, while still preserving semantic separation at the type level.

Design notes

  • The return type is:
    • array<string,mixed> for structured data results.
  • Cross-cutting concerns (parameter resolution, configuration injection) are handled externally via {@see ParameterizableInterface} and {@see ConfigurableInterface}.
  • Dependencies (repositories, services) should be provided via constructor DI; do not inject via the execute() method.
Methods