Ejemplo n.º 1
0
 /**
  * @param   string                $type    The content type
  * @param   callable|array|string $handler The handler for that type
  *
  * @return  void
  *
  * @throws  \Exception
  */
 public function registerContentType($type, $handler)
 {
     $this->dispatcher->dispatch(new RegisterContentTypeEvent($type, $handler));
     try {
         $this->renderer->registerContentType($type, $handler);
         $this->dispatcher->dispatch(new RegisterContentTypeSuccessEvent($type, $handler));
     } catch (\Exception $exception) {
         $this->dispatcher->dispatch(new RegisterContentTypeFailureEvent($type, $exception));
         throw $exception;
     }
 }
Ejemplo n.º 2
0
 /**
  * Register this content type to a renderer
  *
  * @param   RendererInterface $renderer The renderer
  *
  * @return  void
  */
 public function register(RendererInterface $renderer)
 {
     $this->renderer = $renderer;
     switch ($renderer->getClass()) {
         case HtmlRenderer::class:
             $method = 'asHtml';
             break;
         default:
             $method = 'asPlain';
             break;
     }
     $renderer->registerContentType('WorkflowState', [$this, $method]);
 }