}
}
- $valuesByKeyFetched = $this->backend->getMulti( $keys, $flags );
+ $valuesByKeyFetched = $this->backend->getMulti( $keysMissing, $flags );
$this->setMulti( $valuesByKeyFetched, self::TTL_INDEFINITE, self::WRITE_CACHE_ONLY );
return $valuesByKeyCached + $valuesByKeyFetched;
public function set( $key, $value, $exptime = 0, $flags = 0 ) {
$this->procCache->set( $key, $value, $exptime, $flags );
- if ( ( $flags & self::WRITE_CACHE_ONLY ) != self::WRITE_CACHE_ONLY ) {
+
+ if ( !$this->fieldHasFlags( $flags, self::WRITE_CACHE_ONLY ) ) {
$this->backend->set( $key, $value, $exptime, $flags );
}
public function delete( $key, $flags = 0 ) {
$this->procCache->delete( $key, $flags );
- if ( ( $flags & self::WRITE_CACHE_ONLY ) != self::WRITE_CACHE_ONLY ) {
+
+ if ( !$this->fieldHasFlags( $flags, self::WRITE_CACHE_ONLY ) ) {
$this->backend->delete( $key, $flags );
}
public function setMulti( array $data, $exptime = 0, $flags = 0 ) {
$this->procCache->setMulti( $data, $exptime, $flags );
- if ( ( $flags & self::WRITE_CACHE_ONLY ) != self::WRITE_CACHE_ONLY ) {
+
+ if ( !$this->fieldHasFlags( $flags, self::WRITE_CACHE_ONLY ) ) {
return $this->backend->setMulti( $data, $exptime, $flags );
}
public function deleteMulti( array $keys, $flags = 0 ) {
$this->procCache->deleteMulti( $keys, $flags );
- if ( ( $flags & self::WRITE_CACHE_ONLY ) != self::WRITE_CACHE_ONLY ) {
+
+ if ( !$this->fieldHasFlags( $flags, self::WRITE_CACHE_ONLY ) ) {
return $this->backend->deleteMulti( $keys, $flags );
}
public function changeTTLMulti( array $keys, $exptime, $flags = 0 ) {
$this->procCache->changeTTLMulti( $keys, $exptime, $flags );
- if ( ( $flags & self::WRITE_CACHE_ONLY ) != self::WRITE_CACHE_ONLY ) {
+
+ if ( !$this->fieldHasFlags( $flags, self::WRITE_CACHE_ONLY ) ) {
return $this->backend->changeTTLMulti( $keys, $exptime, $flags );
}
return true;
}
- public function incr( $key, $value = 1 ) {
+ public function incr( $key, $value = 1, $flags = 0 ) {
$this->procCache->delete( $key );
- return $this->backend->incr( $key, $value );
+ return $this->backend->incr( $key, $value, $flags );
}
- public function decr( $key, $value = 1 ) {
+ public function decr( $key, $value = 1, $flags = 0 ) {
$this->procCache->delete( $key );
- return $this->backend->decr( $key, $value );
+ return $this->backend->decr( $key, $value, $flags );
}
- public function incrWithInit( $key, $ttl, $value = 1, $init = 1 ) {
+ public function incrWithInit( $key, $exptime, $value = 1, $init = null, $flags = 0 ) {
$this->procCache->delete( $key );
- return $this->backend->incrWithInit( $key, $ttl, $value, $init );
+ return $this->backend->incrWithInit( $key, $exptime, $value, $init, $flags );
}
public function addBusyCallback( callable $workCallback ) {