<?php
+/**
+ * @defgroup FileRepo File Repository
+ *
+ * @brief This module handles how MediaWiki interacts with filesystems.
+ *
+ * @details
+ */
+
/**
* Base code for file repositories.
*
* @ingroup FileRepo
*/
-/**
- * @defgroup FileRepo FileRepo
- */
-
/**
* Prioritized list of file repositories
*
<?php
+/**
+ * @defgroup FileBackend File backend
+ * @ingroup FileRepo
+ *
+ * This module regroup classes meant for MediaWiki to interacts with
+ */
+
/**
* @file
* @ingroup FileBackend
/**
* Base class for all file backend classes (including multi-write backends).
+ *
* This class defines the methods as abstract that subclasses must implement.
* Outside callers can assume that all backends will have these functions.
*
}
/**
- * Base class for all backends associated with a particular storage medium.
+ * @brief Base class for all backends associated with a particular storage medium.
+ *
* This class defines the methods as abstract that subclasses must implement.
* Outside callers should *not* use functions with "Internal" in the name.
*
}
/**
- * @see FileBackend::getFileList()
+ * @copydoc FileBackend::getFileList()
*/
final public function getFileList( array $params ) {
list( $fullCont, $dir, $shard ) = $this->resolveStoragePath( $params['dir'] );
* FileBackendStore helper function to handle file listings that span container shards.
* Do not use this class from places outside of FileBackendStore.
*
- * @ingroup FileBackendStore
+ * @ingroup FileBackend
*/
class FileBackendStoreShardListIterator implements Iterator {
/* @var FileBackendStore */
<?php
/**
+ * Manage locks using a lock daemon server.
+ *
* Version of LockManager based on using lock daemon servers.
* This is meant for multi-wiki systems that may share files.
* All locks are non-blocking, which avoids deadlocks.
<?php
+/**
+ * @defgroup LockManager Lock management
+ * @ingroup FileBackend
+ */
+
/**
* @file
* @ingroup LockManager
/**
* Class for handling resource locking.
+ *
* Locks on resource keys can either be shared or exclusive.
- *
+ *
* Implementations must keep track of what is locked by this proccess
* in-memory and support nested locking calls (using reference counting).
* At least LOCK_UW and LOCK_EX must be implemented. LOCK_SH can be a no-op.
* Locks should either be non-blocking or have low wait timeouts.
- *
+ *
* Subclasses should avoid throwing exceptions at all costs.
*
* @ingroup LockManager
}
/**
+ * Self releasing locks
+ *
* LockManager helper class to handle scoped locks, which
* release when an object is destroyed or goes out of scope.
*
* Deleted file in the 'filearchive' table
*
* @file
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
/**
* Class representing a row of the 'filearchive' table
*
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
class ArchivedFile {
/**#@+
<?php
+/**
+ * @defgroup FileAbstraction File abstraction
+ * @ingroup FileRepo
+ *
+ * Represents files in a repository.
+ */
+
/**
* Base code for files.
*
* @file
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
/**
* The convenience functions wfLocalFile() and wfFindFile() should be sufficient
* in most cases.
*
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
abstract class File {
const DELETED_FILE = 1;
* Foreign file accessible through api.php requests.
*
* @file
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
/**
* Foreign file accessible through api.php requests.
* Very hacky and inefficient, do not use :D
*
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
class ForeignAPIFile extends File {
private $mExists;
* Foreign file with an accessible MediaWiki database
*
* @file
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
/**
* Foreign file with an accessible MediaWiki database
*
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
class ForeignDBFile extends LocalFile {
* Local file in the wiki's own database
*
* @file
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
/**
* The convenience functions wfLocalFile() and wfFindFile() should be sufficient
* in most cases.
*
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
class LocalFile extends File {
/**#@+
/**
* Helper class for file deletion
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
class LocalFileDeleteBatch {
/**
* Helper class for file undeletion
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
class LocalFileRestoreBatch {
/**
/**
* Helper class for file movement
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
class LocalFileMoveBatch {
* Old file in the oldimage table
*
* @file
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
/**
* Class to represent a file in the oldimage table
*
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
class OldLocalFile extends LocalFile {
var $requestedTime, $archive_name;
* File without associated database record
*
* @file
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
/**
* lots of functions missing. It is used by the WebStore extension in the
* standalone role.
*
- * @ingroup FileRepo
+ * @ingroup FileAbstraction
*/
class UnregisteredLocalFile extends File {
var $title, $path, $mime, $dims;