Example #1
0
 /**
  * Fábrica de Reflection.
  *
  * @param string $source
  * @param Connect $connect
  * @return Reflection
  * @throws IllegalArgumentException
  * */
 public static function factory($source, Connect $connect)
 {
     $annon = NULL;
     if (is_string($source)) {
         $annon = ValueObjectAbstract::factory($source, array())->annotation();
     } elseif ($source instanceof ValueObjectAbstract) {
         $annon = $source->annotation();
     } else {
         throw new IllegalArgumentException(self::REFLECTION_INVALID_SOURCE);
     }
     $reflect = new self($annon, $connect);
     $reflect->_source = $connect->getSource();
     $reflect->_loadProperties($reflect->_source);
     return $reflect;
 }