trpc.group/trpc-go/trpc-go@v1.0.3/client/attachment.go (about) 1 // 2 // 3 // Tencent is pleased to support the open source community by making tRPC available. 4 // 5 // Copyright (C) 2023 THL A29 Limited, a Tencent company. 6 // All rights reserved. 7 // 8 // If you have downloaded a copy of the tRPC source code from Tencent, 9 // please note that tRPC source code is licensed under the Apache 2.0 License, 10 // A copy of the Apache 2.0 License is included in this file. 11 // 12 // 13 14 package client 15 16 import ( 17 "io" 18 19 "trpc.group/trpc-go/trpc-go/internal/attachment" 20 ) 21 22 // Attachment stores the Attachment of tRPC requests/responses. 23 type Attachment struct { 24 attachment attachment.Attachment 25 } 26 27 // NewAttachment returns a new Attachment whose response Attachment is a NoopAttachment. 28 func NewAttachment(request io.Reader) *Attachment { 29 return &Attachment{attachment: attachment.Attachment{Request: request, Response: attachment.NoopAttachment{}}} 30 } 31 32 // Response returns Response Attachment. 33 func (a *Attachment) Response() io.Reader { 34 return a.attachment.Response 35 }