Error handling: alertText() can be nil
Indicating that no alert is to be shown for that error.
This commit is contained in:
parent
d3ba76def3
commit
305264d064
|
@ -8,7 +8,7 @@ class ErrorPresenter {
|
|||
static func showErrorAlert(error: WireGuardAppError, from sourceVC: UIViewController?,
|
||||
onDismissal: (() -> Void)? = nil, onPresented: (() -> Void)? = nil) {
|
||||
guard let sourceVC = sourceVC else { return }
|
||||
let (title, message) = error.alertText()
|
||||
guard let (title, message) = error.alertText() else { return }
|
||||
let okAction = UIAlertAction(title: "OK", style: .default) { (_) in
|
||||
onDismissal?()
|
||||
}
|
||||
|
|
|
@ -31,7 +31,7 @@ enum TunnelsManagerError: WireGuardAppError {
|
|||
case tunnelActivationFailedInternalError // startTunnel() succeeded, but activation failed
|
||||
case tunnelActivationFailedNoInternetConnection // startTunnel() succeeded, but activation failed since no internet
|
||||
|
||||
func alertText() -> (String, String) {
|
||||
func alertText() -> (String, String)? {
|
||||
switch (self) {
|
||||
case .tunnelNameEmpty:
|
||||
return ("No name provided", "Can't create tunnel with an empty name")
|
||||
|
|
|
@ -2,5 +2,5 @@
|
|||
// Copyright © 2018 WireGuard LLC. All Rights Reserved.
|
||||
|
||||
protocol WireGuardAppError: Error {
|
||||
func alertText() -> (/* title */ String, /* message */ String)
|
||||
func alertText() -> (/* title */ String, /* message */ String)?
|
||||
}
|
||||
|
|
|
@ -8,7 +8,7 @@ enum ZipArchiveError: WireGuardAppError {
|
|||
case cantOpenOutputZipFileForWriting
|
||||
case badArchive
|
||||
|
||||
func alertText() -> (String, String) {
|
||||
func alertText() -> (String, String)? {
|
||||
switch (self) {
|
||||
case .cantOpenInputZipFile:
|
||||
return ("Unable to read zip archive", "The zip archive could not be read.")
|
||||
|
|
|
@ -6,7 +6,7 @@ import UIKit
|
|||
enum ZipExporterError: WireGuardAppError {
|
||||
case noTunnelsToExport
|
||||
|
||||
func alertText() -> (String, String) {
|
||||
func alertText() -> (String, String)? {
|
||||
switch (self) {
|
||||
case .noTunnelsToExport:
|
||||
return ("Nothing to export", "There are no tunnels to export")
|
||||
|
|
|
@ -6,7 +6,7 @@ import UIKit
|
|||
enum ZipImporterError: WireGuardAppError {
|
||||
case noTunnelsInZipArchive
|
||||
|
||||
func alertText() -> (String, String) {
|
||||
func alertText() -> (String, String)? {
|
||||
switch (self) {
|
||||
case .noTunnelsInZipArchive:
|
||||
return ("No tunnels in zip archive", "No .conf tunnel files were found inside the zip archive.")
|
||||
|
|
Loading…
Reference in New Issue