// fileprops cache
protected $fileProps = [];
- // current user
- protected $user, $userId, $isLoggedIn;
+ // current user info
+ protected $userId, $isLoggedIn;
/**
* Represents a temporary filestore, with metadata in the database.
* (should replace it eventually).
*
* @param FileRepo $repo
- * @param User $user (default null)
+ * @param User $user
*/
- public function __construct( FileRepo $repo, $user = null ) {
+ public function __construct( FileRepo $repo, User $user ) {
// this might change based on wiki's configuration.
$this->repo = $repo;
- // if a user was passed, use it. otherwise, attempt to use the global.
- // this keeps FileRepo from breaking when it creates an UploadStash object
- if ( $user ) {
- $this->user = $user;
- } else {
- global $wgUser;
- $this->user = $wgUser;
- }
-
- if ( is_object( $this->user ) ) {
- $this->userId = $this->user->getId();
- $this->isLoggedIn = $this->user->isLoggedIn();
- }
+ // We only need the logged in status and user id.
+ $this->userId = $user->getId();
+ $this->isLoggedIn = $user->isLoggedIn();
}
/**
// insert the file metadata into the db.
wfDebug( __METHOD__ . " inserting $stashPath under $key\n" );
- $dbw = $this->repo->getMasterDb();
+ $dbw = $this->repo->getMasterDB();
$serializedFileProps = serialize( $fileProps );
if ( strlen( $serializedFileProps ) > self::MAX_US_PROPS_SIZE ) {
}
wfDebug( __METHOD__ . ' clearing all rows for user ' . $this->userId . "\n" );
- $dbw = $this->repo->getMasterDb();
+ $dbw = $this->repo->getMasterDB();
$dbw->delete(
'uploadstash',
[ 'us_user' => $this->userId ],
. ' No user is logged in, files must belong to users' );
}
- $dbw = $this->repo->getMasterDb();
+ $dbw = $this->repo->getMasterDB();
// this is a cheap query. it runs on the master so that this function
// still works when there's lag. It won't be called all that often.
// Ensure we have the UploadStashFile loaded for this key
$this->getFile( $key, true );
- $dbw = $this->repo->getMasterDb();
+ $dbw = $this->repo->getMasterDB();
$dbw->delete(
'uploadstash',
. ' No user is logged in, files must belong to users' );
}
- $dbr = $this->repo->getSlaveDb();
+ $dbr = $this->repo->getSlaveDB();
$res = $dbr->select(
'uploadstash',
'us_key',
* Helper function: do the actual database query to fetch file metadata.
*
* @param string $key
- * @param int $readFromDB Constant (default: DB_SLAVE)
+ * @param int $readFromDB Constant (default: DB_REPLICA)
* @return bool
*/
- protected function fetchFileMetadata( $key, $readFromDB = DB_SLAVE ) {
+ protected function fetchFileMetadata( $key, $readFromDB = DB_REPLICA ) {
// populate $fileMetadata[$key]
$dbr = null;
if ( $readFromDB === DB_MASTER ) {
// sometimes reading from the master is necessary, if there's replication lag.
- $dbr = $this->repo->getMasterDb();
+ $dbr = $this->repo->getMasterDB();
} else {
- $dbr = $this->repo->getSlaveDb();
+ $dbr = $this->repo->getSlaveDB();
}
$row = $dbr->selectRow(