summaryrefslogtreecommitdiff
path: root/includes/filerepo/ForeignDBViaLBRepo.php
diff options
context:
space:
mode:
authorPierre Schmitz <pierre@archlinux.de>2008-08-15 01:29:47 +0200
committerPierre Schmitz <pierre@archlinux.de>2008-08-15 01:29:47 +0200
commit370e83bb0dfd0c70de268c93bf07ad5ee0897192 (patch)
tree491674f4c242e4d6ba0d04eafa305174c35a3391 /includes/filerepo/ForeignDBViaLBRepo.php
parentf4debf0f12d0524d2b2427c55ea3f16b680fad97 (diff)
Update auf 1.13.0
Diffstat (limited to 'includes/filerepo/ForeignDBViaLBRepo.php')
-rw-r--r--includes/filerepo/ForeignDBViaLBRepo.php39
1 files changed, 39 insertions, 0 deletions
diff --git a/includes/filerepo/ForeignDBViaLBRepo.php b/includes/filerepo/ForeignDBViaLBRepo.php
new file mode 100644
index 00000000..13c9f434
--- /dev/null
+++ b/includes/filerepo/ForeignDBViaLBRepo.php
@@ -0,0 +1,39 @@
+<?php
+
+/**
+ * A foreign repository with a MediaWiki database accessible via the configured LBFactory
+ * @ingroup FileRepo
+ */
+class ForeignDBViaLBRepo extends LocalRepo {
+ var $wiki, $dbName, $tablePrefix;
+ var $fileFactory = array( 'ForeignDBFile', 'newFromTitle' );
+ var $fileFromRowFactory = array( 'ForeignDBFile', 'newFromRow' );
+
+ function __construct( $info ) {
+ parent::__construct( $info );
+ $this->wiki = $info['wiki'];
+ list( $this->dbName, $this->tablePrefix ) = wfSplitWikiID( $this->wiki );
+ $this->hasSharedCache = $info['hasSharedCache'];
+ }
+
+ function getMasterDB() {
+ return wfGetDB( DB_MASTER, array(), $this->wiki );
+ }
+
+ function getSlaveDB() {
+ return wfGetDB( DB_SLAVE, array(), $this->wiki );
+ }
+ function hasSharedCache() {
+ return $this->hasSharedCache;
+ }
+
+ function store( $srcPath, $dstZone, $dstRel, $flags = 0 ) {
+ throw new MWException( get_class($this) . ': write operations are not supported' );
+ }
+ function publish( $srcPath, $dstRel, $archiveRel, $flags = 0 ) {
+ throw new MWException( get_class($this) . ': write operations are not supported' );
+ }
+ function deleteBatch( $fileMap ) {
+ throw new MWException( get_class($this) . ': write operations are not supported' );
+ }
+}