示例#1
0
        PackageSourceViewModelCheckedEventArgs CreatePackageSourceViewModelCheckedEventArgs(PackageSourceViewModel packageSource, Exception ex)
        {
            if (ex is AggregateException)
            {
                ex = ex.GetBaseException();
            }

            var webException = ex.InnerException as WebException;

            if (webException != null)
            {
                return(CreatePackageSourceViewModelCheckedEventArgs(packageSource, webException));
            }

            LogPackageSourceException(packageSource, ex);
            return(new PackageSourceViewModelCheckedEventArgs(packageSource, ex.Message));
        }
示例#2
0
 void SelectLastPackageSourceViewModel()
 {
     SelectedPackageSourceViewModel = GetLastPackageSourceViewModel();
 }
示例#3
0
        bool IsLastPackageSourceSelected()
        {
            PackageSourceViewModel lastViewModel = GetLastPackageSourceViewModel();

            return(lastViewModel == selectedPackageSourceViewModel);
        }
 public PackageSourceViewModelCheckedEventArgs(PackageSourceViewModel packageSource, string errorMessage)
 {
     PackageSource            = packageSource;
     ValidationFailureMessage = errorMessage;
 }
 public PackageSourceViewModelCheckedEventArgs(PackageSourceViewModel packageSource)
     : this(packageSource, "")
 {
 }
示例#6
0
 void LogPackageSourceException(PackageSourceViewModel packageSource, Exception ex)
 {
     LoggingService.LogInfo(String.Format("Package source '{0}' returned exception.", packageSource.SourceUrl), ex);
 }
示例#7
0
        PackageSourceViewModelCheckedEventArgs CreatePackageSourceViewModelCheckedEventArgs(PackageSourceViewModel packageSource, WebException ex)
        {
            string errorMessage = ex.Message;
            var    response     = ex.Response as HttpWebResponse;

            if (response != null)
            {
                switch (response.StatusCode)
                {
                case HttpStatusCode.Unauthorized:
                    errorMessage = GettextCatalog.GetString("Invalid credentials");
                    break;

                case HttpStatusCode.NotFound:
                    errorMessage = GettextCatalog.GetString("Not found");
                    break;

                case HttpStatusCode.GatewayTimeout:
                case HttpStatusCode.RequestTimeout:
                    errorMessage = GettextCatalog.GetString("Unreachable");
                    break;

                case HttpStatusCode.ProxyAuthenticationRequired:
                    errorMessage = GettextCatalog.GetString("Proxy authentication required");
                    break;
                }
            }

            LogPackageSourceException(packageSource, ex);

            switch (ex.Status)
            {
            case WebExceptionStatus.ConnectFailure:
            case WebExceptionStatus.ConnectionClosed:
            case WebExceptionStatus.NameResolutionFailure:
            case WebExceptionStatus.ProxyNameResolutionFailure:
            case WebExceptionStatus.Timeout:
                errorMessage = GettextCatalog.GetString("Unreachable");
                break;
            }

            return(new PackageSourceViewModelCheckedEventArgs(packageSource, errorMessage));
        }
 public PackageSourceViewModelChangedEventArgs(PackageSourceViewModel packageSource)
 {
     PackageSource = packageSource;
 }