Esempio n. 1
0
 public function match(Resource $resource)
 {
     if (!$resource->getResponse()->isContentType($this->allowedMimeType)) {
         $mime = $resource->getResponse()->getContentType();
         $resource->setFiltered(true, "Mime type '{$mime}' not allowed");
         return true;
     }
     return false;
 }
Esempio n. 2
0
 /**
  * @covers VDB\Spider\Resource::setFiltered
  * @covers VDB\Spider\Resource::isFiltered
  * @covers VDB\Spider\Resource::getFilterReason
  */
 public function testSetFiltered()
 {
     $this->resource->setFiltered(true, 'goodReason');
     $this->assertTrue($this->resource->isFiltered());
     $this->assertEquals('goodReason', $this->resource->getFilterReason());
 }
Esempio n. 3
0
 /**
  * Add a Resource to the processing queue
  *
  * @param Resource $resource
  * @return void
  */
 protected function addToProcessQueue(Resource $resource)
 {
     if ($this->maxQueueSize != 0 && $this->currentQueueSize >= $this->maxQueueSize) {
         $resource->setFiltered(true, 'Maximum Queue Size of ' . $this->maxQueueSize . ' reached');
         $this->getStatsHandler()->addToFiltered($resource);
         throw new QueueException('Maximum Queue Size of ' . $this->maxQueueSize . ' reached');
     }
     $this->currentQueueSize++;
     $this->getPersistenceHandler()->persist($resource);
     $this->getStatsHandler()->addToQueued($resource->getUri());
 }