Skip to content

Refactoring: Abstrakte Klassen duerfen keine Kenntnis ueber ihre Kinder haben #18

@fluxdw

Description

@fluxdw

vgl.
https://git.fluxlabs.ch/fluxlabs/ilias/plugins/RepositoryObjects/ViMP/-/blob/main/classes/GUI/Abstract/class.xvmpGUI.php#L311

$show_unavailable = ($this instanceof xvmpVideosGUI) || ($this instanceof xvmpContentGUI);
$response->html = $this->renderer_factory->playerModal()->render($playModalDto, $async, $show_unavailable);

ToDo
Abstrackte Klassen pruefen, ob diese Elemente ihrer Kinder kennen. Falls ja jeweils ueberarbeiten und beispielsweise CommandHandler / Delegator einfuehren.

inteface GetResponseHandler {

}


class GetAvailableResponseHandler implements GetResponseHandler {
     /** @param GetResponseHandler[] $nextHandlers **/
     public function handle(GetAvailableResponse $command, array $nextHandlers): string {
         if(xzy === false) {
              $nextHandler = array_shift($nextHandlers);
              return $nextHandler->handle($command, $nextHandlers)
         }
 

         return renderXYZ
     }
}



GetUnAvailableResponseHandler implements GetResponseHandler {
     public function handle(GetAvailableResponse $command, array $nextHandlers): string {

     }
}

siehe auch:
https://docs.laminas.dev/laminas-stratigility/v3/middleware/

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

NEW

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions