PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 4.3.0
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v4.3.0
5.11.1 5.11.0 5.10.2 5.10.1 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.3.2 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.10.0 4.11.0 4.12.0 4.13.0 4.13.2 4.13.3 4.13.4 4.13.5 4.14.0 4.14.1 4.14.2 4.15.0 4.15.1 4.15.2 4.15.3 4.2.0 4.3.0 4.3.1 4.4.1 4.4.2 4.5.0 4.6.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.10.0 5.2.0 5.2.1 5.2.2 5.3.0 5.3.1 5.3.2 5.3.3 5.6.0 5.6.1 5.7.0 5.7.1 5.8.0 5.8.1 5.8.2
matomo / app / core / CronArchive / FixedSiteIds.php
matomo / app / core / CronArchive Last commit date
Performance 5 years ago ArchiveFilter.php 5 years ago FixedSiteIds.php 5 years ago QueueConsumer.php 5 years ago ReArchiveList.php 5 years ago SegmentArchiving.php 5 years ago SharedSiteIds.php 5 years ago StopArchiverException.php 5 years ago
FixedSiteIds.php
74 lines
1 <?php
2 /**
3 * Matomo - free/libre analytics platform
4 *
5 * @link https://matomo.org
6 * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
7 *
8 */
9 namespace Piwik\CronArchive;
10
11
12 class FixedSiteIds
13 {
14 private $siteIds = array();
15 private $index = -1;
16
17 public function __construct($websiteIds)
18 {
19 if (!empty($websiteIds)) {
20 $this->siteIds = array_values($websiteIds);
21 }
22 }
23
24 public function getInitialSiteIds()
25 {
26 return $this->siteIds;
27 }
28
29 /**
30 * Get the number of total websites that needs to be processed.
31 *
32 * @return int
33 */
34 public function getNumSites()
35 {
36 return count($this->siteIds);
37 }
38
39 /**
40 * Get the number of already processed websites. All websites were processed by the current archiver.
41 *
42 * @return int
43 */
44 public function getNumProcessedWebsites()
45 {
46 $numProcessed = $this->index + 1;
47
48 if ($numProcessed > $this->getNumSites()) {
49 return $this->getNumSites();
50 }
51
52 return $numProcessed;
53 }
54
55 public function getNextSiteId()
56 {
57 $this->index++;
58
59 if (!empty($this->siteIds[$this->index])) {
60 return $this->siteIds[$this->index];
61 }
62
63 return null;
64 }
65
66 /**
67 * @return bool
68 */
69 public function isContinuingPreviousRun(): bool
70 {
71 return false;
72 }
73 }
74