$calendarData
$data
$data
$vcardData
$principalUri
$data
$cardData
array
IEventListener
IEventListener
IEventListener
IEventListener
$uids
]]>
IEventListener
$baseuri
$baseuri
\OC\Files\Filesystem::logWarningWhenAddingStorageWrapper($previousLog)
\OC\Files\Filesystem::logWarningWhenAddingStorageWrapper(false)
$baseuri
$baseuri
$baseuri
$baseuri
CalendarDeletionDefaultUpdaterListener::class
setDateTime
setDateTime
VEVENT->DTSTART]]>
VEVENT->SUMMARY]]>
VEVENT->DTSTART]]>
VEVENT->SUMMARY]]>
$calendarData
objectData['calendardata']]]>
$calendarData
$calendarData
array
array
Reader::read($objectData)
$objectData
$uris
$uris
VCalendar
atomic(function () use ($calendarId, $syncToken, $syncLevel, $limit, $calendarType) {
// Current synctoken
$qb = $this->db->getQueryBuilder();
$qb->select('synctoken')
->from('calendars')
->where(
$qb->expr()->eq('id', $qb->createNamedParameter($calendarId))
);
$stmt = $qb->executeQuery();
$currentToken = $stmt->fetchOne();
if ($currentToken === false) {
return null;
}
$result = [
'syncToken' => $currentToken,
'added' => [],
'modified' => [],
'deleted' => [],
];
if ($syncToken) {
$qb = $this->db->getQueryBuilder();
$qb->select('uri', 'operation')
->from('calendarchanges')
->where(
$qb->expr()->andX(
$qb->expr()->gte('synctoken', $qb->createNamedParameter($syncToken)),
$qb->expr()->lt('synctoken', $qb->createNamedParameter($currentToken)),
$qb->expr()->eq('calendarid', $qb->createNamedParameter($calendarId)),
$qb->expr()->eq('calendartype', $qb->createNamedParameter($calendarType))
)
)->orderBy('synctoken');
if (is_int($limit) && $limit > 0) {
$qb->setMaxResults($limit);
}
// Fetching all changes
$stmt = $qb->executeQuery();
$changes = [];
// This loop ensures that any duplicates are overwritten, only the
// last change on a node is relevant.
while ($row = $stmt->fetch()) {
$changes[$row['uri']] = $row['operation'];
}
$stmt->closeCursor();
foreach ($changes as $uri => $operation) {
switch ($operation) {
case 1:
$result['added'][] = $uri;
break;
case 2:
$result['modified'][] = $uri;
break;
case 3:
$result['deleted'][] = $uri;
break;
}
}
} else {
// No synctoken supplied, this is the initial sync.
$qb = $this->db->getQueryBuilder();
$qb->select('uri')
->from('calendarobjects')
->where(
$qb->expr()->andX(
$qb->expr()->eq('calendarid', $qb->createNamedParameter($calendarId)),
$qb->expr()->eq('calendartype', $qb->createNamedParameter($calendarType))
)
);
$stmt = $qb->executeQuery();
$result['added'] = $stmt->fetchAll(\PDO::FETCH_COLUMN);
$stmt->closeCursor();
}
return $result;
}, $this->db)]]>
null
INode
INode
getCalendarInCalendarHome($this->principalInfo['uri'], $calendarUri)]]>
calendarSearch
$principal
string|null
$principalInfo
$paths
DTEND]]>
hasTime
isFloating
isFloating
$emailAddresses
]]>
getDateTime
getDateTime
isFloating
$provider::NOTIFICATION_TYPE
$diff === false
$vevents
VObject\Reader::read($calendarData,
VObject\Reader::OPTION_FORGIVING)
VObject\Component\VCalendar|null
VObject\Component\VEvent[]
getDateTime
getDateTime
parent->UID]]>
array
$principals
string[]
null
null
recipientName]]>
is_array($modified['old'])
getNormalizedValue
getNormalizedValue
[$aclPlugin, 'propFind']
[$aclPlugin, 'propFind']
DTEND]]>
get
getChildren
getDateTime
hasTime
isFloating
isFloating
principalSearch
bool
$property,
'parameter' => $parameter,
]]]>
string
!is_array($newProps['filters']['comps'])
!is_array($newProps['filters']['params'])
!is_array($newProps['filters']['props'])
!isset($newProps['filters']['comps']) || !is_array($newProps['filters']['comps'])
!isset($newProps['filters']['params']) || !is_array($newProps['filters']['params'])
!isset($newProps['filters']['props']) || !is_array($newProps['filters']['props'])
$webcalData
getKey()]]>
getKey()]]>
Reader::read($cardData)
VCard
$principal
false
Reader::read($cardData)
VCard
$addressBooks[$row['id']][$readOnlyPropertyName] === 0
bool
string
$type,
'body' => $val
]]]>
false|array{body: string, Content-Type: string}
$type
string|null
getChanges
null
principalUri]]>
principalUri]]>
$groups
\Sabre\HTTP\toDate($value)
bool
$data
array{bool, string}
tryTokenLogin
$nodes
dirContent]]>
\Sabre\DAV\INode[]
node]]>
Folder
null
null
null
$fullSourcePath
node]]>
$data
\OCP\Files\File
0
200
bool
new PreconditionFailed('Cannot filter by non-existing tag', 0, $e)
\OCA\Circles\Api\v1\Circles
getById
getPath
int
integer
info->getId()]]>
info->getId()]]>
array
$principals
string[]
$results
circleToPrincipal($decodedName)
?: $this->circleToPrincipal($name)]]>
null
null
null
null
null
null
null
\OCA\Circles\Api\v1\Circles
\OCA\Circles\Api\v1\Circles
getPath
getPath
new \OCA\DAV\Connector\Sabre\QuotaPlugin($view, true)
$shareType
getShareType()]]>
null
getId
DTSTAMP]]>
$whereValues
array
string
$principals
string[]
$members
null
null
null
null
null
null
null
array
null
enablePropfindDepthInfinityf]]>
$value
?string
$search
getTimestamp() !== false]]>
arguments[0]->name]]>
arguments[0]->name]]>
backend->getArbiterPath()]]>
bool
usersToDelete]]>
usersToDelete]]>
IEventListener
IEventListener
IEventListener
IEventListener
IEventListener
IEventListener
IEventListener
IEventListener
IEventListener
IEventListener
IEventListener
IEventListener
$arguments
$arguments
getCursor()]]>
l10n->l('date', $startDateTime, ['width' => 'medium'])]]>
getCursor()]]>
['CN'],
'ORGANIZER' => ['CN'],
]]]>
l10n->l('date', $startDateTime, ['width' => 'medium'])]]>
string
getDateTime
getDateTime
hasTime
isFloating
isFloating
getCursor()]]>
getDateTime
getDateTime
hasTime
$tagId
$tagName
$objectName
$members
false
currentStream]]>
$context
array
array_values
getId
getId
getId
getInternalPath
getNode
getSize
$addressBookNode->getName(),
'displayName' => $addressBookInfo['{DAV:}displayname'],
'description' => $addressBookInfo['{' . CardDAVPlugin::NS_CARDDAV . '}addressbook-description'],
'vCards' => $vCards,
]]]>
array{name: string, displayName: string, description: ?string, vCards: VCard[]}
]]>
get_class($res) === 'OpenSSLAsymmetricKey'
$position
throw $exception;
new Exceptions\PrivateKeyMissingException('please try to log-out and log-in again', 0)
files->getMount($path)->getStorage()]]>
\OC\Files\Storage\Storage|null
$id
$id
$id
$id
$id
$id
$remoteId
$shareId
$shareId
$shareId
$shareId
(int)$data['id']
$nodes[0]
\OCP\Files\File|\OCP\Files\Folder
IEventListener
bool
bool
bool
$id
$id
$id
$id
$shareId
string
(int)$share['id']
$result
]]>
IEventListener
dbHandler->getAllServer()]]>
]]>
$files_list
fileEncrypted[$fileId]]]>
$folder
fileEncrypted[$fileId]]]>
Folder
fileIsEncrypted]]>
fileIsEncrypted]]>
fileIsEncrypted]]>
fileIsEncrypted]]>
fileIsEncrypted]]>
fileIsEncrypted]]>
fileIsEncrypted]]>
fileIsEncrypted]]>
fileIsEncrypted]]>
fileIsEncrypted]]>
fileIsEncrypted]]>
fileIsEncrypted]]>
fileIsEncrypted]]>
fileIsEncrypted]]>
null
null
$templateId
getTemplates
open
$file
$i
$i
$i
$i
$i
$i
$i
$i
$i
$i
$i
$i
IEventListener
IEventListener
empty($encryptedFiles)
isReadyForUser
$this
getCode()]]>
(int)$status
storageClass]]>
]]>
put
getCode()]]>
getCode()]]>
getCode()]]>
getCode()]]>
getCode()]]>
getCode()]]>
getCode()]]>
lastModified]]>
filetype
fopen
IEventListener
IEventListener
IEventListener
login
decrypt
encrypt
setIV
setIV
test
(int)$code
(int)$code
\OCA\Circles\Api\v1\Circles
\OCA\Circles\Api\v1\Circles
getRoomShareHelper()]]>
getRoomShareHelper()]]>
getRoomShareHelper()]]>
\OCA\Talk\Share\Helper\ShareAPIController
$files_list
$mount
Mount
$cacheData
IEventListener
IEventListener
IEventListener
IEventListener
getMessage()]]>
array_values
$itemSource
$itemSource
$shareWith
fetchRow
bool
sourceRootInfo]]>
ICacheEntry
new FailedCache()
sourceRootInfo]]>
moveMount
$_['hideFileList'] !== true
IEventListener
int
data->getId()]]>
$entry
ITrash
getChild
null
INode
$entry
ITrash
$trashFiles
null
$file
getById
false
$timestamp
$timestamp
$this
$this
IEventListener
IEventListener
IEventListener
getChild
null
getChild
instanceOfStorage('\OC\Files\ObjectStore\ObjectStoreStorage')]]>
retries + 1]]>
request->server]]>
$groupid === null
$groupid === null
IEventListener
Response
AppPasswordCreatedActivityListener::class
getSettingsManager
ignoreNextcloudRequirementForApp
getEMailAddress() => $user->getDisplayName()]]]>
IEventListener
IEventListener
IEventListener
isReady
null
getId()]]>
(int)$data['id']
getObjectId()]]>
getObjectId()]]>
TIME_SENSITIVE
IEventListener
IEventListener
getRgb())]]>
array{0: int, 1: int, 2: int}
IEventListener
IEventListener
IEventListener
IEventListener
IEventListener
IEventListener
false
users]]>
$ln + 1
$this
$uuid
$values
string[]
getCode()]]>
$subj
default:
$subj = $key;
break;
$groupID
$gid
$i
null
isset($qb)
isset($qb)
public function setLdapAccess(Access $access) {
avatarImage]]>
refreshedFeatures]]>
null
0)]]>
string|false
$limit
$offset
null
0)]]>
is_string($dn)
$uid
$possibleAttrs[$i]
registerProvider
IEventListener
IEventListener
IEventListener
null
size]]>
$size
size]]>
string
storage]]>
$decodedValue[1]
$decodedValue[1]
$decodedValue[1]
$decodedValue[1]
$hour1
$minute1
Application::APP_ID, 'class' => get_class($subject)]]]>
string
$uid
IEventListener
$missingCheck
$result
$result
bool
getAllConfiguredScopesForOperation
getChecks
getOperations
getOperations
isUserScopeEnabled
$arguments
$arguments
$arguments
$result === false
array
$result === true
0
1
appConfig->getValues($app, false)]]>
getFilteredValues
0
1
null
[0]
string[]
$levelNum
timeFactory->getTime()]]>
getAllMappings
updateFilecache
$found
$found
array{shareId: int, fileTarget: string, initiator: string, receiver: string, owner: string, mountOwner: string}[]
array{shareId: int, fileTarget: string, initiator: string, receiver: string, owner: string, mountOwner: string}[]
section
section
[]
!is_string($stateToken)
searchCollections
getCode()]]>
findMatchingRoute
IEventListener
request->server]]>
$this
$this
create('core_ajax_update', '/core/ajax/update.php')]]>
getIcon
memoryCache]]>
$restrictions
$affectedUser
filterClasses]]>
providerClasses]]>
settingsClasses]]>
settings]]>
ActivitySettings[]
$key
!is_array($userIds)
array
array
fetch
bool
version_compare($first, $second, $operator)
$array[$element][]
$array[$element][]
(string)$xml
array
$values
$default
bootedApps]]>
getName
boolean|null
server]]>
\OCP\IServerContainer
mixed
getAppDataDir
request->method]]>
null
@readfile($path)
http_response_code()
bool
int
\ArrayAccess
$name
$remoteAddress
getOverwriteHost()]]>
method]]>
$uri
cookies[$key]) ? $this->cookies[$key] : null]]>
env[$key]) ? $this->env[$key] : null]]>
files[$key]) ? $this->files[$key] : null]]>
\is_array($params)
\Sabre\HTTP\decodePath($pathInfo)
log
setOCSVersion
request->server]]>
request->server]]>
request->server]]>
\OCA\Talk\Controller\PageController
$action['url-postfix']
$default
newInstance()]]>
newInstanceArgs(array_map(function (ReflectionParameter $parameter) {
$parameterType = $parameter->getType();
$resolveName = $parameter->getName();
// try to find out if it is a class or a simple parameter
if ($parameterType !== null && ($parameterType instanceof ReflectionNamedType) && !$parameterType->isBuiltin()) {
$resolveName = $parameterType->getName();
}
try {
$builtIn = $parameter->hasType() && ($parameter->getType() instanceof ReflectionNamedType)
&& $parameter->getType()->isBuiltin();
return $this->query($resolveName, !$builtIn);
} catch (QueryException $e) {
// Service not found, use the default value when available
if ($parameter->isDefaultValueAvailable()) {
return $parameter->getDefaultValue();
}
if ($parameterType !== null && ($parameterType instanceof ReflectionNamedType) && !$parameterType->isBuiltin()) {
$resolveName = $parameter->getName();
try {
return $this->query($resolveName);
} catch (QueryException $e2) {
// don't lose the error we got while trying to query by type
throw new QueryException($e->getMessage(), (int) $e->getCode(), $e);
}
}
throw $e;
}
}, $constructor->getParameters()))]]>
ArrayAccess
\stdClass
getCode()]]>
tar->extractInString($path)]]>
IEventListener
IEventListener
$trySession
DO_NOT_REMEMBER
PERMANENT_TOKEN
REMEMBER
TEMPORARY_TOKEN
WIPE_TOKEN
getExpires
getLastCheck
getLoginName
getName
getPassword
getRemember
getScope
setExpires
setLastCheck
setName
setPassword
setPasswordInvalid
setScope
setScope
setToken
setType
$row['provider_id'],
'uid' => $row['uid'],
'enabled' => 1 === (int) $row['enabled'],
];
}, $rows)]]>
]]>
providers]]>
providers]]>
[]
providers]]>
IProvider[]
providers]]>
$jobList
$jobList
\ArrayAccess
bool|mixed
bool|mixed
container->get($registration->getService());
} catch (Throwable $e) {
$this->logger->error('Could not load calendar provider ' . $registration->getService() . ': ' . $e->getMessage(), [
'exception' => $e,
]);
return [];
}
return $provider->getCalendars($principalUri, $calendarUris);
}, $context->getCalendarProviders())
)]]>
ICreateFromString[]
container->get($registration->getService());
} catch (Throwable $e) {
$this->logger->error('Could not load calendar provider ' . $registration->getService() . ': ' . $e->getMessage(), [
'exception' => $e,
]);
return [];
}
return $provider->getCalendars($principalUri, $calendarUris);
}, $context->getCalendarProviders())]]>
$serializedCallable
[LaravelClosure::class, OpisClosure::class]
$serializedCallable
$serializedCommand
(string)$id
delete($key)]]>
set($key, $value)]]>
$CONFIG
$CONFIG
request->server]]>
$searchOptions
getParams
$params['collation']
getParams
$params
$params['adapter']
$params['tablePrefix']
getCode())]]>
0
$s
IMigrationStep
functionBuilder->lower($x)]]>
$y
$y
getParams
$params['collation']
string
$alias
$groupBys
$selects
string
$string
l($type, $timestamp, [
'width' => $format,
])]]>
public function formatDateSpan($timestamp, $baseTimestamp = null, \OCP\IL10N $l = null) {
public function formatTimeSpan($timestamp, $baseTimestamp = null, \OCP\IL10N $l = null) {
l($type, $timestamp, [
'width' => $format,
])]]>
string
$timestamp
float
microtime(true)
stopQuery
execute()]]>
TemplateResponse
int
$template
$template
$template
$template
manager->getFileForToken($this->data['user_id'], $this->data['file_id'], $this->data['file_path'])]]>
getShareForToken
$uniqueUserIds, 'public' => $public]]]>
array{users: string[], public: bool}
deleteUserKey
null
null
null
bool
$providerId
folder]]>
Folder
$parentData
array
$path
\OC_Util::normalizeUnicode($path)
null
null
$searchQuery
[]
getIncomplete
insert
put
$data
$file
$file
self::SCAN_RECURSIVE_INCOMPLETE
$existingChildren
array[]
array
getStorageInfo($storageId)]]>
cache instanceof Cache]]>
array
array
$searchQuery
$user
get_class($provider) !== 'OCA\Files_Sharing\MountProvider'
get_class($provider) === 'OCA\Files_Sharing\MountProvider'
remoteStorageMounts
removeUserStorageMount
array
cacheInfoCache[$fileId]]]>
array{int, string, int}
\ArrayAccess
getStorage()]]>
findByNumericId($id)]]>
findByStorageId($id)]]>
Mount\MountPoint[]
Mount\MountPoint[]
\OC\Files\Storage\Storage|null
addStorageWrapper
wrap
\OCP\Files\Mount\IMountPoint
null
view->hash($type, $this->path, $raw)]]>
string
root->get($this->getFullPath($path))]]>
root->getByIdInPath((int)$id, $this->getPath())]]>
createNode($file->getPath(), $file);
}, $files)]]>
$node
\OC\Files\Node\Node
\OC\Files\Node\Node[]
\OC\Files\Node\Node[]
emit
emit
emit
emit
emit
emit
emit
emit
emit
emit
emit
emit
emit
__call(__FUNCTION__, func_get_args())]]>
$node
Folder
FileInfo
getChecksum
parent]]>
INode|IRootFolder
fileInfo]]>
$type
fileInfo]]>
fileInfo]]>
$folders
createNode($fullPath, $fileInfo, false)]]>
mountManager->findByNumericId($numericId)]]>
mountManager->findByStorageId($storageId)]]>
mountManager->findIn($mountPoint)]]>
user]]>
MountPoint[]
Node
\OC\Files\Mount\MountPoint[]
\OC\Files\Mount\MountPoint[]
\OC\User\User
user]]>
remove
false|string
$source
ClientResolver::_default_signature_provider()
ClientResolver::_default_signature_provider()
ClientResolver::_default_signature_provider()
Promise\promise_for(
new Credentials($key, $secret)
)
\Aws\or_chain([self::class, 'legacySignatureProvider'], ClientResolver::_default_signature_provider())
upload
\Aws\serialize($command)
null
string
string|false
!$permissions
copyFromStorage($sourceStorage, $sourceInternalPath . '/' . $file, $targetInternalPath . '/' . $file)]]>
cache]]>
cache]]>
propagator]]>
propagator]]>
scanner]]>
scanner]]>
updater]]>
updater]]>
ArrayCache
ArrayCache
getBody()]]>
fopen
null
new FailedCache()
true
getCache
verifyPath
$file
$space === false || is_null($space)
is_null($space)
$stat === false
scanner]]>
scanner]]>
\Normalizer::FORM_C
\Normalizer::FORM_C
\Normalizer::FORM_D
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
namesCache]]>
$result
$result
copyFromStorage($sourceStorage, $sourceInternalPath . '/' . $file, $targetInternalPath . '/' . $file, false, $isRename)]]>
$newUnencryptedSize
$result
bool
int
$lastChunkPos
$size
getWrapperStorage()->filetype($this->getUnjailedPath($path))]]>
bool
getWrapperStorage()->test()]]>
true
stream_close
stream_flush
!$isDefaultTemplates
$mimetype
execute()]]>
int
$mounts
\OC\Files\Mount\MountPoint[]
$mtime
acquireLock
changeLock
releaseLock
getContent())]]>
IEventListener
bool
$hide
$users
$user
\OC\User\User[]
emitter]]>
emitter]]>
emitter]]>
addToGroup
countUsersInGroup
deleteGroup
removeFromGroup
$groups
array_values($groups)
array_values($groups)
\OC\Group\Group[]
\OC\Group\Group[]
createGroup
getGroupDetails
isAdmin
string|resource
stream ?
$this->response->getBody()->detach():
$this->response->getBody()->getContents()]]>
false
false
false
$app['path']
$app['path']
null
getDN(X509::DN_OPENSSL)['CN']]]>
getDN(X509::DN_OPENSSL)['CN']]]>
getDN(true)['CN']]]>
getOnlyDefaultAliases
ExcludeFileByNameFilterIterator
ExcludeFoldersByPathFilterIterator
null|string
array|mixed
$matches[1]
get
[]
getIncomplete
-1,
'parent' => -1,
'name' => '',
'path' => '',
'size' => '0',
'mtime' => time(),
'storage_mtime' => time(),
'etag' => '',
'mimetype' => FileInfo::MIMETYPE_FOLDER,
'mimepart' => 'httpd',
'permissions' => Constants::PERMISSION_READ
])]]>
getOwner
getPermissions
new IteratorDirectory([])
new NullCache()
getCache
opendir
null
null
new IteratorDirectory([])
$callback()
$sessionCallback
$request
$limit === null
getMethod())]]>
$dummy
syslogId,
'MESSAGE=' . $this->logDetailsAsJSON($app, $message, $level))]]>
getPrefix() . $key, $value, $ttl)]]>
bool
mixed
mixed
mixed
mixed
\ArrayAccess
\ArrayAccess
[]
$maxPreviewImage
$semId
$sem
false|resource
null|string
ISimpleFile
height
height
preciseResizeCopy
resizeCopy
valid
width
width
$thumbnail === false ? null: $thumbnail
?IImage
\RedisCluster::OPT_SLAVE_FAILOVER
array
getBody()]]>
bool|string
$response
false
$arguments
$arguments
$counter % 100 === 0
userToNotify]]>
$out
$out
$out
\OC_APP
string
collectionName]]>
$provider instanceof Provider
getId()]]>
getMtime()]]>
getPermissions()]]>
hasPreview($data)]]>
null
request->server]]>
value)]]>
execute()]]>
execute()]]>
int
int
decrypt
encrypt
setIV
setIV
setPassword
setPassword
\OCP\Calendar\Resource\IManager
\OCP\Calendar\Room\IManager
\OCP\Files\Folder|null
get(IFile::class)]]>
get(IGroupManager::class)]]>
get(INavigationManager::class)]]>
get(IUserManager::class)]]>
get(IUserSession::class)]]>
get(\OCP\Encryption\IManager::class)]]>
\OC\Encryption\File
\OC\Encryption\Manager
\OC\Group\Manager
\OC\NavigationManager
\OC\User\Manager
\OC\User\Session
\OC\OCSClient
hasNoAppContainer]]>
appContainers[$namespace];]]>
\ArrayAccess
$value
$value
\ArrayAccess
$content !== ''
$type === 'pdo'
$vendor
dbPort)]]>
dbprettyname]]>
dbprettyname]]>
dbprettyname]]>
dbprettyname]]>
!self::isResharingAllowed()
getParents
getParents
getId()]]>
getId()]]>
(int)$data['id']
set
getParent
$id
update
\OCA\Circles\Api\v1\Circles
getChildren
FederatedShareProvider
ShareByMailProvider
$provider
$provider
shareByCircleProvider]]>
getProviderForType
null
null
null
null
null
null
$shareProviderClass
\OCA\Circles\ShareByCircleProvider
RoomShareProvider
\OCA\Circles\ShareByCircleProvider
\OCA\Talk\Share\RoomShareProvider
private $roomShareProvider = null;
private $shareByCircleProvider = null;
getLazyRootFolder
getLazyRootFolder
getLazyRootFolder
getLazyRootFolder
node]]>
getNode
$stream
get
listen
listen
getSupportedApps
\OCP\ITags
null
$from
$names
$tag
false
false
$style
$style
null
null
false
$script
$script
string
string
$appName
$appName
getInitialStates
$path
false
IEventListener
IUser|false
$backend
createUser
getUsersForUserValueCaseInsensitive
boolean|null
server]]>
server]]>
emit
emit
emit
emit
emit
int
null
$groupsList
$dir['path']
$dir['url']
null
null
$appId === null
$appId === null
\OC\InsufficientStorageException
$getType === self::ZIP_DIR
$getType === self::ZIP_DIR
get
get
$matches[0][$last_match]
$matches[1][$last_match]
$path
getQuota
bool|string
\Test\Util\User\Dummy
void
request->server]]>
container, $router, $routes)]]>
string
$column
headers)]]>
array{X-Request-Id: string, Cache-Control: string, Content-Security-Policy: string, Feature-Policy: string, X-Robots-Tag: string, Last-Modified?: string, ETag?: string, ...H}
\ArrayAccess
$step
array{0: int, 1: int, 2: int}
mixed
ArrayAccess
IteratorAggregate
\OC_App::getStorage($app)
ArrayAccess
array
\Iterator
mode]]>
null|IPreview::MODE_FILL|IPreview::MODE_COVER