maximumRows = Config::getInstance()->General['datatable_archiving_maximum_rows_standard']; $this->processor = $processing; } abstract public function archiveDay(); abstract public function archivePeriod(); // todo: review this concept, each plugin should somehow maintain the list of report names they generate public function shouldArchive() { $className = get_class($this); $pluginName = str_replace(array("Piwik\\Plugins\\", "\\Archiver"), "", $className); if(strpos($pluginName, "\\") !== false) { throw new \Exception("unexpected plugin name $pluginName in shouldArchive()"); } return $this->getProcessor()->shouldProcessReportsForPlugin($pluginName); } /** * @return \Piwik\ArchiveProcessor\Day|\Piwik\ArchiveProcessor\Period */ protected function getProcessor() { return $this->processor; } /** * @return \Piwik\DataAccess\LogAggregator */ protected function getLogAggregator() { return $this->getProcessor()->getLogAggregator(); } }