Exemplo n.º 1
0
        /// <summary>
        /// Solicita a execução do echo
        /// </summary>
        /// <param name="parametros"></param>
        /// <returns></returns>
        public ExecutarEchoResponse ExecutarEcho(ExecutarEchoRequest parametros)
        {
            // Prepara resposta
            ExecutarEchoResponse resposta =
                new ExecutarEchoResponse()
            {
                CodigoMensagemRequest = parametros.CodigoMensagem
            };

            // Executa de acordo com o pedido
            switch (parametros.TipoFuncao)
            {
            case ExecutarEchoTipoFuncaoEnum.EcoarMensagem:
                if (this.EventoEcho != null)
                {
                    this.EventoEcho(this, new EchoEventArgs()
                    {
                        Mensagem = parametros.Mensagem
                    });
                }
                break;

            case ExecutarEchoTipoFuncaoEnum.LigarTimer:
                if (_timer != null)
                {
                    // Salva mensagem que será informada no timer
                    _mensagemTimer = parametros.Mensagem;

                    // Cria o timer
                    _timer =
                        new Timer(
                            new TimerCallback(timerCallback),
                            null,
                            new TimeSpan(0, 0, parametros.TempoTimer),
                            new TimeSpan(0, 0, parametros.TempoTimer));
                }
                break;

            case ExecutarEchoTipoFuncaoEnum.DesligarTimer:
                if (_timer != null)
                {
                    // Finaliza o timer
                    _timer.Dispose();
                    _timer = null;
                }
                break;
            }

            // Retorna
            return(resposta);
        }
Exemplo n.º 2
0
        private static void testes()
        {
            IServicoMensageria servicoMensageria = Ativador.Get <IServicoMensageria>();

            AutenticarUsuarioResponse responseAutenticacao =
                (AutenticarUsuarioResponse)
                servicoMensageria.ProcessarMensagem(
                    new AutenticarUsuarioRequest()
            {
                CodigoUsuario = "Admin",
                Senha         = "123"
            });

            CallbackEvento callbackEvento = new CallbackEvento();

            callbackEvento.Evento  += new EventHandler <EventoEventArgs>(callbackEvento_Evento);
            callbackEvento.Evento2 += new EventHandler <EventArgs>(callbackEvento_Evento2);

            IServicoMensageriaComCallback servicoMensageriaComCallback =
                Ativador.Get <IServicoMensageriaComCallback>(
                    callbackEvento, responseAutenticacao.Sessao);

            servicoMensageriaComCallback.AssinarEvento(
                new AssinarEventoRequest()
            {
                CodigoSessao = responseAutenticacao.Sessao.CodigoSessao,
                TipoServico  = typeof(IServicoEcho).FullName + ", " + typeof(IServicoEcho).Assembly.FullName,
                NomeEvento   = "EventoEcho"
            });

            ExecutarEchoResponse responseEcho =
                (ExecutarEchoResponse)
                servicoMensageria.ProcessarMensagem(
                    new ExecutarEchoRequest()
            {
                TipoFuncao = ExecutarEchoTipoFuncaoEnum.EcoarMensagem,
                Mensagem   = "teste"
            });
        }