public static BankStatementDownload Errored(BankStatementError error) { var errorType = error.IsInvalidLogin() ? BankStatementResponseType.InvalidLogin : BankStatementResponseType.Failed; return(new BankStatementDownload(errorType, error)); }
private BankStatementDownload(BankStatementResponseType errorType, BankStatementError error) { if (errorType == BankStatementResponseType.None || errorType == BankStatementResponseType.LoginSuccess || errorType == BankStatementResponseType.Downloaded) { throw new InvalidOperationException($"Cannot create errored DownloadResponse with response type {errorType}"); } ResponseType = errorType; Error = error ?? throw new ArgumentNullException(nameof(error)); }