extends |
Controller |
|---|
Serves a Core Report as a server-rendered HTML document. The sibling of {@see DashboardController}: same library, opposite render contract — a Dashboard emits a JSON control tree, a Report emits an iframe-isolated HTML document.
The pipeline is intentionally thin:
#[Slot] carries a non-null default and
SettingParameterSource is last, so required slots always resolve:
the report renders on defaults and the host's query-string
selection merely overrides — there is no blocking "empty
selection" state.provide(array $slots): array via
{@see Container::call}, which preserves method-level DI of services
while passing the scalar slot bag explicitly under slots.
ExecutableInvoker is deliberately NOT used — it has no scalar-bag
seat, and it is not extended to get one; Container::call
is the same mechanism the invoker wraps internally.no-store
(per-actor, slot-parameterised; auth-gated by host middleware).| Methods | ||
|---|---|---|
public
|
__invoke(
Ui5ContextInterface $context,
ParameterPipelineInterface $pipeline,
Container $container,
SettingResolverInterface $settings,
): Response
|
# |