move some arrays to constants

This commit is contained in:
Robin Appelman 2018-05-24 11:48:51 +02:00
commit 0d31da4757
2 changed files with 18 additions and 16 deletions

View file

@ -45,6 +45,15 @@ class Parser {
ErrorCodes::InvalidParameter => InvalidParameterException::class ErrorCodes::InvalidParameter => InvalidParameterException::class
]; ];
const MODE_STRINGS = [
'R' => FileInfo::MODE_READONLY,
'H' => FileInfo::MODE_HIDDEN,
'S' => FileInfo::MODE_SYSTEM,
'D' => FileInfo::MODE_DIRECTORY,
'A' => FileInfo::MODE_ARCHIVE,
'N' => FileInfo::MODE_NORMAL
];
/** /**
* @param TimeZoneProvider $timeZoneProvider * @param TimeZoneProvider $timeZoneProvider
*/ */
@ -109,15 +118,7 @@ class Parser {
public function parseMode($mode) { public function parseMode($mode) {
$result = 0; $result = 0;
$modeStrings = array( foreach (self::MODE_STRINGS as $char => $val) {
'R' => FileInfo::MODE_READONLY,
'H' => FileInfo::MODE_HIDDEN,
'S' => FileInfo::MODE_SYSTEM,
'D' => FileInfo::MODE_DIRECTORY,
'A' => FileInfo::MODE_ARCHIVE,
'N' => FileInfo::MODE_NORMAL
);
foreach ($modeStrings as $char => $val) {
if (strpos($mode, $char) !== false) { if (strpos($mode, $char) !== false) {
$result |= $val; $result |= $val;
} }

View file

@ -45,6 +45,13 @@ class Share extends AbstractShare {
*/ */
private $system; private $system;
const MODE_MAP = [
FileInfo::MODE_READONLY => 'r',
FileInfo::MODE_HIDDEN => 'h',
FileInfo::MODE_ARCHIVE => 'a',
FileInfo::MODE_SYSTEM => 's'
];
/** /**
* @param IServer $server * @param IServer $server
* @param string $name * @param string $name
@ -327,13 +334,7 @@ class Share extends AbstractShare {
*/ */
public function setMode($path, $mode) { public function setMode($path, $mode) {
$modeString = ''; $modeString = '';
$modeMap = array( foreach (self::MODE_MAP as $modeByte => $string) {
FileInfo::MODE_READONLY => 'r',
FileInfo::MODE_HIDDEN => 'h',
FileInfo::MODE_ARCHIVE => 'a',
FileInfo::MODE_SYSTEM => 's'
);
foreach ($modeMap as $modeByte => $string) {
if ($mode & $modeByte) { if ($mode & $modeByte) {
$modeString .= $string; $modeString .= $string;
} }