Exemplo n.º 1
0
        /// <summary>
        /// Recebe o objeto desejado
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="codigo"></param>
        /// <returns></returns>
        public ReceberObjetoResponse <T> ReceberObjeto <T>(ReceberObjetoRequest <T> parametros) where T : ICodigoEntidade
        {
            // Permite que o hook interfira no processamento
            if (this.EventoReceber != null)
            {
                // Cria eventargs para permitir que o hook crie sua resposta
                PersistenciaArquivoEventoEventArgs eventArgs =
                    new PersistenciaArquivoEventoEventArgs()
                {
                    MensagemRequest = parametros
                };

                // Faz a chamada do hook
                this.EventoReceber(this, eventArgs);

                // Se tem resposta, é a que deve ser retornada
                if (eventArgs.MensagemResponse != null)
                {
                    return(eventArgs.MensagemResponse as ReceberObjetoResponse <T>);
                }
            }

            // Verifica se existe e retorna
            string chave = gerarChaveEntidade(typeof(T), parametros.CodigoObjeto);

            if (_persistenciaHelper.Entidades.ContainsKey(chave))
            {
                return new ReceberObjetoResponse <T>()
                       {
                           Objeto = desserializar <T>(_persistenciaHelper.Entidades[chave])
                       }
            }
            ;
            else
            {
                return new ReceberObjetoResponse <T>()
                       {
                           Objeto = default(T)
                       }
            };
        }
Exemplo n.º 2
0
 public ReceberObjetoResponse <T> ReceberObjeto <T>(ReceberObjetoRequest <T> parametros) where T : ICodigoEntidade
 {
     // Repassa a mensagem
     return(localizarHelper(typeof(T)).Instancia.ReceberObjeto <T>(parametros));
 }