0
0
Fork 0
mirror of https://github.com/nextcloud/server.git synced 2025-03-12 15:37:27 +00:00
nextcloud_server/lib/public/Log/RotationTrait.php
Andy Scherzinger dae7c159f7
chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +02:00

50 lines
870 B
PHP

<?php
/**
* SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
namespace OCP\Log;
/**
* Trait RotationTrait
*
*
* @since 14.0.0
*/
trait RotationTrait {
/**
* @var string
* @since 14.0.0
*/
protected $filePath;
/**
* @var int
* @since 14.0.0
*/
protected $maxSize;
/**
* @return string the resulting new filepath
* @since 14.0.0
*/
protected function rotate():string {
$rotatedFile = $this->filePath.'.1';
rename($this->filePath, $rotatedFile);
return $rotatedFile;
}
/**
* @return bool
* @since 14.0.0
*/
protected function shouldRotateBySize():bool {
if ((int)$this->maxSize > 0 && file_exists($this->filePath)) {
$filesize = @filesize($this->filePath);
if ($filesize >= (int)$this->maxSize) {
return true;
}
}
return false;
}
}