/
githubmirror
/
magento2
Обзор
Документация
Войти
/
githubmirror
/
magento2
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
2.4-develop
setup/src/Magento/Setup/Model/Installer/Progress.php
109 строк
2 KB
Alexandra Zota
ACP2E-4019: CE copyright updates for 2.4.9-beta1
22 окт 2025, 11:23
22 окт 2025, 11:23
6c2f6e6
Код
Авторство
О чём код?
<?php /** * Copyright 2015 Adobe * All Rights Reserved. */ namespace Magento\Setup\Model\Installer; /** * Installation progress model */ class Progress { /** * Total number of steps * * @var int */ private $total; /** * Current step * * @var int */ private $current; /** * Constructor * * @param int $total * @param int $current */ public function __construct($total, $current = 0) { $this->validate($total, $current); $this->total = $total; $this->current = $current; } /** * Increments current counter * * @return void */ public function setNext() { $this->validate($this->total, $this->current + 1); $this->current++; } /** * Sets current counter to the end * * @return void */ public function finish() { $this->current = $this->total; } /** * Gets the current counter * * @return int */ public function getCurrent() { return $this->current; } /** * Gets the total number * * @return int */ public function getTotal() { return $this->total; } /** * Gets ratio of current to total * * @return float */ public function getRatio() { return $this->current / $this->total; } /** * Asserts invariants * * @param int $total * @param int $current * @return void * @throws \LogicException */ private function validate($total, $current) { if (empty($total) || 0 >= $total) { throw new \LogicException('Total number must be more than zero.'); } if ($current > $total) { throw new \LogicException('Current cannot exceed total number.'); } } }