Skip to content

Commit

Permalink
functionize serialization_error
Browse files Browse the repository at this point in the history
  • Loading branch information
DyfanJones committed Jul 3, 2024
1 parent ecf26d8 commit 9cf636a
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 27 deletions.
2 changes: 1 addition & 1 deletion paws.common/DESCRIPTION
Original file line number Diff line number Diff line change
Expand Up @@ -62,11 +62,11 @@ Collate:
'custom_dynamodb.R'
'custom_rds.R'
'http_status.R'
'error.R'
'tags.R'
'xmlutil.R'
'stream.R'
'custom_s3.R'
'error.R'
'handlers_core.R'
'handlers_ec2query.R'
'handlers_jsonrpc.R'
Expand Down
16 changes: 3 additions & 13 deletions paws.common/R/custom_s3.R
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#' @include service.R
#' @include stream.R
#' @include util.R
#' @include http_status.R
#' @include error.R
NULL

################################################################################
Expand Down Expand Up @@ -281,13 +281,7 @@ s3_unmarshal_error <- function(request) {
return(request)
}
if (is.null(data)) {
msg <- "An error occurred (%s) when calling the %s operation: %s"
error_message <- http_statuses[as.character(request$http_response$status_code)]
request$error <- Error(
"SerializationError",
sprintf(msg, request$http_response$status_code, request$operation$name, error_message),
request$http_response$status_code
)
request$error <- serialization_error(request)
return(request)
}

Expand All @@ -296,11 +290,7 @@ s3_unmarshal_error <- function(request) {
message <- error_response$Message

if (is.null(message) && is.null(code)) {
request$error <- Error(
"SerializationError",
"failed to decode query XML error response",
request$http_response$status_code
)
request$error <- serialization_error(request)
return(request)
}

Expand Down
20 changes: 20 additions & 0 deletions paws.common/R/error.R
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#' @include http_status.R

# Returns an Error object.
Error <- struct(
code = "",
Expand All @@ -6,6 +8,24 @@ Error <- struct(
error_response = list()
)

ERROR_MSG_TEMPLATE <- "An error occurred (%s) when calling the %s operation: %s"

serialization_error <- function(request) {
error_message <- http_statuses[
as.character(request$http_response$status_code)
]
Error(
"SerializationError",
sprintf(
ERROR_MSG_TEMPLATE,
request$http_response$status_code,
request$operation$name,
error_message
),
request$http_response$status_code
)
}

#' Generate a classed http error
#'
#' This function generates S3 error objects which are passed to
Expand Down
16 changes: 3 additions & 13 deletions paws.common/R/handlers_query.R
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#' @include http_status.R
#' @include error.R

# Build the request for the Query protocol.
query_build <- function(request) {
Expand Down Expand Up @@ -47,13 +47,7 @@ query_unmarshal_error <- function(request) {
)

if (is.null(data)) {
msg <- "An error occurred (%s) when calling the %s operation: %s"
error_message <- http_statuses[as.character(request$http_response$status_code)]
request$error <- Error(
"SerializationError",
sprintf(msg, request$http_response$status_code, request$operation$name, error_message),
request$http_response$status_code
)
request$error <- serialization_error(request)
return(request)
}

Expand All @@ -63,11 +57,7 @@ query_unmarshal_error <- function(request) {
)

if (is.null(error)) {
request$error <- Error(
"SerializationError",
"failed to decode query XML error response",
request$http_response$status_code
)
request$error <- serialization_error(request)
return(request)
}

Expand Down

0 comments on commit 9cf636a

Please sign in to comment.