コード例 #1
0
    public WebService_SessionClose.SessionCloseRS _Sabre_CerrarSesion()
    {
        clsSessionClose objClsSessionClose = new clsSessionClose();

        return(objClsSessionClose.CerrarSesion(session_));
    }
    public static void _CerrarSesion()
    {
        clsCache      cCache      = new csCache().cCache();
        clsParametros cParametros = new clsParametros();
        string        sMensaje    = clsValidaciones.GetKeyOrAdd("sMensajeSesionSabre", "En este momento hay mas de 2000 personas consultado nuestras Promociones!!!");
        string        sSugerencia = clsValidaciones.GetKeyOrAdd("sSugerenciaSesionSabre", "Por favor intente de nuevo en 5 minutos!!!");

        try
        {
            clsSessionClose objClsSessionClose = new clsSessionClose();
            /*CERRAMOS LA SESSION OBTENIENDO LA SESSION DE SABRE*/
            WebService_SessionClose.SessionCloseRS CerrarSesionRespuesta_ = null;
            try
            {
                string sValidaSesion = AutenticacionSabre.GET_SabreSessionValida();
                if (sValidaSesion != null)
                {
                    CerrarSesionRespuesta_ = objClsSessionClose.CerrarSesion(sValidaSesion);
                }
            }
            catch
            {
            }

            if (CerrarSesionRespuesta_ != null)
            {
                if (CerrarSesionRespuesta_.status.CompareTo("Approved") == 0)
                {
                    AutenticacionSabre.SET_SabreSession(null);
                }
                else
                {
                    WebService_SessionClose.SessionCloseRSErrorsError          Error_     = CerrarSesionRespuesta_.Errors.Error;
                    WebService_SessionClose.SessionCloseRSErrorsErrorErrorInfo ErrorInfo_ = Error_.ErrorInfo;

                    if (CerrarSesionRespuesta_.Errors != null)
                    {
                        cParametros.Id       = 0;
                        cParametros.Message  = CerrarSesionRespuesta_.Errors.Error.ErrorMessage;
                        cParametros.Code     = CerrarSesionRespuesta_.Errors.Error.ErrorCode;
                        cParametros.Info     = CerrarSesionRespuesta_.Errors.Error.ErrorInfo.Message;
                        cParametros.Severity = CerrarSesionRespuesta_.Errors.Error.Severity;
                        cParametros.Tipo     = clsTipoError.Library;
                        try
                        {
                            if (cCache != null)
                            {
                                cParametros.ErrorConfigura[0] = cCache.Empresa;
                            }
                            else
                            {
                                cParametros.ErrorConfigura[0] = "0";
                            }
                        }
                        catch { }
                        cParametros.ValidaInfo  = true;
                        cParametros.Metodo      = System.Reflection.MethodInfo.GetCurrentMethod().Name;
                        cParametros.MessageBD   = true;
                        cParametros.TipoWs      = Enum_ProveedorWebServices.Sabre;
                        cParametros.Complemento = "_CerrarSesion";
                        ExceptionHandled.Publicar(cParametros);
                    }
                    else
                    {
                        cParametros.Id          = 1;
                        cParametros.TipoLog     = Enum_Error.Transac;
                        cParametros.Message     = CerrarSesionRespuesta_.Success.ToString();
                        cParametros.Metodo      = System.Reflection.MethodInfo.GetCurrentMethod().Name;
                        cParametros.Complemento = "HostCommand: ";
                        cParametros.Tipo        = clsTipoError.WebServices;
                        cParametros.Severity    = clsSeveridad.Moderada;
                        try
                        {
                            if (cCache != null)
                            {
                                cParametros.Source = "Sesion Local: " + cCache.SessionID.ToString();
                            }
                            else
                            {
                                cParametros.Source = "Sesion Local: No hay cache ";
                            }
                        }
                        catch
                        {
                            cParametros.Source = "Sesion Local: Error ";
                        }
                        ExceptionHandled.Publicar(cParametros);
                        cParametros.TipoLog = Enum_Error.Log;
                    }
                }
            }
        }
        catch
        {
        }
    }