예제 #1
0
 /**
  * Retorna o valueObject com a senha criptografada e o usuário setados.
  *
  * @return ValueObjectAbstract
  */
 private function _getIdentityValueObject()
 {
     #cria uma nova instancia do valueObject.
     $valueObject = $this->_valueObject->factory();
     #seta o identity.
     $setIdentity = $this->_getAcessorMethod('set', $this->_attrIdentity);
     $valueObject->{$setIdentity}($this->getIdenttity());
     #seta a senha
     $setPassword = $this->_getAcessorMethod('set', $this->_attrCredential);
     $valueObject->{$setPassword}($this->_getPassword());
     return $valueObject;
 }
예제 #2
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;
 }
예제 #3
0
 /**
  * Fábrica de ValueObject
  *
  * Cria ValueObject com base no Controller informado.
  * Um array com chave correspondente (attr=value, vide ValueObject::load)
  * poderá ser informado, assim o ValueObject criado já terá os valores definidos.
  *
  * @param Controller $target
  * @param string[] $data
  * @return ValueObjectAbstract
  * @todo refatorar este metodo colocando-o na fabrica de VO, aqui ficarah apenas a def do NS
  * @example ControllerAbstract::getValueObject
  * @code
  *  <?php
  *      // Recupera FooValueObject
  *      var_dump($this->getValueObject(FooValueObject));
  *
  *      // Recupera e gera carga inicial no BarValueObject, onde esse é composto pelos atributos co_bar e no_bar.
  *      var_dump($this->getValueObject(BarValueObject, array('co_bar' => 0123, 'no_bar' => 'bar')));
  *  ?>
  * @encode
  * */
 public function getValueObject($target = NULL, $data = NULL)
 {
     return ValueObjectAbstract::factory($target ?: $this, $data, $this->meta());
 }
예제 #4
0
 /**
  * retorna todos os parametros. Se for informado o scopo, retornara somente os parametros
  * do scopo passado
  *
  * @example Request::getParams
  *          @code
  *            $this->request()->getParams('post');
  *          @endcode
  *
  * @param string $scope
  * @return mixed[]
  * */
 public function getParams($scope = NULL)
 {
     $scope = $scope ?: self::$_defaultStorageParams;
     self::isValidMethod($scope);
     if (isset($this->_params[$scope])) {
         if ('files' == $scope) {
             $arrVOFiles = array();
             foreach ($this->_params[$scope] as $key => $value) {
                 $arrVOFiles[$key] = ValueObjectAbstract::factory('br\\gov\\sial\\core\\lang\\TFile')->loadData($value)->setSource($value['tmp_name']);
             }
             return $arrVOFiles;
         } else {
             return $this->_params[$scope];
         }
     }
     return NULL;
 }
예제 #5
0
 /**
  * Retorna um ValueObject para cada linha recuperada do repositório e
  * NULL quando não houver mais registros para retorno.
  * @example ModelAbstract::getValueObject
  * @code
  * <?php
  *     ...
  *     $model->getValueObject();
  *     ...
  * ?>
  * @endcode
  * @return ValueObjectAbstract
  * */
 public function getValueObject()
 {
     $tmpResult = $this->_resultSet->fetch();
     if (NULL == $tmpResult) {
         $this->_isValueObjectNull = TRUE;
     }
     return ValueObjectAbstract::factory($this, $tmpResult);
 }