/// <summary> /// Faz login com usuário de teste e mantem a sessão /// </summary> private SessaoInfo receberSessaoUsuarioTeste() { // Se a sessão já estiver carregada, retorna ela if (_sessaoUsuarioTeste != null) { return(_sessaoUsuarioTeste); } // Faz a autenticacao AutenticarUsuarioResponse respostaAutenticarUsuario = (AutenticarUsuarioResponse) _servicoMensageria.ProcessarMensagem( new AutenticarUsuarioRequest() { CodigoUsuario = _consUsuarioTeste, Senha = _consUsuarioTesteSenha, CodigoSistemaCliente = "teste" }); // Se nao autenticou, dispara erro if (respostaAutenticarUsuario.StatusResposta != MensagemResponseStatusEnum.OK) { throw new Exception(respostaAutenticarUsuario.DescricaoResposta); } // Salva no cache _sessaoUsuarioTeste = respostaAutenticarUsuario.Sessao; // Retorna a sessao return(respostaAutenticarUsuario.Sessao); }
/// <summary> /// Construtor /// </summary> public InterfaceContextoOMS(SessaoInfo sessaoInfo) { // Inicializa this.SessaoInfo = sessaoInfo; //// Cria informações da sessão com o servidor de ordens this.SessaoOrdensInfo = new SessaoOrdensInfo() { CodigoSessao = Guid.NewGuid().ToString() }; // Cria o callback para o serviço de ordens this.CallbackEvento = new CallbackEvento(); // Registra o evento para tratamento das mensagens this.CallbackEvento.Evento += new EventHandler <EventoEventArgs>(CallbackEvento_Evento); // Faz a assinatura no servidor de ordens this.ServicoOrdensServidor = Ativador.Get <IServicoOrdensServidor>(this.CallbackEvento, this.SessaoOrdensInfo); // Carrega os caches this.CarregarPerfis(); this.CarregarPermissoes(); this.CarregarUsuarioGrupos(); }
/// <summary> /// Registro Local /// </summary> /// <param name="parametros"></param> /// <param name="callback"></param> public void Registrar(object parametros, ICallbackEvento callback) { // Inicializa SessaoInfo sessaoInfo = (SessaoInfo)parametros; // Adiciona na coleção _clientes.Add( sessaoInfo.CodigoSessao, new ServicoMensageriaClienteHelper() { Callback = callback, Sessao = sessaoInfo }); }
/// <summary> /// Registro pelo WCF /// </summary> /// <param name="parametros"></param> public void Registrar(object parametros) { // Inicializa SessaoInfo sessaoInfo = (SessaoInfo)parametros; // Recebe o objeto de callback ICallbackEvento callback = OperationContext.Current.GetCallbackChannel <ICallbackEvento>(); // Adiciona na coleção _clientes.Add( sessaoInfo.CodigoSessao, new ServicoMensageriaClienteHelper() { Callback = callback, Sessao = sessaoInfo }); }