Piwik\API\ApiRenderer::factory PHP Method

factory() public static method

public static factory ( string $format, array $request ) : ApiRenderer
$format string
$request array
return ApiRenderer
    public static function factory($format, $request)
    {
        $formatToCheck = '\\' . ucfirst(strtolower($format));
        $rendererClassnames = Plugin\Manager::getInstance()->findMultipleComponents('Renderer', 'Piwik\\API\\ApiRenderer');
        foreach ($rendererClassnames as $klassName) {
            if (Common::stringEndsWith($klassName, $formatToCheck)) {
                return new $klassName($request);
            }
        }
        $availableRenderers = array();
        foreach ($rendererClassnames as $rendererClassname) {
            $availableRenderers[] = self::getFormatFromClass($rendererClassname);
        }
        $availableRenderers = implode(', ', $availableRenderers);
        Common::sendHeader('Content-Type: text/plain; charset=utf-8');
        throw new Exception(Piwik::translate('General_ExceptionInvalidRendererFormat', array($format, $availableRenderers)));
    }

Usage Example

コード例 #1
0
 /**
  * @param string $outputFormat
  * @param array $request
  */
 public function __construct($outputFormat, $request = array())
 {
     $this->outputFormat = $outputFormat;
     $this->request = $request;
     $this->apiRenderer = ApiRenderer::factory($outputFormat, $request);
 }
All Usage Examples Of Piwik\API\ApiRenderer::factory