diff options
Diffstat (limited to 'Emails.Transactional.Client/Exceptions')
5 files changed, 0 insertions, 311 deletions
diff --git a/Emails.Transactional.Client/Exceptions/InvalidAuthorizationException.cs b/Emails.Transactional.Client/Exceptions/InvalidAuthorizationException.cs deleted file mode 100644 index 2f31ad9..0000000 --- a/Emails.Transactional.Client/Exceptions/InvalidAuthorizationException.cs +++ /dev/null @@ -1,50 +0,0 @@ -/* -* Copyright (c) 2022 Vaughn Nugent -* -* Library: VNLib -* Package: Emails.Transactional.Client -* File: InvalidAuthorizationException.cs -* -* InvalidAuthorizationException.cs is part of Emails.Transactional.Client which is part of the larger -* VNLib collection of libraries and utilities. -* -* Emails.Transactional.Client is free software: you can redistribute it and/or modify -* it under the terms of the GNU General Public License as published -* by the Free Software Foundation, either version 2 of the License, -* or (at your option) any later version. -* -* Emails.Transactional.Client is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* General Public License for more details. -* -* You should have received a copy of the GNU General Public License -* along with Emails.Transactional.Client. If not, see http://www.gnu.org/licenses/. -*/ - -using System; - -using RestSharp; - -namespace Emails.Transactional.Client.Exceptions -{ - /// <summary> - /// A excption raised when an Authorization error occured - /// during a request - /// </summary> - public class InvalidAuthorizationException : InvalidTransactionResponseException - { - ///<inheritdoc/> - public InvalidAuthorizationException():base() - {} - ///<inheritdoc/> - public InvalidAuthorizationException(string message) : base(message) - {} - ///<inheritdoc/> - public InvalidAuthorizationException(string message, Exception innerException) : base(message, innerException) - {} - ///<inheritdoc/> - public InvalidAuthorizationException(string message, RestResponse<TransactionResult> response) : base(message, response) - {} - } -} diff --git a/Emails.Transactional.Client/Exceptions/InvalidTransactionRequestException.cs b/Emails.Transactional.Client/Exceptions/InvalidTransactionRequestException.cs deleted file mode 100644 index a841d92..0000000 --- a/Emails.Transactional.Client/Exceptions/InvalidTransactionRequestException.cs +++ /dev/null @@ -1,52 +0,0 @@ -/* -* Copyright (c) 2022 Vaughn Nugent -* -* Library: VNLib -* Package: Emails.Transactional.Client -* File: InvalidTransactionRequestException.cs -* -* InvalidTransactionRequestException.cs is part of Emails.Transactional.Client which is part of the larger -* VNLib collection of libraries and utilities. -* -* Emails.Transactional.Client is free software: you can redistribute it and/or modify -* it under the terms of the GNU General Public License as published -* by the Free Software Foundation, either version 2 of the License, -* or (at your option) any later version. -* -* Emails.Transactional.Client is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* General Public License for more details. -* -* You should have received a copy of the GNU General Public License -* along with Emails.Transactional.Client. If not, see http://www.gnu.org/licenses/. -*/ - -using System; -using System.Runtime.Serialization; - -using RestSharp; - -namespace Emails.Transactional.Client.Exceptions -{ - public class InvalidTransactionRequestException : TransactionExceptionBase - { - ///<inheritdoc/> - public InvalidTransactionRequestException() - {} - ///<inheritdoc/> - public InvalidTransactionRequestException(string message) : base(message) - {} - ///<inheritdoc/> - public InvalidTransactionRequestException(string message, Exception innerException) : base(message, innerException) - {} - ///<inheritdoc/> - protected InvalidTransactionRequestException(SerializationInfo info, StreamingContext context) : base(info, context) - {} - - public InvalidTransactionRequestException(RestResponse response) - { - this.ErrorResponse = response; - } - } -} diff --git a/Emails.Transactional.Client/Exceptions/InvalidTransactionResponseException.cs b/Emails.Transactional.Client/Exceptions/InvalidTransactionResponseException.cs deleted file mode 100644 index 100e351..0000000 --- a/Emails.Transactional.Client/Exceptions/InvalidTransactionResponseException.cs +++ /dev/null @@ -1,64 +0,0 @@ -/* -* Copyright (c) 2022 Vaughn Nugent -* -* Library: VNLib -* Package: Emails.Transactional.Client -* File: InvalidTransactionResponseException.cs -* -* InvalidTransactionResponseException.cs is part of Emails.Transactional.Client which is part of the larger -* VNLib collection of libraries and utilities. -* -* Emails.Transactional.Client is free software: you can redistribute it and/or modify -* it under the terms of the GNU General Public License as published -* by the Free Software Foundation, either version 2 of the License, -* or (at your option) any later version. -* -* Emails.Transactional.Client is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* General Public License for more details. -* -* You should have received a copy of the GNU General Public License -* along with Emails.Transactional.Client. If not, see http://www.gnu.org/licenses/. -*/ - -using System; -using RestSharp; - -namespace Emails.Transactional.Client.Exceptions -{ - /// <summary> - /// Raised when the results of an email transaction - /// failed. Inner exceptions may be set - /// </summary> - public class InvalidTransactionResponseException : TransactionExceptionBase - { - /// <summary> - /// An error message received from the client - /// </summary> - public TransactionResult ErrorMessage { get; init; } - - ///<inheritdoc/> - public InvalidTransactionResponseException() - {} - ///<inheritdoc/> - public InvalidTransactionResponseException(string message) : base(message) - {} - ///<inheritdoc/> - public InvalidTransactionResponseException(string message, Exception innerException) : base(message, innerException) - {} - - /// <summary> - /// Initializes a new <see cref="InvalidTransactionResponseException"/> with - /// the response that contains the error - /// </summary> - /// <param name="message">The base exception message</param> - /// <param name="response">The response that caused the error</param> - public InvalidTransactionResponseException(string message, RestResponse<TransactionResult> response) : base(message, response.ErrorException) - { - this.ErrorResponse = response; - //See if the server sent an error message - this.ErrorMessage = response.Data; - } - } -} diff --git a/Emails.Transactional.Client/Exceptions/TransactionExceptionBase.cs b/Emails.Transactional.Client/Exceptions/TransactionExceptionBase.cs deleted file mode 100644 index a442470..0000000 --- a/Emails.Transactional.Client/Exceptions/TransactionExceptionBase.cs +++ /dev/null @@ -1,59 +0,0 @@ -/* -* Copyright (c) 2022 Vaughn Nugent -* -* Library: VNLib -* Package: Emails.Transactional.Client -* File: TransactionExceptionBase.cs -* -* TransactionExceptionBase.cs is part of Emails.Transactional.Client which is part of the larger -* VNLib collection of libraries and utilities. -* -* Emails.Transactional.Client is free software: you can redistribute it and/or modify -* it under the terms of the GNU General Public License as published -* by the Free Software Foundation, either version 2 of the License, -* or (at your option) any later version. -* -* Emails.Transactional.Client is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* General Public License for more details. -* -* You should have received a copy of the GNU General Public License -* along with Emails.Transactional.Client. If not, see http://www.gnu.org/licenses/. -*/ - -using System; -using System.Runtime.Serialization; - -using RestSharp; - -namespace Emails.Transactional.Client.Exceptions -{ - /// <summary> - /// A base exception for all client transaction excepions - /// </summary> - public class TransactionExceptionBase : Exception - { - ///<inheritdoc/> - public TransactionExceptionBase() - {} - ///<inheritdoc/> - public TransactionExceptionBase(string message) : base(message) - {} - ///<inheritdoc/> - public TransactionExceptionBase(string message, Exception innerException) : base(message, innerException) - {} - ///<inheritdoc/> - protected TransactionExceptionBase(SerializationInfo info, StreamingContext context) : base(info, context) - {} - - /// <summary> - /// The response objec that caused the exception - /// </summary> - public RestResponse ErrorResponse { get; init; } - /// <summary> - /// The string represenation of the response body - /// </summary> - public string ResultMessage => ErrorResponse.Content; - } -}
\ No newline at end of file diff --git a/Emails.Transactional.Client/Exceptions/ValidationFailedException.cs b/Emails.Transactional.Client/Exceptions/ValidationFailedException.cs deleted file mode 100644 index d8f4bdf..0000000 --- a/Emails.Transactional.Client/Exceptions/ValidationFailedException.cs +++ /dev/null @@ -1,86 +0,0 @@ -/* -* Copyright (c) 2022 Vaughn Nugent -* -* Library: VNLib -* Package: Emails.Transactional.Client -* File: ValidationFailedException.cs -* -* ValidationFailedException.cs is part of Emails.Transactional.Client which is part of the larger -* VNLib collection of libraries and utilities. -* -* Emails.Transactional.Client is free software: you can redistribute it and/or modify -* it under the terms of the GNU General Public License as published -* by the Free Software Foundation, either version 2 of the License, -* or (at your option) any later version. -* -* Emails.Transactional.Client is distributed in the hope that it will be useful, -* but WITHOUT ANY WARRANTY; without even the implied warranty of -* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -* General Public License for more details. -* -* You should have received a copy of the GNU General Public License -* along with Emails.Transactional.Client. If not, see http://www.gnu.org/licenses/. -*/ - -using System; -using System.Linq; -using System.Collections.Generic; -using System.Text; - -#nullable enable - -namespace Emails.Transactional.Client.Exceptions -{ - /// <summary> - /// Raised when server message validation failed - /// </summary> - public class ValidationFailedException : InvalidTransactionRequestException - { - ///<inheritdoc/> - public ValidationFailedException() - {} - ///<inheritdoc/> - public ValidationFailedException(string message) : base(message) - {} - ///<inheritdoc/> - public ValidationFailedException(string message, Exception innerException) : base(message, innerException) - {} - - /// <summary> - /// A collection of validaion error messages - /// </summary> - public ICollection<ValidationErrorMessage>? ValidationErrors { get; init; } - /// <summary> - /// - /// </summary> - /// <param name="result"></param> - public ValidationFailedException(TransactionResult result):base("Transaction data server validation failed") - { - this.ValidationErrors = result?.ValidationErrors; - } - - ///<inheritdoc/> - public override string Message - { - get - { - if(ValidationErrors == null) - { - return base.Message; - - } - StringBuilder sb = new(base.Message); - sb.AppendLine(); - - foreach(var kvp in ValidationErrors) - { - sb.Append("Validation error: "); - sb.Append(kvp.PropertyName); - sb.Append(' '); - sb.AppendLine(kvp.ErrorMessage); - } - return sb.ToString(); - } - } - } -} |