class Quota
Represents a quota for disk space.
@since 1.1.0 @internal
Hierarchy
- class \org\bovigo\vfs\Quota
Expanded class hierarchy of Quota
File
-
vendor/
mikey179/ vfsstream/ src/ main/ php/ org/ bovigo/ vfs/ Quota.php, line 17
Namespace
org\bovigo\vfsView source
class Quota {
/**
* unlimited quota
*/
const UNLIMITED = -1;
/**
* quota in bytes
*
* A value of -1 is treated as unlimited.
*
* @type int
*/
private $amount;
/**
* constructor
*
* @param int $amount quota in bytes
*/
public function __construct($amount) {
$this->amount = $amount;
}
/**
* create with unlimited space
*
* @return Quota
*/
public static function unlimited() {
return new self(self::UNLIMITED);
}
/**
* checks if a quota is set
*
* @return bool
*/
public function isLimited() {
return self::UNLIMITED < $this->amount;
}
/**
* checks if given used space exceeda quota limit
*
*
* @param int $usedSpace
* @return int
*/
public function spaceLeft($usedSpace) {
if (self::UNLIMITED === $this->amount) {
return $usedSpace;
}
if ($usedSpace >= $this->amount) {
return 0;
}
$spaceLeft = $this->amount - $usedSpace;
if (0 >= $spaceLeft) {
return 0;
}
return $spaceLeft;
}
}
Members
Title Sort descending | Modifiers | Object type | Summary |
---|---|---|---|
Quota::$amount | private | property | quota in bytes |
Quota::isLimited | public | function | checks if a quota is set |
Quota::spaceLeft | public | function | checks if given used space exceeda quota limit |
Quota::unlimited | public static | function | create with unlimited space |
Quota::UNLIMITED | constant | unlimited quota | |
Quota::__construct | public | function | constructor |