An error occurred while loading the file. Please try again.
-
Guillaume Perréal authored1c471ae3
<?php
/*
* © 2016 IRSTEA
* Guillaume Perréal <guillaume.perreal@irstea.fr>
* Tous droits réservés.
*/
namespace Irstea\PlantUmlBundle\Model;
use Irstea\PlantUmlBundle\Finder\FinderInterface;
use Irstea\PlantUmlBundle\Writer\WriterInterface;
/**
* Description of Graph
*
* @author Guillaume Perréal <guillaume.perreal@irstea.fr>
*/
class Graph implements GraphInterface
{
/**
* @var ClassVisitorInterface
*/
private $visitor;
/**
* @var FinderInterface
*/
private $finder;
public function __construct(ClassVisitorInterface $visitor, FinderInterface $finder)
{
$this->visitor = $visitor;
$this->finder = $finder;
}
public function visitAll()
{
foreach($this->finder->getIterator() as $class) {
$this->visitor->visitClass($class);
}
}
public function outputTo(WriterInterface $writer)
{
$writer->write("@startuml@\n");
$this->visitor->outputTo($writer);
$writer->write("@enduml@\n");
return $this;
}
}