public function editDataSet($name, $duration, $useDuration, $updateInterval, $effect, $speed, $durationIsPerItem, $itemsSideBySide, $itemsPerPage, $upperLimit, $lowerLimit, $dateFormat, $backgroundColor, $noDataMessage, $template, $css = '', $filter, $ordering, $useOrderingClause, $useFilteringClause, $widgetId)
    {
        $this->name = $name;
        $this->duration = $duration;
        $this->useDuration = $useDuration;
        $this->updateInterval = $updateInterval;
        $this->effect = $effect;
        $this->speed = $speed;
        $this->durationIsPerItem = $durationIsPerItem;
        $this->itemsSideBySide = $itemsSideBySide;
        $this->itemsPerPage = $itemsPerPage;
        $this->upperLimit = $upperLimit;
        $this->lowerLimit = $lowerLimit;
        $this->dateFormat = $dateFormat;
        $this->backgroundColor = $backgroundColor;
        $this->noDataMessage = $noDataMessage;
        $this->template = $template;
        $this->css = $css;
        $this->filter = $filter;
        $this->ordering = $ordering;
        $this->useOrderingClause = $useOrderingClause;
        $this->useFilteringClause = $useFilteringClause;

        $this->getLogger()->info('Editing widget ID ' . $widgetId);
        $response = $this->doPut('/playlist/widget/' . $widgetId , $this->toArray());

        return $this->hydrate($response);

    }