Example #1
0
 public function __construct(Configuration $config, Watch $watcher)
 {
     $this->config = $config;
     $collections = new Generate\Collections((array) $config->getModelPath(), $this);
     $this->fixPath($collections);
     $target = $config->getLoader();
     $namespace = "ActiveMongo2\\Namspace" . uniqid(true);
     $rnd = uniqid();
     $valns = $collections->getValidatorNS();
     $validator = $collections->getValidator();
     class_exists("agpmedia\\FileUtil\\File");
     // preload class
     $args = compact('docs', 'namespace', 'mapper', 'indexes', 'self', 'collections', 'valns', 'rnd', 'validator');
     $code = Template\Templates::get('documents')->render($args, true);
     if (strlen($code) >= 1024 * 1024) {
         File::write($target, $code);
     } else {
         File::write($target, FixCode::fix($code));
     }
     $this->writeFileWatch($watcher, $collections);
 }