コード例 #1
0
ファイル: ContainerTest.php プロジェクト: onoi/blob-store
 public function testExpiry()
 {
     $instance = new Container('Foo', array());
     $instance->setExpiryInSeconds(42);
     $this->assertSame(42, $instance->getExpiry());
 }
コード例 #2
0
ファイル: BlobStoreTest.php プロジェクト: Rikuforever/wiki
 public function testSaveContainerWithExpiry()
 {
     $container = array('Foobar', new \stdClass(), array());
     $this->cache->expects($this->once())->method('save')->with($this->equalTo('Foo:bar'), $this->anything(), $this->equalTo(42));
     $container = new Container('Foo:bar', $container);
     $container->setExpiryInSeconds(42);
     $instance = new BlobStore('Foo', $this->cache);
     $instance->save($container);
 }
コード例 #3
0
ファイル: BlobStore.php プロジェクト: Rikuforever/wiki
 /**
  * @since 1.0
  *
  * @param string $id
  *
  * @return Container
  */
 public function read($id)
 {
     $id = $this->getKey($id);
     // If possible use the raw data from the internal cache
     // without unserialization
     if ($this->internalCache->contains($id)) {
         $data = $this->internalCache->fetch($id);
     } elseif ($this->cache->contains($id)) {
         $data = unserialize($this->cache->fetch($id));
         $this->internalCache->save($id, $data);
     } else {
         $data = array();
     }
     $container = new Container($id, (array) $data);
     $container->setExpiryInSeconds($this->expiry);
     return $container;
 }