Beispiel #1
0
 /**
  * Construit la pioche
  * @param Configuration $configuration
  */
 public function __construct(Configuration $configuration)
 {
     $configurationArray = $configuration->toArray();
     foreach ($configurationArray['letters'] as $letter => $data) {
         for ($i = 0; $i < $data['count']; $i++) {
             $this->push(new LetterTile($letter, $data['score']));
         }
     }
 }
Beispiel #2
0
 /**
  * Construit un nouveau dictionnaire
  * @param Configuration $configuration La configuration globale de l'application
  * @param Language $language La langue du dictionnaire
  * @throws InvalidArgumentException
  * @throws LoadFileException
  */
 public function __construct(Configuration $configuration, Language $language)
 {
     if ($configuration == NULL) {
         throw new InvalidArgumentException('$configuration arg cannot be null');
     }
     if ($language == NULL) {
         throw new InvalidArgumentException('$language arg cannot be null');
     }
     $filepath = $configuration->get('dictionaries:path') . DIRECTORY_SEPARATOR . $language . '.txt';
     if (!is_readable($filepath)) {
         throw new LoadFileException('Cannot read the file ' . $filepath);
     }
     $this->language = $language;
     $this->content = file_get_contents($filepath);
 }
Beispiel #3
0
 /**
  * Construit un objet de configuration
  * @param type $filename
  * @throws InvalidArgumentException
  * @throws LoadFileException
  */
 public function __construct($filename)
 {
     if ($filename == NULL || !is_string($filename)) {
         throw new InvalidArgumentException('$filename arg cannot be null and must be a string');
     }
     if (!is_readable($filename)) {
         throw new LoadFileException('Cannot read the file ' . $filename);
     }
     $this->filename = $filename;
     $values = Yaml::parse(file_get_contents($filename));
     if (array_key_exists('extends', $values)) {
         $extendsFilename = dirname($filename) . DIRECTORY_SEPARATOR . $values['extends'];
         if (!is_readable($extendsFilename)) {
             throw new LoadFileException('Cannot read the file ' . $extendsFilename);
         }
         $extends = new Configuration($extendsFilename);
         $values = array_replace_recursive($extends->toArray(), $values);
     }
     $this->values = $values;
 }