/**
  * @param object $entity
  * @return string
  * @throws EntityNotSupported
  */
 public function render($entity)
 {
     $this->registry->freeze();
     foreach ($this->registry->getMaps() as $map) {
         if ($map->supports($entity)) {
             $document = $this->createDocument();
             $map->map($document, $entity);
             return $document->render();
         }
     }
     throw new EntityNotSupported($entity, $this->registry);
 }
Example #2
0
 /**
  * @depends testConstruct
  */
 public function testFreeze(Registry $registry)
 {
     $registry->register(new Map());
     $this->assertCount(1, $registry->getMaps());
     $registry->freeze();
     $this->assertTrue($registry->isFrozen());
     $this->assertCount(1, $registry->getMaps());
     $registryMaps = $registry->getMaps();
     $firstMap = reset($registryMaps);
     $this->assertEquals($registry->getRouter(), $firstMap->getRouter());
     return $registry;
 }