Exemple #1
0
        public AssinarEventosSTMResponse AssinarEventosSTM(AssinarEventosSTMRequest request)
        {
            AssinarEventosSTMResponse response = new AssinarEventosSTMResponse();

            response.Status = "OK";

            try
            {
                response.Status = "ERRO";

                IServicoSTMCallback subscriber = Ativador.GetCallback <IServicoSTMCallback>();

                logger.Debug("Recebeu pedido de assinatura de mensagens: " + ((IContextChannel)subscriber).RemoteAddress.ToString());

                // Guarda a referencia do assinante na lista interna de
                // assinantes
                if (subscriber != null)
                {
                    lock (_subscribers)
                    {
                        _subscribers.Add(subscriber);
                    }

                    STMSubscriberWorker worker = new STMSubscriberWorker(subscriber);
                    worker.Start();

                    lock (_workers)
                    {
                        _workers.Add(worker);
                    }
                }
            }
            catch (Exception ex)
            {
                logger.Error("AssinarEventosSTM() Erro: " + ex.Message, ex);

                response.Status   = "ERRO";
                response.Mensagem = ex.Message;
            }

            return(response);
        }
Exemple #2
0
        private void button1_Click(object sender, EventArgs e)
        {
            IServicoSTM stmserver = Ativador.Get <IServicoSTM>(this);

            AssinarEventosSTMResponse responset = stmserver.AssinarEventosSTM(new AssinarEventosSTMRequest());
        }