From fa3c5599621e5d52702bd2f751013a9fb7f2cf99 Mon Sep 17 00:00:00 2001 From: Guilherme Soares Date: Fri, 14 Feb 2025 11:00:30 +0100 Subject: [PATCH 1/2] feat: changed accept pegin and pegout reponse status --- .../adapters/entrypoints/rest/handlers/accept_pegin_quote.go | 4 ++-- .../adapters/entrypoints/rest/handlers/accept_pegout_quote.go | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/internal/adapters/entrypoints/rest/handlers/accept_pegin_quote.go b/internal/adapters/entrypoints/rest/handlers/accept_pegin_quote.go index b6753b23..0a853729 100644 --- a/internal/adapters/entrypoints/rest/handlers/accept_pegin_quote.go +++ b/internal/adapters/entrypoints/rest/handlers/accept_pegin_quote.go @@ -36,8 +36,8 @@ func NewAcceptPeginQuoteHandler(useCase *pegin.AcceptQuoteUseCase) http.HandlerF acceptedQuote, err := useCase.Run(req.Context(), acceptRequest.QuoteHash) if errors.Is(err, usecases.QuoteNotFoundError) || errors.Is(err, usecases.ExpiredQuoteError) { - jsonErr := rest.NewErrorResponseWithDetails("invalid request", rest.DetailsFromError(err), true) - rest.JsonErrorResponse(w, http.StatusBadRequest, jsonErr) + jsonErr := rest.NewErrorResponseWithDetails("quote not found", rest.DetailsFromError(err), true) + rest.JsonErrorResponse(w, http.StatusNotFound, jsonErr) return } else if errors.Is(err, usecases.NoLiquidityError) { jsonErr := rest.NewErrorResponseWithDetails("not enough liquidity", rest.DetailsFromError(err), true) diff --git a/internal/adapters/entrypoints/rest/handlers/accept_pegout_quote.go b/internal/adapters/entrypoints/rest/handlers/accept_pegout_quote.go index 3af21348..a6cac615 100644 --- a/internal/adapters/entrypoints/rest/handlers/accept_pegout_quote.go +++ b/internal/adapters/entrypoints/rest/handlers/accept_pegout_quote.go @@ -36,8 +36,8 @@ func NewAcceptPegoutQuoteHandler(useCase *pegout.AcceptQuoteUseCase) http.Handle acceptedQuote, err := useCase.Run(req.Context(), acceptRequest.QuoteHash) if errors.Is(err, usecases.QuoteNotFoundError) || errors.Is(err, usecases.ExpiredQuoteError) { - jsonErr := rest.NewErrorResponseWithDetails("invalid request", rest.DetailsFromError(err), true) - rest.JsonErrorResponse(w, http.StatusBadRequest, jsonErr) + jsonErr := rest.NewErrorResponseWithDetails("invalid quote hash", rest.DetailsFromError(err), true) + rest.JsonErrorResponse(w, http.StatusNotFound, jsonErr) return } else if errors.Is(err, usecases.NoLiquidityError) { jsonErr := rest.NewErrorResponseWithDetails("not enough liquidity", rest.DetailsFromError(err), true) From 33994969e5d61e4d7a712f34f41b09898beb712f Mon Sep 17 00:00:00 2001 From: Guilherme Soares Date: Fri, 14 Feb 2025 17:19:48 +0100 Subject: [PATCH 2/2] feat: changed response code for expired quote --- .../entrypoints/rest/handlers/accept_pegin_quote.go | 7 +++++-- .../entrypoints/rest/handlers/accept_pegout_quote.go | 7 +++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/internal/adapters/entrypoints/rest/handlers/accept_pegin_quote.go b/internal/adapters/entrypoints/rest/handlers/accept_pegin_quote.go index 0a853729..be285829 100644 --- a/internal/adapters/entrypoints/rest/handlers/accept_pegin_quote.go +++ b/internal/adapters/entrypoints/rest/handlers/accept_pegin_quote.go @@ -34,11 +34,14 @@ func NewAcceptPeginQuoteHandler(useCase *pegin.AcceptQuoteUseCase) http.HandlerF } acceptedQuote, err := useCase.Run(req.Context(), acceptRequest.QuoteHash) - if errors.Is(err, usecases.QuoteNotFoundError) || - errors.Is(err, usecases.ExpiredQuoteError) { + if errors.Is(err, usecases.QuoteNotFoundError) { jsonErr := rest.NewErrorResponseWithDetails("quote not found", rest.DetailsFromError(err), true) rest.JsonErrorResponse(w, http.StatusNotFound, jsonErr) return + } else if errors.Is(err, usecases.ExpiredQuoteError) { + jsonErr := rest.NewErrorResponseWithDetails("expired quote", rest.DetailsFromError(err), true) + rest.JsonErrorResponse(w, http.StatusGone, jsonErr) + return } else if errors.Is(err, usecases.NoLiquidityError) { jsonErr := rest.NewErrorResponseWithDetails("not enough liquidity", rest.DetailsFromError(err), true) rest.JsonErrorResponse(w, http.StatusConflict, jsonErr) diff --git a/internal/adapters/entrypoints/rest/handlers/accept_pegout_quote.go b/internal/adapters/entrypoints/rest/handlers/accept_pegout_quote.go index a6cac615..f8d586f0 100644 --- a/internal/adapters/entrypoints/rest/handlers/accept_pegout_quote.go +++ b/internal/adapters/entrypoints/rest/handlers/accept_pegout_quote.go @@ -34,11 +34,14 @@ func NewAcceptPegoutQuoteHandler(useCase *pegout.AcceptQuoteUseCase) http.Handle } acceptedQuote, err := useCase.Run(req.Context(), acceptRequest.QuoteHash) - if errors.Is(err, usecases.QuoteNotFoundError) || - errors.Is(err, usecases.ExpiredQuoteError) { + if errors.Is(err, usecases.QuoteNotFoundError) { jsonErr := rest.NewErrorResponseWithDetails("invalid quote hash", rest.DetailsFromError(err), true) rest.JsonErrorResponse(w, http.StatusNotFound, jsonErr) return + } else if errors.Is(err, usecases.ExpiredQuoteError) { + jsonErr := rest.NewErrorResponseWithDetails("expired quote", rest.DetailsFromError(err), true) + rest.JsonErrorResponse(w, http.StatusGone, jsonErr) + return } else if errors.Is(err, usecases.NoLiquidityError) { jsonErr := rest.NewErrorResponseWithDetails("not enough liquidity", rest.DetailsFromError(err), true) rest.JsonErrorResponse(w, http.StatusConflict, jsonErr)