github.com/aavshr/aws-sdk-go@v1.41.3/private/protocol/unmarshal.go (about)

     1  package protocol
     2  
     3  import (
     4  	"io"
     5  	"io/ioutil"
     6  
     7  	"github.com/aavshr/aws-sdk-go/aws/request"
     8  )
     9  
    10  // UnmarshalDiscardBodyHandler is a named request handler to empty and close a response's body
    11  var UnmarshalDiscardBodyHandler = request.NamedHandler{Name: "awssdk.shared.UnmarshalDiscardBody", Fn: UnmarshalDiscardBody}
    12  
    13  // UnmarshalDiscardBody is a request handler to empty a response's body and closing it.
    14  func UnmarshalDiscardBody(r *request.Request) {
    15  	if r.HTTPResponse == nil || r.HTTPResponse.Body == nil {
    16  		return
    17  	}
    18  
    19  	io.Copy(ioutil.Discard, r.HTTPResponse.Body)
    20  	r.HTTPResponse.Body.Close()
    21  }
    22  
    23  // ResponseMetadata provides the SDK response metadata attributes.
    24  type ResponseMetadata struct {
    25  	StatusCode int
    26  	RequestID  string
    27  }