public function mergeNextPage(ResourceCollection $nextPage)
 {
     foreach ($nextPage as $resource) {
         $this->add($resource);
     }
     $this->nextUri = $nextPage->getNextUri();
 }
Exemplo n.º 2
0
 public function test_apply_ManyMaps()
 {
     $map = new ResourceMap();
     $map->map(['b', 'c'], 'new');
     $map->map('a', 'n');
     $collection = new ResourceCollection();
     $collection->add('1')->add('b')->add('c')->add('a');
     $map->apply($collection);
     $this->assertEquals(['1', 'new', 'n'], $collection->get());
 }
Exemplo n.º 3
0
 /**
  * @param ResourceCollection $collection
  */
 public function apply(ResourceCollection $collection)
 {
     foreach ($this->map as $newFile => $oldFile) {
         if (is_string($oldFile)) {
             $collection->replace($oldFile, $newFile);
             continue;
         }
         $firstResource = array_shift($oldFile);
         $collection->replace($firstResource, $newFile);
         $collection->remove($oldFile);
     }
 }
 /**
  * Maps resources request to a ResourceCollection
  *
  * @return ResourceCollection
  */
 public function map($context, array $resources)
 {
     $collection = new ResourceCollection($context);
     foreach ($resources as $location => $resource) {
         if (is_int($location)) {
             $collection->add(new Resource($resource, $this->locator->locate($context, $resource)));
         } else {
             $collection->add(new Resource($resource, ltrim($location, '/')));
         }
     }
     return $collection;
 }
Exemplo n.º 5
0
 /**
  * @param TransformerAbstract $transformer
  * @param                     $object
  * @param string              $apiVersion
  *
  * @return Scope
  */
 protected function initScope(TransformerAbstract $transformer, $object, $apiVersion = "v2")
 {
     $resource = new Item($object, $transformer);
     $scope = $this->fractal->createData($resource);
     $shortName = $transformer->getCurrentResourceKey();
     if (!($dunglasResource = $this->resourceCollection->getResourceForShortNameWithVersion(ucfirst($shortName), $apiVersion))) {
         throw new \InvalidArgumentException(sprintf('The resource "%s" cannot be found.', $shortName));
     }
     $scope->setDunglasResource($dunglasResource);
     return $scope;
 }
Exemplo n.º 6
0
<?php

include 'init.php';
?>
<html>
	<head>
		<title>Inline images testing</title>
<?php 
$Resources = new ResourceCollection('CSS');
$Resources->addFile('css/background-inline.css')->handler(function ($string, $config) {
    $dataURI = new dataURI($string);
    return '/*' . "\r\n" . $dataURI->getMhtmlContent() . '*/' . $dataURI->getProcessedContent();
})->inline()->flush();
?>
</head>
	<body>
		<div>This square should be gray</div>
	</body>
</html>
Exemplo n.º 7
0
 public function test_iteration()
 {
     $expected = ['a', 'b', 'c'];
     $curr = 0;
     $collection = new ResourceCollection();
     $collection->add('a');
     $collection->add('b');
     $collection->add('c');
     foreach ($collection as $value) {
         $this->assertEquals($expected[$curr++], $value);
     }
     $this->assertEquals(count($expected), $curr);
 }
Exemplo n.º 8
0
 /** {@inheritdoc} */
 public function count()
 {
     return $this->resourceCollection->count();
 }