github.com/ydb-platform/ydb-go-sdk/v3@v3.57.0/internal/grpcwrapper/rawtopic/rawtopiccommon/server_message_metadata.go (about) 1 package rawtopiccommon 2 3 import ( 4 "github.com/ydb-platform/ydb-go-genproto/protos/Ydb" 5 "github.com/ydb-platform/ydb-go-genproto/protos/Ydb_Issue" 6 7 "github.com/ydb-platform/ydb-go-sdk/v3/internal/grpcwrapper/rawydb" 8 ) 9 10 type StatusAndIssues interface { 11 GetStatus() Ydb.StatusIds_StatusCode 12 GetIssues() []*Ydb_Issue.IssueMessage 13 } 14 15 type ServerMessageMetadata struct { 16 Status rawydb.StatusCode 17 Issues rawydb.Issues 18 } 19 20 func (m *ServerMessageMetadata) MetaFromStatusAndIssues(p StatusAndIssues) error { 21 if err := m.Status.FromProto(p.GetStatus()); err != nil { 22 return err 23 } 24 25 return m.Issues.FromProto(p.GetIssues()) 26 } 27 28 func (m *ServerMessageMetadata) StatusData() ServerMessageMetadata { 29 return *m 30 } 31 32 func (m *ServerMessageMetadata) SetStatus(status rawydb.StatusCode) { 33 m.Status = status 34 }