private function getWidgetLocalClass(string $widgetType) : AbstractWidget
    {
        //====================================================================//
        // Safety Check => Widget Type is Mapped
        if (!in_array($widgetType, array_keys(self::$widgetsMap), true)) {
            throw new Exception(sprintf("Unknown Widget Type : %s", $widgetType));
        }
        //====================================================================//
        // Get Widget Class
        $className = static::$widgetsMap[$widgetType];
        //====================================================================//
        // Safety Check => Validate Widget Class
        if (true !== $this->isValidWidgetClass($className)) {
            throw new Exception($this->isValidWidgetClass($className));
        }
        //====================================================================//
        // Create Widget Class
        $genericWidget = new $className($this);
        //====================================================================//
        // If StandaloneWidget => Configure it!
        if (is_subclass_of($className, AbstractStandaloneWidget::class)) {
            $genericWidget->configure($widgetType, $this->getWebserviceId(), $this->getConfiguration());
        }

        return $genericWidget;
    }
private function getWidgetLocalClass(string $widgetType) : AbstractWidget
    {
        //====================================================================//
        // Safety Check => Widget Type is Mapped
        if (!in_array($widgetType, array_keys(self::$widgetsMap), true)) {
            throw new Exception(sprintf("Unknown Widget Type : %s", $widgetType));
        }
        //====================================================================//
        // Get Widget Class
        $className = static::$widgetsMap[$widgetType];
        //====================================================================//
        // Safety Check => Validate Widget Class
        if (true !== $this->isValidWidgetClass($className)) {
            throw new Exception($this->isValidWidgetClass($className));
        }
        //====================================================================//
        // Create Widget Class
        $genericWidget = new $className($this);
        //====================================================================//
        // If StandaloneWidget => Configure it!
        if (is_subclass_of($className, AbstractStandaloneWidget::class)) {
            $genericWidget->configure($widgetType, $this->getWebserviceId(), $this->getConfiguration());
        }

        return $genericWidget;
    }
private function getWidgetLocalClass ( string $ widgetType ) : AbstractWidget { //====================================================================// // Safety Check => Widget Type is Mapped if ( ! in_array ( $ widgetType , array_keys ( self :: $ widgetsMap ) , true ) ) { throw new Exception ( sprintf ( "Unknown Widget Type : %s" , $ widgetType ) ) ; } //====================================================================// // Get Widget Class $ className = static :: $ widgetsMap [ $ widgetType ] ; //====================================================================// // Safety Check => Validate Widget Class if ( true !== $ this -> isValidWidgetClass ( $ className ) ) { throw new Exception ( $ this -> isValidWidgetClass ( $ className ) ) ; } //====================================================================// // Create Widget Class $ genericWidget = new $ className ( $ this ) ; //====================================================================// // If StandaloneWidget => Configure it! if ( is_subclass_of ( $ className , AbstractStandaloneWidget :: class ) ) { $ genericWidget -> configure ( $ widgetType , $ this -> getWebserviceId ( ) , $ this -> getConfiguration ( ) ) ; } return $ genericWidget ; }
Return a New Intance of Requested Widget Type Class

@param string $widgetType

@throws Exception

@return AbstractWidget
Return a New Intance of Requested Widget Type Class