-
-
- Low-level Golang API for FrostFS -
+# WIP area: this repo is just a fork! ---- - -[](https://goreportcard.com/report/git.frostfs.info/TrueCloudLab/frostfs-api-go) -[](https://git.frostfs.info/TrueCloudLab/frostfs-api-go) - -# Overview - -Go implementation of recent [FrostFS API](https://git.frostfs.info/TrueCloudLab/frostfs-api) -versions. For a more high-level SDK see [FrostFS SDK](https://git.frostfs.info/TrueCloudLab/frostfs-sdk-go). - -## Frostfs-Api compatibility - -|frostfs-api-go version|supported frostfs-api versions| -|:------------------:|:--------------------------:| -|v2.14.x|[v2.14.0](https://git.frostfs.info/TrueCloudLab/frostfs-api/releases/tag/v2.14.0)| - -## Contributing - -Feel free to contribute to this project after reading the [contributing -guidelines](CONTRIBUTING.md). - -Before starting to work on a certain topic, create a new issue first, describing -the feature/topic you are going to implement. - -## License - -This project is licensed under the Apache 2.0 License - -see the [LICENSE](LICENSE) file for details +Useful things may be published only in [other branches](../../../branches) diff --git a/accounting/accounting.go b/accounting/accounting.go deleted file mode 100644 index af14a1a..0000000 --- a/accounting/accounting.go +++ /dev/null @@ -1,104 +0,0 @@ -package accounting - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" -) - -type BalanceRequestBody struct { - ownerID *refs.OwnerID -} - -type BalanceResponseBody struct { - bal *Decimal -} - -type Decimal struct { - val int64 - - prec uint32 -} - -type BalanceRequest struct { - body *BalanceRequestBody - - session.RequestHeaders -} - -type BalanceResponse struct { - body *BalanceResponseBody - - session.ResponseHeaders -} - -func (b *BalanceRequestBody) GetOwnerID() *refs.OwnerID { - if b != nil { - return b.ownerID - } - - return nil -} - -func (b *BalanceRequestBody) SetOwnerID(v *refs.OwnerID) { - b.ownerID = v -} - -func (b *BalanceRequest) GetBody() *BalanceRequestBody { - if b != nil { - return b.body - } - - return nil -} - -func (b *BalanceRequest) SetBody(v *BalanceRequestBody) { - b.body = v -} - -func (d *Decimal) GetValue() int64 { - if d != nil { - return d.val - } - - return 0 -} - -func (d *Decimal) SetValue(v int64) { - d.val = v -} - -func (d *Decimal) GetPrecision() uint32 { - if d != nil { - return d.prec - } - - return 0 -} - -func (d *Decimal) SetPrecision(v uint32) { - d.prec = v -} - -func (br *BalanceResponseBody) GetBalance() *Decimal { - if br != nil { - return br.bal - } - - return nil -} - -func (br *BalanceResponseBody) SetBalance(v *Decimal) { - br.bal = v -} - -func (br *BalanceResponse) GetBody() *BalanceResponseBody { - if br != nil { - return br.body - } - - return nil -} - -func (br *BalanceResponse) SetBody(v *BalanceResponseBody) { - br.body = v -} diff --git a/accounting/convert.go b/accounting/convert.go deleted file mode 100644 index 7a7f250..0000000 --- a/accounting/convert.go +++ /dev/null @@ -1,178 +0,0 @@ -package accounting - -import ( - accounting "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/accounting/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - refsGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -func (b *BalanceRequestBody) ToGRPCMessage() grpc.Message { - var m *accounting.BalanceRequest_Body - - if b != nil { - m = new(accounting.BalanceRequest_Body) - - m.SetOwnerId(b.ownerID.ToGRPCMessage().(*refsGRPC.OwnerID)) - } - - return m -} - -func (b *BalanceRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*accounting.BalanceRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - ownerID := v.GetOwnerId() - if ownerID == nil { - b.ownerID = nil - } else { - if b.ownerID == nil { - b.ownerID = new(refs.OwnerID) - } - - err = b.ownerID.FromGRPCMessage(ownerID) - } - - return err -} - -func (b *BalanceRequest) ToGRPCMessage() grpc.Message { - var m *accounting.BalanceRequest - - if b != nil { - m = new(accounting.BalanceRequest) - - m.SetBody(b.body.ToGRPCMessage().(*accounting.BalanceRequest_Body)) - b.RequestHeaders.ToMessage(m) - } - - return m -} - -func (b *BalanceRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*accounting.BalanceRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - b.body = nil - } else { - if b.body == nil { - b.body = new(BalanceRequestBody) - } - - err = b.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return b.RequestHeaders.FromMessage(v) -} - -func (d *Decimal) ToGRPCMessage() grpc.Message { - var m *accounting.Decimal - - if d != nil { - m = new(accounting.Decimal) - - m.SetValue(d.val) - m.SetPrecision(d.prec) - } - - return m -} - -func (d *Decimal) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*accounting.Decimal) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - d.val = v.GetValue() - d.prec = v.GetPrecision() - - return nil -} - -func (br *BalanceResponseBody) ToGRPCMessage() grpc.Message { - var m *accounting.BalanceResponse_Body - - if br != nil { - m = new(accounting.BalanceResponse_Body) - - m.SetBalance(br.bal.ToGRPCMessage().(*accounting.Decimal)) - } - - return m -} - -func (br *BalanceResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*accounting.BalanceResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - bal := v.GetBalance() - if bal == nil { - br.bal = nil - } else { - if br.bal == nil { - br.bal = new(Decimal) - } - - err = br.bal.FromGRPCMessage(bal) - } - - return err -} - -func (br *BalanceResponse) ToGRPCMessage() grpc.Message { - var m *accounting.BalanceResponse - - if br != nil { - m = new(accounting.BalanceResponse) - - m.SetBody(br.body.ToGRPCMessage().(*accounting.BalanceResponse_Body)) - br.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (br *BalanceResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*accounting.BalanceResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - br.body = nil - } else { - if br.body == nil { - br.body = new(BalanceResponseBody) - } - - err = br.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return br.ResponseHeaders.FromMessage(v) -} diff --git a/accounting/grpc/service_frostfs.pb.go b/accounting/grpc/service_frostfs.pb.go deleted file mode 100644 index 9c8c946..0000000 --- a/accounting/grpc/service_frostfs.pb.go +++ /dev/null @@ -1,768 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package accounting - -import ( - json "encoding/json" - fmt "fmt" - grpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - grpc1 "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" -) - -type BalanceRequest_Body struct { - OwnerId *grpc.OwnerID `json:"ownerId"` -} - -var ( - _ encoding.ProtoMarshaler = (*BalanceRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*BalanceRequest_Body)(nil) - _ json.Marshaler = (*BalanceRequest_Body)(nil) - _ json.Unmarshaler = (*BalanceRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *BalanceRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.OwnerId) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *BalanceRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *BalanceRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.OwnerId != nil { - x.OwnerId.EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *BalanceRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "BalanceRequest_Body") - } - switch fc.FieldNum { - case 1: // OwnerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "OwnerId") - } - x.OwnerId = new(grpc.OwnerID) - if err := x.OwnerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *BalanceRequest_Body) GetOwnerId() *grpc.OwnerID { - if x != nil { - return x.OwnerId - } - return nil -} -func (x *BalanceRequest_Body) SetOwnerId(v *grpc.OwnerID) { - x.OwnerId = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *BalanceRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *BalanceRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ownerId\":" - out.RawString(prefix) - x.OwnerId.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *BalanceRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *BalanceRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "ownerId": - { - var f *grpc.OwnerID - f = new(grpc.OwnerID) - f.UnmarshalEasyJSON(in) - x.OwnerId = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type BalanceRequest struct { - Body *BalanceRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*BalanceRequest)(nil) - _ encoding.ProtoUnmarshaler = (*BalanceRequest)(nil) - _ json.Marshaler = (*BalanceRequest)(nil) - _ json.Unmarshaler = (*BalanceRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *BalanceRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *BalanceRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *BalanceRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *BalanceRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *BalanceRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *BalanceRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "BalanceRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(BalanceRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *BalanceRequest) GetBody() *BalanceRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *BalanceRequest) SetBody(v *BalanceRequest_Body) { - x.Body = v -} -func (x *BalanceRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *BalanceRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *BalanceRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *BalanceRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *BalanceRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *BalanceRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *BalanceRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *BalanceRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *BalanceRequest_Body - f = new(BalanceRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type BalanceResponse_Body struct { - Balance *Decimal `json:"balance"` -} - -var ( - _ encoding.ProtoMarshaler = (*BalanceResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*BalanceResponse_Body)(nil) - _ json.Marshaler = (*BalanceResponse_Body)(nil) - _ json.Unmarshaler = (*BalanceResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *BalanceResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Balance) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *BalanceResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *BalanceResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Balance != nil { - x.Balance.EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *BalanceResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "BalanceResponse_Body") - } - switch fc.FieldNum { - case 1: // Balance - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Balance") - } - x.Balance = new(Decimal) - if err := x.Balance.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *BalanceResponse_Body) GetBalance() *Decimal { - if x != nil { - return x.Balance - } - return nil -} -func (x *BalanceResponse_Body) SetBalance(v *Decimal) { - x.Balance = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *BalanceResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *BalanceResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"balance\":" - out.RawString(prefix) - x.Balance.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *BalanceResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *BalanceResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "balance": - { - var f *Decimal - f = new(Decimal) - f.UnmarshalEasyJSON(in) - x.Balance = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type BalanceResponse struct { - Body *BalanceResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*BalanceResponse)(nil) - _ encoding.ProtoUnmarshaler = (*BalanceResponse)(nil) - _ json.Marshaler = (*BalanceResponse)(nil) - _ json.Unmarshaler = (*BalanceResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *BalanceResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *BalanceResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *BalanceResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *BalanceResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *BalanceResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *BalanceResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "BalanceResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(BalanceResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *BalanceResponse) GetBody() *BalanceResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *BalanceResponse) SetBody(v *BalanceResponse_Body) { - x.Body = v -} -func (x *BalanceResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *BalanceResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *BalanceResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *BalanceResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *BalanceResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *BalanceResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *BalanceResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *BalanceResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *BalanceResponse_Body - f = new(BalanceResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/accounting/grpc/service_frostfs_fuzz.go b/accounting/grpc/service_frostfs_fuzz.go deleted file mode 100644 index 69e7174..0000000 --- a/accounting/grpc/service_frostfs_fuzz.go +++ /dev/null @@ -1,45 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package accounting - -func DoFuzzProtoBalanceRequest(data []byte) int { - msg := new(BalanceRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONBalanceRequest(data []byte) int { - msg := new(BalanceRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoBalanceResponse(data []byte) int { - msg := new(BalanceResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONBalanceResponse(data []byte) int { - msg := new(BalanceResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/accounting/grpc/service_frostfs_test.go b/accounting/grpc/service_frostfs_test.go deleted file mode 100644 index b97a13e..0000000 --- a/accounting/grpc/service_frostfs_test.go +++ /dev/null @@ -1,31 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package accounting - -import ( - testing "testing" -) - -func FuzzProtoBalanceRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoBalanceRequest(data) - }) -} -func FuzzJSONBalanceRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONBalanceRequest(data) - }) -} -func FuzzProtoBalanceResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoBalanceResponse(data) - }) -} -func FuzzJSONBalanceResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONBalanceResponse(data) - }) -} diff --git a/accounting/grpc/service_grpc.pb.go b/accounting/grpc/service_grpc.pb.go deleted file mode 100644 index 87eb56b..0000000 --- a/accounting/grpc/service_grpc.pb.go +++ /dev/null @@ -1,119 +0,0 @@ -// Code generated by protoc-gen-go-grpc. DO NOT EDIT. -// versions: -// - protoc-gen-go-grpc v1.3.0 -// - protoc v5.27.2 -// source: accounting/grpc/service.proto - -package accounting - -import ( - context "context" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" -) - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.32.0 or later. -const _ = grpc.SupportPackageIsVersion7 - -const ( - AccountingService_Balance_FullMethodName = "/neo.fs.v2.accounting.AccountingService/Balance" -) - -// AccountingServiceClient is the client API for AccountingService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type AccountingServiceClient interface { - // Returns the amount of funds in GAS token for the requested FrostFS account. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): - // balance has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON). - Balance(ctx context.Context, in *BalanceRequest, opts ...grpc.CallOption) (*BalanceResponse, error) -} - -type accountingServiceClient struct { - cc grpc.ClientConnInterface -} - -func NewAccountingServiceClient(cc grpc.ClientConnInterface) AccountingServiceClient { - return &accountingServiceClient{cc} -} - -func (c *accountingServiceClient) Balance(ctx context.Context, in *BalanceRequest, opts ...grpc.CallOption) (*BalanceResponse, error) { - out := new(BalanceResponse) - err := c.cc.Invoke(ctx, AccountingService_Balance_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// AccountingServiceServer is the server API for AccountingService service. -// All implementations should embed UnimplementedAccountingServiceServer -// for forward compatibility -type AccountingServiceServer interface { - // Returns the amount of funds in GAS token for the requested FrostFS account. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): - // balance has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON). - Balance(context.Context, *BalanceRequest) (*BalanceResponse, error) -} - -// UnimplementedAccountingServiceServer should be embedded to have forward compatible implementations. -type UnimplementedAccountingServiceServer struct { -} - -func (UnimplementedAccountingServiceServer) Balance(context.Context, *BalanceRequest) (*BalanceResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Balance not implemented") -} - -// UnsafeAccountingServiceServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to AccountingServiceServer will -// result in compilation errors. -type UnsafeAccountingServiceServer interface { - mustEmbedUnimplementedAccountingServiceServer() -} - -func RegisterAccountingServiceServer(s grpc.ServiceRegistrar, srv AccountingServiceServer) { - s.RegisterService(&AccountingService_ServiceDesc, srv) -} - -func _AccountingService_Balance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(BalanceRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AccountingServiceServer).Balance(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: AccountingService_Balance_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AccountingServiceServer).Balance(ctx, req.(*BalanceRequest)) - } - return interceptor(ctx, in, info, handler) -} - -// AccountingService_ServiceDesc is the grpc.ServiceDesc for AccountingService service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var AccountingService_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "neo.fs.v2.accounting.AccountingService", - HandlerType: (*AccountingServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "Balance", - Handler: _AccountingService_Balance_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "accounting/grpc/service.proto", -} diff --git a/accounting/grpc/types_frostfs.pb.go b/accounting/grpc/types_frostfs.pb.go deleted file mode 100644 index b7e6b40..0000000 --- a/accounting/grpc/types_frostfs.pb.go +++ /dev/null @@ -1,204 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package accounting - -import ( - json "encoding/json" - fmt "fmt" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" - strconv "strconv" -) - -type Decimal struct { - Value int64 `json:"value"` - Precision uint32 `json:"precision"` -} - -var ( - _ encoding.ProtoMarshaler = (*Decimal)(nil) - _ encoding.ProtoUnmarshaler = (*Decimal)(nil) - _ json.Marshaler = (*Decimal)(nil) - _ json.Unmarshaler = (*Decimal)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Decimal) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.Int64Size(1, x.Value) - size += proto.UInt32Size(2, x.Precision) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Decimal) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Decimal) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Value != 0 { - mm.AppendInt64(1, x.Value) - } - if x.Precision != 0 { - mm.AppendUint32(2, x.Precision) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Decimal) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Decimal") - } - switch fc.FieldNum { - case 1: // Value - data, ok := fc.Int64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - case 2: // Precision - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Precision") - } - x.Precision = data - } - } - return nil -} -func (x *Decimal) GetValue() int64 { - if x != nil { - return x.Value - } - return 0 -} -func (x *Decimal) SetValue(v int64) { - x.Value = v -} -func (x *Decimal) GetPrecision() uint32 { - if x != nil { - return x.Precision - } - return 0 -} -func (x *Decimal) SetPrecision(v uint32) { - x.Precision = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Decimal) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Decimal) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendInt(out.Buffer.Buf, x.Value, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"precision\":" - out.RawString(prefix) - out.Uint32(x.Precision) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Decimal) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Decimal) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "value": - { - var f int64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseInt(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := int64(v) - f = pv - x.Value = f - } - case "precision": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Precision = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/accounting/grpc/types_frostfs_fuzz.go b/accounting/grpc/types_frostfs_fuzz.go deleted file mode 100644 index 5eb5e97..0000000 --- a/accounting/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,26 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package accounting - -func DoFuzzProtoDecimal(data []byte) int { - msg := new(Decimal) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONDecimal(data []byte) int { - msg := new(Decimal) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/accounting/grpc/types_frostfs_test.go b/accounting/grpc/types_frostfs_test.go deleted file mode 100644 index 404b75e..0000000 --- a/accounting/grpc/types_frostfs_test.go +++ /dev/null @@ -1,21 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package accounting - -import ( - testing "testing" -) - -func FuzzProtoDecimal(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoDecimal(data) - }) -} -func FuzzJSONDecimal(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONDecimal(data) - }) -} diff --git a/accounting/json.go b/accounting/json.go deleted file mode 100644 index 9ed5620..0000000 --- a/accounting/json.go +++ /dev/null @@ -1,14 +0,0 @@ -package accounting - -import ( - accounting "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/accounting/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -func (d *Decimal) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(d) -} - -func (d *Decimal) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(d, data, new(accounting.Decimal)) -} diff --git a/accounting/marshal.go b/accounting/marshal.go deleted file mode 100644 index 6961b3e..0000000 --- a/accounting/marshal.go +++ /dev/null @@ -1,104 +0,0 @@ -package accounting - -import ( - accounting "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/accounting/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - protoutil "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" -) - -const ( - decimalValueField = 1 - decimalPrecisionField = 2 - - balanceReqBodyOwnerField = 1 - - balanceRespBodyDecimalField = 1 -) - -func (d *Decimal) StableMarshal(buf []byte) []byte { - if d == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, d.StableSize()) - } - - var offset int - - offset += protoutil.Int64Marshal(decimalValueField, buf[offset:], d.val) - protoutil.UInt32Marshal(decimalPrecisionField, buf[offset:], d.prec) - - return buf -} - -func (d *Decimal) StableSize() (size int) { - if d == nil { - return 0 - } - - size += protoutil.Int64Size(decimalValueField, d.val) - size += protoutil.UInt32Size(decimalPrecisionField, d.prec) - - return size -} - -func (d *Decimal) Unmarshal(data []byte) error { - return message.Unmarshal(d, data, new(accounting.Decimal)) -} - -func (b *BalanceRequestBody) StableMarshal(buf []byte) []byte { - if b == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, b.StableSize()) - } - - protoutil.NestedStructureMarshal(balanceReqBodyOwnerField, buf, b.ownerID) - - return buf -} - -func (b *BalanceRequestBody) StableSize() (size int) { - if b == nil { - return 0 - } - - size = protoutil.NestedStructureSize(balanceReqBodyOwnerField, b.ownerID) - - return size -} - -func (b *BalanceRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(b, data, new(accounting.BalanceRequest_Body)) -} - -func (br *BalanceResponseBody) StableMarshal(buf []byte) []byte { - if br == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, br.StableSize()) - } - - protoutil.NestedStructureMarshal(balanceRespBodyDecimalField, buf, br.bal) - - return buf -} - -func (br *BalanceResponseBody) StableSize() (size int) { - if br == nil { - return 0 - } - - size = protoutil.NestedStructureSize(balanceRespBodyDecimalField, br.bal) - - return size -} - -func (br *BalanceResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(br, data, new(accounting.BalanceResponse_Body)) -} diff --git a/accounting/message_test.go b/accounting/message_test.go deleted file mode 100644 index d193558..0000000 --- a/accounting/message_test.go +++ /dev/null @@ -1,19 +0,0 @@ -package accounting_test - -import ( - "testing" - - accountingtest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/accounting/test" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - messagetest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message/test" -) - -func TestMessage(t *testing.T) { - messagetest.TestRPCMessage(t, - func(empty bool) message.Message { return accountingtest.GenerateDecimal(empty) }, - func(empty bool) message.Message { return accountingtest.GenerateBalanceRequestBody(empty) }, - func(empty bool) message.Message { return accountingtest.GenerateBalanceRequest(empty) }, - func(empty bool) message.Message { return accountingtest.GenerateBalanceResponseBody(empty) }, - func(empty bool) message.Message { return accountingtest.GenerateBalanceResponse(empty) }, - ) -} diff --git a/accounting/test/generate.go b/accounting/test/generate.go deleted file mode 100644 index 1eaf9f4..0000000 --- a/accounting/test/generate.go +++ /dev/null @@ -1,64 +0,0 @@ -package accountingtest - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/accounting" - accountingtest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/test" - sessiontest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/test" -) - -func GenerateBalanceRequest(empty bool) *accounting.BalanceRequest { - m := new(accounting.BalanceRequest) - - if !empty { - m.SetBody(GenerateBalanceRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateBalanceRequestBody(empty bool) *accounting.BalanceRequestBody { - m := new(accounting.BalanceRequestBody) - - if !empty { - m.SetOwnerID(accountingtest.GenerateOwnerID(false)) - } - - return m -} - -func GenerateBalanceResponse(empty bool) *accounting.BalanceResponse { - m := new(accounting.BalanceResponse) - - if !empty { - m.SetBody(GenerateBalanceResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateBalanceResponseBody(empty bool) *accounting.BalanceResponseBody { - m := new(accounting.BalanceResponseBody) - - if !empty { - m.SetBalance(GenerateDecimal(false)) - } - - return m -} - -func GenerateDecimal(empty bool) *accounting.Decimal { - m := new(accounting.Decimal) - - if !empty { - m.SetValue(1) - m.SetPrecision(2) - } - - return m -} diff --git a/acl/bench_test.go b/acl/bench_test.go deleted file mode 100644 index 85dbf7d..0000000 --- a/acl/bench_test.go +++ /dev/null @@ -1,51 +0,0 @@ -package acl_test - -import ( - "testing" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl" - aclGrpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl/grpc" - acltest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl/test" -) - -func BenchmarkTable_ToGRPCMessage(b *testing.B) { - const size = 4 - - tb := new(acl.Table) - rs := make([]acl.Record, size) - for i := range rs { - fs := make([]acl.HeaderFilter, size) - for j := range fs { - fs[j] = *acltest.GenerateFilter(false) - } - ts := make([]acl.Target, size) - for j := range ts { - ts[j] = *acltest.GenerateTarget(false) - } - - rs[i].SetFilters(fs) - rs[i].SetTargets(ts) - } - tb.SetRecords(rs) - - raw := tb.ToGRPCMessage() - - b.Run("to grpc message", func(b *testing.B) { - b.ReportAllocs() - for range b.N { - raw := tb.ToGRPCMessage() - if len(tb.GetRecords()) != len(raw.(*aclGrpc.EACLTable).Records) { - b.FailNow() - } - } - }) - b.Run("from grpc message", func(b *testing.B) { - b.ReportAllocs() - for range b.N { - tb := new(acl.Table) - if tb.FromGRPCMessage(raw) != nil { - b.FailNow() - } - } - }) -} diff --git a/acl/convert.go b/acl/convert.go deleted file mode 100644 index f5de743..0000000 --- a/acl/convert.go +++ /dev/null @@ -1,592 +0,0 @@ -package acl - -import ( - acl "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape" - apeGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - refsGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -// RoleToGRPCField converts unified role enum into grpc enum. -func RoleToGRPCField(t Role) acl.Role { - switch t { - case RoleUser: - return acl.Role_USER - case RoleSystem: - return acl.Role_SYSTEM - case RoleOthers: - return acl.Role_OTHERS - default: - return acl.Role_ROLE_UNSPECIFIED - } -} - -// RoleFromGRPCField converts grpc enum into unified role enum. -func RoleFromGRPCField(t acl.Role) Role { - switch t { - case acl.Role_USER: - return RoleUser - case acl.Role_SYSTEM: - return RoleSystem - case acl.Role_OTHERS: - return RoleOthers - default: - return RoleUnknown - } -} - -// OperationToGRPCField converts unified operation enum into grpc enum. -func OperationToGRPCField(t Operation) acl.Operation { - switch t { - case OperationPut: - return acl.Operation_PUT - case OperationDelete: - return acl.Operation_DELETE - case OperationGet: - return acl.Operation_GET - case OperationHead: - return acl.Operation_HEAD - case OperationSearch: - return acl.Operation_SEARCH - case OperationRange: - return acl.Operation_GETRANGE - case OperationRangeHash: - return acl.Operation_GETRANGEHASH - default: - return acl.Operation_OPERATION_UNSPECIFIED - } -} - -// OperationFromGRPCField converts grpc enum into unified operation enum. -func OperationFromGRPCField(t acl.Operation) Operation { - switch t { - case acl.Operation_PUT: - return OperationPut - case acl.Operation_DELETE: - return OperationDelete - case acl.Operation_GET: - return OperationGet - case acl.Operation_HEAD: - return OperationHead - case acl.Operation_SEARCH: - return OperationSearch - case acl.Operation_GETRANGE: - return OperationRange - case acl.Operation_GETRANGEHASH: - return OperationRangeHash - default: - return OperationUnknown - } -} - -// ActionToGRPCField converts unified action enum into grpc enum. -func ActionToGRPCField(t Action) acl.Action { - switch t { - case ActionDeny: - return acl.Action_DENY - case ActionAllow: - return acl.Action_ALLOW - default: - return acl.Action_ACTION_UNSPECIFIED - } -} - -// ActionFromGRPCField converts grpc enum into unified action enum. -func ActionFromGRPCField(t acl.Action) Action { - switch t { - case acl.Action_DENY: - return ActionDeny - case acl.Action_ALLOW: - return ActionAllow - default: - return ActionUnknown - } -} - -// HeaderTypeToGRPCField converts unified header type enum into grpc enum. -func HeaderTypeToGRPCField(t HeaderType) acl.HeaderType { - switch t { - case HeaderTypeRequest: - return acl.HeaderType_REQUEST - case HeaderTypeObject: - return acl.HeaderType_OBJECT - case HeaderTypeService: - return acl.HeaderType_SERVICE - default: - return acl.HeaderType_HEADER_UNSPECIFIED - } -} - -// HeaderTypeFromGRPCField converts grpc enum into unified header type enum. -func HeaderTypeFromGRPCField(t acl.HeaderType) HeaderType { - switch t { - case acl.HeaderType_REQUEST: - return HeaderTypeRequest - case acl.HeaderType_OBJECT: - return HeaderTypeObject - case acl.HeaderType_SERVICE: - return HeaderTypeService - default: - return HeaderTypeUnknown - } -} - -// MatchTypeToGRPCField converts unified match type enum into grpc enum. -func MatchTypeToGRPCField(t MatchType) acl.MatchType { - switch t { - case MatchTypeStringEqual: - return acl.MatchType_STRING_EQUAL - case MatchTypeStringNotEqual: - return acl.MatchType_STRING_NOT_EQUAL - default: - return acl.MatchType_MATCH_TYPE_UNSPECIFIED - } -} - -// MatchTypeFromGRPCField converts grpc enum into unified match type enum. -func MatchTypeFromGRPCField(t acl.MatchType) MatchType { - switch t { - case acl.MatchType_STRING_EQUAL: - return MatchTypeStringEqual - case acl.MatchType_STRING_NOT_EQUAL: - return MatchTypeStringNotEqual - default: - return MatchTypeUnknown - } -} - -func (f *HeaderFilter) ToGRPCMessage() grpc.Message { - var m *acl.EACLRecord_Filter - - if f != nil { - m = new(acl.EACLRecord_Filter) - - m.SetKey(f.key) - m.SetValue(f.value) - m.SetHeaderType(HeaderTypeToGRPCField(f.hdrType)) - m.SetMatchType(MatchTypeToGRPCField(f.matchType)) - } - - return m -} - -func (f *HeaderFilter) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*acl.EACLRecord_Filter) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - f.key = v.GetKey() - f.value = v.GetValue() - f.hdrType = HeaderTypeFromGRPCField(v.GetHeaderType()) - f.matchType = MatchTypeFromGRPCField(v.GetMatchType()) - - return nil -} - -func HeaderFiltersToGRPC(fs []HeaderFilter) (res []acl.EACLRecord_Filter) { - if fs != nil { - res = make([]acl.EACLRecord_Filter, 0, len(fs)) - - for i := range fs { - res = append(res, *fs[i].ToGRPCMessage().(*acl.EACLRecord_Filter)) - } - } - - return -} - -func HeaderFiltersFromGRPC(fs []acl.EACLRecord_Filter) (res []HeaderFilter, err error) { - if fs != nil { - res = make([]HeaderFilter, len(fs)) - - for i := range fs { - err = res[i].FromGRPCMessage(&fs[i]) - if err != nil { - return - } - } - } - - return -} - -func (t *Target) ToGRPCMessage() grpc.Message { - var m *acl.EACLRecord_Target - - if t != nil { - m = new(acl.EACLRecord_Target) - - m.SetRole(RoleToGRPCField(t.role)) - m.SetKeys(t.keys) - } - - return m -} - -func (t *Target) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*acl.EACLRecord_Target) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - t.role = RoleFromGRPCField(v.GetRole()) - t.keys = v.GetKeys() - - return nil -} - -func TargetsToGRPC(ts []Target) (res []acl.EACLRecord_Target) { - if ts != nil { - res = make([]acl.EACLRecord_Target, 0, len(ts)) - - for i := range ts { - res = append(res, *ts[i].ToGRPCMessage().(*acl.EACLRecord_Target)) - } - } - - return -} - -func TargetsFromGRPC(fs []acl.EACLRecord_Target) (res []Target, err error) { - if fs != nil { - res = make([]Target, len(fs)) - - for i := range fs { - err = res[i].FromGRPCMessage(&fs[i]) - if err != nil { - return - } - } - } - - return -} - -func (r *Record) ToGRPCMessage() grpc.Message { - var m *acl.EACLRecord - - if r != nil { - m = new(acl.EACLRecord) - - m.SetOperation(OperationToGRPCField(r.op)) - m.SetAction(ActionToGRPCField(r.action)) - m.SetFilters(HeaderFiltersToGRPC(r.filters)) - m.SetTargets(TargetsToGRPC(r.targets)) - } - - return m -} - -func (r *Record) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*acl.EACLRecord) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - r.filters, err = HeaderFiltersFromGRPC(v.GetFilters()) - if err != nil { - return err - } - - r.targets, err = TargetsFromGRPC(v.GetTargets()) - if err != nil { - return err - } - - r.op = OperationFromGRPCField(v.GetOperation()) - r.action = ActionFromGRPCField(v.GetAction()) - - return nil -} - -func RecordsToGRPC(ts []Record) (res []acl.EACLRecord) { - if ts != nil { - res = make([]acl.EACLRecord, 0, len(ts)) - - for i := range ts { - res = append(res, *ts[i].ToGRPCMessage().(*acl.EACLRecord)) - } - } - - return -} - -func RecordsFromGRPC(fs []acl.EACLRecord) (res []Record, err error) { - if fs != nil { - res = make([]Record, len(fs)) - - for i := range fs { - err = res[i].FromGRPCMessage(&fs[i]) - if err != nil { - return - } - } - } - - return -} - -func (t *Table) ToGRPCMessage() grpc.Message { - var m *acl.EACLTable - - if t != nil { - m = new(acl.EACLTable) - - m.SetVersion(t.version.ToGRPCMessage().(*refsGRPC.Version)) - m.SetContainerId(t.cid.ToGRPCMessage().(*refsGRPC.ContainerID)) - m.SetRecords(RecordsToGRPC(t.records)) - } - - return m -} - -func (t *Table) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*acl.EACLTable) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - cid := v.GetContainerId() - if cid == nil { - t.cid = nil - } else { - if t.cid == nil { - t.cid = new(refs.ContainerID) - } - - err = t.cid.FromGRPCMessage(cid) - if err != nil { - return err - } - } - - version := v.GetVersion() - if version == nil { - t.version = nil - } else { - if t.version == nil { - t.version = new(refs.Version) - } - - err = t.version.FromGRPCMessage(version) - if err != nil { - return err - } - } - - t.records, err = RecordsFromGRPC(v.GetRecords()) - - return err -} - -func (l *TokenLifetime) ToGRPCMessage() grpc.Message { - var m *acl.BearerToken_Body_TokenLifetime - - if l != nil { - m = new(acl.BearerToken_Body_TokenLifetime) - - m.SetExp(l.exp) - m.SetIat(l.iat) - m.SetNbf(l.nbf) - } - - return m -} - -func (l *TokenLifetime) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*acl.BearerToken_Body_TokenLifetime) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - l.exp = v.GetExp() - l.iat = v.GetIat() - l.nbf = v.GetNbf() - - return nil -} - -func (c *APEOverride) ToGRPCMessage() grpc.Message { - var m *acl.BearerToken_Body_APEOverride - - if c != nil { - m = new(acl.BearerToken_Body_APEOverride) - - m.SetTarget(c.target.ToGRPCMessage().(*apeGRPC.ChainTarget)) - - if len(c.chains) > 0 { - apeChains := make([]apeGRPC.Chain, len(c.chains)) - for i := range c.chains { - apeChains[i] = *c.chains[i].ToGRPCMessage().(*apeGRPC.Chain) - } - m.SetChains(apeChains) - } - } - - return m -} - -func (c *APEOverride) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*acl.BearerToken_Body_APEOverride) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - if targetGRPC := v.GetTarget(); targetGRPC != nil { - if c.target == nil { - c.target = new(ape.ChainTarget) - } - if err := c.target.FromGRPCMessage(v.GetTarget()); err != nil { - return err - } - } - - if apeChains := v.GetChains(); len(apeChains) > 0 { - c.chains = make([]*ape.Chain, len(apeChains)) - for i := range apeChains { - c.chains[i] = new(ape.Chain) - if err := c.chains[i].FromGRPCMessage(&apeChains[i]); err != nil { - return err - } - } - } - - return nil -} - -func (bt *BearerTokenBody) ToGRPCMessage() grpc.Message { - var m *acl.BearerToken_Body - - if bt != nil { - m = new(acl.BearerToken_Body) - - m.SetOwnerId(bt.ownerID.ToGRPCMessage().(*refsGRPC.OwnerID)) - m.SetLifetime(bt.lifetime.ToGRPCMessage().(*acl.BearerToken_Body_TokenLifetime)) - m.SetEaclTable(bt.eacl.ToGRPCMessage().(*acl.EACLTable)) - m.SetAllowImpersonate(bt.impersonate) - m.SetApeOverride(bt.apeOverride.ToGRPCMessage().(*acl.BearerToken_Body_APEOverride)) - } - - return m -} - -func (bt *BearerTokenBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*acl.BearerToken_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - ownerID := v.GetOwnerId() - if ownerID == nil { - bt.ownerID = nil - } else { - if bt.ownerID == nil { - bt.ownerID = new(refs.OwnerID) - } - - err = bt.ownerID.FromGRPCMessage(ownerID) - if err != nil { - return err - } - } - - lifetime := v.GetLifetime() - if lifetime == nil { - bt.lifetime = nil - } else { - if bt.lifetime == nil { - bt.lifetime = new(TokenLifetime) - } - - err = bt.lifetime.FromGRPCMessage(lifetime) - if err != nil { - return err - } - } - - eacl := v.GetEaclTable() - if eacl == nil { - bt.eacl = nil - } else { - if bt.eacl == nil { - bt.eacl = new(Table) - } - - if err = bt.eacl.FromGRPCMessage(eacl); err != nil { - return err - } - } - - if apeOverrideGRPC := v.GetApeOverride(); apeOverrideGRPC != nil { - if bt.apeOverride == nil { - bt.apeOverride = new(APEOverride) - } - err = bt.apeOverride.FromGRPCMessage(apeOverrideGRPC) - if err != nil { - return err - } - } - - bt.impersonate = v.GetAllowImpersonate() - - return err -} - -func (bt *BearerToken) ToGRPCMessage() grpc.Message { - var m *acl.BearerToken - - if bt != nil { - m = new(acl.BearerToken) - - m.SetBody(bt.body.ToGRPCMessage().(*acl.BearerToken_Body)) - m.SetSignature(bt.sig.ToGRPCMessage().(*refsGRPC.Signature)) - } - - return m -} - -func (bt *BearerToken) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*acl.BearerToken) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - bt.body = nil - } else { - if bt.body == nil { - bt.body = new(BearerTokenBody) - } - - err = bt.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - sig := v.GetSignature() - if sig == nil { - bt.sig = nil - } else { - if bt.sig == nil { - bt.sig = new(refs.Signature) - } - - err = bt.sig.FromGRPCMessage(sig) - } - - return err -} diff --git a/acl/filters.go b/acl/filters.go deleted file mode 100644 index c1d8afe..0000000 --- a/acl/filters.go +++ /dev/null @@ -1,33 +0,0 @@ -package acl - -// ObjectFilterPrefix is a prefix of key to object header value or property. -const ObjectFilterPrefix = "$Object:" - -const ( - // FilterObjectVersion is a filter key to "version" field of the object header. - FilterObjectVersion = ObjectFilterPrefix + "version" - - // FilterObjectID is a filter key to "object_id" field of the object. - FilterObjectID = ObjectFilterPrefix + "objectID" - - // FilterObjectContainerID is a filter key to "container_id" field of the object header. - FilterObjectContainerID = ObjectFilterPrefix + "containerID" - - // FilterObjectOwnerID is a filter key to "owner_id" field of the object header. - FilterObjectOwnerID = ObjectFilterPrefix + "ownerID" - - // FilterObjectCreationEpoch is a filter key to "creation_epoch" field of the object header. - FilterObjectCreationEpoch = ObjectFilterPrefix + "creationEpoch" - - // FilterObjectPayloadLength is a filter key to "payload_length" field of the object header. - FilterObjectPayloadLength = ObjectFilterPrefix + "payloadLength" - - // FilterObjectPayloadHash is a filter key to "payload_hash" field of the object header. - FilterObjectPayloadHash = ObjectFilterPrefix + "payloadHash" - - // FilterObjectType is a filter key to "object_type" field of the object header. - FilterObjectType = ObjectFilterPrefix + "objectType" - - // FilterObjectHomomorphicHash is a filter key to "homomorphic_hash" field of the object header. - FilterObjectHomomorphicHash = ObjectFilterPrefix + "homomorphicHash" -) diff --git a/acl/grpc/types_frostfs.pb.go b/acl/grpc/types_frostfs.pb.go deleted file mode 100644 index bc90cb7..0000000 --- a/acl/grpc/types_frostfs.pb.go +++ /dev/null @@ -1,2184 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package acl - -import ( - json "encoding/json" - fmt "fmt" - grpc1 "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape/grpc" - grpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" - strconv "strconv" -) - -type Role int32 - -const ( - Role_ROLE_UNSPECIFIED Role = 0 - Role_USER Role = 1 - Role_SYSTEM Role = 2 - Role_OTHERS Role = 3 -) - -var ( - Role_name = map[int32]string{ - 0: "ROLE_UNSPECIFIED", - 1: "USER", - 2: "SYSTEM", - 3: "OTHERS", - } - Role_value = map[string]int32{ - "ROLE_UNSPECIFIED": 0, - "USER": 1, - "SYSTEM": 2, - "OTHERS": 3, - } -) - -func (x Role) String() string { - if v, ok := Role_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *Role) FromString(s string) bool { - if v, ok := Role_value[s]; ok { - *x = Role(v) - return true - } - return false -} - -type MatchType int32 - -const ( - MatchType_MATCH_TYPE_UNSPECIFIED MatchType = 0 - MatchType_STRING_EQUAL MatchType = 1 - MatchType_STRING_NOT_EQUAL MatchType = 2 -) - -var ( - MatchType_name = map[int32]string{ - 0: "MATCH_TYPE_UNSPECIFIED", - 1: "STRING_EQUAL", - 2: "STRING_NOT_EQUAL", - } - MatchType_value = map[string]int32{ - "MATCH_TYPE_UNSPECIFIED": 0, - "STRING_EQUAL": 1, - "STRING_NOT_EQUAL": 2, - } -) - -func (x MatchType) String() string { - if v, ok := MatchType_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *MatchType) FromString(s string) bool { - if v, ok := MatchType_value[s]; ok { - *x = MatchType(v) - return true - } - return false -} - -type Operation int32 - -const ( - Operation_OPERATION_UNSPECIFIED Operation = 0 - Operation_GET Operation = 1 - Operation_HEAD Operation = 2 - Operation_PUT Operation = 3 - Operation_DELETE Operation = 4 - Operation_SEARCH Operation = 5 - Operation_GETRANGE Operation = 6 - Operation_GETRANGEHASH Operation = 7 -) - -var ( - Operation_name = map[int32]string{ - 0: "OPERATION_UNSPECIFIED", - 1: "GET", - 2: "HEAD", - 3: "PUT", - 4: "DELETE", - 5: "SEARCH", - 6: "GETRANGE", - 7: "GETRANGEHASH", - } - Operation_value = map[string]int32{ - "OPERATION_UNSPECIFIED": 0, - "GET": 1, - "HEAD": 2, - "PUT": 3, - "DELETE": 4, - "SEARCH": 5, - "GETRANGE": 6, - "GETRANGEHASH": 7, - } -) - -func (x Operation) String() string { - if v, ok := Operation_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *Operation) FromString(s string) bool { - if v, ok := Operation_value[s]; ok { - *x = Operation(v) - return true - } - return false -} - -type Action int32 - -const ( - Action_ACTION_UNSPECIFIED Action = 0 - Action_ALLOW Action = 1 - Action_DENY Action = 2 -) - -var ( - Action_name = map[int32]string{ - 0: "ACTION_UNSPECIFIED", - 1: "ALLOW", - 2: "DENY", - } - Action_value = map[string]int32{ - "ACTION_UNSPECIFIED": 0, - "ALLOW": 1, - "DENY": 2, - } -) - -func (x Action) String() string { - if v, ok := Action_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *Action) FromString(s string) bool { - if v, ok := Action_value[s]; ok { - *x = Action(v) - return true - } - return false -} - -type HeaderType int32 - -const ( - HeaderType_HEADER_UNSPECIFIED HeaderType = 0 - HeaderType_REQUEST HeaderType = 1 - HeaderType_OBJECT HeaderType = 2 - HeaderType_SERVICE HeaderType = 3 -) - -var ( - HeaderType_name = map[int32]string{ - 0: "HEADER_UNSPECIFIED", - 1: "REQUEST", - 2: "OBJECT", - 3: "SERVICE", - } - HeaderType_value = map[string]int32{ - "HEADER_UNSPECIFIED": 0, - "REQUEST": 1, - "OBJECT": 2, - "SERVICE": 3, - } -) - -func (x HeaderType) String() string { - if v, ok := HeaderType_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *HeaderType) FromString(s string) bool { - if v, ok := HeaderType_value[s]; ok { - *x = HeaderType(v) - return true - } - return false -} - -type EACLRecord_Filter struct { - HeaderType HeaderType `json:"headerType"` - MatchType MatchType `json:"matchType"` - Key string `json:"key"` - Value string `json:"value"` -} - -var ( - _ encoding.ProtoMarshaler = (*EACLRecord_Filter)(nil) - _ encoding.ProtoUnmarshaler = (*EACLRecord_Filter)(nil) - _ json.Marshaler = (*EACLRecord_Filter)(nil) - _ json.Unmarshaler = (*EACLRecord_Filter)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *EACLRecord_Filter) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.EnumSize(1, int32(x.HeaderType)) - size += proto.EnumSize(2, int32(x.MatchType)) - size += proto.StringSize(3, x.Key) - size += proto.StringSize(4, x.Value) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *EACLRecord_Filter) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *EACLRecord_Filter) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if int32(x.HeaderType) != 0 { - mm.AppendInt32(1, int32(x.HeaderType)) - } - if int32(x.MatchType) != 0 { - mm.AppendInt32(2, int32(x.MatchType)) - } - if len(x.Key) != 0 { - mm.AppendString(3, x.Key) - } - if len(x.Value) != 0 { - mm.AppendString(4, x.Value) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *EACLRecord_Filter) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "EACLRecord_Filter") - } - switch fc.FieldNum { - case 1: // HeaderType - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "HeaderType") - } - x.HeaderType = HeaderType(data) - case 2: // MatchType - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MatchType") - } - x.MatchType = MatchType(data) - case 3: // Key - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Key") - } - x.Key = data - case 4: // Value - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - } - } - return nil -} -func (x *EACLRecord_Filter) GetHeaderType() HeaderType { - if x != nil { - return x.HeaderType - } - return 0 -} -func (x *EACLRecord_Filter) SetHeaderType(v HeaderType) { - x.HeaderType = v -} -func (x *EACLRecord_Filter) GetMatchType() MatchType { - if x != nil { - return x.MatchType - } - return 0 -} -func (x *EACLRecord_Filter) SetMatchType(v MatchType) { - x.MatchType = v -} -func (x *EACLRecord_Filter) GetKey() string { - if x != nil { - return x.Key - } - return "" -} -func (x *EACLRecord_Filter) SetKey(v string) { - x.Key = v -} -func (x *EACLRecord_Filter) GetValue() string { - if x != nil { - return x.Value - } - return "" -} -func (x *EACLRecord_Filter) SetValue(v string) { - x.Value = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *EACLRecord_Filter) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *EACLRecord_Filter) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"headerType\":" - out.RawString(prefix) - v := int32(x.HeaderType) - if vv, ok := HeaderType_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"matchType\":" - out.RawString(prefix) - v := int32(x.MatchType) - if vv, ok := MatchType_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"key\":" - out.RawString(prefix) - out.String(x.Key) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - out.String(x.Value) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *EACLRecord_Filter) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *EACLRecord_Filter) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "headerType": - { - var f HeaderType - var parsedValue HeaderType - switch v := in.Interface().(type) { - case string: - if vv, ok := HeaderType_value[v]; ok { - parsedValue = HeaderType(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = HeaderType(vv) - case float64: - parsedValue = HeaderType(v) - } - f = parsedValue - x.HeaderType = f - } - case "matchType": - { - var f MatchType - var parsedValue MatchType - switch v := in.Interface().(type) { - case string: - if vv, ok := MatchType_value[v]; ok { - parsedValue = MatchType(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = MatchType(vv) - case float64: - parsedValue = MatchType(v) - } - f = parsedValue - x.MatchType = f - } - case "key": - { - var f string - f = in.String() - x.Key = f - } - case "value": - { - var f string - f = in.String() - x.Value = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type EACLRecord_Target struct { - Role Role `json:"role"` - Keys [][]byte `json:"keys"` -} - -var ( - _ encoding.ProtoMarshaler = (*EACLRecord_Target)(nil) - _ encoding.ProtoUnmarshaler = (*EACLRecord_Target)(nil) - _ json.Marshaler = (*EACLRecord_Target)(nil) - _ json.Unmarshaler = (*EACLRecord_Target)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *EACLRecord_Target) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.EnumSize(1, int32(x.Role)) - size += proto.RepeatedBytesSize(2, x.Keys) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *EACLRecord_Target) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *EACLRecord_Target) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if int32(x.Role) != 0 { - mm.AppendInt32(1, int32(x.Role)) - } - for j := range x.Keys { - mm.AppendBytes(2, x.Keys[j]) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *EACLRecord_Target) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "EACLRecord_Target") - } - switch fc.FieldNum { - case 1: // Role - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Role") - } - x.Role = Role(data) - case 2: // Keys - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Keys") - } - x.Keys = append(x.Keys, data) - } - } - return nil -} -func (x *EACLRecord_Target) GetRole() Role { - if x != nil { - return x.Role - } - return 0 -} -func (x *EACLRecord_Target) SetRole(v Role) { - x.Role = v -} -func (x *EACLRecord_Target) GetKeys() [][]byte { - if x != nil { - return x.Keys - } - return nil -} -func (x *EACLRecord_Target) SetKeys(v [][]byte) { - x.Keys = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *EACLRecord_Target) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *EACLRecord_Target) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"role\":" - out.RawString(prefix) - v := int32(x.Role) - if vv, ok := Role_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"keys\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Keys { - if i != 0 { - out.RawByte(',') - } - if x.Keys[i] != nil { - out.Base64Bytes(x.Keys[i]) - } else { - out.String("") - } - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *EACLRecord_Target) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *EACLRecord_Target) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "role": - { - var f Role - var parsedValue Role - switch v := in.Interface().(type) { - case string: - if vv, ok := Role_value[v]; ok { - parsedValue = Role(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = Role(vv) - case float64: - parsedValue = Role(v) - } - f = parsedValue - x.Role = f - } - case "keys": - { - var f []byte - var list [][]byte - in.Delim('[') - for !in.IsDelim(']') { - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - list = append(list, f) - in.WantComma() - } - x.Keys = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type EACLRecord struct { - Operation Operation `json:"operation"` - Action Action `json:"action"` - Filters []EACLRecord_Filter `json:"filters"` - Targets []EACLRecord_Target `json:"targets"` -} - -var ( - _ encoding.ProtoMarshaler = (*EACLRecord)(nil) - _ encoding.ProtoUnmarshaler = (*EACLRecord)(nil) - _ json.Marshaler = (*EACLRecord)(nil) - _ json.Unmarshaler = (*EACLRecord)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *EACLRecord) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.EnumSize(1, int32(x.Operation)) - size += proto.EnumSize(2, int32(x.Action)) - for i := range x.Filters { - size += proto.NestedStructureSizeUnchecked(3, &x.Filters[i]) - } - for i := range x.Targets { - size += proto.NestedStructureSizeUnchecked(4, &x.Targets[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *EACLRecord) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *EACLRecord) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if int32(x.Operation) != 0 { - mm.AppendInt32(1, int32(x.Operation)) - } - if int32(x.Action) != 0 { - mm.AppendInt32(2, int32(x.Action)) - } - for i := range x.Filters { - x.Filters[i].EmitProtobuf(mm.AppendMessage(3)) - } - for i := range x.Targets { - x.Targets[i].EmitProtobuf(mm.AppendMessage(4)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *EACLRecord) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "EACLRecord") - } - switch fc.FieldNum { - case 1: // Operation - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Operation") - } - x.Operation = Operation(data) - case 2: // Action - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Action") - } - x.Action = Action(data) - case 3: // Filters - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Filters") - } - x.Filters = append(x.Filters, EACLRecord_Filter{}) - ff := &x.Filters[len(x.Filters)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 4: // Targets - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Targets") - } - x.Targets = append(x.Targets, EACLRecord_Target{}) - ff := &x.Targets[len(x.Targets)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *EACLRecord) GetOperation() Operation { - if x != nil { - return x.Operation - } - return 0 -} -func (x *EACLRecord) SetOperation(v Operation) { - x.Operation = v -} -func (x *EACLRecord) GetAction() Action { - if x != nil { - return x.Action - } - return 0 -} -func (x *EACLRecord) SetAction(v Action) { - x.Action = v -} -func (x *EACLRecord) GetFilters() []EACLRecord_Filter { - if x != nil { - return x.Filters - } - return nil -} -func (x *EACLRecord) SetFilters(v []EACLRecord_Filter) { - x.Filters = v -} -func (x *EACLRecord) GetTargets() []EACLRecord_Target { - if x != nil { - return x.Targets - } - return nil -} -func (x *EACLRecord) SetTargets(v []EACLRecord_Target) { - x.Targets = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *EACLRecord) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *EACLRecord) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"operation\":" - out.RawString(prefix) - v := int32(x.Operation) - if vv, ok := Operation_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"action\":" - out.RawString(prefix) - v := int32(x.Action) - if vv, ok := Action_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"filters\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Filters { - if i != 0 { - out.RawByte(',') - } - x.Filters[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"targets\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Targets { - if i != 0 { - out.RawByte(',') - } - x.Targets[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *EACLRecord) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *EACLRecord) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "operation": - { - var f Operation - var parsedValue Operation - switch v := in.Interface().(type) { - case string: - if vv, ok := Operation_value[v]; ok { - parsedValue = Operation(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = Operation(vv) - case float64: - parsedValue = Operation(v) - } - f = parsedValue - x.Operation = f - } - case "action": - { - var f Action - var parsedValue Action - switch v := in.Interface().(type) { - case string: - if vv, ok := Action_value[v]; ok { - parsedValue = Action(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = Action(vv) - case float64: - parsedValue = Action(v) - } - f = parsedValue - x.Action = f - } - case "filters": - { - var f EACLRecord_Filter - var list []EACLRecord_Filter - in.Delim('[') - for !in.IsDelim(']') { - f = EACLRecord_Filter{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Filters = list - in.Delim(']') - } - case "targets": - { - var f EACLRecord_Target - var list []EACLRecord_Target - in.Delim('[') - for !in.IsDelim(']') { - f = EACLRecord_Target{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Targets = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type EACLTable struct { - Version *grpc.Version `json:"version"` - ContainerId *grpc.ContainerID `json:"containerID"` - Records []EACLRecord `json:"records"` -} - -var ( - _ encoding.ProtoMarshaler = (*EACLTable)(nil) - _ encoding.ProtoUnmarshaler = (*EACLTable)(nil) - _ json.Marshaler = (*EACLTable)(nil) - _ json.Unmarshaler = (*EACLTable)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *EACLTable) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Version) - size += proto.NestedStructureSize(2, x.ContainerId) - for i := range x.Records { - size += proto.NestedStructureSizeUnchecked(3, &x.Records[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *EACLTable) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *EACLTable) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Version != nil { - x.Version.EmitProtobuf(mm.AppendMessage(1)) - } - if x.ContainerId != nil { - x.ContainerId.EmitProtobuf(mm.AppendMessage(2)) - } - for i := range x.Records { - x.Records[i].EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *EACLTable) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "EACLTable") - } - switch fc.FieldNum { - case 1: // Version - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Version") - } - x.Version = new(grpc.Version) - if err := x.Version.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // ContainerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ContainerId") - } - x.ContainerId = new(grpc.ContainerID) - if err := x.ContainerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // Records - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Records") - } - x.Records = append(x.Records, EACLRecord{}) - ff := &x.Records[len(x.Records)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *EACLTable) GetVersion() *grpc.Version { - if x != nil { - return x.Version - } - return nil -} -func (x *EACLTable) SetVersion(v *grpc.Version) { - x.Version = v -} -func (x *EACLTable) GetContainerId() *grpc.ContainerID { - if x != nil { - return x.ContainerId - } - return nil -} -func (x *EACLTable) SetContainerId(v *grpc.ContainerID) { - x.ContainerId = v -} -func (x *EACLTable) GetRecords() []EACLRecord { - if x != nil { - return x.Records - } - return nil -} -func (x *EACLTable) SetRecords(v []EACLRecord) { - x.Records = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *EACLTable) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *EACLTable) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"version\":" - out.RawString(prefix) - x.Version.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"containerID\":" - out.RawString(prefix) - x.ContainerId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"records\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Records { - if i != 0 { - out.RawByte(',') - } - x.Records[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *EACLTable) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *EACLTable) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "version": - { - var f *grpc.Version - f = new(grpc.Version) - f.UnmarshalEasyJSON(in) - x.Version = f - } - case "containerID": - { - var f *grpc.ContainerID - f = new(grpc.ContainerID) - f.UnmarshalEasyJSON(in) - x.ContainerId = f - } - case "records": - { - var f EACLRecord - var list []EACLRecord - in.Delim('[') - for !in.IsDelim(']') { - f = EACLRecord{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Records = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type BearerToken_Body_TokenLifetime struct { - Exp uint64 `json:"exp"` - Nbf uint64 `json:"nbf"` - Iat uint64 `json:"iat"` -} - -var ( - _ encoding.ProtoMarshaler = (*BearerToken_Body_TokenLifetime)(nil) - _ encoding.ProtoUnmarshaler = (*BearerToken_Body_TokenLifetime)(nil) - _ json.Marshaler = (*BearerToken_Body_TokenLifetime)(nil) - _ json.Unmarshaler = (*BearerToken_Body_TokenLifetime)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *BearerToken_Body_TokenLifetime) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.UInt64Size(1, x.Exp) - size += proto.UInt64Size(2, x.Nbf) - size += proto.UInt64Size(3, x.Iat) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *BearerToken_Body_TokenLifetime) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *BearerToken_Body_TokenLifetime) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Exp != 0 { - mm.AppendUint64(1, x.Exp) - } - if x.Nbf != 0 { - mm.AppendUint64(2, x.Nbf) - } - if x.Iat != 0 { - mm.AppendUint64(3, x.Iat) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *BearerToken_Body_TokenLifetime) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "BearerToken_Body_TokenLifetime") - } - switch fc.FieldNum { - case 1: // Exp - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Exp") - } - x.Exp = data - case 2: // Nbf - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Nbf") - } - x.Nbf = data - case 3: // Iat - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Iat") - } - x.Iat = data - } - } - return nil -} -func (x *BearerToken_Body_TokenLifetime) GetExp() uint64 { - if x != nil { - return x.Exp - } - return 0 -} -func (x *BearerToken_Body_TokenLifetime) SetExp(v uint64) { - x.Exp = v -} -func (x *BearerToken_Body_TokenLifetime) GetNbf() uint64 { - if x != nil { - return x.Nbf - } - return 0 -} -func (x *BearerToken_Body_TokenLifetime) SetNbf(v uint64) { - x.Nbf = v -} -func (x *BearerToken_Body_TokenLifetime) GetIat() uint64 { - if x != nil { - return x.Iat - } - return 0 -} -func (x *BearerToken_Body_TokenLifetime) SetIat(v uint64) { - x.Iat = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *BearerToken_Body_TokenLifetime) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *BearerToken_Body_TokenLifetime) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"exp\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.Exp, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"nbf\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.Nbf, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"iat\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.Iat, 10) - out.RawByte('"') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *BearerToken_Body_TokenLifetime) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *BearerToken_Body_TokenLifetime) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "exp": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.Exp = f - } - case "nbf": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.Nbf = f - } - case "iat": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.Iat = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type BearerToken_Body_APEOverride struct { - Target *grpc1.ChainTarget `json:"target"` - Chains []grpc1.Chain `json:"chains"` -} - -var ( - _ encoding.ProtoMarshaler = (*BearerToken_Body_APEOverride)(nil) - _ encoding.ProtoUnmarshaler = (*BearerToken_Body_APEOverride)(nil) - _ json.Marshaler = (*BearerToken_Body_APEOverride)(nil) - _ json.Unmarshaler = (*BearerToken_Body_APEOverride)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *BearerToken_Body_APEOverride) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Target) - for i := range x.Chains { - size += proto.NestedStructureSizeUnchecked(2, &x.Chains[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *BearerToken_Body_APEOverride) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *BearerToken_Body_APEOverride) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Target != nil { - x.Target.EmitProtobuf(mm.AppendMessage(1)) - } - for i := range x.Chains { - x.Chains[i].EmitProtobuf(mm.AppendMessage(2)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *BearerToken_Body_APEOverride) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "BearerToken_Body_APEOverride") - } - switch fc.FieldNum { - case 1: // Target - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Target") - } - x.Target = new(grpc1.ChainTarget) - if err := x.Target.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Chains - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Chains") - } - x.Chains = append(x.Chains, grpc1.Chain{}) - ff := &x.Chains[len(x.Chains)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *BearerToken_Body_APEOverride) GetTarget() *grpc1.ChainTarget { - if x != nil { - return x.Target - } - return nil -} -func (x *BearerToken_Body_APEOverride) SetTarget(v *grpc1.ChainTarget) { - x.Target = v -} -func (x *BearerToken_Body_APEOverride) GetChains() []grpc1.Chain { - if x != nil { - return x.Chains - } - return nil -} -func (x *BearerToken_Body_APEOverride) SetChains(v []grpc1.Chain) { - x.Chains = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *BearerToken_Body_APEOverride) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *BearerToken_Body_APEOverride) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"target\":" - out.RawString(prefix) - x.Target.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"chains\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Chains { - if i != 0 { - out.RawByte(',') - } - x.Chains[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *BearerToken_Body_APEOverride) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *BearerToken_Body_APEOverride) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "target": - { - var f *grpc1.ChainTarget - f = new(grpc1.ChainTarget) - f.UnmarshalEasyJSON(in) - x.Target = f - } - case "chains": - { - var f grpc1.Chain - var list []grpc1.Chain - in.Delim('[') - for !in.IsDelim(']') { - f = grpc1.Chain{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Chains = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type BearerToken_Body struct { - EaclTable *EACLTable `json:"eaclTable"` - OwnerId *grpc.OwnerID `json:"ownerID"` - Lifetime *BearerToken_Body_TokenLifetime `json:"lifetime"` - AllowImpersonate bool `json:"allowImpersonate"` - ApeOverride *BearerToken_Body_APEOverride `json:"apeOverride"` -} - -var ( - _ encoding.ProtoMarshaler = (*BearerToken_Body)(nil) - _ encoding.ProtoUnmarshaler = (*BearerToken_Body)(nil) - _ json.Marshaler = (*BearerToken_Body)(nil) - _ json.Unmarshaler = (*BearerToken_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *BearerToken_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.EaclTable) - size += proto.NestedStructureSize(2, x.OwnerId) - size += proto.NestedStructureSize(3, x.Lifetime) - size += proto.BoolSize(4, x.AllowImpersonate) - size += proto.NestedStructureSize(5, x.ApeOverride) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *BearerToken_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *BearerToken_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.EaclTable != nil { - x.EaclTable.EmitProtobuf(mm.AppendMessage(1)) - } - if x.OwnerId != nil { - x.OwnerId.EmitProtobuf(mm.AppendMessage(2)) - } - if x.Lifetime != nil { - x.Lifetime.EmitProtobuf(mm.AppendMessage(3)) - } - if x.AllowImpersonate { - mm.AppendBool(4, x.AllowImpersonate) - } - if x.ApeOverride != nil { - x.ApeOverride.EmitProtobuf(mm.AppendMessage(5)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *BearerToken_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "BearerToken_Body") - } - switch fc.FieldNum { - case 1: // EaclTable - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "EaclTable") - } - x.EaclTable = new(EACLTable) - if err := x.EaclTable.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // OwnerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "OwnerId") - } - x.OwnerId = new(grpc.OwnerID) - if err := x.OwnerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // Lifetime - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Lifetime") - } - x.Lifetime = new(BearerToken_Body_TokenLifetime) - if err := x.Lifetime.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 4: // AllowImpersonate - data, ok := fc.Bool() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "AllowImpersonate") - } - x.AllowImpersonate = data - case 5: // ApeOverride - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ApeOverride") - } - x.ApeOverride = new(BearerToken_Body_APEOverride) - if err := x.ApeOverride.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *BearerToken_Body) GetEaclTable() *EACLTable { - if x != nil { - return x.EaclTable - } - return nil -} -func (x *BearerToken_Body) SetEaclTable(v *EACLTable) { - x.EaclTable = v -} -func (x *BearerToken_Body) GetOwnerId() *grpc.OwnerID { - if x != nil { - return x.OwnerId - } - return nil -} -func (x *BearerToken_Body) SetOwnerId(v *grpc.OwnerID) { - x.OwnerId = v -} -func (x *BearerToken_Body) GetLifetime() *BearerToken_Body_TokenLifetime { - if x != nil { - return x.Lifetime - } - return nil -} -func (x *BearerToken_Body) SetLifetime(v *BearerToken_Body_TokenLifetime) { - x.Lifetime = v -} -func (x *BearerToken_Body) GetAllowImpersonate() bool { - if x != nil { - return x.AllowImpersonate - } - return false -} -func (x *BearerToken_Body) SetAllowImpersonate(v bool) { - x.AllowImpersonate = v -} -func (x *BearerToken_Body) GetApeOverride() *BearerToken_Body_APEOverride { - if x != nil { - return x.ApeOverride - } - return nil -} -func (x *BearerToken_Body) SetApeOverride(v *BearerToken_Body_APEOverride) { - x.ApeOverride = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *BearerToken_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *BearerToken_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"eaclTable\":" - out.RawString(prefix) - x.EaclTable.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ownerID\":" - out.RawString(prefix) - x.OwnerId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"lifetime\":" - out.RawString(prefix) - x.Lifetime.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"allowImpersonate\":" - out.RawString(prefix) - out.Bool(x.AllowImpersonate) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"apeOverride\":" - out.RawString(prefix) - x.ApeOverride.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *BearerToken_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *BearerToken_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "eaclTable": - { - var f *EACLTable - f = new(EACLTable) - f.UnmarshalEasyJSON(in) - x.EaclTable = f - } - case "ownerID": - { - var f *grpc.OwnerID - f = new(grpc.OwnerID) - f.UnmarshalEasyJSON(in) - x.OwnerId = f - } - case "lifetime": - { - var f *BearerToken_Body_TokenLifetime - f = new(BearerToken_Body_TokenLifetime) - f.UnmarshalEasyJSON(in) - x.Lifetime = f - } - case "allowImpersonate": - { - var f bool - f = in.Bool() - x.AllowImpersonate = f - } - case "apeOverride": - { - var f *BearerToken_Body_APEOverride - f = new(BearerToken_Body_APEOverride) - f.UnmarshalEasyJSON(in) - x.ApeOverride = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type BearerToken struct { - Body *BearerToken_Body `json:"body"` - Signature *grpc.Signature `json:"signature"` -} - -var ( - _ encoding.ProtoMarshaler = (*BearerToken)(nil) - _ encoding.ProtoUnmarshaler = (*BearerToken)(nil) - _ json.Marshaler = (*BearerToken)(nil) - _ json.Unmarshaler = (*BearerToken)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *BearerToken) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.Signature) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *BearerToken) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *BearerToken) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Signature != nil { - x.Signature.EmitProtobuf(mm.AppendMessage(2)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *BearerToken) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "BearerToken") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(BearerToken_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Signature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Signature") - } - x.Signature = new(grpc.Signature) - if err := x.Signature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *BearerToken) GetBody() *BearerToken_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *BearerToken) SetBody(v *BearerToken_Body) { - x.Body = v -} -func (x *BearerToken) GetSignature() *grpc.Signature { - if x != nil { - return x.Signature - } - return nil -} -func (x *BearerToken) SetSignature(v *grpc.Signature) { - x.Signature = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *BearerToken) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *BearerToken) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"signature\":" - out.RawString(prefix) - x.Signature.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *BearerToken) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *BearerToken) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *BearerToken_Body - f = new(BearerToken_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "signature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.Signature = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/acl/grpc/types_frostfs_fuzz.go b/acl/grpc/types_frostfs_fuzz.go deleted file mode 100644 index 5d5b763..0000000 --- a/acl/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,64 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package acl - -func DoFuzzProtoEACLRecord(data []byte) int { - msg := new(EACLRecord) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONEACLRecord(data []byte) int { - msg := new(EACLRecord) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoEACLTable(data []byte) int { - msg := new(EACLTable) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONEACLTable(data []byte) int { - msg := new(EACLTable) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoBearerToken(data []byte) int { - msg := new(BearerToken) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONBearerToken(data []byte) int { - msg := new(BearerToken) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/acl/grpc/types_frostfs_test.go b/acl/grpc/types_frostfs_test.go deleted file mode 100644 index c6d1c43..0000000 --- a/acl/grpc/types_frostfs_test.go +++ /dev/null @@ -1,41 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package acl - -import ( - testing "testing" -) - -func FuzzProtoEACLRecord(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoEACLRecord(data) - }) -} -func FuzzJSONEACLRecord(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONEACLRecord(data) - }) -} -func FuzzProtoEACLTable(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoEACLTable(data) - }) -} -func FuzzJSONEACLTable(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONEACLTable(data) - }) -} -func FuzzProtoBearerToken(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoBearerToken(data) - }) -} -func FuzzJSONBearerToken(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONBearerToken(data) - }) -} diff --git a/acl/json.go b/acl/json.go deleted file mode 100644 index 9046555..0000000 --- a/acl/json.go +++ /dev/null @@ -1,70 +0,0 @@ -package acl - -import ( - acl "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -func (f *HeaderFilter) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(f) -} - -func (f *HeaderFilter) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(f, data, new(acl.EACLRecord_Filter)) -} - -func (t *Target) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(t) -} - -func (t *Target) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(t, data, new(acl.EACLRecord_Target)) -} - -func (a *APEOverride) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(a) -} - -func (a *APEOverride) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(a, data, new(acl.BearerToken_Body_APEOverride)) -} - -func (r *Record) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(r) -} - -func (r *Record) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(r, data, new(acl.EACLRecord)) -} - -func (t *Table) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(t) -} - -func (t *Table) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(t, data, new(acl.EACLTable)) -} - -func (l *TokenLifetime) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(l) -} - -func (l *TokenLifetime) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(l, data, new(acl.BearerToken_Body_TokenLifetime)) -} - -func (bt *BearerTokenBody) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(bt) -} - -func (bt *BearerTokenBody) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(bt, data, new(acl.BearerToken_Body)) -} - -func (bt *BearerToken) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(bt) -} - -func (bt *BearerToken) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(bt, data, new(acl.BearerToken)) -} diff --git a/acl/marshal.go b/acl/marshal.go deleted file mode 100644 index 2e59304..0000000 --- a/acl/marshal.go +++ /dev/null @@ -1,350 +0,0 @@ -package acl - -import ( - acl "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - protoutil "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" -) - -const ( - filterHeaderTypeField = 1 - filterMatchTypeField = 2 - filterNameField = 3 - filterValueField = 4 - - targetTypeField = 1 - targetKeysField = 2 - - recordOperationField = 1 - recordActionField = 2 - recordFiltersField = 3 - recordTargetsField = 4 - - tableVersionField = 1 - tableContainerIDField = 2 - tableRecordsField = 3 - - lifetimeExpirationField = 1 - lifetimeNotValidBeforeField = 2 - lifetimeIssuedAtField = 3 - - tokenAPEChainsTargetField = 1 - tokenAPEChainsChainsField = 2 - - bearerTokenBodyACLField = 1 - bearerTokenBodyOwnerField = 2 - bearerTokenBodyLifetimeField = 3 - bearerTokenBodyImpersonate = 4 - bearerTokenTokenAPEChainsField = 5 - - bearerTokenBodyField = 1 - bearerTokenSignatureField = 2 -) - -// StableMarshal marshals unified acl table structure in a protobuf -// compatible way without field order shuffle. -func (t *Table) StableMarshal(buf []byte) []byte { - if t == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, t.StableSize()) - } - - var offset int - - offset += protoutil.NestedStructureMarshal(tableVersionField, buf[offset:], t.version) - offset += protoutil.NestedStructureMarshal(tableContainerIDField, buf[offset:], t.cid) - - for i := range t.records { - offset += protoutil.NestedStructureMarshal(tableRecordsField, buf[offset:], &t.records[i]) - } - - return buf -} - -// StableSize of acl table structure marshalled by StableMarshal function. -func (t *Table) StableSize() (size int) { - if t == nil { - return 0 - } - - size += protoutil.NestedStructureSize(tableVersionField, t.version) - size += protoutil.NestedStructureSize(tableContainerIDField, t.cid) - - for i := range t.records { - size += protoutil.NestedStructureSize(tableRecordsField, &t.records[i]) - } - - return size -} - -func (t *Table) Unmarshal(data []byte) error { - return message.Unmarshal(t, data, new(acl.EACLTable)) -} - -// StableMarshal marshals unified acl record structure in a protobuf -// compatible way without field order shuffle. -func (r *Record) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += protoutil.EnumMarshal(recordOperationField, buf[offset:], int32(r.op)) - offset += protoutil.EnumMarshal(recordActionField, buf[offset:], int32(r.action)) - - for i := range r.filters { - offset += protoutil.NestedStructureMarshal(recordFiltersField, buf[offset:], &r.filters[i]) - } - - for i := range r.targets { - offset += protoutil.NestedStructureMarshal(recordTargetsField, buf[offset:], &r.targets[i]) - } - - return buf -} - -// StableSize of acl record structure marshalled by StableMarshal function. -func (r *Record) StableSize() (size int) { - if r == nil { - return 0 - } - - size += protoutil.EnumSize(recordOperationField, int32(r.op)) - size += protoutil.EnumSize(recordActionField, int32(r.action)) - - for i := range r.filters { - size += protoutil.NestedStructureSize(recordFiltersField, &r.filters[i]) - } - - for i := range r.targets { - size += protoutil.NestedStructureSize(recordTargetsField, &r.targets[i]) - } - - return size -} - -func (r *Record) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(acl.EACLRecord)) -} - -// StableMarshal marshals unified header filter structure in a protobuf -// compatible way without field order shuffle. -func (f *HeaderFilter) StableMarshal(buf []byte) []byte { - if f == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, f.StableSize()) - } - - var offset int - - offset += protoutil.EnumMarshal(filterHeaderTypeField, buf[offset:], int32(f.hdrType)) - offset += protoutil.EnumMarshal(filterMatchTypeField, buf[offset:], int32(f.matchType)) - offset += protoutil.StringMarshal(filterNameField, buf[offset:], f.key) - protoutil.StringMarshal(filterValueField, buf[offset:], f.value) - - return buf -} - -// StableSize of header filter structure marshalled by StableMarshal function. -func (f *HeaderFilter) StableSize() (size int) { - if f == nil { - return 0 - } - - size += protoutil.EnumSize(filterHeaderTypeField, int32(f.hdrType)) - size += protoutil.EnumSize(filterMatchTypeField, int32(f.matchType)) - size += protoutil.StringSize(filterNameField, f.key) - size += protoutil.StringSize(filterValueField, f.value) - - return size -} - -func (f *HeaderFilter) Unmarshal(data []byte) error { - return message.Unmarshal(f, data, new(acl.EACLRecord_Filter)) -} - -// StableMarshal marshals unified role info structure in a protobuf -// compatible way without field order shuffle. -func (t *Target) StableMarshal(buf []byte) []byte { - if t == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, t.StableSize()) - } - - var offset int - - offset += protoutil.EnumMarshal(targetTypeField, buf[offset:], int32(t.role)) - protoutil.RepeatedBytesMarshal(targetKeysField, buf[offset:], t.keys) - - return buf -} - -// StableSize of role info structure marshalled by StableMarshal function. -func (t *Target) StableSize() (size int) { - if t == nil { - return 0 - } - - size += protoutil.EnumSize(targetTypeField, int32(t.role)) - size += protoutil.RepeatedBytesSize(targetKeysField, t.keys) - - return size -} - -func (t *Target) Unmarshal(data []byte) error { - return message.Unmarshal(t, data, new(acl.EACLRecord_Target)) -} - -func (l *TokenLifetime) StableMarshal(buf []byte) []byte { - if l == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, l.StableSize()) - } - - var offset int - - offset += protoutil.UInt64Marshal(lifetimeExpirationField, buf[offset:], l.exp) - offset += protoutil.UInt64Marshal(lifetimeNotValidBeforeField, buf[offset:], l.nbf) - protoutil.UInt64Marshal(lifetimeIssuedAtField, buf[offset:], l.iat) - - return buf -} - -func (l *TokenLifetime) StableSize() (size int) { - if l == nil { - return 0 - } - - size += protoutil.UInt64Size(lifetimeExpirationField, l.exp) - size += protoutil.UInt64Size(lifetimeNotValidBeforeField, l.nbf) - size += protoutil.UInt64Size(lifetimeIssuedAtField, l.iat) - - return size -} - -func (l *TokenLifetime) Unmarshal(data []byte) error { - return message.Unmarshal(l, data, new(acl.BearerToken_Body_TokenLifetime)) -} - -func (c *APEOverride) StableMarshal(buf []byte) []byte { - if c == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, c.StableSize()) - } - - var offset int - - offset += protoutil.NestedStructureMarshal(tokenAPEChainsTargetField, buf[offset:], c.target) - for i := range c.chains { - offset += protoutil.NestedStructureMarshal(tokenAPEChainsChainsField, buf[offset:], c.chains[i]) - } - - return buf -} - -func (c *APEOverride) StableSize() (size int) { - if c == nil { - return 0 - } - - size += protoutil.NestedStructureSize(tokenAPEChainsTargetField, c.target) - for i := range c.chains { - size += protoutil.NestedStructureSize(tokenAPEChainsChainsField, c.chains[i]) - } - - return size -} - -func (c *APEOverride) Unmarshal(data []byte) error { - return message.Unmarshal(c, data, new(acl.BearerToken_Body_APEOverride)) -} - -func (bt *BearerTokenBody) StableMarshal(buf []byte) []byte { - if bt == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, bt.StableSize()) - } - - var offset int - - offset += protoutil.NestedStructureMarshal(bearerTokenBodyACLField, buf[offset:], bt.eacl) - offset += protoutil.NestedStructureMarshal(bearerTokenBodyOwnerField, buf[offset:], bt.ownerID) - offset += protoutil.NestedStructureMarshal(bearerTokenBodyLifetimeField, buf[offset:], bt.lifetime) - offset += protoutil.BoolMarshal(bearerTokenBodyImpersonate, buf[offset:], bt.impersonate) - protoutil.NestedStructureMarshal(bearerTokenTokenAPEChainsField, buf[offset:], bt.apeOverride) - - return buf -} - -func (bt *BearerTokenBody) StableSize() (size int) { - if bt == nil { - return 0 - } - - size += protoutil.NestedStructureSize(bearerTokenBodyACLField, bt.eacl) - size += protoutil.NestedStructureSize(bearerTokenBodyOwnerField, bt.ownerID) - size += protoutil.NestedStructureSize(bearerTokenBodyLifetimeField, bt.lifetime) - size += protoutil.BoolSize(bearerTokenBodyImpersonate, bt.impersonate) - size += protoutil.NestedStructureSize(bearerTokenTokenAPEChainsField, bt.apeOverride) - - return size -} - -func (bt *BearerTokenBody) Unmarshal(data []byte) error { - return message.Unmarshal(bt, data, new(acl.BearerToken_Body)) -} - -func (bt *BearerToken) StableMarshal(buf []byte) []byte { - if bt == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, bt.StableSize()) - } - - var offset int - - offset += protoutil.NestedStructureMarshal(bearerTokenBodyField, buf[offset:], bt.body) - protoutil.NestedStructureMarshal(bearerTokenSignatureField, buf[offset:], bt.sig) - - return buf -} - -func (bt *BearerToken) StableSize() (size int) { - if bt == nil { - return 0 - } - - size += protoutil.NestedStructureSize(bearerTokenBodyField, bt.body) - size += protoutil.NestedStructureSize(bearerTokenSignatureField, bt.sig) - - return size -} - -func (bt *BearerToken) Unmarshal(data []byte) error { - return message.Unmarshal(bt, data, new(acl.BearerToken)) -} diff --git a/acl/message_test.go b/acl/message_test.go deleted file mode 100644 index 8f340f1..0000000 --- a/acl/message_test.go +++ /dev/null @@ -1,21 +0,0 @@ -package acl_test - -import ( - "testing" - - acltest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl/test" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - messagetest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message/test" -) - -func TestMessageConvert(t *testing.T) { - messagetest.TestRPCMessage(t, - func(empty bool) message.Message { return acltest.GenerateFilter(empty) }, - func(empty bool) message.Message { return acltest.GenerateTarget(empty) }, - func(empty bool) message.Message { return acltest.GenerateRecord(empty) }, - func(empty bool) message.Message { return acltest.GenerateTable(empty) }, - func(empty bool) message.Message { return acltest.GenerateTokenLifetime(empty) }, - func(empty bool) message.Message { return acltest.GenerateBearerTokenBody(empty) }, - func(empty bool) message.Message { return acltest.GenerateBearerToken(empty) }, - ) -} diff --git a/acl/string.go b/acl/string.go deleted file mode 100644 index 6dab037..0000000 --- a/acl/string.go +++ /dev/null @@ -1,110 +0,0 @@ -package acl - -import ( - acl "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl/grpc" -) - -// String returns string representation of Action. -func (x Action) String() string { - return ActionToGRPCField(x).String() -} - -// FromString parses Action from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (x *Action) FromString(s string) bool { - var g acl.Action - - ok := g.FromString(s) - - if ok { - *x = ActionFromGRPCField(g) - } - - return ok -} - -// String returns string representation of Role. -func (x Role) String() string { - return RoleToGRPCField(x).String() -} - -// FromString parses Role from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (x *Role) FromString(s string) bool { - var g acl.Role - - ok := g.FromString(s) - - if ok { - *x = RoleFromGRPCField(g) - } - - return ok -} - -// String returns string representation of Operation. -func (x Operation) String() string { - return OperationToGRPCField(x).String() -} - -// FromString parses Operation from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (x *Operation) FromString(s string) bool { - var g acl.Operation - - ok := g.FromString(s) - - if ok { - *x = OperationFromGRPCField(g) - } - - return ok -} - -// String returns string representation of MatchType. -func (x MatchType) String() string { - return MatchTypeToGRPCField(x).String() -} - -// FromString parses MatchType from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (x *MatchType) FromString(s string) bool { - var g acl.MatchType - - ok := g.FromString(s) - - if ok { - *x = MatchTypeFromGRPCField(g) - } - - return ok -} - -// String returns string representation of HeaderType. -func (x HeaderType) String() string { - return HeaderTypeToGRPCField(x).String() -} - -// FromString parses HeaderType from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (x *HeaderType) FromString(s string) bool { - var g acl.HeaderType - - ok := g.FromString(s) - - if ok { - *x = HeaderTypeFromGRPCField(g) - } - - return ok -} diff --git a/acl/test/generate.go b/acl/test/generate.go deleted file mode 100644 index 30a960a..0000000 --- a/acl/test/generate.go +++ /dev/null @@ -1,144 +0,0 @@ -package acltest - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl" - apetest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape/test" - accountingtest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/test" -) - -func GenerateBearerToken(empty bool) *acl.BearerToken { - m := new(acl.BearerToken) - - if !empty { - m.SetBody(GenerateBearerTokenBody(false)) - } - - m.SetSignature(accountingtest.GenerateSignature(empty)) - - return m -} - -func GenerateBearerTokenBody(empty bool) *acl.BearerTokenBody { - m := new(acl.BearerTokenBody) - - if !empty { - m.SetOwnerID(accountingtest.GenerateOwnerID(false)) - m.SetLifetime(GenerateTokenLifetime(false)) - m.SetAPEOverride(GenerateAPEOverride(empty)) - } - - return m -} - -func GenerateAPEOverride(empty bool) *acl.APEOverride { - var m *acl.APEOverride - - if !empty { - m = new(acl.APEOverride) - m.SetTarget(apetest.GenerateChainTarget(empty)) - m.SetChains(apetest.GenerateRawChains(false, 3)) - } - - return m -} - -func GenerateTable(empty bool) *acl.Table { - m := new(acl.Table) - - if !empty { - m.SetRecords(GenerateRecords(false)) - m.SetContainerID(accountingtest.GenerateContainerID(false)) - } - - m.SetVersion(accountingtest.GenerateVersion(empty)) - - return m -} - -func GenerateRecords(empty bool) []acl.Record { - var rs []acl.Record - - if !empty { - rs = append(rs, - *GenerateRecord(false), - *GenerateRecord(false), - ) - } - - return rs -} - -func GenerateRecord(empty bool) *acl.Record { - m := new(acl.Record) - - if !empty { - m.SetAction(acl.ActionAllow) - m.SetOperation(acl.OperationGet) - m.SetFilters(GenerateFilters(false)) - m.SetTargets(GenerateTargets(false)) - } - - return m -} - -func GenerateFilters(empty bool) []acl.HeaderFilter { - var fs []acl.HeaderFilter - - if !empty { - fs = append(fs, - *GenerateFilter(false), - *GenerateFilter(false), - ) - } - - return fs -} - -func GenerateFilter(empty bool) *acl.HeaderFilter { - m := new(acl.HeaderFilter) - - if !empty { - m.SetKey("key") - m.SetValue("val") - m.SetHeaderType(acl.HeaderTypeRequest) - m.SetMatchType(acl.MatchTypeStringEqual) - } - - return m -} - -func GenerateTargets(empty bool) []acl.Target { - var ts []acl.Target - - if !empty { - ts = append(ts, - *GenerateTarget(false), - *GenerateTarget(false), - ) - } - - return ts -} - -func GenerateTarget(empty bool) *acl.Target { - m := new(acl.Target) - - if !empty { - m.SetRole(acl.RoleSystem) - m.SetKeys([][]byte{{1}, {2}}) - } - - return m -} - -func GenerateTokenLifetime(empty bool) *acl.TokenLifetime { - m := new(acl.TokenLifetime) - - if !empty { - m.SetExp(1) - m.SetIat(2) - m.SetExp(3) - } - - return m -} diff --git a/acl/types.go b/acl/types.go deleted file mode 100644 index 960d8c9..0000000 --- a/acl/types.go +++ /dev/null @@ -1,426 +0,0 @@ -package acl - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" -) - -// HeaderFilter is a unified structure of FilterInfo -// message from proto definition. -type HeaderFilter struct { - hdrType HeaderType - - matchType MatchType - - key, value string -} - -// Target is a unified structure of Target -// message from proto definition. -type Target struct { - role Role - - keys [][]byte -} - -// Record is a unified structure of EACLRecord -// message from proto definition. -type Record struct { - op Operation - - action Action - - filters []HeaderFilter - - targets []Target -} - -// Table is a unified structure of EACLTable -// message from proto definition. -type Table struct { - version *refs.Version - - cid *refs.ContainerID - - records []Record -} - -type TokenLifetime struct { - exp, nbf, iat uint64 -} - -type APEOverride struct { - target *ape.ChainTarget - - chains []*ape.Chain -} - -type BearerTokenBody struct { - eacl *Table - - ownerID *refs.OwnerID - - lifetime *TokenLifetime - - apeOverride *APEOverride - - impersonate bool -} - -type BearerToken struct { - body *BearerTokenBody - - sig *refs.Signature -} - -// Target is a unified enum of MatchType enum from proto definition. -type MatchType uint32 - -// HeaderType is a unified enum of HeaderType enum from proto definition. -type HeaderType uint32 - -// Action is a unified enum of Action enum from proto definition. -type Action uint32 - -// Operation is a unified enum of Operation enum from proto definition. -type Operation uint32 - -// Role is a unified enum of Role enum from proto definition. -type Role uint32 - -const ( - MatchTypeUnknown MatchType = iota - MatchTypeStringEqual - MatchTypeStringNotEqual -) - -const ( - HeaderTypeUnknown HeaderType = iota - HeaderTypeRequest - HeaderTypeObject - HeaderTypeService -) - -const ( - ActionUnknown Action = iota - ActionAllow - ActionDeny -) - -const ( - OperationUnknown Operation = iota - OperationGet - OperationHead - OperationPut - OperationDelete - OperationSearch - OperationRange - OperationRangeHash -) - -const ( - RoleUnknown Role = iota - RoleUser - RoleSystem - RoleOthers -) - -func (f *HeaderFilter) GetHeaderType() HeaderType { - if f != nil { - return f.hdrType - } - - return HeaderTypeUnknown -} - -func (f *HeaderFilter) SetHeaderType(v HeaderType) { - f.hdrType = v -} - -func (f *HeaderFilter) GetMatchType() MatchType { - if f != nil { - return f.matchType - } - - return MatchTypeUnknown -} - -func (f *HeaderFilter) SetMatchType(v MatchType) { - f.matchType = v -} - -func (f *HeaderFilter) GetKey() string { - if f != nil { - return f.key - } - - return "" -} - -func (f *HeaderFilter) SetKey(v string) { - f.key = v -} - -func (f *HeaderFilter) GetValue() string { - if f != nil { - return f.value - } - - return "" -} - -func (f *HeaderFilter) SetValue(v string) { - f.value = v -} - -func (t *Target) GetRole() Role { - if t != nil { - return t.role - } - - return RoleUnknown -} - -func (t *Target) SetRole(v Role) { - t.role = v -} - -func (t *Target) GetKeys() [][]byte { - if t != nil { - return t.keys - } - - return nil -} - -func (t *Target) SetKeys(v [][]byte) { - t.keys = v -} - -func (r *Record) GetOperation() Operation { - if r != nil { - return r.op - } - - return OperationUnknown -} - -func (r *Record) SetOperation(v Operation) { - r.op = v -} - -func (r *Record) GetAction() Action { - if r != nil { - return r.action - } - - return ActionUnknown -} - -func (r *Record) SetAction(v Action) { - r.action = v -} - -func (r *Record) GetFilters() []HeaderFilter { - if r != nil { - return r.filters - } - - return nil -} - -func (r *Record) SetFilters(v []HeaderFilter) { - r.filters = v -} - -func (r *Record) GetTargets() []Target { - if r != nil { - return r.targets - } - - return nil -} - -func (r *Record) SetTargets(v []Target) { - r.targets = v -} - -func (t *Table) GetVersion() *refs.Version { - if t != nil { - return t.version - } - - return nil -} - -func (t *Table) SetVersion(v *refs.Version) { - t.version = v -} - -func (t *Table) GetContainerID() *refs.ContainerID { - if t != nil { - return t.cid - } - - return nil -} - -func (t *Table) SetContainerID(v *refs.ContainerID) { - t.cid = v -} - -func (t *Table) GetRecords() []Record { - if t != nil { - return t.records - } - - return nil -} - -func (t *Table) SetRecords(v []Record) { - t.records = v -} - -func (l *TokenLifetime) GetExp() uint64 { - if l != nil { - return l.exp - } - - return 0 -} - -func (l *TokenLifetime) SetExp(v uint64) { - l.exp = v -} - -func (l *TokenLifetime) GetNbf() uint64 { - if l != nil { - return l.nbf - } - - return 0 -} - -func (l *TokenLifetime) SetNbf(v uint64) { - l.nbf = v -} - -func (l *TokenLifetime) GetIat() uint64 { - if l != nil { - return l.iat - } - - return 0 -} - -func (l *TokenLifetime) SetIat(v uint64) { - l.iat = v -} - -func (bt *BearerTokenBody) GetEACL() *Table { - if bt != nil { - return bt.eacl - } - - return nil -} - -func (bt *BearerTokenBody) SetEACL(v *Table) { - bt.eacl = v -} - -func (t *APEOverride) GetTarget() *ape.ChainTarget { - if t == nil { - return nil - } - - return t.target -} - -func (t *APEOverride) GetChains() []*ape.Chain { - if t == nil { - return nil - } - - return t.chains -} - -func (t *APEOverride) SetTarget(v *ape.ChainTarget) { - t.target = v -} - -func (t *APEOverride) SetChains(v []*ape.Chain) { - t.chains = v -} - -func (bt *BearerTokenBody) GetAPEOverride() *APEOverride { - if bt != nil { - return bt.apeOverride - } - - return nil -} - -func (bt *BearerTokenBody) SetAPEOverride(v *APEOverride) { - bt.apeOverride = v -} - -func (bt *BearerTokenBody) GetOwnerID() *refs.OwnerID { - if bt != nil { - return bt.ownerID - } - - return nil -} - -func (bt *BearerTokenBody) SetOwnerID(v *refs.OwnerID) { - bt.ownerID = v -} - -func (bt *BearerTokenBody) GetLifetime() *TokenLifetime { - if bt != nil { - return bt.lifetime - } - - return nil -} - -func (bt *BearerTokenBody) SetLifetime(v *TokenLifetime) { - bt.lifetime = v -} - -func (bt *BearerTokenBody) GetImpersonate() bool { - if bt != nil { - return bt.impersonate - } - - return false -} - -func (bt *BearerTokenBody) SetImpersonate(v bool) { - bt.impersonate = v -} - -func (bt *BearerToken) GetBody() *BearerTokenBody { - if bt != nil { - return bt.body - } - - return nil -} - -func (bt *BearerToken) SetBody(v *BearerTokenBody) { - bt.body = v -} - -func (bt *BearerToken) GetSignature() *refs.Signature { - if bt != nil { - return bt.sig - } - - return nil -} - -func (bt *BearerToken) SetSignature(v *refs.Signature) { - bt.sig = v -} diff --git a/ape/convert.go b/ape/convert.go deleted file mode 100644 index c1dadd5..0000000 --- a/ape/convert.go +++ /dev/null @@ -1,132 +0,0 @@ -package ape - -import ( - "fmt" - - ape "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -func TargetTypeToGRPCField(typ TargetType) ape.TargetType { - switch typ { - case TargetTypeNamespace: - return ape.TargetType_NAMESPACE - case TargetTypeContainer: - return ape.TargetType_CONTAINER - case TargetTypeUser: - return ape.TargetType_USER - case TargetTypeGroup: - return ape.TargetType_GROUP - default: - return ape.TargetType_UNDEFINED - } -} - -func TargetTypeFromGRPCField(typ ape.TargetType) TargetType { - switch typ { - case ape.TargetType_NAMESPACE: - return TargetTypeNamespace - case ape.TargetType_CONTAINER: - return TargetTypeContainer - case ape.TargetType_USER: - return TargetTypeUser - case ape.TargetType_GROUP: - return TargetTypeGroup - default: - return TargetTypeUndefined - } -} - -func TargetTypeToGRPC(typ TargetType) ape.TargetType { - return ape.TargetType(typ) -} - -func TargetTypeFromGRPC(typ ape.TargetType) TargetType { - return TargetType(typ) -} - -func (v2 *ChainTarget) ToGRPCMessage() grpc.Message { - var mgrpc *ape.ChainTarget - - if v2 != nil { - mgrpc = new(ape.ChainTarget) - - mgrpc.SetType(TargetTypeToGRPC(v2.GetTargetType())) - mgrpc.SetName(v2.GetName()) - } - - return mgrpc -} - -func (v2 *ChainTarget) FromGRPCMessage(m grpc.Message) error { - mgrpc, ok := m.(*ape.ChainTarget) - if !ok { - return message.NewUnexpectedMessageType(m, mgrpc) - } - - v2.SetTargetType(TargetTypeFromGRPC(mgrpc.GetType())) - v2.SetName(mgrpc.GetName()) - - return nil -} - -func (v2 *ChainRaw) ToGRPCMessage() grpc.Message { - var mgrpc *ape.Chain_Raw - - if v2 != nil { - mgrpc = new(ape.Chain_Raw) - - mgrpc.SetRaw(v2.GetRaw()) - } - - return mgrpc -} - -func (v2 *ChainRaw) FromGRPCMessage(m grpc.Message) error { - mgrpc, ok := m.(*ape.Chain_Raw) - if !ok { - return message.NewUnexpectedMessageType(m, mgrpc) - } - - v2.SetRaw(mgrpc.GetRaw()) - - return nil -} - -func (v2 *Chain) ToGRPCMessage() grpc.Message { - var mgrpc *ape.Chain - - if v2 != nil { - mgrpc = new(ape.Chain) - - switch chainKind := v2.GetKind().(type) { - default: - panic(fmt.Sprintf("unsupported chain kind: %T", chainKind)) - case *ChainRaw: - mgrpc.SetKind(chainKind.ToGRPCMessage().(*ape.Chain_Raw)) - } - } - - return mgrpc -} - -func (v2 *Chain) FromGRPCMessage(m grpc.Message) error { - mgrpc, ok := m.(*ape.Chain) - if !ok { - return message.NewUnexpectedMessageType(m, mgrpc) - } - - switch chainKind := mgrpc.GetKind().(type) { - default: - return fmt.Errorf("unsupported chain kind: %T", chainKind) - case *ape.Chain_Raw: - chainRaw := new(ChainRaw) - if err := chainRaw.FromGRPCMessage(chainKind); err != nil { - return err - } - v2.SetKind(chainRaw) - } - - return nil -} diff --git a/ape/grpc/types_frostfs.pb.go b/ape/grpc/types_frostfs.pb.go deleted file mode 100644 index 1f2a1a5..0000000 --- a/ape/grpc/types_frostfs.pb.go +++ /dev/null @@ -1,430 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package ape - -import ( - json "encoding/json" - fmt "fmt" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" - strconv "strconv" -) - -type TargetType int32 - -const ( - TargetType_UNDEFINED TargetType = 0 - TargetType_NAMESPACE TargetType = 1 - TargetType_CONTAINER TargetType = 2 - TargetType_USER TargetType = 3 - TargetType_GROUP TargetType = 4 -) - -var ( - TargetType_name = map[int32]string{ - 0: "UNDEFINED", - 1: "NAMESPACE", - 2: "CONTAINER", - 3: "USER", - 4: "GROUP", - } - TargetType_value = map[string]int32{ - "UNDEFINED": 0, - "NAMESPACE": 1, - "CONTAINER": 2, - "USER": 3, - "GROUP": 4, - } -) - -func (x TargetType) String() string { - if v, ok := TargetType_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *TargetType) FromString(s string) bool { - if v, ok := TargetType_value[s]; ok { - *x = TargetType(v) - return true - } - return false -} - -type ChainTarget struct { - Type TargetType `json:"type"` - Name string `json:"name"` -} - -var ( - _ encoding.ProtoMarshaler = (*ChainTarget)(nil) - _ encoding.ProtoUnmarshaler = (*ChainTarget)(nil) - _ json.Marshaler = (*ChainTarget)(nil) - _ json.Unmarshaler = (*ChainTarget)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ChainTarget) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.EnumSize(1, int32(x.Type)) - size += proto.StringSize(2, x.Name) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ChainTarget) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ChainTarget) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if int32(x.Type) != 0 { - mm.AppendInt32(1, int32(x.Type)) - } - if len(x.Name) != 0 { - mm.AppendString(2, x.Name) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ChainTarget) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ChainTarget") - } - switch fc.FieldNum { - case 1: // Type - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Type") - } - x.Type = TargetType(data) - case 2: // Name - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Name") - } - x.Name = data - } - } - return nil -} -func (x *ChainTarget) GetType() TargetType { - if x != nil { - return x.Type - } - return 0 -} -func (x *ChainTarget) SetType(v TargetType) { - x.Type = v -} -func (x *ChainTarget) GetName() string { - if x != nil { - return x.Name - } - return "" -} -func (x *ChainTarget) SetName(v string) { - x.Name = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ChainTarget) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ChainTarget) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"type\":" - out.RawString(prefix) - v := int32(x.Type) - if vv, ok := TargetType_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"name\":" - out.RawString(prefix) - out.String(x.Name) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ChainTarget) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ChainTarget) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "type": - { - var f TargetType - var parsedValue TargetType - switch v := in.Interface().(type) { - case string: - if vv, ok := TargetType_value[v]; ok { - parsedValue = TargetType(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = TargetType(vv) - case float64: - parsedValue = TargetType(v) - } - f = parsedValue - x.Type = f - } - case "name": - { - var f string - f = in.String() - x.Name = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Chain struct { - Kind isChain_Kind -} - -var ( - _ encoding.ProtoMarshaler = (*Chain)(nil) - _ encoding.ProtoUnmarshaler = (*Chain)(nil) - _ json.Marshaler = (*Chain)(nil) - _ json.Unmarshaler = (*Chain)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Chain) StableSize() (size int) { - if x == nil { - return 0 - } - if inner, ok := x.Kind.(*Chain_Raw); ok { - size += proto.BytesSize(1, inner.Raw) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Chain) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Chain) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if inner, ok := x.Kind.(*Chain_Raw); ok { - if len(inner.Raw) != 0 { - mm.AppendBytes(1, inner.Raw) - } - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Chain) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Chain") - } - switch fc.FieldNum { - case 1: // Raw - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Raw") - } - x.Kind = &Chain_Raw{Raw: data} - } - } - return nil -} -func (x *Chain) GetKind() isChain_Kind { - if x != nil { - return x.Kind - } - return nil -} -func (x *Chain) SetKind(v isChain_Kind) { - x.Kind = v -} -func (x *Chain) GetRaw() []byte { - if xx, ok := x.GetKind().(*Chain_Raw); ok { - return xx.Raw - } - return nil -} -func (x *Chain) SetRaw(v *Chain_Raw) { - x.Kind = v -} -func (x *Chain_Raw) GetRaw() []byte { - if x != nil { - return x.Raw - } - return nil -} -func (x *Chain_Raw) SetRaw(v []byte) { - x.Raw = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Chain) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Chain) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - switch xx := x.Kind.(type) { - case *Chain_Raw: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"raw\":" - out.RawString(prefix) - if xx.Raw != nil { - out.Base64Bytes(xx.Raw) - } else { - out.String("") - } - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Chain) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Chain) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "raw": - xx := new(Chain_Raw) - x.Kind = xx - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - xx.Raw = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type isChain_Kind interface { - isChain_Kind() -} - -type Chain_Raw struct { - Raw []byte -} - -func (*Chain_Raw) isChain_Kind() {} diff --git a/ape/grpc/types_frostfs_fuzz.go b/ape/grpc/types_frostfs_fuzz.go deleted file mode 100644 index b7bf367..0000000 --- a/ape/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,45 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package ape - -func DoFuzzProtoChainTarget(data []byte) int { - msg := new(ChainTarget) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONChainTarget(data []byte) int { - msg := new(ChainTarget) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoChain(data []byte) int { - msg := new(Chain) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONChain(data []byte) int { - msg := new(Chain) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/ape/grpc/types_frostfs_test.go b/ape/grpc/types_frostfs_test.go deleted file mode 100644 index 93d7eea..0000000 --- a/ape/grpc/types_frostfs_test.go +++ /dev/null @@ -1,31 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package ape - -import ( - testing "testing" -) - -func FuzzProtoChainTarget(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoChainTarget(data) - }) -} -func FuzzJSONChainTarget(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONChainTarget(data) - }) -} -func FuzzProtoChain(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoChain(data) - }) -} -func FuzzJSONChain(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONChain(data) - }) -} diff --git a/ape/json.go b/ape/json.go deleted file mode 100644 index 9760f4e..0000000 --- a/ape/json.go +++ /dev/null @@ -1,14 +0,0 @@ -package ape - -import ( - ape "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -func (t *ChainTarget) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(t) -} - -func (t *ChainTarget) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(t, data, new(ape.ChainTarget)) -} diff --git a/ape/marshal.go b/ape/marshal.go deleted file mode 100644 index 9889261..0000000 --- a/ape/marshal.go +++ /dev/null @@ -1,92 +0,0 @@ -package ape - -import ( - "fmt" - - ape "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" -) - -const ( - chainTargetTargetTypeField = 1 - chainTargetNameField = 2 - - chainRawField = 1 -) - -func (t *ChainTarget) StableSize() (size int) { - if t == nil { - return 0 - } - - size += proto.EnumSize(chainTargetTargetTypeField, int32(t.targeType)) - size += proto.StringSize(chainTargetNameField, t.name) - - return size -} - -func (t *ChainTarget) StableMarshal(buf []byte) []byte { - if t == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, t.StableSize()) - } - - var offset int - - offset += proto.EnumMarshal(chainTargetTargetTypeField, buf[offset:], int32(t.targeType)) - proto.StringMarshal(chainTargetNameField, buf[offset:], t.name) - - return buf -} - -func (t *ChainTarget) Unmarshal(data []byte) error { - return message.Unmarshal(t, data, new(ape.ChainTarget)) -} - -func (c *Chain) StableSize() (size int) { - if c == nil { - return 0 - } - - switch v := c.GetKind().(type) { - case *ChainRaw: - if v != nil { - size += proto.BytesSize(chainRawField, v.GetRaw()) - } - default: - panic(fmt.Sprintf("unsupported chain kind: %T", v)) - } - - return size -} - -func (c *Chain) StableMarshal(buf []byte) []byte { - if c == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, c.StableSize()) - } - - var offset int - - switch v := c.GetKind().(type) { - case *ChainRaw: - if v != nil { - proto.BytesMarshal(chainRawField, buf[offset:], v.GetRaw()) - } - default: - panic(fmt.Sprintf("unsupported chain kind: %T", v)) - } - - return buf -} - -func (c *Chain) Unmarshal(data []byte) error { - return message.Unmarshal(c, data, new(ape.Chain)) -} diff --git a/ape/message_test.go b/ape/message_test.go deleted file mode 100644 index 636a521..0000000 --- a/ape/message_test.go +++ /dev/null @@ -1,15 +0,0 @@ -package ape_test - -import ( - "testing" - - apetest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape/test" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - messagetest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message/test" -) - -func TestMessageConvert(t *testing.T) { - messagetest.TestRPCMessage(t, - func(empty bool) message.Message { return apetest.GenerateChainTarget(empty) }, - ) -} diff --git a/ape/string.go b/ape/string.go deleted file mode 100644 index 2e2507e..0000000 --- a/ape/string.go +++ /dev/null @@ -1,18 +0,0 @@ -package ape - -import ( - apegrpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape/grpc" -) - -func (tt TargetType) String() string { - return TargetTypeToGRPCField(tt).String() -} - -func (tt *TargetType) FromString(s string) bool { - i, ok := apegrpc.TargetType_value[s] - if ok { - *tt = TargetType(i) - } - - return ok -} diff --git a/ape/test/generate.go b/ape/test/generate.go deleted file mode 100644 index 9caf9de..0000000 --- a/ape/test/generate.go +++ /dev/null @@ -1,71 +0,0 @@ -package test - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape" -) - -func GenerateRawChains(empty bool, n int) []*ape.Chain { - if empty { - return []*ape.Chain{} - } - - res := make([]*ape.Chain, n) - for i := range res { - res[i] = GenerateRawChain(empty) - } - return res -} - -func GenerateRawChain(empty bool) *ape.Chain { - chRaw := new(ape.ChainRaw) - - if empty { - chRaw.SetRaw([]byte("{}")) - } else { - chRaw.SetRaw([]byte(`{ - "ID": "", - "Rules": [ - { - "Status": "Allow", - "Actions": { - "Inverted": false, - "Names": [ - "GetObject" - ] - }, - "Resources": { - "Inverted": false, - "Names": [ - "native:object/*" - ] - }, - "Any": false, - "Condition": [ - { - "Op": "StringEquals", - "Object": "Resource", - "Key": "Department", - "Value": "HR" - } - ] - } - ], - "MatchType": "DenyPriority" - }`)) - } - - ch := new(ape.Chain) - ch.SetKind(chRaw) - return ch -} - -func GenerateChainTarget(empty bool) *ape.ChainTarget { - m := new(ape.ChainTarget) - - if !empty { - m.SetTargetType(ape.TargetTypeContainer) - m.SetName("BzQw5HH3feoxFDD5tCT87Y1726qzgLfxEE7wgtoRzB3R") - } - - return m -} diff --git a/ape/types.go b/ape/types.go deleted file mode 100644 index 467a441..0000000 --- a/ape/types.go +++ /dev/null @@ -1,79 +0,0 @@ -package ape - -type TargetType uint32 - -const ( - TargetTypeUndefined TargetType = iota - TargetTypeNamespace - TargetTypeContainer - TargetTypeUser - TargetTypeGroup -) - -type ChainTarget struct { - targeType TargetType - - name string -} - -func (ct *ChainTarget) SetTargetType(targeType TargetType) { - ct.targeType = targeType -} - -func (ct *ChainTarget) SetName(name string) { - ct.name = name -} - -func (ct *ChainTarget) GetTargetType() TargetType { - if ct != nil { - return ct.targeType - } - - return 0 -} - -func (ct *ChainTarget) GetName() string { - if ct != nil { - return ct.name - } - - return "" -} - -type chainKind interface { - isChainKind() -} - -type Chain struct { - kind chainKind -} - -func (c *Chain) SetKind(kind chainKind) { - c.kind = kind -} - -func (c *Chain) GetKind() chainKind { - if c == nil { - return nil - } - - return c.kind -} - -type ChainRaw struct { - Raw []byte -} - -func (*ChainRaw) isChainKind() {} - -func (c *ChainRaw) SetRaw(raw []byte) { - c.Raw = raw -} - -func (c *ChainRaw) GetRaw() []byte { - if c == nil { - return nil - } - - return c.Raw -} diff --git a/apemanager/convert.go b/apemanager/convert.go deleted file mode 100644 index 5677b25..0000000 --- a/apemanager/convert.go +++ /dev/null @@ -1,358 +0,0 @@ -package apemanager - -import ( - ape "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape" - apeGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape/grpc" - apemanager "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/apemanager/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -func (reqBody *AddChainRequestBody) ToGRPCMessage() grpc.Message { - var reqBodygrpc *apemanager.AddChainRequest_Body - - if reqBody != nil { - reqBodygrpc = new(apemanager.AddChainRequest_Body) - - reqBodygrpc.SetTarget(reqBody.GetTarget().ToGRPCMessage().(*apeGRPC.ChainTarget)) - reqBodygrpc.SetChain(reqBody.GetChain().ToGRPCMessage().(*apeGRPC.Chain)) - } - - return reqBodygrpc -} - -func (reqBody *AddChainRequestBody) FromGRPCMessage(m grpc.Message) error { - reqBodygrpc, ok := m.(*apemanager.AddChainRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, reqBodygrpc) - } - - if targetgrpc := reqBodygrpc.GetTarget(); targetgrpc != nil { - reqBody.target = new(ape.ChainTarget) - if err := reqBody.target.FromGRPCMessage(targetgrpc); err != nil { - return err - } - } - - if chaingrpc := reqBodygrpc.GetChain(); chaingrpc != nil { - reqBody.chain = new(ape.Chain) - if err := reqBody.GetChain().FromGRPCMessage(chaingrpc); err != nil { - return err - } - } - - return nil -} - -func (req *AddChainRequest) ToGRPCMessage() grpc.Message { - var reqgrpc *apemanager.AddChainRequest - - if req != nil { - reqgrpc = new(apemanager.AddChainRequest) - - reqgrpc.SetBody(req.GetBody().ToGRPCMessage().(*apemanager.AddChainRequest_Body)) - req.RequestHeaders.ToMessage(reqgrpc) - } - - return reqgrpc -} - -func (req *AddChainRequest) FromGRPCMessage(m grpc.Message) error { - reqgrpc, ok := m.(*apemanager.AddChainRequest) - if !ok { - return message.NewUnexpectedMessageType(m, reqgrpc) - } - - if reqBodygrpc := reqgrpc.GetBody(); reqBodygrpc != nil { - req.body = new(AddChainRequestBody) - if err := req.body.FromGRPCMessage(reqBodygrpc); err != nil { - return err - } - } - - return req.RequestHeaders.FromMessage(reqgrpc) -} - -func (respBody *AddChainResponseBody) ToGRPCMessage() grpc.Message { - var respBodygrpc *apemanager.AddChainResponse_Body - - if respBody != nil { - respBodygrpc = new(apemanager.AddChainResponse_Body) - - respBodygrpc.SetChainId(respBody.GetChainID()) - } - - return respBodygrpc -} - -func (respBody *AddChainResponseBody) FromGRPCMessage(m grpc.Message) error { - respBodygrpc, ok := m.(*apemanager.AddChainResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, respBodygrpc) - } - - respBody.SetChainID(respBodygrpc.GetChainId()) - - return nil -} - -func (resp *AddChainResponse) ToGRPCMessage() grpc.Message { - var respgrpc *apemanager.AddChainResponse - - if resp != nil { - respgrpc = new(apemanager.AddChainResponse) - - respgrpc.SetBody(resp.body.ToGRPCMessage().(*apemanager.AddChainResponse_Body)) - resp.ResponseHeaders.ToMessage(respgrpc) - } - - return respgrpc -} - -func (resp *AddChainResponse) FromGRPCMessage(m grpc.Message) error { - respgrpc, ok := m.(*apemanager.AddChainResponse) - if !ok { - return message.NewUnexpectedMessageType(m, respgrpc) - } - - if respBodygrpc := respgrpc.GetBody(); respBodygrpc != nil { - resp.body = new(AddChainResponseBody) - if err := resp.body.FromGRPCMessage(respBodygrpc); err != nil { - return err - } - } - - return resp.ResponseHeaders.FromMessage(respgrpc) -} - -func (reqBody *RemoveChainRequestBody) ToGRPCMessage() grpc.Message { - var reqBodygrpc *apemanager.RemoveChainRequest_Body - - if reqBody != nil { - reqBodygrpc = new(apemanager.RemoveChainRequest_Body) - - reqBodygrpc.SetTarget(reqBody.target.ToGRPCMessage().(*apeGRPC.ChainTarget)) - reqBodygrpc.SetChainId(reqBody.GetChainID()) - } - - return reqBodygrpc -} - -func (reqBody *RemoveChainRequestBody) FromGRPCMessage(m grpc.Message) error { - reqBodygrpc, ok := m.(*apemanager.RemoveChainRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, reqBodygrpc) - } - - if targetgrpc := reqBodygrpc.GetTarget(); targetgrpc != nil { - reqBody.target = new(ape.ChainTarget) - if err := reqBody.target.FromGRPCMessage(targetgrpc); err != nil { - return err - } - } - - reqBody.SetChainID(reqBodygrpc.GetChainId()) - - return nil -} - -func (req *RemoveChainRequest) ToGRPCMessage() grpc.Message { - var reqgrpc *apemanager.RemoveChainRequest - - if req != nil { - reqgrpc = new(apemanager.RemoveChainRequest) - - reqgrpc.SetBody(req.body.ToGRPCMessage().(*apemanager.RemoveChainRequest_Body)) - req.RequestHeaders.ToMessage(reqgrpc) - } - - return reqgrpc -} - -func (req *RemoveChainRequest) FromGRPCMessage(m grpc.Message) error { - reqgrpc, ok := m.(*apemanager.RemoveChainRequest) - if !ok { - return message.NewUnexpectedMessageType(m, reqgrpc) - } - - if reqBodygrpc := reqgrpc.GetBody(); reqBodygrpc != nil { - req.body = new(RemoveChainRequestBody) - if err := req.body.FromGRPCMessage(reqBodygrpc); err != nil { - return err - } - } - - return req.RequestHeaders.FromMessage(reqgrpc) -} - -func (respBody *RemoveChainResponseBody) ToGRPCMessage() grpc.Message { - var respBodygrpc *apemanager.RemoveChainResponse_Body - - if respBody != nil { - respBodygrpc = new(apemanager.RemoveChainResponse_Body) - } - - return respBodygrpc -} - -func (respBody *RemoveChainResponseBody) FromGRPCMessage(m grpc.Message) error { - respBodygrpc, ok := m.(*apemanager.RemoveChainResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, respBodygrpc) - } - - return nil -} - -func (resp *RemoveChainResponse) ToGRPCMessage() grpc.Message { - var respgrpc *apemanager.RemoveChainResponse - - if resp != nil { - respgrpc = new(apemanager.RemoveChainResponse) - - respgrpc.SetBody(resp.body.ToGRPCMessage().(*apemanager.RemoveChainResponse_Body)) - resp.ResponseHeaders.ToMessage(respgrpc) - } - - return respgrpc -} - -func (resp *RemoveChainResponse) FromGRPCMessage(m grpc.Message) error { - respgrpc, ok := m.(*apemanager.RemoveChainResponse) - if !ok { - return message.NewUnexpectedMessageType(m, respgrpc) - } - - if respBodygrpc := respgrpc.GetBody(); respBodygrpc != nil { - resp.body = new(RemoveChainResponseBody) - if err := resp.body.FromGRPCMessage(respBodygrpc); err != nil { - return err - } - } - - return resp.ResponseHeaders.FromMessage(respgrpc) -} - -func (reqBody *ListChainsRequestBody) ToGRPCMessage() grpc.Message { - var reqBodygrpc *apemanager.ListChainsRequest_Body - - if reqBody != nil { - reqBodygrpc = new(apemanager.ListChainsRequest_Body) - - reqBodygrpc.SetTarget(reqBody.target.ToGRPCMessage().(*apeGRPC.ChainTarget)) - } - - return reqBodygrpc -} - -func (reqBody *ListChainsRequestBody) FromGRPCMessage(m grpc.Message) error { - reqBodygrpc, ok := m.(*apemanager.ListChainsRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, reqBodygrpc) - } - - if targetgrpc := reqBodygrpc.GetTarget(); targetgrpc != nil { - reqBody.target = new(ape.ChainTarget) - if err := reqBody.target.FromGRPCMessage(targetgrpc); err != nil { - return err - } - } - - return nil -} - -func (req *ListChainsRequest) ToGRPCMessage() grpc.Message { - var reqgrpc *apemanager.ListChainsRequest - - if req != nil { - reqgrpc = new(apemanager.ListChainsRequest) - - reqgrpc.SetBody(req.body.ToGRPCMessage().(*apemanager.ListChainsRequest_Body)) - req.RequestHeaders.ToMessage(reqgrpc) - } - - return reqgrpc -} - -func (req *ListChainsRequest) FromGRPCMessage(m grpc.Message) error { - reqgrpc, ok := m.(*apemanager.ListChainsRequest) - if !ok { - return message.NewUnexpectedMessageType(m, reqgrpc) - } - - if reqBodygrpc := reqgrpc.GetBody(); reqBodygrpc != nil { - req.body = new(ListChainsRequestBody) - if err := req.body.FromGRPCMessage(reqBodygrpc); err != nil { - return err - } - } - - return req.RequestHeaders.FromMessage(reqgrpc) -} - -func (respBody *ListChainsResponseBody) ToGRPCMessage() grpc.Message { - var respBodygrpc *apemanager.ListChainsResponse_Body - - if respBody != nil { - respBodygrpc = new(apemanager.ListChainsResponse_Body) - - chainsgrpc := make([]apeGRPC.Chain, 0, len(respBody.GetChains())) - for _, chain := range respBody.GetChains() { - chainsgrpc = append(chainsgrpc, *chain.ToGRPCMessage().(*apeGRPC.Chain)) - } - - respBodygrpc.SetChains(chainsgrpc) - } - - return respBodygrpc -} - -func (respBody *ListChainsResponseBody) FromGRPCMessage(m grpc.Message) error { - respBodygrpc, ok := m.(*apemanager.ListChainsResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, respBodygrpc) - } - - chains := make([]*ape.Chain, 0, len(respBodygrpc.GetChains())) - - for _, chaingrpc := range respBodygrpc.GetChains() { - chain := new(ape.Chain) - if err := chain.FromGRPCMessage(&chaingrpc); err != nil { - return err - } - chains = append(chains, chain) - } - - respBody.SetChains(chains) - - return nil -} - -func (resp *ListChainsResponse) ToGRPCMessage() grpc.Message { - var respgrpc *apemanager.ListChainsResponse - - if resp != nil { - respgrpc = new(apemanager.ListChainsResponse) - - respgrpc.SetBody(resp.body.ToGRPCMessage().(*apemanager.ListChainsResponse_Body)) - resp.ResponseHeaders.ToMessage(respgrpc) - } - - return respgrpc -} - -func (resp *ListChainsResponse) FromGRPCMessage(m grpc.Message) error { - respgrpc, ok := m.(*apemanager.ListChainsResponse) - if !ok { - return message.NewUnexpectedMessageType(m, respgrpc) - } - - if respBodygrpc := respgrpc.GetBody(); respBodygrpc != nil { - resp.body = new(ListChainsResponseBody) - if err := resp.body.FromGRPCMessage(respBodygrpc); err != nil { - return err - } - } - - return resp.ResponseHeaders.FromMessage(respgrpc) -} diff --git a/apemanager/grpc/service_frostfs.pb.go b/apemanager/grpc/service_frostfs.pb.go deleted file mode 100644 index b2633e1..0000000 --- a/apemanager/grpc/service_frostfs.pb.go +++ /dev/null @@ -1,2337 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package apemanager - -import ( - json "encoding/json" - fmt "fmt" - grpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape/grpc" - grpc1 "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" -) - -type AddChainRequest_Body struct { - Target *grpc.ChainTarget `json:"target"` - Chain *grpc.Chain `json:"chain"` -} - -var ( - _ encoding.ProtoMarshaler = (*AddChainRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*AddChainRequest_Body)(nil) - _ json.Marshaler = (*AddChainRequest_Body)(nil) - _ json.Unmarshaler = (*AddChainRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *AddChainRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Target) - size += proto.NestedStructureSize(2, x.Chain) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *AddChainRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *AddChainRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Target != nil { - x.Target.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Chain != nil { - x.Chain.EmitProtobuf(mm.AppendMessage(2)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *AddChainRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "AddChainRequest_Body") - } - switch fc.FieldNum { - case 1: // Target - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Target") - } - x.Target = new(grpc.ChainTarget) - if err := x.Target.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Chain - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Chain") - } - x.Chain = new(grpc.Chain) - if err := x.Chain.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *AddChainRequest_Body) GetTarget() *grpc.ChainTarget { - if x != nil { - return x.Target - } - return nil -} -func (x *AddChainRequest_Body) SetTarget(v *grpc.ChainTarget) { - x.Target = v -} -func (x *AddChainRequest_Body) GetChain() *grpc.Chain { - if x != nil { - return x.Chain - } - return nil -} -func (x *AddChainRequest_Body) SetChain(v *grpc.Chain) { - x.Chain = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *AddChainRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *AddChainRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"target\":" - out.RawString(prefix) - x.Target.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"chain\":" - out.RawString(prefix) - x.Chain.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *AddChainRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *AddChainRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "target": - { - var f *grpc.ChainTarget - f = new(grpc.ChainTarget) - f.UnmarshalEasyJSON(in) - x.Target = f - } - case "chain": - { - var f *grpc.Chain - f = new(grpc.Chain) - f.UnmarshalEasyJSON(in) - x.Chain = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type AddChainRequest struct { - Body *AddChainRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*AddChainRequest)(nil) - _ encoding.ProtoUnmarshaler = (*AddChainRequest)(nil) - _ json.Marshaler = (*AddChainRequest)(nil) - _ json.Unmarshaler = (*AddChainRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *AddChainRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *AddChainRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *AddChainRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *AddChainRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *AddChainRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *AddChainRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "AddChainRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(AddChainRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *AddChainRequest) GetBody() *AddChainRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *AddChainRequest) SetBody(v *AddChainRequest_Body) { - x.Body = v -} -func (x *AddChainRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *AddChainRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *AddChainRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *AddChainRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *AddChainRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *AddChainRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *AddChainRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *AddChainRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *AddChainRequest_Body - f = new(AddChainRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type AddChainResponse_Body struct { - ChainId []byte `json:"chainId"` -} - -var ( - _ encoding.ProtoMarshaler = (*AddChainResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*AddChainResponse_Body)(nil) - _ json.Marshaler = (*AddChainResponse_Body)(nil) - _ json.Unmarshaler = (*AddChainResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *AddChainResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.BytesSize(1, x.ChainId) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *AddChainResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *AddChainResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.ChainId) != 0 { - mm.AppendBytes(1, x.ChainId) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *AddChainResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "AddChainResponse_Body") - } - switch fc.FieldNum { - case 1: // ChainId - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ChainId") - } - x.ChainId = data - } - } - return nil -} -func (x *AddChainResponse_Body) GetChainId() []byte { - if x != nil { - return x.ChainId - } - return nil -} -func (x *AddChainResponse_Body) SetChainId(v []byte) { - x.ChainId = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *AddChainResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *AddChainResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"chainId\":" - out.RawString(prefix) - if x.ChainId != nil { - out.Base64Bytes(x.ChainId) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *AddChainResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *AddChainResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "chainId": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.ChainId = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type AddChainResponse struct { - Body *AddChainResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*AddChainResponse)(nil) - _ encoding.ProtoUnmarshaler = (*AddChainResponse)(nil) - _ json.Marshaler = (*AddChainResponse)(nil) - _ json.Unmarshaler = (*AddChainResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *AddChainResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *AddChainResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *AddChainResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *AddChainResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *AddChainResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *AddChainResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "AddChainResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(AddChainResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *AddChainResponse) GetBody() *AddChainResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *AddChainResponse) SetBody(v *AddChainResponse_Body) { - x.Body = v -} -func (x *AddChainResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *AddChainResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *AddChainResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *AddChainResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *AddChainResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *AddChainResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *AddChainResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *AddChainResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *AddChainResponse_Body - f = new(AddChainResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type RemoveChainRequest_Body struct { - Target *grpc.ChainTarget `json:"target"` - ChainId []byte `json:"chainId"` -} - -var ( - _ encoding.ProtoMarshaler = (*RemoveChainRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*RemoveChainRequest_Body)(nil) - _ json.Marshaler = (*RemoveChainRequest_Body)(nil) - _ json.Unmarshaler = (*RemoveChainRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *RemoveChainRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Target) - size += proto.BytesSize(2, x.ChainId) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *RemoveChainRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *RemoveChainRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Target != nil { - x.Target.EmitProtobuf(mm.AppendMessage(1)) - } - if len(x.ChainId) != 0 { - mm.AppendBytes(2, x.ChainId) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *RemoveChainRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "RemoveChainRequest_Body") - } - switch fc.FieldNum { - case 1: // Target - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Target") - } - x.Target = new(grpc.ChainTarget) - if err := x.Target.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // ChainId - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ChainId") - } - x.ChainId = data - } - } - return nil -} -func (x *RemoveChainRequest_Body) GetTarget() *grpc.ChainTarget { - if x != nil { - return x.Target - } - return nil -} -func (x *RemoveChainRequest_Body) SetTarget(v *grpc.ChainTarget) { - x.Target = v -} -func (x *RemoveChainRequest_Body) GetChainId() []byte { - if x != nil { - return x.ChainId - } - return nil -} -func (x *RemoveChainRequest_Body) SetChainId(v []byte) { - x.ChainId = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *RemoveChainRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *RemoveChainRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"target\":" - out.RawString(prefix) - x.Target.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"chainId\":" - out.RawString(prefix) - if x.ChainId != nil { - out.Base64Bytes(x.ChainId) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *RemoveChainRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *RemoveChainRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "target": - { - var f *grpc.ChainTarget - f = new(grpc.ChainTarget) - f.UnmarshalEasyJSON(in) - x.Target = f - } - case "chainId": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.ChainId = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type RemoveChainRequest struct { - Body *RemoveChainRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*RemoveChainRequest)(nil) - _ encoding.ProtoUnmarshaler = (*RemoveChainRequest)(nil) - _ json.Marshaler = (*RemoveChainRequest)(nil) - _ json.Unmarshaler = (*RemoveChainRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *RemoveChainRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *RemoveChainRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *RemoveChainRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *RemoveChainRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *RemoveChainRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *RemoveChainRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "RemoveChainRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(RemoveChainRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *RemoveChainRequest) GetBody() *RemoveChainRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *RemoveChainRequest) SetBody(v *RemoveChainRequest_Body) { - x.Body = v -} -func (x *RemoveChainRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *RemoveChainRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *RemoveChainRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *RemoveChainRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *RemoveChainRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *RemoveChainRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *RemoveChainRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *RemoveChainRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *RemoveChainRequest_Body - f = new(RemoveChainRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type RemoveChainResponse_Body struct { -} - -var ( - _ encoding.ProtoMarshaler = (*RemoveChainResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*RemoveChainResponse_Body)(nil) - _ json.Marshaler = (*RemoveChainResponse_Body)(nil) - _ json.Unmarshaler = (*RemoveChainResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *RemoveChainResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *RemoveChainResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *RemoveChainResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *RemoveChainResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "RemoveChainResponse_Body") - } - switch fc.FieldNum { - } - } - return nil -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *RemoveChainResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *RemoveChainResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - out.RawByte('{') - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *RemoveChainResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *RemoveChainResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type RemoveChainResponse struct { - Body *RemoveChainResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*RemoveChainResponse)(nil) - _ encoding.ProtoUnmarshaler = (*RemoveChainResponse)(nil) - _ json.Marshaler = (*RemoveChainResponse)(nil) - _ json.Unmarshaler = (*RemoveChainResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *RemoveChainResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *RemoveChainResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *RemoveChainResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *RemoveChainResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *RemoveChainResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *RemoveChainResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "RemoveChainResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(RemoveChainResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *RemoveChainResponse) GetBody() *RemoveChainResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *RemoveChainResponse) SetBody(v *RemoveChainResponse_Body) { - x.Body = v -} -func (x *RemoveChainResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *RemoveChainResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *RemoveChainResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *RemoveChainResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *RemoveChainResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *RemoveChainResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *RemoveChainResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *RemoveChainResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *RemoveChainResponse_Body - f = new(RemoveChainResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ListChainsRequest_Body struct { - Target *grpc.ChainTarget `json:"target"` -} - -var ( - _ encoding.ProtoMarshaler = (*ListChainsRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*ListChainsRequest_Body)(nil) - _ json.Marshaler = (*ListChainsRequest_Body)(nil) - _ json.Unmarshaler = (*ListChainsRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ListChainsRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Target) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ListChainsRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ListChainsRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Target != nil { - x.Target.EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ListChainsRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ListChainsRequest_Body") - } - switch fc.FieldNum { - case 1: // Target - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Target") - } - x.Target = new(grpc.ChainTarget) - if err := x.Target.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ListChainsRequest_Body) GetTarget() *grpc.ChainTarget { - if x != nil { - return x.Target - } - return nil -} -func (x *ListChainsRequest_Body) SetTarget(v *grpc.ChainTarget) { - x.Target = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ListChainsRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ListChainsRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"target\":" - out.RawString(prefix) - x.Target.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ListChainsRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ListChainsRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "target": - { - var f *grpc.ChainTarget - f = new(grpc.ChainTarget) - f.UnmarshalEasyJSON(in) - x.Target = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ListChainsRequest struct { - Body *ListChainsRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*ListChainsRequest)(nil) - _ encoding.ProtoUnmarshaler = (*ListChainsRequest)(nil) - _ json.Marshaler = (*ListChainsRequest)(nil) - _ json.Unmarshaler = (*ListChainsRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ListChainsRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *ListChainsRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *ListChainsRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ListChainsRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ListChainsRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ListChainsRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ListChainsRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(ListChainsRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ListChainsRequest) GetBody() *ListChainsRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *ListChainsRequest) SetBody(v *ListChainsRequest_Body) { - x.Body = v -} -func (x *ListChainsRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *ListChainsRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *ListChainsRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *ListChainsRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ListChainsRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ListChainsRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ListChainsRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ListChainsRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *ListChainsRequest_Body - f = new(ListChainsRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ListChainsResponse_Body struct { - Chains []grpc.Chain `json:"chains"` -} - -var ( - _ encoding.ProtoMarshaler = (*ListChainsResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*ListChainsResponse_Body)(nil) - _ json.Marshaler = (*ListChainsResponse_Body)(nil) - _ json.Unmarshaler = (*ListChainsResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ListChainsResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - for i := range x.Chains { - size += proto.NestedStructureSizeUnchecked(1, &x.Chains[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ListChainsResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ListChainsResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - for i := range x.Chains { - x.Chains[i].EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ListChainsResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ListChainsResponse_Body") - } - switch fc.FieldNum { - case 1: // Chains - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Chains") - } - x.Chains = append(x.Chains, grpc.Chain{}) - ff := &x.Chains[len(x.Chains)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ListChainsResponse_Body) GetChains() []grpc.Chain { - if x != nil { - return x.Chains - } - return nil -} -func (x *ListChainsResponse_Body) SetChains(v []grpc.Chain) { - x.Chains = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ListChainsResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ListChainsResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"chains\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Chains { - if i != 0 { - out.RawByte(',') - } - x.Chains[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ListChainsResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ListChainsResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "chains": - { - var f grpc.Chain - var list []grpc.Chain - in.Delim('[') - for !in.IsDelim(']') { - f = grpc.Chain{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Chains = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ListChainsResponse struct { - Body *ListChainsResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*ListChainsResponse)(nil) - _ encoding.ProtoUnmarshaler = (*ListChainsResponse)(nil) - _ json.Marshaler = (*ListChainsResponse)(nil) - _ json.Unmarshaler = (*ListChainsResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ListChainsResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *ListChainsResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *ListChainsResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ListChainsResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ListChainsResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ListChainsResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ListChainsResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(ListChainsResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ListChainsResponse) GetBody() *ListChainsResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *ListChainsResponse) SetBody(v *ListChainsResponse_Body) { - x.Body = v -} -func (x *ListChainsResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *ListChainsResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *ListChainsResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *ListChainsResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ListChainsResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ListChainsResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ListChainsResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ListChainsResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *ListChainsResponse_Body - f = new(ListChainsResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/apemanager/grpc/service_frostfs_fuzz.go b/apemanager/grpc/service_frostfs_fuzz.go deleted file mode 100644 index 08af63e..0000000 --- a/apemanager/grpc/service_frostfs_fuzz.go +++ /dev/null @@ -1,121 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package apemanager - -func DoFuzzProtoAddChainRequest(data []byte) int { - msg := new(AddChainRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONAddChainRequest(data []byte) int { - msg := new(AddChainRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoAddChainResponse(data []byte) int { - msg := new(AddChainResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONAddChainResponse(data []byte) int { - msg := new(AddChainResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoRemoveChainRequest(data []byte) int { - msg := new(RemoveChainRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONRemoveChainRequest(data []byte) int { - msg := new(RemoveChainRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoRemoveChainResponse(data []byte) int { - msg := new(RemoveChainResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONRemoveChainResponse(data []byte) int { - msg := new(RemoveChainResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoListChainsRequest(data []byte) int { - msg := new(ListChainsRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONListChainsRequest(data []byte) int { - msg := new(ListChainsRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoListChainsResponse(data []byte) int { - msg := new(ListChainsResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONListChainsResponse(data []byte) int { - msg := new(ListChainsResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/apemanager/grpc/service_frostfs_test.go b/apemanager/grpc/service_frostfs_test.go deleted file mode 100644 index 5c4653c..0000000 --- a/apemanager/grpc/service_frostfs_test.go +++ /dev/null @@ -1,71 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package apemanager - -import ( - testing "testing" -) - -func FuzzProtoAddChainRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoAddChainRequest(data) - }) -} -func FuzzJSONAddChainRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONAddChainRequest(data) - }) -} -func FuzzProtoAddChainResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoAddChainResponse(data) - }) -} -func FuzzJSONAddChainResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONAddChainResponse(data) - }) -} -func FuzzProtoRemoveChainRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoRemoveChainRequest(data) - }) -} -func FuzzJSONRemoveChainRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONRemoveChainRequest(data) - }) -} -func FuzzProtoRemoveChainResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoRemoveChainResponse(data) - }) -} -func FuzzJSONRemoveChainResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONRemoveChainResponse(data) - }) -} -func FuzzProtoListChainsRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoListChainsRequest(data) - }) -} -func FuzzJSONListChainsRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONListChainsRequest(data) - }) -} -func FuzzProtoListChainsResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoListChainsResponse(data) - }) -} -func FuzzJSONListChainsResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONListChainsResponse(data) - }) -} diff --git a/apemanager/grpc/service_grpc.pb.go b/apemanager/grpc/service_grpc.pb.go deleted file mode 100644 index 4781427..0000000 --- a/apemanager/grpc/service_grpc.pb.go +++ /dev/null @@ -1,245 +0,0 @@ -// Code generated by protoc-gen-go-grpc. DO NOT EDIT. -// versions: -// - protoc-gen-go-grpc v1.3.0 -// - protoc v5.27.2 -// source: apemanager/grpc/service.proto - -package apemanager - -import ( - context "context" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" -) - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.32.0 or later. -const _ = grpc.SupportPackageIsVersion7 - -const ( - APEManagerService_AddChain_FullMethodName = "/frostfs.v2.apemanager.APEManagerService/AddChain" - APEManagerService_RemoveChain_FullMethodName = "/frostfs.v2.apemanager.APEManagerService/RemoveChain" - APEManagerService_ListChains_FullMethodName = "/frostfs.v2.apemanager.APEManagerService/ListChains" -) - -// APEManagerServiceClient is the client API for APEManagerService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type APEManagerServiceClient interface { - // Add a rule chain for a specific target to `Policy` smart contract. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // the chain has been successfully added; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // container (as target) not found; - // - **APE_MANAGER_ACCESS_DENIED** (5120, SECTION_APE_MANAGER): \ - // the operation is denied by the service. - AddChain(ctx context.Context, in *AddChainRequest, opts ...grpc.CallOption) (*AddChainResponse, error) - // Remove a rule chain for a specific target from `Policy` smart contract. - // RemoveChain is an idempotent operation: removal of non-existing rule chain - // also means success. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // the chain has been successfully removed; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // container (as target) not found; - // - **APE_MANAGER_ACCESS_DENIED** (5120, SECTION_APE_MANAGER): \ - // the operation is denied by the service. - RemoveChain(ctx context.Context, in *RemoveChainRequest, opts ...grpc.CallOption) (*RemoveChainResponse, error) - // List chains defined for a specific target from `Policy` smart contract. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // chains have been successfully listed; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // container (as target) not found; - // - **APE_MANAGER_ACCESS_DENIED** (5120, SECTION_APE_MANAGER): \ - // the operation is denied by the service. - ListChains(ctx context.Context, in *ListChainsRequest, opts ...grpc.CallOption) (*ListChainsResponse, error) -} - -type aPEManagerServiceClient struct { - cc grpc.ClientConnInterface -} - -func NewAPEManagerServiceClient(cc grpc.ClientConnInterface) APEManagerServiceClient { - return &aPEManagerServiceClient{cc} -} - -func (c *aPEManagerServiceClient) AddChain(ctx context.Context, in *AddChainRequest, opts ...grpc.CallOption) (*AddChainResponse, error) { - out := new(AddChainResponse) - err := c.cc.Invoke(ctx, APEManagerService_AddChain_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *aPEManagerServiceClient) RemoveChain(ctx context.Context, in *RemoveChainRequest, opts ...grpc.CallOption) (*RemoveChainResponse, error) { - out := new(RemoveChainResponse) - err := c.cc.Invoke(ctx, APEManagerService_RemoveChain_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *aPEManagerServiceClient) ListChains(ctx context.Context, in *ListChainsRequest, opts ...grpc.CallOption) (*ListChainsResponse, error) { - out := new(ListChainsResponse) - err := c.cc.Invoke(ctx, APEManagerService_ListChains_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// APEManagerServiceServer is the server API for APEManagerService service. -// All implementations should embed UnimplementedAPEManagerServiceServer -// for forward compatibility -type APEManagerServiceServer interface { - // Add a rule chain for a specific target to `Policy` smart contract. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // the chain has been successfully added; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // container (as target) not found; - // - **APE_MANAGER_ACCESS_DENIED** (5120, SECTION_APE_MANAGER): \ - // the operation is denied by the service. - AddChain(context.Context, *AddChainRequest) (*AddChainResponse, error) - // Remove a rule chain for a specific target from `Policy` smart contract. - // RemoveChain is an idempotent operation: removal of non-existing rule chain - // also means success. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // the chain has been successfully removed; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // container (as target) not found; - // - **APE_MANAGER_ACCESS_DENIED** (5120, SECTION_APE_MANAGER): \ - // the operation is denied by the service. - RemoveChain(context.Context, *RemoveChainRequest) (*RemoveChainResponse, error) - // List chains defined for a specific target from `Policy` smart contract. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // chains have been successfully listed; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // container (as target) not found; - // - **APE_MANAGER_ACCESS_DENIED** (5120, SECTION_APE_MANAGER): \ - // the operation is denied by the service. - ListChains(context.Context, *ListChainsRequest) (*ListChainsResponse, error) -} - -// UnimplementedAPEManagerServiceServer should be embedded to have forward compatible implementations. -type UnimplementedAPEManagerServiceServer struct { -} - -func (UnimplementedAPEManagerServiceServer) AddChain(context.Context, *AddChainRequest) (*AddChainResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method AddChain not implemented") -} -func (UnimplementedAPEManagerServiceServer) RemoveChain(context.Context, *RemoveChainRequest) (*RemoveChainResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method RemoveChain not implemented") -} -func (UnimplementedAPEManagerServiceServer) ListChains(context.Context, *ListChainsRequest) (*ListChainsResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ListChains not implemented") -} - -// UnsafeAPEManagerServiceServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to APEManagerServiceServer will -// result in compilation errors. -type UnsafeAPEManagerServiceServer interface { - mustEmbedUnimplementedAPEManagerServiceServer() -} - -func RegisterAPEManagerServiceServer(s grpc.ServiceRegistrar, srv APEManagerServiceServer) { - s.RegisterService(&APEManagerService_ServiceDesc, srv) -} - -func _APEManagerService_AddChain_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(AddChainRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(APEManagerServiceServer).AddChain(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: APEManagerService_AddChain_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(APEManagerServiceServer).AddChain(ctx, req.(*AddChainRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _APEManagerService_RemoveChain_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(RemoveChainRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(APEManagerServiceServer).RemoveChain(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: APEManagerService_RemoveChain_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(APEManagerServiceServer).RemoveChain(ctx, req.(*RemoveChainRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _APEManagerService_ListChains_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ListChainsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(APEManagerServiceServer).ListChains(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: APEManagerService_ListChains_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(APEManagerServiceServer).ListChains(ctx, req.(*ListChainsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -// APEManagerService_ServiceDesc is the grpc.ServiceDesc for APEManagerService service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var APEManagerService_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "frostfs.v2.apemanager.APEManagerService", - HandlerType: (*APEManagerServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "AddChain", - Handler: _APEManagerService_AddChain_Handler, - }, - { - MethodName: "RemoveChain", - Handler: _APEManagerService_RemoveChain_Handler, - }, - { - MethodName: "ListChains", - Handler: _APEManagerService_ListChains_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "apemanager/grpc/service.proto", -} diff --git a/apemanager/marshal.go b/apemanager/marshal.go deleted file mode 100644 index 7217709..0000000 --- a/apemanager/marshal.go +++ /dev/null @@ -1,205 +0,0 @@ -package apemanager - -import ( - apemanager "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/apemanager/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" -) - -const ( - addChainReqBodyTargetField = 1 - addChainReqBodyChainField = 2 - - addChainRespBodyChainIDField = 1 - - removeChainReqBodyTargetField = 1 - removeChainReqBodyChainField = 2 - - /* - Fields for RemoveResponseBody are missed since RemoveResponseBody is empty. - */ - - listChainsReqBodyTargetField = 1 - - listChainsRespBodyChainsField = 1 -) - -func (rb *AddChainRequestBody) StableSize() (size int) { - if rb == nil { - return 0 - } - - size += proto.NestedStructureSize(addChainReqBodyTargetField, rb.target) - size += proto.NestedStructureSize(addChainReqBodyChainField, rb.chain) - - return size -} - -func (rb *AddChainRequestBody) StableMarshal(buf []byte) []byte { - if rb == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, rb.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(addChainReqBodyTargetField, buf[offset:], rb.target) - proto.NestedStructureMarshal(addChainReqBodyChainField, buf[offset:], rb.chain) - - return buf -} - -func (rb *AddChainRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(rb, data, new(apemanager.AddChainRequest_Body)) -} - -func (rb *AddChainResponseBody) StableSize() (size int) { - if rb == nil { - return 0 - } - - size += proto.BytesSize(addChainRespBodyChainIDField, rb.chainID) - - return size -} - -func (rb *AddChainResponseBody) StableMarshal(buf []byte) []byte { - if rb == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, rb.StableSize()) - } - - var offset int - - proto.BytesMarshal(addChainRespBodyChainIDField, buf[offset:], rb.chainID) - - return buf -} - -func (rb *AddChainResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(rb, data, new(apemanager.AddChainResponse_Body)) -} - -func (rb *RemoveChainRequestBody) StableSize() (size int) { - if rb == nil { - return 0 - } - - size += proto.NestedStructureSize(addChainReqBodyTargetField, rb.target) - size += proto.BytesSize(addChainReqBodyChainField, rb.chainID) - - return size -} - -func (rb *RemoveChainRequestBody) StableMarshal(buf []byte) []byte { - if rb == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, rb.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(removeChainReqBodyTargetField, buf[offset:], rb.target) - proto.BytesMarshal(removeChainReqBodyChainField, buf[offset:], rb.chainID) - - return buf -} - -func (rb *RemoveChainRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(rb, data, new(apemanager.RemoveChainRequest_Body)) -} - -func (rb *RemoveChainResponseBody) StableSize() (size int) { - if rb == nil { - return 0 - } - - return size -} - -func (rb *RemoveChainResponseBody) StableMarshal(buf []byte) []byte { - if rb == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, rb.StableSize()) - } - - return buf -} - -func (rb *RemoveChainResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(rb, data, new(apemanager.RemoveChainResponse_Body)) -} - -func (rb *ListChainsRequestBody) StableSize() (size int) { - if rb == nil { - return 0 - } - - size += proto.NestedStructureSize(listChainsReqBodyTargetField, rb.target) - - return size -} - -func (rb *ListChainsRequestBody) StableMarshal(buf []byte) []byte { - if rb == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, rb.StableSize()) - } - - var offset int - proto.NestedStructureMarshal(addChainReqBodyTargetField, buf[offset:], rb.target) - - return buf -} - -func (rb *ListChainsRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(rb, data, new(apemanager.ListChainsRequest_Body)) -} - -func (rb *ListChainsResponseBody) StableSize() (size int) { - if rb == nil { - return 0 - } - - for _, chain := range rb.GetChains() { - size += proto.NestedStructureSize(listChainsRespBodyChainsField, chain) - } - - return size -} - -func (rb *ListChainsResponseBody) StableMarshal(buf []byte) []byte { - if rb == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, rb.StableSize()) - } - - var offset int - for _, chain := range rb.GetChains() { - offset += proto.NestedStructureMarshal(listChainsRespBodyChainsField, buf[offset:], chain) - } - - return buf -} - -func (rb *ListChainsResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(rb, data, new(apemanager.ListChainsResponse_Body)) -} diff --git a/apemanager/message_test.go b/apemanager/message_test.go deleted file mode 100644 index fc4d905..0000000 --- a/apemanager/message_test.go +++ /dev/null @@ -1,26 +0,0 @@ -package apemanager_test - -import ( - "testing" - - apemanagertest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/apemanager/test" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - messagetest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message/test" -) - -func TestMessageConvert(t *testing.T) { - messagetest.TestRPCMessage(t, - func(empty bool) message.Message { return apemanagertest.GenerateAddChainRequestBody(empty) }, - func(empty bool) message.Message { return apemanagertest.GenerateAddChainRequest(empty) }, - func(empty bool) message.Message { return apemanagertest.GenerateAddChainResponseBody(empty) }, - func(empty bool) message.Message { return apemanagertest.GenerateAddChainResponse(empty) }, - func(empty bool) message.Message { return apemanagertest.GenerateRemoveChainRequestBody(empty) }, - func(empty bool) message.Message { return apemanagertest.GenerateRemoveChainRequest(empty) }, - func(empty bool) message.Message { return apemanagertest.GenerateRemoveChainResponseBody(empty) }, - func(empty bool) message.Message { return apemanagertest.GenerateRemoveChainResponse(empty) }, - func(empty bool) message.Message { return apemanagertest.GenerateListChainsRequestBody(empty) }, - func(empty bool) message.Message { return apemanagertest.GenerateListChainsRequest(empty) }, - func(empty bool) message.Message { return apemanagertest.GenerateListChainsResponseBody(empty) }, - func(empty bool) message.Message { return apemanagertest.GenerateListChainsResponse(empty) }, - ) -} diff --git a/apemanager/status.go b/apemanager/status.go deleted file mode 100644 index 932fa6b..0000000 --- a/apemanager/status.go +++ /dev/null @@ -1,76 +0,0 @@ -package apemanager - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status" - statusgrpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/grpc" -) - -// LocalizeFailStatus checks if passed global status.Code is related to ape manager failure and: -// -// then localizes the code and returns true, -// else leaves the code unchanged and returns false. -// -// Arg must be non-nil. -func LocalizeFailStatus(c *status.Code) bool { - return status.LocalizeIfInSection(c, uint32(statusgrpc.Section_SECTION_APE_MANAGER)) -} - -// GlobalizeFail globalizes local code of ape manager failure. -// -// Arg must be non-nil. -func GlobalizeFail(c *status.Code) { - c.GlobalizeSection(uint32(statusgrpc.Section_SECTION_APE_MANAGER)) -} - -const ( - // StatusAPEManagerAccessDenied is a local status.Code value for - // ACCESS_DENIED ape manager failure. - StatusAPEManagerAccessDenied status.Code = iota -) - -const ( - // detailAccessDeniedDesc is a StatusAccessDenied detail ID for - // human-readable description. - detailAccessDeniedDesc = iota -) - -// WriteAccessDeniedDesc writes human-readable description of StatusAccessDenied -// into status.Status as a detail. The status must not be nil. -// -// Existing details are expected to be ID-unique, otherwise undefined behavior. -func WriteAccessDeniedDesc(st *status.Status, desc string) { - var found bool - - st.IterateDetails(func(d *status.Detail) bool { - if d.ID() == detailAccessDeniedDesc { - found = true - d.SetValue([]byte(desc)) - } - - return found - }) - - if !found { - var d status.Detail - - d.SetID(detailAccessDeniedDesc) - d.SetValue([]byte(desc)) - - st.AppendDetails(d) - } -} - -// ReadAccessDeniedDesc looks up for status detail with human-readable description -// of StatusAccessDenied. Returns empty string if detail is missing. -func ReadAccessDeniedDesc(st status.Status) (desc string) { - st.IterateDetails(func(d *status.Detail) bool { - if d.ID() == detailAccessDeniedDesc { - desc = string(d.Value()) - return true - } - - return false - }) - - return -} diff --git a/apemanager/status_test.go b/apemanager/status_test.go deleted file mode 100644 index c150ac7..0000000 --- a/apemanager/status_test.go +++ /dev/null @@ -1,30 +0,0 @@ -package apemanager_test - -import ( - "testing" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/apemanager" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status" - statustest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/test" - "github.com/stretchr/testify/require" -) - -func TestStatusCodes(t *testing.T) { - statustest.TestCodes(t, apemanager.LocalizeFailStatus, apemanager.GlobalizeFail, - apemanager.StatusAPEManagerAccessDenied, 5120, - ) -} - -func TestAccessDeniedDesc(t *testing.T) { - var st status.Status - - require.Empty(t, apemanager.ReadAccessDeniedDesc(st)) - - const desc = "some description" - - apemanager.WriteAccessDeniedDesc(&st, desc) - require.Equal(t, desc, apemanager.ReadAccessDeniedDesc(st)) - - apemanager.WriteAccessDeniedDesc(&st, desc+"1") - require.Equal(t, desc+"1", apemanager.ReadAccessDeniedDesc(st)) -} diff --git a/apemanager/test/generate.go b/apemanager/test/generate.go deleted file mode 100644 index 192f7ad..0000000 --- a/apemanager/test/generate.go +++ /dev/null @@ -1,143 +0,0 @@ -package apemanagertest - -import ( - apetest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape/test" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/apemanager" - sessiontest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/test" -) - -func generateChainID(empty bool) []byte { - if empty { - return []byte{} - } - - return []byte("616c6c6f774f626a476574436e72") -} - -func GenerateAddChainRequestBody(empty bool) *apemanager.AddChainRequestBody { - m := new(apemanager.AddChainRequestBody) - - if !empty { - m.SetTarget(apetest.GenerateChainTarget(empty)) - m.SetChain(apetest.GenerateRawChain(empty)) - } - - return m -} - -func GenerateAddChainRequest(empty bool) *apemanager.AddChainRequest { - m := new(apemanager.AddChainRequest) - - if !empty { - m.SetBody(GenerateAddChainRequestBody(empty)) - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - } - - return m -} - -func GenerateAddChainResponseBody(empty bool) *apemanager.AddChainResponseBody { - m := new(apemanager.AddChainResponseBody) - - if !empty { - m.SetChainID(generateChainID(empty)) - } - - return m -} - -func GenerateAddChainResponse(empty bool) *apemanager.AddChainResponse { - m := new(apemanager.AddChainResponse) - - if !empty { - m.SetBody(GenerateAddChainResponseBody(empty)) - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - } - - return m -} - -func GenerateRemoveChainRequestBody(empty bool) *apemanager.RemoveChainRequestBody { - m := new(apemanager.RemoveChainRequestBody) - - if !empty { - m.SetChainID(generateChainID(empty)) - m.SetTarget(apetest.GenerateChainTarget(empty)) - } - - return m -} - -func GenerateRemoveChainRequest(empty bool) *apemanager.RemoveChainRequest { - m := new(apemanager.RemoveChainRequest) - - if !empty { - m.SetBody(GenerateRemoveChainRequestBody(empty)) - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - } - - return m -} - -func GenerateRemoveChainResponseBody(_ bool) *apemanager.RemoveChainResponseBody { - return new(apemanager.RemoveChainResponseBody) -} - -func GenerateRemoveChainResponse(empty bool) *apemanager.RemoveChainResponse { - m := new(apemanager.RemoveChainResponse) - - if !empty { - m.SetBody(GenerateRemoveChainResponseBody(empty)) - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - } - - return m -} - -func GenerateListChainsRequestBody(empty bool) *apemanager.ListChainsRequestBody { - m := new(apemanager.ListChainsRequestBody) - - if !empty { - m.SetTarget(apetest.GenerateChainTarget(empty)) - } - - return m -} - -func GenerateListChainsRequest(empty bool) *apemanager.ListChainsRequest { - m := new(apemanager.ListChainsRequest) - - if !empty { - m.SetBody(GenerateListChainsRequestBody(empty)) - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - } - - return m -} - -func GenerateListChainsResponseBody(empty bool) *apemanager.ListChainsResponseBody { - m := new(apemanager.ListChainsResponseBody) - - if !empty { - m.SetChains(apetest.GenerateRawChains(empty, 10)) - } - - return m -} - -func GenerateListChainsResponse(empty bool) *apemanager.ListChainsResponse { - m := new(apemanager.ListChainsResponse) - - if !empty { - m.SetBody(GenerateListChainsResponseBody(empty)) - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - } - - return m -} diff --git a/apemanager/types.go b/apemanager/types.go deleted file mode 100644 index b6c3912..0000000 --- a/apemanager/types.go +++ /dev/null @@ -1,226 +0,0 @@ -package apemanager - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/ape" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" -) - -type AddChainRequest struct { - body *AddChainRequestBody - - session.RequestHeaders -} - -func (r *AddChainRequest) SetBody(body *AddChainRequestBody) { - r.body = body -} - -func (r *AddChainRequest) GetBody() *AddChainRequestBody { - if r == nil { - return nil - } - - return r.body -} - -type AddChainRequestBody struct { - target *ape.ChainTarget - - chain *ape.Chain -} - -func (rb *AddChainRequestBody) SetTarget(target *ape.ChainTarget) { - rb.target = target -} - -func (rb *AddChainRequestBody) GetTarget() *ape.ChainTarget { - if rb == nil { - return nil - } - - return rb.target -} - -func (rb *AddChainRequestBody) SetChain(chain *ape.Chain) { - rb.chain = chain -} - -func (rb *AddChainRequestBody) GetChain() *ape.Chain { - if rb == nil { - return nil - } - - return rb.chain -} - -type AddChainResponse struct { - body *AddChainResponseBody - - session.ResponseHeaders -} - -func (r *AddChainResponse) SetBody(body *AddChainResponseBody) { - r.body = body -} - -func (r *AddChainResponse) GetBody() *AddChainResponseBody { - if r == nil { - return nil - } - - return r.body -} - -type AddChainResponseBody struct { - chainID []byte -} - -func (rb *AddChainResponseBody) SetChainID(chainID []byte) { - rb.chainID = chainID -} - -func (rb *AddChainResponseBody) GetChainID() []byte { - if rb == nil { - return nil - } - - return rb.chainID -} - -type RemoveChainRequest struct { - body *RemoveChainRequestBody - - session.RequestHeaders -} - -func (r *RemoveChainRequest) SetBody(body *RemoveChainRequestBody) { - r.body = body -} - -func (r *RemoveChainRequest) GetBody() *RemoveChainRequestBody { - if r == nil { - return nil - } - - return r.body -} - -type RemoveChainRequestBody struct { - target *ape.ChainTarget - - chainID []byte -} - -func (rb *RemoveChainRequestBody) SetTarget(target *ape.ChainTarget) { - rb.target = target -} - -func (rb *RemoveChainRequestBody) GetTarget() *ape.ChainTarget { - if rb == nil { - return nil - } - - return rb.target -} - -func (rb *RemoveChainRequestBody) SetChainID(chainID []byte) { - rb.chainID = chainID -} - -func (rb *RemoveChainRequestBody) GetChainID() []byte { - if rb == nil { - return nil - } - - return rb.chainID -} - -type RemoveChainResponse struct { - body *RemoveChainResponseBody - - session.ResponseHeaders -} - -type RemoveChainResponseBody struct{} - -func (r *RemoveChainResponse) SetBody(body *RemoveChainResponseBody) { - r.body = body -} - -func (r *RemoveChainResponse) GetBody() *RemoveChainResponseBody { - if r == nil { - return nil - } - - return r.body -} - -type ListChainsRequest struct { - body *ListChainsRequestBody - - session.RequestHeaders -} - -func (r *ListChainsRequest) SetBody(body *ListChainsRequestBody) { - r.body = body -} - -func (r *ListChainsRequest) GetBody() *ListChainsRequestBody { - if r == nil { - return nil - } - - return r.body -} - -type ListChainsRequestBody struct { - target *ape.ChainTarget -} - -func (rb *ListChainsRequestBody) SetTarget(target *ape.ChainTarget) { - rb.target = target -} - -func (rb *ListChainsRequestBody) GetTarget() *ape.ChainTarget { - if rb == nil { - return nil - } - - return rb.target -} - -type ListChainsResponse struct { - body *ListChainsResponseBody - - session.ResponseHeaders -} - -func (r *ListChainsResponse) SetBody(body *ListChainsResponseBody) { - r.body = body -} - -func (r *ListChainsResponse) GetBody() *ListChainsResponseBody { - if r == nil { - return nil - } - - return r.body -} - -type ListChainsResponseBody struct { - chains []*ape.Chain - - session.RequestHeaders -} - -func (r *ListChainsResponseBody) SetChains(chains []*ape.Chain) { - r.chains = chains -} - -func (r *ListChainsResponseBody) GetChains() []*ape.Chain { - if r == nil { - return nil - } - - return r.chains -} diff --git a/container/attributes.go b/container/attributes.go deleted file mode 100644 index 288d048..0000000 --- a/container/attributes.go +++ /dev/null @@ -1,90 +0,0 @@ -package container - -// SysAttributePrefix is a prefix of key to system attribute. -const SysAttributePrefix = "__SYSTEM__" - -const ( - // SysAttributeName is a string of human-friendly container name registered as the domain in NNS contract. - SysAttributeName = SysAttributePrefix + "NAME" - - // SysAttributeZone is a string of zone for container name. - SysAttributeZone = SysAttributePrefix + "ZONE" - - // SysAttributeHomomorphicHashing is a container's homomorphic hashing state. - SysAttributeHomomorphicHashing = SysAttributePrefix + "DISABLE_HOMOMORPHIC_HASHING" -) - -// SysAttributePrefixNeoFS is a prefix of key to system attribute. -// Deprecated: use SysAttributePrefix. -const SysAttributePrefixNeoFS = "__NEOFS__" - -const ( - // SysAttributeNameNeoFS is a string of human-friendly container name registered as the domain in NNS contract. - // Deprecated: use SysAttributeName. - SysAttributeNameNeoFS = SysAttributePrefixNeoFS + "NAME" - - // SysAttributeZoneNeoFS is a string of zone for container name. - // Deprecated: use SysAttributeZone. - SysAttributeZoneNeoFS = SysAttributePrefixNeoFS + "ZONE" - - // SysAttributeHomomorphicHashingNeoFS is a container's homomorphic hashing state. - // Deprecated: use SysAttributeHomomorphicHashing. - SysAttributeHomomorphicHashingNeoFS = SysAttributePrefixNeoFS + "DISABLE_HOMOMORPHIC_HASHING" -) - -// SysAttributeZoneDefault is a default value for SysAttributeZone attribute. -const SysAttributeZoneDefault = "container" - -const disabledHomomorphicHashingValue = "true" - -// HomomorphicHashingState returns container's homomorphic -// hashing state: -// - true if hashing is enabled; -// - false if hashing is disabled. -// -// All container's attributes must be unique, otherwise behavior -// is undefined. -// -// See also SetHomomorphicHashingState. -func (c Container) HomomorphicHashingState() bool { - for i := range c.attr { - if c.attr[i].GetKey() == SysAttributeHomomorphicHashing || c.attr[i].GetKey() == SysAttributeHomomorphicHashingNeoFS { - return c.attr[i].GetValue() != disabledHomomorphicHashingValue - } - } - - return true -} - -// SetHomomorphicHashingState sets homomorphic hashing state for -// container. -// -// All container's attributes must be unique, otherwise behavior -// is undefined. -// -// See also HomomorphicHashingState. -func (c *Container) SetHomomorphicHashingState(enable bool) { - for i := range c.attr { - if c.attr[i].GetKey() == SysAttributeHomomorphicHashing || c.attr[i].GetKey() == SysAttributeHomomorphicHashingNeoFS { - if enable { - // approach without allocation/waste - // coping works since the attributes - // order is not important - c.attr[i] = c.attr[len(c.attr)-1] - c.attr = c.attr[:len(c.attr)-1] - } else { - c.attr[i].SetValue(disabledHomomorphicHashingValue) - } - - return - } - } - - if !enable { - attr := Attribute{} - attr.SetKey(SysAttributeHomomorphicHashing) - attr.SetValue(disabledHomomorphicHashingValue) - - c.attr = append(c.attr, attr) - } -} diff --git a/container/attributes_test.go b/container/attributes_test.go deleted file mode 100644 index fc5678c..0000000 --- a/container/attributes_test.go +++ /dev/null @@ -1,59 +0,0 @@ -package container_test - -import ( - "testing" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/container" - containertest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/container/test" - "github.com/stretchr/testify/require" -) - -func TestContainer_HomomorphicHashingDisabled(t *testing.T) { - cnr := containertest.GenerateContainer(false) - - t.Run("defaults", func(t *testing.T) { - require.True(t, cnr.HomomorphicHashingState()) - }) - - t.Run("disabled", func(t *testing.T) { - attr := container.Attribute{} - attr.SetKey(container.SysAttributeHomomorphicHashing) - attr.SetValue("NOT_true") - - cnr.SetAttributes(append(cnr.GetAttributes(), attr)) - require.True(t, cnr.HomomorphicHashingState()) - - attr.SetValue("true") - - cnr.SetAttributes([]container.Attribute{attr}) - require.False(t, cnr.HomomorphicHashingState()) - }) -} - -func TestContainer_SetHomomorphicHashingState(t *testing.T) { - cnr := containertest.GenerateContainer(false) - attrs := cnr.GetAttributes() - attrLen := len(attrs) - - cnr.SetHomomorphicHashingState(true) - - // enabling hashing should not add any new attributes - require.Equal(t, attrLen, len(cnr.GetAttributes())) - require.True(t, cnr.HomomorphicHashingState()) - - cnr.SetHomomorphicHashingState(false) - - // disabling hashing should add exactly one attribute - require.Equal(t, attrLen+1, len(cnr.GetAttributes())) - require.False(t, cnr.HomomorphicHashingState()) - - cnr.SetHomomorphicHashingState(true) - - // enabling hashing should remove 1 attribute if - // hashing was disabled before - require.Equal(t, attrLen, len(cnr.GetAttributes())) - require.True(t, cnr.HomomorphicHashingState()) - - // hashing operations should not change any other attributes - require.ElementsMatch(t, attrs, cnr.GetAttributes()) -} diff --git a/container/convert.go b/container/convert.go deleted file mode 100644 index ebd4bcc..0000000 --- a/container/convert.go +++ /dev/null @@ -1,764 +0,0 @@ -package container - -import ( - container "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/container/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap" - netmapGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - refsGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" - sessionGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" -) - -func (a *Attribute) ToGRPCMessage() grpc.Message { - var m *container.Container_Attribute - - if a != nil { - m = new(container.Container_Attribute) - - m.SetKey(a.key) - m.SetValue(a.val) - } - - return m -} - -func (a *Attribute) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.Container_Attribute) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - a.key = v.GetKey() - a.val = v.GetValue() - - return nil -} - -func AttributesToGRPC(xs []Attribute) (res []container.Container_Attribute) { - if xs != nil { - res = make([]container.Container_Attribute, 0, len(xs)) - - for i := range xs { - res = append(res, *xs[i].ToGRPCMessage().(*container.Container_Attribute)) - } - } - - return -} - -func AttributesFromGRPC(xs []container.Container_Attribute) (res []Attribute, err error) { - if xs != nil { - res = make([]Attribute, len(xs)) - - for i := range xs { - err = res[i].FromGRPCMessage(&xs[i]) - if err != nil { - return - } - } - } - - return -} - -func (c *Container) ToGRPCMessage() grpc.Message { - var m *container.Container - - if c != nil { - m = new(container.Container) - - m.SetVersion(c.version.ToGRPCMessage().(*refsGRPC.Version)) - m.SetOwnerId(c.ownerID.ToGRPCMessage().(*refsGRPC.OwnerID)) - m.SetPlacementPolicy(c.policy.ToGRPCMessage().(*netmapGRPC.PlacementPolicy)) - m.SetAttributes(AttributesToGRPC(c.attr)) - m.SetBasicAcl(c.basicACL) - m.SetNonce(c.nonce) - } - - return m -} - -func (c *Container) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.Container) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - version := v.GetVersion() - if version == nil { - c.version = nil - } else { - if c.version == nil { - c.version = new(refs.Version) - } - - err = c.version.FromGRPCMessage(version) - if err != nil { - return err - } - } - - ownerID := v.GetOwnerId() - if ownerID == nil { - c.ownerID = nil - } else { - if c.ownerID == nil { - c.ownerID = new(refs.OwnerID) - } - - err = c.ownerID.FromGRPCMessage(ownerID) - if err != nil { - return err - } - } - - policy := v.GetPlacementPolicy() - if policy == nil { - c.policy = nil - } else { - if c.policy == nil { - c.policy = new(netmap.PlacementPolicy) - } - - err = c.policy.FromGRPCMessage(policy) - if err != nil { - return err - } - } - - c.attr, err = AttributesFromGRPC(v.GetAttributes()) - if err != nil { - return err - } - - c.basicACL = v.GetBasicAcl() - c.nonce = v.GetNonce() - - return nil -} - -func toSignatureRFC6979(s *refs.Signature) *refsGRPC.SignatureRFC6979 { - var res *refsGRPC.SignatureRFC6979 - - if s != nil { - res = new(refsGRPC.SignatureRFC6979) - res.SetKey(s.GetKey()) - res.SetSign(s.GetSign()) - } - - return res -} - -func (r *PutRequestBody) ToGRPCMessage() grpc.Message { - var m *container.PutRequest_Body - - if r != nil { - m = new(container.PutRequest_Body) - - m.SetContainer(r.cnr.ToGRPCMessage().(*container.Container)) - m.SetSignature(toSignatureRFC6979(r.sig)) - } - - return m -} - -func (r *PutRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.PutRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - cnr := v.GetContainer() - if cnr == nil { - r.cnr = nil - } else { - if r.cnr == nil { - r.cnr = new(Container) - } - - err = r.cnr.FromGRPCMessage(cnr) - if err != nil { - return err - } - } - - sig := v.GetSignature() - if sig == nil { - r.sig = nil - } else { - if r.sig == nil { - r.sig = new(refs.Signature) - } - - r.sig.SetKey(sig.GetKey()) - r.sig.SetSign(sig.GetSign()) - } - - return err -} - -func (r *PutRequest) ToGRPCMessage() grpc.Message { - var m *container.PutRequest - - if r != nil { - m = new(container.PutRequest) - - m.SetBody(r.body.ToGRPCMessage().(*container.PutRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *PutRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.PutRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(PutRequestBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *PutResponseBody) ToGRPCMessage() grpc.Message { - var m *container.PutResponse_Body - - if r != nil { - m = new(container.PutResponse_Body) - - m.SetContainerId(r.cid.ToGRPCMessage().(*refsGRPC.ContainerID)) - } - - return m -} - -func (r *PutResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.PutResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - cid := v.GetContainerId() - if cid == nil { - r.cid = nil - } else { - if r.cid == nil { - r.cid = new(refs.ContainerID) - } - - err = r.cid.FromGRPCMessage(cid) - } - - return err -} - -func (r *PutResponse) ToGRPCMessage() grpc.Message { - var m *container.PutResponse - - if r != nil { - m = new(container.PutResponse) - - m.SetBody(r.body.ToGRPCMessage().(*container.PutResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *PutResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.PutResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(PutResponseBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} - -func (r *GetRequestBody) ToGRPCMessage() grpc.Message { - var m *container.GetRequest_Body - - if r != nil { - m = new(container.GetRequest_Body) - - m.SetContainerId(r.cid.ToGRPCMessage().(*refsGRPC.ContainerID)) - } - - return m -} - -func (r *GetRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.GetRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - cid := v.GetContainerId() - if cid == nil { - r.cid = nil - } else { - if r.cid == nil { - r.cid = new(refs.ContainerID) - } - - err = r.cid.FromGRPCMessage(cid) - } - - return err -} - -func (r *GetRequest) ToGRPCMessage() grpc.Message { - var m *container.GetRequest - - if r != nil { - m = new(container.GetRequest) - - m.SetBody(r.body.ToGRPCMessage().(*container.GetRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *GetRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.GetRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(GetRequestBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *GetResponseBody) ToGRPCMessage() grpc.Message { - var m *container.GetResponse_Body - - if r != nil { - m = new(container.GetResponse_Body) - - m.SetContainer(r.cnr.ToGRPCMessage().(*container.Container)) - m.SetSessionToken(r.token.ToGRPCMessage().(*sessionGRPC.SessionToken)) - m.SetSignature(toSignatureRFC6979(r.sig)) - } - - return m -} - -func (r *GetResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.GetResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - cnr := v.GetContainer() - if cnr == nil { - r.cnr = nil - } else { - if r.cnr == nil { - r.cnr = new(Container) - } - - err = r.cnr.FromGRPCMessage(cnr) - } - - sig := v.GetSignature() - if sig == nil { - r.sig = nil - } else { - if r.sig == nil { - r.sig = new(refs.Signature) - } - - r.sig.SetKey(sig.GetKey()) - r.sig.SetSign(sig.GetSign()) - } - - token := v.GetSessionToken() - if token == nil { - r.token = nil - } else { - if r.token == nil { - r.token = new(session.Token) - } - - err = r.token.FromGRPCMessage(token) - } - - return err -} - -func (r *GetResponse) ToGRPCMessage() grpc.Message { - var m *container.GetResponse - - if r != nil { - m = new(container.GetResponse) - - m.SetBody(r.body.ToGRPCMessage().(*container.GetResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *GetResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.GetResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(GetResponseBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} - -func (r *DeleteRequestBody) ToGRPCMessage() grpc.Message { - var m *container.DeleteRequest_Body - - if r != nil { - m = new(container.DeleteRequest_Body) - - m.SetContainerId(r.cid.ToGRPCMessage().(*refsGRPC.ContainerID)) - m.SetSignature(toSignatureRFC6979(r.sig)) - } - - return m -} - -func (r *DeleteRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.DeleteRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - cid := v.GetContainerId() - if cid == nil { - r.cid = nil - } else { - if r.cid == nil { - r.cid = new(refs.ContainerID) - } - - err = r.cid.FromGRPCMessage(cid) - if err != nil { - return err - } - } - - sig := v.GetSignature() - if sig == nil { - r.sig = nil - } else { - if r.sig == nil { - r.sig = new(refs.Signature) - } - - r.sig.SetKey(sig.GetKey()) - r.sig.SetSign(sig.GetSign()) - } - - return err -} - -func (r *DeleteRequest) ToGRPCMessage() grpc.Message { - var m *container.DeleteRequest - - if r != nil { - m = new(container.DeleteRequest) - - m.SetBody(r.body.ToGRPCMessage().(*container.DeleteRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *DeleteRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.DeleteRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(DeleteRequestBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *DeleteResponseBody) ToGRPCMessage() grpc.Message { - var m *container.DeleteResponse_Body - - if r != nil { - m = new(container.DeleteResponse_Body) - } - - return m -} - -func (r *DeleteResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.DeleteResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - return nil -} - -func (r *DeleteResponse) ToGRPCMessage() grpc.Message { - var m *container.DeleteResponse - - if r != nil { - m = new(container.DeleteResponse) - - m.SetBody(r.body.ToGRPCMessage().(*container.DeleteResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *DeleteResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.DeleteResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(DeleteResponseBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} - -func (r *ListRequestBody) ToGRPCMessage() grpc.Message { - var m *container.ListRequest_Body - - if r != nil { - m = new(container.ListRequest_Body) - - m.SetOwnerId(r.ownerID.ToGRPCMessage().(*refsGRPC.OwnerID)) - } - - return m -} - -func (r *ListRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.ListRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - ownerID := v.GetOwnerId() - if ownerID == nil { - r.ownerID = nil - } else { - if r.ownerID == nil { - r.ownerID = new(refs.OwnerID) - } - - err = r.ownerID.FromGRPCMessage(ownerID) - } - - return err -} - -func (r *ListRequest) ToGRPCMessage() grpc.Message { - var m *container.ListRequest - - if r != nil { - m = new(container.ListRequest) - - m.SetBody(r.body.ToGRPCMessage().(*container.ListRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *ListRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.ListRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(ListRequestBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *ListResponseBody) ToGRPCMessage() grpc.Message { - var m *container.ListResponse_Body - - if r != nil { - m = new(container.ListResponse_Body) - - m.SetContainerIds(refs.ContainerIDsToGRPCMessage(r.cidList)) - } - - return m -} - -func (r *ListResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.ListResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - r.cidList, err = refs.ContainerIDsFromGRPCMessage(v.GetContainerIds()) - - return err -} - -func (r *ListResponse) ToGRPCMessage() grpc.Message { - var m *container.ListResponse - - if r != nil { - m = new(container.ListResponse) - - m.SetBody(r.body.ToGRPCMessage().(*container.ListResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *ListResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*container.ListResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(ListResponseBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} diff --git a/container/grpc/service_frostfs.pb.go b/container/grpc/service_frostfs.pb.go deleted file mode 100644 index cc05dde..0000000 --- a/container/grpc/service_frostfs.pb.go +++ /dev/null @@ -1,3157 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package container - -import ( - json "encoding/json" - fmt "fmt" - grpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - grpc1 "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" -) - -type PutRequest_Body struct { - Container *Container `json:"container"` - Signature *grpc.SignatureRFC6979 `json:"signature"` -} - -var ( - _ encoding.ProtoMarshaler = (*PutRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*PutRequest_Body)(nil) - _ json.Marshaler = (*PutRequest_Body)(nil) - _ json.Unmarshaler = (*PutRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Container) - size += proto.NestedStructureSize(2, x.Signature) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Container != nil { - x.Container.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Signature != nil { - x.Signature.EmitProtobuf(mm.AppendMessage(2)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutRequest_Body") - } - switch fc.FieldNum { - case 1: // Container - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Container") - } - x.Container = new(Container) - if err := x.Container.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Signature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Signature") - } - x.Signature = new(grpc.SignatureRFC6979) - if err := x.Signature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PutRequest_Body) GetContainer() *Container { - if x != nil { - return x.Container - } - return nil -} -func (x *PutRequest_Body) SetContainer(v *Container) { - x.Container = v -} -func (x *PutRequest_Body) GetSignature() *grpc.SignatureRFC6979 { - if x != nil { - return x.Signature - } - return nil -} -func (x *PutRequest_Body) SetSignature(v *grpc.SignatureRFC6979) { - x.Signature = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"container\":" - out.RawString(prefix) - x.Container.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"signature\":" - out.RawString(prefix) - x.Signature.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "container": - { - var f *Container - f = new(Container) - f.UnmarshalEasyJSON(in) - x.Container = f - } - case "signature": - { - var f *grpc.SignatureRFC6979 - f = new(grpc.SignatureRFC6979) - f.UnmarshalEasyJSON(in) - x.Signature = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PutRequest struct { - Body *PutRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*PutRequest)(nil) - _ encoding.ProtoUnmarshaler = (*PutRequest)(nil) - _ json.Marshaler = (*PutRequest)(nil) - _ json.Unmarshaler = (*PutRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *PutRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *PutRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(PutRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PutRequest) GetBody() *PutRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *PutRequest) SetBody(v *PutRequest_Body) { - x.Body = v -} -func (x *PutRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *PutRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *PutRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *PutRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *PutRequest_Body - f = new(PutRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PutResponse_Body struct { - ContainerId *grpc.ContainerID `json:"containerId"` -} - -var ( - _ encoding.ProtoMarshaler = (*PutResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*PutResponse_Body)(nil) - _ json.Marshaler = (*PutResponse_Body)(nil) - _ json.Unmarshaler = (*PutResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.ContainerId) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.ContainerId != nil { - x.ContainerId.EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutResponse_Body") - } - switch fc.FieldNum { - case 1: // ContainerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ContainerId") - } - x.ContainerId = new(grpc.ContainerID) - if err := x.ContainerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PutResponse_Body) GetContainerId() *grpc.ContainerID { - if x != nil { - return x.ContainerId - } - return nil -} -func (x *PutResponse_Body) SetContainerId(v *grpc.ContainerID) { - x.ContainerId = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"containerId\":" - out.RawString(prefix) - x.ContainerId.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "containerId": - { - var f *grpc.ContainerID - f = new(grpc.ContainerID) - f.UnmarshalEasyJSON(in) - x.ContainerId = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PutResponse struct { - Body *PutResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*PutResponse)(nil) - _ encoding.ProtoUnmarshaler = (*PutResponse)(nil) - _ json.Marshaler = (*PutResponse)(nil) - _ json.Unmarshaler = (*PutResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *PutResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *PutResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(PutResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PutResponse) GetBody() *PutResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *PutResponse) SetBody(v *PutResponse_Body) { - x.Body = v -} -func (x *PutResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *PutResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *PutResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *PutResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *PutResponse_Body - f = new(PutResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type DeleteRequest_Body struct { - ContainerId *grpc.ContainerID `json:"containerId"` - Signature *grpc.SignatureRFC6979 `json:"signature"` -} - -var ( - _ encoding.ProtoMarshaler = (*DeleteRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*DeleteRequest_Body)(nil) - _ json.Marshaler = (*DeleteRequest_Body)(nil) - _ json.Unmarshaler = (*DeleteRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *DeleteRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.ContainerId) - size += proto.NestedStructureSize(2, x.Signature) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *DeleteRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *DeleteRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.ContainerId != nil { - x.ContainerId.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Signature != nil { - x.Signature.EmitProtobuf(mm.AppendMessage(2)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *DeleteRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "DeleteRequest_Body") - } - switch fc.FieldNum { - case 1: // ContainerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ContainerId") - } - x.ContainerId = new(grpc.ContainerID) - if err := x.ContainerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Signature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Signature") - } - x.Signature = new(grpc.SignatureRFC6979) - if err := x.Signature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *DeleteRequest_Body) GetContainerId() *grpc.ContainerID { - if x != nil { - return x.ContainerId - } - return nil -} -func (x *DeleteRequest_Body) SetContainerId(v *grpc.ContainerID) { - x.ContainerId = v -} -func (x *DeleteRequest_Body) GetSignature() *grpc.SignatureRFC6979 { - if x != nil { - return x.Signature - } - return nil -} -func (x *DeleteRequest_Body) SetSignature(v *grpc.SignatureRFC6979) { - x.Signature = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *DeleteRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *DeleteRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"containerId\":" - out.RawString(prefix) - x.ContainerId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"signature\":" - out.RawString(prefix) - x.Signature.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *DeleteRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *DeleteRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "containerId": - { - var f *grpc.ContainerID - f = new(grpc.ContainerID) - f.UnmarshalEasyJSON(in) - x.ContainerId = f - } - case "signature": - { - var f *grpc.SignatureRFC6979 - f = new(grpc.SignatureRFC6979) - f.UnmarshalEasyJSON(in) - x.Signature = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type DeleteRequest struct { - Body *DeleteRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*DeleteRequest)(nil) - _ encoding.ProtoUnmarshaler = (*DeleteRequest)(nil) - _ json.Marshaler = (*DeleteRequest)(nil) - _ json.Unmarshaler = (*DeleteRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *DeleteRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *DeleteRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *DeleteRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *DeleteRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *DeleteRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *DeleteRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "DeleteRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(DeleteRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *DeleteRequest) GetBody() *DeleteRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *DeleteRequest) SetBody(v *DeleteRequest_Body) { - x.Body = v -} -func (x *DeleteRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *DeleteRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *DeleteRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *DeleteRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *DeleteRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *DeleteRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *DeleteRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *DeleteRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *DeleteRequest_Body - f = new(DeleteRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type DeleteResponse_Body struct { -} - -var ( - _ encoding.ProtoMarshaler = (*DeleteResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*DeleteResponse_Body)(nil) - _ json.Marshaler = (*DeleteResponse_Body)(nil) - _ json.Unmarshaler = (*DeleteResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *DeleteResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *DeleteResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *DeleteResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *DeleteResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "DeleteResponse_Body") - } - switch fc.FieldNum { - } - } - return nil -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *DeleteResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *DeleteResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - out.RawByte('{') - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *DeleteResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *DeleteResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type DeleteResponse struct { - Body *DeleteResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*DeleteResponse)(nil) - _ encoding.ProtoUnmarshaler = (*DeleteResponse)(nil) - _ json.Marshaler = (*DeleteResponse)(nil) - _ json.Unmarshaler = (*DeleteResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *DeleteResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *DeleteResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *DeleteResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *DeleteResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *DeleteResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *DeleteResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "DeleteResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(DeleteResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *DeleteResponse) GetBody() *DeleteResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *DeleteResponse) SetBody(v *DeleteResponse_Body) { - x.Body = v -} -func (x *DeleteResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *DeleteResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *DeleteResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *DeleteResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *DeleteResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *DeleteResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *DeleteResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *DeleteResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *DeleteResponse_Body - f = new(DeleteResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetRequest_Body struct { - ContainerId *grpc.ContainerID `json:"containerId"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*GetRequest_Body)(nil) - _ json.Marshaler = (*GetRequest_Body)(nil) - _ json.Unmarshaler = (*GetRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.ContainerId) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.ContainerId != nil { - x.ContainerId.EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetRequest_Body") - } - switch fc.FieldNum { - case 1: // ContainerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ContainerId") - } - x.ContainerId = new(grpc.ContainerID) - if err := x.ContainerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *GetRequest_Body) GetContainerId() *grpc.ContainerID { - if x != nil { - return x.ContainerId - } - return nil -} -func (x *GetRequest_Body) SetContainerId(v *grpc.ContainerID) { - x.ContainerId = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"containerId\":" - out.RawString(prefix) - x.ContainerId.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "containerId": - { - var f *grpc.ContainerID - f = new(grpc.ContainerID) - f.UnmarshalEasyJSON(in) - x.ContainerId = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetRequest struct { - Body *GetRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetRequest)(nil) - _ encoding.ProtoUnmarshaler = (*GetRequest)(nil) - _ json.Marshaler = (*GetRequest)(nil) - _ json.Unmarshaler = (*GetRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *GetRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *GetRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(GetRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *GetRequest) GetBody() *GetRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *GetRequest) SetBody(v *GetRequest_Body) { - x.Body = v -} -func (x *GetRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *GetRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *GetRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *GetRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *GetRequest_Body - f = new(GetRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetResponse_Body struct { - Container *Container `json:"container"` - Signature *grpc.SignatureRFC6979 `json:"signature"` - SessionToken *grpc1.SessionToken `json:"sessionToken"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*GetResponse_Body)(nil) - _ json.Marshaler = (*GetResponse_Body)(nil) - _ json.Unmarshaler = (*GetResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Container) - size += proto.NestedStructureSize(2, x.Signature) - size += proto.NestedStructureSize(3, x.SessionToken) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Container != nil { - x.Container.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Signature != nil { - x.Signature.EmitProtobuf(mm.AppendMessage(2)) - } - if x.SessionToken != nil { - x.SessionToken.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetResponse_Body") - } - switch fc.FieldNum { - case 1: // Container - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Container") - } - x.Container = new(Container) - if err := x.Container.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Signature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Signature") - } - x.Signature = new(grpc.SignatureRFC6979) - if err := x.Signature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // SessionToken - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "SessionToken") - } - x.SessionToken = new(grpc1.SessionToken) - if err := x.SessionToken.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *GetResponse_Body) GetContainer() *Container { - if x != nil { - return x.Container - } - return nil -} -func (x *GetResponse_Body) SetContainer(v *Container) { - x.Container = v -} -func (x *GetResponse_Body) GetSignature() *grpc.SignatureRFC6979 { - if x != nil { - return x.Signature - } - return nil -} -func (x *GetResponse_Body) SetSignature(v *grpc.SignatureRFC6979) { - x.Signature = v -} -func (x *GetResponse_Body) GetSessionToken() *grpc1.SessionToken { - if x != nil { - return x.SessionToken - } - return nil -} -func (x *GetResponse_Body) SetSessionToken(v *grpc1.SessionToken) { - x.SessionToken = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"container\":" - out.RawString(prefix) - x.Container.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"signature\":" - out.RawString(prefix) - x.Signature.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"sessionToken\":" - out.RawString(prefix) - x.SessionToken.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "container": - { - var f *Container - f = new(Container) - f.UnmarshalEasyJSON(in) - x.Container = f - } - case "signature": - { - var f *grpc.SignatureRFC6979 - f = new(grpc.SignatureRFC6979) - f.UnmarshalEasyJSON(in) - x.Signature = f - } - case "sessionToken": - { - var f *grpc1.SessionToken - f = new(grpc1.SessionToken) - f.UnmarshalEasyJSON(in) - x.SessionToken = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetResponse struct { - Body *GetResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetResponse)(nil) - _ encoding.ProtoUnmarshaler = (*GetResponse)(nil) - _ json.Marshaler = (*GetResponse)(nil) - _ json.Unmarshaler = (*GetResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *GetResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *GetResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(GetResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *GetResponse) GetBody() *GetResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *GetResponse) SetBody(v *GetResponse_Body) { - x.Body = v -} -func (x *GetResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *GetResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *GetResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *GetResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *GetResponse_Body - f = new(GetResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ListRequest_Body struct { - OwnerId *grpc.OwnerID `json:"ownerId"` -} - -var ( - _ encoding.ProtoMarshaler = (*ListRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*ListRequest_Body)(nil) - _ json.Marshaler = (*ListRequest_Body)(nil) - _ json.Unmarshaler = (*ListRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ListRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.OwnerId) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ListRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ListRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.OwnerId != nil { - x.OwnerId.EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ListRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ListRequest_Body") - } - switch fc.FieldNum { - case 1: // OwnerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "OwnerId") - } - x.OwnerId = new(grpc.OwnerID) - if err := x.OwnerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ListRequest_Body) GetOwnerId() *grpc.OwnerID { - if x != nil { - return x.OwnerId - } - return nil -} -func (x *ListRequest_Body) SetOwnerId(v *grpc.OwnerID) { - x.OwnerId = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ListRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ListRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ownerId\":" - out.RawString(prefix) - x.OwnerId.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ListRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ListRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "ownerId": - { - var f *grpc.OwnerID - f = new(grpc.OwnerID) - f.UnmarshalEasyJSON(in) - x.OwnerId = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ListRequest struct { - Body *ListRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*ListRequest)(nil) - _ encoding.ProtoUnmarshaler = (*ListRequest)(nil) - _ json.Marshaler = (*ListRequest)(nil) - _ json.Unmarshaler = (*ListRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ListRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *ListRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *ListRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ListRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ListRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ListRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ListRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(ListRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ListRequest) GetBody() *ListRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *ListRequest) SetBody(v *ListRequest_Body) { - x.Body = v -} -func (x *ListRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *ListRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *ListRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *ListRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ListRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ListRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ListRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ListRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *ListRequest_Body - f = new(ListRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ListResponse_Body struct { - ContainerIds []grpc.ContainerID `json:"containerIds"` -} - -var ( - _ encoding.ProtoMarshaler = (*ListResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*ListResponse_Body)(nil) - _ json.Marshaler = (*ListResponse_Body)(nil) - _ json.Unmarshaler = (*ListResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ListResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - for i := range x.ContainerIds { - size += proto.NestedStructureSizeUnchecked(1, &x.ContainerIds[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ListResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ListResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - for i := range x.ContainerIds { - x.ContainerIds[i].EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ListResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ListResponse_Body") - } - switch fc.FieldNum { - case 1: // ContainerIds - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ContainerIds") - } - x.ContainerIds = append(x.ContainerIds, grpc.ContainerID{}) - ff := &x.ContainerIds[len(x.ContainerIds)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ListResponse_Body) GetContainerIds() []grpc.ContainerID { - if x != nil { - return x.ContainerIds - } - return nil -} -func (x *ListResponse_Body) SetContainerIds(v []grpc.ContainerID) { - x.ContainerIds = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ListResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ListResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"containerIds\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.ContainerIds { - if i != 0 { - out.RawByte(',') - } - x.ContainerIds[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ListResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ListResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "containerIds": - { - var f grpc.ContainerID - var list []grpc.ContainerID - in.Delim('[') - for !in.IsDelim(']') { - f = grpc.ContainerID{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.ContainerIds = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ListResponse struct { - Body *ListResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*ListResponse)(nil) - _ encoding.ProtoUnmarshaler = (*ListResponse)(nil) - _ json.Marshaler = (*ListResponse)(nil) - _ json.Unmarshaler = (*ListResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ListResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *ListResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *ListResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ListResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ListResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ListResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ListResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(ListResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ListResponse) GetBody() *ListResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *ListResponse) SetBody(v *ListResponse_Body) { - x.Body = v -} -func (x *ListResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *ListResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *ListResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *ListResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ListResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ListResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ListResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ListResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *ListResponse_Body - f = new(ListResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/container/grpc/service_frostfs_fuzz.go b/container/grpc/service_frostfs_fuzz.go deleted file mode 100644 index 7e6d6e6..0000000 --- a/container/grpc/service_frostfs_fuzz.go +++ /dev/null @@ -1,159 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package container - -func DoFuzzProtoPutRequest(data []byte) int { - msg := new(PutRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONPutRequest(data []byte) int { - msg := new(PutRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoPutResponse(data []byte) int { - msg := new(PutResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONPutResponse(data []byte) int { - msg := new(PutResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoDeleteRequest(data []byte) int { - msg := new(DeleteRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONDeleteRequest(data []byte) int { - msg := new(DeleteRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoDeleteResponse(data []byte) int { - msg := new(DeleteResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONDeleteResponse(data []byte) int { - msg := new(DeleteResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoGetRequest(data []byte) int { - msg := new(GetRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONGetRequest(data []byte) int { - msg := new(GetRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoGetResponse(data []byte) int { - msg := new(GetResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONGetResponse(data []byte) int { - msg := new(GetResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoListRequest(data []byte) int { - msg := new(ListRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONListRequest(data []byte) int { - msg := new(ListRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoListResponse(data []byte) int { - msg := new(ListResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONListResponse(data []byte) int { - msg := new(ListResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/container/grpc/service_frostfs_test.go b/container/grpc/service_frostfs_test.go deleted file mode 100644 index 804b89c..0000000 --- a/container/grpc/service_frostfs_test.go +++ /dev/null @@ -1,91 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package container - -import ( - testing "testing" -) - -func FuzzProtoPutRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoPutRequest(data) - }) -} -func FuzzJSONPutRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONPutRequest(data) - }) -} -func FuzzProtoPutResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoPutResponse(data) - }) -} -func FuzzJSONPutResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONPutResponse(data) - }) -} -func FuzzProtoDeleteRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoDeleteRequest(data) - }) -} -func FuzzJSONDeleteRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONDeleteRequest(data) - }) -} -func FuzzProtoDeleteResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoDeleteResponse(data) - }) -} -func FuzzJSONDeleteResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONDeleteResponse(data) - }) -} -func FuzzProtoGetRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoGetRequest(data) - }) -} -func FuzzJSONGetRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONGetRequest(data) - }) -} -func FuzzProtoGetResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoGetResponse(data) - }) -} -func FuzzJSONGetResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONGetResponse(data) - }) -} -func FuzzProtoListRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoListRequest(data) - }) -} -func FuzzJSONListRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONListRequest(data) - }) -} -func FuzzProtoListResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoListResponse(data) - }) -} -func FuzzJSONListResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONListResponse(data) - }) -} diff --git a/container/grpc/service_grpc.pb.go b/container/grpc/service_grpc.pb.go deleted file mode 100644 index abb0fef..0000000 --- a/container/grpc/service_grpc.pb.go +++ /dev/null @@ -1,298 +0,0 @@ -// Code generated by protoc-gen-go-grpc. DO NOT EDIT. -// versions: -// - protoc-gen-go-grpc v1.3.0 -// - protoc v5.27.2 -// source: container/grpc/service.proto - -package container - -import ( - context "context" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" -) - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.32.0 or later. -const _ = grpc.SupportPackageIsVersion7 - -const ( - ContainerService_Put_FullMethodName = "/neo.fs.v2.container.ContainerService/Put" - ContainerService_Delete_FullMethodName = "/neo.fs.v2.container.ContainerService/Delete" - ContainerService_Get_FullMethodName = "/neo.fs.v2.container.ContainerService/Get" - ContainerService_List_FullMethodName = "/neo.fs.v2.container.ContainerService/List" -) - -// ContainerServiceClient is the client API for ContainerService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type ContainerServiceClient interface { - // `Put` invokes `Container` smart contract's `Put` method and returns - // response immediately. After a new block is issued in sidechain, request is - // verified by Inner Ring nodes. After one more block in sidechain, the - // container is added into smart contract storage. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // request to save the container has been sent to the sidechain; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // container create access denied. - Put(ctx context.Context, in *PutRequest, opts ...grpc.CallOption) (*PutResponse, error) - // `Delete` invokes `Container` smart contract's `Delete` method and returns - // response immediately. After a new block is issued in sidechain, request is - // verified by Inner Ring nodes. After one more block in sidechain, the - // container is added into smart contract storage. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // request to remove the container has been sent to the sidechain; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // container delete access denied. - Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*DeleteResponse, error) - // Returns container structure from `Container` smart contract storage. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // container has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // requested container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied. - Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) - // Returns all owner's containers from 'Container` smart contract' storage. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // container list has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // container list access denied. - List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) -} - -type containerServiceClient struct { - cc grpc.ClientConnInterface -} - -func NewContainerServiceClient(cc grpc.ClientConnInterface) ContainerServiceClient { - return &containerServiceClient{cc} -} - -func (c *containerServiceClient) Put(ctx context.Context, in *PutRequest, opts ...grpc.CallOption) (*PutResponse, error) { - out := new(PutResponse) - err := c.cc.Invoke(ctx, ContainerService_Put_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *containerServiceClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*DeleteResponse, error) { - out := new(DeleteResponse) - err := c.cc.Invoke(ctx, ContainerService_Delete_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *containerServiceClient) Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error) { - out := new(GetResponse) - err := c.cc.Invoke(ctx, ContainerService_Get_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *containerServiceClient) List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error) { - out := new(ListResponse) - err := c.cc.Invoke(ctx, ContainerService_List_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// ContainerServiceServer is the server API for ContainerService service. -// All implementations should embed UnimplementedContainerServiceServer -// for forward compatibility -type ContainerServiceServer interface { - // `Put` invokes `Container` smart contract's `Put` method and returns - // response immediately. After a new block is issued in sidechain, request is - // verified by Inner Ring nodes. After one more block in sidechain, the - // container is added into smart contract storage. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // request to save the container has been sent to the sidechain; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // container create access denied. - Put(context.Context, *PutRequest) (*PutResponse, error) - // `Delete` invokes `Container` smart contract's `Delete` method and returns - // response immediately. After a new block is issued in sidechain, request is - // verified by Inner Ring nodes. After one more block in sidechain, the - // container is added into smart contract storage. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // request to remove the container has been sent to the sidechain; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // container delete access denied. - Delete(context.Context, *DeleteRequest) (*DeleteResponse, error) - // Returns container structure from `Container` smart contract storage. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // container has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // requested container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied. - Get(context.Context, *GetRequest) (*GetResponse, error) - // Returns all owner's containers from 'Container` smart contract' storage. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // container list has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON); - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // container list access denied. - List(context.Context, *ListRequest) (*ListResponse, error) -} - -// UnimplementedContainerServiceServer should be embedded to have forward compatible implementations. -type UnimplementedContainerServiceServer struct { -} - -func (UnimplementedContainerServiceServer) Put(context.Context, *PutRequest) (*PutResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Put not implemented") -} -func (UnimplementedContainerServiceServer) Delete(context.Context, *DeleteRequest) (*DeleteResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") -} -func (UnimplementedContainerServiceServer) Get(context.Context, *GetRequest) (*GetResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Get not implemented") -} -func (UnimplementedContainerServiceServer) List(context.Context, *ListRequest) (*ListResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method List not implemented") -} - -// UnsafeContainerServiceServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to ContainerServiceServer will -// result in compilation errors. -type UnsafeContainerServiceServer interface { - mustEmbedUnimplementedContainerServiceServer() -} - -func RegisterContainerServiceServer(s grpc.ServiceRegistrar, srv ContainerServiceServer) { - s.RegisterService(&ContainerService_ServiceDesc, srv) -} - -func _ContainerService_Put_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(PutRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ContainerServiceServer).Put(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: ContainerService_Put_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ContainerServiceServer).Put(ctx, req.(*PutRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _ContainerService_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ContainerServiceServer).Delete(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: ContainerService_Delete_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ContainerServiceServer).Delete(ctx, req.(*DeleteRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _ContainerService_Get_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ContainerServiceServer).Get(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: ContainerService_Get_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ContainerServiceServer).Get(ctx, req.(*GetRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _ContainerService_List_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ListRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ContainerServiceServer).List(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: ContainerService_List_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ContainerServiceServer).List(ctx, req.(*ListRequest)) - } - return interceptor(ctx, in, info, handler) -} - -// ContainerService_ServiceDesc is the grpc.ServiceDesc for ContainerService service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var ContainerService_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "neo.fs.v2.container.ContainerService", - HandlerType: (*ContainerServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "Put", - Handler: _ContainerService_Put_Handler, - }, - { - MethodName: "Delete", - Handler: _ContainerService_Delete_Handler, - }, - { - MethodName: "Get", - Handler: _ContainerService_Get_Handler, - }, - { - MethodName: "List", - Handler: _ContainerService_List_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "container/grpc/service.proto", -} diff --git a/container/grpc/types_frostfs.pb.go b/container/grpc/types_frostfs.pb.go deleted file mode 100644 index a4f0882..0000000 --- a/container/grpc/types_frostfs.pb.go +++ /dev/null @@ -1,554 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package container - -import ( - json "encoding/json" - fmt "fmt" - grpc1 "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap/grpc" - grpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" - strconv "strconv" -) - -type Container_Attribute struct { - Key string `json:"key"` - Value string `json:"value"` -} - -var ( - _ encoding.ProtoMarshaler = (*Container_Attribute)(nil) - _ encoding.ProtoUnmarshaler = (*Container_Attribute)(nil) - _ json.Marshaler = (*Container_Attribute)(nil) - _ json.Unmarshaler = (*Container_Attribute)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Container_Attribute) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.StringSize(1, x.Key) - size += proto.StringSize(2, x.Value) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Container_Attribute) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Container_Attribute) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Key) != 0 { - mm.AppendString(1, x.Key) - } - if len(x.Value) != 0 { - mm.AppendString(2, x.Value) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Container_Attribute) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Container_Attribute") - } - switch fc.FieldNum { - case 1: // Key - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Key") - } - x.Key = data - case 2: // Value - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - } - } - return nil -} -func (x *Container_Attribute) GetKey() string { - if x != nil { - return x.Key - } - return "" -} -func (x *Container_Attribute) SetKey(v string) { - x.Key = v -} -func (x *Container_Attribute) GetValue() string { - if x != nil { - return x.Value - } - return "" -} -func (x *Container_Attribute) SetValue(v string) { - x.Value = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Container_Attribute) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Container_Attribute) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"key\":" - out.RawString(prefix) - out.String(x.Key) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - out.String(x.Value) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Container_Attribute) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Container_Attribute) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "key": - { - var f string - f = in.String() - x.Key = f - } - case "value": - { - var f string - f = in.String() - x.Value = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Container struct { - Version *grpc.Version `json:"version"` - OwnerId *grpc.OwnerID `json:"ownerID"` - Nonce []byte `json:"nonce"` - BasicAcl uint32 `json:"basicACL"` - Attributes []Container_Attribute `json:"attributes"` - PlacementPolicy *grpc1.PlacementPolicy `json:"placementPolicy"` -} - -var ( - _ encoding.ProtoMarshaler = (*Container)(nil) - _ encoding.ProtoUnmarshaler = (*Container)(nil) - _ json.Marshaler = (*Container)(nil) - _ json.Unmarshaler = (*Container)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Container) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Version) - size += proto.NestedStructureSize(2, x.OwnerId) - size += proto.BytesSize(3, x.Nonce) - size += proto.UInt32Size(4, x.BasicAcl) - for i := range x.Attributes { - size += proto.NestedStructureSizeUnchecked(5, &x.Attributes[i]) - } - size += proto.NestedStructureSize(6, x.PlacementPolicy) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Container) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Container) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Version != nil { - x.Version.EmitProtobuf(mm.AppendMessage(1)) - } - if x.OwnerId != nil { - x.OwnerId.EmitProtobuf(mm.AppendMessage(2)) - } - if len(x.Nonce) != 0 { - mm.AppendBytes(3, x.Nonce) - } - if x.BasicAcl != 0 { - mm.AppendUint32(4, x.BasicAcl) - } - for i := range x.Attributes { - x.Attributes[i].EmitProtobuf(mm.AppendMessage(5)) - } - if x.PlacementPolicy != nil { - x.PlacementPolicy.EmitProtobuf(mm.AppendMessage(6)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Container) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Container") - } - switch fc.FieldNum { - case 1: // Version - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Version") - } - x.Version = new(grpc.Version) - if err := x.Version.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // OwnerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "OwnerId") - } - x.OwnerId = new(grpc.OwnerID) - if err := x.OwnerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // Nonce - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Nonce") - } - x.Nonce = data - case 4: // BasicAcl - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "BasicAcl") - } - x.BasicAcl = data - case 5: // Attributes - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Attributes") - } - x.Attributes = append(x.Attributes, Container_Attribute{}) - ff := &x.Attributes[len(x.Attributes)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 6: // PlacementPolicy - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "PlacementPolicy") - } - x.PlacementPolicy = new(grpc1.PlacementPolicy) - if err := x.PlacementPolicy.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *Container) GetVersion() *grpc.Version { - if x != nil { - return x.Version - } - return nil -} -func (x *Container) SetVersion(v *grpc.Version) { - x.Version = v -} -func (x *Container) GetOwnerId() *grpc.OwnerID { - if x != nil { - return x.OwnerId - } - return nil -} -func (x *Container) SetOwnerId(v *grpc.OwnerID) { - x.OwnerId = v -} -func (x *Container) GetNonce() []byte { - if x != nil { - return x.Nonce - } - return nil -} -func (x *Container) SetNonce(v []byte) { - x.Nonce = v -} -func (x *Container) GetBasicAcl() uint32 { - if x != nil { - return x.BasicAcl - } - return 0 -} -func (x *Container) SetBasicAcl(v uint32) { - x.BasicAcl = v -} -func (x *Container) GetAttributes() []Container_Attribute { - if x != nil { - return x.Attributes - } - return nil -} -func (x *Container) SetAttributes(v []Container_Attribute) { - x.Attributes = v -} -func (x *Container) GetPlacementPolicy() *grpc1.PlacementPolicy { - if x != nil { - return x.PlacementPolicy - } - return nil -} -func (x *Container) SetPlacementPolicy(v *grpc1.PlacementPolicy) { - x.PlacementPolicy = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Container) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Container) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"version\":" - out.RawString(prefix) - x.Version.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ownerID\":" - out.RawString(prefix) - x.OwnerId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"nonce\":" - out.RawString(prefix) - if x.Nonce != nil { - out.Base64Bytes(x.Nonce) - } else { - out.String("") - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"basicACL\":" - out.RawString(prefix) - out.Uint32(x.BasicAcl) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"attributes\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Attributes { - if i != 0 { - out.RawByte(',') - } - x.Attributes[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"placementPolicy\":" - out.RawString(prefix) - x.PlacementPolicy.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Container) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Container) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "version": - { - var f *grpc.Version - f = new(grpc.Version) - f.UnmarshalEasyJSON(in) - x.Version = f - } - case "ownerID": - { - var f *grpc.OwnerID - f = new(grpc.OwnerID) - f.UnmarshalEasyJSON(in) - x.OwnerId = f - } - case "nonce": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Nonce = f - } - case "basicACL": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.BasicAcl = f - } - case "attributes": - { - var f Container_Attribute - var list []Container_Attribute - in.Delim('[') - for !in.IsDelim(']') { - f = Container_Attribute{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Attributes = list - in.Delim(']') - } - case "placementPolicy": - { - var f *grpc1.PlacementPolicy - f = new(grpc1.PlacementPolicy) - f.UnmarshalEasyJSON(in) - x.PlacementPolicy = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/container/grpc/types_frostfs_fuzz.go b/container/grpc/types_frostfs_fuzz.go deleted file mode 100644 index 5551978..0000000 --- a/container/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,26 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package container - -func DoFuzzProtoContainer(data []byte) int { - msg := new(Container) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONContainer(data []byte) int { - msg := new(Container) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/container/grpc/types_frostfs_test.go b/container/grpc/types_frostfs_test.go deleted file mode 100644 index 64d840e..0000000 --- a/container/grpc/types_frostfs_test.go +++ /dev/null @@ -1,21 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package container - -import ( - testing "testing" -) - -func FuzzProtoContainer(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoContainer(data) - }) -} -func FuzzJSONContainer(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONContainer(data) - }) -} diff --git a/container/json.go b/container/json.go deleted file mode 100644 index d9fc4f6..0000000 --- a/container/json.go +++ /dev/null @@ -1,22 +0,0 @@ -package container - -import ( - container "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/container/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -func (a *Attribute) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(a) -} - -func (a *Attribute) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(a, data, new(container.Container_Attribute)) -} - -func (c *Container) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(c) -} - -func (c *Container) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(c, data, new(container.Container)) -} diff --git a/container/marshal.go b/container/marshal.go deleted file mode 100644 index 7c9b8ef..0000000 --- a/container/marshal.go +++ /dev/null @@ -1,345 +0,0 @@ -package container - -import ( - container "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/container/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - protoutil "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" -) - -const ( - attributeKeyField = 1 - attributeValueField = 2 - - containerVersionField = 1 - containerOwnerField = 2 - containerNonceField = 3 - containerBasicACLField = 4 - containerAttributesField = 5 - containerPlacementField = 6 - - putReqBodyContainerField = 1 - putReqBodySignatureField = 2 - - putRespBodyIDField = 1 - - deleteReqBodyIDField = 1 - deleteReqBodySignatureField = 2 - - getReqBodyIDField = 1 - - getRespBodyContainerField = 1 - getRespBodySignatureField = 2 - getRespBodyTokenField = 3 - - listReqBodyOwnerField = 1 - - listRespBodyIDsField = 1 -) - -func (a *Attribute) StableMarshal(buf []byte) []byte { - if a == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, a.StableSize()) - } - - var offset int - - offset += protoutil.StringMarshal(attributeKeyField, buf[offset:], a.key) - protoutil.StringMarshal(attributeValueField, buf[offset:], a.val) - - return buf -} - -func (a *Attribute) StableSize() (size int) { - if a == nil { - return 0 - } - - size += protoutil.StringSize(attributeKeyField, a.key) - size += protoutil.StringSize(attributeValueField, a.val) - - return size -} - -func (a *Attribute) Unmarshal(data []byte) error { - return message.Unmarshal(a, data, new(container.Container_Attribute)) -} - -func (c *Container) StableMarshal(buf []byte) []byte { - if c == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, c.StableSize()) - } - - var offset int - - offset += protoutil.NestedStructureMarshal(containerVersionField, buf[offset:], c.version) - offset += protoutil.NestedStructureMarshal(containerOwnerField, buf[offset:], c.ownerID) - offset += protoutil.BytesMarshal(containerNonceField, buf[offset:], c.nonce) - offset += protoutil.UInt32Marshal(containerBasicACLField, buf[offset:], c.basicACL) - - for i := range c.attr { - offset += protoutil.NestedStructureMarshal(containerAttributesField, buf[offset:], &c.attr[i]) - } - - protoutil.NestedStructureMarshal(containerPlacementField, buf[offset:], c.policy) - - return buf -} - -func (c *Container) StableSize() (size int) { - if c == nil { - return 0 - } - - size += protoutil.NestedStructureSize(containerVersionField, c.version) - size += protoutil.NestedStructureSize(containerOwnerField, c.ownerID) - size += protoutil.BytesSize(containerNonceField, c.nonce) - size += protoutil.UInt32Size(containerBasicACLField, c.basicACL) - - for i := range c.attr { - size += protoutil.NestedStructureSize(containerAttributesField, &c.attr[i]) - } - - size += protoutil.NestedStructureSize(containerPlacementField, c.policy) - - return size -} - -func (c *Container) Unmarshal(data []byte) error { - return message.Unmarshal(c, data, new(container.Container)) -} - -func (r *PutRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += protoutil.NestedStructureMarshal(putReqBodyContainerField, buf[offset:], r.cnr) - protoutil.NestedStructureMarshal(putReqBodySignatureField, buf[offset:], r.sig) - - return buf -} - -func (r *PutRequestBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += protoutil.NestedStructureSize(putReqBodyContainerField, r.cnr) - size += protoutil.NestedStructureSize(putReqBodySignatureField, r.sig) - - return size -} - -func (r *PutRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(container.PutRequest_Body)) -} - -func (r *PutResponseBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - protoutil.NestedStructureMarshal(putRespBodyIDField, buf, r.cid) - - return buf -} - -func (r *PutResponseBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += protoutil.NestedStructureSize(putRespBodyIDField, r.cid) - - return size -} - -func (r *PutResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(container.PutResponse_Body)) -} - -func (r *DeleteRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += protoutil.NestedStructureMarshal(deleteReqBodyIDField, buf[offset:], r.cid) - protoutil.NestedStructureMarshal(deleteReqBodySignatureField, buf[offset:], r.sig) - - return buf -} - -func (r *DeleteRequestBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += protoutil.NestedStructureSize(deleteReqBodyIDField, r.cid) - size += protoutil.NestedStructureSize(deleteReqBodySignatureField, r.sig) - - return size -} - -func (r *DeleteRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(container.DeleteRequest_Body)) -} - -func (r *DeleteResponseBody) StableMarshal(_ []byte) []byte { - return nil -} - -func (r *DeleteResponseBody) StableSize() (size int) { - return 0 -} - -func (r *DeleteResponseBody) Unmarshal([]byte) error { - return nil -} - -func (r *GetRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - protoutil.NestedStructureMarshal(getReqBodyIDField, buf, r.cid) - - return buf -} - -func (r *GetRequestBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += protoutil.NestedStructureSize(getReqBodyIDField, r.cid) - - return size -} - -func (r *GetRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(container.GetRequest_Body)) -} - -func (r *GetResponseBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += protoutil.NestedStructureMarshal(getRespBodyContainerField, buf, r.cnr) - offset += protoutil.NestedStructureMarshal(getRespBodySignatureField, buf[offset:], r.sig) - protoutil.NestedStructureMarshal(getRespBodyTokenField, buf[offset:], r.token) - - return buf -} - -func (r *GetResponseBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += protoutil.NestedStructureSize(getRespBodyContainerField, r.cnr) - size += protoutil.NestedStructureSize(getRespBodySignatureField, r.sig) - size += protoutil.NestedStructureSize(getRespBodyTokenField, r.token) - - return size -} - -func (r *GetResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(container.GetResponse_Body)) -} - -func (r *ListRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - protoutil.NestedStructureMarshal(listReqBodyOwnerField, buf, r.ownerID) - - return buf -} - -func (r *ListRequestBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += protoutil.NestedStructureSize(listReqBodyOwnerField, r.ownerID) - - return size -} - -func (r *ListRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(container.ListRequest_Body)) -} - -func (r *ListResponseBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - for i := range r.cidList { - offset += protoutil.NestedStructureMarshal(listRespBodyIDsField, buf[offset:], &r.cidList[i]) - } - - return buf -} - -func (r *ListResponseBody) StableSize() (size int) { - if r == nil { - return 0 - } - - for i := range r.cidList { - size += protoutil.NestedStructureSize(listRespBodyIDsField, &r.cidList[i]) - } - - return size -} - -func (r *ListResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(container.ListResponse_Body)) -} diff --git a/container/message_test.go b/container/message_test.go deleted file mode 100644 index da99331..0000000 --- a/container/message_test.go +++ /dev/null @@ -1,36 +0,0 @@ -package container_test - -import ( - "testing" - - containertest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/container/test" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - messagetest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message/test" -) - -func TestMessageConvert(t *testing.T) { - messagetest.TestRPCMessage(t, - func(empty bool) message.Message { return containertest.GenerateAttribute(empty) }, - func(empty bool) message.Message { return containertest.GenerateContainer(empty) }, - func(empty bool) message.Message { return containertest.GeneratePutRequestBody(empty) }, - func(empty bool) message.Message { return containertest.GeneratePutRequest(empty) }, - func(empty bool) message.Message { return containertest.GeneratePutResponseBody(empty) }, - func(empty bool) message.Message { return containertest.GeneratePutResponse(empty) }, - func(empty bool) message.Message { return containertest.GenerateGetRequestBody(empty) }, - func(empty bool) message.Message { return containertest.GenerateGetRequest(empty) }, - func(empty bool) message.Message { return containertest.GenerateGetResponseBody(empty) }, - func(empty bool) message.Message { return containertest.GenerateGetResponse(empty) }, - func(empty bool) message.Message { return containertest.GenerateDeleteRequestBody(empty) }, - func(empty bool) message.Message { return containertest.GenerateDeleteRequest(empty) }, - func(empty bool) message.Message { return containertest.GenerateDeleteResponseBody(empty) }, - func(empty bool) message.Message { return containertest.GenerateDeleteResponse(empty) }, - func(empty bool) message.Message { return containertest.GenerateListRequestBody(empty) }, - func(empty bool) message.Message { return containertest.GenerateListRequest(empty) }, - func(empty bool) message.Message { return containertest.GenerateListResponseBody(empty) }, - func(empty bool) message.Message { return containertest.GenerateListResponse(empty) }, - func(empty bool) message.Message { return containertest.GenerateGetRequestBody(empty) }, - func(empty bool) message.Message { return containertest.GenerateGetRequest(empty) }, - func(empty bool) message.Message { return containertest.GenerateGetResponseBody(empty) }, - func(empty bool) message.Message { return containertest.GenerateGetResponse(empty) }, - ) -} diff --git a/container/status.go b/container/status.go deleted file mode 100644 index f44fce9..0000000 --- a/container/status.go +++ /dev/null @@ -1,33 +0,0 @@ -package container - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status" - statusgrpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/grpc" -) - -// LocalizeFailStatus checks if passed global status.Code is related to container failure and: -// -// then localizes the code and returns true, -// else leaves the code unchanged and returns false. -// -// Arg must not be nil. -func LocalizeFailStatus(c *status.Code) bool { - return status.LocalizeIfInSection(c, uint32(statusgrpc.Section_SECTION_CONTAINER)) -} - -// GlobalizeFail globalizes local code of container failure. -// -// Arg must not be nil. -func GlobalizeFail(c *status.Code) { - c.GlobalizeSection(uint32(statusgrpc.Section_SECTION_CONTAINER)) -} - -const ( - // StatusNotFound is a local status.Code value for - // CONTAINER_NOT_FOUND container failure. - StatusNotFound status.Code = iota - - // StatusEACLNotFound is a local status.Code value for - // EACL_NOT_FOUND failure. - StatusEACLNotFound -) diff --git a/container/status_test.go b/container/status_test.go deleted file mode 100644 index 57787b1..0000000 --- a/container/status_test.go +++ /dev/null @@ -1,15 +0,0 @@ -package container_test - -import ( - "testing" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/container" - statustest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/test" -) - -func TestStatusCodes(t *testing.T) { - statustest.TestCodes(t, container.LocalizeFailStatus, container.GlobalizeFail, - container.StatusNotFound, 3072, - container.StatusEACLNotFound, 3073, - ) -} diff --git a/container/test/generate.go b/container/test/generate.go deleted file mode 100644 index fb5c9e6..0000000 --- a/container/test/generate.go +++ /dev/null @@ -1,240 +0,0 @@ -package containertest - -import ( - "crypto/rand" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/container" - netmaptest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap/test" - refstest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/test" - sessiontest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/test" -) - -func GenerateAttribute(empty bool) *container.Attribute { - m := new(container.Attribute) - - if !empty { - m.SetKey("key") - m.SetValue("val") - } - - return m -} - -func GenerateAttributes(empty bool) []container.Attribute { - var res []container.Attribute - - if !empty { - res = append(res, - *GenerateAttribute(false), - *GenerateAttribute(false), - ) - } - - return res -} - -func GenerateContainer(empty bool) *container.Container { - m := new(container.Container) - - if !empty { - nonce := make([]byte, 16) - _, _ = rand.Read(nonce) - - m.SetBasicACL(12) - m.SetNonce(nonce) - m.SetOwnerID(refstest.GenerateOwnerID(false)) - m.SetAttributes(GenerateAttributes(false)) - m.SetPlacementPolicy(netmaptest.GeneratePlacementPolicy(false)) - } - - m.SetVersion(refstest.GenerateVersion(empty)) - - return m -} - -func GeneratePutRequestBody(empty bool) *container.PutRequestBody { - m := new(container.PutRequestBody) - - if !empty { - m.SetContainer(GenerateContainer(false)) - } - - m.SetSignature(refstest.GenerateSignature(empty)) - - return m -} - -func GeneratePutRequest(empty bool) *container.PutRequest { - m := new(container.PutRequest) - - if !empty { - m.SetBody(GeneratePutRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GeneratePutResponseBody(empty bool) *container.PutResponseBody { - m := new(container.PutResponseBody) - - if !empty { - m.SetContainerID(refstest.GenerateContainerID(false)) - } - - return m -} - -func GeneratePutResponse(empty bool) *container.PutResponse { - m := new(container.PutResponse) - - if !empty { - m.SetBody(GeneratePutResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateGetRequestBody(empty bool) *container.GetRequestBody { - m := new(container.GetRequestBody) - - if !empty { - m.SetContainerID(refstest.GenerateContainerID(false)) - } - - return m -} - -func GenerateGetRequest(empty bool) *container.GetRequest { - m := new(container.GetRequest) - - if !empty { - m.SetBody(GenerateGetRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateGetResponseBody(empty bool) *container.GetResponseBody { - m := new(container.GetResponseBody) - - if !empty { - m.SetContainer(GenerateContainer(false)) - } - - m.SetSignature(refstest.GenerateSignature(empty)) - m.SetSessionToken(sessiontest.GenerateSessionToken(empty)) - - return m -} - -func GenerateGetResponse(empty bool) *container.GetResponse { - m := new(container.GetResponse) - - if !empty { - m.SetBody(GenerateGetResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateDeleteRequestBody(empty bool) *container.DeleteRequestBody { - m := new(container.DeleteRequestBody) - - if !empty { - m.SetContainerID(refstest.GenerateContainerID(false)) - } - - m.SetSignature(refstest.GenerateSignature(empty)) - - return m -} - -func GenerateDeleteRequest(empty bool) *container.DeleteRequest { - m := new(container.DeleteRequest) - - if !empty { - m.SetBody(GenerateDeleteRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateDeleteResponseBody(_ bool) *container.DeleteResponseBody { - m := new(container.DeleteResponseBody) - - return m -} - -func GenerateDeleteResponse(empty bool) *container.DeleteResponse { - m := new(container.DeleteResponse) - - if !empty { - m.SetBody(GenerateDeleteResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateListRequestBody(empty bool) *container.ListRequestBody { - m := new(container.ListRequestBody) - - if !empty { - m.SetOwnerID(refstest.GenerateOwnerID(false)) - } - - return m -} - -func GenerateListRequest(empty bool) *container.ListRequest { - m := new(container.ListRequest) - - if !empty { - m.SetBody(GenerateListRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateListResponseBody(empty bool) *container.ListResponseBody { - m := new(container.ListResponseBody) - - if !empty { - m.SetContainerIDs(refstest.GenerateContainerIDs(false)) - } - - return m -} - -func GenerateListResponse(empty bool) *container.ListResponse { - m := new(container.ListResponse) - - if !empty { - m.SetBody(GenerateListResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} diff --git a/container/types.go b/container/types.go deleted file mode 100644 index 6adc57b..0000000 --- a/container/types.go +++ /dev/null @@ -1,446 +0,0 @@ -package container - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" -) - -type Attribute struct { - key, val string -} - -type Container struct { - version *refs.Version - - ownerID *refs.OwnerID - - nonce []byte - - basicACL uint32 - - attr []Attribute - - policy *netmap.PlacementPolicy -} - -type PutRequestBody struct { - cnr *Container - - sig *refs.Signature -} -type PutRequest struct { - body *PutRequestBody - - session.RequestHeaders -} - -type PutResponseBody struct { - cid *refs.ContainerID -} - -type PutResponse struct { - body *PutResponseBody - - session.ResponseHeaders -} - -type GetRequestBody struct { - cid *refs.ContainerID -} - -type GetRequest struct { - body *GetRequestBody - - session.RequestHeaders -} - -type GetResponseBody struct { - cnr *Container - - token *session.Token - - sig *refs.Signature -} - -type GetResponse struct { - body *GetResponseBody - - session.ResponseHeaders -} - -type DeleteRequestBody struct { - cid *refs.ContainerID - - sig *refs.Signature -} - -type DeleteRequest struct { - body *DeleteRequestBody - - session.RequestHeaders -} - -type DeleteResponseBody struct{} - -type DeleteResponse struct { - body *DeleteResponseBody - - session.ResponseHeaders -} - -type ListRequestBody struct { - ownerID *refs.OwnerID -} - -type ListRequest struct { - body *ListRequestBody - - session.RequestHeaders -} - -type ListResponseBody struct { - cidList []refs.ContainerID -} - -type ListResponse struct { - body *ListResponseBody - - session.ResponseHeaders -} - -func (a *Attribute) GetKey() string { - if a != nil { - return a.key - } - - return "" -} - -func (a *Attribute) SetKey(v string) { - a.key = v -} - -func (a *Attribute) GetValue() string { - if a != nil { - return a.val - } - - return "" -} - -func (a *Attribute) SetValue(v string) { - a.val = v -} - -func (c *Container) GetVersion() *refs.Version { - if c != nil { - return c.version - } - - return nil -} - -func (c *Container) SetVersion(v *refs.Version) { - c.version = v -} - -func (c *Container) GetOwnerID() *refs.OwnerID { - if c != nil { - return c.ownerID - } - - return nil -} - -func (c *Container) SetOwnerID(v *refs.OwnerID) { - c.ownerID = v -} - -func (c *Container) GetNonce() []byte { - if c != nil { - return c.nonce - } - - return nil -} - -func (c *Container) SetNonce(v []byte) { - c.nonce = v -} - -func (c *Container) GetBasicACL() uint32 { - if c != nil { - return c.basicACL - } - - return 0 -} - -func (c *Container) SetBasicACL(v uint32) { - c.basicACL = v -} - -func (c *Container) GetAttributes() []Attribute { - if c != nil { - return c.attr - } - - return nil -} - -func (c *Container) SetAttributes(v []Attribute) { - c.attr = v -} - -func (c *Container) GetPlacementPolicy() *netmap.PlacementPolicy { - if c != nil { - return c.policy - } - - return nil -} - -func (c *Container) SetPlacementPolicy(v *netmap.PlacementPolicy) { - c.policy = v -} - -func (r *PutRequestBody) GetContainer() *Container { - if r != nil { - return r.cnr - } - - return nil -} - -func (r *PutRequestBody) SetContainer(v *Container) { - r.cnr = v -} - -func (r *PutRequestBody) GetSignature() *refs.Signature { - if r != nil { - return r.sig - } - - return nil -} - -func (r *PutRequestBody) SetSignature(v *refs.Signature) { - // TODO: (neofs-api-go#381) avoid this hack (e.g. create refs.SignatureRFC6979 type) - v.SetScheme(0) - r.sig = v -} - -func (r *PutRequest) GetBody() *PutRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *PutRequest) SetBody(v *PutRequestBody) { - r.body = v -} - -func (r *PutResponseBody) GetContainerID() *refs.ContainerID { - if r != nil { - return r.cid - } - - return nil -} - -func (r *PutResponseBody) SetContainerID(v *refs.ContainerID) { - r.cid = v -} - -func (r *PutResponse) GetBody() *PutResponseBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *PutResponse) SetBody(v *PutResponseBody) { - r.body = v -} - -func (r *GetRequestBody) GetContainerID() *refs.ContainerID { - if r != nil { - return r.cid - } - - return nil -} - -func (r *GetRequestBody) SetContainerID(v *refs.ContainerID) { - r.cid = v -} - -func (r *GetRequest) GetBody() *GetRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *GetRequest) SetBody(v *GetRequestBody) { - r.body = v -} - -func (r *GetResponseBody) GetContainer() *Container { - if r != nil { - return r.cnr - } - - return nil -} - -func (r *GetResponseBody) SetContainer(v *Container) { - r.cnr = v -} - -// GetSessionToken returns token of the session within which requested -// container was created. -func (r *GetResponseBody) GetSessionToken() *session.Token { - if r != nil { - return r.token - } - - return nil -} - -// SetSessionToken sets token of the session within which requested -// container was created. -func (r *GetResponseBody) SetSessionToken(v *session.Token) { - r.token = v -} - -// GetSignature returns signature of the requested container. -func (r *GetResponseBody) GetSignature() *refs.Signature { - if r != nil { - return r.sig - } - - return nil -} - -// SetSignature sets signature of the requested container. -func (r *GetResponseBody) SetSignature(v *refs.Signature) { - // TODO: (neofs-api-go#381) avoid this hack (e.g. create refs.SignatureRFC6979 type) - v.SetScheme(0) - r.sig = v -} - -func (r *GetResponse) GetBody() *GetResponseBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *GetResponse) SetBody(v *GetResponseBody) { - r.body = v -} - -func (r *DeleteRequestBody) GetContainerID() *refs.ContainerID { - if r != nil { - return r.cid - } - - return nil -} - -func (r *DeleteRequestBody) SetContainerID(v *refs.ContainerID) { - r.cid = v -} - -func (r *DeleteRequestBody) GetSignature() *refs.Signature { - if r != nil { - return r.sig - } - - return nil -} - -func (r *DeleteRequestBody) SetSignature(v *refs.Signature) { - // TODO: (neofs-api-go#381) avoid this hack (e.g. create refs.SignatureRFC6979 type) - v.SetScheme(0) - r.sig = v -} - -func (r *DeleteRequest) GetBody() *DeleteRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *DeleteRequest) SetBody(v *DeleteRequestBody) { - r.body = v -} - -func (r *DeleteResponse) GetBody() *DeleteResponseBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *DeleteResponse) SetBody(v *DeleteResponseBody) { - r.body = v -} - -func (r *ListRequestBody) GetOwnerID() *refs.OwnerID { - if r != nil { - return r.ownerID - } - - return nil -} - -func (r *ListRequestBody) SetOwnerID(v *refs.OwnerID) { - r.ownerID = v -} - -func (r *ListRequest) GetBody() *ListRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *ListRequest) SetBody(v *ListRequestBody) { - r.body = v -} - -func (r *ListResponseBody) GetContainerIDs() []refs.ContainerID { - if r != nil { - return r.cidList - } - - return nil -} - -func (r *ListResponseBody) SetContainerIDs(v []refs.ContainerID) { - r.cidList = v -} - -func (r *ListResponse) GetBody() *ListResponseBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *ListResponse) SetBody(v *ListResponseBody) { - r.body = v -} diff --git a/docs/.gitkeep b/docs/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/docs/release-instruction.md b/docs/release-instruction.md deleted file mode 100644 index d9b4e90..0000000 --- a/docs/release-instruction.md +++ /dev/null @@ -1,45 +0,0 @@ -# Release instructions - -## Pre-release checks - -These should run successfully: -* `go test ./...`; -* `golangci-lint run ./...`; -* `go fmt ./...` (should not change any files); -* `go mog tidy` (should not change any files); -* `./prepare.sh /path/to/frostfs-api/on/your/machine` (should not change any files). - -## Writing changelog - -Add an entry to the `CHANGELOG.md` following the style established there. Add an -optional codename(for not patch releases), version and release date in the heading. -Write a paragraph describing the most significant changes done in this release. Add -`Fixed`, `Added`, `Removed` and `Updated` sections with fixed bug, new features and -other changes. - -Open Pull Request (must receive at least one approval) and merge this changes. - -## Update README - -Actualize compatibility table in `README.md` with relevant information. - -## Tag a release - -Use `vX.Y.Z` tag for releases and `vX.Y.Z-rc.N` for release candidates -following the [semantic versioning](https://semver.org/) standard. - -Update your local `master` branch after approved and merged `CHANGELOG.md` changes. -Tag a release (must be signed) and push it: - -``` -$ git tag -s vX.Y.Z[-rc.N] && git push origin vX.Y.Z[-rc.N] -``` - -## Make a proper release - -Using git.frostfs.info web interface create a new release based on just created tag -with the same changes from changelog and publish it. - -## Close milestone - -Close corresponding vX.Y.Z milestone. diff --git a/go.mod b/go.mod deleted file mode 100644 index 9672cb4..0000000 --- a/go.mod +++ /dev/null @@ -1,28 +0,0 @@ -module git.frostfs.info/TrueCloudLab/frostfs-api-go/v2 - -go 1.22 - -require ( - git.frostfs.info/TrueCloudLab/frostfs-crypto v0.6.0 - github.com/VictoriaMetrics/easyproto v0.1.4 - github.com/mailru/easyjson v0.7.7 - github.com/stretchr/testify v1.8.3 - golang.org/x/sync v0.7.0 - google.golang.org/grpc v1.66.2 - google.golang.org/protobuf v1.34.1 -) - -require ( - git.frostfs.info/TrueCloudLab/rfc6979 v0.4.0 // indirect - github.com/davecgh/go-spew v1.1.1 // indirect - github.com/josharian/intern v1.0.0 // indirect - github.com/kr/pretty v0.1.0 // indirect - github.com/mr-tron/base58 v1.2.0 // indirect - github.com/pmezard/go-difflib v1.0.0 // indirect - golang.org/x/net v0.26.0 // indirect - golang.org/x/sys v0.21.0 // indirect - golang.org/x/text v0.16.0 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240604185151-ef581f913117 // indirect - gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 // indirect - gopkg.in/yaml.v3 v3.0.1 // indirect -) diff --git a/go.sum b/go.sum deleted file mode 100644 index 4bae273..0000000 --- a/go.sum +++ /dev/null @@ -1,48 +0,0 @@ -git.frostfs.info/TrueCloudLab/frostfs-crypto v0.6.0 h1:FxqFDhQYYgpe41qsIHVOcdzSVCB8JNSfPG7Uk4r2oSk= -git.frostfs.info/TrueCloudLab/frostfs-crypto v0.6.0/go.mod h1:RUIKZATQLJ+TaYQa60X2fTDwfuhMfm8Ar60bQ5fr+vU= -git.frostfs.info/TrueCloudLab/rfc6979 v0.4.0 h1:M2KR3iBj7WpY3hP10IevfIB9MURr4O9mwVfJ+SjT3HA= -git.frostfs.info/TrueCloudLab/rfc6979 v0.4.0/go.mod h1:okpbKfVYf/BpejtfFTfhZqFP+sZ8rsHrP8Rr/jYPNRc= -github.com/VictoriaMetrics/easyproto v0.1.4 h1:r8cNvo8o6sR4QShBXQd1bKw/VVLSQma/V2KhTBPf+Sc= -github.com/VictoriaMetrics/easyproto v0.1.4/go.mod h1:QlGlzaJnDfFd8Lk6Ci/fuLxfTo3/GThPs2KH23mv710= -github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= -github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= -github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= -github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= -github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI= -github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= -github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= -github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= -github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= -github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= -github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= -github.com/mr-tron/base58 v1.2.0 h1:T/HDJBh4ZCPbU39/+c3rRvE0uKBQlU27+QI8LJ4t64o= -github.com/mr-tron/base58 v1.2.0/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= -github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= -github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.8.3 h1:RP3t2pwF7cMEbC1dqtB6poj3niw/9gnV4Cjg5oW5gtY= -github.com/stretchr/testify v1.8.3/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= -golang.org/x/net v0.26.0 h1:soB7SVo0PWrY4vPW/+ay0jKDNScG2X9wFeYlXIvJsOQ= -golang.org/x/net v0.26.0/go.mod h1:5YKkiSynbBIh3p6iOc/vibscux0x38BZDkn8sCUPxHE= -golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= -golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= -golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws= -golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= -golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240604185151-ef581f913117 h1:1GBuWVLM/KMVUv1t1En5Gs+gFZCNd360GGb4sSxtrhU= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240604185151-ef581f913117/go.mod h1:EfXuqaE1J41VCDicxHzUDm+8rk+7ZdXzHV0IhO/I6s0= -google.golang.org/grpc v1.66.2 h1:3QdXkuq3Bkh7w+ywLdLvM56cmGvQHUMZpiCzt6Rqaoo= -google.golang.org/grpc v1.66.2/go.mod h1:s3/l6xSSCURdVfAnL+TqCNMyTDAGN6+lZeVxnZR128Y= -google.golang.org/protobuf v1.34.1 h1:9ddQBjfCyZPOHPUiPxpYESBLc+T8P3E+Vo4IbKZgFWg= -google.golang.org/protobuf v1.34.1/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo= -gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= -gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/lock/grpc/types_frostfs.pb.go b/lock/grpc/types_frostfs.pb.go deleted file mode 100644 index 004a01f..0000000 --- a/lock/grpc/types_frostfs.pb.go +++ /dev/null @@ -1,171 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package lock - -import ( - json "encoding/json" - fmt "fmt" - grpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" -) - -type Lock struct { - Members []grpc.ObjectID `json:"members"` -} - -var ( - _ encoding.ProtoMarshaler = (*Lock)(nil) - _ encoding.ProtoUnmarshaler = (*Lock)(nil) - _ json.Marshaler = (*Lock)(nil) - _ json.Unmarshaler = (*Lock)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Lock) StableSize() (size int) { - if x == nil { - return 0 - } - for i := range x.Members { - size += proto.NestedStructureSizeUnchecked(1, &x.Members[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Lock) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Lock) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - for i := range x.Members { - x.Members[i].EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Lock) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Lock") - } - switch fc.FieldNum { - case 1: // Members - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Members") - } - x.Members = append(x.Members, grpc.ObjectID{}) - ff := &x.Members[len(x.Members)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *Lock) GetMembers() []grpc.ObjectID { - if x != nil { - return x.Members - } - return nil -} -func (x *Lock) SetMembers(v []grpc.ObjectID) { - x.Members = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Lock) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Lock) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"members\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Members { - if i != 0 { - out.RawByte(',') - } - x.Members[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Lock) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Lock) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "members": - { - var f grpc.ObjectID - var list []grpc.ObjectID - in.Delim('[') - for !in.IsDelim(']') { - f = grpc.ObjectID{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Members = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/lock/grpc/types_frostfs_fuzz.go b/lock/grpc/types_frostfs_fuzz.go deleted file mode 100644 index cb55151..0000000 --- a/lock/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,26 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package lock - -func DoFuzzProtoLock(data []byte) int { - msg := new(Lock) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONLock(data []byte) int { - msg := new(Lock) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/lock/grpc/types_frostfs_test.go b/lock/grpc/types_frostfs_test.go deleted file mode 100644 index 7c69064..0000000 --- a/lock/grpc/types_frostfs_test.go +++ /dev/null @@ -1,21 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package lock - -import ( - testing "testing" -) - -func FuzzProtoLock(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoLock(data) - }) -} -func FuzzJSONLock(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONLock(data) - }) -} diff --git a/netmap/convert.go b/netmap/convert.go deleted file mode 100644 index bae309f..0000000 --- a/netmap/convert.go +++ /dev/null @@ -1,916 +0,0 @@ -package netmap - -import ( - netmap "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - refsGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -func (f *Filter) ToGRPCMessage() grpc.Message { - var m *netmap.Filter - - if f != nil { - m = new(netmap.Filter) - - m.SetKey(f.key) - m.SetValue(f.value) - m.SetName(f.name) - m.SetOp(OperationToGRPCMessage(f.op)) - m.SetFilters(FiltersToGRPC(f.filters)) - } - - return m -} - -func (f *Filter) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.Filter) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - f.filters, err = FiltersFromGRPC(v.GetFilters()) - if err != nil { - return err - } - - f.key = v.GetKey() - f.value = v.GetValue() - f.name = v.GetName() - f.op = OperationFromGRPCMessage(v.GetOp()) - - return nil -} - -func FiltersToGRPC(fs []Filter) (res []netmap.Filter) { - if fs != nil { - res = make([]netmap.Filter, 0, len(fs)) - - for i := range fs { - res = append(res, *fs[i].ToGRPCMessage().(*netmap.Filter)) - } - } - - return -} - -func FiltersFromGRPC(fs []netmap.Filter) (res []Filter, err error) { - if fs != nil { - res = make([]Filter, len(fs)) - - for i := range fs { - err = res[i].FromGRPCMessage(&fs[i]) - if err != nil { - return - } - } - } - - return -} - -func (s *Selector) ToGRPCMessage() grpc.Message { - var m *netmap.Selector - - if s != nil { - m = new(netmap.Selector) - - m.SetName(s.name) - m.SetAttribute(s.attribute) - m.SetFilter(s.filter) - m.SetCount(s.count) - m.SetClause(ClauseToGRPCMessage(s.clause)) - } - - return m -} - -func (s *Selector) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.Selector) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - s.name = v.GetName() - s.attribute = v.GetAttribute() - s.filter = v.GetFilter() - s.count = v.GetCount() - s.clause = ClauseFromGRPCMessage(v.GetClause()) - - return nil -} - -func SelectorsToGRPC(ss []Selector) (res []netmap.Selector) { - if ss != nil { - res = make([]netmap.Selector, 0, len(ss)) - - for i := range ss { - res = append(res, *ss[i].ToGRPCMessage().(*netmap.Selector)) - } - } - - return -} - -func SelectorsFromGRPC(ss []netmap.Selector) (res []Selector, err error) { - if ss != nil { - res = make([]Selector, len(ss)) - - for i := range ss { - err = res[i].FromGRPCMessage(&ss[i]) - if err != nil { - return - } - } - } - - return -} - -func (r *Replica) ToGRPCMessage() grpc.Message { - var m *netmap.Replica - - if r != nil { - m = new(netmap.Replica) - - m.SetSelector(r.selector) - m.SetCount(r.count) - m.EcDataCount = r.ecDataCount - m.EcParityCount = r.ecParityCount - } - - return m -} - -func (r *Replica) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.Replica) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - r.selector = v.GetSelector() - r.count = v.GetCount() - r.ecDataCount = v.GetEcDataCount() - r.ecParityCount = v.GetEcParityCount() - - return nil -} - -func ReplicasToGRPC(rs []Replica) (res []netmap.Replica) { - if rs != nil { - res = make([]netmap.Replica, 0, len(rs)) - - for i := range rs { - res = append(res, *rs[i].ToGRPCMessage().(*netmap.Replica)) - } - } - - return -} - -func ReplicasFromGRPC(rs []netmap.Replica) (res []Replica, err error) { - if rs != nil { - res = make([]Replica, len(rs)) - - for i := range rs { - err = res[i].FromGRPCMessage(&rs[i]) - if err != nil { - return - } - } - } - - return -} - -func (p *PlacementPolicy) ToGRPCMessage() grpc.Message { - var m *netmap.PlacementPolicy - - if p != nil { - m = new(netmap.PlacementPolicy) - - m.SetFilters(FiltersToGRPC(p.filters)) - m.SetSelectors(SelectorsToGRPC(p.selectors)) - m.SetReplicas(ReplicasToGRPC(p.replicas)) - m.SetContainerBackupFactor(p.backupFactor) - m.SetUnique(p.unique) - } - - return m -} - -func (p *PlacementPolicy) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.PlacementPolicy) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - p.filters, err = FiltersFromGRPC(v.GetFilters()) - if err != nil { - return err - } - - p.selectors, err = SelectorsFromGRPC(v.GetSelectors()) - if err != nil { - return err - } - - p.replicas, err = ReplicasFromGRPC(v.GetReplicas()) - if err != nil { - return err - } - - p.backupFactor = v.GetContainerBackupFactor() - - p.unique = v.GetUnique() - - return nil -} - -func ClauseToGRPCMessage(n Clause) netmap.Clause { - return netmap.Clause(n) -} - -func ClauseFromGRPCMessage(n netmap.Clause) Clause { - return Clause(n) -} - -func OperationToGRPCMessage(n Operation) netmap.Operation { - return netmap.Operation(n) -} - -func OperationFromGRPCMessage(n netmap.Operation) Operation { - return Operation(n) -} - -func NodeStateToGRPCMessage(n NodeState) netmap.NodeInfo_State { - return netmap.NodeInfo_State(n) -} - -func NodeStateFromRPCMessage(n netmap.NodeInfo_State) NodeState { - return NodeState(n) -} - -func (a *Attribute) ToGRPCMessage() grpc.Message { - var m *netmap.NodeInfo_Attribute - - if a != nil { - m = new(netmap.NodeInfo_Attribute) - - m.SetKey(a.key) - m.SetValue(a.value) - m.SetParents(a.parents) - } - - return m -} - -func (a *Attribute) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NodeInfo_Attribute) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - a.key = v.GetKey() - a.value = v.GetValue() - a.parents = v.GetParents() - - return nil -} - -func AttributesToGRPC(as []Attribute) (res []netmap.NodeInfo_Attribute) { - if as != nil { - res = make([]netmap.NodeInfo_Attribute, 0, len(as)) - - for i := range as { - res = append(res, *as[i].ToGRPCMessage().(*netmap.NodeInfo_Attribute)) - } - } - - return -} - -func AttributesFromGRPC(as []netmap.NodeInfo_Attribute) (res []Attribute, err error) { - if as != nil { - res = make([]Attribute, len(as)) - - for i := range as { - err = res[i].FromGRPCMessage(&as[i]) - if err != nil { - return - } - } - } - - return -} - -func (ni *NodeInfo) ToGRPCMessage() grpc.Message { - var m *netmap.NodeInfo - - if ni != nil { - m = new(netmap.NodeInfo) - - m.SetPublicKey(ni.publicKey) - m.SetAddresses(ni.addresses) - m.SetState(NodeStateToGRPCMessage(ni.state)) - m.SetAttributes(AttributesToGRPC(ni.attributes)) - } - - return m -} - -func (ni *NodeInfo) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NodeInfo) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - ni.attributes, err = AttributesFromGRPC(v.GetAttributes()) - if err != nil { - return err - } - - ni.publicKey = v.GetPublicKey() - ni.addresses = v.GetAddresses() - ni.state = NodeStateFromRPCMessage(v.GetState()) - - return nil -} - -func (l *LocalNodeInfoRequestBody) ToGRPCMessage() grpc.Message { - var m *netmap.LocalNodeInfoRequest_Body - - if l != nil { - m = new(netmap.LocalNodeInfoRequest_Body) - } - - return m -} - -func (l *LocalNodeInfoRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.LocalNodeInfoRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - return nil -} - -func (l *LocalNodeInfoRequest) ToGRPCMessage() grpc.Message { - var m *netmap.LocalNodeInfoRequest - - if l != nil { - m = new(netmap.LocalNodeInfoRequest) - - m.SetBody(l.body.ToGRPCMessage().(*netmap.LocalNodeInfoRequest_Body)) - l.RequestHeaders.ToMessage(m) - } - - return m -} - -func (l *LocalNodeInfoRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.LocalNodeInfoRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - l.body = nil - } else { - if l.body == nil { - l.body = new(LocalNodeInfoRequestBody) - } - - err = l.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return l.RequestHeaders.FromMessage(v) -} - -func (l *LocalNodeInfoResponseBody) ToGRPCMessage() grpc.Message { - var m *netmap.LocalNodeInfoResponse_Body - - if l != nil { - m = new(netmap.LocalNodeInfoResponse_Body) - - m.SetVersion(l.version.ToGRPCMessage().(*refsGRPC.Version)) - m.SetNodeInfo(l.nodeInfo.ToGRPCMessage().(*netmap.NodeInfo)) - } - - return m -} - -func (l *LocalNodeInfoResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.LocalNodeInfoResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - version := v.GetVersion() - if version == nil { - l.version = nil - } else { - if l.version == nil { - l.version = new(refs.Version) - } - - err = l.version.FromGRPCMessage(version) - if err != nil { - return err - } - } - - nodeInfo := v.GetNodeInfo() - if nodeInfo == nil { - l.nodeInfo = nil - } else { - if l.nodeInfo == nil { - l.nodeInfo = new(NodeInfo) - } - - err = l.nodeInfo.FromGRPCMessage(nodeInfo) - } - - return err -} - -func (l *LocalNodeInfoResponse) ToGRPCMessage() grpc.Message { - var m *netmap.LocalNodeInfoResponse - - if l != nil { - m = new(netmap.LocalNodeInfoResponse) - - m.SetBody(l.body.ToGRPCMessage().(*netmap.LocalNodeInfoResponse_Body)) - l.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (l *LocalNodeInfoResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.LocalNodeInfoResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - l.body = nil - } else { - if l.body == nil { - l.body = new(LocalNodeInfoResponseBody) - } - - err = l.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return l.ResponseHeaders.FromMessage(v) -} - -func (x *NetworkParameter) ToGRPCMessage() grpc.Message { - var m *netmap.NetworkConfig_Parameter - - if x != nil { - m = new(netmap.NetworkConfig_Parameter) - - m.SetKey(x.k) - m.SetValue(x.v) - } - - return m -} - -func (x *NetworkParameter) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NetworkConfig_Parameter) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - x.k = v.GetKey() - x.v = v.GetValue() - - return nil -} - -func (x *NetworkConfig) ToGRPCMessage() grpc.Message { - var m *netmap.NetworkConfig - - if x != nil { - m = new(netmap.NetworkConfig) - - var ps []netmap.NetworkConfig_Parameter - - if ln := len(x.ps); ln > 0 { - ps = make([]netmap.NetworkConfig_Parameter, 0, ln) - - for i := range ln { - ps = append(ps, *x.ps[i].ToGRPCMessage().(*netmap.NetworkConfig_Parameter)) - } - } - - m.SetParameters(ps) - } - - return m -} - -func (x *NetworkConfig) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NetworkConfig) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var ( - ps []NetworkParameter - psV2 = v.GetParameters() - ) - - if psV2 != nil { - ln := len(psV2) - - ps = make([]NetworkParameter, ln) - - for i := range ln { - if err := ps[i].FromGRPCMessage(&psV2[i]); err != nil { - return err - } - } - } - - x.ps = ps - - return nil -} - -func (i *NetworkInfo) ToGRPCMessage() grpc.Message { - var m *netmap.NetworkInfo - - if i != nil { - m = new(netmap.NetworkInfo) - - m.SetMagicNumber(i.magicNum) - m.SetCurrentEpoch(i.curEpoch) - m.SetMsPerBlock(i.msPerBlock) - m.SetNetworkConfig(i.netCfg.ToGRPCMessage().(*netmap.NetworkConfig)) - } - - return m -} - -func (i *NetworkInfo) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NetworkInfo) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - netCfg := v.GetNetworkConfig() - if netCfg == nil { - i.netCfg = nil - } else { - if i.netCfg == nil { - i.netCfg = new(NetworkConfig) - } - - err = i.netCfg.FromGRPCMessage(netCfg) - if err != nil { - return err - } - } - - i.magicNum = v.GetMagicNumber() - i.curEpoch = v.GetCurrentEpoch() - i.msPerBlock = v.GetMsPerBlock() - - return nil -} - -func (l *NetworkInfoRequestBody) ToGRPCMessage() grpc.Message { - var m *netmap.NetworkInfoRequest_Body - - if l != nil { - m = new(netmap.NetworkInfoRequest_Body) - } - - return m -} - -func (l *NetworkInfoRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NetworkInfoRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - return nil -} - -func (l *NetworkInfoRequest) ToGRPCMessage() grpc.Message { - var m *netmap.NetworkInfoRequest - - if l != nil { - m = new(netmap.NetworkInfoRequest) - - m.SetBody(l.body.ToGRPCMessage().(*netmap.NetworkInfoRequest_Body)) - l.RequestHeaders.ToMessage(m) - } - - return m -} - -func (l *NetworkInfoRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NetworkInfoRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - l.body = nil - } else { - if l.body == nil { - l.body = new(NetworkInfoRequestBody) - } - - err = l.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return l.RequestHeaders.FromMessage(v) -} - -func (i *NetworkInfoResponseBody) ToGRPCMessage() grpc.Message { - var m *netmap.NetworkInfoResponse_Body - - if i != nil { - m = new(netmap.NetworkInfoResponse_Body) - - m.SetNetworkInfo(i.netInfo.ToGRPCMessage().(*netmap.NetworkInfo)) - } - - return m -} - -func (i *NetworkInfoResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NetworkInfoResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - netInfo := v.GetNetworkInfo() - if netInfo == nil { - i.netInfo = nil - } else { - if i.netInfo == nil { - i.netInfo = new(NetworkInfo) - } - - err = i.netInfo.FromGRPCMessage(netInfo) - } - - return err -} - -func (l *NetworkInfoResponse) ToGRPCMessage() grpc.Message { - var m *netmap.NetworkInfoResponse - - if l != nil { - m = new(netmap.NetworkInfoResponse) - - m.SetBody(l.body.ToGRPCMessage().(*netmap.NetworkInfoResponse_Body)) - l.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (l *NetworkInfoResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NetworkInfoResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - l.body = nil - } else { - if l.body == nil { - l.body = new(NetworkInfoResponseBody) - } - - err = l.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return l.ResponseHeaders.FromMessage(v) -} - -func (x *NetMap) ToGRPCMessage() grpc.Message { - var m *netmap.Netmap - - if x != nil { - m = new(netmap.Netmap) - - m.SetEpoch(x.epoch) - - if x.nodes != nil { - nodes := make([]netmap.NodeInfo, len(x.nodes)) - - for i := range x.nodes { - nodes[i] = *x.nodes[i].ToGRPCMessage().(*netmap.NodeInfo) - } - - m.SetNodes(nodes) - } - } - - return m -} - -func (x *NetMap) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.Netmap) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - nodes := v.GetNodes() - if nodes == nil { - x.nodes = nil - } else { - x.nodes = make([]NodeInfo, len(nodes)) - - for i := range nodes { - err = x.nodes[i].FromGRPCMessage(&nodes[i]) - if err != nil { - return err - } - } - } - - x.epoch = v.GetEpoch() - - return nil -} - -func (x *SnapshotRequestBody) ToGRPCMessage() grpc.Message { - var m *netmap.NetmapSnapshotRequest_Body - - if x != nil { - m = new(netmap.NetmapSnapshotRequest_Body) - } - - return m -} - -func (x *SnapshotRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NetmapSnapshotRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - return nil -} - -func (x *SnapshotRequest) ToGRPCMessage() grpc.Message { - var m *netmap.NetmapSnapshotRequest - - if x != nil { - m = new(netmap.NetmapSnapshotRequest) - - m.SetBody(x.body.ToGRPCMessage().(*netmap.NetmapSnapshotRequest_Body)) - x.RequestHeaders.ToMessage(m) - } - - return m -} - -func (x *SnapshotRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NetmapSnapshotRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - x.body = nil - } else { - if x.body == nil { - x.body = new(SnapshotRequestBody) - } - - err = x.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return x.RequestHeaders.FromMessage(v) -} - -func (x *SnapshotResponseBody) ToGRPCMessage() grpc.Message { - var m *netmap.NetmapSnapshotResponse_Body - - if x != nil { - m = new(netmap.NetmapSnapshotResponse_Body) - - m.SetNetmap(x.netMap.ToGRPCMessage().(*netmap.Netmap)) - } - - return m -} - -func (x *SnapshotResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NetmapSnapshotResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - netMap := v.GetNetmap() - if netMap == nil { - x.netMap = nil - } else { - if x.netMap == nil { - x.netMap = new(NetMap) - } - - err = x.netMap.FromGRPCMessage(netMap) - } - - return err -} - -func (x *SnapshotResponse) ToGRPCMessage() grpc.Message { - var m *netmap.NetmapSnapshotResponse - - if x != nil { - m = new(netmap.NetmapSnapshotResponse) - - m.SetBody(x.body.ToGRPCMessage().(*netmap.NetmapSnapshotResponse_Body)) - x.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (x *SnapshotResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*netmap.NetmapSnapshotResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - x.body = nil - } else { - if x.body == nil { - x.body = new(SnapshotResponseBody) - } - - err = x.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return x.ResponseHeaders.FromMessage(v) -} diff --git a/netmap/grpc/service_frostfs.pb.go b/netmap/grpc/service_frostfs.pb.go deleted file mode 100644 index 9ebbf98..0000000 --- a/netmap/grpc/service_frostfs.pb.go +++ /dev/null @@ -1,2180 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package netmap - -import ( - json "encoding/json" - fmt "fmt" - grpc1 "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - grpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" -) - -type LocalNodeInfoRequest_Body struct { -} - -var ( - _ encoding.ProtoMarshaler = (*LocalNodeInfoRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*LocalNodeInfoRequest_Body)(nil) - _ json.Marshaler = (*LocalNodeInfoRequest_Body)(nil) - _ json.Unmarshaler = (*LocalNodeInfoRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *LocalNodeInfoRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *LocalNodeInfoRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *LocalNodeInfoRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *LocalNodeInfoRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "LocalNodeInfoRequest_Body") - } - switch fc.FieldNum { - } - } - return nil -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *LocalNodeInfoRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *LocalNodeInfoRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - out.RawByte('{') - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *LocalNodeInfoRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *LocalNodeInfoRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type LocalNodeInfoRequest struct { - Body *LocalNodeInfoRequest_Body `json:"body"` - MetaHeader *grpc.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*LocalNodeInfoRequest)(nil) - _ encoding.ProtoUnmarshaler = (*LocalNodeInfoRequest)(nil) - _ json.Marshaler = (*LocalNodeInfoRequest)(nil) - _ json.Unmarshaler = (*LocalNodeInfoRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *LocalNodeInfoRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *LocalNodeInfoRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *LocalNodeInfoRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *LocalNodeInfoRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *LocalNodeInfoRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *LocalNodeInfoRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "LocalNodeInfoRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(LocalNodeInfoRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *LocalNodeInfoRequest) GetBody() *LocalNodeInfoRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *LocalNodeInfoRequest) SetBody(v *LocalNodeInfoRequest_Body) { - x.Body = v -} -func (x *LocalNodeInfoRequest) GetMetaHeader() *grpc.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *LocalNodeInfoRequest) SetMetaHeader(v *grpc.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *LocalNodeInfoRequest) GetVerifyHeader() *grpc.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *LocalNodeInfoRequest) SetVerifyHeader(v *grpc.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *LocalNodeInfoRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *LocalNodeInfoRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *LocalNodeInfoRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *LocalNodeInfoRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *LocalNodeInfoRequest_Body - f = new(LocalNodeInfoRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc.RequestMetaHeader - f = new(grpc.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc.RequestVerificationHeader - f = new(grpc.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type LocalNodeInfoResponse_Body struct { - Version *grpc1.Version `json:"version"` - NodeInfo *NodeInfo `json:"nodeInfo"` -} - -var ( - _ encoding.ProtoMarshaler = (*LocalNodeInfoResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*LocalNodeInfoResponse_Body)(nil) - _ json.Marshaler = (*LocalNodeInfoResponse_Body)(nil) - _ json.Unmarshaler = (*LocalNodeInfoResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *LocalNodeInfoResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Version) - size += proto.NestedStructureSize(2, x.NodeInfo) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *LocalNodeInfoResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *LocalNodeInfoResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Version != nil { - x.Version.EmitProtobuf(mm.AppendMessage(1)) - } - if x.NodeInfo != nil { - x.NodeInfo.EmitProtobuf(mm.AppendMessage(2)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *LocalNodeInfoResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "LocalNodeInfoResponse_Body") - } - switch fc.FieldNum { - case 1: // Version - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Version") - } - x.Version = new(grpc1.Version) - if err := x.Version.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // NodeInfo - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "NodeInfo") - } - x.NodeInfo = new(NodeInfo) - if err := x.NodeInfo.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *LocalNodeInfoResponse_Body) GetVersion() *grpc1.Version { - if x != nil { - return x.Version - } - return nil -} -func (x *LocalNodeInfoResponse_Body) SetVersion(v *grpc1.Version) { - x.Version = v -} -func (x *LocalNodeInfoResponse_Body) GetNodeInfo() *NodeInfo { - if x != nil { - return x.NodeInfo - } - return nil -} -func (x *LocalNodeInfoResponse_Body) SetNodeInfo(v *NodeInfo) { - x.NodeInfo = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *LocalNodeInfoResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *LocalNodeInfoResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"version\":" - out.RawString(prefix) - x.Version.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"nodeInfo\":" - out.RawString(prefix) - x.NodeInfo.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *LocalNodeInfoResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *LocalNodeInfoResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "version": - { - var f *grpc1.Version - f = new(grpc1.Version) - f.UnmarshalEasyJSON(in) - x.Version = f - } - case "nodeInfo": - { - var f *NodeInfo - f = new(NodeInfo) - f.UnmarshalEasyJSON(in) - x.NodeInfo = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type LocalNodeInfoResponse struct { - Body *LocalNodeInfoResponse_Body `json:"body"` - MetaHeader *grpc.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*LocalNodeInfoResponse)(nil) - _ encoding.ProtoUnmarshaler = (*LocalNodeInfoResponse)(nil) - _ json.Marshaler = (*LocalNodeInfoResponse)(nil) - _ json.Unmarshaler = (*LocalNodeInfoResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *LocalNodeInfoResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *LocalNodeInfoResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *LocalNodeInfoResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *LocalNodeInfoResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *LocalNodeInfoResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *LocalNodeInfoResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "LocalNodeInfoResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(LocalNodeInfoResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *LocalNodeInfoResponse) GetBody() *LocalNodeInfoResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *LocalNodeInfoResponse) SetBody(v *LocalNodeInfoResponse_Body) { - x.Body = v -} -func (x *LocalNodeInfoResponse) GetMetaHeader() *grpc.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *LocalNodeInfoResponse) SetMetaHeader(v *grpc.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *LocalNodeInfoResponse) GetVerifyHeader() *grpc.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *LocalNodeInfoResponse) SetVerifyHeader(v *grpc.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *LocalNodeInfoResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *LocalNodeInfoResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *LocalNodeInfoResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *LocalNodeInfoResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *LocalNodeInfoResponse_Body - f = new(LocalNodeInfoResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc.ResponseMetaHeader - f = new(grpc.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc.ResponseVerificationHeader - f = new(grpc.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NetworkInfoRequest_Body struct { -} - -var ( - _ encoding.ProtoMarshaler = (*NetworkInfoRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*NetworkInfoRequest_Body)(nil) - _ json.Marshaler = (*NetworkInfoRequest_Body)(nil) - _ json.Unmarshaler = (*NetworkInfoRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NetworkInfoRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NetworkInfoRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NetworkInfoRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NetworkInfoRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NetworkInfoRequest_Body") - } - switch fc.FieldNum { - } - } - return nil -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NetworkInfoRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NetworkInfoRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - out.RawByte('{') - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NetworkInfoRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NetworkInfoRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NetworkInfoRequest struct { - Body *NetworkInfoRequest_Body `json:"body"` - MetaHeader *grpc.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*NetworkInfoRequest)(nil) - _ encoding.ProtoUnmarshaler = (*NetworkInfoRequest)(nil) - _ json.Marshaler = (*NetworkInfoRequest)(nil) - _ json.Unmarshaler = (*NetworkInfoRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NetworkInfoRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *NetworkInfoRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *NetworkInfoRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NetworkInfoRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NetworkInfoRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NetworkInfoRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NetworkInfoRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(NetworkInfoRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *NetworkInfoRequest) GetBody() *NetworkInfoRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *NetworkInfoRequest) SetBody(v *NetworkInfoRequest_Body) { - x.Body = v -} -func (x *NetworkInfoRequest) GetMetaHeader() *grpc.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *NetworkInfoRequest) SetMetaHeader(v *grpc.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *NetworkInfoRequest) GetVerifyHeader() *grpc.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *NetworkInfoRequest) SetVerifyHeader(v *grpc.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NetworkInfoRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NetworkInfoRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NetworkInfoRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NetworkInfoRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *NetworkInfoRequest_Body - f = new(NetworkInfoRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc.RequestMetaHeader - f = new(grpc.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc.RequestVerificationHeader - f = new(grpc.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NetworkInfoResponse_Body struct { - NetworkInfo *NetworkInfo `json:"networkInfo"` -} - -var ( - _ encoding.ProtoMarshaler = (*NetworkInfoResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*NetworkInfoResponse_Body)(nil) - _ json.Marshaler = (*NetworkInfoResponse_Body)(nil) - _ json.Unmarshaler = (*NetworkInfoResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NetworkInfoResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.NetworkInfo) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NetworkInfoResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NetworkInfoResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.NetworkInfo != nil { - x.NetworkInfo.EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NetworkInfoResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NetworkInfoResponse_Body") - } - switch fc.FieldNum { - case 1: // NetworkInfo - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "NetworkInfo") - } - x.NetworkInfo = new(NetworkInfo) - if err := x.NetworkInfo.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *NetworkInfoResponse_Body) GetNetworkInfo() *NetworkInfo { - if x != nil { - return x.NetworkInfo - } - return nil -} -func (x *NetworkInfoResponse_Body) SetNetworkInfo(v *NetworkInfo) { - x.NetworkInfo = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NetworkInfoResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NetworkInfoResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"networkInfo\":" - out.RawString(prefix) - x.NetworkInfo.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NetworkInfoResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NetworkInfoResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "networkInfo": - { - var f *NetworkInfo - f = new(NetworkInfo) - f.UnmarshalEasyJSON(in) - x.NetworkInfo = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NetworkInfoResponse struct { - Body *NetworkInfoResponse_Body `json:"body"` - MetaHeader *grpc.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*NetworkInfoResponse)(nil) - _ encoding.ProtoUnmarshaler = (*NetworkInfoResponse)(nil) - _ json.Marshaler = (*NetworkInfoResponse)(nil) - _ json.Unmarshaler = (*NetworkInfoResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NetworkInfoResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *NetworkInfoResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *NetworkInfoResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NetworkInfoResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NetworkInfoResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NetworkInfoResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NetworkInfoResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(NetworkInfoResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *NetworkInfoResponse) GetBody() *NetworkInfoResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *NetworkInfoResponse) SetBody(v *NetworkInfoResponse_Body) { - x.Body = v -} -func (x *NetworkInfoResponse) GetMetaHeader() *grpc.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *NetworkInfoResponse) SetMetaHeader(v *grpc.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *NetworkInfoResponse) GetVerifyHeader() *grpc.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *NetworkInfoResponse) SetVerifyHeader(v *grpc.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NetworkInfoResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NetworkInfoResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NetworkInfoResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NetworkInfoResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *NetworkInfoResponse_Body - f = new(NetworkInfoResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc.ResponseMetaHeader - f = new(grpc.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc.ResponseVerificationHeader - f = new(grpc.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NetmapSnapshotRequest_Body struct { -} - -var ( - _ encoding.ProtoMarshaler = (*NetmapSnapshotRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*NetmapSnapshotRequest_Body)(nil) - _ json.Marshaler = (*NetmapSnapshotRequest_Body)(nil) - _ json.Unmarshaler = (*NetmapSnapshotRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NetmapSnapshotRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NetmapSnapshotRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NetmapSnapshotRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NetmapSnapshotRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NetmapSnapshotRequest_Body") - } - switch fc.FieldNum { - } - } - return nil -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NetmapSnapshotRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NetmapSnapshotRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - out.RawByte('{') - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NetmapSnapshotRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NetmapSnapshotRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NetmapSnapshotRequest struct { - Body *NetmapSnapshotRequest_Body `json:"body"` - MetaHeader *grpc.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*NetmapSnapshotRequest)(nil) - _ encoding.ProtoUnmarshaler = (*NetmapSnapshotRequest)(nil) - _ json.Marshaler = (*NetmapSnapshotRequest)(nil) - _ json.Unmarshaler = (*NetmapSnapshotRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NetmapSnapshotRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *NetmapSnapshotRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *NetmapSnapshotRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NetmapSnapshotRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NetmapSnapshotRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NetmapSnapshotRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NetmapSnapshotRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(NetmapSnapshotRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *NetmapSnapshotRequest) GetBody() *NetmapSnapshotRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *NetmapSnapshotRequest) SetBody(v *NetmapSnapshotRequest_Body) { - x.Body = v -} -func (x *NetmapSnapshotRequest) GetMetaHeader() *grpc.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *NetmapSnapshotRequest) SetMetaHeader(v *grpc.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *NetmapSnapshotRequest) GetVerifyHeader() *grpc.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *NetmapSnapshotRequest) SetVerifyHeader(v *grpc.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NetmapSnapshotRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NetmapSnapshotRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NetmapSnapshotRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NetmapSnapshotRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *NetmapSnapshotRequest_Body - f = new(NetmapSnapshotRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc.RequestMetaHeader - f = new(grpc.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc.RequestVerificationHeader - f = new(grpc.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NetmapSnapshotResponse_Body struct { - Netmap *Netmap `json:"netmap"` -} - -var ( - _ encoding.ProtoMarshaler = (*NetmapSnapshotResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*NetmapSnapshotResponse_Body)(nil) - _ json.Marshaler = (*NetmapSnapshotResponse_Body)(nil) - _ json.Unmarshaler = (*NetmapSnapshotResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NetmapSnapshotResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Netmap) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NetmapSnapshotResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NetmapSnapshotResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Netmap != nil { - x.Netmap.EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NetmapSnapshotResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NetmapSnapshotResponse_Body") - } - switch fc.FieldNum { - case 1: // Netmap - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Netmap") - } - x.Netmap = new(Netmap) - if err := x.Netmap.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *NetmapSnapshotResponse_Body) GetNetmap() *Netmap { - if x != nil { - return x.Netmap - } - return nil -} -func (x *NetmapSnapshotResponse_Body) SetNetmap(v *Netmap) { - x.Netmap = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NetmapSnapshotResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NetmapSnapshotResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"netmap\":" - out.RawString(prefix) - x.Netmap.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NetmapSnapshotResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NetmapSnapshotResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "netmap": - { - var f *Netmap - f = new(Netmap) - f.UnmarshalEasyJSON(in) - x.Netmap = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NetmapSnapshotResponse struct { - Body *NetmapSnapshotResponse_Body `json:"body"` - MetaHeader *grpc.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*NetmapSnapshotResponse)(nil) - _ encoding.ProtoUnmarshaler = (*NetmapSnapshotResponse)(nil) - _ json.Marshaler = (*NetmapSnapshotResponse)(nil) - _ json.Unmarshaler = (*NetmapSnapshotResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NetmapSnapshotResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *NetmapSnapshotResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *NetmapSnapshotResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NetmapSnapshotResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NetmapSnapshotResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NetmapSnapshotResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NetmapSnapshotResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(NetmapSnapshotResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *NetmapSnapshotResponse) GetBody() *NetmapSnapshotResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *NetmapSnapshotResponse) SetBody(v *NetmapSnapshotResponse_Body) { - x.Body = v -} -func (x *NetmapSnapshotResponse) GetMetaHeader() *grpc.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *NetmapSnapshotResponse) SetMetaHeader(v *grpc.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *NetmapSnapshotResponse) GetVerifyHeader() *grpc.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *NetmapSnapshotResponse) SetVerifyHeader(v *grpc.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NetmapSnapshotResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NetmapSnapshotResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NetmapSnapshotResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NetmapSnapshotResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *NetmapSnapshotResponse_Body - f = new(NetmapSnapshotResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc.ResponseMetaHeader - f = new(grpc.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc.ResponseVerificationHeader - f = new(grpc.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/netmap/grpc/service_frostfs_fuzz.go b/netmap/grpc/service_frostfs_fuzz.go deleted file mode 100644 index ebb59bc..0000000 --- a/netmap/grpc/service_frostfs_fuzz.go +++ /dev/null @@ -1,121 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package netmap - -func DoFuzzProtoLocalNodeInfoRequest(data []byte) int { - msg := new(LocalNodeInfoRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONLocalNodeInfoRequest(data []byte) int { - msg := new(LocalNodeInfoRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoLocalNodeInfoResponse(data []byte) int { - msg := new(LocalNodeInfoResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONLocalNodeInfoResponse(data []byte) int { - msg := new(LocalNodeInfoResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoNetworkInfoRequest(data []byte) int { - msg := new(NetworkInfoRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONNetworkInfoRequest(data []byte) int { - msg := new(NetworkInfoRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoNetworkInfoResponse(data []byte) int { - msg := new(NetworkInfoResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONNetworkInfoResponse(data []byte) int { - msg := new(NetworkInfoResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoNetmapSnapshotRequest(data []byte) int { - msg := new(NetmapSnapshotRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONNetmapSnapshotRequest(data []byte) int { - msg := new(NetmapSnapshotRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoNetmapSnapshotResponse(data []byte) int { - msg := new(NetmapSnapshotResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONNetmapSnapshotResponse(data []byte) int { - msg := new(NetmapSnapshotResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/netmap/grpc/service_frostfs_test.go b/netmap/grpc/service_frostfs_test.go deleted file mode 100644 index 5c9035f..0000000 --- a/netmap/grpc/service_frostfs_test.go +++ /dev/null @@ -1,71 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package netmap - -import ( - testing "testing" -) - -func FuzzProtoLocalNodeInfoRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoLocalNodeInfoRequest(data) - }) -} -func FuzzJSONLocalNodeInfoRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONLocalNodeInfoRequest(data) - }) -} -func FuzzProtoLocalNodeInfoResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoLocalNodeInfoResponse(data) - }) -} -func FuzzJSONLocalNodeInfoResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONLocalNodeInfoResponse(data) - }) -} -func FuzzProtoNetworkInfoRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoNetworkInfoRequest(data) - }) -} -func FuzzJSONNetworkInfoRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONNetworkInfoRequest(data) - }) -} -func FuzzProtoNetworkInfoResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoNetworkInfoResponse(data) - }) -} -func FuzzJSONNetworkInfoResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONNetworkInfoResponse(data) - }) -} -func FuzzProtoNetmapSnapshotRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoNetmapSnapshotRequest(data) - }) -} -func FuzzJSONNetmapSnapshotRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONNetmapSnapshotRequest(data) - }) -} -func FuzzProtoNetmapSnapshotResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoNetmapSnapshotResponse(data) - }) -} -func FuzzJSONNetmapSnapshotResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONNetmapSnapshotResponse(data) - }) -} diff --git a/netmap/grpc/service_grpc.pb.go b/netmap/grpc/service_grpc.pb.go deleted file mode 100644 index 9ad7fef..0000000 --- a/netmap/grpc/service_grpc.pb.go +++ /dev/null @@ -1,227 +0,0 @@ -// Code generated by protoc-gen-go-grpc. DO NOT EDIT. -// versions: -// - protoc-gen-go-grpc v1.3.0 -// - protoc v5.27.2 -// source: netmap/grpc/service.proto - -package netmap - -import ( - context "context" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" -) - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.32.0 or later. -const _ = grpc.SupportPackageIsVersion7 - -const ( - NetmapService_LocalNodeInfo_FullMethodName = "/neo.fs.v2.netmap.NetmapService/LocalNodeInfo" - NetmapService_NetworkInfo_FullMethodName = "/neo.fs.v2.netmap.NetmapService/NetworkInfo" - NetmapService_NetmapSnapshot_FullMethodName = "/neo.fs.v2.netmap.NetmapService/NetmapSnapshot" -) - -// NetmapServiceClient is the client API for NetmapService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type NetmapServiceClient interface { - // Get NodeInfo structure from the particular node directly. - // Node information can be taken from `Netmap` smart contract. In some cases, - // though, one may want to get recent information directly or to talk to the - // node not yet present in the `Network Map` to find out what API version can - // be used for further communication. This can be also used to check if a node - // is up and running. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): - // information about the server has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON). - LocalNodeInfo(ctx context.Context, in *LocalNodeInfoRequest, opts ...grpc.CallOption) (*LocalNodeInfoResponse, error) - // Read recent information about the FrostFS network. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): - // information about the current network state has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON). - NetworkInfo(ctx context.Context, in *NetworkInfoRequest, opts ...grpc.CallOption) (*NetworkInfoResponse, error) - // Returns network map snapshot of the current FrostFS epoch. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): - // information about the current network map has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON). - NetmapSnapshot(ctx context.Context, in *NetmapSnapshotRequest, opts ...grpc.CallOption) (*NetmapSnapshotResponse, error) -} - -type netmapServiceClient struct { - cc grpc.ClientConnInterface -} - -func NewNetmapServiceClient(cc grpc.ClientConnInterface) NetmapServiceClient { - return &netmapServiceClient{cc} -} - -func (c *netmapServiceClient) LocalNodeInfo(ctx context.Context, in *LocalNodeInfoRequest, opts ...grpc.CallOption) (*LocalNodeInfoResponse, error) { - out := new(LocalNodeInfoResponse) - err := c.cc.Invoke(ctx, NetmapService_LocalNodeInfo_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *netmapServiceClient) NetworkInfo(ctx context.Context, in *NetworkInfoRequest, opts ...grpc.CallOption) (*NetworkInfoResponse, error) { - out := new(NetworkInfoResponse) - err := c.cc.Invoke(ctx, NetmapService_NetworkInfo_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *netmapServiceClient) NetmapSnapshot(ctx context.Context, in *NetmapSnapshotRequest, opts ...grpc.CallOption) (*NetmapSnapshotResponse, error) { - out := new(NetmapSnapshotResponse) - err := c.cc.Invoke(ctx, NetmapService_NetmapSnapshot_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// NetmapServiceServer is the server API for NetmapService service. -// All implementations should embed UnimplementedNetmapServiceServer -// for forward compatibility -type NetmapServiceServer interface { - // Get NodeInfo structure from the particular node directly. - // Node information can be taken from `Netmap` smart contract. In some cases, - // though, one may want to get recent information directly or to talk to the - // node not yet present in the `Network Map` to find out what API version can - // be used for further communication. This can be also used to check if a node - // is up and running. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): - // information about the server has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON). - LocalNodeInfo(context.Context, *LocalNodeInfoRequest) (*LocalNodeInfoResponse, error) - // Read recent information about the FrostFS network. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): - // information about the current network state has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON). - NetworkInfo(context.Context, *NetworkInfoRequest) (*NetworkInfoResponse, error) - // Returns network map snapshot of the current FrostFS epoch. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): - // information about the current network map has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON). - NetmapSnapshot(context.Context, *NetmapSnapshotRequest) (*NetmapSnapshotResponse, error) -} - -// UnimplementedNetmapServiceServer should be embedded to have forward compatible implementations. -type UnimplementedNetmapServiceServer struct { -} - -func (UnimplementedNetmapServiceServer) LocalNodeInfo(context.Context, *LocalNodeInfoRequest) (*LocalNodeInfoResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method LocalNodeInfo not implemented") -} -func (UnimplementedNetmapServiceServer) NetworkInfo(context.Context, *NetworkInfoRequest) (*NetworkInfoResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method NetworkInfo not implemented") -} -func (UnimplementedNetmapServiceServer) NetmapSnapshot(context.Context, *NetmapSnapshotRequest) (*NetmapSnapshotResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method NetmapSnapshot not implemented") -} - -// UnsafeNetmapServiceServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to NetmapServiceServer will -// result in compilation errors. -type UnsafeNetmapServiceServer interface { - mustEmbedUnimplementedNetmapServiceServer() -} - -func RegisterNetmapServiceServer(s grpc.ServiceRegistrar, srv NetmapServiceServer) { - s.RegisterService(&NetmapService_ServiceDesc, srv) -} - -func _NetmapService_LocalNodeInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(LocalNodeInfoRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(NetmapServiceServer).LocalNodeInfo(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: NetmapService_LocalNodeInfo_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(NetmapServiceServer).LocalNodeInfo(ctx, req.(*LocalNodeInfoRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _NetmapService_NetworkInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(NetworkInfoRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(NetmapServiceServer).NetworkInfo(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: NetmapService_NetworkInfo_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(NetmapServiceServer).NetworkInfo(ctx, req.(*NetworkInfoRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _NetmapService_NetmapSnapshot_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(NetmapSnapshotRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(NetmapServiceServer).NetmapSnapshot(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: NetmapService_NetmapSnapshot_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(NetmapServiceServer).NetmapSnapshot(ctx, req.(*NetmapSnapshotRequest)) - } - return interceptor(ctx, in, info, handler) -} - -// NetmapService_ServiceDesc is the grpc.ServiceDesc for NetmapService service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var NetmapService_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "neo.fs.v2.netmap.NetmapService", - HandlerType: (*NetmapServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "LocalNodeInfo", - Handler: _NetmapService_LocalNodeInfo_Handler, - }, - { - MethodName: "NetworkInfo", - Handler: _NetmapService_NetworkInfo_Handler, - }, - { - MethodName: "NetmapSnapshot", - Handler: _NetmapService_NetmapSnapshot_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "netmap/grpc/service.proto", -} diff --git a/netmap/grpc/types_frostfs.pb.go b/netmap/grpc/types_frostfs.pb.go deleted file mode 100644 index 24003c6..0000000 --- a/netmap/grpc/types_frostfs.pb.go +++ /dev/null @@ -1,2749 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package netmap - -import ( - json "encoding/json" - fmt "fmt" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" - strconv "strconv" -) - -type Operation int32 - -const ( - Operation_OPERATION_UNSPECIFIED Operation = 0 - Operation_EQ Operation = 1 - Operation_NE Operation = 2 - Operation_GT Operation = 3 - Operation_GE Operation = 4 - Operation_LT Operation = 5 - Operation_LE Operation = 6 - Operation_OR Operation = 7 - Operation_AND Operation = 8 - Operation_NOT Operation = 9 - Operation_LIKE Operation = 10 -) - -var ( - Operation_name = map[int32]string{ - 0: "OPERATION_UNSPECIFIED", - 1: "EQ", - 2: "NE", - 3: "GT", - 4: "GE", - 5: "LT", - 6: "LE", - 7: "OR", - 8: "AND", - 9: "NOT", - 10: "LIKE", - } - Operation_value = map[string]int32{ - "OPERATION_UNSPECIFIED": 0, - "EQ": 1, - "NE": 2, - "GT": 3, - "GE": 4, - "LT": 5, - "LE": 6, - "OR": 7, - "AND": 8, - "NOT": 9, - "LIKE": 10, - } -) - -func (x Operation) String() string { - if v, ok := Operation_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *Operation) FromString(s string) bool { - if v, ok := Operation_value[s]; ok { - *x = Operation(v) - return true - } - return false -} - -type Clause int32 - -const ( - Clause_CLAUSE_UNSPECIFIED Clause = 0 - Clause_SAME Clause = 1 - Clause_DISTINCT Clause = 2 -) - -var ( - Clause_name = map[int32]string{ - 0: "CLAUSE_UNSPECIFIED", - 1: "SAME", - 2: "DISTINCT", - } - Clause_value = map[string]int32{ - "CLAUSE_UNSPECIFIED": 0, - "SAME": 1, - "DISTINCT": 2, - } -) - -func (x Clause) String() string { - if v, ok := Clause_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *Clause) FromString(s string) bool { - if v, ok := Clause_value[s]; ok { - *x = Clause(v) - return true - } - return false -} - -type Filter struct { - Name string `json:"name"` - Key string `json:"key"` - Op Operation `json:"op"` - Value string `json:"value"` - Filters []Filter `json:"filters"` -} - -var ( - _ encoding.ProtoMarshaler = (*Filter)(nil) - _ encoding.ProtoUnmarshaler = (*Filter)(nil) - _ json.Marshaler = (*Filter)(nil) - _ json.Unmarshaler = (*Filter)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Filter) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.StringSize(1, x.Name) - size += proto.StringSize(2, x.Key) - size += proto.EnumSize(3, int32(x.Op)) - size += proto.StringSize(4, x.Value) - for i := range x.Filters { - size += proto.NestedStructureSizeUnchecked(5, &x.Filters[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Filter) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Filter) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Name) != 0 { - mm.AppendString(1, x.Name) - } - if len(x.Key) != 0 { - mm.AppendString(2, x.Key) - } - if int32(x.Op) != 0 { - mm.AppendInt32(3, int32(x.Op)) - } - if len(x.Value) != 0 { - mm.AppendString(4, x.Value) - } - for i := range x.Filters { - x.Filters[i].EmitProtobuf(mm.AppendMessage(5)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Filter) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Filter") - } - switch fc.FieldNum { - case 1: // Name - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Name") - } - x.Name = data - case 2: // Key - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Key") - } - x.Key = data - case 3: // Op - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Op") - } - x.Op = Operation(data) - case 4: // Value - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - case 5: // Filters - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Filters") - } - x.Filters = append(x.Filters, Filter{}) - ff := &x.Filters[len(x.Filters)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *Filter) GetName() string { - if x != nil { - return x.Name - } - return "" -} -func (x *Filter) SetName(v string) { - x.Name = v -} -func (x *Filter) GetKey() string { - if x != nil { - return x.Key - } - return "" -} -func (x *Filter) SetKey(v string) { - x.Key = v -} -func (x *Filter) GetOp() Operation { - if x != nil { - return x.Op - } - return 0 -} -func (x *Filter) SetOp(v Operation) { - x.Op = v -} -func (x *Filter) GetValue() string { - if x != nil { - return x.Value - } - return "" -} -func (x *Filter) SetValue(v string) { - x.Value = v -} -func (x *Filter) GetFilters() []Filter { - if x != nil { - return x.Filters - } - return nil -} -func (x *Filter) SetFilters(v []Filter) { - x.Filters = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Filter) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Filter) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"name\":" - out.RawString(prefix) - out.String(x.Name) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"key\":" - out.RawString(prefix) - out.String(x.Key) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"op\":" - out.RawString(prefix) - v := int32(x.Op) - if vv, ok := Operation_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - out.String(x.Value) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"filters\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Filters { - if i != 0 { - out.RawByte(',') - } - x.Filters[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Filter) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Filter) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "name": - { - var f string - f = in.String() - x.Name = f - } - case "key": - { - var f string - f = in.String() - x.Key = f - } - case "op": - { - var f Operation - var parsedValue Operation - switch v := in.Interface().(type) { - case string: - if vv, ok := Operation_value[v]; ok { - parsedValue = Operation(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = Operation(vv) - case float64: - parsedValue = Operation(v) - } - f = parsedValue - x.Op = f - } - case "value": - { - var f string - f = in.String() - x.Value = f - } - case "filters": - { - var f Filter - var list []Filter - in.Delim('[') - for !in.IsDelim(']') { - f = Filter{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Filters = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Selector struct { - Name string `json:"name"` - Count uint32 `json:"count"` - Clause Clause `json:"clause"` - Attribute string `json:"attribute"` - Filter string `json:"filter"` -} - -var ( - _ encoding.ProtoMarshaler = (*Selector)(nil) - _ encoding.ProtoUnmarshaler = (*Selector)(nil) - _ json.Marshaler = (*Selector)(nil) - _ json.Unmarshaler = (*Selector)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Selector) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.StringSize(1, x.Name) - size += proto.UInt32Size(2, x.Count) - size += proto.EnumSize(3, int32(x.Clause)) - size += proto.StringSize(4, x.Attribute) - size += proto.StringSize(5, x.Filter) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Selector) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Selector) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Name) != 0 { - mm.AppendString(1, x.Name) - } - if x.Count != 0 { - mm.AppendUint32(2, x.Count) - } - if int32(x.Clause) != 0 { - mm.AppendInt32(3, int32(x.Clause)) - } - if len(x.Attribute) != 0 { - mm.AppendString(4, x.Attribute) - } - if len(x.Filter) != 0 { - mm.AppendString(5, x.Filter) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Selector) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Selector") - } - switch fc.FieldNum { - case 1: // Name - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Name") - } - x.Name = data - case 2: // Count - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Count") - } - x.Count = data - case 3: // Clause - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Clause") - } - x.Clause = Clause(data) - case 4: // Attribute - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Attribute") - } - x.Attribute = data - case 5: // Filter - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Filter") - } - x.Filter = data - } - } - return nil -} -func (x *Selector) GetName() string { - if x != nil { - return x.Name - } - return "" -} -func (x *Selector) SetName(v string) { - x.Name = v -} -func (x *Selector) GetCount() uint32 { - if x != nil { - return x.Count - } - return 0 -} -func (x *Selector) SetCount(v uint32) { - x.Count = v -} -func (x *Selector) GetClause() Clause { - if x != nil { - return x.Clause - } - return 0 -} -func (x *Selector) SetClause(v Clause) { - x.Clause = v -} -func (x *Selector) GetAttribute() string { - if x != nil { - return x.Attribute - } - return "" -} -func (x *Selector) SetAttribute(v string) { - x.Attribute = v -} -func (x *Selector) GetFilter() string { - if x != nil { - return x.Filter - } - return "" -} -func (x *Selector) SetFilter(v string) { - x.Filter = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Selector) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Selector) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"name\":" - out.RawString(prefix) - out.String(x.Name) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"count\":" - out.RawString(prefix) - out.Uint32(x.Count) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"clause\":" - out.RawString(prefix) - v := int32(x.Clause) - if vv, ok := Clause_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"attribute\":" - out.RawString(prefix) - out.String(x.Attribute) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"filter\":" - out.RawString(prefix) - out.String(x.Filter) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Selector) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Selector) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "name": - { - var f string - f = in.String() - x.Name = f - } - case "count": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Count = f - } - case "clause": - { - var f Clause - var parsedValue Clause - switch v := in.Interface().(type) { - case string: - if vv, ok := Clause_value[v]; ok { - parsedValue = Clause(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = Clause(vv) - case float64: - parsedValue = Clause(v) - } - f = parsedValue - x.Clause = f - } - case "attribute": - { - var f string - f = in.String() - x.Attribute = f - } - case "filter": - { - var f string - f = in.String() - x.Filter = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Replica struct { - Count uint32 `json:"count"` - Selector string `json:"selector"` - EcDataCount uint32 `json:"ecDataCount"` - EcParityCount uint32 `json:"ecParityCount"` -} - -var ( - _ encoding.ProtoMarshaler = (*Replica)(nil) - _ encoding.ProtoUnmarshaler = (*Replica)(nil) - _ json.Marshaler = (*Replica)(nil) - _ json.Unmarshaler = (*Replica)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Replica) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.UInt32Size(1, x.Count) - size += proto.StringSize(2, x.Selector) - size += proto.UInt32Size(3, x.EcDataCount) - size += proto.UInt32Size(4, x.EcParityCount) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Replica) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Replica) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Count != 0 { - mm.AppendUint32(1, x.Count) - } - if len(x.Selector) != 0 { - mm.AppendString(2, x.Selector) - } - if x.EcDataCount != 0 { - mm.AppendUint32(3, x.EcDataCount) - } - if x.EcParityCount != 0 { - mm.AppendUint32(4, x.EcParityCount) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Replica) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Replica") - } - switch fc.FieldNum { - case 1: // Count - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Count") - } - x.Count = data - case 2: // Selector - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Selector") - } - x.Selector = data - case 3: // EcDataCount - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "EcDataCount") - } - x.EcDataCount = data - case 4: // EcParityCount - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "EcParityCount") - } - x.EcParityCount = data - } - } - return nil -} -func (x *Replica) GetCount() uint32 { - if x != nil { - return x.Count - } - return 0 -} -func (x *Replica) SetCount(v uint32) { - x.Count = v -} -func (x *Replica) GetSelector() string { - if x != nil { - return x.Selector - } - return "" -} -func (x *Replica) SetSelector(v string) { - x.Selector = v -} -func (x *Replica) GetEcDataCount() uint32 { - if x != nil { - return x.EcDataCount - } - return 0 -} -func (x *Replica) SetEcDataCount(v uint32) { - x.EcDataCount = v -} -func (x *Replica) GetEcParityCount() uint32 { - if x != nil { - return x.EcParityCount - } - return 0 -} -func (x *Replica) SetEcParityCount(v uint32) { - x.EcParityCount = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Replica) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Replica) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"count\":" - out.RawString(prefix) - out.Uint32(x.Count) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"selector\":" - out.RawString(prefix) - out.String(x.Selector) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ecDataCount\":" - out.RawString(prefix) - out.Uint32(x.EcDataCount) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ecParityCount\":" - out.RawString(prefix) - out.Uint32(x.EcParityCount) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Replica) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Replica) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "count": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Count = f - } - case "selector": - { - var f string - f = in.String() - x.Selector = f - } - case "ecDataCount": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.EcDataCount = f - } - case "ecParityCount": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.EcParityCount = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PlacementPolicy struct { - Replicas []Replica `json:"replicas"` - ContainerBackupFactor uint32 `json:"containerBackupFactor"` - Selectors []Selector `json:"selectors"` - Filters []Filter `json:"filters"` - Unique bool `json:"unique"` -} - -var ( - _ encoding.ProtoMarshaler = (*PlacementPolicy)(nil) - _ encoding.ProtoUnmarshaler = (*PlacementPolicy)(nil) - _ json.Marshaler = (*PlacementPolicy)(nil) - _ json.Unmarshaler = (*PlacementPolicy)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PlacementPolicy) StableSize() (size int) { - if x == nil { - return 0 - } - for i := range x.Replicas { - size += proto.NestedStructureSizeUnchecked(1, &x.Replicas[i]) - } - size += proto.UInt32Size(2, x.ContainerBackupFactor) - for i := range x.Selectors { - size += proto.NestedStructureSizeUnchecked(3, &x.Selectors[i]) - } - for i := range x.Filters { - size += proto.NestedStructureSizeUnchecked(4, &x.Filters[i]) - } - size += proto.BoolSize(5, x.Unique) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PlacementPolicy) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PlacementPolicy) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - for i := range x.Replicas { - x.Replicas[i].EmitProtobuf(mm.AppendMessage(1)) - } - if x.ContainerBackupFactor != 0 { - mm.AppendUint32(2, x.ContainerBackupFactor) - } - for i := range x.Selectors { - x.Selectors[i].EmitProtobuf(mm.AppendMessage(3)) - } - for i := range x.Filters { - x.Filters[i].EmitProtobuf(mm.AppendMessage(4)) - } - if x.Unique { - mm.AppendBool(5, x.Unique) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PlacementPolicy) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PlacementPolicy") - } - switch fc.FieldNum { - case 1: // Replicas - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Replicas") - } - x.Replicas = append(x.Replicas, Replica{}) - ff := &x.Replicas[len(x.Replicas)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // ContainerBackupFactor - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ContainerBackupFactor") - } - x.ContainerBackupFactor = data - case 3: // Selectors - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Selectors") - } - x.Selectors = append(x.Selectors, Selector{}) - ff := &x.Selectors[len(x.Selectors)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 4: // Filters - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Filters") - } - x.Filters = append(x.Filters, Filter{}) - ff := &x.Filters[len(x.Filters)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 5: // Unique - data, ok := fc.Bool() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Unique") - } - x.Unique = data - } - } - return nil -} -func (x *PlacementPolicy) GetReplicas() []Replica { - if x != nil { - return x.Replicas - } - return nil -} -func (x *PlacementPolicy) SetReplicas(v []Replica) { - x.Replicas = v -} -func (x *PlacementPolicy) GetContainerBackupFactor() uint32 { - if x != nil { - return x.ContainerBackupFactor - } - return 0 -} -func (x *PlacementPolicy) SetContainerBackupFactor(v uint32) { - x.ContainerBackupFactor = v -} -func (x *PlacementPolicy) GetSelectors() []Selector { - if x != nil { - return x.Selectors - } - return nil -} -func (x *PlacementPolicy) SetSelectors(v []Selector) { - x.Selectors = v -} -func (x *PlacementPolicy) GetFilters() []Filter { - if x != nil { - return x.Filters - } - return nil -} -func (x *PlacementPolicy) SetFilters(v []Filter) { - x.Filters = v -} -func (x *PlacementPolicy) GetUnique() bool { - if x != nil { - return x.Unique - } - return false -} -func (x *PlacementPolicy) SetUnique(v bool) { - x.Unique = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PlacementPolicy) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PlacementPolicy) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"replicas\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Replicas { - if i != 0 { - out.RawByte(',') - } - x.Replicas[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"containerBackupFactor\":" - out.RawString(prefix) - out.Uint32(x.ContainerBackupFactor) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"selectors\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Selectors { - if i != 0 { - out.RawByte(',') - } - x.Selectors[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"filters\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Filters { - if i != 0 { - out.RawByte(',') - } - x.Filters[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"unique\":" - out.RawString(prefix) - out.Bool(x.Unique) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PlacementPolicy) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PlacementPolicy) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "replicas": - { - var f Replica - var list []Replica - in.Delim('[') - for !in.IsDelim(']') { - f = Replica{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Replicas = list - in.Delim(']') - } - case "containerBackupFactor": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.ContainerBackupFactor = f - } - case "selectors": - { - var f Selector - var list []Selector - in.Delim('[') - for !in.IsDelim(']') { - f = Selector{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Selectors = list - in.Delim(']') - } - case "filters": - { - var f Filter - var list []Filter - in.Delim('[') - for !in.IsDelim(']') { - f = Filter{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Filters = list - in.Delim(']') - } - case "unique": - { - var f bool - f = in.Bool() - x.Unique = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NodeInfo_State int32 - -const ( - NodeInfo_UNSPECIFIED NodeInfo_State = 0 - NodeInfo_ONLINE NodeInfo_State = 1 - NodeInfo_OFFLINE NodeInfo_State = 2 - NodeInfo_MAINTENANCE NodeInfo_State = 3 -) - -var ( - NodeInfo_State_name = map[int32]string{ - 0: "UNSPECIFIED", - 1: "ONLINE", - 2: "OFFLINE", - 3: "MAINTENANCE", - } - NodeInfo_State_value = map[string]int32{ - "UNSPECIFIED": 0, - "ONLINE": 1, - "OFFLINE": 2, - "MAINTENANCE": 3, - } -) - -func (x NodeInfo_State) String() string { - if v, ok := NodeInfo_State_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *NodeInfo_State) FromString(s string) bool { - if v, ok := NodeInfo_State_value[s]; ok { - *x = NodeInfo_State(v) - return true - } - return false -} - -type NodeInfo_Attribute struct { - Key string `json:"key"` - Value string `json:"value"` - Parents []string `json:"parents"` -} - -var ( - _ encoding.ProtoMarshaler = (*NodeInfo_Attribute)(nil) - _ encoding.ProtoUnmarshaler = (*NodeInfo_Attribute)(nil) - _ json.Marshaler = (*NodeInfo_Attribute)(nil) - _ json.Unmarshaler = (*NodeInfo_Attribute)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NodeInfo_Attribute) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.StringSize(1, x.Key) - size += proto.StringSize(2, x.Value) - size += proto.RepeatedStringSize(3, x.Parents) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NodeInfo_Attribute) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NodeInfo_Attribute) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Key) != 0 { - mm.AppendString(1, x.Key) - } - if len(x.Value) != 0 { - mm.AppendString(2, x.Value) - } - for j := range x.Parents { - mm.AppendString(3, x.Parents[j]) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NodeInfo_Attribute) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NodeInfo_Attribute") - } - switch fc.FieldNum { - case 1: // Key - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Key") - } - x.Key = data - case 2: // Value - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - case 3: // Parents - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Parents") - } - x.Parents = append(x.Parents, data) - } - } - return nil -} -func (x *NodeInfo_Attribute) GetKey() string { - if x != nil { - return x.Key - } - return "" -} -func (x *NodeInfo_Attribute) SetKey(v string) { - x.Key = v -} -func (x *NodeInfo_Attribute) GetValue() string { - if x != nil { - return x.Value - } - return "" -} -func (x *NodeInfo_Attribute) SetValue(v string) { - x.Value = v -} -func (x *NodeInfo_Attribute) GetParents() []string { - if x != nil { - return x.Parents - } - return nil -} -func (x *NodeInfo_Attribute) SetParents(v []string) { - x.Parents = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NodeInfo_Attribute) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NodeInfo_Attribute) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"key\":" - out.RawString(prefix) - out.String(x.Key) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - out.String(x.Value) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"parents\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Parents { - if i != 0 { - out.RawByte(',') - } - out.String(x.Parents[i]) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NodeInfo_Attribute) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NodeInfo_Attribute) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "key": - { - var f string - f = in.String() - x.Key = f - } - case "value": - { - var f string - f = in.String() - x.Value = f - } - case "parents": - { - var f string - var list []string - in.Delim('[') - for !in.IsDelim(']') { - f = in.String() - list = append(list, f) - in.WantComma() - } - x.Parents = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NodeInfo struct { - PublicKey []byte `json:"publicKey"` - Addresses []string `json:"addresses"` - Attributes []NodeInfo_Attribute `json:"attributes"` - State NodeInfo_State `json:"state"` -} - -var ( - _ encoding.ProtoMarshaler = (*NodeInfo)(nil) - _ encoding.ProtoUnmarshaler = (*NodeInfo)(nil) - _ json.Marshaler = (*NodeInfo)(nil) - _ json.Unmarshaler = (*NodeInfo)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NodeInfo) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.BytesSize(1, x.PublicKey) - size += proto.RepeatedStringSize(2, x.Addresses) - for i := range x.Attributes { - size += proto.NestedStructureSizeUnchecked(3, &x.Attributes[i]) - } - size += proto.EnumSize(4, int32(x.State)) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NodeInfo) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NodeInfo) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.PublicKey) != 0 { - mm.AppendBytes(1, x.PublicKey) - } - for j := range x.Addresses { - mm.AppendString(2, x.Addresses[j]) - } - for i := range x.Attributes { - x.Attributes[i].EmitProtobuf(mm.AppendMessage(3)) - } - if int32(x.State) != 0 { - mm.AppendInt32(4, int32(x.State)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NodeInfo) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NodeInfo") - } - switch fc.FieldNum { - case 1: // PublicKey - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "PublicKey") - } - x.PublicKey = data - case 2: // Addresses - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Addresses") - } - x.Addresses = append(x.Addresses, data) - case 3: // Attributes - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Attributes") - } - x.Attributes = append(x.Attributes, NodeInfo_Attribute{}) - ff := &x.Attributes[len(x.Attributes)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 4: // State - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "State") - } - x.State = NodeInfo_State(data) - } - } - return nil -} -func (x *NodeInfo) GetPublicKey() []byte { - if x != nil { - return x.PublicKey - } - return nil -} -func (x *NodeInfo) SetPublicKey(v []byte) { - x.PublicKey = v -} -func (x *NodeInfo) GetAddresses() []string { - if x != nil { - return x.Addresses - } - return nil -} -func (x *NodeInfo) SetAddresses(v []string) { - x.Addresses = v -} -func (x *NodeInfo) GetAttributes() []NodeInfo_Attribute { - if x != nil { - return x.Attributes - } - return nil -} -func (x *NodeInfo) SetAttributes(v []NodeInfo_Attribute) { - x.Attributes = v -} -func (x *NodeInfo) GetState() NodeInfo_State { - if x != nil { - return x.State - } - return 0 -} -func (x *NodeInfo) SetState(v NodeInfo_State) { - x.State = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NodeInfo) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NodeInfo) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"publicKey\":" - out.RawString(prefix) - if x.PublicKey != nil { - out.Base64Bytes(x.PublicKey) - } else { - out.String("") - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"addresses\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Addresses { - if i != 0 { - out.RawByte(',') - } - out.String(x.Addresses[i]) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"attributes\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Attributes { - if i != 0 { - out.RawByte(',') - } - x.Attributes[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"state\":" - out.RawString(prefix) - v := int32(x.State) - if vv, ok := NodeInfo_State_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NodeInfo) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NodeInfo) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "publicKey": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.PublicKey = f - } - case "addresses": - { - var f string - var list []string - in.Delim('[') - for !in.IsDelim(']') { - f = in.String() - list = append(list, f) - in.WantComma() - } - x.Addresses = list - in.Delim(']') - } - case "attributes": - { - var f NodeInfo_Attribute - var list []NodeInfo_Attribute - in.Delim('[') - for !in.IsDelim(']') { - f = NodeInfo_Attribute{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Attributes = list - in.Delim(']') - } - case "state": - { - var f NodeInfo_State - var parsedValue NodeInfo_State - switch v := in.Interface().(type) { - case string: - if vv, ok := NodeInfo_State_value[v]; ok { - parsedValue = NodeInfo_State(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = NodeInfo_State(vv) - case float64: - parsedValue = NodeInfo_State(v) - } - f = parsedValue - x.State = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Netmap struct { - Epoch uint64 `json:"epoch"` - Nodes []NodeInfo `json:"nodes"` -} - -var ( - _ encoding.ProtoMarshaler = (*Netmap)(nil) - _ encoding.ProtoUnmarshaler = (*Netmap)(nil) - _ json.Marshaler = (*Netmap)(nil) - _ json.Unmarshaler = (*Netmap)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Netmap) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.UInt64Size(1, x.Epoch) - for i := range x.Nodes { - size += proto.NestedStructureSizeUnchecked(2, &x.Nodes[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Netmap) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Netmap) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Epoch != 0 { - mm.AppendUint64(1, x.Epoch) - } - for i := range x.Nodes { - x.Nodes[i].EmitProtobuf(mm.AppendMessage(2)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Netmap) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Netmap") - } - switch fc.FieldNum { - case 1: // Epoch - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Epoch") - } - x.Epoch = data - case 2: // Nodes - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Nodes") - } - x.Nodes = append(x.Nodes, NodeInfo{}) - ff := &x.Nodes[len(x.Nodes)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *Netmap) GetEpoch() uint64 { - if x != nil { - return x.Epoch - } - return 0 -} -func (x *Netmap) SetEpoch(v uint64) { - x.Epoch = v -} -func (x *Netmap) GetNodes() []NodeInfo { - if x != nil { - return x.Nodes - } - return nil -} -func (x *Netmap) SetNodes(v []NodeInfo) { - x.Nodes = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Netmap) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Netmap) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"epoch\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.Epoch, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"nodes\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Nodes { - if i != 0 { - out.RawByte(',') - } - x.Nodes[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Netmap) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Netmap) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "epoch": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.Epoch = f - } - case "nodes": - { - var f NodeInfo - var list []NodeInfo - in.Delim('[') - for !in.IsDelim(']') { - f = NodeInfo{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Nodes = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NetworkConfig_Parameter struct { - Key []byte `json:"key"` - Value []byte `json:"value"` -} - -var ( - _ encoding.ProtoMarshaler = (*NetworkConfig_Parameter)(nil) - _ encoding.ProtoUnmarshaler = (*NetworkConfig_Parameter)(nil) - _ json.Marshaler = (*NetworkConfig_Parameter)(nil) - _ json.Unmarshaler = (*NetworkConfig_Parameter)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NetworkConfig_Parameter) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.BytesSize(1, x.Key) - size += proto.BytesSize(2, x.Value) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NetworkConfig_Parameter) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NetworkConfig_Parameter) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Key) != 0 { - mm.AppendBytes(1, x.Key) - } - if len(x.Value) != 0 { - mm.AppendBytes(2, x.Value) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NetworkConfig_Parameter) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NetworkConfig_Parameter") - } - switch fc.FieldNum { - case 1: // Key - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Key") - } - x.Key = data - case 2: // Value - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - } - } - return nil -} -func (x *NetworkConfig_Parameter) GetKey() []byte { - if x != nil { - return x.Key - } - return nil -} -func (x *NetworkConfig_Parameter) SetKey(v []byte) { - x.Key = v -} -func (x *NetworkConfig_Parameter) GetValue() []byte { - if x != nil { - return x.Value - } - return nil -} -func (x *NetworkConfig_Parameter) SetValue(v []byte) { - x.Value = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NetworkConfig_Parameter) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NetworkConfig_Parameter) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"key\":" - out.RawString(prefix) - if x.Key != nil { - out.Base64Bytes(x.Key) - } else { - out.String("") - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - if x.Value != nil { - out.Base64Bytes(x.Value) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NetworkConfig_Parameter) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NetworkConfig_Parameter) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "key": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Key = f - } - case "value": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Value = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NetworkConfig struct { - Parameters []NetworkConfig_Parameter `json:"parameters"` -} - -var ( - _ encoding.ProtoMarshaler = (*NetworkConfig)(nil) - _ encoding.ProtoUnmarshaler = (*NetworkConfig)(nil) - _ json.Marshaler = (*NetworkConfig)(nil) - _ json.Unmarshaler = (*NetworkConfig)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NetworkConfig) StableSize() (size int) { - if x == nil { - return 0 - } - for i := range x.Parameters { - size += proto.NestedStructureSizeUnchecked(1, &x.Parameters[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NetworkConfig) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NetworkConfig) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - for i := range x.Parameters { - x.Parameters[i].EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NetworkConfig) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NetworkConfig") - } - switch fc.FieldNum { - case 1: // Parameters - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Parameters") - } - x.Parameters = append(x.Parameters, NetworkConfig_Parameter{}) - ff := &x.Parameters[len(x.Parameters)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *NetworkConfig) GetParameters() []NetworkConfig_Parameter { - if x != nil { - return x.Parameters - } - return nil -} -func (x *NetworkConfig) SetParameters(v []NetworkConfig_Parameter) { - x.Parameters = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NetworkConfig) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NetworkConfig) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"parameters\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Parameters { - if i != 0 { - out.RawByte(',') - } - x.Parameters[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NetworkConfig) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NetworkConfig) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "parameters": - { - var f NetworkConfig_Parameter - var list []NetworkConfig_Parameter - in.Delim('[') - for !in.IsDelim(']') { - f = NetworkConfig_Parameter{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Parameters = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type NetworkInfo struct { - CurrentEpoch uint64 `json:"currentEpoch"` - MagicNumber uint64 `json:"magicNumber"` - MsPerBlock int64 `json:"msPerBlock"` - NetworkConfig *NetworkConfig `json:"networkConfig"` -} - -var ( - _ encoding.ProtoMarshaler = (*NetworkInfo)(nil) - _ encoding.ProtoUnmarshaler = (*NetworkInfo)(nil) - _ json.Marshaler = (*NetworkInfo)(nil) - _ json.Unmarshaler = (*NetworkInfo)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *NetworkInfo) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.UInt64Size(1, x.CurrentEpoch) - size += proto.UInt64Size(2, x.MagicNumber) - size += proto.Int64Size(3, x.MsPerBlock) - size += proto.NestedStructureSize(4, x.NetworkConfig) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *NetworkInfo) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *NetworkInfo) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.CurrentEpoch != 0 { - mm.AppendUint64(1, x.CurrentEpoch) - } - if x.MagicNumber != 0 { - mm.AppendUint64(2, x.MagicNumber) - } - if x.MsPerBlock != 0 { - mm.AppendInt64(3, x.MsPerBlock) - } - if x.NetworkConfig != nil { - x.NetworkConfig.EmitProtobuf(mm.AppendMessage(4)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *NetworkInfo) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "NetworkInfo") - } - switch fc.FieldNum { - case 1: // CurrentEpoch - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "CurrentEpoch") - } - x.CurrentEpoch = data - case 2: // MagicNumber - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MagicNumber") - } - x.MagicNumber = data - case 3: // MsPerBlock - data, ok := fc.Int64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MsPerBlock") - } - x.MsPerBlock = data - case 4: // NetworkConfig - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "NetworkConfig") - } - x.NetworkConfig = new(NetworkConfig) - if err := x.NetworkConfig.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *NetworkInfo) GetCurrentEpoch() uint64 { - if x != nil { - return x.CurrentEpoch - } - return 0 -} -func (x *NetworkInfo) SetCurrentEpoch(v uint64) { - x.CurrentEpoch = v -} -func (x *NetworkInfo) GetMagicNumber() uint64 { - if x != nil { - return x.MagicNumber - } - return 0 -} -func (x *NetworkInfo) SetMagicNumber(v uint64) { - x.MagicNumber = v -} -func (x *NetworkInfo) GetMsPerBlock() int64 { - if x != nil { - return x.MsPerBlock - } - return 0 -} -func (x *NetworkInfo) SetMsPerBlock(v int64) { - x.MsPerBlock = v -} -func (x *NetworkInfo) GetNetworkConfig() *NetworkConfig { - if x != nil { - return x.NetworkConfig - } - return nil -} -func (x *NetworkInfo) SetNetworkConfig(v *NetworkConfig) { - x.NetworkConfig = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *NetworkInfo) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *NetworkInfo) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"currentEpoch\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.CurrentEpoch, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"magicNumber\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.MagicNumber, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"msPerBlock\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendInt(out.Buffer.Buf, x.MsPerBlock, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"networkConfig\":" - out.RawString(prefix) - x.NetworkConfig.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *NetworkInfo) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *NetworkInfo) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "currentEpoch": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.CurrentEpoch = f - } - case "magicNumber": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.MagicNumber = f - } - case "msPerBlock": - { - var f int64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseInt(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := int64(v) - f = pv - x.MsPerBlock = f - } - case "networkConfig": - { - var f *NetworkConfig - f = new(NetworkConfig) - f.UnmarshalEasyJSON(in) - x.NetworkConfig = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/netmap/grpc/types_frostfs_fuzz.go b/netmap/grpc/types_frostfs_fuzz.go deleted file mode 100644 index 89ccd74..0000000 --- a/netmap/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,159 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package netmap - -func DoFuzzProtoFilter(data []byte) int { - msg := new(Filter) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONFilter(data []byte) int { - msg := new(Filter) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoSelector(data []byte) int { - msg := new(Selector) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONSelector(data []byte) int { - msg := new(Selector) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoReplica(data []byte) int { - msg := new(Replica) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONReplica(data []byte) int { - msg := new(Replica) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoPlacementPolicy(data []byte) int { - msg := new(PlacementPolicy) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONPlacementPolicy(data []byte) int { - msg := new(PlacementPolicy) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoNodeInfo(data []byte) int { - msg := new(NodeInfo) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONNodeInfo(data []byte) int { - msg := new(NodeInfo) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoNetmap(data []byte) int { - msg := new(Netmap) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONNetmap(data []byte) int { - msg := new(Netmap) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoNetworkConfig(data []byte) int { - msg := new(NetworkConfig) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONNetworkConfig(data []byte) int { - msg := new(NetworkConfig) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoNetworkInfo(data []byte) int { - msg := new(NetworkInfo) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONNetworkInfo(data []byte) int { - msg := new(NetworkInfo) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/netmap/grpc/types_frostfs_test.go b/netmap/grpc/types_frostfs_test.go deleted file mode 100644 index 9996dc9..0000000 --- a/netmap/grpc/types_frostfs_test.go +++ /dev/null @@ -1,91 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package netmap - -import ( - testing "testing" -) - -func FuzzProtoFilter(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoFilter(data) - }) -} -func FuzzJSONFilter(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONFilter(data) - }) -} -func FuzzProtoSelector(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoSelector(data) - }) -} -func FuzzJSONSelector(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONSelector(data) - }) -} -func FuzzProtoReplica(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoReplica(data) - }) -} -func FuzzJSONReplica(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONReplica(data) - }) -} -func FuzzProtoPlacementPolicy(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoPlacementPolicy(data) - }) -} -func FuzzJSONPlacementPolicy(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONPlacementPolicy(data) - }) -} -func FuzzProtoNodeInfo(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoNodeInfo(data) - }) -} -func FuzzJSONNodeInfo(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONNodeInfo(data) - }) -} -func FuzzProtoNetmap(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoNetmap(data) - }) -} -func FuzzJSONNetmap(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONNetmap(data) - }) -} -func FuzzProtoNetworkConfig(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoNetworkConfig(data) - }) -} -func FuzzJSONNetworkConfig(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONNetworkConfig(data) - }) -} -func FuzzProtoNetworkInfo(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoNetworkInfo(data) - }) -} -func FuzzJSONNetworkInfo(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONNetworkInfo(data) - }) -} diff --git a/netmap/json.go b/netmap/json.go deleted file mode 100644 index 6eacb96..0000000 --- a/netmap/json.go +++ /dev/null @@ -1,62 +0,0 @@ -package netmap - -import ( - netmap "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -func (p *PlacementPolicy) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(p) -} - -func (p *PlacementPolicy) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(p, data, new(netmap.PlacementPolicy)) -} - -func (f *Filter) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(f) -} - -func (f *Filter) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(f, data, new(netmap.Filter)) -} - -func (s *Selector) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(s) -} - -func (s *Selector) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(s, data, new(netmap.Selector)) -} - -func (r *Replica) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(r) -} - -func (r *Replica) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(r, data, new(netmap.Replica)) -} - -func (a *Attribute) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(a) -} - -func (a *Attribute) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(a, data, new(netmap.NodeInfo_Attribute)) -} - -func (ni *NodeInfo) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(ni) -} - -func (ni *NodeInfo) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(ni, data, new(netmap.NodeInfo)) -} - -func (i *NetworkInfo) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(i) -} - -func (i *NetworkInfo) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(i, data, new(netmap.NetworkInfo)) -} diff --git a/netmap/marshal.go b/netmap/marshal.go deleted file mode 100644 index 95430da..0000000 --- a/netmap/marshal.go +++ /dev/null @@ -1,576 +0,0 @@ -package netmap - -import ( - netmap "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - protoutil "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" -) - -const ( - nameFilterField = 1 - keyFilterField = 2 - opFilterField = 3 - valueFilterField = 4 - filtersFilterField = 5 - - nameSelectorField = 1 - countSelectorField = 2 - clauseSelectorField = 3 - attributeSelectorField = 4 - filterSelectorField = 5 - - countReplicaField = 1 - selectorReplicaField = 2 - ecDataCountReplicaField = 3 - ecParityCountReplicaField = 4 - - replicasPolicyField = 1 - backupPolicyField = 2 - selectorsPolicyField = 3 - filtersPolicyField = 4 - uniquePolicyField = 5 - - keyAttributeField = 1 - valueAttributeField = 2 - parentsAttributeField = 3 - - keyNodeInfoField = 1 - addressNodeInfoField = 2 - attributesNodeInfoField = 3 - stateNodeInfoField = 4 - - versionInfoResponseBodyField = 1 - nodeInfoResponseBodyField = 2 -) - -func (f *Filter) StableMarshal(buf []byte) []byte { - if f == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, f.StableSize()) - } - - var offset int - - offset += protoutil.StringMarshal(nameFilterField, buf[offset:], f.name) - offset += protoutil.StringMarshal(keyFilterField, buf[offset:], f.key) - offset += protoutil.EnumMarshal(opFilterField, buf[offset:], int32(f.op)) - offset += protoutil.StringMarshal(valueFilterField, buf[offset:], f.value) - - for i := range f.filters { - offset += protoutil.NestedStructureMarshal(filtersFilterField, buf[offset:], &f.filters[i]) - } - - return buf -} - -func (f *Filter) StableSize() (size int) { - if f == nil { - return 0 - } - - size += protoutil.StringSize(nameFilterField, f.name) - size += protoutil.StringSize(keyFilterField, f.key) - size += protoutil.EnumSize(opFilterField, int32(f.op)) - size += protoutil.StringSize(valueFilterField, f.value) - for i := range f.filters { - size += protoutil.NestedStructureSize(filtersFilterField, &f.filters[i]) - } - - return size -} - -func (f *Filter) Unmarshal(data []byte) error { - return message.Unmarshal(f, data, new(netmap.Filter)) -} - -func (s *Selector) StableMarshal(buf []byte) []byte { - if s == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, s.StableSize()) - } - - var offset int - - offset += protoutil.StringMarshal(nameSelectorField, buf[offset:], s.name) - offset += protoutil.UInt32Marshal(countSelectorField, buf[offset:], s.count) - offset += protoutil.EnumMarshal(clauseSelectorField, buf[offset:], int32(s.clause)) - offset += protoutil.StringMarshal(attributeSelectorField, buf[offset:], s.attribute) - protoutil.StringMarshal(filterSelectorField, buf[offset:], s.filter) - - return buf -} - -func (s *Selector) StableSize() (size int) { - if s == nil { - return 0 - } - - size += protoutil.StringSize(nameSelectorField, s.name) - size += protoutil.UInt32Size(countSelectorField, s.count) - size += protoutil.EnumSize(countSelectorField, int32(s.clause)) - size += protoutil.StringSize(attributeSelectorField, s.attribute) - size += protoutil.StringSize(filterSelectorField, s.filter) - - return size -} - -func (s *Selector) Unmarshal(data []byte) error { - return message.Unmarshal(s, data, new(netmap.Selector)) -} - -func (r *Replica) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += protoutil.UInt32Marshal(countReplicaField, buf[offset:], r.count) - offset += protoutil.StringMarshal(selectorReplicaField, buf[offset:], r.selector) - offset += protoutil.UInt32Marshal(ecDataCountReplicaField, buf[offset:], r.ecDataCount) - protoutil.UInt32Marshal(ecParityCountReplicaField, buf[offset:], r.ecParityCount) - - return buf -} - -func (r *Replica) StableSize() (size int) { - if r == nil { - return 0 - } - - size += protoutil.UInt32Size(countReplicaField, r.count) - size += protoutil.StringSize(selectorReplicaField, r.selector) - size += protoutil.UInt32Size(ecDataCountReplicaField, r.ecDataCount) - size += protoutil.UInt32Size(ecParityCountReplicaField, r.ecParityCount) - - return size -} - -func (r *Replica) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(netmap.Replica)) -} - -func (p *PlacementPolicy) StableMarshal(buf []byte) []byte { - if p == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, p.StableSize()) - } - - var offset int - - for i := range p.replicas { - offset += protoutil.NestedStructureMarshal(replicasPolicyField, buf[offset:], &p.replicas[i]) - } - - offset += protoutil.UInt32Marshal(backupPolicyField, buf[offset:], p.backupFactor) - - for i := range p.selectors { - offset += protoutil.NestedStructureMarshal(selectorsPolicyField, buf[offset:], &p.selectors[i]) - } - - for i := range p.filters { - offset += protoutil.NestedStructureMarshal(filtersPolicyField, buf[offset:], &p.filters[i]) - } - - protoutil.BoolMarshal(uniquePolicyField, buf[offset:], p.unique) - - return buf -} - -func (p *PlacementPolicy) StableSize() (size int) { - if p == nil { - return 0 - } - - for i := range p.replicas { - size += protoutil.NestedStructureSize(replicasPolicyField, &p.replicas[i]) - } - - size += protoutil.UInt32Size(backupPolicyField, p.backupFactor) - - for i := range p.selectors { - size += protoutil.NestedStructureSize(selectorsPolicyField, &p.selectors[i]) - } - - for i := range p.filters { - size += protoutil.NestedStructureSize(filtersPolicyField, &p.filters[i]) - } - - size += protoutil.BoolSize(uniquePolicyField, p.unique) - - return size -} - -func (p *PlacementPolicy) Unmarshal(data []byte) error { - return message.Unmarshal(p, data, new(netmap.PlacementPolicy)) -} - -func (a *Attribute) StableMarshal(buf []byte) []byte { - if a == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, a.StableSize()) - } - - var offset int - - offset += protoutil.StringMarshal(keyAttributeField, buf[offset:], a.key) - offset += protoutil.StringMarshal(valueAttributeField, buf[offset:], a.value) - - for i := range a.parents { - offset += protoutil.StringMarshal(parentsAttributeField, buf[offset:], a.parents[i]) - } - - return buf -} - -func (a *Attribute) StableSize() (size int) { - if a == nil { - return 0 - } - - size += protoutil.StringSize(keyAttributeField, a.key) - size += protoutil.StringSize(valueAttributeField, a.value) - - for i := range a.parents { - size += protoutil.StringSize(parentsAttributeField, a.parents[i]) - } - - return size -} - -func (a *Attribute) Unmarshal(data []byte) error { - return message.Unmarshal(a, data, new(netmap.NodeInfo_Attribute)) -} - -func (ni *NodeInfo) StableMarshal(buf []byte) []byte { - if ni == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, ni.StableSize()) - } - - var offset int - - offset += protoutil.BytesMarshal(keyNodeInfoField, buf[offset:], ni.publicKey) - offset += protoutil.RepeatedStringMarshal(addressNodeInfoField, buf[offset:], ni.addresses) - - for i := range ni.attributes { - offset += protoutil.NestedStructureMarshal(attributesNodeInfoField, buf[offset:], &ni.attributes[i]) - } - - protoutil.EnumMarshal(stateNodeInfoField, buf[offset:], int32(ni.state)) - - return buf -} - -func (ni *NodeInfo) StableSize() (size int) { - if ni == nil { - return 0 - } - - size += protoutil.BytesSize(keyNodeInfoField, ni.publicKey) - size += protoutil.RepeatedStringSize(addressNodeInfoField, ni.addresses) - - for i := range ni.attributes { - size += protoutil.NestedStructureSize(attributesNodeInfoField, &ni.attributes[i]) - } - - size += protoutil.EnumSize(stateNodeInfoField, int32(ni.state)) - - return size -} - -func (ni *NodeInfo) Unmarshal(data []byte) error { - return message.Unmarshal(ni, data, new(netmap.NodeInfo)) -} - -func (l *LocalNodeInfoRequestBody) StableMarshal(_ []byte) []byte { - return nil -} - -func (l *LocalNodeInfoRequestBody) StableSize() (size int) { - return 0 -} - -func (l *LocalNodeInfoRequestBody) Unmarshal([]byte) error { - return nil -} - -func (l *LocalNodeInfoResponseBody) StableMarshal(buf []byte) []byte { - if l == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, l.StableSize()) - } - - var offset int - - offset += protoutil.NestedStructureMarshal(versionInfoResponseBodyField, buf[offset:], l.version) - protoutil.NestedStructureMarshal(nodeInfoResponseBodyField, buf[offset:], l.nodeInfo) - - return buf -} - -func (l *LocalNodeInfoResponseBody) StableSize() (size int) { - if l == nil { - return 0 - } - - size += protoutil.NestedStructureSize(versionInfoResponseBodyField, l.version) - size += protoutil.NestedStructureSize(nodeInfoResponseBodyField, l.nodeInfo) - - return size -} - -func (l *LocalNodeInfoResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(l, data, new(netmap.LocalNodeInfoResponse_Body)) -} - -const ( - _ = iota - netPrmKeyFNum - netPrmValFNum -) - -func (x *NetworkParameter) StableMarshal(buf []byte) []byte { - if x == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, x.StableSize()) - } - - var offset int - - offset += protoutil.BytesMarshal(netPrmKeyFNum, buf[offset:], x.k) - protoutil.BytesMarshal(netPrmValFNum, buf[offset:], x.v) - - return buf -} - -func (x *NetworkParameter) StableSize() (size int) { - if x == nil { - return 0 - } - - size += protoutil.BytesSize(netPrmKeyFNum, x.k) - size += protoutil.BytesSize(netPrmValFNum, x.v) - - return size -} - -const ( - _ = iota - netCfgPrmsFNum -) - -func (x *NetworkConfig) StableMarshal(buf []byte) []byte { - if x == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, x.StableSize()) - } - - var offset int - - for i := range x.ps { - offset += protoutil.NestedStructureMarshal(netCfgPrmsFNum, buf[offset:], &x.ps[i]) - } - - return buf -} - -func (x *NetworkConfig) StableSize() (size int) { - if x == nil { - return 0 - } - - for i := range x.ps { - size += protoutil.NestedStructureSize(netCfgPrmsFNum, &x.ps[i]) - } - - return size -} - -const ( - _ = iota - netInfoCurEpochFNum - netInfoMagicNumFNum - netInfoMSPerBlockFNum - netInfoCfgFNum -) - -func (i *NetworkInfo) StableMarshal(buf []byte) []byte { - if i == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, i.StableSize()) - } - - var offset int - - offset += protoutil.UInt64Marshal(netInfoCurEpochFNum, buf[offset:], i.curEpoch) - offset += protoutil.UInt64Marshal(netInfoMagicNumFNum, buf[offset:], i.magicNum) - offset += protoutil.Int64Marshal(netInfoMSPerBlockFNum, buf[offset:], i.msPerBlock) - protoutil.NestedStructureMarshal(netInfoCfgFNum, buf[offset:], i.netCfg) - - return buf -} - -func (i *NetworkInfo) StableSize() (size int) { - if i == nil { - return 0 - } - - size += protoutil.UInt64Size(netInfoCurEpochFNum, i.curEpoch) - size += protoutil.UInt64Size(netInfoMagicNumFNum, i.magicNum) - size += protoutil.Int64Size(netInfoMSPerBlockFNum, i.msPerBlock) - size += protoutil.NestedStructureSize(netInfoCfgFNum, i.netCfg) - - return size -} - -func (i *NetworkInfo) Unmarshal(data []byte) error { - return message.Unmarshal(i, data, new(netmap.NetworkInfo)) -} - -func (l *NetworkInfoRequestBody) StableMarshal(_ []byte) []byte { - return nil -} - -func (l *NetworkInfoRequestBody) StableSize() (size int) { - return 0 -} - -func (l *NetworkInfoRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(l, data, new(netmap.NetworkInfoRequest_Body)) -} - -const ( - _ = iota - netInfoRespBodyNetInfoFNum -) - -func (i *NetworkInfoResponseBody) StableMarshal(buf []byte) []byte { - if i == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, i.StableSize()) - } - - protoutil.NestedStructureMarshal(netInfoRespBodyNetInfoFNum, buf, i.netInfo) - - return buf -} - -func (i *NetworkInfoResponseBody) StableSize() (size int) { - if i == nil { - return 0 - } - - size += protoutil.NestedStructureSize(netInfoRespBodyNetInfoFNum, i.netInfo) - - return size -} - -func (i *NetworkInfoResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(i, data, new(netmap.NetworkInfoResponse_Body)) -} - -const ( - _ = iota - fNumNetMapEpoch - fNumNetMapNodes -) - -func (x *NetMap) StableMarshal(buf []byte) []byte { - if x == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, x.StableSize()) - } - - offset := protoutil.UInt64Marshal(fNumNetMapEpoch, buf, x.epoch) - - for i := range x.nodes { - offset += protoutil.NestedStructureMarshal(fNumNetMapNodes, buf[offset:], &x.nodes[i]) - } - - return buf -} - -func (x *NetMap) StableSize() (size int) { - if x != nil { - size = protoutil.UInt64Size(fNumNetMapEpoch, x.epoch) - - for i := range x.nodes { - size += protoutil.NestedStructureSize(fNumNetMapNodes, &x.nodes[i]) - } - } - - return -} - -func (x *SnapshotRequestBody) StableMarshal([]byte) []byte { - return nil -} - -func (x *SnapshotRequestBody) StableSize() int { - return 0 -} - -const ( - _ = iota - fNumSnapshotResponseBodyNetMap -) - -func (x *SnapshotResponseBody) StableMarshal(buf []byte) []byte { - if x == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, x.StableSize()) - } - - protoutil.NestedStructureMarshal(fNumSnapshotResponseBodyNetMap, buf, x.netMap) - - return buf -} - -func (x *SnapshotResponseBody) StableSize() (size int) { - if x != nil { - size = protoutil.NestedStructureSize(fNumSnapshotResponseBodyNetMap, x.netMap) - } - - return -} diff --git a/netmap/message_test.go b/netmap/message_test.go deleted file mode 100644 index fe78ffe..0000000 --- a/netmap/message_test.go +++ /dev/null @@ -1,32 +0,0 @@ -package netmap_test - -import ( - "testing" - - netmaptest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap/test" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - messagetest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message/test" -) - -func TestMessageConvert(t *testing.T) { - messagetest.TestRPCMessage(t, - func(empty bool) message.Message { return netmaptest.GenerateFilter(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateSelector(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateReplica(empty) }, - func(empty bool) message.Message { return netmaptest.GeneratePlacementPolicy(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateAttribute(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateNodeInfo(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateLocalNodeInfoRequest(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateLocalNodeInfoResponseBody(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateNetworkParameter(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateNetworkConfig(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateNetworkInfo(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateNetworkInfoRequest(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateNetworkInfoResponseBody(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateNetMap(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateSnapshotRequestBody(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateSnapshotRequest(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateSnapshotResponseBody(empty) }, - func(empty bool) message.Message { return netmaptest.GenerateSnapshotResponse(empty) }, - ) -} diff --git a/netmap/string.go b/netmap/string.go deleted file mode 100644 index 1f00a55..0000000 --- a/netmap/string.go +++ /dev/null @@ -1,68 +0,0 @@ -package netmap - -import ( - netmap "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap/grpc" -) - -// String returns string representation of Clause. -func (x Clause) String() string { - return ClauseToGRPCMessage(x).String() -} - -// FromString parses Clause from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (x *Clause) FromString(s string) bool { - var g netmap.Clause - - ok := g.FromString(s) - - if ok { - *x = ClauseFromGRPCMessage(g) - } - - return ok -} - -// String returns string representation of Operation. -func (x Operation) String() string { - return OperationToGRPCMessage(x).String() -} - -// FromString parses Operation from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (x *Operation) FromString(s string) bool { - var g netmap.Operation - - ok := g.FromString(s) - - if ok { - *x = OperationFromGRPCMessage(g) - } - - return ok -} - -// String returns string representation of NodeState. -func (x NodeState) String() string { - return NodeStateToGRPCMessage(x).String() -} - -// FromString parses NodeState from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (x *NodeState) FromString(s string) bool { - var g netmap.NodeInfo_State - - ok := g.FromString(s) - - if ok { - *x = NodeStateFromRPCMessage(g) - } - - return ok -} diff --git a/netmap/test/generate.go b/netmap/test/generate.go deleted file mode 100644 index 2b713c5..0000000 --- a/netmap/test/generate.go +++ /dev/null @@ -1,335 +0,0 @@ -package netmaptest - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap" - refstest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/test" - sessiontest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/test" -) - -func GenerateFilter(empty bool) *netmap.Filter { - return generateFilter(empty, true) -} - -func generateFilter(empty, withSub bool) *netmap.Filter { - m := new(netmap.Filter) - - if !empty { - m.SetKey("filter key") - m.SetValue("filter value") - m.SetName("filter name") - m.SetOp(1) - - if withSub { - m.SetFilters([]netmap.Filter{ - *generateFilter(empty, false), - *generateFilter(empty, false), - }) - } - } - - return m -} - -func GenerateFilters(empty bool) []netmap.Filter { - var res []netmap.Filter - - if !empty { - res = append(res, - *GenerateFilter(false), - *GenerateFilter(false), - ) - } - - return res -} - -func GenerateSelector(empty bool) *netmap.Selector { - m := new(netmap.Selector) - - if !empty { - m.SetCount(66) - m.SetAttribute("selector attribute") - m.SetFilter("select filter") - m.SetName("select name") - m.SetClause(1) - } - - return m -} - -func GenerateSelectors(empty bool) []netmap.Selector { - var res []netmap.Selector - - if !empty { - res = append(res, - *GenerateSelector(false), - *GenerateSelector(false), - ) - } - - return res -} - -func GenerateReplica(empty bool) *netmap.Replica { - m := new(netmap.Replica) - - if !empty { - m.SetCount(42) - m.SetSelector("replica selector") - } - - return m -} - -func GenerateEC(empty bool) *netmap.Replica { - m := new(netmap.Replica) - - if !empty { - m.SetECDataCount(4) - m.SetECParityCount(2) - } - - return m -} - -func GenerateReplicas(empty bool) []netmap.Replica { - var res []netmap.Replica - - if !empty { - res = append(res, - *GenerateReplica(false), - *GenerateReplica(false), - *GenerateEC(false), - ) - } - - return res -} - -func GeneratePlacementPolicy(empty bool) *netmap.PlacementPolicy { - m := new(netmap.PlacementPolicy) - - if !empty { - m.SetContainerBackupFactor(322) - m.SetFilters(GenerateFilters(false)) - m.SetSelectors(GenerateSelectors(false)) - m.SetReplicas(GenerateReplicas(false)) - m.SetUnique(true) - } - - return m -} - -func GenerateAttribute(empty bool) *netmap.Attribute { - m := new(netmap.Attribute) - - if !empty { - m.SetKey("attribute key") - m.SetValue("attribute val") - } - - return m -} - -func GenerateAttributes(empty bool) []netmap.Attribute { - var res []netmap.Attribute - - if !empty { - res = append(res, - *GenerateAttribute(false), - *GenerateAttribute(false), - ) - } - - return res -} - -func GenerateNodeInfo(empty bool) *netmap.NodeInfo { - m := new(netmap.NodeInfo) - - if !empty { - m.SetAddresses("node address", "node address 2") - m.SetPublicKey([]byte{1, 2, 3}) - m.SetState(33) - m.SetAttributes(GenerateAttributes(empty)) - } - - return m -} - -func GenerateLocalNodeInfoRequestBody(_ bool) *netmap.LocalNodeInfoRequestBody { - m := new(netmap.LocalNodeInfoRequestBody) - - return m -} - -func GenerateLocalNodeInfoRequest(empty bool) *netmap.LocalNodeInfoRequest { - m := new(netmap.LocalNodeInfoRequest) - - if !empty { - m.SetBody(GenerateLocalNodeInfoRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateLocalNodeInfoResponseBody(empty bool) *netmap.LocalNodeInfoResponseBody { - m := new(netmap.LocalNodeInfoResponseBody) - - if !empty { - m.SetNodeInfo(GenerateNodeInfo(false)) - } - - m.SetVersion(refstest.GenerateVersion(empty)) - - return m -} - -func GenerateLocalNodeInfoResponse(empty bool) *netmap.LocalNodeInfoResponse { - m := new(netmap.LocalNodeInfoResponse) - - if !empty { - m.SetBody(GenerateLocalNodeInfoResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateNetworkParameter(empty bool) *netmap.NetworkParameter { - m := new(netmap.NetworkParameter) - - if !empty { - m.SetKey([]byte("key")) - m.SetValue([]byte("value")) - } - - return m -} - -func GenerateNetworkConfig(empty bool) *netmap.NetworkConfig { - m := new(netmap.NetworkConfig) - - if !empty { - m.SetParameters( - *GenerateNetworkParameter(empty), - *GenerateNetworkParameter(empty), - ) - } - - return m -} - -func GenerateNetworkInfo(empty bool) *netmap.NetworkInfo { - m := new(netmap.NetworkInfo) - - if !empty { - m.SetMagicNumber(228) - m.SetCurrentEpoch(666) - m.SetMsPerBlock(5678) - m.SetNetworkConfig(GenerateNetworkConfig(empty)) - } - - return m -} - -func GenerateNetworkInfoRequestBody(_ bool) *netmap.NetworkInfoRequestBody { - m := new(netmap.NetworkInfoRequestBody) - - return m -} - -func GenerateNetworkInfoRequest(empty bool) *netmap.NetworkInfoRequest { - m := new(netmap.NetworkInfoRequest) - - if !empty { - m.SetBody(GenerateNetworkInfoRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateNetworkInfoResponseBody(empty bool) *netmap.NetworkInfoResponseBody { - m := new(netmap.NetworkInfoResponseBody) - - if !empty { - m.SetNetworkInfo(GenerateNetworkInfo(false)) - } - - return m -} - -func GenerateNetworkInfoResponse(empty bool) *netmap.NetworkInfoResponse { - m := new(netmap.NetworkInfoResponse) - - if !empty { - m.SetBody(GenerateNetworkInfoResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateNetMap(empty bool) *netmap.NetMap { - m := new(netmap.NetMap) - - if !empty { - m.SetEpoch(987) - m.SetNodes([]netmap.NodeInfo{ - *GenerateNodeInfo(false), - *GenerateNodeInfo(false), - }) - } - - return m -} - -func GenerateSnapshotRequestBody(_ bool) *netmap.SnapshotRequestBody { - return new(netmap.SnapshotRequestBody) -} - -func GenerateSnapshotRequest(empty bool) *netmap.SnapshotRequest { - m := new(netmap.SnapshotRequest) - - if !empty { - m.SetBody(GenerateSnapshotRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateSnapshotResponseBody(empty bool) *netmap.SnapshotResponseBody { - m := new(netmap.SnapshotResponseBody) - - if !empty { - m.SetNetMap(GenerateNetMap(false)) - } - - return m -} - -func GenerateSnapshotResponse(empty bool) *netmap.SnapshotResponse { - m := new(netmap.SnapshotResponse) - - if !empty { - m.SetBody(GenerateSnapshotResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} diff --git a/netmap/types.go b/netmap/types.go deleted file mode 100644 index 7821385..0000000 --- a/netmap/types.go +++ /dev/null @@ -1,783 +0,0 @@ -package netmap - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" -) - -type LocalNodeInfoRequest struct { - body *LocalNodeInfoRequestBody - - session.RequestHeaders -} - -type LocalNodeInfoResponse struct { - body *LocalNodeInfoResponseBody - - session.ResponseHeaders -} - -// NetworkInfoRequest is a structure of NetworkInfo request. -type NetworkInfoRequest struct { - body *NetworkInfoRequestBody - - session.RequestHeaders -} - -// NetworkInfoResponse is a structure of NetworkInfo response. -type NetworkInfoResponse struct { - body *NetworkInfoResponseBody - - session.ResponseHeaders -} - -type Filter struct { - name string - key string - op Operation - value string - filters []Filter -} - -type Selector struct { - name string - count uint32 - clause Clause - attribute string - filter string -} - -type Replica struct { - count uint32 - selector string - - ecDataCount uint32 - ecParityCount uint32 -} - -type Operation uint32 - -type PlacementPolicy struct { - replicas []Replica - backupFactor uint32 - selectors []Selector - filters []Filter - unique bool -} - -// Attribute of storage node. -type Attribute struct { - key string - value string - parents []string -} - -// NodeInfo of storage node. -type NodeInfo struct { - publicKey []byte - addresses []string - attributes []Attribute - state NodeState -} - -// NodeState of storage node. -type NodeState uint32 - -// Clause of placement selector. -type Clause uint32 - -type LocalNodeInfoRequestBody struct{} - -type LocalNodeInfoResponseBody struct { - version *refs.Version - nodeInfo *NodeInfo -} - -const ( - UnspecifiedState NodeState = iota - Online - Offline - Maintenance -) - -const ( - UnspecifiedOperation Operation = iota - EQ - NE - GT - GE - LT - LE - OR - AND - NOT - LIKE -) - -const ( - UnspecifiedClause Clause = iota - Same - Distinct -) - -func (f *Filter) GetFilters() []Filter { - if f != nil { - return f.filters - } - - return nil -} - -func (f *Filter) SetFilters(filters []Filter) { - f.filters = filters -} - -func (f *Filter) GetValue() string { - if f != nil { - return f.value - } - - return "" -} - -func (f *Filter) SetValue(value string) { - f.value = value -} - -func (f *Filter) GetOp() Operation { - if f != nil { - return f.op - } - return UnspecifiedOperation -} - -func (f *Filter) SetOp(op Operation) { - f.op = op -} - -func (f *Filter) GetKey() string { - if f != nil { - return f.key - } - - return "" -} - -func (f *Filter) SetKey(key string) { - f.key = key -} - -func (f *Filter) GetName() string { - if f != nil { - return f.name - } - - return "" -} - -func (f *Filter) SetName(name string) { - f.name = name -} - -func (s *Selector) GetFilter() string { - if s != nil { - return s.filter - } - - return "" -} - -func (s *Selector) SetFilter(filter string) { - s.filter = filter -} - -func (s *Selector) GetAttribute() string { - if s != nil { - return s.attribute - } - - return "" -} - -func (s *Selector) SetAttribute(attribute string) { - s.attribute = attribute -} - -func (s *Selector) GetClause() Clause { - if s != nil { - return s.clause - } - - return UnspecifiedClause -} - -func (s *Selector) SetClause(clause Clause) { - s.clause = clause -} - -func (s *Selector) GetCount() uint32 { - if s != nil { - return s.count - } - - return 0 -} - -func (s *Selector) SetCount(count uint32) { - s.count = count -} - -func (s *Selector) GetName() string { - if s != nil { - return s.name - } - - return "" -} - -func (s *Selector) SetName(name string) { - s.name = name -} - -func (r *Replica) GetSelector() string { - if r != nil { - return r.selector - } - - return "" -} - -func (r *Replica) SetSelector(selector string) { - r.selector = selector -} - -func (r *Replica) GetCount() uint32 { - if r != nil { - return r.count - } - - return 0 -} - -func (r *Replica) SetCount(count uint32) { - r.count = count -} - -func (r *Replica) GetECDataCount() uint32 { - if r != nil { - return r.ecDataCount - } - - return 0 -} - -func (r *Replica) SetECDataCount(count uint32) { - r.ecDataCount = count -} - -func (r *Replica) GetECParityCount() uint32 { - if r != nil { - return r.ecParityCount - } - - return 0 -} - -func (r *Replica) SetECParityCount(count uint32) { - r.ecParityCount = count -} - -func (p *PlacementPolicy) GetUnique() bool { - if p != nil { - return p.unique - } - return false -} - -func (p *PlacementPolicy) SetUnique(unique bool) { - p.unique = unique -} - -func (p *PlacementPolicy) GetFilters() []Filter { - if p != nil { - return p.filters - } - - return nil -} - -func (p *PlacementPolicy) SetFilters(filters []Filter) { - p.filters = filters -} - -func (p *PlacementPolicy) GetSelectors() []Selector { - if p != nil { - return p.selectors - } - - return nil -} - -func (p *PlacementPolicy) SetSelectors(selectors []Selector) { - p.selectors = selectors -} - -func (p *PlacementPolicy) GetContainerBackupFactor() uint32 { - if p != nil { - return p.backupFactor - } - - return 0 -} - -func (p *PlacementPolicy) SetContainerBackupFactor(backupFactor uint32) { - p.backupFactor = backupFactor -} - -func (p *PlacementPolicy) GetReplicas() []Replica { - if p == nil { - return nil - } - - return p.replicas -} - -func (p *PlacementPolicy) SetReplicas(replicas []Replica) { - p.replicas = replicas -} - -func (a *Attribute) GetKey() string { - if a != nil { - return a.key - } - - return "" -} - -func (a *Attribute) SetKey(v string) { - a.key = v -} - -func (a *Attribute) GetValue() string { - if a != nil { - return a.value - } - - return "" -} - -func (a *Attribute) SetValue(v string) { - a.value = v -} - -func (a *Attribute) GetParents() []string { - if a != nil { - return a.parents - } - - return nil -} - -func (a *Attribute) SetParents(parent []string) { - a.parents = parent -} - -func (ni *NodeInfo) GetPublicKey() []byte { - if ni != nil { - return ni.publicKey - } - - return nil -} - -func (ni *NodeInfo) SetPublicKey(v []byte) { - ni.publicKey = v -} - -// GetAddress returns node's network address. -// -// Deprecated: use IterateAddresses. -func (ni *NodeInfo) GetAddress() (addr string) { - ni.IterateAddresses(func(s string) bool { - addr = s - return true - }) - - return -} - -// SetAddress sets node's network address. -// -// Deprecated: use SetAddresses. -func (ni *NodeInfo) SetAddress(v string) { - ni.SetAddresses(v) -} - -// SetAddresses sets list of network addresses of the node. -func (ni *NodeInfo) SetAddresses(v ...string) { - ni.addresses = v -} - -// NumberOfAddresses returns number of network addresses of the node. -func (ni *NodeInfo) NumberOfAddresses() int { - if ni != nil { - return len(ni.addresses) - } - - return 0 -} - -// IterateAddresses iterates over network addresses of the node. -// Breaks iteration on f's true return. -// -// Handler should not be nil. -func (ni *NodeInfo) IterateAddresses(f func(string) bool) { - if ni != nil { - for i := range ni.addresses { - if f(ni.addresses[i]) { - break - } - } - } -} - -func (ni *NodeInfo) GetAttributes() []Attribute { - if ni != nil { - return ni.attributes - } - - return nil -} - -func (ni *NodeInfo) SetAttributes(v []Attribute) { - ni.attributes = v -} - -func (ni *NodeInfo) GetState() NodeState { - if ni != nil { - return ni.state - } - - return UnspecifiedState -} - -func (ni *NodeInfo) SetState(state NodeState) { - ni.state = state -} - -func (l *LocalNodeInfoResponseBody) GetVersion() *refs.Version { - if l != nil { - return l.version - } - - return nil -} - -func (l *LocalNodeInfoResponseBody) SetVersion(version *refs.Version) { - l.version = version -} - -func (l *LocalNodeInfoResponseBody) GetNodeInfo() *NodeInfo { - if l != nil { - return l.nodeInfo - } - - return nil -} - -func (l *LocalNodeInfoResponseBody) SetNodeInfo(nodeInfo *NodeInfo) { - l.nodeInfo = nodeInfo -} - -func (l *LocalNodeInfoRequest) GetBody() *LocalNodeInfoRequestBody { - if l != nil { - return l.body - } - return nil -} - -func (l *LocalNodeInfoRequest) SetBody(body *LocalNodeInfoRequestBody) { - l.body = body -} - -func (l *LocalNodeInfoResponse) GetBody() *LocalNodeInfoResponseBody { - if l != nil { - return l.body - } - return nil -} - -func (l *LocalNodeInfoResponse) SetBody(body *LocalNodeInfoResponseBody) { - l.body = body -} - -// NetworkParameter represents NeoFS network parameter. -type NetworkParameter struct { - k, v []byte -} - -// GetKey returns parameter key. -func (x *NetworkParameter) GetKey() []byte { - if x != nil { - return x.k - } - - return nil -} - -// SetKey sets parameter key. -func (x *NetworkParameter) SetKey(k []byte) { - x.k = k -} - -// GetValue returns parameter value. -func (x *NetworkParameter) GetValue() []byte { - if x != nil { - return x.v - } - - return nil -} - -// SetValue sets parameter value. -func (x *NetworkParameter) SetValue(v []byte) { - x.v = v -} - -// NetworkConfig represents NeoFS network configuration. -type NetworkConfig struct { - ps []NetworkParameter -} - -// NumberOfParameters returns number of network parameters. -func (x *NetworkConfig) NumberOfParameters() int { - if x != nil { - return len(x.ps) - } - - return 0 -} - -// IterateParameters iterates over network parameters. -// Breaks iteration on f's true return. -// -// Handler must not be nil. -func (x *NetworkConfig) IterateParameters(f func(*NetworkParameter) bool) { - if x != nil { - for i := range x.ps { - if f(&x.ps[i]) { - break - } - } - } -} - -// SetParameters sets list of network parameters. -func (x *NetworkConfig) SetParameters(v ...NetworkParameter) { - x.ps = v -} - -// NetworkInfo groups information about -// NeoFS network. -type NetworkInfo struct { - curEpoch, magicNum uint64 - - msPerBlock int64 - - netCfg *NetworkConfig -} - -// GetCurrentEpoch returns number of the current epoch. -func (i *NetworkInfo) GetCurrentEpoch() uint64 { - if i != nil { - return i.curEpoch - } - - return 0 -} - -// SetCurrentEpoch sets number of the current epoch. -func (i *NetworkInfo) SetCurrentEpoch(epoch uint64) { - i.curEpoch = epoch -} - -// GetMagicNumber returns magic number of the sidechain. -func (i *NetworkInfo) GetMagicNumber() uint64 { - if i != nil { - return i.magicNum - } - - return 0 -} - -// SetMagicNumber sets magic number of the sidechain. -func (i *NetworkInfo) SetMagicNumber(magic uint64) { - i.magicNum = magic -} - -// GetMsPerBlock returns MillisecondsPerBlock network parameter. -func (i *NetworkInfo) GetMsPerBlock() int64 { - if i != nil { - return i.msPerBlock - } - - return 0 -} - -// SetMsPerBlock sets MillisecondsPerBlock network parameter. -func (i *NetworkInfo) SetMsPerBlock(v int64) { - i.msPerBlock = v -} - -// GetNetworkConfig returns NeoFS network configuration. -func (i *NetworkInfo) GetNetworkConfig() *NetworkConfig { - if i != nil { - return i.netCfg - } - - return nil -} - -// SetNetworkConfig sets NeoFS network configuration. -func (i *NetworkInfo) SetNetworkConfig(v *NetworkConfig) { - i.netCfg = v -} - -// NetworkInfoRequestBody is a structure of NetworkInfo request body. -type NetworkInfoRequestBody struct{} - -// NetworkInfoResponseBody is a structure of NetworkInfo response body. -type NetworkInfoResponseBody struct { - netInfo *NetworkInfo -} - -// GetNetworkInfo returns information about the NeoFS network. -func (i *NetworkInfoResponseBody) GetNetworkInfo() *NetworkInfo { - if i != nil { - return i.netInfo - } - - return nil -} - -// SetNetworkInfo sets information about the NeoFS network. -func (i *NetworkInfoResponseBody) SetNetworkInfo(netInfo *NetworkInfo) { - i.netInfo = netInfo -} - -func (l *NetworkInfoRequest) GetBody() *NetworkInfoRequestBody { - if l != nil { - return l.body - } - return nil -} - -func (l *NetworkInfoRequest) SetBody(body *NetworkInfoRequestBody) { - l.body = body -} - -func (l *NetworkInfoResponse) GetBody() *NetworkInfoResponseBody { - if l != nil { - return l.body - } - return nil -} - -func (l *NetworkInfoResponse) SetBody(body *NetworkInfoResponseBody) { - l.body = body -} - -// NetMap represents structure of NeoFS network map. -type NetMap struct { - epoch uint64 - - nodes []NodeInfo -} - -// Epoch returns revision number of the NetMap. -func (x *NetMap) Epoch() uint64 { - if x != nil { - return x.epoch - } - - return 0 -} - -// SetEpoch sets revision number of the NetMap. -func (x *NetMap) SetEpoch(v uint64) { - x.epoch = v -} - -// Nodes returns nodes presented in the NetMap. -func (x *NetMap) Nodes() []NodeInfo { - if x != nil { - return x.nodes - } - - return nil -} - -// SetNodes sets nodes presented in the NetMap. -func (x *NetMap) SetNodes(v []NodeInfo) { - x.nodes = v -} - -// SnapshotRequestBody represents structure of Snapshot request body. -type SnapshotRequestBody struct{} - -// SnapshotRequest represents structure of Snapshot request. -type SnapshotRequest struct { - body *SnapshotRequestBody - - session.RequestHeaders -} - -func (x *SnapshotRequest) GetBody() *SnapshotRequestBody { - if x != nil { - return x.body - } - - return nil -} - -func (x *SnapshotRequest) SetBody(body *SnapshotRequestBody) { - x.body = body -} - -// SnapshotResponseBody represents structure of Snapshot response body. -type SnapshotResponseBody struct { - netMap *NetMap -} - -// NetMap returns current NetMap. -func (x *SnapshotResponseBody) NetMap() *NetMap { - if x != nil { - return x.netMap - } - - return nil -} - -// SetNetMap sets current NetMap. -func (x *SnapshotResponseBody) SetNetMap(netMap *NetMap) { - x.netMap = netMap -} - -// SnapshotResponse represents structure of Snapshot response. -type SnapshotResponse struct { - body *SnapshotResponseBody - - session.ResponseHeaders -} - -func (x *SnapshotResponse) GetBody() *SnapshotResponseBody { - if x != nil { - return x.body - } - - return nil -} - -func (x *SnapshotResponse) SetBody(body *SnapshotResponseBody) { - x.body = body -} diff --git a/object/attributes.go b/object/attributes.go deleted file mode 100644 index 7f4fca0..0000000 --- a/object/attributes.go +++ /dev/null @@ -1,187 +0,0 @@ -package object - -import ( - "errors" - "fmt" - "strconv" -) - -// SysAttributePrefix is a prefix of key to system attribute. -const SysAttributePrefix = "__SYSTEM__" - -const ( - // SysAttributeUploadID marks smaller parts of a split bigger object. - SysAttributeUploadID = SysAttributePrefix + "UPLOAD_ID" - - // SysAttributeExpEpoch tells GC to delete object after that epoch. - SysAttributeExpEpoch = SysAttributePrefix + "EXPIRATION_EPOCH" - - // SysAttributeTickEpoch defines what epoch must produce object - // notification. - SysAttributeTickEpoch = SysAttributePrefix + "TICK_EPOCH" - - // SysAttributeTickTopic defines what topic object notification - // must be sent to. - SysAttributeTickTopic = SysAttributePrefix + "TICK_TOPIC" -) - -// SysAttributePrefixNeoFS is a prefix of key to system attribute. -// Deprecated: use SysAttributePrefix. -const SysAttributePrefixNeoFS = "__NEOFS__" - -const ( - // SysAttributeUploadIDNeoFS marks smaller parts of a split bigger object. - // Deprecated: use SysAttributeUploadID. - SysAttributeUploadIDNeoFS = SysAttributePrefixNeoFS + "UPLOAD_ID" - - // SysAttributeExpEpochNeoFS tells GC to delete object after that epoch. - // Deprecated: use SysAttributeExpEpoch. - SysAttributeExpEpochNeoFS = SysAttributePrefixNeoFS + "EXPIRATION_EPOCH" - - // SysAttributeTickEpochNeoFS defines what epoch must produce object - // notification. - // Deprecated: use SysAttributeTickEpoch. - SysAttributeTickEpochNeoFS = SysAttributePrefixNeoFS + "TICK_EPOCH" - - // SysAttributeTickTopicNeoFS defines what topic object notification - // must be sent to. - // Deprecated: use SysAttributeTickTopic. - SysAttributeTickTopicNeoFS = SysAttributePrefixNeoFS + "TICK_TOPIC" -) - -// NotificationInfo groups information about object notification -// that can be written to object. -// -// Topic is an optional field. -type NotificationInfo struct { - epoch uint64 - topic string -} - -// Epoch returns object notification tick -// epoch. -func (n NotificationInfo) Epoch() uint64 { - return n.epoch -} - -// SetEpoch sets object notification tick -// epoch. -func (n *NotificationInfo) SetEpoch(epoch uint64) { - n.epoch = epoch -} - -// Topic return optional object notification -// topic. -func (n NotificationInfo) Topic() string { - return n.topic -} - -// SetTopic sets optional object notification -// topic. -func (n *NotificationInfo) SetTopic(topic string) { - n.topic = topic -} - -// WriteNotificationInfo writes NotificationInfo to the Object via attributes. Object must not be nil. -// -// Existing notification attributes are expected to be key-unique, otherwise undefined behavior. -func WriteNotificationInfo(o *Object, ni NotificationInfo) { - h := o.GetHeader() - if h == nil { - h = new(Header) - o.SetHeader(h) - } - - var ( - attrs = h.GetAttributes() - - epoch = strconv.FormatUint(ni.Epoch(), 10) - topic = ni.Topic() - - changedEpoch bool - changedTopic bool - deleteIndex = -1 - ) - - for i := range attrs { - switch attrs[i].GetKey() { - case SysAttributeTickEpoch, SysAttributeTickEpochNeoFS: - attrs[i].SetValue(epoch) - changedEpoch = true - case SysAttributeTickTopic, SysAttributeTickTopicNeoFS: - changedTopic = true - - if topic == "" { - deleteIndex = i - break - } - - attrs[i].SetValue(topic) - } - - if changedEpoch && changedTopic { - break - } - } - - if deleteIndex != -1 { - // approach without allocation/waste - // coping works since the attributes - // order is not important - attrs[deleteIndex] = attrs[len(attrs)-1] - attrs = attrs[:len(attrs)-1] - } - - if !changedEpoch { - index := len(attrs) - attrs = append(attrs, Attribute{}) - attrs[index].SetKey(SysAttributeTickEpoch) - attrs[index].SetValue(epoch) - } - - if !changedTopic && topic != "" { - index := len(attrs) - attrs = append(attrs, Attribute{}) - attrs[index].SetKey(SysAttributeTickTopic) - attrs[index].SetValue(topic) - } - - h.SetAttributes(attrs) -} - -// ErrNotificationNotSet means that object does not have notification. -var ErrNotificationNotSet = errors.New("notification for object is not set") - -// GetNotificationInfo looks for object notification attributes. Object must not be nil. -// Returns ErrNotificationNotSet if no corresponding attributes -// were found. -// -// Existing notification attributes are expected to be key-unique, otherwise undefined behavior. -func GetNotificationInfo(o *Object) (*NotificationInfo, error) { - var ( - foundEpoch bool - ni = new(NotificationInfo) - ) - - for _, attr := range o.GetHeader().GetAttributes() { - switch key := attr.GetKey(); key { - case SysAttributeTickEpoch, SysAttributeTickEpochNeoFS: - epoch, err := strconv.ParseUint(attr.GetValue(), 10, 64) - if err != nil { - return nil, fmt.Errorf("could not parse epoch: %w", err) - } - - ni.SetEpoch(epoch) - - foundEpoch = true - case SysAttributeTickTopic, SysAttributeTickTopicNeoFS: - ni.SetTopic(attr.GetValue()) - } - } - - if !foundEpoch { - return nil, ErrNotificationNotSet - } - - return ni, nil -} diff --git a/object/attributes_test.go b/object/attributes_test.go deleted file mode 100644 index 85635da..0000000 --- a/object/attributes_test.go +++ /dev/null @@ -1,89 +0,0 @@ -package object - -import ( - "strconv" - "testing" - - "github.com/stretchr/testify/require" -) - -func TestSetNotification(t *testing.T) { - o := new(Object) - - ni := NotificationInfo{ - epoch: 10, - topic: "test", - } - - WriteNotificationInfo(o, ni) - - var foundEpoch, foundTopic bool - - for _, attr := range o.GetHeader().GetAttributes() { - switch key := attr.GetKey(); key { - case SysAttributeTickEpoch: - require.Equal(t, false, foundEpoch) - - uEpoch, err := strconv.ParseUint(attr.GetValue(), 10, 64) - require.NoError(t, err) - - require.Equal(t, ni.Epoch(), uEpoch) - foundEpoch = true - case SysAttributeTickTopic: - require.Equal(t, false, foundTopic) - require.Equal(t, ni.Topic(), attr.GetValue()) - foundTopic = true - } - } - - require.Equal(t, true, foundEpoch && foundTopic) -} - -func TestGetNotification(t *testing.T) { - o := new(Object) - - attr := []Attribute{ - {SysAttributeTickEpoch, "10"}, - {SysAttributeTickTopic, "test"}, - } - - h := new(Header) - h.SetAttributes(attr) - - o.SetHeader(h) - - t.Run("No error", func(t *testing.T) { - ni, err := GetNotificationInfo(o) - require.NoError(t, err) - - require.Equal(t, uint64(10), ni.Epoch()) - require.Equal(t, "test", ni.Topic()) - }) -} - -func TestIntegration(t *testing.T) { - o := new(Object) - - var ( - ni1 = NotificationInfo{ - epoch: 10, - topic: "", - } - ni2 = NotificationInfo{ - epoch: 11, - topic: "test", - } - ) - - WriteNotificationInfo(o, ni1) - WriteNotificationInfo(o, ni2) - - t.Run("double set", func(t *testing.T) { - ni, err := GetNotificationInfo(o) - require.NoError(t, err) - - require.Equal(t, ni2.epoch, ni.Epoch()) - require.Equal(t, ni2.topic, ni.Topic()) - require.Equal(t, 2, len(o.GetHeader().GetAttributes())) - }) -} diff --git a/object/bench_test.go b/object/bench_test.go deleted file mode 100644 index b29b1d1..0000000 --- a/object/bench_test.go +++ /dev/null @@ -1,45 +0,0 @@ -package object - -import ( - "math/rand" - "testing" - - "github.com/stretchr/testify/require" -) - -func randString(n int) string { - x := make([]byte, n) - for i := range x { - x[i] = byte('a' + rand.Intn('z'-'a')) - } - return string(x) -} - -func BenchmarkAttributesMarshal(b *testing.B) { - attrs := make([]Attribute, 50) - for i := range attrs { - attrs[i].key = SysAttributePrefix + randString(10) - attrs[i].val = randString(10) - } - raw := AttributesToGRPC(attrs) - require.Equal(b, len(raw), len(attrs)) - - b.Run("marshal", func(b *testing.B) { - b.ReportAllocs() - for range b.N { - res := AttributesToGRPC(attrs) - if len(res) != len(raw) { - b.FailNow() - } - } - }) - b.Run("unmarshal", func(b *testing.B) { - b.ReportAllocs() - for range b.N { - res, err := AttributesFromGRPC(raw) - if err != nil || len(res) != len(raw) { - b.FailNow() - } - } - }) -} diff --git a/object/convert.go b/object/convert.go deleted file mode 100644 index 88e6ab7..0000000 --- a/object/convert.go +++ /dev/null @@ -1,2555 +0,0 @@ -package object - -import ( - "fmt" - - object "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/object/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - refsGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" - sessionGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" -) - -func TypeToGRPCField(t Type) object.ObjectType { - return object.ObjectType(t) -} - -func TypeFromGRPCField(t object.ObjectType) Type { - return Type(t) -} - -func MatchTypeToGRPCField(t MatchType) object.MatchType { - return object.MatchType(t) -} - -func MatchTypeFromGRPCField(t object.MatchType) MatchType { - return MatchType(t) -} - -func (h *ShortHeader) ToGRPCMessage() grpc.Message { - var m *object.ShortHeader - - if h != nil { - m = new(object.ShortHeader) - - m.SetVersion(h.version.ToGRPCMessage().(*refsGRPC.Version)) - m.SetOwnerId(h.ownerID.ToGRPCMessage().(*refsGRPC.OwnerID)) - m.SetHomomorphicHash(h.homoHash.ToGRPCMessage().(*refsGRPC.Checksum)) - m.SetPayloadHash(h.payloadHash.ToGRPCMessage().(*refsGRPC.Checksum)) - m.SetObjectType(TypeToGRPCField(h.typ)) - m.SetCreationEpoch(h.creatEpoch) - m.SetPayloadLength(h.payloadLen) - } - - return m -} - -func (h *ShortHeader) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.ShortHeader) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - version := v.GetVersion() - if version == nil { - h.version = nil - } else { - if h.version == nil { - h.version = new(refs.Version) - } - - err = h.version.FromGRPCMessage(version) - if err != nil { - return err - } - } - - ownerID := v.GetOwnerId() - if ownerID == nil { - h.ownerID = nil - } else { - if h.ownerID == nil { - h.ownerID = new(refs.OwnerID) - } - - err = h.ownerID.FromGRPCMessage(ownerID) - if err != nil { - return err - } - } - - homoHash := v.GetHomomorphicHash() - if homoHash == nil { - h.homoHash = nil - } else { - if h.homoHash == nil { - h.homoHash = new(refs.Checksum) - } - - err = h.homoHash.FromGRPCMessage(homoHash) - if err != nil { - return err - } - } - - payloadHash := v.GetPayloadHash() - if payloadHash == nil { - h.payloadHash = nil - } else { - if h.payloadHash == nil { - h.payloadHash = new(refs.Checksum) - } - - err = h.payloadHash.FromGRPCMessage(payloadHash) - if err != nil { - return err - } - } - - h.typ = TypeFromGRPCField(v.GetObjectType()) - h.creatEpoch = v.GetCreationEpoch() - h.payloadLen = v.GetPayloadLength() - - return nil -} - -func (a *Attribute) ToGRPCMessage() grpc.Message { - var m *object.Header_Attribute - - if a != nil { - m = new(object.Header_Attribute) - - m.SetKey(a.key) - m.SetValue(a.val) - } - - return m -} - -func (a *Attribute) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.Header_Attribute) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - a.key = v.GetKey() - a.val = v.GetValue() - - return nil -} - -func AttributesToGRPC(xs []Attribute) (res []object.Header_Attribute) { - if xs != nil { - res = make([]object.Header_Attribute, 0, len(xs)) - - for i := range xs { - res = append(res, *xs[i].ToGRPCMessage().(*object.Header_Attribute)) - } - } - - return -} - -func AttributesFromGRPC(xs []object.Header_Attribute) (res []Attribute, err error) { - if xs != nil { - res = make([]Attribute, len(xs)) - - for i := range xs { - err = res[i].FromGRPCMessage(&xs[i]) - if err != nil { - return - } - } - } - - return -} - -func (h *SplitHeader) ToGRPCMessage() grpc.Message { - var m *object.Header_Split - - if h != nil { - m = new(object.Header_Split) - - m.SetParent(h.par.ToGRPCMessage().(*refsGRPC.ObjectID)) - m.SetPrevious(h.prev.ToGRPCMessage().(*refsGRPC.ObjectID)) - m.SetParentHeader(h.parHdr.ToGRPCMessage().(*object.Header)) - m.SetParentSignature(h.parSig.ToGRPCMessage().(*refsGRPC.Signature)) - m.SetChildren(refs.ObjectIDListToGRPCMessage(h.children)) - m.SetSplitId(h.splitID) - } - - return m -} - -func (h *SplitHeader) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.Header_Split) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - par := v.GetParent() - if par == nil { - h.par = nil - } else { - if h.par == nil { - h.par = new(refs.ObjectID) - } - - err = h.par.FromGRPCMessage(par) - if err != nil { - return err - } - } - - prev := v.GetPrevious() - if prev == nil { - h.prev = nil - } else { - if h.prev == nil { - h.prev = new(refs.ObjectID) - } - - err = h.prev.FromGRPCMessage(prev) - if err != nil { - return err - } - } - - parHdr := v.GetParentHeader() - if parHdr == nil { - h.parHdr = nil - } else { - if h.parHdr == nil { - h.parHdr = new(Header) - } - - err = h.parHdr.FromGRPCMessage(parHdr) - if err != nil { - return err - } - } - - parSig := v.GetParentSignature() - if parSig == nil { - h.parSig = nil - } else { - if h.parSig == nil { - h.parSig = new(refs.Signature) - } - - err = h.parSig.FromGRPCMessage(parSig) - if err != nil { - return err - } - } - - h.children, err = refs.ObjectIDListFromGRPCMessage(v.GetChildren()) - if err != nil { - return err - } - - h.splitID = v.GetSplitId() - - return nil -} - -func (h *ECHeader) ToGRPCMessage() grpc.Message { - var m *object.Header_EC - - if h != nil { - m = new(object.Header_EC) - - m.Parent = h.Parent.ToGRPCMessage().(*refsGRPC.ObjectID) - m.ParentSplitId = h.ParentSplitID - m.ParentSplitParentId = h.ParentSplitParentID.ToGRPCMessage().(*refsGRPC.ObjectID) - m.ParentAttributes = AttributesToGRPC(h.ParentAttributes) - m.Index = h.Index - m.Total = h.Total - m.Header = h.Header - m.HeaderLength = h.HeaderLength - } - - return m -} - -func (h *ECHeader) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.Header_EC) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - par := v.GetParent() - if par == nil { - h.Parent = nil - } else { - if h.Parent == nil { - h.Parent = new(refs.ObjectID) - } - - err = h.Parent.FromGRPCMessage(par) - if err != nil { - return err - } - } - - h.ParentSplitID = v.GetParentSplitId() - - parSplitParentID := v.GetParentSplitParentId() - if parSplitParentID == nil { - h.ParentSplitParentID = nil - } else { - if h.ParentSplitParentID == nil { - h.ParentSplitParentID = new(refs.ObjectID) - } - - err = h.ParentSplitParentID.FromGRPCMessage(parSplitParentID) - if err != nil { - return err - } - } - - if h.ParentAttributes, err = AttributesFromGRPC(v.GetParentAttributes()); err != nil { - return err - } - - h.Index = v.GetIndex() - h.Total = v.GetTotal() - h.Header = v.GetHeader() - h.HeaderLength = v.GetHeaderLength() - return nil -} - -func (h *Header) ToGRPCMessage() grpc.Message { - var m *object.Header - - if h != nil { - m = new(object.Header) - - m.SetVersion(h.version.ToGRPCMessage().(*refsGRPC.Version)) - m.SetPayloadHash(h.payloadHash.ToGRPCMessage().(*refsGRPC.Checksum)) - m.SetOwnerId(h.ownerID.ToGRPCMessage().(*refsGRPC.OwnerID)) - m.SetHomomorphicHash(h.homoHash.ToGRPCMessage().(*refsGRPC.Checksum)) - m.SetContainerId(h.cid.ToGRPCMessage().(*refsGRPC.ContainerID)) - m.SetSessionToken(h.sessionToken.ToGRPCMessage().(*sessionGRPC.SessionToken)) - m.SetSplit(h.split.ToGRPCMessage().(*object.Header_Split)) - m.Ec = h.ec.ToGRPCMessage().(*object.Header_EC) - m.SetAttributes(AttributesToGRPC(h.attr)) - m.SetPayloadLength(h.payloadLen) - m.SetCreationEpoch(h.creatEpoch) - m.SetObjectType(TypeToGRPCField(h.typ)) - } - - return m -} - -func (h *Header) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.Header) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - if err := h.fillVersion(v); err != nil { - return err - } - if err := h.fillPayloadHash(v); err != nil { - return err - } - if err := h.fillOwnerID(v); err != nil { - return err - } - if err := h.fillHomomorphicHash(v); err != nil { - return err - } - if err := h.fillContainerID(v); err != nil { - return err - } - if err := h.fillSessionToken(v); err != nil { - return err - } - if err := h.fillSplitHeader(v); err != nil { - return err - } - if err := h.fillECHeader(v); err != nil { - return err - } - - h.attr, err = AttributesFromGRPC(v.GetAttributes()) - if err != nil { - return err - } - - h.payloadLen = v.GetPayloadLength() - h.creatEpoch = v.GetCreationEpoch() - h.typ = TypeFromGRPCField(v.GetObjectType()) - - return nil -} - -func (h *Header) fillVersion(v *object.Header) error { - version := v.GetVersion() - if version == nil { - h.version = nil - return nil - } - - if h.version == nil { - h.version = new(refs.Version) - } - return h.version.FromGRPCMessage(version) -} - -func (h *Header) fillPayloadHash(v *object.Header) error { - payloadHash := v.GetPayloadHash() - if payloadHash == nil { - h.payloadHash = nil - return nil - } - - if h.payloadHash == nil { - h.payloadHash = new(refs.Checksum) - } - return h.payloadHash.FromGRPCMessage(payloadHash) -} - -func (h *Header) fillOwnerID(v *object.Header) error { - ownerID := v.GetOwnerId() - if ownerID == nil { - h.ownerID = nil - return nil - } - - if h.ownerID == nil { - h.ownerID = new(refs.OwnerID) - } - return h.ownerID.FromGRPCMessage(ownerID) -} - -func (h *Header) fillHomomorphicHash(v *object.Header) error { - homoHash := v.GetHomomorphicHash() - if homoHash == nil { - h.homoHash = nil - return nil - } - - if h.homoHash == nil { - h.homoHash = new(refs.Checksum) - } - return h.homoHash.FromGRPCMessage(homoHash) -} - -func (h *Header) fillContainerID(v *object.Header) error { - cid := v.GetContainerId() - if cid == nil { - h.cid = nil - return nil - } - - if h.cid == nil { - h.cid = new(refs.ContainerID) - } - return h.cid.FromGRPCMessage(cid) -} - -func (h *Header) fillSessionToken(v *object.Header) error { - sessionToken := v.GetSessionToken() - if sessionToken == nil { - h.sessionToken = nil - return nil - } - - if h.sessionToken == nil { - h.sessionToken = new(session.Token) - } - return h.sessionToken.FromGRPCMessage(sessionToken) -} - -func (h *Header) fillSplitHeader(v *object.Header) error { - split := v.GetSplit() - if split == nil { - h.split = nil - return nil - } - - if h.split == nil { - h.split = new(SplitHeader) - } - return h.split.FromGRPCMessage(split) -} - -func (h *Header) fillECHeader(v *object.Header) error { - ec := v.GetEc() - if ec == nil { - h.ec = nil - return nil - } - - if h.ec == nil { - h.ec = new(ECHeader) - } - return h.ec.FromGRPCMessage(ec) -} - -func (h *HeaderWithSignature) ToGRPCMessage() grpc.Message { - var m *object.HeaderWithSignature - - if h != nil { - m = new(object.HeaderWithSignature) - - m.SetSignature(h.signature.ToGRPCMessage().(*refsGRPC.Signature)) - m.SetHeader(h.header.ToGRPCMessage().(*object.Header)) - } - - return m -} - -func (h *HeaderWithSignature) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.HeaderWithSignature) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - signature := v.GetSignature() - if signature == nil { - h.signature = nil - } else { - if h.signature == nil { - h.signature = new(refs.Signature) - } - - err = h.signature.FromGRPCMessage(signature) - if err != nil { - return err - } - } - - header := v.GetHeader() - if header == nil { - h.header = nil - } else { - if h.header == nil { - h.header = new(Header) - } - - err = h.header.FromGRPCMessage(header) - } - - return err -} - -func (o *Object) ToGRPCMessage() grpc.Message { - var m *object.Object - - if o != nil { - m = new(object.Object) - - m.SetObjectId(o.objectID.ToGRPCMessage().(*refsGRPC.ObjectID)) - m.SetSignature(o.idSig.ToGRPCMessage().(*refsGRPC.Signature)) - m.SetHeader(o.header.ToGRPCMessage().(*object.Header)) - m.SetPayload(o.payload) - } - - return m -} - -func (o *Object) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.Object) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - objectID := v.GetObjectId() - if objectID == nil { - o.objectID = nil - } else { - if o.objectID == nil { - o.objectID = new(refs.ObjectID) - } - - err = o.objectID.FromGRPCMessage(objectID) - if err != nil { - return err - } - } - - idSig := v.GetSignature() - if idSig == nil { - o.idSig = nil - } else { - if o.idSig == nil { - o.idSig = new(refs.Signature) - } - - err = o.idSig.FromGRPCMessage(idSig) - if err != nil { - return err - } - } - - header := v.GetHeader() - if header == nil { - o.header = nil - } else { - if o.header == nil { - o.header = new(Header) - } - - err = o.header.FromGRPCMessage(header) - if err != nil { - return err - } - } - - o.payload = v.GetPayload() - - return nil -} - -func (s *SplitInfo) ToGRPCMessage() grpc.Message { - var m *object.SplitInfo - - if s != nil { - m = new(object.SplitInfo) - - m.SetLastPart(s.lastPart.ToGRPCMessage().(*refsGRPC.ObjectID)) - m.SetLink(s.link.ToGRPCMessage().(*refsGRPC.ObjectID)) - m.SetSplitId(s.splitID) - } - - return m -} - -func (s *SplitInfo) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.SplitInfo) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - lastPart := v.GetLastPart() - if lastPart == nil { - s.lastPart = nil - } else { - if s.lastPart == nil { - s.lastPart = new(refs.ObjectID) - } - - err = s.lastPart.FromGRPCMessage(lastPart) - if err != nil { - return err - } - } - - link := v.GetLink() - if link == nil { - s.link = nil - } else { - if s.link == nil { - s.link = new(refs.ObjectID) - } - - err = s.link.FromGRPCMessage(link) - if err != nil { - return err - } - } - - s.splitID = v.GetSplitId() - - return nil -} - -func (s *ECInfo) ToGRPCMessage() grpc.Message { - var m *object.ECInfo - - if s != nil { - m = new(object.ECInfo) - - if s.Chunks != nil { - chunks := make([]object.ECInfo_Chunk, len(s.Chunks)) - for i := range chunks { - chunks[i] = *s.Chunks[i].ToGRPCMessage().(*object.ECInfo_Chunk) - } - m.Chunks = chunks - } - } - - return m -} - -func (s *ECInfo) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.ECInfo) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - chunks := v.GetChunks() - if chunks == nil { - s.Chunks = nil - } else { - s.Chunks = make([]ECChunk, len(chunks)) - for i := range chunks { - if err := s.Chunks[i].FromGRPCMessage(&chunks[i]); err != nil { - return err - } - } - } - return nil -} - -func (c *ECChunk) ToGRPCMessage() grpc.Message { - var m *object.ECInfo_Chunk - - if c != nil { - m = new(object.ECInfo_Chunk) - - m.Total = c.Total - m.Index = c.Index - m.Id = c.ID.ToGRPCMessage().(*refsGRPC.ObjectID) - } - - return m -} - -func (c *ECChunk) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.ECInfo_Chunk) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - if err := c.ID.FromGRPCMessage(v.GetId()); err != nil { - return err - } - c.Index = v.Index - c.Total = v.Total - - return nil -} - -func (r *GetRequestBody) ToGRPCMessage() grpc.Message { - var m *object.GetRequest_Body - - if r != nil { - m = new(object.GetRequest_Body) - - m.SetAddress(r.addr.ToGRPCMessage().(*refsGRPC.Address)) - m.SetRaw(r.raw) - } - - return m -} - -func (r *GetRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - addr := v.GetAddress() - if addr == nil { - r.addr = nil - } else { - if r.addr == nil { - r.addr = new(refs.Address) - } - - err = r.addr.FromGRPCMessage(addr) - if err != nil { - return err - } - } - - r.raw = v.GetRaw() - - return nil -} - -func (r *GetRequest) ToGRPCMessage() grpc.Message { - var m *object.GetRequest - - if r != nil { - m = new(object.GetRequest) - - m.SetBody(r.body.ToGRPCMessage().(*object.GetRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *GetRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(GetRequestBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *GetObjectPartInit) ToGRPCMessage() grpc.Message { - var m *object.GetResponse_Body_Init - - if r != nil { - m = new(object.GetResponse_Body_Init) - - m.SetObjectId(r.id.ToGRPCMessage().(*refsGRPC.ObjectID)) - m.SetSignature(r.sig.ToGRPCMessage().(*refsGRPC.Signature)) - m.SetHeader(r.hdr.ToGRPCMessage().(*object.Header)) - } - - return m -} - -func (r *GetObjectPartInit) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetResponse_Body_Init) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - id := v.GetObjectId() - if id == nil { - r.id = nil - } else { - if r.id == nil { - r.id = new(refs.ObjectID) - } - - err = r.id.FromGRPCMessage(id) - if err != nil { - return err - } - } - - sig := v.GetSignature() - if sig == nil { - r.sig = nil - } else { - if r.sig == nil { - r.sig = new(refs.Signature) - } - - err = r.sig.FromGRPCMessage(sig) - if err != nil { - return err - } - } - - hdr := v.GetHeader() - if hdr == nil { - r.hdr = nil - } else { - if r.hdr == nil { - r.hdr = new(Header) - } - - err = r.hdr.FromGRPCMessage(hdr) - } - - return err -} - -func (r *GetObjectPartChunk) ToGRPCMessage() grpc.Message { - var m *object.GetResponse_Body_Chunk - - if r != nil { - m = new(object.GetResponse_Body_Chunk) - - m.SetChunk(r.chunk) - } - - return m -} - -func (r *GetObjectPartChunk) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetResponse_Body_Chunk) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - r.chunk = v.GetChunk() - - return nil -} - -func (r *GetResponseBody) ToGRPCMessage() grpc.Message { - var m *object.GetResponse_Body - - if r != nil { - m = new(object.GetResponse_Body) - - switch v := r.GetObjectPart(); t := v.(type) { - case nil: - m.ObjectPart = nil - case *GetObjectPartInit: - m.SetInit(t.ToGRPCMessage().(*object.GetResponse_Body_Init)) - case *GetObjectPartChunk: - m.SetChunk(t.ToGRPCMessage().(*object.GetResponse_Body_Chunk)) - case *SplitInfo: - m.SetSplitInfo(t.ToGRPCMessage().(*object.SplitInfo)) - case *ECInfo: - m.SetEcInfo(t.ToGRPCMessage().(*object.ECInfo)) - default: - panic(fmt.Sprintf("unknown get object part %T", t)) - } - } - - return m -} - -func (r *GetResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - r.objPart = nil - - switch pt := v.GetObjectPart().(type) { - case nil: - case *object.GetResponse_Body_Init_: - if pt != nil { - partInit := new(GetObjectPartInit) - r.objPart = partInit - err = partInit.FromGRPCMessage(pt.Init) - } - case *object.GetResponse_Body_Chunk: - if pt != nil { - partChunk := new(GetObjectPartChunk) - r.objPart = partChunk - err = partChunk.FromGRPCMessage(pt) - } - case *object.GetResponse_Body_SplitInfo: - if pt != nil { - partSplit := new(SplitInfo) - r.objPart = partSplit - err = partSplit.FromGRPCMessage(pt.SplitInfo) - } - case *object.GetResponse_Body_EcInfo: - if pt != nil { - partEC := new(ECInfo) - r.objPart = partEC - err = partEC.FromGRPCMessage(pt.EcInfo) - } - default: - err = fmt.Errorf("unknown get object part %T", pt) - } - - return err -} - -func (r *GetResponse) ToGRPCMessage() grpc.Message { - var m *object.GetResponse - - if r != nil { - m = new(object.GetResponse) - - m.SetBody(r.body.ToGRPCMessage().(*object.GetResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *GetResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(GetResponseBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} - -func (r *PutObjectPartInit) ToGRPCMessage() grpc.Message { - var m *object.PutRequest_Body_Init - - if r != nil { - m = new(object.PutRequest_Body_Init) - - m.SetObjectId(r.id.ToGRPCMessage().(*refsGRPC.ObjectID)) - m.SetSignature(r.sig.ToGRPCMessage().(*refsGRPC.Signature)) - m.SetHeader(r.hdr.ToGRPCMessage().(*object.Header)) - m.SetCopiesNumber(r.copyNum) - } - - return m -} - -func (r *PutObjectPartInit) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PutRequest_Body_Init) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - id := v.GetObjectId() - if id == nil { - r.id = nil - } else { - if r.id == nil { - r.id = new(refs.ObjectID) - } - - err = r.id.FromGRPCMessage(id) - if err != nil { - return err - } - } - - sig := v.GetSignature() - if sig == nil { - r.sig = nil - } else { - if r.sig == nil { - r.sig = new(refs.Signature) - } - - err = r.sig.FromGRPCMessage(sig) - if err != nil { - return err - } - } - - hdr := v.GetHeader() - if hdr == nil { - r.hdr = nil - } else { - if r.hdr == nil { - r.hdr = new(Header) - } - - err = r.hdr.FromGRPCMessage(hdr) - if err != nil { - return err - } - } - - r.copyNum = v.GetCopiesNumber() - - return nil -} - -func (r *PutObjectPartChunk) ToGRPCMessage() grpc.Message { - var m *object.PutRequest_Body_Chunk - - if r != nil { - m = new(object.PutRequest_Body_Chunk) - - m.SetChunk(r.chunk) - } - - return m -} - -func (r *PutObjectPartChunk) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PutRequest_Body_Chunk) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - r.chunk = v.GetChunk() - - return nil -} - -func (r *PutRequestBody) ToGRPCMessage() grpc.Message { - var m *object.PutRequest_Body - - if r != nil { - m = new(object.PutRequest_Body) - - switch v := r.GetObjectPart(); t := v.(type) { - case nil: - m.ObjectPart = nil - case *PutObjectPartInit: - m.SetInit(t.ToGRPCMessage().(*object.PutRequest_Body_Init)) - case *PutObjectPartChunk: - m.SetChunk(t.ToGRPCMessage().(*object.PutRequest_Body_Chunk)) - default: - panic(fmt.Sprintf("unknown put object part %T", t)) - } - } - - return m -} - -func (r *PutRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PutRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - r.objPart = nil - - switch pt := v.GetObjectPart().(type) { - case nil: - case *object.PutRequest_Body_Init_: - if pt != nil { - partInit := new(PutObjectPartInit) - r.objPart = partInit - err = partInit.FromGRPCMessage(pt.Init) - } - case *object.PutRequest_Body_Chunk: - if pt != nil { - partChunk := new(PutObjectPartChunk) - r.objPart = partChunk - err = partChunk.FromGRPCMessage(pt) - } - default: - err = fmt.Errorf("unknown put object part %T", pt) - } - - return err -} - -func (r *PutRequest) ToGRPCMessage() grpc.Message { - var m *object.PutRequest - - if r != nil { - m = new(object.PutRequest) - - m.SetBody(r.body.ToGRPCMessage().(*object.PutRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *PutRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PutRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(PutRequestBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *PutResponseBody) ToGRPCMessage() grpc.Message { - var m *object.PutResponse_Body - - if r != nil { - m = new(object.PutResponse_Body) - - m.SetObjectId(r.id.ToGRPCMessage().(*refsGRPC.ObjectID)) - } - - return m -} - -func (r *PutResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PutResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - id := v.GetObjectId() - if id == nil { - r.id = nil - } else { - if r.id == nil { - r.id = new(refs.ObjectID) - } - - err = r.id.FromGRPCMessage(id) - } - - return err -} - -func (r *PutResponse) ToGRPCMessage() grpc.Message { - var m *object.PutResponse - - if r != nil { - m = new(object.PutResponse) - - m.SetBody(r.body.ToGRPCMessage().(*object.PutResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *PutResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PutResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(PutResponseBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} - -func (r *DeleteRequestBody) ToGRPCMessage() grpc.Message { - var m *object.DeleteRequest_Body - - if r != nil { - m = new(object.DeleteRequest_Body) - - m.SetAddress(r.addr.ToGRPCMessage().(*refsGRPC.Address)) - } - - return m -} - -func (r *DeleteRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.DeleteRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - addr := v.GetAddress() - if addr == nil { - r.addr = nil - } else { - if r.addr == nil { - r.addr = new(refs.Address) - } - - err = r.addr.FromGRPCMessage(addr) - } - - return err -} - -func (r *DeleteRequest) ToGRPCMessage() grpc.Message { - var m *object.DeleteRequest - - if r != nil { - m = new(object.DeleteRequest) - - m.SetBody(r.body.ToGRPCMessage().(*object.DeleteRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *DeleteRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.DeleteRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(DeleteRequestBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *DeleteResponseBody) ToGRPCMessage() grpc.Message { - var m *object.DeleteResponse_Body - - if r != nil { - m = new(object.DeleteResponse_Body) - - m.SetTombstone(r.tombstone.ToGRPCMessage().(*refsGRPC.Address)) - } - - return m -} - -func (r *DeleteResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.DeleteResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - tombstone := v.GetTombstone() - if tombstone == nil { - r.tombstone = nil - } else { - if r.tombstone == nil { - r.tombstone = new(refs.Address) - } - - err = r.tombstone.FromGRPCMessage(tombstone) - } - - return err -} - -func (r *DeleteResponse) ToGRPCMessage() grpc.Message { - var m *object.DeleteResponse - - if r != nil { - m = new(object.DeleteResponse) - - m.SetBody(r.body.ToGRPCMessage().(*object.DeleteResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *DeleteResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.DeleteResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(DeleteResponseBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} - -func (r *HeadRequestBody) ToGRPCMessage() grpc.Message { - var m *object.HeadRequest_Body - - if r != nil { - m = new(object.HeadRequest_Body) - - m.SetAddress(r.addr.ToGRPCMessage().(*refsGRPC.Address)) - m.SetRaw(r.raw) - m.SetMainOnly(r.mainOnly) - } - - return m -} - -func (r *HeadRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.HeadRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - addr := v.GetAddress() - if addr == nil { - r.addr = nil - } else { - if r.addr == nil { - r.addr = new(refs.Address) - } - - err = r.addr.FromGRPCMessage(addr) - if err != nil { - return err - } - } - - r.raw = v.GetRaw() - r.mainOnly = v.GetMainOnly() - - return nil -} - -func (r *HeadRequest) ToGRPCMessage() grpc.Message { - var m *object.HeadRequest - - if r != nil { - m = new(object.HeadRequest) - - m.SetBody(r.body.ToGRPCMessage().(*object.HeadRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *HeadRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.HeadRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(HeadRequestBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *HeadResponseBody) ToGRPCMessage() grpc.Message { - var m *object.HeadResponse_Body - - if r != nil { - m = new(object.HeadResponse_Body) - - switch v := r.hdrPart.(type) { - case nil: - m.Head = nil - case *HeaderWithSignature: - m.SetHeader(v.ToGRPCMessage().(*object.HeaderWithSignature)) - case *ShortHeader: - m.SetShortHeader(v.ToGRPCMessage().(*object.ShortHeader)) - case *SplitInfo: - m.SetSplitInfo(v.ToGRPCMessage().(*object.SplitInfo)) - case *ECInfo: - m.SetEcInfo(v.ToGRPCMessage().(*object.ECInfo)) - default: - panic(fmt.Sprintf("unknown head part %T", v)) - } - } - - return m -} - -func (r *HeadResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.HeadResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - r.hdrPart = nil - - switch pt := v.GetHead().(type) { - case nil: - case *object.HeadResponse_Body_Header: - if pt != nil { - partHdr := new(HeaderWithSignature) - r.hdrPart = partHdr - err = partHdr.FromGRPCMessage(pt.Header) - } - case *object.HeadResponse_Body_ShortHeader: - if pt != nil { - partShort := new(ShortHeader) - r.hdrPart = partShort - err = partShort.FromGRPCMessage(pt.ShortHeader) - } - case *object.HeadResponse_Body_SplitInfo: - if pt != nil { - partSplit := new(SplitInfo) - r.hdrPart = partSplit - err = partSplit.FromGRPCMessage(pt.SplitInfo) - } - case *object.HeadResponse_Body_EcInfo: - if pt != nil { - partEC := new(ECInfo) - r.hdrPart = partEC - err = partEC.FromGRPCMessage(pt.EcInfo) - } - default: - err = fmt.Errorf("unknown head part %T", pt) - } - - return err -} - -func (r *HeadResponse) ToGRPCMessage() grpc.Message { - var m *object.HeadResponse - - if r != nil { - m = new(object.HeadResponse) - - m.SetBody(r.body.ToGRPCMessage().(*object.HeadResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *HeadResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.HeadResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(HeadResponseBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} - -func (f *SearchFilter) ToGRPCMessage() grpc.Message { - var m *object.SearchRequest_Body_Filter - - if f != nil { - m = new(object.SearchRequest_Body_Filter) - - m.SetKey(f.key) - m.SetValue(f.val) - m.SetMatchType(MatchTypeToGRPCField(f.matchType)) - } - - return m -} - -func (f *SearchFilter) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.SearchRequest_Body_Filter) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - f.key = v.GetKey() - f.val = v.GetValue() - f.matchType = MatchTypeFromGRPCField(v.GetMatchType()) - - return nil -} - -func SearchFiltersToGRPC(fs []SearchFilter) (res []object.SearchRequest_Body_Filter) { - if fs != nil { - res = make([]object.SearchRequest_Body_Filter, 0, len(fs)) - - for i := range fs { - res = append(res, *fs[i].ToGRPCMessage().(*object.SearchRequest_Body_Filter)) - } - } - - return -} - -func SearchFiltersFromGRPC(fs []object.SearchRequest_Body_Filter) (res []SearchFilter, err error) { - if fs != nil { - res = make([]SearchFilter, len(fs)) - - for i := range fs { - err = res[i].FromGRPCMessage(&fs[i]) - if err != nil { - return - } - } - } - - return -} - -func (r *SearchRequestBody) ToGRPCMessage() grpc.Message { - var m *object.SearchRequest_Body - - if r != nil { - m = new(object.SearchRequest_Body) - - m.SetContainerId(r.cid.ToGRPCMessage().(*refsGRPC.ContainerID)) - m.SetFilters(SearchFiltersToGRPC(r.filters)) - m.SetVersion(r.version) - } - - return m -} - -func (r *SearchRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.SearchRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - cid := v.GetContainerId() - if cid == nil { - r.cid = nil - } else { - if r.cid == nil { - r.cid = new(refs.ContainerID) - } - - err = r.cid.FromGRPCMessage(cid) - if err != nil { - return err - } - } - - r.filters, err = SearchFiltersFromGRPC(v.GetFilters()) - if err != nil { - return err - } - - r.version = v.GetVersion() - - return nil -} - -func (r *SearchRequest) ToGRPCMessage() grpc.Message { - var m *object.SearchRequest - - if r != nil { - m = new(object.SearchRequest) - - m.SetBody(r.body.ToGRPCMessage().(*object.SearchRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *SearchRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.SearchRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(SearchRequestBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *SearchResponseBody) ToGRPCMessage() grpc.Message { - var m *object.SearchResponse_Body - - if r != nil { - m = new(object.SearchResponse_Body) - - m.SetIdList(refs.ObjectIDListToGRPCMessage(r.idList)) - } - - return m -} - -func (r *SearchResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.SearchResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - r.idList, err = refs.ObjectIDListFromGRPCMessage(v.GetIdList()) - - return err -} - -func (r *SearchResponse) ToGRPCMessage() grpc.Message { - var m *object.SearchResponse - - if r != nil { - m = new(object.SearchResponse) - - m.SetBody(r.body.ToGRPCMessage().(*object.SearchResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *SearchResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.SearchResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(SearchResponseBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} - -func (r *Range) ToGRPCMessage() grpc.Message { - var m *object.Range - - if r != nil { - m = new(object.Range) - - m.SetLength(r.len) - m.SetOffset(r.off) - } - - return m -} - -func (r *Range) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.Range) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - r.len = v.GetLength() - r.off = v.GetOffset() - - return nil -} - -func RangesToGRPC(rs []Range) (res []object.Range) { - if rs != nil { - res = make([]object.Range, 0, len(rs)) - - for i := range rs { - res = append(res, *rs[i].ToGRPCMessage().(*object.Range)) - } - } - - return -} - -func RangesFromGRPC(rs []object.Range) (res []Range, err error) { - if rs != nil { - res = make([]Range, len(rs)) - - for i := range rs { - err = res[i].FromGRPCMessage(&rs[i]) - if err != nil { - return - } - } - } - - return -} - -func (r *GetRangeRequestBody) ToGRPCMessage() grpc.Message { - var m *object.GetRangeRequest_Body - - if r != nil { - m = new(object.GetRangeRequest_Body) - - m.SetAddress(r.addr.ToGRPCMessage().(*refsGRPC.Address)) - m.SetRange(r.rng.ToGRPCMessage().(*object.Range)) - m.SetRaw(r.raw) - } - - return m -} - -func (r *GetRangeRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetRangeRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - addr := v.GetAddress() - if addr == nil { - r.addr = nil - } else { - if r.addr == nil { - r.addr = new(refs.Address) - } - - err = r.addr.FromGRPCMessage(addr) - if err != nil { - return err - } - } - - rng := v.GetRange() - if rng == nil { - r.rng = nil - } else { - if r.rng == nil { - r.rng = new(Range) - } - - err = r.rng.FromGRPCMessage(rng) - if err != nil { - return err - } - } - - r.raw = v.GetRaw() - - return nil -} - -func (r *GetRangeRequest) ToGRPCMessage() grpc.Message { - var m *object.GetRangeRequest - - if r != nil { - m = new(object.GetRangeRequest) - - m.SetBody(r.body.ToGRPCMessage().(*object.GetRangeRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *GetRangeRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetRangeRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(GetRangeRequestBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *GetRangePartChunk) ToGRPCMessage() grpc.Message { - var m *object.GetRangeResponse_Body_Chunk - - if r != nil { - m = new(object.GetRangeResponse_Body_Chunk) - - m.SetChunk(r.chunk) - } - - return m -} - -func (r *GetRangePartChunk) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetRangeResponse_Body_Chunk) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - r.chunk = v.GetChunk() - - return nil -} - -func (r *GetRangeResponseBody) ToGRPCMessage() grpc.Message { - var m *object.GetRangeResponse_Body - - if r != nil { - m = new(object.GetRangeResponse_Body) - - switch v := r.rngPart.(type) { - case nil: - m.RangePart = nil - case *GetRangePartChunk: - m.SetChunk(v.ToGRPCMessage().(*object.GetRangeResponse_Body_Chunk)) - case *SplitInfo: - m.SetSplitInfo(v.ToGRPCMessage().(*object.SplitInfo)) - case *ECInfo: - m.SetEcInfo(v.ToGRPCMessage().(*object.ECInfo)) - default: - panic(fmt.Sprintf("unknown get range part %T", v)) - } - } - - return m -} - -func (r *GetRangeResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetRangeResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - r.rngPart = nil - - switch pt := v.GetRangePart().(type) { - case nil: - case *object.GetRangeResponse_Body_Chunk: - if pt != nil { - partChunk := new(GetRangePartChunk) - r.rngPart = partChunk - err = partChunk.FromGRPCMessage(pt) - } - case *object.GetRangeResponse_Body_SplitInfo: - if pt != nil { - partSplit := new(SplitInfo) - r.rngPart = partSplit - err = partSplit.FromGRPCMessage(pt.SplitInfo) - } - case *object.GetRangeResponse_Body_EcInfo: - if pt != nil { - partEC := new(ECInfo) - r.rngPart = partEC - err = partEC.FromGRPCMessage(pt.EcInfo) - } - default: - err = fmt.Errorf("unknown get range part %T", pt) - } - - return err -} - -func (r *GetRangeResponse) ToGRPCMessage() grpc.Message { - var m *object.GetRangeResponse - - if r != nil { - m = new(object.GetRangeResponse) - - m.SetBody(r.body.ToGRPCMessage().(*object.GetRangeResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *GetRangeResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetRangeResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(GetRangeResponseBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} - -func (r *GetRangeHashRequestBody) ToGRPCMessage() grpc.Message { - var m *object.GetRangeHashRequest_Body - - if r != nil { - m = new(object.GetRangeHashRequest_Body) - - m.SetAddress(r.addr.ToGRPCMessage().(*refsGRPC.Address)) - m.SetRanges(RangesToGRPC(r.rngs)) - m.SetType(refs.ChecksumTypeToGRPC(r.typ)) - m.SetSalt(r.salt) - } - - return m -} - -func (r *GetRangeHashRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetRangeHashRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - addr := v.GetAddress() - if addr == nil { - r.addr = nil - } else { - if r.addr == nil { - r.addr = new(refs.Address) - } - - err = r.addr.FromGRPCMessage(addr) - if err != nil { - return err - } - } - - r.rngs, err = RangesFromGRPC(v.GetRanges()) - if err != nil { - return err - } - - r.typ = refs.ChecksumTypeFromGRPC(v.GetType()) - r.salt = v.GetSalt() - - return nil -} - -func (r *GetRangeHashRequest) ToGRPCMessage() grpc.Message { - var m *object.GetRangeHashRequest - - if r != nil { - m = new(object.GetRangeHashRequest) - - m.SetBody(r.body.ToGRPCMessage().(*object.GetRangeHashRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *GetRangeHashRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetRangeHashRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(GetRangeHashRequestBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *GetRangeHashResponseBody) ToGRPCMessage() grpc.Message { - var m *object.GetRangeHashResponse_Body - - if r != nil { - m = new(object.GetRangeHashResponse_Body) - - m.SetType(refs.ChecksumTypeToGRPC(r.typ)) - m.SetHashList(r.hashList) - } - - return m -} - -func (r *GetRangeHashResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetRangeHashResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - r.typ = refs.ChecksumTypeFromGRPC(v.GetType()) - r.hashList = v.GetHashList() - - return nil -} - -func (r *GetRangeHashResponse) ToGRPCMessage() grpc.Message { - var m *object.GetRangeHashResponse - - if r != nil { - m = new(object.GetRangeHashResponse) - - m.SetBody(r.body.ToGRPCMessage().(*object.GetRangeHashResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *GetRangeHashResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.GetRangeHashResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(GetRangeHashResponseBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} - -func (r *PutSingleRequestBody) ToGRPCMessage() grpc.Message { - var m *object.PutSingleRequest_Body - - if r != nil { - m = new(object.PutSingleRequest_Body) - m.SetObject(r.GetObject().ToGRPCMessage().(*object.Object)) - m.SetCopiesNumber(r.GetCopiesNumber()) - } - - return m -} - -func (r *PutSingleRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PutSingleRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - if v.GetObject() == nil { - r.object = nil - } else { - if r.object == nil { - r.object = new(Object) - } - - err := r.object.FromGRPCMessage(v.GetObject()) - if err != nil { - return err - } - } - - r.copyNum = v.GetCopiesNumber() - - return nil -} - -func (r *PutSingleRequest) ToGRPCMessage() grpc.Message { - var m *object.PutSingleRequest - - if r != nil { - m = new(object.PutSingleRequest) - - m.SetBody(r.body.ToGRPCMessage().(*object.PutSingleRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *PutSingleRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PutSingleRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(PutSingleRequestBody) - } - - err := r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *PutSingleResponseBody) ToGRPCMessage() grpc.Message { - var b *object.PutSingleResponse_Body - if r != nil { - b = new(object.PutSingleResponse_Body) - } - return b -} - -func (r *PutSingleResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PutSingleResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - return nil -} - -func (r *PutSingleResponse) ToGRPCMessage() grpc.Message { - var m *object.PutSingleResponse - - if r != nil { - m = new(object.PutSingleResponse) - - m.SetBody(r.body.ToGRPCMessage().(*object.PutSingleResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *PutSingleResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PutSingleResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(PutSingleResponseBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} - -func (r *PatchRequestBodyPatch) ToGRPCMessage() grpc.Message { - var m *object.PatchRequest_Body_Patch - - if r != nil { - m = new(object.PatchRequest_Body_Patch) - - m.SetSourceRange(r.GetRange().ToGRPCMessage().(*object.Range)) - m.SetChunk(r.GetChunk()) - } - - return m -} - -func (r *PatchRequestBodyPatch) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PatchRequest_Body_Patch) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - srcRange := v.GetSourceRange() - if srcRange == nil { - r.Range = nil - } else { - if r.Range == nil { - r.Range = new(Range) - } - - err = r.Range.FromGRPCMessage(srcRange) - if err != nil { - return err - } - } - - r.Chunk = v.GetChunk() - - return nil -} - -func (r *PatchRequestBody) ToGRPCMessage() grpc.Message { - var m *object.PatchRequest_Body - - if r != nil { - m = new(object.PatchRequest_Body) - - m.SetAddress(r.address.ToGRPCMessage().(*refsGRPC.Address)) - m.SetNewAttributes(AttributesToGRPC(r.newAttributes)) - m.SetReplaceAttributes(r.replaceAttributes) - m.SetPatch(r.patch.ToGRPCMessage().(*object.PatchRequest_Body_Patch)) - } - - return m -} - -func (r *PatchRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PatchRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - addr := v.GetAddress() - if addr == nil { - r.address = nil - } else { - if r.address == nil { - r.address = new(refs.Address) - } - - err = r.address.FromGRPCMessage(addr) - if err != nil { - return err - } - } - - r.newAttributes, err = AttributesFromGRPC(v.GetNewAttributes()) - if err != nil { - return err - } - - r.replaceAttributes = v.GetReplaceAttributes() - - patch := v.GetPatch() - if patch == nil { - r.patch = nil - } else { - if r.patch == nil { - r.patch = new(PatchRequestBodyPatch) - } - - err = r.patch.FromGRPCMessage(patch) - if err != nil { - return err - } - } - - return nil -} - -func (r *PatchRequest) ToGRPCMessage() grpc.Message { - var m *object.PatchRequest - - if r != nil { - m = new(object.PatchRequest) - - m.SetBody(r.body.ToGRPCMessage().(*object.PatchRequest_Body)) - r.RequestHeaders.ToMessage(m) - } - - return m -} - -func (r *PatchRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PatchRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.body = nil - } else { - if r.body == nil { - r.body = new(PatchRequestBody) - } - - err = r.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.RequestHeaders.FromMessage(v) -} - -func (r *PatchResponseBody) ToGRPCMessage() grpc.Message { - var m *object.PatchResponse_Body - - if r != nil { - m = new(object.PatchResponse_Body) - - m.SetObjectId(r.ObjectID.ToGRPCMessage().(*refsGRPC.ObjectID)) - } - - return m -} - -func (r *PatchResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PatchResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - objID := v.GetObjectId() - if objID == nil { - r.ObjectID = nil - } else { - if r.ObjectID == nil { - r.ObjectID = new(refs.ObjectID) - } - - err = r.ObjectID.FromGRPCMessage(objID) - if err != nil { - return err - } - } - - return nil -} - -func (r *PatchResponse) ToGRPCMessage() grpc.Message { - var m *object.PatchResponse - - if r != nil { - m = new(object.PatchResponse) - - m.SetBody(r.Body.ToGRPCMessage().(*object.PatchResponse_Body)) - r.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (r *PatchResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*object.PatchResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - r.Body = nil - } else { - if r.Body == nil { - r.Body = new(PatchResponseBody) - } - - err = r.Body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return r.ResponseHeaders.FromMessage(v) -} diff --git a/object/filters.go b/object/filters.go deleted file mode 100644 index 9fe024d..0000000 --- a/object/filters.go +++ /dev/null @@ -1,58 +0,0 @@ -package object - -// ReservedFilterPrefix is a prefix of key to object header value or property. -const ReservedFilterPrefix = "$Object:" - -const ( - // FilterHeaderVersion is a filter key to "version" field of the object header. - FilterHeaderVersion = ReservedFilterPrefix + "version" - - // FilterHeaderObjectID is a filter key to "object_id" field of the object. - FilterHeaderObjectID = ReservedFilterPrefix + "objectID" - - // FilterHeaderContainerID is a filter key to "container_id" field of the object header. - FilterHeaderContainerID = ReservedFilterPrefix + "containerID" - - // FilterHeaderOwnerID is a filter key to "owner_id" field of the object header. - FilterHeaderOwnerID = ReservedFilterPrefix + "ownerID" - - // FilterHeaderCreationEpoch is a filter key to "creation_epoch" field of the object header. - FilterHeaderCreationEpoch = ReservedFilterPrefix + "creationEpoch" - - // FilterHeaderPayloadLength is a filter key to "payload_length" field of the object header. - FilterHeaderPayloadLength = ReservedFilterPrefix + "payloadLength" - - // FilterHeaderPayloadHash is a filter key to "payload_hash" field of the object header. - FilterHeaderPayloadHash = ReservedFilterPrefix + "payloadHash" - - // FilterHeaderObjectType is a filter key to "object_type" field of the object header. - FilterHeaderObjectType = ReservedFilterPrefix + "objectType" - - // FilterHeaderHomomorphicHash is a filter key to "homomorphic_hash" field of the object header. - FilterHeaderHomomorphicHash = ReservedFilterPrefix + "homomorphicHash" - - // FilterHeaderParent is a filter key to "split.parent" field of the object header. - FilterHeaderParent = ReservedFilterPrefix + "split.parent" - - // FilterHeaderSplitID is a filter key to "split.splitID" field of the object header. - FilterHeaderSplitID = ReservedFilterPrefix + "split.splitID" - - // FilterHeaderECParent is a filter key to "ec.parent" field of the object header. - FilterHeaderECParent = ReservedFilterPrefix + "ec.parent" -) - -const ( - // FilterPropertyRoot is a filter key to check if regular object is on top of split hierarchy. - FilterPropertyRoot = ReservedFilterPrefix + "ROOT" - - // FilterPropertyPhy is a filter key to check if an object physically stored on a node. - FilterPropertyPhy = ReservedFilterPrefix + "PHY" -) - -const ( - // BooleanPropertyValueTrue is a true value for boolean property filters. - BooleanPropertyValueTrue = "true" - - // BooleanPropertyValueFalse is a false value for boolean property filters. - BooleanPropertyValueFalse = "" -) diff --git a/object/grpc/client.go b/object/grpc/client.go deleted file mode 100644 index 35028cf..0000000 --- a/object/grpc/client.go +++ /dev/null @@ -1,86 +0,0 @@ -package object - -import ( - "context" - "errors" - - "google.golang.org/grpc" -) - -// Client wraps ObjectServiceClient -// with pre-defined configurations. -type Client struct { - *cfg - - client ObjectServiceClient -} - -// Option represents Client option. -type Option func(*cfg) - -type cfg struct { - callOpts []grpc.CallOption -} - -// ErrNilObjectServiceClient is returned by functions that expect -// a non-nil ObjectServiceClient, but received nil. -var ErrNilObjectServiceClient = errors.New("object gRPC client is nil") - -func defaultCfg() *cfg { - return new(cfg) -} - -// NewClient creates, initializes and returns a new Client instance. -// -// Options are applied one by one in order. -func NewClient(c ObjectServiceClient, opts ...Option) (*Client, error) { - if c == nil { - return nil, ErrNilObjectServiceClient - } - - cfg := defaultCfg() - for i := range opts { - opts[i](cfg) - } - - return &Client{ - cfg: cfg, - client: c, - }, nil -} - -func (c *Client) Get(ctx context.Context, req *GetRequest) (ObjectService_GetClient, error) { - return c.client.Get(ctx, req, c.callOpts...) -} - -func (c *Client) Put(ctx context.Context) (ObjectService_PutClient, error) { - return c.client.Put(ctx, c.callOpts...) -} - -func (c *Client) Head(ctx context.Context, req *HeadRequest) (*HeadResponse, error) { - return c.client.Head(ctx, req, c.callOpts...) -} - -func (c *Client) Search(ctx context.Context, req *SearchRequest) (ObjectService_SearchClient, error) { - return c.client.Search(ctx, req, c.callOpts...) -} - -func (c *Client) Delete(ctx context.Context, req *DeleteRequest) (*DeleteResponse, error) { - return c.client.Delete(ctx, req, c.callOpts...) -} - -func (c *Client) GetRange(ctx context.Context, req *GetRangeRequest) (ObjectService_GetRangeClient, error) { - return c.client.GetRange(ctx, req, c.callOpts...) -} - -func (c *Client) GetRangeHash(ctx context.Context, req *GetRangeHashRequest) (*GetRangeHashResponse, error) { - return c.client.GetRangeHash(ctx, req, c.callOpts...) -} - -// WithCallOptions returns Option that configures -// Client to attach call options to each rpc call. -func WithCallOptions(opts []grpc.CallOption) Option { - return func(c *cfg) { - c.callOpts = opts - } -} diff --git a/object/grpc/service_frostfs.pb.go b/object/grpc/service_frostfs.pb.go deleted file mode 100644 index a55a41b..0000000 --- a/object/grpc/service_frostfs.pb.go +++ /dev/null @@ -1,9389 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package object - -import ( - json "encoding/json" - fmt "fmt" - grpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - grpc1 "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" - strconv "strconv" -) - -type GetRequest_Body struct { - Address *grpc.Address `json:"address"` - Raw bool `json:"raw"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*GetRequest_Body)(nil) - _ json.Marshaler = (*GetRequest_Body)(nil) - _ json.Unmarshaler = (*GetRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Address) - size += proto.BoolSize(2, x.Raw) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Address != nil { - x.Address.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Raw { - mm.AppendBool(2, x.Raw) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetRequest_Body") - } - switch fc.FieldNum { - case 1: // Address - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Address") - } - x.Address = new(grpc.Address) - if err := x.Address.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Raw - data, ok := fc.Bool() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Raw") - } - x.Raw = data - } - } - return nil -} -func (x *GetRequest_Body) GetAddress() *grpc.Address { - if x != nil { - return x.Address - } - return nil -} -func (x *GetRequest_Body) SetAddress(v *grpc.Address) { - x.Address = v -} -func (x *GetRequest_Body) GetRaw() bool { - if x != nil { - return x.Raw - } - return false -} -func (x *GetRequest_Body) SetRaw(v bool) { - x.Raw = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"address\":" - out.RawString(prefix) - x.Address.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"raw\":" - out.RawString(prefix) - out.Bool(x.Raw) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "address": - { - var f *grpc.Address - f = new(grpc.Address) - f.UnmarshalEasyJSON(in) - x.Address = f - } - case "raw": - { - var f bool - f = in.Bool() - x.Raw = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetRequest struct { - Body *GetRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetRequest)(nil) - _ encoding.ProtoUnmarshaler = (*GetRequest)(nil) - _ json.Marshaler = (*GetRequest)(nil) - _ json.Unmarshaler = (*GetRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *GetRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *GetRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(GetRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *GetRequest) GetBody() *GetRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *GetRequest) SetBody(v *GetRequest_Body) { - x.Body = v -} -func (x *GetRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *GetRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *GetRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *GetRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *GetRequest_Body - f = new(GetRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetResponse_Body_Init struct { - ObjectId *grpc.ObjectID `json:"objectId"` - Signature *grpc.Signature `json:"signature"` - Header *Header `json:"header"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetResponse_Body_Init)(nil) - _ encoding.ProtoUnmarshaler = (*GetResponse_Body_Init)(nil) - _ json.Marshaler = (*GetResponse_Body_Init)(nil) - _ json.Unmarshaler = (*GetResponse_Body_Init)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetResponse_Body_Init) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.ObjectId) - size += proto.NestedStructureSize(2, x.Signature) - size += proto.NestedStructureSize(3, x.Header) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetResponse_Body_Init) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetResponse_Body_Init) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.ObjectId != nil { - x.ObjectId.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Signature != nil { - x.Signature.EmitProtobuf(mm.AppendMessage(2)) - } - if x.Header != nil { - x.Header.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetResponse_Body_Init) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetResponse_Body_Init") - } - switch fc.FieldNum { - case 1: // ObjectId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ObjectId") - } - x.ObjectId = new(grpc.ObjectID) - if err := x.ObjectId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Signature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Signature") - } - x.Signature = new(grpc.Signature) - if err := x.Signature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // Header - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Header") - } - x.Header = new(Header) - if err := x.Header.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *GetResponse_Body_Init) GetObjectId() *grpc.ObjectID { - if x != nil { - return x.ObjectId - } - return nil -} -func (x *GetResponse_Body_Init) SetObjectId(v *grpc.ObjectID) { - x.ObjectId = v -} -func (x *GetResponse_Body_Init) GetSignature() *grpc.Signature { - if x != nil { - return x.Signature - } - return nil -} -func (x *GetResponse_Body_Init) SetSignature(v *grpc.Signature) { - x.Signature = v -} -func (x *GetResponse_Body_Init) GetHeader() *Header { - if x != nil { - return x.Header - } - return nil -} -func (x *GetResponse_Body_Init) SetHeader(v *Header) { - x.Header = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetResponse_Body_Init) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetResponse_Body_Init) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"objectId\":" - out.RawString(prefix) - x.ObjectId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"signature\":" - out.RawString(prefix) - x.Signature.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"header\":" - out.RawString(prefix) - x.Header.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetResponse_Body_Init) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetResponse_Body_Init) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "objectId": - { - var f *grpc.ObjectID - f = new(grpc.ObjectID) - f.UnmarshalEasyJSON(in) - x.ObjectId = f - } - case "signature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.Signature = f - } - case "header": - { - var f *Header - f = new(Header) - f.UnmarshalEasyJSON(in) - x.Header = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetResponse_Body struct { - ObjectPart isGetResponse_Body_ObjectPart -} - -var ( - _ encoding.ProtoMarshaler = (*GetResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*GetResponse_Body)(nil) - _ json.Marshaler = (*GetResponse_Body)(nil) - _ json.Unmarshaler = (*GetResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - if inner, ok := x.ObjectPart.(*GetResponse_Body_Init_); ok { - size += proto.NestedStructureSize(1, inner.Init) - } - if inner, ok := x.ObjectPart.(*GetResponse_Body_Chunk); ok { - size += proto.BytesSize(2, inner.Chunk) - } - if inner, ok := x.ObjectPart.(*GetResponse_Body_SplitInfo); ok { - size += proto.NestedStructureSize(3, inner.SplitInfo) - } - if inner, ok := x.ObjectPart.(*GetResponse_Body_EcInfo); ok { - size += proto.NestedStructureSize(4, inner.EcInfo) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if inner, ok := x.ObjectPart.(*GetResponse_Body_Init_); ok { - if inner.Init != nil { - inner.Init.EmitProtobuf(mm.AppendMessage(1)) - } - } - if inner, ok := x.ObjectPart.(*GetResponse_Body_Chunk); ok { - if len(inner.Chunk) != 0 { - mm.AppendBytes(2, inner.Chunk) - } - } - if inner, ok := x.ObjectPart.(*GetResponse_Body_SplitInfo); ok { - if inner.SplitInfo != nil { - inner.SplitInfo.EmitProtobuf(mm.AppendMessage(3)) - } - } - if inner, ok := x.ObjectPart.(*GetResponse_Body_EcInfo); ok { - if inner.EcInfo != nil { - inner.EcInfo.EmitProtobuf(mm.AppendMessage(4)) - } - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetResponse_Body") - } - switch fc.FieldNum { - case 1: // Init - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Init") - } - oneofField := &GetResponse_Body_Init_{Init: new(GetResponse_Body_Init)} - if err := oneofField.Init.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - x.ObjectPart = oneofField - case 2: // Chunk - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Chunk") - } - x.ObjectPart = &GetResponse_Body_Chunk{Chunk: data} - case 3: // SplitInfo - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "SplitInfo") - } - oneofField := &GetResponse_Body_SplitInfo{SplitInfo: new(SplitInfo)} - if err := oneofField.SplitInfo.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - x.ObjectPart = oneofField - case 4: // EcInfo - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "EcInfo") - } - oneofField := &GetResponse_Body_EcInfo{EcInfo: new(ECInfo)} - if err := oneofField.EcInfo.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - x.ObjectPart = oneofField - } - } - return nil -} -func (x *GetResponse_Body) GetObjectPart() isGetResponse_Body_ObjectPart { - if x != nil { - return x.ObjectPart - } - return nil -} -func (x *GetResponse_Body) SetObjectPart(v isGetResponse_Body_ObjectPart) { - x.ObjectPart = v -} -func (x *GetResponse_Body) GetInit() *GetResponse_Body_Init { - if xx, ok := x.GetObjectPart().(*GetResponse_Body_Init_); ok { - return xx.Init - } - return nil -} -func (x *GetResponse_Body) SetInit(v *GetResponse_Body_Init) { - x.ObjectPart = &GetResponse_Body_Init_{Init: v} -} -func (x *GetResponse_Body) GetChunk() []byte { - if xx, ok := x.GetObjectPart().(*GetResponse_Body_Chunk); ok { - return xx.Chunk - } - return nil -} -func (x *GetResponse_Body) SetChunk(v *GetResponse_Body_Chunk) { - x.ObjectPart = v -} -func (x *GetResponse_Body_Chunk) GetChunk() []byte { - if x != nil { - return x.Chunk - } - return nil -} -func (x *GetResponse_Body_Chunk) SetChunk(v []byte) { - x.Chunk = v -} -func (x *GetResponse_Body) GetSplitInfo() *SplitInfo { - if xx, ok := x.GetObjectPart().(*GetResponse_Body_SplitInfo); ok { - return xx.SplitInfo - } - return nil -} -func (x *GetResponse_Body) SetSplitInfo(v *SplitInfo) { - x.ObjectPart = &GetResponse_Body_SplitInfo{SplitInfo: v} -} -func (x *GetResponse_Body) GetEcInfo() *ECInfo { - if xx, ok := x.GetObjectPart().(*GetResponse_Body_EcInfo); ok { - return xx.EcInfo - } - return nil -} -func (x *GetResponse_Body) SetEcInfo(v *ECInfo) { - x.ObjectPart = &GetResponse_Body_EcInfo{EcInfo: v} -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - switch xx := x.ObjectPart.(type) { - case *GetResponse_Body_Init_: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"init\":" - out.RawString(prefix) - xx.Init.MarshalEasyJSON(out) - } - case *GetResponse_Body_Chunk: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"chunk\":" - out.RawString(prefix) - if xx.Chunk != nil { - out.Base64Bytes(xx.Chunk) - } else { - out.String("") - } - } - case *GetResponse_Body_SplitInfo: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"splitInfo\":" - out.RawString(prefix) - xx.SplitInfo.MarshalEasyJSON(out) - } - case *GetResponse_Body_EcInfo: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ecInfo\":" - out.RawString(prefix) - xx.EcInfo.MarshalEasyJSON(out) - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "init": - xx := new(GetResponse_Body_Init_) - x.ObjectPart = xx - { - var f *GetResponse_Body_Init - f = new(GetResponse_Body_Init) - f.UnmarshalEasyJSON(in) - xx.Init = f - } - case "chunk": - xx := new(GetResponse_Body_Chunk) - x.ObjectPart = xx - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - xx.Chunk = f - } - case "splitInfo": - xx := new(GetResponse_Body_SplitInfo) - x.ObjectPart = xx - { - var f *SplitInfo - f = new(SplitInfo) - f.UnmarshalEasyJSON(in) - xx.SplitInfo = f - } - case "ecInfo": - xx := new(GetResponse_Body_EcInfo) - x.ObjectPart = xx - { - var f *ECInfo - f = new(ECInfo) - f.UnmarshalEasyJSON(in) - xx.EcInfo = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type isGetResponse_Body_ObjectPart interface { - isGetResponse_Body_ObjectPart() -} - -type GetResponse_Body_Init_ struct { - Init *GetResponse_Body_Init -} - -type GetResponse_Body_Chunk struct { - Chunk []byte -} - -type GetResponse_Body_SplitInfo struct { - SplitInfo *SplitInfo -} - -type GetResponse_Body_EcInfo struct { - EcInfo *ECInfo -} - -func (*GetResponse_Body_Init_) isGetResponse_Body_ObjectPart() {} - -func (*GetResponse_Body_Chunk) isGetResponse_Body_ObjectPart() {} - -func (*GetResponse_Body_SplitInfo) isGetResponse_Body_ObjectPart() {} - -func (*GetResponse_Body_EcInfo) isGetResponse_Body_ObjectPart() {} - -type GetResponse struct { - Body *GetResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetResponse)(nil) - _ encoding.ProtoUnmarshaler = (*GetResponse)(nil) - _ json.Marshaler = (*GetResponse)(nil) - _ json.Unmarshaler = (*GetResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *GetResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *GetResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(GetResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *GetResponse) GetBody() *GetResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *GetResponse) SetBody(v *GetResponse_Body) { - x.Body = v -} -func (x *GetResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *GetResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *GetResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *GetResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *GetResponse_Body - f = new(GetResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PutRequest_Body_Init struct { - ObjectId *grpc.ObjectID `json:"objectId"` - Signature *grpc.Signature `json:"signature"` - Header *Header `json:"header"` - CopiesNumber []uint32 `json:"copiesNumber"` -} - -var ( - _ encoding.ProtoMarshaler = (*PutRequest_Body_Init)(nil) - _ encoding.ProtoUnmarshaler = (*PutRequest_Body_Init)(nil) - _ json.Marshaler = (*PutRequest_Body_Init)(nil) - _ json.Unmarshaler = (*PutRequest_Body_Init)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutRequest_Body_Init) StableSize() (size int) { - if x == nil { - return 0 - } - var n int - size += proto.NestedStructureSize(1, x.ObjectId) - size += proto.NestedStructureSize(2, x.Signature) - size += proto.NestedStructureSize(3, x.Header) - n, _ = proto.RepeatedUInt32Size(4, x.CopiesNumber) - size += n - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutRequest_Body_Init) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutRequest_Body_Init) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.ObjectId != nil { - x.ObjectId.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Signature != nil { - x.Signature.EmitProtobuf(mm.AppendMessage(2)) - } - if x.Header != nil { - x.Header.EmitProtobuf(mm.AppendMessage(3)) - } - if len(x.CopiesNumber) != 0 { - mm.AppendUint32s(4, x.CopiesNumber) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutRequest_Body_Init) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutRequest_Body_Init") - } - switch fc.FieldNum { - case 1: // ObjectId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ObjectId") - } - x.ObjectId = new(grpc.ObjectID) - if err := x.ObjectId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Signature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Signature") - } - x.Signature = new(grpc.Signature) - if err := x.Signature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // Header - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Header") - } - x.Header = new(Header) - if err := x.Header.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 4: // CopiesNumber - data, ok := fc.UnpackUint32s(nil) - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "CopiesNumber") - } - x.CopiesNumber = data - } - } - return nil -} -func (x *PutRequest_Body_Init) GetObjectId() *grpc.ObjectID { - if x != nil { - return x.ObjectId - } - return nil -} -func (x *PutRequest_Body_Init) SetObjectId(v *grpc.ObjectID) { - x.ObjectId = v -} -func (x *PutRequest_Body_Init) GetSignature() *grpc.Signature { - if x != nil { - return x.Signature - } - return nil -} -func (x *PutRequest_Body_Init) SetSignature(v *grpc.Signature) { - x.Signature = v -} -func (x *PutRequest_Body_Init) GetHeader() *Header { - if x != nil { - return x.Header - } - return nil -} -func (x *PutRequest_Body_Init) SetHeader(v *Header) { - x.Header = v -} -func (x *PutRequest_Body_Init) GetCopiesNumber() []uint32 { - if x != nil { - return x.CopiesNumber - } - return nil -} -func (x *PutRequest_Body_Init) SetCopiesNumber(v []uint32) { - x.CopiesNumber = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutRequest_Body_Init) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutRequest_Body_Init) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"objectId\":" - out.RawString(prefix) - x.ObjectId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"signature\":" - out.RawString(prefix) - x.Signature.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"header\":" - out.RawString(prefix) - x.Header.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"copiesNumber\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.CopiesNumber { - if i != 0 { - out.RawByte(',') - } - out.Uint32(x.CopiesNumber[i]) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutRequest_Body_Init) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutRequest_Body_Init) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "objectId": - { - var f *grpc.ObjectID - f = new(grpc.ObjectID) - f.UnmarshalEasyJSON(in) - x.ObjectId = f - } - case "signature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.Signature = f - } - case "header": - { - var f *Header - f = new(Header) - f.UnmarshalEasyJSON(in) - x.Header = f - } - case "copiesNumber": - { - var f uint32 - var list []uint32 - in.Delim('[') - for !in.IsDelim(']') { - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - list = append(list, f) - in.WantComma() - } - x.CopiesNumber = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PutRequest_Body struct { - ObjectPart isPutRequest_Body_ObjectPart -} - -var ( - _ encoding.ProtoMarshaler = (*PutRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*PutRequest_Body)(nil) - _ json.Marshaler = (*PutRequest_Body)(nil) - _ json.Unmarshaler = (*PutRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - if inner, ok := x.ObjectPart.(*PutRequest_Body_Init_); ok { - size += proto.NestedStructureSize(1, inner.Init) - } - if inner, ok := x.ObjectPart.(*PutRequest_Body_Chunk); ok { - size += proto.BytesSize(2, inner.Chunk) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if inner, ok := x.ObjectPart.(*PutRequest_Body_Init_); ok { - if inner.Init != nil { - inner.Init.EmitProtobuf(mm.AppendMessage(1)) - } - } - if inner, ok := x.ObjectPart.(*PutRequest_Body_Chunk); ok { - if len(inner.Chunk) != 0 { - mm.AppendBytes(2, inner.Chunk) - } - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutRequest_Body") - } - switch fc.FieldNum { - case 1: // Init - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Init") - } - oneofField := &PutRequest_Body_Init_{Init: new(PutRequest_Body_Init)} - if err := oneofField.Init.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - x.ObjectPart = oneofField - case 2: // Chunk - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Chunk") - } - x.ObjectPart = &PutRequest_Body_Chunk{Chunk: data} - } - } - return nil -} -func (x *PutRequest_Body) GetObjectPart() isPutRequest_Body_ObjectPart { - if x != nil { - return x.ObjectPart - } - return nil -} -func (x *PutRequest_Body) SetObjectPart(v isPutRequest_Body_ObjectPart) { - x.ObjectPart = v -} -func (x *PutRequest_Body) GetInit() *PutRequest_Body_Init { - if xx, ok := x.GetObjectPart().(*PutRequest_Body_Init_); ok { - return xx.Init - } - return nil -} -func (x *PutRequest_Body) SetInit(v *PutRequest_Body_Init) { - x.ObjectPart = &PutRequest_Body_Init_{Init: v} -} -func (x *PutRequest_Body) GetChunk() []byte { - if xx, ok := x.GetObjectPart().(*PutRequest_Body_Chunk); ok { - return xx.Chunk - } - return nil -} -func (x *PutRequest_Body) SetChunk(v *PutRequest_Body_Chunk) { - x.ObjectPart = v -} -func (x *PutRequest_Body_Chunk) GetChunk() []byte { - if x != nil { - return x.Chunk - } - return nil -} -func (x *PutRequest_Body_Chunk) SetChunk(v []byte) { - x.Chunk = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - switch xx := x.ObjectPart.(type) { - case *PutRequest_Body_Init_: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"init\":" - out.RawString(prefix) - xx.Init.MarshalEasyJSON(out) - } - case *PutRequest_Body_Chunk: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"chunk\":" - out.RawString(prefix) - if xx.Chunk != nil { - out.Base64Bytes(xx.Chunk) - } else { - out.String("") - } - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "init": - xx := new(PutRequest_Body_Init_) - x.ObjectPart = xx - { - var f *PutRequest_Body_Init - f = new(PutRequest_Body_Init) - f.UnmarshalEasyJSON(in) - xx.Init = f - } - case "chunk": - xx := new(PutRequest_Body_Chunk) - x.ObjectPart = xx - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - xx.Chunk = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type isPutRequest_Body_ObjectPart interface { - isPutRequest_Body_ObjectPart() -} - -type PutRequest_Body_Init_ struct { - Init *PutRequest_Body_Init -} - -type PutRequest_Body_Chunk struct { - Chunk []byte -} - -func (*PutRequest_Body_Init_) isPutRequest_Body_ObjectPart() {} - -func (*PutRequest_Body_Chunk) isPutRequest_Body_ObjectPart() {} - -type PutRequest struct { - Body *PutRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*PutRequest)(nil) - _ encoding.ProtoUnmarshaler = (*PutRequest)(nil) - _ json.Marshaler = (*PutRequest)(nil) - _ json.Unmarshaler = (*PutRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *PutRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *PutRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(PutRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PutRequest) GetBody() *PutRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *PutRequest) SetBody(v *PutRequest_Body) { - x.Body = v -} -func (x *PutRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *PutRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *PutRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *PutRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *PutRequest_Body - f = new(PutRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PutResponse_Body struct { - ObjectId *grpc.ObjectID `json:"objectId"` -} - -var ( - _ encoding.ProtoMarshaler = (*PutResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*PutResponse_Body)(nil) - _ json.Marshaler = (*PutResponse_Body)(nil) - _ json.Unmarshaler = (*PutResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.ObjectId) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.ObjectId != nil { - x.ObjectId.EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutResponse_Body") - } - switch fc.FieldNum { - case 1: // ObjectId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ObjectId") - } - x.ObjectId = new(grpc.ObjectID) - if err := x.ObjectId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PutResponse_Body) GetObjectId() *grpc.ObjectID { - if x != nil { - return x.ObjectId - } - return nil -} -func (x *PutResponse_Body) SetObjectId(v *grpc.ObjectID) { - x.ObjectId = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"objectId\":" - out.RawString(prefix) - x.ObjectId.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "objectId": - { - var f *grpc.ObjectID - f = new(grpc.ObjectID) - f.UnmarshalEasyJSON(in) - x.ObjectId = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PutResponse struct { - Body *PutResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*PutResponse)(nil) - _ encoding.ProtoUnmarshaler = (*PutResponse)(nil) - _ json.Marshaler = (*PutResponse)(nil) - _ json.Unmarshaler = (*PutResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *PutResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *PutResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(PutResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PutResponse) GetBody() *PutResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *PutResponse) SetBody(v *PutResponse_Body) { - x.Body = v -} -func (x *PutResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *PutResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *PutResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *PutResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *PutResponse_Body - f = new(PutResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type DeleteRequest_Body struct { - Address *grpc.Address `json:"address"` -} - -var ( - _ encoding.ProtoMarshaler = (*DeleteRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*DeleteRequest_Body)(nil) - _ json.Marshaler = (*DeleteRequest_Body)(nil) - _ json.Unmarshaler = (*DeleteRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *DeleteRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Address) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *DeleteRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *DeleteRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Address != nil { - x.Address.EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *DeleteRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "DeleteRequest_Body") - } - switch fc.FieldNum { - case 1: // Address - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Address") - } - x.Address = new(grpc.Address) - if err := x.Address.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *DeleteRequest_Body) GetAddress() *grpc.Address { - if x != nil { - return x.Address - } - return nil -} -func (x *DeleteRequest_Body) SetAddress(v *grpc.Address) { - x.Address = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *DeleteRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *DeleteRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"address\":" - out.RawString(prefix) - x.Address.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *DeleteRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *DeleteRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "address": - { - var f *grpc.Address - f = new(grpc.Address) - f.UnmarshalEasyJSON(in) - x.Address = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type DeleteRequest struct { - Body *DeleteRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*DeleteRequest)(nil) - _ encoding.ProtoUnmarshaler = (*DeleteRequest)(nil) - _ json.Marshaler = (*DeleteRequest)(nil) - _ json.Unmarshaler = (*DeleteRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *DeleteRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *DeleteRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *DeleteRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *DeleteRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *DeleteRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *DeleteRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "DeleteRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(DeleteRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *DeleteRequest) GetBody() *DeleteRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *DeleteRequest) SetBody(v *DeleteRequest_Body) { - x.Body = v -} -func (x *DeleteRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *DeleteRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *DeleteRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *DeleteRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *DeleteRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *DeleteRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *DeleteRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *DeleteRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *DeleteRequest_Body - f = new(DeleteRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type DeleteResponse_Body struct { - Tombstone *grpc.Address `json:"tombstone"` -} - -var ( - _ encoding.ProtoMarshaler = (*DeleteResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*DeleteResponse_Body)(nil) - _ json.Marshaler = (*DeleteResponse_Body)(nil) - _ json.Unmarshaler = (*DeleteResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *DeleteResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Tombstone) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *DeleteResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *DeleteResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Tombstone != nil { - x.Tombstone.EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *DeleteResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "DeleteResponse_Body") - } - switch fc.FieldNum { - case 1: // Tombstone - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Tombstone") - } - x.Tombstone = new(grpc.Address) - if err := x.Tombstone.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *DeleteResponse_Body) GetTombstone() *grpc.Address { - if x != nil { - return x.Tombstone - } - return nil -} -func (x *DeleteResponse_Body) SetTombstone(v *grpc.Address) { - x.Tombstone = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *DeleteResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *DeleteResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"tombstone\":" - out.RawString(prefix) - x.Tombstone.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *DeleteResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *DeleteResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "tombstone": - { - var f *grpc.Address - f = new(grpc.Address) - f.UnmarshalEasyJSON(in) - x.Tombstone = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type DeleteResponse struct { - Body *DeleteResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*DeleteResponse)(nil) - _ encoding.ProtoUnmarshaler = (*DeleteResponse)(nil) - _ json.Marshaler = (*DeleteResponse)(nil) - _ json.Unmarshaler = (*DeleteResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *DeleteResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *DeleteResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *DeleteResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *DeleteResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *DeleteResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *DeleteResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "DeleteResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(DeleteResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *DeleteResponse) GetBody() *DeleteResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *DeleteResponse) SetBody(v *DeleteResponse_Body) { - x.Body = v -} -func (x *DeleteResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *DeleteResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *DeleteResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *DeleteResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *DeleteResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *DeleteResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *DeleteResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *DeleteResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *DeleteResponse_Body - f = new(DeleteResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type HeadRequest_Body struct { - Address *grpc.Address `json:"address"` - MainOnly bool `json:"mainOnly"` - Raw bool `json:"raw"` -} - -var ( - _ encoding.ProtoMarshaler = (*HeadRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*HeadRequest_Body)(nil) - _ json.Marshaler = (*HeadRequest_Body)(nil) - _ json.Unmarshaler = (*HeadRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *HeadRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Address) - size += proto.BoolSize(2, x.MainOnly) - size += proto.BoolSize(3, x.Raw) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *HeadRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *HeadRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Address != nil { - x.Address.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MainOnly { - mm.AppendBool(2, x.MainOnly) - } - if x.Raw { - mm.AppendBool(3, x.Raw) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *HeadRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "HeadRequest_Body") - } - switch fc.FieldNum { - case 1: // Address - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Address") - } - x.Address = new(grpc.Address) - if err := x.Address.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MainOnly - data, ok := fc.Bool() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MainOnly") - } - x.MainOnly = data - case 3: // Raw - data, ok := fc.Bool() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Raw") - } - x.Raw = data - } - } - return nil -} -func (x *HeadRequest_Body) GetAddress() *grpc.Address { - if x != nil { - return x.Address - } - return nil -} -func (x *HeadRequest_Body) SetAddress(v *grpc.Address) { - x.Address = v -} -func (x *HeadRequest_Body) GetMainOnly() bool { - if x != nil { - return x.MainOnly - } - return false -} -func (x *HeadRequest_Body) SetMainOnly(v bool) { - x.MainOnly = v -} -func (x *HeadRequest_Body) GetRaw() bool { - if x != nil { - return x.Raw - } - return false -} -func (x *HeadRequest_Body) SetRaw(v bool) { - x.Raw = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *HeadRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *HeadRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"address\":" - out.RawString(prefix) - x.Address.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"mainOnly\":" - out.RawString(prefix) - out.Bool(x.MainOnly) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"raw\":" - out.RawString(prefix) - out.Bool(x.Raw) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *HeadRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *HeadRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "address": - { - var f *grpc.Address - f = new(grpc.Address) - f.UnmarshalEasyJSON(in) - x.Address = f - } - case "mainOnly": - { - var f bool - f = in.Bool() - x.MainOnly = f - } - case "raw": - { - var f bool - f = in.Bool() - x.Raw = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type HeadRequest struct { - Body *HeadRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*HeadRequest)(nil) - _ encoding.ProtoUnmarshaler = (*HeadRequest)(nil) - _ json.Marshaler = (*HeadRequest)(nil) - _ json.Unmarshaler = (*HeadRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *HeadRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *HeadRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *HeadRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *HeadRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *HeadRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *HeadRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "HeadRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(HeadRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *HeadRequest) GetBody() *HeadRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *HeadRequest) SetBody(v *HeadRequest_Body) { - x.Body = v -} -func (x *HeadRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *HeadRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *HeadRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *HeadRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *HeadRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *HeadRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *HeadRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *HeadRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *HeadRequest_Body - f = new(HeadRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type HeaderWithSignature struct { - Header *Header `json:"header"` - Signature *grpc.Signature `json:"signature"` -} - -var ( - _ encoding.ProtoMarshaler = (*HeaderWithSignature)(nil) - _ encoding.ProtoUnmarshaler = (*HeaderWithSignature)(nil) - _ json.Marshaler = (*HeaderWithSignature)(nil) - _ json.Unmarshaler = (*HeaderWithSignature)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *HeaderWithSignature) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Header) - size += proto.NestedStructureSize(2, x.Signature) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *HeaderWithSignature) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *HeaderWithSignature) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Header != nil { - x.Header.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Signature != nil { - x.Signature.EmitProtobuf(mm.AppendMessage(2)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *HeaderWithSignature) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "HeaderWithSignature") - } - switch fc.FieldNum { - case 1: // Header - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Header") - } - x.Header = new(Header) - if err := x.Header.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Signature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Signature") - } - x.Signature = new(grpc.Signature) - if err := x.Signature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *HeaderWithSignature) GetHeader() *Header { - if x != nil { - return x.Header - } - return nil -} -func (x *HeaderWithSignature) SetHeader(v *Header) { - x.Header = v -} -func (x *HeaderWithSignature) GetSignature() *grpc.Signature { - if x != nil { - return x.Signature - } - return nil -} -func (x *HeaderWithSignature) SetSignature(v *grpc.Signature) { - x.Signature = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *HeaderWithSignature) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *HeaderWithSignature) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"header\":" - out.RawString(prefix) - x.Header.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"signature\":" - out.RawString(prefix) - x.Signature.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *HeaderWithSignature) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *HeaderWithSignature) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "header": - { - var f *Header - f = new(Header) - f.UnmarshalEasyJSON(in) - x.Header = f - } - case "signature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.Signature = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type HeadResponse_Body struct { - Head isHeadResponse_Body_Head -} - -var ( - _ encoding.ProtoMarshaler = (*HeadResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*HeadResponse_Body)(nil) - _ json.Marshaler = (*HeadResponse_Body)(nil) - _ json.Unmarshaler = (*HeadResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *HeadResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - if inner, ok := x.Head.(*HeadResponse_Body_Header); ok { - size += proto.NestedStructureSize(1, inner.Header) - } - if inner, ok := x.Head.(*HeadResponse_Body_ShortHeader); ok { - size += proto.NestedStructureSize(2, inner.ShortHeader) - } - if inner, ok := x.Head.(*HeadResponse_Body_SplitInfo); ok { - size += proto.NestedStructureSize(3, inner.SplitInfo) - } - if inner, ok := x.Head.(*HeadResponse_Body_EcInfo); ok { - size += proto.NestedStructureSize(4, inner.EcInfo) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *HeadResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *HeadResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if inner, ok := x.Head.(*HeadResponse_Body_Header); ok { - if inner.Header != nil { - inner.Header.EmitProtobuf(mm.AppendMessage(1)) - } - } - if inner, ok := x.Head.(*HeadResponse_Body_ShortHeader); ok { - if inner.ShortHeader != nil { - inner.ShortHeader.EmitProtobuf(mm.AppendMessage(2)) - } - } - if inner, ok := x.Head.(*HeadResponse_Body_SplitInfo); ok { - if inner.SplitInfo != nil { - inner.SplitInfo.EmitProtobuf(mm.AppendMessage(3)) - } - } - if inner, ok := x.Head.(*HeadResponse_Body_EcInfo); ok { - if inner.EcInfo != nil { - inner.EcInfo.EmitProtobuf(mm.AppendMessage(4)) - } - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *HeadResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "HeadResponse_Body") - } - switch fc.FieldNum { - case 1: // Header - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Header") - } - oneofField := &HeadResponse_Body_Header{Header: new(HeaderWithSignature)} - if err := oneofField.Header.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - x.Head = oneofField - case 2: // ShortHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ShortHeader") - } - oneofField := &HeadResponse_Body_ShortHeader{ShortHeader: new(ShortHeader)} - if err := oneofField.ShortHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - x.Head = oneofField - case 3: // SplitInfo - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "SplitInfo") - } - oneofField := &HeadResponse_Body_SplitInfo{SplitInfo: new(SplitInfo)} - if err := oneofField.SplitInfo.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - x.Head = oneofField - case 4: // EcInfo - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "EcInfo") - } - oneofField := &HeadResponse_Body_EcInfo{EcInfo: new(ECInfo)} - if err := oneofField.EcInfo.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - x.Head = oneofField - } - } - return nil -} -func (x *HeadResponse_Body) GetHead() isHeadResponse_Body_Head { - if x != nil { - return x.Head - } - return nil -} -func (x *HeadResponse_Body) SetHead(v isHeadResponse_Body_Head) { - x.Head = v -} -func (x *HeadResponse_Body) GetHeader() *HeaderWithSignature { - if xx, ok := x.GetHead().(*HeadResponse_Body_Header); ok { - return xx.Header - } - return nil -} -func (x *HeadResponse_Body) SetHeader(v *HeaderWithSignature) { - x.Head = &HeadResponse_Body_Header{Header: v} -} -func (x *HeadResponse_Body) GetShortHeader() *ShortHeader { - if xx, ok := x.GetHead().(*HeadResponse_Body_ShortHeader); ok { - return xx.ShortHeader - } - return nil -} -func (x *HeadResponse_Body) SetShortHeader(v *ShortHeader) { - x.Head = &HeadResponse_Body_ShortHeader{ShortHeader: v} -} -func (x *HeadResponse_Body) GetSplitInfo() *SplitInfo { - if xx, ok := x.GetHead().(*HeadResponse_Body_SplitInfo); ok { - return xx.SplitInfo - } - return nil -} -func (x *HeadResponse_Body) SetSplitInfo(v *SplitInfo) { - x.Head = &HeadResponse_Body_SplitInfo{SplitInfo: v} -} -func (x *HeadResponse_Body) GetEcInfo() *ECInfo { - if xx, ok := x.GetHead().(*HeadResponse_Body_EcInfo); ok { - return xx.EcInfo - } - return nil -} -func (x *HeadResponse_Body) SetEcInfo(v *ECInfo) { - x.Head = &HeadResponse_Body_EcInfo{EcInfo: v} -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *HeadResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *HeadResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - switch xx := x.Head.(type) { - case *HeadResponse_Body_Header: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"header\":" - out.RawString(prefix) - xx.Header.MarshalEasyJSON(out) - } - case *HeadResponse_Body_ShortHeader: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"shortHeader\":" - out.RawString(prefix) - xx.ShortHeader.MarshalEasyJSON(out) - } - case *HeadResponse_Body_SplitInfo: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"splitInfo\":" - out.RawString(prefix) - xx.SplitInfo.MarshalEasyJSON(out) - } - case *HeadResponse_Body_EcInfo: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ecInfo\":" - out.RawString(prefix) - xx.EcInfo.MarshalEasyJSON(out) - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *HeadResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *HeadResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "header": - xx := new(HeadResponse_Body_Header) - x.Head = xx - { - var f *HeaderWithSignature - f = new(HeaderWithSignature) - f.UnmarshalEasyJSON(in) - xx.Header = f - } - case "shortHeader": - xx := new(HeadResponse_Body_ShortHeader) - x.Head = xx - { - var f *ShortHeader - f = new(ShortHeader) - f.UnmarshalEasyJSON(in) - xx.ShortHeader = f - } - case "splitInfo": - xx := new(HeadResponse_Body_SplitInfo) - x.Head = xx - { - var f *SplitInfo - f = new(SplitInfo) - f.UnmarshalEasyJSON(in) - xx.SplitInfo = f - } - case "ecInfo": - xx := new(HeadResponse_Body_EcInfo) - x.Head = xx - { - var f *ECInfo - f = new(ECInfo) - f.UnmarshalEasyJSON(in) - xx.EcInfo = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type isHeadResponse_Body_Head interface { - isHeadResponse_Body_Head() -} - -type HeadResponse_Body_Header struct { - Header *HeaderWithSignature -} - -type HeadResponse_Body_ShortHeader struct { - ShortHeader *ShortHeader -} - -type HeadResponse_Body_SplitInfo struct { - SplitInfo *SplitInfo -} - -type HeadResponse_Body_EcInfo struct { - EcInfo *ECInfo -} - -func (*HeadResponse_Body_Header) isHeadResponse_Body_Head() {} - -func (*HeadResponse_Body_ShortHeader) isHeadResponse_Body_Head() {} - -func (*HeadResponse_Body_SplitInfo) isHeadResponse_Body_Head() {} - -func (*HeadResponse_Body_EcInfo) isHeadResponse_Body_Head() {} - -type HeadResponse struct { - Body *HeadResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*HeadResponse)(nil) - _ encoding.ProtoUnmarshaler = (*HeadResponse)(nil) - _ json.Marshaler = (*HeadResponse)(nil) - _ json.Unmarshaler = (*HeadResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *HeadResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *HeadResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *HeadResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *HeadResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *HeadResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *HeadResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "HeadResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(HeadResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *HeadResponse) GetBody() *HeadResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *HeadResponse) SetBody(v *HeadResponse_Body) { - x.Body = v -} -func (x *HeadResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *HeadResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *HeadResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *HeadResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *HeadResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *HeadResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *HeadResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *HeadResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *HeadResponse_Body - f = new(HeadResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type SearchRequest_Body_Filter struct { - MatchType MatchType `json:"matchType"` - Key string `json:"key"` - Value string `json:"value"` -} - -var ( - _ encoding.ProtoMarshaler = (*SearchRequest_Body_Filter)(nil) - _ encoding.ProtoUnmarshaler = (*SearchRequest_Body_Filter)(nil) - _ json.Marshaler = (*SearchRequest_Body_Filter)(nil) - _ json.Unmarshaler = (*SearchRequest_Body_Filter)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *SearchRequest_Body_Filter) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.EnumSize(1, int32(x.MatchType)) - size += proto.StringSize(2, x.Key) - size += proto.StringSize(3, x.Value) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *SearchRequest_Body_Filter) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *SearchRequest_Body_Filter) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if int32(x.MatchType) != 0 { - mm.AppendInt32(1, int32(x.MatchType)) - } - if len(x.Key) != 0 { - mm.AppendString(2, x.Key) - } - if len(x.Value) != 0 { - mm.AppendString(3, x.Value) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *SearchRequest_Body_Filter) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "SearchRequest_Body_Filter") - } - switch fc.FieldNum { - case 1: // MatchType - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MatchType") - } - x.MatchType = MatchType(data) - case 2: // Key - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Key") - } - x.Key = data - case 3: // Value - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - } - } - return nil -} -func (x *SearchRequest_Body_Filter) GetMatchType() MatchType { - if x != nil { - return x.MatchType - } - return 0 -} -func (x *SearchRequest_Body_Filter) SetMatchType(v MatchType) { - x.MatchType = v -} -func (x *SearchRequest_Body_Filter) GetKey() string { - if x != nil { - return x.Key - } - return "" -} -func (x *SearchRequest_Body_Filter) SetKey(v string) { - x.Key = v -} -func (x *SearchRequest_Body_Filter) GetValue() string { - if x != nil { - return x.Value - } - return "" -} -func (x *SearchRequest_Body_Filter) SetValue(v string) { - x.Value = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *SearchRequest_Body_Filter) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *SearchRequest_Body_Filter) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"matchType\":" - out.RawString(prefix) - v := int32(x.MatchType) - if vv, ok := MatchType_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"key\":" - out.RawString(prefix) - out.String(x.Key) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - out.String(x.Value) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *SearchRequest_Body_Filter) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *SearchRequest_Body_Filter) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "matchType": - { - var f MatchType - var parsedValue MatchType - switch v := in.Interface().(type) { - case string: - if vv, ok := MatchType_value[v]; ok { - parsedValue = MatchType(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = MatchType(vv) - case float64: - parsedValue = MatchType(v) - } - f = parsedValue - x.MatchType = f - } - case "key": - { - var f string - f = in.String() - x.Key = f - } - case "value": - { - var f string - f = in.String() - x.Value = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type SearchRequest_Body struct { - ContainerId *grpc.ContainerID `json:"containerId"` - Version uint32 `json:"version"` - Filters []SearchRequest_Body_Filter `json:"filters"` -} - -var ( - _ encoding.ProtoMarshaler = (*SearchRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*SearchRequest_Body)(nil) - _ json.Marshaler = (*SearchRequest_Body)(nil) - _ json.Unmarshaler = (*SearchRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *SearchRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.ContainerId) - size += proto.UInt32Size(2, x.Version) - for i := range x.Filters { - size += proto.NestedStructureSizeUnchecked(3, &x.Filters[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *SearchRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *SearchRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.ContainerId != nil { - x.ContainerId.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Version != 0 { - mm.AppendUint32(2, x.Version) - } - for i := range x.Filters { - x.Filters[i].EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *SearchRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "SearchRequest_Body") - } - switch fc.FieldNum { - case 1: // ContainerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ContainerId") - } - x.ContainerId = new(grpc.ContainerID) - if err := x.ContainerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Version - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Version") - } - x.Version = data - case 3: // Filters - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Filters") - } - x.Filters = append(x.Filters, SearchRequest_Body_Filter{}) - ff := &x.Filters[len(x.Filters)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *SearchRequest_Body) GetContainerId() *grpc.ContainerID { - if x != nil { - return x.ContainerId - } - return nil -} -func (x *SearchRequest_Body) SetContainerId(v *grpc.ContainerID) { - x.ContainerId = v -} -func (x *SearchRequest_Body) GetVersion() uint32 { - if x != nil { - return x.Version - } - return 0 -} -func (x *SearchRequest_Body) SetVersion(v uint32) { - x.Version = v -} -func (x *SearchRequest_Body) GetFilters() []SearchRequest_Body_Filter { - if x != nil { - return x.Filters - } - return nil -} -func (x *SearchRequest_Body) SetFilters(v []SearchRequest_Body_Filter) { - x.Filters = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *SearchRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *SearchRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"containerId\":" - out.RawString(prefix) - x.ContainerId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"version\":" - out.RawString(prefix) - out.Uint32(x.Version) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"filters\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Filters { - if i != 0 { - out.RawByte(',') - } - x.Filters[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *SearchRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *SearchRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "containerId": - { - var f *grpc.ContainerID - f = new(grpc.ContainerID) - f.UnmarshalEasyJSON(in) - x.ContainerId = f - } - case "version": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Version = f - } - case "filters": - { - var f SearchRequest_Body_Filter - var list []SearchRequest_Body_Filter - in.Delim('[') - for !in.IsDelim(']') { - f = SearchRequest_Body_Filter{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Filters = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type SearchRequest struct { - Body *SearchRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*SearchRequest)(nil) - _ encoding.ProtoUnmarshaler = (*SearchRequest)(nil) - _ json.Marshaler = (*SearchRequest)(nil) - _ json.Unmarshaler = (*SearchRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *SearchRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *SearchRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *SearchRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *SearchRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *SearchRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *SearchRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "SearchRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(SearchRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *SearchRequest) GetBody() *SearchRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *SearchRequest) SetBody(v *SearchRequest_Body) { - x.Body = v -} -func (x *SearchRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *SearchRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *SearchRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *SearchRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *SearchRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *SearchRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *SearchRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *SearchRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *SearchRequest_Body - f = new(SearchRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type SearchResponse_Body struct { - IdList []grpc.ObjectID `json:"idList"` -} - -var ( - _ encoding.ProtoMarshaler = (*SearchResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*SearchResponse_Body)(nil) - _ json.Marshaler = (*SearchResponse_Body)(nil) - _ json.Unmarshaler = (*SearchResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *SearchResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - for i := range x.IdList { - size += proto.NestedStructureSizeUnchecked(1, &x.IdList[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *SearchResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *SearchResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - for i := range x.IdList { - x.IdList[i].EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *SearchResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "SearchResponse_Body") - } - switch fc.FieldNum { - case 1: // IdList - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "IdList") - } - x.IdList = append(x.IdList, grpc.ObjectID{}) - ff := &x.IdList[len(x.IdList)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *SearchResponse_Body) GetIdList() []grpc.ObjectID { - if x != nil { - return x.IdList - } - return nil -} -func (x *SearchResponse_Body) SetIdList(v []grpc.ObjectID) { - x.IdList = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *SearchResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *SearchResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"idList\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.IdList { - if i != 0 { - out.RawByte(',') - } - x.IdList[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *SearchResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *SearchResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "idList": - { - var f grpc.ObjectID - var list []grpc.ObjectID - in.Delim('[') - for !in.IsDelim(']') { - f = grpc.ObjectID{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.IdList = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type SearchResponse struct { - Body *SearchResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*SearchResponse)(nil) - _ encoding.ProtoUnmarshaler = (*SearchResponse)(nil) - _ json.Marshaler = (*SearchResponse)(nil) - _ json.Unmarshaler = (*SearchResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *SearchResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *SearchResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *SearchResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *SearchResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *SearchResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *SearchResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "SearchResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(SearchResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *SearchResponse) GetBody() *SearchResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *SearchResponse) SetBody(v *SearchResponse_Body) { - x.Body = v -} -func (x *SearchResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *SearchResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *SearchResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *SearchResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *SearchResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *SearchResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *SearchResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *SearchResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *SearchResponse_Body - f = new(SearchResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Range struct { - Offset uint64 `json:"offset"` - Length uint64 `json:"length"` -} - -var ( - _ encoding.ProtoMarshaler = (*Range)(nil) - _ encoding.ProtoUnmarshaler = (*Range)(nil) - _ json.Marshaler = (*Range)(nil) - _ json.Unmarshaler = (*Range)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Range) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.UInt64Size(1, x.Offset) - size += proto.UInt64Size(2, x.Length) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Range) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Range) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Offset != 0 { - mm.AppendUint64(1, x.Offset) - } - if x.Length != 0 { - mm.AppendUint64(2, x.Length) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Range) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Range") - } - switch fc.FieldNum { - case 1: // Offset - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Offset") - } - x.Offset = data - case 2: // Length - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Length") - } - x.Length = data - } - } - return nil -} -func (x *Range) GetOffset() uint64 { - if x != nil { - return x.Offset - } - return 0 -} -func (x *Range) SetOffset(v uint64) { - x.Offset = v -} -func (x *Range) GetLength() uint64 { - if x != nil { - return x.Length - } - return 0 -} -func (x *Range) SetLength(v uint64) { - x.Length = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Range) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Range) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"offset\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.Offset, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"length\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.Length, 10) - out.RawByte('"') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Range) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Range) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "offset": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.Offset = f - } - case "length": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.Length = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetRangeRequest_Body struct { - Address *grpc.Address `json:"address"` - Range *Range `json:"range"` - Raw bool `json:"raw"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetRangeRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*GetRangeRequest_Body)(nil) - _ json.Marshaler = (*GetRangeRequest_Body)(nil) - _ json.Unmarshaler = (*GetRangeRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetRangeRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Address) - size += proto.NestedStructureSize(2, x.Range) - size += proto.BoolSize(3, x.Raw) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetRangeRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetRangeRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Address != nil { - x.Address.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Range != nil { - x.Range.EmitProtobuf(mm.AppendMessage(2)) - } - if x.Raw { - mm.AppendBool(3, x.Raw) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetRangeRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetRangeRequest_Body") - } - switch fc.FieldNum { - case 1: // Address - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Address") - } - x.Address = new(grpc.Address) - if err := x.Address.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Range - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Range") - } - x.Range = new(Range) - if err := x.Range.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // Raw - data, ok := fc.Bool() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Raw") - } - x.Raw = data - } - } - return nil -} -func (x *GetRangeRequest_Body) GetAddress() *grpc.Address { - if x != nil { - return x.Address - } - return nil -} -func (x *GetRangeRequest_Body) SetAddress(v *grpc.Address) { - x.Address = v -} -func (x *GetRangeRequest_Body) GetRange() *Range { - if x != nil { - return x.Range - } - return nil -} -func (x *GetRangeRequest_Body) SetRange(v *Range) { - x.Range = v -} -func (x *GetRangeRequest_Body) GetRaw() bool { - if x != nil { - return x.Raw - } - return false -} -func (x *GetRangeRequest_Body) SetRaw(v bool) { - x.Raw = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetRangeRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetRangeRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"address\":" - out.RawString(prefix) - x.Address.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"range\":" - out.RawString(prefix) - x.Range.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"raw\":" - out.RawString(prefix) - out.Bool(x.Raw) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetRangeRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetRangeRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "address": - { - var f *grpc.Address - f = new(grpc.Address) - f.UnmarshalEasyJSON(in) - x.Address = f - } - case "range": - { - var f *Range - f = new(Range) - f.UnmarshalEasyJSON(in) - x.Range = f - } - case "raw": - { - var f bool - f = in.Bool() - x.Raw = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetRangeRequest struct { - Body *GetRangeRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetRangeRequest)(nil) - _ encoding.ProtoUnmarshaler = (*GetRangeRequest)(nil) - _ json.Marshaler = (*GetRangeRequest)(nil) - _ json.Unmarshaler = (*GetRangeRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetRangeRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *GetRangeRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *GetRangeRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetRangeRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetRangeRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetRangeRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetRangeRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(GetRangeRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *GetRangeRequest) GetBody() *GetRangeRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *GetRangeRequest) SetBody(v *GetRangeRequest_Body) { - x.Body = v -} -func (x *GetRangeRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *GetRangeRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *GetRangeRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *GetRangeRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetRangeRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetRangeRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetRangeRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetRangeRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *GetRangeRequest_Body - f = new(GetRangeRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetRangeResponse_Body struct { - RangePart isGetRangeResponse_Body_RangePart -} - -var ( - _ encoding.ProtoMarshaler = (*GetRangeResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*GetRangeResponse_Body)(nil) - _ json.Marshaler = (*GetRangeResponse_Body)(nil) - _ json.Unmarshaler = (*GetRangeResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetRangeResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - if inner, ok := x.RangePart.(*GetRangeResponse_Body_Chunk); ok { - size += proto.BytesSize(1, inner.Chunk) - } - if inner, ok := x.RangePart.(*GetRangeResponse_Body_SplitInfo); ok { - size += proto.NestedStructureSize(2, inner.SplitInfo) - } - if inner, ok := x.RangePart.(*GetRangeResponse_Body_EcInfo); ok { - size += proto.NestedStructureSize(3, inner.EcInfo) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetRangeResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetRangeResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if inner, ok := x.RangePart.(*GetRangeResponse_Body_Chunk); ok { - if len(inner.Chunk) != 0 { - mm.AppendBytes(1, inner.Chunk) - } - } - if inner, ok := x.RangePart.(*GetRangeResponse_Body_SplitInfo); ok { - if inner.SplitInfo != nil { - inner.SplitInfo.EmitProtobuf(mm.AppendMessage(2)) - } - } - if inner, ok := x.RangePart.(*GetRangeResponse_Body_EcInfo); ok { - if inner.EcInfo != nil { - inner.EcInfo.EmitProtobuf(mm.AppendMessage(3)) - } - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetRangeResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetRangeResponse_Body") - } - switch fc.FieldNum { - case 1: // Chunk - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Chunk") - } - x.RangePart = &GetRangeResponse_Body_Chunk{Chunk: data} - case 2: // SplitInfo - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "SplitInfo") - } - oneofField := &GetRangeResponse_Body_SplitInfo{SplitInfo: new(SplitInfo)} - if err := oneofField.SplitInfo.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - x.RangePart = oneofField - case 3: // EcInfo - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "EcInfo") - } - oneofField := &GetRangeResponse_Body_EcInfo{EcInfo: new(ECInfo)} - if err := oneofField.EcInfo.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - x.RangePart = oneofField - } - } - return nil -} -func (x *GetRangeResponse_Body) GetRangePart() isGetRangeResponse_Body_RangePart { - if x != nil { - return x.RangePart - } - return nil -} -func (x *GetRangeResponse_Body) SetRangePart(v isGetRangeResponse_Body_RangePart) { - x.RangePart = v -} -func (x *GetRangeResponse_Body) GetChunk() []byte { - if xx, ok := x.GetRangePart().(*GetRangeResponse_Body_Chunk); ok { - return xx.Chunk - } - return nil -} -func (x *GetRangeResponse_Body) SetChunk(v *GetRangeResponse_Body_Chunk) { - x.RangePart = v -} -func (x *GetRangeResponse_Body_Chunk) GetChunk() []byte { - if x != nil { - return x.Chunk - } - return nil -} -func (x *GetRangeResponse_Body_Chunk) SetChunk(v []byte) { - x.Chunk = v -} -func (x *GetRangeResponse_Body) GetSplitInfo() *SplitInfo { - if xx, ok := x.GetRangePart().(*GetRangeResponse_Body_SplitInfo); ok { - return xx.SplitInfo - } - return nil -} -func (x *GetRangeResponse_Body) SetSplitInfo(v *SplitInfo) { - x.RangePart = &GetRangeResponse_Body_SplitInfo{SplitInfo: v} -} -func (x *GetRangeResponse_Body) GetEcInfo() *ECInfo { - if xx, ok := x.GetRangePart().(*GetRangeResponse_Body_EcInfo); ok { - return xx.EcInfo - } - return nil -} -func (x *GetRangeResponse_Body) SetEcInfo(v *ECInfo) { - x.RangePart = &GetRangeResponse_Body_EcInfo{EcInfo: v} -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetRangeResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetRangeResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - switch xx := x.RangePart.(type) { - case *GetRangeResponse_Body_Chunk: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"chunk\":" - out.RawString(prefix) - if xx.Chunk != nil { - out.Base64Bytes(xx.Chunk) - } else { - out.String("") - } - } - case *GetRangeResponse_Body_SplitInfo: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"splitInfo\":" - out.RawString(prefix) - xx.SplitInfo.MarshalEasyJSON(out) - } - case *GetRangeResponse_Body_EcInfo: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ecInfo\":" - out.RawString(prefix) - xx.EcInfo.MarshalEasyJSON(out) - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetRangeResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetRangeResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "chunk": - xx := new(GetRangeResponse_Body_Chunk) - x.RangePart = xx - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - xx.Chunk = f - } - case "splitInfo": - xx := new(GetRangeResponse_Body_SplitInfo) - x.RangePart = xx - { - var f *SplitInfo - f = new(SplitInfo) - f.UnmarshalEasyJSON(in) - xx.SplitInfo = f - } - case "ecInfo": - xx := new(GetRangeResponse_Body_EcInfo) - x.RangePart = xx - { - var f *ECInfo - f = new(ECInfo) - f.UnmarshalEasyJSON(in) - xx.EcInfo = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type isGetRangeResponse_Body_RangePart interface { - isGetRangeResponse_Body_RangePart() -} - -type GetRangeResponse_Body_Chunk struct { - Chunk []byte -} - -type GetRangeResponse_Body_SplitInfo struct { - SplitInfo *SplitInfo -} - -type GetRangeResponse_Body_EcInfo struct { - EcInfo *ECInfo -} - -func (*GetRangeResponse_Body_Chunk) isGetRangeResponse_Body_RangePart() {} - -func (*GetRangeResponse_Body_SplitInfo) isGetRangeResponse_Body_RangePart() {} - -func (*GetRangeResponse_Body_EcInfo) isGetRangeResponse_Body_RangePart() {} - -type GetRangeResponse struct { - Body *GetRangeResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetRangeResponse)(nil) - _ encoding.ProtoUnmarshaler = (*GetRangeResponse)(nil) - _ json.Marshaler = (*GetRangeResponse)(nil) - _ json.Unmarshaler = (*GetRangeResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetRangeResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *GetRangeResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *GetRangeResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetRangeResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetRangeResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetRangeResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetRangeResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(GetRangeResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *GetRangeResponse) GetBody() *GetRangeResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *GetRangeResponse) SetBody(v *GetRangeResponse_Body) { - x.Body = v -} -func (x *GetRangeResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *GetRangeResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *GetRangeResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *GetRangeResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetRangeResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetRangeResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetRangeResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetRangeResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *GetRangeResponse_Body - f = new(GetRangeResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetRangeHashRequest_Body struct { - Address *grpc.Address `json:"address"` - Ranges []Range `json:"ranges"` - Salt []byte `json:"salt"` - Type grpc.ChecksumType `json:"type"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetRangeHashRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*GetRangeHashRequest_Body)(nil) - _ json.Marshaler = (*GetRangeHashRequest_Body)(nil) - _ json.Unmarshaler = (*GetRangeHashRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetRangeHashRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Address) - for i := range x.Ranges { - size += proto.NestedStructureSizeUnchecked(2, &x.Ranges[i]) - } - size += proto.BytesSize(3, x.Salt) - size += proto.EnumSize(4, int32(x.Type)) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetRangeHashRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetRangeHashRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Address != nil { - x.Address.EmitProtobuf(mm.AppendMessage(1)) - } - for i := range x.Ranges { - x.Ranges[i].EmitProtobuf(mm.AppendMessage(2)) - } - if len(x.Salt) != 0 { - mm.AppendBytes(3, x.Salt) - } - if int32(x.Type) != 0 { - mm.AppendInt32(4, int32(x.Type)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetRangeHashRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetRangeHashRequest_Body") - } - switch fc.FieldNum { - case 1: // Address - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Address") - } - x.Address = new(grpc.Address) - if err := x.Address.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Ranges - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Ranges") - } - x.Ranges = append(x.Ranges, Range{}) - ff := &x.Ranges[len(x.Ranges)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // Salt - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Salt") - } - x.Salt = data - case 4: // Type - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Type") - } - x.Type = grpc.ChecksumType(data) - } - } - return nil -} -func (x *GetRangeHashRequest_Body) GetAddress() *grpc.Address { - if x != nil { - return x.Address - } - return nil -} -func (x *GetRangeHashRequest_Body) SetAddress(v *grpc.Address) { - x.Address = v -} -func (x *GetRangeHashRequest_Body) GetRanges() []Range { - if x != nil { - return x.Ranges - } - return nil -} -func (x *GetRangeHashRequest_Body) SetRanges(v []Range) { - x.Ranges = v -} -func (x *GetRangeHashRequest_Body) GetSalt() []byte { - if x != nil { - return x.Salt - } - return nil -} -func (x *GetRangeHashRequest_Body) SetSalt(v []byte) { - x.Salt = v -} -func (x *GetRangeHashRequest_Body) GetType() grpc.ChecksumType { - if x != nil { - return x.Type - } - return 0 -} -func (x *GetRangeHashRequest_Body) SetType(v grpc.ChecksumType) { - x.Type = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetRangeHashRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetRangeHashRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"address\":" - out.RawString(prefix) - x.Address.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ranges\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Ranges { - if i != 0 { - out.RawByte(',') - } - x.Ranges[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"salt\":" - out.RawString(prefix) - if x.Salt != nil { - out.Base64Bytes(x.Salt) - } else { - out.String("") - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"type\":" - out.RawString(prefix) - v := int32(x.Type) - if vv, ok := grpc.ChecksumType_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetRangeHashRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetRangeHashRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "address": - { - var f *grpc.Address - f = new(grpc.Address) - f.UnmarshalEasyJSON(in) - x.Address = f - } - case "ranges": - { - var f Range - var list []Range - in.Delim('[') - for !in.IsDelim(']') { - f = Range{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Ranges = list - in.Delim(']') - } - case "salt": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Salt = f - } - case "type": - { - var f grpc.ChecksumType - var parsedValue grpc.ChecksumType - switch v := in.Interface().(type) { - case string: - if vv, ok := grpc.ChecksumType_value[v]; ok { - parsedValue = grpc.ChecksumType(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = grpc.ChecksumType(vv) - case float64: - parsedValue = grpc.ChecksumType(v) - } - f = parsedValue - x.Type = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetRangeHashRequest struct { - Body *GetRangeHashRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetRangeHashRequest)(nil) - _ encoding.ProtoUnmarshaler = (*GetRangeHashRequest)(nil) - _ json.Marshaler = (*GetRangeHashRequest)(nil) - _ json.Unmarshaler = (*GetRangeHashRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetRangeHashRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *GetRangeHashRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *GetRangeHashRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetRangeHashRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetRangeHashRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetRangeHashRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetRangeHashRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(GetRangeHashRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *GetRangeHashRequest) GetBody() *GetRangeHashRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *GetRangeHashRequest) SetBody(v *GetRangeHashRequest_Body) { - x.Body = v -} -func (x *GetRangeHashRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *GetRangeHashRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *GetRangeHashRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *GetRangeHashRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetRangeHashRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetRangeHashRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetRangeHashRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetRangeHashRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *GetRangeHashRequest_Body - f = new(GetRangeHashRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetRangeHashResponse_Body struct { - Type grpc.ChecksumType `json:"type"` - HashList [][]byte `json:"hashList"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetRangeHashResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*GetRangeHashResponse_Body)(nil) - _ json.Marshaler = (*GetRangeHashResponse_Body)(nil) - _ json.Unmarshaler = (*GetRangeHashResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetRangeHashResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.EnumSize(1, int32(x.Type)) - size += proto.RepeatedBytesSize(2, x.HashList) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetRangeHashResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetRangeHashResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if int32(x.Type) != 0 { - mm.AppendInt32(1, int32(x.Type)) - } - for j := range x.HashList { - mm.AppendBytes(2, x.HashList[j]) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetRangeHashResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetRangeHashResponse_Body") - } - switch fc.FieldNum { - case 1: // Type - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Type") - } - x.Type = grpc.ChecksumType(data) - case 2: // HashList - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "HashList") - } - x.HashList = append(x.HashList, data) - } - } - return nil -} -func (x *GetRangeHashResponse_Body) GetType() grpc.ChecksumType { - if x != nil { - return x.Type - } - return 0 -} -func (x *GetRangeHashResponse_Body) SetType(v grpc.ChecksumType) { - x.Type = v -} -func (x *GetRangeHashResponse_Body) GetHashList() [][]byte { - if x != nil { - return x.HashList - } - return nil -} -func (x *GetRangeHashResponse_Body) SetHashList(v [][]byte) { - x.HashList = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetRangeHashResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetRangeHashResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"type\":" - out.RawString(prefix) - v := int32(x.Type) - if vv, ok := grpc.ChecksumType_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"hashList\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.HashList { - if i != 0 { - out.RawByte(',') - } - if x.HashList[i] != nil { - out.Base64Bytes(x.HashList[i]) - } else { - out.String("") - } - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetRangeHashResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetRangeHashResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "type": - { - var f grpc.ChecksumType - var parsedValue grpc.ChecksumType - switch v := in.Interface().(type) { - case string: - if vv, ok := grpc.ChecksumType_value[v]; ok { - parsedValue = grpc.ChecksumType(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = grpc.ChecksumType(vv) - case float64: - parsedValue = grpc.ChecksumType(v) - } - f = parsedValue - x.Type = f - } - case "hashList": - { - var f []byte - var list [][]byte - in.Delim('[') - for !in.IsDelim(']') { - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - list = append(list, f) - in.WantComma() - } - x.HashList = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type GetRangeHashResponse struct { - Body *GetRangeHashResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*GetRangeHashResponse)(nil) - _ encoding.ProtoUnmarshaler = (*GetRangeHashResponse)(nil) - _ json.Marshaler = (*GetRangeHashResponse)(nil) - _ json.Unmarshaler = (*GetRangeHashResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *GetRangeHashResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *GetRangeHashResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *GetRangeHashResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *GetRangeHashResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *GetRangeHashResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *GetRangeHashResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "GetRangeHashResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(GetRangeHashResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *GetRangeHashResponse) GetBody() *GetRangeHashResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *GetRangeHashResponse) SetBody(v *GetRangeHashResponse_Body) { - x.Body = v -} -func (x *GetRangeHashResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *GetRangeHashResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *GetRangeHashResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *GetRangeHashResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *GetRangeHashResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *GetRangeHashResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *GetRangeHashResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *GetRangeHashResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *GetRangeHashResponse_Body - f = new(GetRangeHashResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PutSingleRequest_Body struct { - Object *Object `json:"object"` - CopiesNumber []uint32 `json:"copiesNumber"` -} - -var ( - _ encoding.ProtoMarshaler = (*PutSingleRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*PutSingleRequest_Body)(nil) - _ json.Marshaler = (*PutSingleRequest_Body)(nil) - _ json.Unmarshaler = (*PutSingleRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutSingleRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - var n int - size += proto.NestedStructureSize(1, x.Object) - n, _ = proto.RepeatedUInt32Size(2, x.CopiesNumber) - size += n - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutSingleRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutSingleRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Object != nil { - x.Object.EmitProtobuf(mm.AppendMessage(1)) - } - if len(x.CopiesNumber) != 0 { - mm.AppendUint32s(2, x.CopiesNumber) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutSingleRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutSingleRequest_Body") - } - switch fc.FieldNum { - case 1: // Object - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Object") - } - x.Object = new(Object) - if err := x.Object.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // CopiesNumber - data, ok := fc.UnpackUint32s(nil) - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "CopiesNumber") - } - x.CopiesNumber = data - } - } - return nil -} -func (x *PutSingleRequest_Body) GetObject() *Object { - if x != nil { - return x.Object - } - return nil -} -func (x *PutSingleRequest_Body) SetObject(v *Object) { - x.Object = v -} -func (x *PutSingleRequest_Body) GetCopiesNumber() []uint32 { - if x != nil { - return x.CopiesNumber - } - return nil -} -func (x *PutSingleRequest_Body) SetCopiesNumber(v []uint32) { - x.CopiesNumber = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutSingleRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutSingleRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"object\":" - out.RawString(prefix) - x.Object.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"copiesNumber\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.CopiesNumber { - if i != 0 { - out.RawByte(',') - } - out.Uint32(x.CopiesNumber[i]) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutSingleRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutSingleRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "object": - { - var f *Object - f = new(Object) - f.UnmarshalEasyJSON(in) - x.Object = f - } - case "copiesNumber": - { - var f uint32 - var list []uint32 - in.Delim('[') - for !in.IsDelim(']') { - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - list = append(list, f) - in.WantComma() - } - x.CopiesNumber = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PutSingleRequest struct { - Body *PutSingleRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*PutSingleRequest)(nil) - _ encoding.ProtoUnmarshaler = (*PutSingleRequest)(nil) - _ json.Marshaler = (*PutSingleRequest)(nil) - _ json.Unmarshaler = (*PutSingleRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutSingleRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *PutSingleRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *PutSingleRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutSingleRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutSingleRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutSingleRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutSingleRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(PutSingleRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PutSingleRequest) GetBody() *PutSingleRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *PutSingleRequest) SetBody(v *PutSingleRequest_Body) { - x.Body = v -} -func (x *PutSingleRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *PutSingleRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *PutSingleRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *PutSingleRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutSingleRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutSingleRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutSingleRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutSingleRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *PutSingleRequest_Body - f = new(PutSingleRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PutSingleResponse_Body struct { -} - -var ( - _ encoding.ProtoMarshaler = (*PutSingleResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*PutSingleResponse_Body)(nil) - _ json.Marshaler = (*PutSingleResponse_Body)(nil) - _ json.Unmarshaler = (*PutSingleResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutSingleResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutSingleResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutSingleResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutSingleResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutSingleResponse_Body") - } - switch fc.FieldNum { - } - } - return nil -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutSingleResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutSingleResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - out.RawByte('{') - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutSingleResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutSingleResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PutSingleResponse struct { - Body *PutSingleResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*PutSingleResponse)(nil) - _ encoding.ProtoUnmarshaler = (*PutSingleResponse)(nil) - _ json.Marshaler = (*PutSingleResponse)(nil) - _ json.Unmarshaler = (*PutSingleResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PutSingleResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *PutSingleResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *PutSingleResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PutSingleResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PutSingleResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PutSingleResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PutSingleResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(PutSingleResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PutSingleResponse) GetBody() *PutSingleResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *PutSingleResponse) SetBody(v *PutSingleResponse_Body) { - x.Body = v -} -func (x *PutSingleResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *PutSingleResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *PutSingleResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *PutSingleResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PutSingleResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PutSingleResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PutSingleResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PutSingleResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *PutSingleResponse_Body - f = new(PutSingleResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PatchRequest_Body_Patch struct { - SourceRange *Range `json:"sourceRange"` - Chunk []byte `json:"chunk"` -} - -var ( - _ encoding.ProtoMarshaler = (*PatchRequest_Body_Patch)(nil) - _ encoding.ProtoUnmarshaler = (*PatchRequest_Body_Patch)(nil) - _ json.Marshaler = (*PatchRequest_Body_Patch)(nil) - _ json.Unmarshaler = (*PatchRequest_Body_Patch)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PatchRequest_Body_Patch) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.SourceRange) - size += proto.BytesSize(2, x.Chunk) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PatchRequest_Body_Patch) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PatchRequest_Body_Patch) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.SourceRange != nil { - x.SourceRange.EmitProtobuf(mm.AppendMessage(1)) - } - if len(x.Chunk) != 0 { - mm.AppendBytes(2, x.Chunk) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PatchRequest_Body_Patch) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PatchRequest_Body_Patch") - } - switch fc.FieldNum { - case 1: // SourceRange - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "SourceRange") - } - x.SourceRange = new(Range) - if err := x.SourceRange.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Chunk - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Chunk") - } - x.Chunk = data - } - } - return nil -} -func (x *PatchRequest_Body_Patch) GetSourceRange() *Range { - if x != nil { - return x.SourceRange - } - return nil -} -func (x *PatchRequest_Body_Patch) SetSourceRange(v *Range) { - x.SourceRange = v -} -func (x *PatchRequest_Body_Patch) GetChunk() []byte { - if x != nil { - return x.Chunk - } - return nil -} -func (x *PatchRequest_Body_Patch) SetChunk(v []byte) { - x.Chunk = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PatchRequest_Body_Patch) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PatchRequest_Body_Patch) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"sourceRange\":" - out.RawString(prefix) - x.SourceRange.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"chunk\":" - out.RawString(prefix) - if x.Chunk != nil { - out.Base64Bytes(x.Chunk) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PatchRequest_Body_Patch) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PatchRequest_Body_Patch) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "sourceRange": - { - var f *Range - f = new(Range) - f.UnmarshalEasyJSON(in) - x.SourceRange = f - } - case "chunk": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Chunk = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PatchRequest_Body struct { - Address *grpc.Address `json:"address"` - NewAttributes []Header_Attribute `json:"newAttributes"` - ReplaceAttributes bool `json:"replaceAttributes"` - Patch *PatchRequest_Body_Patch `json:"patch"` -} - -var ( - _ encoding.ProtoMarshaler = (*PatchRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*PatchRequest_Body)(nil) - _ json.Marshaler = (*PatchRequest_Body)(nil) - _ json.Unmarshaler = (*PatchRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PatchRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Address) - for i := range x.NewAttributes { - size += proto.NestedStructureSizeUnchecked(2, &x.NewAttributes[i]) - } - size += proto.BoolSize(3, x.ReplaceAttributes) - size += proto.NestedStructureSize(4, x.Patch) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PatchRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PatchRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Address != nil { - x.Address.EmitProtobuf(mm.AppendMessage(1)) - } - for i := range x.NewAttributes { - x.NewAttributes[i].EmitProtobuf(mm.AppendMessage(2)) - } - if x.ReplaceAttributes { - mm.AppendBool(3, x.ReplaceAttributes) - } - if x.Patch != nil { - x.Patch.EmitProtobuf(mm.AppendMessage(4)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PatchRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PatchRequest_Body") - } - switch fc.FieldNum { - case 1: // Address - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Address") - } - x.Address = new(grpc.Address) - if err := x.Address.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // NewAttributes - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "NewAttributes") - } - x.NewAttributes = append(x.NewAttributes, Header_Attribute{}) - ff := &x.NewAttributes[len(x.NewAttributes)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // ReplaceAttributes - data, ok := fc.Bool() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ReplaceAttributes") - } - x.ReplaceAttributes = data - case 4: // Patch - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Patch") - } - x.Patch = new(PatchRequest_Body_Patch) - if err := x.Patch.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PatchRequest_Body) GetAddress() *grpc.Address { - if x != nil { - return x.Address - } - return nil -} -func (x *PatchRequest_Body) SetAddress(v *grpc.Address) { - x.Address = v -} -func (x *PatchRequest_Body) GetNewAttributes() []Header_Attribute { - if x != nil { - return x.NewAttributes - } - return nil -} -func (x *PatchRequest_Body) SetNewAttributes(v []Header_Attribute) { - x.NewAttributes = v -} -func (x *PatchRequest_Body) GetReplaceAttributes() bool { - if x != nil { - return x.ReplaceAttributes - } - return false -} -func (x *PatchRequest_Body) SetReplaceAttributes(v bool) { - x.ReplaceAttributes = v -} -func (x *PatchRequest_Body) GetPatch() *PatchRequest_Body_Patch { - if x != nil { - return x.Patch - } - return nil -} -func (x *PatchRequest_Body) SetPatch(v *PatchRequest_Body_Patch) { - x.Patch = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PatchRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PatchRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"address\":" - out.RawString(prefix) - x.Address.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"newAttributes\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.NewAttributes { - if i != 0 { - out.RawByte(',') - } - x.NewAttributes[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"replaceAttributes\":" - out.RawString(prefix) - out.Bool(x.ReplaceAttributes) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"patch\":" - out.RawString(prefix) - x.Patch.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PatchRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PatchRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "address": - { - var f *grpc.Address - f = new(grpc.Address) - f.UnmarshalEasyJSON(in) - x.Address = f - } - case "newAttributes": - { - var f Header_Attribute - var list []Header_Attribute - in.Delim('[') - for !in.IsDelim(']') { - f = Header_Attribute{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.NewAttributes = list - in.Delim(']') - } - case "replaceAttributes": - { - var f bool - f = in.Bool() - x.ReplaceAttributes = f - } - case "patch": - { - var f *PatchRequest_Body_Patch - f = new(PatchRequest_Body_Patch) - f.UnmarshalEasyJSON(in) - x.Patch = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PatchRequest struct { - Body *PatchRequest_Body `json:"body"` - MetaHeader *grpc1.RequestMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*PatchRequest)(nil) - _ encoding.ProtoUnmarshaler = (*PatchRequest)(nil) - _ json.Marshaler = (*PatchRequest)(nil) - _ json.Unmarshaler = (*PatchRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PatchRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *PatchRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *PatchRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PatchRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PatchRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PatchRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PatchRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(PatchRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PatchRequest) GetBody() *PatchRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *PatchRequest) SetBody(v *PatchRequest_Body) { - x.Body = v -} -func (x *PatchRequest) GetMetaHeader() *grpc1.RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *PatchRequest) SetMetaHeader(v *grpc1.RequestMetaHeader) { - x.MetaHeader = v -} -func (x *PatchRequest) GetVerifyHeader() *grpc1.RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *PatchRequest) SetVerifyHeader(v *grpc1.RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PatchRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PatchRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PatchRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PatchRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *PatchRequest_Body - f = new(PatchRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.RequestMetaHeader - f = new(grpc1.RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.RequestVerificationHeader - f = new(grpc1.RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PatchResponse_Body struct { - ObjectId *grpc.ObjectID `json:"objectId"` -} - -var ( - _ encoding.ProtoMarshaler = (*PatchResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*PatchResponse_Body)(nil) - _ json.Marshaler = (*PatchResponse_Body)(nil) - _ json.Unmarshaler = (*PatchResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PatchResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.ObjectId) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PatchResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PatchResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.ObjectId != nil { - x.ObjectId.EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PatchResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PatchResponse_Body") - } - switch fc.FieldNum { - case 1: // ObjectId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ObjectId") - } - x.ObjectId = new(grpc.ObjectID) - if err := x.ObjectId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PatchResponse_Body) GetObjectId() *grpc.ObjectID { - if x != nil { - return x.ObjectId - } - return nil -} -func (x *PatchResponse_Body) SetObjectId(v *grpc.ObjectID) { - x.ObjectId = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PatchResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PatchResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"objectId\":" - out.RawString(prefix) - x.ObjectId.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PatchResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PatchResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "objectId": - { - var f *grpc.ObjectID - f = new(grpc.ObjectID) - f.UnmarshalEasyJSON(in) - x.ObjectId = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type PatchResponse struct { - Body *PatchResponse_Body `json:"body"` - MetaHeader *grpc1.ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *grpc1.ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*PatchResponse)(nil) - _ encoding.ProtoUnmarshaler = (*PatchResponse)(nil) - _ json.Marshaler = (*PatchResponse)(nil) - _ json.Unmarshaler = (*PatchResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *PatchResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *PatchResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *PatchResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *PatchResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *PatchResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *PatchResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "PatchResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(PatchResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(grpc1.ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(grpc1.ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *PatchResponse) GetBody() *PatchResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *PatchResponse) SetBody(v *PatchResponse_Body) { - x.Body = v -} -func (x *PatchResponse) GetMetaHeader() *grpc1.ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *PatchResponse) SetMetaHeader(v *grpc1.ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *PatchResponse) GetVerifyHeader() *grpc1.ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *PatchResponse) SetVerifyHeader(v *grpc1.ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *PatchResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *PatchResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *PatchResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *PatchResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *PatchResponse_Body - f = new(PatchResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *grpc1.ResponseMetaHeader - f = new(grpc1.ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *grpc1.ResponseVerificationHeader - f = new(grpc1.ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/object/grpc/service_frostfs_fuzz.go b/object/grpc/service_frostfs_fuzz.go deleted file mode 100644 index f58ee01..0000000 --- a/object/grpc/service_frostfs_fuzz.go +++ /dev/null @@ -1,387 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package object - -func DoFuzzProtoGetRequest(data []byte) int { - msg := new(GetRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONGetRequest(data []byte) int { - msg := new(GetRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoGetResponse(data []byte) int { - msg := new(GetResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONGetResponse(data []byte) int { - msg := new(GetResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoPutRequest(data []byte) int { - msg := new(PutRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONPutRequest(data []byte) int { - msg := new(PutRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoPutResponse(data []byte) int { - msg := new(PutResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONPutResponse(data []byte) int { - msg := new(PutResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoDeleteRequest(data []byte) int { - msg := new(DeleteRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONDeleteRequest(data []byte) int { - msg := new(DeleteRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoDeleteResponse(data []byte) int { - msg := new(DeleteResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONDeleteResponse(data []byte) int { - msg := new(DeleteResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoHeadRequest(data []byte) int { - msg := new(HeadRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONHeadRequest(data []byte) int { - msg := new(HeadRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoHeaderWithSignature(data []byte) int { - msg := new(HeaderWithSignature) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONHeaderWithSignature(data []byte) int { - msg := new(HeaderWithSignature) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoHeadResponse(data []byte) int { - msg := new(HeadResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONHeadResponse(data []byte) int { - msg := new(HeadResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoSearchRequest(data []byte) int { - msg := new(SearchRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONSearchRequest(data []byte) int { - msg := new(SearchRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoSearchResponse(data []byte) int { - msg := new(SearchResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONSearchResponse(data []byte) int { - msg := new(SearchResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoRange(data []byte) int { - msg := new(Range) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONRange(data []byte) int { - msg := new(Range) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoGetRangeRequest(data []byte) int { - msg := new(GetRangeRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONGetRangeRequest(data []byte) int { - msg := new(GetRangeRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoGetRangeResponse(data []byte) int { - msg := new(GetRangeResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONGetRangeResponse(data []byte) int { - msg := new(GetRangeResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoGetRangeHashRequest(data []byte) int { - msg := new(GetRangeHashRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONGetRangeHashRequest(data []byte) int { - msg := new(GetRangeHashRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoGetRangeHashResponse(data []byte) int { - msg := new(GetRangeHashResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONGetRangeHashResponse(data []byte) int { - msg := new(GetRangeHashResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoPutSingleRequest(data []byte) int { - msg := new(PutSingleRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONPutSingleRequest(data []byte) int { - msg := new(PutSingleRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoPutSingleResponse(data []byte) int { - msg := new(PutSingleResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONPutSingleResponse(data []byte) int { - msg := new(PutSingleResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoPatchRequest(data []byte) int { - msg := new(PatchRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONPatchRequest(data []byte) int { - msg := new(PatchRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoPatchResponse(data []byte) int { - msg := new(PatchResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONPatchResponse(data []byte) int { - msg := new(PatchResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/object/grpc/service_frostfs_test.go b/object/grpc/service_frostfs_test.go deleted file mode 100644 index cb4baeb..0000000 --- a/object/grpc/service_frostfs_test.go +++ /dev/null @@ -1,211 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package object - -import ( - testing "testing" -) - -func FuzzProtoGetRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoGetRequest(data) - }) -} -func FuzzJSONGetRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONGetRequest(data) - }) -} -func FuzzProtoGetResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoGetResponse(data) - }) -} -func FuzzJSONGetResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONGetResponse(data) - }) -} -func FuzzProtoPutRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoPutRequest(data) - }) -} -func FuzzJSONPutRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONPutRequest(data) - }) -} -func FuzzProtoPutResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoPutResponse(data) - }) -} -func FuzzJSONPutResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONPutResponse(data) - }) -} -func FuzzProtoDeleteRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoDeleteRequest(data) - }) -} -func FuzzJSONDeleteRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONDeleteRequest(data) - }) -} -func FuzzProtoDeleteResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoDeleteResponse(data) - }) -} -func FuzzJSONDeleteResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONDeleteResponse(data) - }) -} -func FuzzProtoHeadRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoHeadRequest(data) - }) -} -func FuzzJSONHeadRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONHeadRequest(data) - }) -} -func FuzzProtoHeaderWithSignature(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoHeaderWithSignature(data) - }) -} -func FuzzJSONHeaderWithSignature(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONHeaderWithSignature(data) - }) -} -func FuzzProtoHeadResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoHeadResponse(data) - }) -} -func FuzzJSONHeadResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONHeadResponse(data) - }) -} -func FuzzProtoSearchRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoSearchRequest(data) - }) -} -func FuzzJSONSearchRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONSearchRequest(data) - }) -} -func FuzzProtoSearchResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoSearchResponse(data) - }) -} -func FuzzJSONSearchResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONSearchResponse(data) - }) -} -func FuzzProtoRange(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoRange(data) - }) -} -func FuzzJSONRange(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONRange(data) - }) -} -func FuzzProtoGetRangeRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoGetRangeRequest(data) - }) -} -func FuzzJSONGetRangeRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONGetRangeRequest(data) - }) -} -func FuzzProtoGetRangeResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoGetRangeResponse(data) - }) -} -func FuzzJSONGetRangeResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONGetRangeResponse(data) - }) -} -func FuzzProtoGetRangeHashRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoGetRangeHashRequest(data) - }) -} -func FuzzJSONGetRangeHashRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONGetRangeHashRequest(data) - }) -} -func FuzzProtoGetRangeHashResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoGetRangeHashResponse(data) - }) -} -func FuzzJSONGetRangeHashResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONGetRangeHashResponse(data) - }) -} -func FuzzProtoPutSingleRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoPutSingleRequest(data) - }) -} -func FuzzJSONPutSingleRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONPutSingleRequest(data) - }) -} -func FuzzProtoPutSingleResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoPutSingleResponse(data) - }) -} -func FuzzJSONPutSingleResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONPutSingleResponse(data) - }) -} -func FuzzProtoPatchRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoPatchRequest(data) - }) -} -func FuzzJSONPatchRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONPatchRequest(data) - }) -} -func FuzzProtoPatchResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoPatchResponse(data) - }) -} -func FuzzJSONPatchResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONPatchResponse(data) - }) -} diff --git a/object/grpc/service_grpc.pb.go b/object/grpc/service_grpc.pb.go deleted file mode 100644 index abc1c71..0000000 --- a/object/grpc/service_grpc.pb.go +++ /dev/null @@ -1,1163 +0,0 @@ -// Code generated by protoc-gen-go-grpc. DO NOT EDIT. -// versions: -// - protoc-gen-go-grpc v1.3.0 -// - protoc v5.27.2 -// source: object/grpc/service.proto - -package object - -import ( - context "context" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" -) - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.32.0 or later. -const _ = grpc.SupportPackageIsVersion7 - -const ( - ObjectService_Get_FullMethodName = "/neo.fs.v2.object.ObjectService/Get" - ObjectService_Put_FullMethodName = "/neo.fs.v2.object.ObjectService/Put" - ObjectService_Delete_FullMethodName = "/neo.fs.v2.object.ObjectService/Delete" - ObjectService_Head_FullMethodName = "/neo.fs.v2.object.ObjectService/Head" - ObjectService_Search_FullMethodName = "/neo.fs.v2.object.ObjectService/Search" - ObjectService_GetRange_FullMethodName = "/neo.fs.v2.object.ObjectService/GetRange" - ObjectService_GetRangeHash_FullMethodName = "/neo.fs.v2.object.ObjectService/GetRangeHash" - ObjectService_PutSingle_FullMethodName = "/neo.fs.v2.object.ObjectService/PutSingle" - ObjectService_Patch_FullMethodName = "/neo.fs.v2.object.ObjectService/Patch" -) - -// ObjectServiceClient is the client API for ObjectService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type ObjectServiceClient interface { - // Receive full object structure, including Headers and payload. Response uses - // gRPC stream. First response message carries the object with the requested - // address. Chunk messages are parts of the object's payload if it is needed. - // All messages, except the first one, carry payload chunks. The requested - // object can be restored by concatenation of object message payload and all - // chunks keeping the receiving order. - // - // Extended headers can change `Get` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH ] \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requsted version of Network Map for object placement - // calculation. - // - [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \ - // (`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \ - // Will try older versions (starting from `__SYSTEM__NETMAP_EPOCH` - // (`__NEOFS__NETMAP_EPOCH` is deprecated) if specified or the latest one - // otherwise) of Network Map to find an object until the depth limit is - // reached. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // object has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // read access to the object is denied; - // - **OBJECT_NOT_FOUND** (2049, SECTION_OBJECT): \ - // object not found in container; - // - **OBJECT_ALREADY_REMOVED** (2052, SECTION_OBJECT): \ - // the requested object has been marked as deleted; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (ObjectService_GetClient, error) - // Put the object into container. Request uses gRPC stream. First message - // SHOULD be of PutHeader type. `ContainerID` and `OwnerID` of an object - // SHOULD be set. Session token SHOULD be obtained before `PUT` operation (see - // session package). Chunk messages are considered by server as a part of an - // object payload. All messages, except first one, SHOULD be payload chunks. - // Chunk messages SHOULD be sent in the direct order of fragmentation. - // - // Extended headers can change `Put` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requsted version of Network Map for object placement - // calculation. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // object has been successfully saved in the container; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // write access to the container is denied; - // - **LOCKED** (2050, SECTION_OBJECT): \ - // placement of an object of type TOMBSTONE that includes at least one - // locked object is prohibited; - // - **LOCK_NON_REGULAR_OBJECT** (2051, SECTION_OBJECT): \ - // placement of an object of type LOCK that includes at least one object of - // type other than REGULAR is prohibited; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object storage container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_NOT_FOUND** (4096, SECTION_SESSION): \ - // (for trusted object preparation) session private key does not exist or - // has - // - // been deleted; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - Put(ctx context.Context, opts ...grpc.CallOption) (ObjectService_PutClient, error) - // Delete the object from a container. There is no immediate removal - // guarantee. Object will be marked for removal and deleted eventually. - // - // Extended headers can change `Delete` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH ] \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requested version of Network Map for object placement - // calculation. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // object has been successfully marked to be removed from the container; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // delete access to the object is denied; - // - **OBJECT_NOT_FOUND** (2049, SECTION_OBJECT): \ - // the object could not be deleted because it has not been \ - // found within the container; - // - **LOCKED** (2050, SECTION_OBJECT): \ - // deleting a locked object is prohibited; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*DeleteResponse, error) - // Returns the object Headers without data payload. By default full header is - // returned. If `main_only` request field is set, the short header with only - // the very minimal information will be returned instead. - // - // Extended headers can change `Head` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH ] \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requested version of Network Map for object placement - // calculation. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // object header has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // access to operation HEAD of the object is denied; - // - **OBJECT_NOT_FOUND** (2049, SECTION_OBJECT): \ - // object not found in container; - // - **OBJECT_ALREADY_REMOVED** (2052, SECTION_OBJECT): \ - // the requested object has been marked as deleted; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - Head(ctx context.Context, in *HeadRequest, opts ...grpc.CallOption) (*HeadResponse, error) - // Search objects in container. Search query allows to match by Object - // Header's filed values. Please see the corresponding FrostFS Technical - // Specification section for more details. - // - // Extended headers can change `Search` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH ] \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requested version of Network Map for object placement - // calculation. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // objects have been successfully selected; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // access to operation SEARCH of the object is denied; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // search container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - Search(ctx context.Context, in *SearchRequest, opts ...grpc.CallOption) (ObjectService_SearchClient, error) - // Get byte range of data payload. Range is set as an (offset, length) tuple. - // Like in `Get` method, the response uses gRPC stream. Requested range can be - // restored by concatenation of all received payload chunks keeping the - // receiving order. - // - // Extended headers can change `GetRange` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH ] \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requested version of Network Map for object placement - // calculation. - // - [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \ - // (`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \ - // Will try older versions of Network Map to find an object until the depth - // limit is reached. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // data range of the object payload has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // access to operation RANGE of the object is denied; - // - **OBJECT_NOT_FOUND** (2049, SECTION_OBJECT): \ - // object not found in container; - // - **OBJECT_ALREADY_REMOVED** (2052, SECTION_OBJECT): \ - // the requested object has been marked as deleted. - // - **OUT_OF_RANGE** (2053, SECTION_OBJECT): \ - // the requested range is out of bounds; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - GetRange(ctx context.Context, in *GetRangeRequest, opts ...grpc.CallOption) (ObjectService_GetRangeClient, error) - // Returns homomorphic or regular hash of object's payload range after - // applying XOR operation with the provided `salt`. Ranges are set of (offset, - // length) tuples. Hashes order in response corresponds to the ranges order in - // the request. Note that hash is calculated for XORed data. - // - // Extended headers can change `GetRangeHash` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH ] \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requested version of Network Map for object placement - // calculation. - // - [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \ - // (`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \ - // Will try older versions of Network Map to find an object until the depth - // limit is reached. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // data range of the object payload has been successfully hashed; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // access to operation RANGEHASH of the object is denied; - // - **OBJECT_NOT_FOUND** (2049, SECTION_OBJECT): \ - // object not found in container; - // - **OUT_OF_RANGE** (2053, SECTION_OBJECT): \ - // the requested range is out of bounds; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - GetRangeHash(ctx context.Context, in *GetRangeHashRequest, opts ...grpc.CallOption) (*GetRangeHashResponse, error) - // Put the prepared object into container. - // `ContainerID`, `ObjectID`, `OwnerID`, `PayloadHash` and `PayloadLength` of - // an object MUST be set. - // - // Extended headers can change `Put` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requested version of Network Map for object placement - // calculation. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // object has been successfully saved in the container; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // write access to the container is denied; - // - **LOCKED** (2050, SECTION_OBJECT): \ - // placement of an object of type TOMBSTONE that includes at least one - // locked object is prohibited; - // - **LOCK_NON_REGULAR_OBJECT** (2051, SECTION_OBJECT): \ - // placement of an object of type LOCK that includes at least one object of - // type other than REGULAR is prohibited; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object storage container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_NOT_FOUND** (4096, SECTION_SESSION): \ - // (for trusted object preparation) session private key does not exist or - // has - // - // been deleted; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - PutSingle(ctx context.Context, in *PutSingleRequest, opts ...grpc.CallOption) (*PutSingleResponse, error) - // Patch the object. Request uses gRPC stream. First message must set - // the address of the object that is going to get patched. If the object's - // attributes are patched, then these attrubutes must be set only within the - // first stream message. - // - // If the patch request is performed by NOT the object's owner but if the - // actor has the permission to perform the patch, then `OwnerID` of the object - // is changed. In this case the object's owner loses the object's ownership - // after the patch request is successfully done. - // - // As objects are content-addressable the patching causes new object ID - // generation for the patched object. This object id is set witihn - // `PatchResponse`. But the object id may remain unchanged in such cases: - // 1. The chunk of the applying patch contains the same value as the object's - // payload within the same range; - // 2. The patch that reverts the changes applied by preceding patch; - // 3. The application of the same patches for the object a few times. - // - // Extended headers can change `Patch` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requsted version of Network Map for object placement - // calculation. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // object has been successfully patched and saved in the container; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // write access to the container is denied; - // - **OBJECT_NOT_FOUND** (2049, SECTION_OBJECT): \ - // object not found in container; - // - **OBJECT_ALREADY_REMOVED** (2052, SECTION_OBJECT): \ - // the requested object has been marked as deleted. - // - **OUT_OF_RANGE** (2053, SECTION_OBJECT): \ - // the requested range is out of bounds; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object storage container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_NOT_FOUND** (4096, SECTION_SESSION): \ - // (for trusted object preparation) session private key does not exist or - // has been deleted; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - Patch(ctx context.Context, opts ...grpc.CallOption) (ObjectService_PatchClient, error) -} - -type objectServiceClient struct { - cc grpc.ClientConnInterface -} - -func NewObjectServiceClient(cc grpc.ClientConnInterface) ObjectServiceClient { - return &objectServiceClient{cc} -} - -func (c *objectServiceClient) Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (ObjectService_GetClient, error) { - stream, err := c.cc.NewStream(ctx, &ObjectService_ServiceDesc.Streams[0], ObjectService_Get_FullMethodName, opts...) - if err != nil { - return nil, err - } - x := &objectServiceGetClient{stream} - if err := x.ClientStream.SendMsg(in); err != nil { - return nil, err - } - if err := x.ClientStream.CloseSend(); err != nil { - return nil, err - } - return x, nil -} - -type ObjectService_GetClient interface { - Recv() (*GetResponse, error) - grpc.ClientStream -} - -type objectServiceGetClient struct { - grpc.ClientStream -} - -func (x *objectServiceGetClient) Recv() (*GetResponse, error) { - m := new(GetResponse) - if err := x.ClientStream.RecvMsg(m); err != nil { - return nil, err - } - return m, nil -} - -func (c *objectServiceClient) Put(ctx context.Context, opts ...grpc.CallOption) (ObjectService_PutClient, error) { - stream, err := c.cc.NewStream(ctx, &ObjectService_ServiceDesc.Streams[1], ObjectService_Put_FullMethodName, opts...) - if err != nil { - return nil, err - } - x := &objectServicePutClient{stream} - return x, nil -} - -type ObjectService_PutClient interface { - Send(*PutRequest) error - CloseAndRecv() (*PutResponse, error) - grpc.ClientStream -} - -type objectServicePutClient struct { - grpc.ClientStream -} - -func (x *objectServicePutClient) Send(m *PutRequest) error { - return x.ClientStream.SendMsg(m) -} - -func (x *objectServicePutClient) CloseAndRecv() (*PutResponse, error) { - if err := x.ClientStream.CloseSend(); err != nil { - return nil, err - } - m := new(PutResponse) - if err := x.ClientStream.RecvMsg(m); err != nil { - return nil, err - } - return m, nil -} - -func (c *objectServiceClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*DeleteResponse, error) { - out := new(DeleteResponse) - err := c.cc.Invoke(ctx, ObjectService_Delete_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *objectServiceClient) Head(ctx context.Context, in *HeadRequest, opts ...grpc.CallOption) (*HeadResponse, error) { - out := new(HeadResponse) - err := c.cc.Invoke(ctx, ObjectService_Head_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *objectServiceClient) Search(ctx context.Context, in *SearchRequest, opts ...grpc.CallOption) (ObjectService_SearchClient, error) { - stream, err := c.cc.NewStream(ctx, &ObjectService_ServiceDesc.Streams[2], ObjectService_Search_FullMethodName, opts...) - if err != nil { - return nil, err - } - x := &objectServiceSearchClient{stream} - if err := x.ClientStream.SendMsg(in); err != nil { - return nil, err - } - if err := x.ClientStream.CloseSend(); err != nil { - return nil, err - } - return x, nil -} - -type ObjectService_SearchClient interface { - Recv() (*SearchResponse, error) - grpc.ClientStream -} - -type objectServiceSearchClient struct { - grpc.ClientStream -} - -func (x *objectServiceSearchClient) Recv() (*SearchResponse, error) { - m := new(SearchResponse) - if err := x.ClientStream.RecvMsg(m); err != nil { - return nil, err - } - return m, nil -} - -func (c *objectServiceClient) GetRange(ctx context.Context, in *GetRangeRequest, opts ...grpc.CallOption) (ObjectService_GetRangeClient, error) { - stream, err := c.cc.NewStream(ctx, &ObjectService_ServiceDesc.Streams[3], ObjectService_GetRange_FullMethodName, opts...) - if err != nil { - return nil, err - } - x := &objectServiceGetRangeClient{stream} - if err := x.ClientStream.SendMsg(in); err != nil { - return nil, err - } - if err := x.ClientStream.CloseSend(); err != nil { - return nil, err - } - return x, nil -} - -type ObjectService_GetRangeClient interface { - Recv() (*GetRangeResponse, error) - grpc.ClientStream -} - -type objectServiceGetRangeClient struct { - grpc.ClientStream -} - -func (x *objectServiceGetRangeClient) Recv() (*GetRangeResponse, error) { - m := new(GetRangeResponse) - if err := x.ClientStream.RecvMsg(m); err != nil { - return nil, err - } - return m, nil -} - -func (c *objectServiceClient) GetRangeHash(ctx context.Context, in *GetRangeHashRequest, opts ...grpc.CallOption) (*GetRangeHashResponse, error) { - out := new(GetRangeHashResponse) - err := c.cc.Invoke(ctx, ObjectService_GetRangeHash_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *objectServiceClient) PutSingle(ctx context.Context, in *PutSingleRequest, opts ...grpc.CallOption) (*PutSingleResponse, error) { - out := new(PutSingleResponse) - err := c.cc.Invoke(ctx, ObjectService_PutSingle_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *objectServiceClient) Patch(ctx context.Context, opts ...grpc.CallOption) (ObjectService_PatchClient, error) { - stream, err := c.cc.NewStream(ctx, &ObjectService_ServiceDesc.Streams[4], ObjectService_Patch_FullMethodName, opts...) - if err != nil { - return nil, err - } - x := &objectServicePatchClient{stream} - return x, nil -} - -type ObjectService_PatchClient interface { - Send(*PatchRequest) error - CloseAndRecv() (*PatchResponse, error) - grpc.ClientStream -} - -type objectServicePatchClient struct { - grpc.ClientStream -} - -func (x *objectServicePatchClient) Send(m *PatchRequest) error { - return x.ClientStream.SendMsg(m) -} - -func (x *objectServicePatchClient) CloseAndRecv() (*PatchResponse, error) { - if err := x.ClientStream.CloseSend(); err != nil { - return nil, err - } - m := new(PatchResponse) - if err := x.ClientStream.RecvMsg(m); err != nil { - return nil, err - } - return m, nil -} - -// ObjectServiceServer is the server API for ObjectService service. -// All implementations should embed UnimplementedObjectServiceServer -// for forward compatibility -type ObjectServiceServer interface { - // Receive full object structure, including Headers and payload. Response uses - // gRPC stream. First response message carries the object with the requested - // address. Chunk messages are parts of the object's payload if it is needed. - // All messages, except the first one, carry payload chunks. The requested - // object can be restored by concatenation of object message payload and all - // chunks keeping the receiving order. - // - // Extended headers can change `Get` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH ] \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requsted version of Network Map for object placement - // calculation. - // - [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \ - // (`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \ - // Will try older versions (starting from `__SYSTEM__NETMAP_EPOCH` - // (`__NEOFS__NETMAP_EPOCH` is deprecated) if specified or the latest one - // otherwise) of Network Map to find an object until the depth limit is - // reached. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // object has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // read access to the object is denied; - // - **OBJECT_NOT_FOUND** (2049, SECTION_OBJECT): \ - // object not found in container; - // - **OBJECT_ALREADY_REMOVED** (2052, SECTION_OBJECT): \ - // the requested object has been marked as deleted; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - Get(*GetRequest, ObjectService_GetServer) error - // Put the object into container. Request uses gRPC stream. First message - // SHOULD be of PutHeader type. `ContainerID` and `OwnerID` of an object - // SHOULD be set. Session token SHOULD be obtained before `PUT` operation (see - // session package). Chunk messages are considered by server as a part of an - // object payload. All messages, except first one, SHOULD be payload chunks. - // Chunk messages SHOULD be sent in the direct order of fragmentation. - // - // Extended headers can change `Put` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requsted version of Network Map for object placement - // calculation. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // object has been successfully saved in the container; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // write access to the container is denied; - // - **LOCKED** (2050, SECTION_OBJECT): \ - // placement of an object of type TOMBSTONE that includes at least one - // locked object is prohibited; - // - **LOCK_NON_REGULAR_OBJECT** (2051, SECTION_OBJECT): \ - // placement of an object of type LOCK that includes at least one object of - // type other than REGULAR is prohibited; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object storage container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_NOT_FOUND** (4096, SECTION_SESSION): \ - // (for trusted object preparation) session private key does not exist or - // has - // - // been deleted; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - Put(ObjectService_PutServer) error - // Delete the object from a container. There is no immediate removal - // guarantee. Object will be marked for removal and deleted eventually. - // - // Extended headers can change `Delete` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH ] \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requested version of Network Map for object placement - // calculation. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // object has been successfully marked to be removed from the container; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // delete access to the object is denied; - // - **OBJECT_NOT_FOUND** (2049, SECTION_OBJECT): \ - // the object could not be deleted because it has not been \ - // found within the container; - // - **LOCKED** (2050, SECTION_OBJECT): \ - // deleting a locked object is prohibited; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - Delete(context.Context, *DeleteRequest) (*DeleteResponse, error) - // Returns the object Headers without data payload. By default full header is - // returned. If `main_only` request field is set, the short header with only - // the very minimal information will be returned instead. - // - // Extended headers can change `Head` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH ] \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requested version of Network Map for object placement - // calculation. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // object header has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // access to operation HEAD of the object is denied; - // - **OBJECT_NOT_FOUND** (2049, SECTION_OBJECT): \ - // object not found in container; - // - **OBJECT_ALREADY_REMOVED** (2052, SECTION_OBJECT): \ - // the requested object has been marked as deleted; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - Head(context.Context, *HeadRequest) (*HeadResponse, error) - // Search objects in container. Search query allows to match by Object - // Header's filed values. Please see the corresponding FrostFS Technical - // Specification section for more details. - // - // Extended headers can change `Search` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH ] \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requested version of Network Map for object placement - // calculation. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // objects have been successfully selected; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // access to operation SEARCH of the object is denied; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // search container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - Search(*SearchRequest, ObjectService_SearchServer) error - // Get byte range of data payload. Range is set as an (offset, length) tuple. - // Like in `Get` method, the response uses gRPC stream. Requested range can be - // restored by concatenation of all received payload chunks keeping the - // receiving order. - // - // Extended headers can change `GetRange` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH ] \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requested version of Network Map for object placement - // calculation. - // - [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \ - // (`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \ - // Will try older versions of Network Map to find an object until the depth - // limit is reached. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // data range of the object payload has been successfully read; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // access to operation RANGE of the object is denied; - // - **OBJECT_NOT_FOUND** (2049, SECTION_OBJECT): \ - // object not found in container; - // - **OBJECT_ALREADY_REMOVED** (2052, SECTION_OBJECT): \ - // the requested object has been marked as deleted. - // - **OUT_OF_RANGE** (2053, SECTION_OBJECT): \ - // the requested range is out of bounds; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - GetRange(*GetRangeRequest, ObjectService_GetRangeServer) error - // Returns homomorphic or regular hash of object's payload range after - // applying XOR operation with the provided `salt`. Ranges are set of (offset, - // length) tuples. Hashes order in response corresponds to the ranges order in - // the request. Note that hash is calculated for XORed data. - // - // Extended headers can change `GetRangeHash` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH ] \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requested version of Network Map for object placement - // calculation. - // - [ __SYSTEM__NETMAP_LOOKUP_DEPTH ] \ - // (`__NEOFS__NETMAP_LOOKUP_DEPTH` is deprecated) \ - // Will try older versions of Network Map to find an object until the depth - // limit is reached. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // data range of the object payload has been successfully hashed; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // access to operation RANGEHASH of the object is denied; - // - **OBJECT_NOT_FOUND** (2049, SECTION_OBJECT): \ - // object not found in container; - // - **OUT_OF_RANGE** (2053, SECTION_OBJECT): \ - // the requested range is out of bounds; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - GetRangeHash(context.Context, *GetRangeHashRequest) (*GetRangeHashResponse, error) - // Put the prepared object into container. - // `ContainerID`, `ObjectID`, `OwnerID`, `PayloadHash` and `PayloadLength` of - // an object MUST be set. - // - // Extended headers can change `Put` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requested version of Network Map for object placement - // calculation. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // object has been successfully saved in the container; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // write access to the container is denied; - // - **LOCKED** (2050, SECTION_OBJECT): \ - // placement of an object of type TOMBSTONE that includes at least one - // locked object is prohibited; - // - **LOCK_NON_REGULAR_OBJECT** (2051, SECTION_OBJECT): \ - // placement of an object of type LOCK that includes at least one object of - // type other than REGULAR is prohibited; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object storage container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_NOT_FOUND** (4096, SECTION_SESSION): \ - // (for trusted object preparation) session private key does not exist or - // has - // - // been deleted; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - PutSingle(context.Context, *PutSingleRequest) (*PutSingleResponse, error) - // Patch the object. Request uses gRPC stream. First message must set - // the address of the object that is going to get patched. If the object's - // attributes are patched, then these attrubutes must be set only within the - // first stream message. - // - // If the patch request is performed by NOT the object's owner but if the - // actor has the permission to perform the patch, then `OwnerID` of the object - // is changed. In this case the object's owner loses the object's ownership - // after the patch request is successfully done. - // - // As objects are content-addressable the patching causes new object ID - // generation for the patched object. This object id is set witihn - // `PatchResponse`. But the object id may remain unchanged in such cases: - // 1. The chunk of the applying patch contains the same value as the object's - // payload within the same range; - // 2. The patch that reverts the changes applied by preceding patch; - // 3. The application of the same patches for the object a few times. - // - // Extended headers can change `Patch` behaviour: - // - [ __SYSTEM__NETMAP_EPOCH \ - // (`__NEOFS__NETMAP_EPOCH` is deprecated) \ - // Will use the requsted version of Network Map for object placement - // calculation. - // - // Please refer to detailed `XHeader` description. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): \ - // object has been successfully patched and saved in the container; - // - Common failures (SECTION_FAILURE_COMMON); - // - **ACCESS_DENIED** (2048, SECTION_OBJECT): \ - // write access to the container is denied; - // - **OBJECT_NOT_FOUND** (2049, SECTION_OBJECT): \ - // object not found in container; - // - **OBJECT_ALREADY_REMOVED** (2052, SECTION_OBJECT): \ - // the requested object has been marked as deleted. - // - **OUT_OF_RANGE** (2053, SECTION_OBJECT): \ - // the requested range is out of bounds; - // - **CONTAINER_NOT_FOUND** (3072, SECTION_CONTAINER): \ - // object storage container not found; - // - **CONTAINER_ACCESS_DENIED** (3074, SECTION_CONTAINER): \ - // access to container is denied; - // - **TOKEN_NOT_FOUND** (4096, SECTION_SESSION): \ - // (for trusted object preparation) session private key does not exist or - // has been deleted; - // - **TOKEN_EXPIRED** (4097, SECTION_SESSION): \ - // provided session token has expired. - Patch(ObjectService_PatchServer) error -} - -// UnimplementedObjectServiceServer should be embedded to have forward compatible implementations. -type UnimplementedObjectServiceServer struct { -} - -func (UnimplementedObjectServiceServer) Get(*GetRequest, ObjectService_GetServer) error { - return status.Errorf(codes.Unimplemented, "method Get not implemented") -} -func (UnimplementedObjectServiceServer) Put(ObjectService_PutServer) error { - return status.Errorf(codes.Unimplemented, "method Put not implemented") -} -func (UnimplementedObjectServiceServer) Delete(context.Context, *DeleteRequest) (*DeleteResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented") -} -func (UnimplementedObjectServiceServer) Head(context.Context, *HeadRequest) (*HeadResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Head not implemented") -} -func (UnimplementedObjectServiceServer) Search(*SearchRequest, ObjectService_SearchServer) error { - return status.Errorf(codes.Unimplemented, "method Search not implemented") -} -func (UnimplementedObjectServiceServer) GetRange(*GetRangeRequest, ObjectService_GetRangeServer) error { - return status.Errorf(codes.Unimplemented, "method GetRange not implemented") -} -func (UnimplementedObjectServiceServer) GetRangeHash(context.Context, *GetRangeHashRequest) (*GetRangeHashResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetRangeHash not implemented") -} -func (UnimplementedObjectServiceServer) PutSingle(context.Context, *PutSingleRequest) (*PutSingleResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method PutSingle not implemented") -} -func (UnimplementedObjectServiceServer) Patch(ObjectService_PatchServer) error { - return status.Errorf(codes.Unimplemented, "method Patch not implemented") -} - -// UnsafeObjectServiceServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to ObjectServiceServer will -// result in compilation errors. -type UnsafeObjectServiceServer interface { - mustEmbedUnimplementedObjectServiceServer() -} - -func RegisterObjectServiceServer(s grpc.ServiceRegistrar, srv ObjectServiceServer) { - s.RegisterService(&ObjectService_ServiceDesc, srv) -} - -func _ObjectService_Get_Handler(srv interface{}, stream grpc.ServerStream) error { - m := new(GetRequest) - if err := stream.RecvMsg(m); err != nil { - return err - } - return srv.(ObjectServiceServer).Get(m, &objectServiceGetServer{stream}) -} - -type ObjectService_GetServer interface { - Send(*GetResponse) error - grpc.ServerStream -} - -type objectServiceGetServer struct { - grpc.ServerStream -} - -func (x *objectServiceGetServer) Send(m *GetResponse) error { - return x.ServerStream.SendMsg(m) -} - -func _ObjectService_Put_Handler(srv interface{}, stream grpc.ServerStream) error { - return srv.(ObjectServiceServer).Put(&objectServicePutServer{stream}) -} - -type ObjectService_PutServer interface { - SendAndClose(*PutResponse) error - Recv() (*PutRequest, error) - grpc.ServerStream -} - -type objectServicePutServer struct { - grpc.ServerStream -} - -func (x *objectServicePutServer) SendAndClose(m *PutResponse) error { - return x.ServerStream.SendMsg(m) -} - -func (x *objectServicePutServer) Recv() (*PutRequest, error) { - m := new(PutRequest) - if err := x.ServerStream.RecvMsg(m); err != nil { - return nil, err - } - return m, nil -} - -func _ObjectService_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ObjectServiceServer).Delete(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: ObjectService_Delete_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ObjectServiceServer).Delete(ctx, req.(*DeleteRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _ObjectService_Head_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(HeadRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ObjectServiceServer).Head(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: ObjectService_Head_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ObjectServiceServer).Head(ctx, req.(*HeadRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _ObjectService_Search_Handler(srv interface{}, stream grpc.ServerStream) error { - m := new(SearchRequest) - if err := stream.RecvMsg(m); err != nil { - return err - } - return srv.(ObjectServiceServer).Search(m, &objectServiceSearchServer{stream}) -} - -type ObjectService_SearchServer interface { - Send(*SearchResponse) error - grpc.ServerStream -} - -type objectServiceSearchServer struct { - grpc.ServerStream -} - -func (x *objectServiceSearchServer) Send(m *SearchResponse) error { - return x.ServerStream.SendMsg(m) -} - -func _ObjectService_GetRange_Handler(srv interface{}, stream grpc.ServerStream) error { - m := new(GetRangeRequest) - if err := stream.RecvMsg(m); err != nil { - return err - } - return srv.(ObjectServiceServer).GetRange(m, &objectServiceGetRangeServer{stream}) -} - -type ObjectService_GetRangeServer interface { - Send(*GetRangeResponse) error - grpc.ServerStream -} - -type objectServiceGetRangeServer struct { - grpc.ServerStream -} - -func (x *objectServiceGetRangeServer) Send(m *GetRangeResponse) error { - return x.ServerStream.SendMsg(m) -} - -func _ObjectService_GetRangeHash_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetRangeHashRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ObjectServiceServer).GetRangeHash(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: ObjectService_GetRangeHash_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ObjectServiceServer).GetRangeHash(ctx, req.(*GetRangeHashRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _ObjectService_PutSingle_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(PutSingleRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(ObjectServiceServer).PutSingle(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: ObjectService_PutSingle_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ObjectServiceServer).PutSingle(ctx, req.(*PutSingleRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _ObjectService_Patch_Handler(srv interface{}, stream grpc.ServerStream) error { - return srv.(ObjectServiceServer).Patch(&objectServicePatchServer{stream}) -} - -type ObjectService_PatchServer interface { - SendAndClose(*PatchResponse) error - Recv() (*PatchRequest, error) - grpc.ServerStream -} - -type objectServicePatchServer struct { - grpc.ServerStream -} - -func (x *objectServicePatchServer) SendAndClose(m *PatchResponse) error { - return x.ServerStream.SendMsg(m) -} - -func (x *objectServicePatchServer) Recv() (*PatchRequest, error) { - m := new(PatchRequest) - if err := x.ServerStream.RecvMsg(m); err != nil { - return nil, err - } - return m, nil -} - -// ObjectService_ServiceDesc is the grpc.ServiceDesc for ObjectService service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var ObjectService_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "neo.fs.v2.object.ObjectService", - HandlerType: (*ObjectServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "Delete", - Handler: _ObjectService_Delete_Handler, - }, - { - MethodName: "Head", - Handler: _ObjectService_Head_Handler, - }, - { - MethodName: "GetRangeHash", - Handler: _ObjectService_GetRangeHash_Handler, - }, - { - MethodName: "PutSingle", - Handler: _ObjectService_PutSingle_Handler, - }, - }, - Streams: []grpc.StreamDesc{ - { - StreamName: "Get", - Handler: _ObjectService_Get_Handler, - ServerStreams: true, - }, - { - StreamName: "Put", - Handler: _ObjectService_Put_Handler, - ClientStreams: true, - }, - { - StreamName: "Search", - Handler: _ObjectService_Search_Handler, - ServerStreams: true, - }, - { - StreamName: "GetRange", - Handler: _ObjectService_GetRange_Handler, - ServerStreams: true, - }, - { - StreamName: "Patch", - Handler: _ObjectService_Patch_Handler, - ClientStreams: true, - }, - }, - Metadata: "object/grpc/service.proto", -} diff --git a/object/grpc/types_frostfs.pb.go b/object/grpc/types_frostfs.pb.go deleted file mode 100644 index a6d4f01..0000000 --- a/object/grpc/types_frostfs.pb.go +++ /dev/null @@ -1,2992 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package object - -import ( - json "encoding/json" - fmt "fmt" - grpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - grpc1 "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" - strconv "strconv" -) - -type ObjectType int32 - -const ( - ObjectType_REGULAR ObjectType = 0 - ObjectType_TOMBSTONE ObjectType = 1 - ObjectType_LOCK ObjectType = 3 -) - -var ( - ObjectType_name = map[int32]string{ - 0: "REGULAR", - 1: "TOMBSTONE", - 3: "LOCK", - } - ObjectType_value = map[string]int32{ - "REGULAR": 0, - "TOMBSTONE": 1, - "LOCK": 3, - } -) - -func (x ObjectType) String() string { - if v, ok := ObjectType_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *ObjectType) FromString(s string) bool { - if v, ok := ObjectType_value[s]; ok { - *x = ObjectType(v) - return true - } - return false -} - -type MatchType int32 - -const ( - MatchType_MATCH_TYPE_UNSPECIFIED MatchType = 0 - MatchType_STRING_EQUAL MatchType = 1 - MatchType_STRING_NOT_EQUAL MatchType = 2 - MatchType_NOT_PRESENT MatchType = 3 - MatchType_COMMON_PREFIX MatchType = 4 -) - -var ( - MatchType_name = map[int32]string{ - 0: "MATCH_TYPE_UNSPECIFIED", - 1: "STRING_EQUAL", - 2: "STRING_NOT_EQUAL", - 3: "NOT_PRESENT", - 4: "COMMON_PREFIX", - } - MatchType_value = map[string]int32{ - "MATCH_TYPE_UNSPECIFIED": 0, - "STRING_EQUAL": 1, - "STRING_NOT_EQUAL": 2, - "NOT_PRESENT": 3, - "COMMON_PREFIX": 4, - } -) - -func (x MatchType) String() string { - if v, ok := MatchType_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *MatchType) FromString(s string) bool { - if v, ok := MatchType_value[s]; ok { - *x = MatchType(v) - return true - } - return false -} - -type ShortHeader struct { - Version *grpc.Version `json:"version"` - CreationEpoch uint64 `json:"creationEpoch"` - OwnerId *grpc.OwnerID `json:"ownerID"` - ObjectType ObjectType `json:"objectType"` - PayloadLength uint64 `json:"payloadLength"` - PayloadHash *grpc.Checksum `json:"payloadHash"` - HomomorphicHash *grpc.Checksum `json:"homomorphicHash"` -} - -var ( - _ encoding.ProtoMarshaler = (*ShortHeader)(nil) - _ encoding.ProtoUnmarshaler = (*ShortHeader)(nil) - _ json.Marshaler = (*ShortHeader)(nil) - _ json.Unmarshaler = (*ShortHeader)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ShortHeader) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Version) - size += proto.UInt64Size(2, x.CreationEpoch) - size += proto.NestedStructureSize(3, x.OwnerId) - size += proto.EnumSize(4, int32(x.ObjectType)) - size += proto.UInt64Size(5, x.PayloadLength) - size += proto.NestedStructureSize(6, x.PayloadHash) - size += proto.NestedStructureSize(7, x.HomomorphicHash) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ShortHeader) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ShortHeader) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Version != nil { - x.Version.EmitProtobuf(mm.AppendMessage(1)) - } - if x.CreationEpoch != 0 { - mm.AppendUint64(2, x.CreationEpoch) - } - if x.OwnerId != nil { - x.OwnerId.EmitProtobuf(mm.AppendMessage(3)) - } - if int32(x.ObjectType) != 0 { - mm.AppendInt32(4, int32(x.ObjectType)) - } - if x.PayloadLength != 0 { - mm.AppendUint64(5, x.PayloadLength) - } - if x.PayloadHash != nil { - x.PayloadHash.EmitProtobuf(mm.AppendMessage(6)) - } - if x.HomomorphicHash != nil { - x.HomomorphicHash.EmitProtobuf(mm.AppendMessage(7)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ShortHeader) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ShortHeader") - } - switch fc.FieldNum { - case 1: // Version - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Version") - } - x.Version = new(grpc.Version) - if err := x.Version.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // CreationEpoch - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "CreationEpoch") - } - x.CreationEpoch = data - case 3: // OwnerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "OwnerId") - } - x.OwnerId = new(grpc.OwnerID) - if err := x.OwnerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 4: // ObjectType - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ObjectType") - } - x.ObjectType = ObjectType(data) - case 5: // PayloadLength - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "PayloadLength") - } - x.PayloadLength = data - case 6: // PayloadHash - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "PayloadHash") - } - x.PayloadHash = new(grpc.Checksum) - if err := x.PayloadHash.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 7: // HomomorphicHash - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "HomomorphicHash") - } - x.HomomorphicHash = new(grpc.Checksum) - if err := x.HomomorphicHash.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ShortHeader) GetVersion() *grpc.Version { - if x != nil { - return x.Version - } - return nil -} -func (x *ShortHeader) SetVersion(v *grpc.Version) { - x.Version = v -} -func (x *ShortHeader) GetCreationEpoch() uint64 { - if x != nil { - return x.CreationEpoch - } - return 0 -} -func (x *ShortHeader) SetCreationEpoch(v uint64) { - x.CreationEpoch = v -} -func (x *ShortHeader) GetOwnerId() *grpc.OwnerID { - if x != nil { - return x.OwnerId - } - return nil -} -func (x *ShortHeader) SetOwnerId(v *grpc.OwnerID) { - x.OwnerId = v -} -func (x *ShortHeader) GetObjectType() ObjectType { - if x != nil { - return x.ObjectType - } - return 0 -} -func (x *ShortHeader) SetObjectType(v ObjectType) { - x.ObjectType = v -} -func (x *ShortHeader) GetPayloadLength() uint64 { - if x != nil { - return x.PayloadLength - } - return 0 -} -func (x *ShortHeader) SetPayloadLength(v uint64) { - x.PayloadLength = v -} -func (x *ShortHeader) GetPayloadHash() *grpc.Checksum { - if x != nil { - return x.PayloadHash - } - return nil -} -func (x *ShortHeader) SetPayloadHash(v *grpc.Checksum) { - x.PayloadHash = v -} -func (x *ShortHeader) GetHomomorphicHash() *grpc.Checksum { - if x != nil { - return x.HomomorphicHash - } - return nil -} -func (x *ShortHeader) SetHomomorphicHash(v *grpc.Checksum) { - x.HomomorphicHash = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ShortHeader) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ShortHeader) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"version\":" - out.RawString(prefix) - x.Version.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"creationEpoch\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.CreationEpoch, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ownerID\":" - out.RawString(prefix) - x.OwnerId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"objectType\":" - out.RawString(prefix) - v := int32(x.ObjectType) - if vv, ok := ObjectType_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"payloadLength\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.PayloadLength, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"payloadHash\":" - out.RawString(prefix) - x.PayloadHash.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"homomorphicHash\":" - out.RawString(prefix) - x.HomomorphicHash.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ShortHeader) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ShortHeader) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "version": - { - var f *grpc.Version - f = new(grpc.Version) - f.UnmarshalEasyJSON(in) - x.Version = f - } - case "creationEpoch": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.CreationEpoch = f - } - case "ownerID": - { - var f *grpc.OwnerID - f = new(grpc.OwnerID) - f.UnmarshalEasyJSON(in) - x.OwnerId = f - } - case "objectType": - { - var f ObjectType - var parsedValue ObjectType - switch v := in.Interface().(type) { - case string: - if vv, ok := ObjectType_value[v]; ok { - parsedValue = ObjectType(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = ObjectType(vv) - case float64: - parsedValue = ObjectType(v) - } - f = parsedValue - x.ObjectType = f - } - case "payloadLength": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.PayloadLength = f - } - case "payloadHash": - { - var f *grpc.Checksum - f = new(grpc.Checksum) - f.UnmarshalEasyJSON(in) - x.PayloadHash = f - } - case "homomorphicHash": - { - var f *grpc.Checksum - f = new(grpc.Checksum) - f.UnmarshalEasyJSON(in) - x.HomomorphicHash = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Header_Attribute struct { - Key string `json:"key"` - Value string `json:"value"` -} - -var ( - _ encoding.ProtoMarshaler = (*Header_Attribute)(nil) - _ encoding.ProtoUnmarshaler = (*Header_Attribute)(nil) - _ json.Marshaler = (*Header_Attribute)(nil) - _ json.Unmarshaler = (*Header_Attribute)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Header_Attribute) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.StringSize(1, x.Key) - size += proto.StringSize(2, x.Value) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Header_Attribute) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Header_Attribute) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Key) != 0 { - mm.AppendString(1, x.Key) - } - if len(x.Value) != 0 { - mm.AppendString(2, x.Value) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Header_Attribute) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Header_Attribute") - } - switch fc.FieldNum { - case 1: // Key - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Key") - } - x.Key = data - case 2: // Value - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - } - } - return nil -} -func (x *Header_Attribute) GetKey() string { - if x != nil { - return x.Key - } - return "" -} -func (x *Header_Attribute) SetKey(v string) { - x.Key = v -} -func (x *Header_Attribute) GetValue() string { - if x != nil { - return x.Value - } - return "" -} -func (x *Header_Attribute) SetValue(v string) { - x.Value = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Header_Attribute) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Header_Attribute) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"key\":" - out.RawString(prefix) - out.String(x.Key) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - out.String(x.Value) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Header_Attribute) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Header_Attribute) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "key": - { - var f string - f = in.String() - x.Key = f - } - case "value": - { - var f string - f = in.String() - x.Value = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Header_Split struct { - Parent *grpc.ObjectID `json:"parent"` - Previous *grpc.ObjectID `json:"previous"` - ParentSignature *grpc.Signature `json:"parentSignature"` - ParentHeader *Header `json:"parentHeader"` - Children []grpc.ObjectID `json:"children"` - SplitId []byte `json:"splitID"` -} - -var ( - _ encoding.ProtoMarshaler = (*Header_Split)(nil) - _ encoding.ProtoUnmarshaler = (*Header_Split)(nil) - _ json.Marshaler = (*Header_Split)(nil) - _ json.Unmarshaler = (*Header_Split)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Header_Split) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Parent) - size += proto.NestedStructureSize(2, x.Previous) - size += proto.NestedStructureSize(3, x.ParentSignature) - size += proto.NestedStructureSize(4, x.ParentHeader) - for i := range x.Children { - size += proto.NestedStructureSizeUnchecked(5, &x.Children[i]) - } - size += proto.BytesSize(6, x.SplitId) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Header_Split) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Header_Split) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Parent != nil { - x.Parent.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Previous != nil { - x.Previous.EmitProtobuf(mm.AppendMessage(2)) - } - if x.ParentSignature != nil { - x.ParentSignature.EmitProtobuf(mm.AppendMessage(3)) - } - if x.ParentHeader != nil { - x.ParentHeader.EmitProtobuf(mm.AppendMessage(4)) - } - for i := range x.Children { - x.Children[i].EmitProtobuf(mm.AppendMessage(5)) - } - if len(x.SplitId) != 0 { - mm.AppendBytes(6, x.SplitId) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Header_Split) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Header_Split") - } - switch fc.FieldNum { - case 1: // Parent - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Parent") - } - x.Parent = new(grpc.ObjectID) - if err := x.Parent.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Previous - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Previous") - } - x.Previous = new(grpc.ObjectID) - if err := x.Previous.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // ParentSignature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ParentSignature") - } - x.ParentSignature = new(grpc.Signature) - if err := x.ParentSignature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 4: // ParentHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ParentHeader") - } - x.ParentHeader = new(Header) - if err := x.ParentHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 5: // Children - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Children") - } - x.Children = append(x.Children, grpc.ObjectID{}) - ff := &x.Children[len(x.Children)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 6: // SplitId - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "SplitId") - } - x.SplitId = data - } - } - return nil -} -func (x *Header_Split) GetParent() *grpc.ObjectID { - if x != nil { - return x.Parent - } - return nil -} -func (x *Header_Split) SetParent(v *grpc.ObjectID) { - x.Parent = v -} -func (x *Header_Split) GetPrevious() *grpc.ObjectID { - if x != nil { - return x.Previous - } - return nil -} -func (x *Header_Split) SetPrevious(v *grpc.ObjectID) { - x.Previous = v -} -func (x *Header_Split) GetParentSignature() *grpc.Signature { - if x != nil { - return x.ParentSignature - } - return nil -} -func (x *Header_Split) SetParentSignature(v *grpc.Signature) { - x.ParentSignature = v -} -func (x *Header_Split) GetParentHeader() *Header { - if x != nil { - return x.ParentHeader - } - return nil -} -func (x *Header_Split) SetParentHeader(v *Header) { - x.ParentHeader = v -} -func (x *Header_Split) GetChildren() []grpc.ObjectID { - if x != nil { - return x.Children - } - return nil -} -func (x *Header_Split) SetChildren(v []grpc.ObjectID) { - x.Children = v -} -func (x *Header_Split) GetSplitId() []byte { - if x != nil { - return x.SplitId - } - return nil -} -func (x *Header_Split) SetSplitId(v []byte) { - x.SplitId = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Header_Split) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Header_Split) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"parent\":" - out.RawString(prefix) - x.Parent.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"previous\":" - out.RawString(prefix) - x.Previous.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"parentSignature\":" - out.RawString(prefix) - x.ParentSignature.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"parentHeader\":" - out.RawString(prefix) - x.ParentHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"children\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Children { - if i != 0 { - out.RawByte(',') - } - x.Children[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"splitID\":" - out.RawString(prefix) - if x.SplitId != nil { - out.Base64Bytes(x.SplitId) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Header_Split) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Header_Split) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "parent": - { - var f *grpc.ObjectID - f = new(grpc.ObjectID) - f.UnmarshalEasyJSON(in) - x.Parent = f - } - case "previous": - { - var f *grpc.ObjectID - f = new(grpc.ObjectID) - f.UnmarshalEasyJSON(in) - x.Previous = f - } - case "parentSignature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.ParentSignature = f - } - case "parentHeader": - { - var f *Header - f = new(Header) - f.UnmarshalEasyJSON(in) - x.ParentHeader = f - } - case "children": - { - var f grpc.ObjectID - var list []grpc.ObjectID - in.Delim('[') - for !in.IsDelim(']') { - f = grpc.ObjectID{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Children = list - in.Delim(']') - } - case "splitID": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.SplitId = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Header_EC struct { - Parent *grpc.ObjectID `json:"parent"` - Index uint32 `json:"index"` - Total uint32 `json:"total"` - HeaderLength uint32 `json:"headerLength"` - Header []byte `json:"header"` - ParentSplitId []byte `json:"parentSplitID"` - ParentSplitParentId *grpc.ObjectID `json:"parentSplitParentID"` - ParentAttributes []Header_Attribute `json:"parentAttributes"` -} - -var ( - _ encoding.ProtoMarshaler = (*Header_EC)(nil) - _ encoding.ProtoUnmarshaler = (*Header_EC)(nil) - _ json.Marshaler = (*Header_EC)(nil) - _ json.Unmarshaler = (*Header_EC)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Header_EC) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Parent) - size += proto.UInt32Size(2, x.Index) - size += proto.UInt32Size(3, x.Total) - size += proto.UInt32Size(4, x.HeaderLength) - size += proto.BytesSize(5, x.Header) - size += proto.BytesSize(6, x.ParentSplitId) - size += proto.NestedStructureSize(7, x.ParentSplitParentId) - for i := range x.ParentAttributes { - size += proto.NestedStructureSizeUnchecked(8, &x.ParentAttributes[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Header_EC) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Header_EC) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Parent != nil { - x.Parent.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Index != 0 { - mm.AppendUint32(2, x.Index) - } - if x.Total != 0 { - mm.AppendUint32(3, x.Total) - } - if x.HeaderLength != 0 { - mm.AppendUint32(4, x.HeaderLength) - } - if len(x.Header) != 0 { - mm.AppendBytes(5, x.Header) - } - if len(x.ParentSplitId) != 0 { - mm.AppendBytes(6, x.ParentSplitId) - } - if x.ParentSplitParentId != nil { - x.ParentSplitParentId.EmitProtobuf(mm.AppendMessage(7)) - } - for i := range x.ParentAttributes { - x.ParentAttributes[i].EmitProtobuf(mm.AppendMessage(8)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Header_EC) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Header_EC") - } - switch fc.FieldNum { - case 1: // Parent - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Parent") - } - x.Parent = new(grpc.ObjectID) - if err := x.Parent.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Index - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Index") - } - x.Index = data - case 3: // Total - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Total") - } - x.Total = data - case 4: // HeaderLength - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "HeaderLength") - } - x.HeaderLength = data - case 5: // Header - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Header") - } - x.Header = data - case 6: // ParentSplitId - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ParentSplitId") - } - x.ParentSplitId = data - case 7: // ParentSplitParentId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ParentSplitParentId") - } - x.ParentSplitParentId = new(grpc.ObjectID) - if err := x.ParentSplitParentId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 8: // ParentAttributes - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ParentAttributes") - } - x.ParentAttributes = append(x.ParentAttributes, Header_Attribute{}) - ff := &x.ParentAttributes[len(x.ParentAttributes)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *Header_EC) GetParent() *grpc.ObjectID { - if x != nil { - return x.Parent - } - return nil -} -func (x *Header_EC) SetParent(v *grpc.ObjectID) { - x.Parent = v -} -func (x *Header_EC) GetIndex() uint32 { - if x != nil { - return x.Index - } - return 0 -} -func (x *Header_EC) SetIndex(v uint32) { - x.Index = v -} -func (x *Header_EC) GetTotal() uint32 { - if x != nil { - return x.Total - } - return 0 -} -func (x *Header_EC) SetTotal(v uint32) { - x.Total = v -} -func (x *Header_EC) GetHeaderLength() uint32 { - if x != nil { - return x.HeaderLength - } - return 0 -} -func (x *Header_EC) SetHeaderLength(v uint32) { - x.HeaderLength = v -} -func (x *Header_EC) GetHeader() []byte { - if x != nil { - return x.Header - } - return nil -} -func (x *Header_EC) SetHeader(v []byte) { - x.Header = v -} -func (x *Header_EC) GetParentSplitId() []byte { - if x != nil { - return x.ParentSplitId - } - return nil -} -func (x *Header_EC) SetParentSplitId(v []byte) { - x.ParentSplitId = v -} -func (x *Header_EC) GetParentSplitParentId() *grpc.ObjectID { - if x != nil { - return x.ParentSplitParentId - } - return nil -} -func (x *Header_EC) SetParentSplitParentId(v *grpc.ObjectID) { - x.ParentSplitParentId = v -} -func (x *Header_EC) GetParentAttributes() []Header_Attribute { - if x != nil { - return x.ParentAttributes - } - return nil -} -func (x *Header_EC) SetParentAttributes(v []Header_Attribute) { - x.ParentAttributes = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Header_EC) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Header_EC) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"parent\":" - out.RawString(prefix) - x.Parent.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"index\":" - out.RawString(prefix) - out.Uint32(x.Index) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"total\":" - out.RawString(prefix) - out.Uint32(x.Total) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"headerLength\":" - out.RawString(prefix) - out.Uint32(x.HeaderLength) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"header\":" - out.RawString(prefix) - if x.Header != nil { - out.Base64Bytes(x.Header) - } else { - out.String("") - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"parentSplitID\":" - out.RawString(prefix) - if x.ParentSplitId != nil { - out.Base64Bytes(x.ParentSplitId) - } else { - out.String("") - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"parentSplitParentID\":" - out.RawString(prefix) - x.ParentSplitParentId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"parentAttributes\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.ParentAttributes { - if i != 0 { - out.RawByte(',') - } - x.ParentAttributes[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Header_EC) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Header_EC) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "parent": - { - var f *grpc.ObjectID - f = new(grpc.ObjectID) - f.UnmarshalEasyJSON(in) - x.Parent = f - } - case "index": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Index = f - } - case "total": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Total = f - } - case "headerLength": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.HeaderLength = f - } - case "header": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Header = f - } - case "parentSplitID": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.ParentSplitId = f - } - case "parentSplitParentID": - { - var f *grpc.ObjectID - f = new(grpc.ObjectID) - f.UnmarshalEasyJSON(in) - x.ParentSplitParentId = f - } - case "parentAttributes": - { - var f Header_Attribute - var list []Header_Attribute - in.Delim('[') - for !in.IsDelim(']') { - f = Header_Attribute{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.ParentAttributes = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Header struct { - Version *grpc.Version `json:"version"` - ContainerId *grpc.ContainerID `json:"containerID"` - OwnerId *grpc.OwnerID `json:"ownerID"` - CreationEpoch uint64 `json:"creationEpoch"` - PayloadLength uint64 `json:"payloadLength"` - PayloadHash *grpc.Checksum `json:"payloadHash"` - ObjectType ObjectType `json:"objectType"` - HomomorphicHash *grpc.Checksum `json:"homomorphicHash"` - SessionToken *grpc1.SessionToken `json:"sessionToken"` - Attributes []Header_Attribute `json:"attributes"` - Split *Header_Split `json:"split"` - Ec *Header_EC `json:"ec"` -} - -var ( - _ encoding.ProtoMarshaler = (*Header)(nil) - _ encoding.ProtoUnmarshaler = (*Header)(nil) - _ json.Marshaler = (*Header)(nil) - _ json.Unmarshaler = (*Header)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Header) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Version) - size += proto.NestedStructureSize(2, x.ContainerId) - size += proto.NestedStructureSize(3, x.OwnerId) - size += proto.UInt64Size(4, x.CreationEpoch) - size += proto.UInt64Size(5, x.PayloadLength) - size += proto.NestedStructureSize(6, x.PayloadHash) - size += proto.EnumSize(7, int32(x.ObjectType)) - size += proto.NestedStructureSize(8, x.HomomorphicHash) - size += proto.NestedStructureSize(9, x.SessionToken) - for i := range x.Attributes { - size += proto.NestedStructureSizeUnchecked(10, &x.Attributes[i]) - } - size += proto.NestedStructureSize(11, x.Split) - size += proto.NestedStructureSize(12, x.Ec) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Header) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Header) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Version != nil { - x.Version.EmitProtobuf(mm.AppendMessage(1)) - } - if x.ContainerId != nil { - x.ContainerId.EmitProtobuf(mm.AppendMessage(2)) - } - if x.OwnerId != nil { - x.OwnerId.EmitProtobuf(mm.AppendMessage(3)) - } - if x.CreationEpoch != 0 { - mm.AppendUint64(4, x.CreationEpoch) - } - if x.PayloadLength != 0 { - mm.AppendUint64(5, x.PayloadLength) - } - if x.PayloadHash != nil { - x.PayloadHash.EmitProtobuf(mm.AppendMessage(6)) - } - if int32(x.ObjectType) != 0 { - mm.AppendInt32(7, int32(x.ObjectType)) - } - if x.HomomorphicHash != nil { - x.HomomorphicHash.EmitProtobuf(mm.AppendMessage(8)) - } - if x.SessionToken != nil { - x.SessionToken.EmitProtobuf(mm.AppendMessage(9)) - } - for i := range x.Attributes { - x.Attributes[i].EmitProtobuf(mm.AppendMessage(10)) - } - if x.Split != nil { - x.Split.EmitProtobuf(mm.AppendMessage(11)) - } - if x.Ec != nil { - x.Ec.EmitProtobuf(mm.AppendMessage(12)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Header) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Header") - } - switch fc.FieldNum { - case 1: // Version - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Version") - } - x.Version = new(grpc.Version) - if err := x.Version.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // ContainerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ContainerId") - } - x.ContainerId = new(grpc.ContainerID) - if err := x.ContainerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // OwnerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "OwnerId") - } - x.OwnerId = new(grpc.OwnerID) - if err := x.OwnerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 4: // CreationEpoch - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "CreationEpoch") - } - x.CreationEpoch = data - case 5: // PayloadLength - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "PayloadLength") - } - x.PayloadLength = data - case 6: // PayloadHash - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "PayloadHash") - } - x.PayloadHash = new(grpc.Checksum) - if err := x.PayloadHash.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 7: // ObjectType - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ObjectType") - } - x.ObjectType = ObjectType(data) - case 8: // HomomorphicHash - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "HomomorphicHash") - } - x.HomomorphicHash = new(grpc.Checksum) - if err := x.HomomorphicHash.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 9: // SessionToken - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "SessionToken") - } - x.SessionToken = new(grpc1.SessionToken) - if err := x.SessionToken.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 10: // Attributes - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Attributes") - } - x.Attributes = append(x.Attributes, Header_Attribute{}) - ff := &x.Attributes[len(x.Attributes)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 11: // Split - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Split") - } - x.Split = new(Header_Split) - if err := x.Split.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 12: // Ec - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Ec") - } - x.Ec = new(Header_EC) - if err := x.Ec.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *Header) GetVersion() *grpc.Version { - if x != nil { - return x.Version - } - return nil -} -func (x *Header) SetVersion(v *grpc.Version) { - x.Version = v -} -func (x *Header) GetContainerId() *grpc.ContainerID { - if x != nil { - return x.ContainerId - } - return nil -} -func (x *Header) SetContainerId(v *grpc.ContainerID) { - x.ContainerId = v -} -func (x *Header) GetOwnerId() *grpc.OwnerID { - if x != nil { - return x.OwnerId - } - return nil -} -func (x *Header) SetOwnerId(v *grpc.OwnerID) { - x.OwnerId = v -} -func (x *Header) GetCreationEpoch() uint64 { - if x != nil { - return x.CreationEpoch - } - return 0 -} -func (x *Header) SetCreationEpoch(v uint64) { - x.CreationEpoch = v -} -func (x *Header) GetPayloadLength() uint64 { - if x != nil { - return x.PayloadLength - } - return 0 -} -func (x *Header) SetPayloadLength(v uint64) { - x.PayloadLength = v -} -func (x *Header) GetPayloadHash() *grpc.Checksum { - if x != nil { - return x.PayloadHash - } - return nil -} -func (x *Header) SetPayloadHash(v *grpc.Checksum) { - x.PayloadHash = v -} -func (x *Header) GetObjectType() ObjectType { - if x != nil { - return x.ObjectType - } - return 0 -} -func (x *Header) SetObjectType(v ObjectType) { - x.ObjectType = v -} -func (x *Header) GetHomomorphicHash() *grpc.Checksum { - if x != nil { - return x.HomomorphicHash - } - return nil -} -func (x *Header) SetHomomorphicHash(v *grpc.Checksum) { - x.HomomorphicHash = v -} -func (x *Header) GetSessionToken() *grpc1.SessionToken { - if x != nil { - return x.SessionToken - } - return nil -} -func (x *Header) SetSessionToken(v *grpc1.SessionToken) { - x.SessionToken = v -} -func (x *Header) GetAttributes() []Header_Attribute { - if x != nil { - return x.Attributes - } - return nil -} -func (x *Header) SetAttributes(v []Header_Attribute) { - x.Attributes = v -} -func (x *Header) GetSplit() *Header_Split { - if x != nil { - return x.Split - } - return nil -} -func (x *Header) SetSplit(v *Header_Split) { - x.Split = v -} -func (x *Header) GetEc() *Header_EC { - if x != nil { - return x.Ec - } - return nil -} -func (x *Header) SetEc(v *Header_EC) { - x.Ec = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Header) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Header) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"version\":" - out.RawString(prefix) - x.Version.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"containerID\":" - out.RawString(prefix) - x.ContainerId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ownerID\":" - out.RawString(prefix) - x.OwnerId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"creationEpoch\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.CreationEpoch, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"payloadLength\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.PayloadLength, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"payloadHash\":" - out.RawString(prefix) - x.PayloadHash.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"objectType\":" - out.RawString(prefix) - v := int32(x.ObjectType) - if vv, ok := ObjectType_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"homomorphicHash\":" - out.RawString(prefix) - x.HomomorphicHash.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"sessionToken\":" - out.RawString(prefix) - x.SessionToken.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"attributes\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Attributes { - if i != 0 { - out.RawByte(',') - } - x.Attributes[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"split\":" - out.RawString(prefix) - x.Split.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ec\":" - out.RawString(prefix) - x.Ec.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Header) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Header) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "version": - { - var f *grpc.Version - f = new(grpc.Version) - f.UnmarshalEasyJSON(in) - x.Version = f - } - case "containerID": - { - var f *grpc.ContainerID - f = new(grpc.ContainerID) - f.UnmarshalEasyJSON(in) - x.ContainerId = f - } - case "ownerID": - { - var f *grpc.OwnerID - f = new(grpc.OwnerID) - f.UnmarshalEasyJSON(in) - x.OwnerId = f - } - case "creationEpoch": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.CreationEpoch = f - } - case "payloadLength": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.PayloadLength = f - } - case "payloadHash": - { - var f *grpc.Checksum - f = new(grpc.Checksum) - f.UnmarshalEasyJSON(in) - x.PayloadHash = f - } - case "objectType": - { - var f ObjectType - var parsedValue ObjectType - switch v := in.Interface().(type) { - case string: - if vv, ok := ObjectType_value[v]; ok { - parsedValue = ObjectType(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = ObjectType(vv) - case float64: - parsedValue = ObjectType(v) - } - f = parsedValue - x.ObjectType = f - } - case "homomorphicHash": - { - var f *grpc.Checksum - f = new(grpc.Checksum) - f.UnmarshalEasyJSON(in) - x.HomomorphicHash = f - } - case "sessionToken": - { - var f *grpc1.SessionToken - f = new(grpc1.SessionToken) - f.UnmarshalEasyJSON(in) - x.SessionToken = f - } - case "attributes": - { - var f Header_Attribute - var list []Header_Attribute - in.Delim('[') - for !in.IsDelim(']') { - f = Header_Attribute{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Attributes = list - in.Delim(']') - } - case "split": - { - var f *Header_Split - f = new(Header_Split) - f.UnmarshalEasyJSON(in) - x.Split = f - } - case "ec": - { - var f *Header_EC - f = new(Header_EC) - f.UnmarshalEasyJSON(in) - x.Ec = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Object struct { - ObjectId *grpc.ObjectID `json:"objectID"` - Signature *grpc.Signature `json:"signature"` - Header *Header `json:"header"` - Payload []byte `json:"payload"` -} - -var ( - _ encoding.ProtoMarshaler = (*Object)(nil) - _ encoding.ProtoUnmarshaler = (*Object)(nil) - _ json.Marshaler = (*Object)(nil) - _ json.Unmarshaler = (*Object)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Object) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.ObjectId) - size += proto.NestedStructureSize(2, x.Signature) - size += proto.NestedStructureSize(3, x.Header) - size += proto.BytesSize(4, x.Payload) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Object) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Object) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.ObjectId != nil { - x.ObjectId.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Signature != nil { - x.Signature.EmitProtobuf(mm.AppendMessage(2)) - } - if x.Header != nil { - x.Header.EmitProtobuf(mm.AppendMessage(3)) - } - if len(x.Payload) != 0 { - mm.AppendBytes(4, x.Payload) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Object) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Object") - } - switch fc.FieldNum { - case 1: // ObjectId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ObjectId") - } - x.ObjectId = new(grpc.ObjectID) - if err := x.ObjectId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Signature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Signature") - } - x.Signature = new(grpc.Signature) - if err := x.Signature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // Header - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Header") - } - x.Header = new(Header) - if err := x.Header.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 4: // Payload - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Payload") - } - x.Payload = data - } - } - return nil -} -func (x *Object) GetObjectId() *grpc.ObjectID { - if x != nil { - return x.ObjectId - } - return nil -} -func (x *Object) SetObjectId(v *grpc.ObjectID) { - x.ObjectId = v -} -func (x *Object) GetSignature() *grpc.Signature { - if x != nil { - return x.Signature - } - return nil -} -func (x *Object) SetSignature(v *grpc.Signature) { - x.Signature = v -} -func (x *Object) GetHeader() *Header { - if x != nil { - return x.Header - } - return nil -} -func (x *Object) SetHeader(v *Header) { - x.Header = v -} -func (x *Object) GetPayload() []byte { - if x != nil { - return x.Payload - } - return nil -} -func (x *Object) SetPayload(v []byte) { - x.Payload = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Object) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Object) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"objectID\":" - out.RawString(prefix) - x.ObjectId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"signature\":" - out.RawString(prefix) - x.Signature.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"header\":" - out.RawString(prefix) - x.Header.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"payload\":" - out.RawString(prefix) - if x.Payload != nil { - out.Base64Bytes(x.Payload) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Object) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Object) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "objectID": - { - var f *grpc.ObjectID - f = new(grpc.ObjectID) - f.UnmarshalEasyJSON(in) - x.ObjectId = f - } - case "signature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.Signature = f - } - case "header": - { - var f *Header - f = new(Header) - f.UnmarshalEasyJSON(in) - x.Header = f - } - case "payload": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Payload = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type SplitInfo struct { - SplitId []byte `json:"splitId"` - LastPart *grpc.ObjectID `json:"lastPart"` - Link *grpc.ObjectID `json:"link"` -} - -var ( - _ encoding.ProtoMarshaler = (*SplitInfo)(nil) - _ encoding.ProtoUnmarshaler = (*SplitInfo)(nil) - _ json.Marshaler = (*SplitInfo)(nil) - _ json.Unmarshaler = (*SplitInfo)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *SplitInfo) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.BytesSize(1, x.SplitId) - size += proto.NestedStructureSize(2, x.LastPart) - size += proto.NestedStructureSize(3, x.Link) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *SplitInfo) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *SplitInfo) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.SplitId) != 0 { - mm.AppendBytes(1, x.SplitId) - } - if x.LastPart != nil { - x.LastPart.EmitProtobuf(mm.AppendMessage(2)) - } - if x.Link != nil { - x.Link.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *SplitInfo) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "SplitInfo") - } - switch fc.FieldNum { - case 1: // SplitId - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "SplitId") - } - x.SplitId = data - case 2: // LastPart - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "LastPart") - } - x.LastPart = new(grpc.ObjectID) - if err := x.LastPart.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // Link - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Link") - } - x.Link = new(grpc.ObjectID) - if err := x.Link.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *SplitInfo) GetSplitId() []byte { - if x != nil { - return x.SplitId - } - return nil -} -func (x *SplitInfo) SetSplitId(v []byte) { - x.SplitId = v -} -func (x *SplitInfo) GetLastPart() *grpc.ObjectID { - if x != nil { - return x.LastPart - } - return nil -} -func (x *SplitInfo) SetLastPart(v *grpc.ObjectID) { - x.LastPart = v -} -func (x *SplitInfo) GetLink() *grpc.ObjectID { - if x != nil { - return x.Link - } - return nil -} -func (x *SplitInfo) SetLink(v *grpc.ObjectID) { - x.Link = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *SplitInfo) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *SplitInfo) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"splitId\":" - out.RawString(prefix) - if x.SplitId != nil { - out.Base64Bytes(x.SplitId) - } else { - out.String("") - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"lastPart\":" - out.RawString(prefix) - x.LastPart.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"link\":" - out.RawString(prefix) - x.Link.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *SplitInfo) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *SplitInfo) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "splitId": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.SplitId = f - } - case "lastPart": - { - var f *grpc.ObjectID - f = new(grpc.ObjectID) - f.UnmarshalEasyJSON(in) - x.LastPart = f - } - case "link": - { - var f *grpc.ObjectID - f = new(grpc.ObjectID) - f.UnmarshalEasyJSON(in) - x.Link = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ECInfo_Chunk struct { - Id *grpc.ObjectID `json:"id"` - Index uint32 `json:"index"` - Total uint32 `json:"total"` -} - -var ( - _ encoding.ProtoMarshaler = (*ECInfo_Chunk)(nil) - _ encoding.ProtoUnmarshaler = (*ECInfo_Chunk)(nil) - _ json.Marshaler = (*ECInfo_Chunk)(nil) - _ json.Unmarshaler = (*ECInfo_Chunk)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ECInfo_Chunk) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Id) - size += proto.UInt32Size(2, x.Index) - size += proto.UInt32Size(3, x.Total) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ECInfo_Chunk) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ECInfo_Chunk) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Id != nil { - x.Id.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Index != 0 { - mm.AppendUint32(2, x.Index) - } - if x.Total != 0 { - mm.AppendUint32(3, x.Total) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ECInfo_Chunk) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ECInfo_Chunk") - } - switch fc.FieldNum { - case 1: // Id - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Id") - } - x.Id = new(grpc.ObjectID) - if err := x.Id.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Index - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Index") - } - x.Index = data - case 3: // Total - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Total") - } - x.Total = data - } - } - return nil -} -func (x *ECInfo_Chunk) GetId() *grpc.ObjectID { - if x != nil { - return x.Id - } - return nil -} -func (x *ECInfo_Chunk) SetId(v *grpc.ObjectID) { - x.Id = v -} -func (x *ECInfo_Chunk) GetIndex() uint32 { - if x != nil { - return x.Index - } - return 0 -} -func (x *ECInfo_Chunk) SetIndex(v uint32) { - x.Index = v -} -func (x *ECInfo_Chunk) GetTotal() uint32 { - if x != nil { - return x.Total - } - return 0 -} -func (x *ECInfo_Chunk) SetTotal(v uint32) { - x.Total = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ECInfo_Chunk) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ECInfo_Chunk) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"id\":" - out.RawString(prefix) - x.Id.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"index\":" - out.RawString(prefix) - out.Uint32(x.Index) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"total\":" - out.RawString(prefix) - out.Uint32(x.Total) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ECInfo_Chunk) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ECInfo_Chunk) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "id": - { - var f *grpc.ObjectID - f = new(grpc.ObjectID) - f.UnmarshalEasyJSON(in) - x.Id = f - } - case "index": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Index = f - } - case "total": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Total = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ECInfo struct { - Chunks []ECInfo_Chunk `json:"chunks"` -} - -var ( - _ encoding.ProtoMarshaler = (*ECInfo)(nil) - _ encoding.ProtoUnmarshaler = (*ECInfo)(nil) - _ json.Marshaler = (*ECInfo)(nil) - _ json.Unmarshaler = (*ECInfo)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ECInfo) StableSize() (size int) { - if x == nil { - return 0 - } - for i := range x.Chunks { - size += proto.NestedStructureSizeUnchecked(1, &x.Chunks[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ECInfo) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ECInfo) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - for i := range x.Chunks { - x.Chunks[i].EmitProtobuf(mm.AppendMessage(1)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ECInfo) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ECInfo") - } - switch fc.FieldNum { - case 1: // Chunks - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Chunks") - } - x.Chunks = append(x.Chunks, ECInfo_Chunk{}) - ff := &x.Chunks[len(x.Chunks)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ECInfo) GetChunks() []ECInfo_Chunk { - if x != nil { - return x.Chunks - } - return nil -} -func (x *ECInfo) SetChunks(v []ECInfo_Chunk) { - x.Chunks = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ECInfo) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ECInfo) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"chunks\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Chunks { - if i != 0 { - out.RawByte(',') - } - x.Chunks[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ECInfo) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ECInfo) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "chunks": - { - var f ECInfo_Chunk - var list []ECInfo_Chunk - in.Delim('[') - for !in.IsDelim(']') { - f = ECInfo_Chunk{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Chunks = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/object/grpc/types_frostfs_fuzz.go b/object/grpc/types_frostfs_fuzz.go deleted file mode 100644 index 8491638..0000000 --- a/object/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,102 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package object - -func DoFuzzProtoShortHeader(data []byte) int { - msg := new(ShortHeader) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONShortHeader(data []byte) int { - msg := new(ShortHeader) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoHeader(data []byte) int { - msg := new(Header) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONHeader(data []byte) int { - msg := new(Header) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoObject(data []byte) int { - msg := new(Object) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONObject(data []byte) int { - msg := new(Object) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoSplitInfo(data []byte) int { - msg := new(SplitInfo) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONSplitInfo(data []byte) int { - msg := new(SplitInfo) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoECInfo(data []byte) int { - msg := new(ECInfo) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONECInfo(data []byte) int { - msg := new(ECInfo) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/object/grpc/types_frostfs_test.go b/object/grpc/types_frostfs_test.go deleted file mode 100644 index 11825be..0000000 --- a/object/grpc/types_frostfs_test.go +++ /dev/null @@ -1,61 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package object - -import ( - testing "testing" -) - -func FuzzProtoShortHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoShortHeader(data) - }) -} -func FuzzJSONShortHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONShortHeader(data) - }) -} -func FuzzProtoHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoHeader(data) - }) -} -func FuzzJSONHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONHeader(data) - }) -} -func FuzzProtoObject(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoObject(data) - }) -} -func FuzzJSONObject(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONObject(data) - }) -} -func FuzzProtoSplitInfo(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoSplitInfo(data) - }) -} -func FuzzJSONSplitInfo(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONSplitInfo(data) - }) -} -func FuzzProtoECInfo(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoECInfo(data) - }) -} -func FuzzJSONECInfo(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONECInfo(data) - }) -} diff --git a/object/json.go b/object/json.go deleted file mode 100644 index 98030bb..0000000 --- a/object/json.go +++ /dev/null @@ -1,94 +0,0 @@ -package object - -import ( - object "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/object/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -func (h *ShortHeader) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(h) -} - -func (h *ShortHeader) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(h, data, new(object.ShortHeader)) -} - -func (a *Attribute) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(a) -} - -func (a *Attribute) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(a, data, new(object.Header_Attribute)) -} - -func (h *SplitHeader) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(h) -} - -func (h *SplitHeader) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(h, data, new(object.Header_Split)) -} - -func (h *Header) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(h) -} - -func (h *Header) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(h, data, new(object.Header)) -} - -func (h *HeaderWithSignature) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(h) -} - -func (h *HeaderWithSignature) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(h, data, new(object.HeaderWithSignature)) -} - -func (o *Object) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(o) -} - -func (o *Object) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(o, data, new(object.Object)) -} - -func (s *SplitInfo) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(s) -} - -func (s *SplitInfo) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(s, data, new(object.SplitInfo)) -} - -func (e *ECInfo) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(e) -} - -func (e *ECInfo) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(e, data, new(object.ECInfo)) -} - -func (e *ECChunk) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(e) -} - -func (e *ECChunk) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(e, data, new(object.ECInfo_Chunk)) -} - -func (f *SearchFilter) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(f) -} - -func (f *SearchFilter) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(f, data, new(object.SearchRequest_Body_Filter)) -} - -func (r *Range) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(r) -} - -func (r *Range) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(r, data, new(object.Range)) -} diff --git a/object/lock.go b/object/lock.go deleted file mode 100644 index 585fd09..0000000 --- a/object/lock.go +++ /dev/null @@ -1,160 +0,0 @@ -package object - -import ( - "errors" - "fmt" - - lock "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/lock/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - refsGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" -) - -// Lock represents object Lock message from NeoFS API V2 protocol. -type Lock struct { - members []refs.ObjectID -} - -// NumberOfMembers returns length of lock list. -func (x *Lock) NumberOfMembers() int { - if x != nil { - return len(x.members) - } - - return 0 -} - -// IterateMembers passes members of the lock list to f. -func (x *Lock) IterateMembers(f func(refs.ObjectID)) { - if x != nil { - for i := range x.members { - f(x.members[i]) - } - } -} - -// SetMembers sets list of locked members. -// Arg must not be mutated for the duration of the Lock. -func (x *Lock) SetMembers(ids []refs.ObjectID) { - x.members = ids -} - -const ( - _ = iota - fNumLockMembers -) - -// StableMarshal encodes the Lock into Protocol Buffers binary format -// with direct field order. -func (x *Lock) StableMarshal(buf []byte) []byte { - if x == nil || len(x.members) == 0 { - return []byte{} - } - - if buf == nil { - buf = make([]byte, x.StableSize()) - } - - var offset int - - for i := range x.members { - offset += proto.NestedStructureMarshal(fNumLockMembers, buf[offset:], &x.members[i]) - } - - return buf -} - -// StableSize size of the buffer required to write the Lock in Protocol Buffers -// binary format. -func (x *Lock) StableSize() (sz int) { - if x != nil { - for i := range x.members { - sz += proto.NestedStructureSize(fNumLockMembers, &x.members[i]) - } - } - - return -} - -// Unmarshal decodes the Lock from its Protocol Buffers binary format. -func (x *Lock) Unmarshal(data []byte) error { - return message.Unmarshal(x, data, new(lock.Lock)) -} - -func (x *Lock) ToGRPCMessage() grpc.Message { - var m *lock.Lock - - if x != nil { - m = new(lock.Lock) - - var members []refsGRPC.ObjectID - - if x.members != nil { - members = make([]refsGRPC.ObjectID, len(x.members)) - - for i := range x.members { - members[i] = *x.members[i].ToGRPCMessage().(*refsGRPC.ObjectID) - } - } - - m.SetMembers(members) - } - - return m -} - -func (x *Lock) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*lock.Lock) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - members := v.GetMembers() - if members == nil { - x.members = nil - } else { - x.members = make([]refs.ObjectID, len(members)) - var err error - - for i := range x.members { - err = x.members[i].FromGRPCMessage(&members[i]) - if err != nil { - return err - } - } - } - - return nil -} - -// WriteLock writes Lock to the Object as a payload content. -// The object must not be nil. -func WriteLock(obj *Object, lock Lock) { - hdr := obj.GetHeader() - if hdr == nil { - hdr = new(Header) - obj.SetHeader(hdr) - } - - hdr.SetObjectType(TypeLock) - - payload := lock.StableMarshal(nil) - obj.SetPayload(payload) -} - -// ReadLock reads Lock from the Object payload content. -func ReadLock(lock *Lock, obj Object) error { - payload := obj.GetPayload() - if len(payload) == 0 { - return errors.New("empty payload") - } - - err := lock.Unmarshal(payload) - if err != nil { - return fmt.Errorf("decode lock content from payload: %w", err) - } - - return nil -} diff --git a/object/lock_test.go b/object/lock_test.go deleted file mode 100644 index 41b159d..0000000 --- a/object/lock_test.go +++ /dev/null @@ -1,26 +0,0 @@ -package object_test - -import ( - "testing" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/object" - objecttest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/object/test" - "github.com/stretchr/testify/require" -) - -func TestLockRW(t *testing.T) { - var l object.Lock - var obj object.Object - - require.Error(t, object.ReadLock(&l, obj)) - - l = *objecttest.GenerateLock(false) - - object.WriteLock(&obj, l) - - var l2 object.Lock - - require.NoError(t, object.ReadLock(&l2, obj)) - - require.Equal(t, l, l2) -} diff --git a/object/marshal.go b/object/marshal.go deleted file mode 100644 index 166b523..0000000 --- a/object/marshal.go +++ /dev/null @@ -1,1428 +0,0 @@ -package object - -import ( - object "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/object/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" -) - -const ( - shortHdrVersionField = 1 - shortHdrEpochField = 2 - shortHdrOwnerField = 3 - shortHdrObjectTypeField = 4 - shortHdrPayloadLength = 5 - shortHdrHashField = 6 - shortHdrHomoHashField = 7 - - attributeKeyField = 1 - attributeValueField = 2 - - splitHdrParentField = 1 - splitHdrPreviousField = 2 - splitHdrParentSignatureField = 3 - splitHdrParentHeaderField = 4 - splitHdrChildrenField = 5 - splitHdrSplitIDField = 6 - - ecHdrParentField = 1 - ecHdrIndexField = 2 - ecHdrTotalField = 3 - ecHdrHeaderLengthField = 4 - ecHdrHeaderField = 5 - ecHdrParentSplitID = 6 - ecHdrParentSplitParentID = 7 - ecHdrParentAttributes = 8 - - hdrVersionField = 1 - hdrContainerIDField = 2 - hdrOwnerIDField = 3 - hdrEpochField = 4 - hdrPayloadLengthField = 5 - hdrPayloadHashField = 6 - hdrObjectTypeField = 7 - hdrHomomorphicHashField = 8 - hdrSessionTokenField = 9 - hdrAttributesField = 10 - hdrSplitField = 11 - hdrECField = 12 - - hdrWithSigHeaderField = 1 - hdrWithSigSignatureField = 2 - - objIDField = 1 - objSignatureField = 2 - objHeaderField = 3 - objPayloadField = 4 - - splitInfoSplitIDField = 1 - splitInfoLastPartField = 2 - splitInfoLinkField = 3 - - ecInfoChunksField = 1 - - ecChunkIDField = 1 - ecChunkIndexField = 2 - ecChunkTotalField = 3 - - getReqBodyAddressField = 1 - getReqBodyRawFlagField = 2 - - getRespInitObjectIDField = 1 - getRespInitSignatureField = 2 - getRespInitHeaderField = 3 - - getRespBodyInitField = 1 - getRespBodyChunkField = 2 - getRespBodySplitInfoField = 3 - getRespBodyECInfoField = 4 - - putReqInitObjectIDField = 1 - putReqInitSignatureField = 2 - putReqInitHeaderField = 3 - putReqInitCopiesNumField = 4 - - putReqBodyInitField = 1 - putReqBodyChunkField = 2 - - putRespBodyObjectIDField = 1 - - deleteReqBodyAddressField = 1 - - deleteRespBodyTombstoneFNum = 1 - - headReqBodyAddressField = 1 - headReqBodyMainFlagField = 2 - headReqBodyRawFlagField = 3 - - headRespBodyHeaderField = 1 - headRespBodyShortHeaderField = 2 - headRespBodySplitInfoField = 3 - headRespBodyECInfoField = 4 - - searchFilterMatchField = 1 - searchFilterNameField = 2 - searchFilterValueField = 3 - - searchReqBodyContainerIDField = 1 - searchReqBodyVersionField = 2 - searchReqBodyFiltersField = 3 - - searchRespBodyObjectIDsField = 1 - - rangeOffsetField = 1 - rangeLengthField = 2 - - getRangeReqBodyAddressField = 1 - getRangeReqBodyRangeField = 2 - getRangeReqBodyRawField = 3 - - getRangeRespChunkField = 1 - getRangeRespSplitInfoField = 2 - getRangeRespECInfoField = 3 - - getRangeHashReqBodyAddressField = 1 - getRangeHashReqBodyRangesField = 2 - getRangeHashReqBodySaltField = 3 - getRangeHashReqBodyTypeField = 4 - - getRangeHashRespBodyTypeField = 1 - getRangeHashRespBodyHashListField = 2 - - putSingleReqObjectField = 1 - putSingleReqCopiesNumberField = 2 - - patchRequestBodyPatchRangeField = 1 - patchRequestBodyPatchChunkField = 2 - - patchRequestBodyAddrField = 1 - patchRequestBodyNewAttrsField = 2 - patchRequestBodyReplaceAttrField = 3 - patchRequestBodyPatchField = 4 - - patchResponseBodyObjectIDField = 1 -) - -func (h *ShortHeader) StableMarshal(buf []byte) []byte { - if h == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, h.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(shortHdrVersionField, buf[offset:], h.version) - offset += proto.UInt64Marshal(shortHdrEpochField, buf[offset:], h.creatEpoch) - offset += proto.NestedStructureMarshal(shortHdrOwnerField, buf[offset:], h.ownerID) - offset += proto.EnumMarshal(shortHdrObjectTypeField, buf[offset:], int32(h.typ)) - offset += proto.UInt64Marshal(shortHdrPayloadLength, buf[offset:], h.payloadLen) - offset += proto.NestedStructureMarshal(shortHdrHashField, buf[offset:], h.payloadHash) - proto.NestedStructureMarshal(shortHdrHomoHashField, buf[offset:], h.homoHash) - - return buf -} - -func (h *ShortHeader) StableSize() (size int) { - if h == nil { - return 0 - } - - size += proto.NestedStructureSize(shortHdrVersionField, h.version) - size += proto.UInt64Size(shortHdrEpochField, h.creatEpoch) - size += proto.NestedStructureSize(shortHdrOwnerField, h.ownerID) - size += proto.EnumSize(shortHdrObjectTypeField, int32(h.typ)) - size += proto.UInt64Size(shortHdrPayloadLength, h.payloadLen) - size += proto.NestedStructureSize(shortHdrHashField, h.payloadHash) - size += proto.NestedStructureSize(shortHdrHomoHashField, h.homoHash) - - return size -} - -func (h *ShortHeader) Unmarshal(data []byte) error { - return message.Unmarshal(h, data, new(object.ShortHeader)) -} - -func (a *Attribute) StableMarshal(buf []byte) []byte { - if a == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, a.StableSize()) - } - - var offset int - - offset += proto.StringMarshal(attributeKeyField, buf[offset:], a.key) - proto.StringMarshal(attributeValueField, buf[offset:], a.val) - - return buf -} - -func (a *Attribute) StableSize() (size int) { - if a == nil { - return 0 - } - - size += proto.StringSize(shortHdrVersionField, a.key) - size += proto.StringSize(shortHdrEpochField, a.val) - - return size -} - -func (a *Attribute) Unmarshal(data []byte) error { - return message.Unmarshal(a, data, new(object.Header_Attribute)) -} - -func (h *SplitHeader) StableMarshal(buf []byte) []byte { - if h == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, h.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(splitHdrParentField, buf[offset:], h.par) - offset += proto.NestedStructureMarshal(splitHdrPreviousField, buf[offset:], h.prev) - offset += proto.NestedStructureMarshal(splitHdrParentSignatureField, buf[offset:], h.parSig) - offset += proto.NestedStructureMarshal(splitHdrParentHeaderField, buf[offset:], h.parHdr) - offset += refs.ObjectIDNestedListMarshal(splitHdrChildrenField, buf[offset:], h.children) - proto.BytesMarshal(splitHdrSplitIDField, buf[offset:], h.splitID) - - return buf -} - -func (h *SplitHeader) StableSize() (size int) { - if h == nil { - return 0 - } - - size += proto.NestedStructureSize(splitHdrParentField, h.par) - size += proto.NestedStructureSize(splitHdrPreviousField, h.prev) - size += proto.NestedStructureSize(splitHdrParentSignatureField, h.parSig) - size += proto.NestedStructureSize(splitHdrParentHeaderField, h.parHdr) - size += refs.ObjectIDNestedListSize(splitHdrChildrenField, h.children) - size += proto.BytesSize(splitHdrSplitIDField, h.splitID) - - return size -} - -func (h *SplitHeader) Unmarshal(data []byte) error { - return message.Unmarshal(h, data, new(object.Header_Split)) -} - -func (h *ECHeader) StableMarshal(buf []byte) []byte { - if h == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, h.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(ecHdrParentField, buf[offset:], h.Parent) - offset += proto.UInt32Marshal(ecHdrIndexField, buf[offset:], h.Index) - offset += proto.UInt32Marshal(ecHdrTotalField, buf[offset:], h.Total) - offset += proto.UInt32Marshal(ecHdrHeaderLengthField, buf[offset:], h.HeaderLength) - offset += proto.BytesMarshal(ecHdrHeaderField, buf[offset:], h.Header) - offset += proto.BytesMarshal(ecHdrParentSplitID, buf[offset:], h.ParentSplitID) - offset += proto.NestedStructureMarshal(ecHdrParentSplitParentID, buf[offset:], h.ParentSplitParentID) - for i := range h.ParentAttributes { - offset += proto.NestedStructureMarshal(ecHdrParentAttributes, buf[offset:], &h.ParentAttributes[i]) - } - return buf -} - -func (h *ECHeader) StableSize() (size int) { - if h == nil { - return 0 - } - - size += proto.NestedStructureSize(ecHdrParentField, h.Parent) - size += proto.UInt32Size(ecHdrIndexField, h.Index) - size += proto.UInt32Size(ecHdrTotalField, h.Total) - size += proto.UInt32Size(ecHdrHeaderLengthField, h.HeaderLength) - size += proto.BytesSize(ecHdrHeaderField, h.Header) - size += proto.BytesSize(ecHdrParentSplitID, h.ParentSplitID) - size += proto.NestedStructureSize(ecHdrParentSplitParentID, h.ParentSplitParentID) - for i := range h.ParentAttributes { - size += proto.NestedStructureSize(ecHdrParentAttributes, &h.ParentAttributes[i]) - } - - return size -} - -func (h *ECHeader) Unmarshal(data []byte) error { - return message.Unmarshal(h, data, new(object.Header_EC)) -} - -func (h *Header) StableMarshal(buf []byte) []byte { - if h == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, h.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(hdrVersionField, buf[offset:], h.version) - offset += proto.NestedStructureMarshal(hdrContainerIDField, buf[offset:], h.cid) - offset += proto.NestedStructureMarshal(hdrOwnerIDField, buf[offset:], h.ownerID) - offset += proto.UInt64Marshal(hdrEpochField, buf[offset:], h.creatEpoch) - offset += proto.UInt64Marshal(hdrPayloadLengthField, buf[offset:], h.payloadLen) - offset += proto.NestedStructureMarshal(hdrPayloadHashField, buf[offset:], h.payloadHash) - offset += proto.EnumMarshal(hdrObjectTypeField, buf[offset:], int32(h.typ)) - offset += proto.NestedStructureMarshal(hdrHomomorphicHashField, buf[offset:], h.homoHash) - offset += proto.NestedStructureMarshal(hdrSessionTokenField, buf[offset:], h.sessionToken) - - for i := range h.attr { - offset += proto.NestedStructureMarshal(hdrAttributesField, buf[offset:], &h.attr[i]) - } - - proto.NestedStructureMarshal(hdrSplitField, buf[offset:], h.split) - proto.NestedStructureMarshal(hdrECField, buf[offset:], h.ec) - - return buf -} - -func (h *Header) StableSize() (size int) { - if h == nil { - return 0 - } - - size += proto.NestedStructureSize(hdrVersionField, h.version) - size += proto.NestedStructureSize(hdrContainerIDField, h.cid) - size += proto.NestedStructureSize(hdrOwnerIDField, h.ownerID) - size += proto.UInt64Size(hdrEpochField, h.creatEpoch) - size += proto.UInt64Size(hdrPayloadLengthField, h.payloadLen) - size += proto.NestedStructureSize(hdrPayloadHashField, h.payloadHash) - size += proto.EnumSize(hdrObjectTypeField, int32(h.typ)) - size += proto.NestedStructureSize(hdrHomomorphicHashField, h.homoHash) - size += proto.NestedStructureSize(hdrSessionTokenField, h.sessionToken) - for i := range h.attr { - size += proto.NestedStructureSize(hdrAttributesField, &h.attr[i]) - } - size += proto.NestedStructureSize(hdrSplitField, h.split) - size += proto.NestedStructureSize(hdrECField, h.ec) - - return size -} - -func (h *Header) Unmarshal(data []byte) error { - return message.Unmarshal(h, data, new(object.Header)) -} - -func (h *HeaderWithSignature) StableMarshal(buf []byte) []byte { - if h == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, h.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(hdrWithSigHeaderField, buf[offset:], h.header) - proto.NestedStructureMarshal(hdrWithSigSignatureField, buf[offset:], h.signature) - - return buf -} - -func (h *HeaderWithSignature) StableSize() (size int) { - if h == nil { - return 0 - } - - size += proto.NestedStructureSize(hdrVersionField, h.header) - size += proto.NestedStructureSize(hdrContainerIDField, h.signature) - - return size -} - -func (h *HeaderWithSignature) Unmarshal(data []byte) error { - return message.Unmarshal(h, data, new(object.HeaderWithSignature)) -} - -func (o *Object) StableMarshal(buf []byte) []byte { - if o == nil { - return []byte{} - } - - if o.marshalData != nil { - if buf == nil { - return o.marshalData - } - copy(buf, o.marshalData) - return buf - } - - if buf == nil { - buf = make([]byte, o.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(objIDField, buf[offset:], o.objectID) - offset += proto.NestedStructureMarshal(objSignatureField, buf[offset:], o.idSig) - offset += proto.NestedStructureMarshal(objHeaderField, buf[offset:], o.header) - proto.BytesMarshal(objPayloadField, buf[offset:], o.payload) - - return buf -} - -// SetMarshalData sets marshal data to reduce memory allocations. -// -// It is unsafe to modify/copy object data after setting marshal data. -func (o *Object) SetMarshalData(data []byte) { - if o == nil { - return - } - o.marshalData = data -} - -func (o *Object) StableSize() (size int) { - if o == nil { - return 0 - } - - size += proto.NestedStructureSize(objIDField, o.objectID) - size += proto.NestedStructureSize(objSignatureField, o.idSig) - size += proto.NestedStructureSize(objHeaderField, o.header) - size += proto.BytesSize(objPayloadField, o.payload) - - return size -} - -func (o *Object) Unmarshal(data []byte) error { - return message.Unmarshal(o, data, new(object.Object)) -} - -func (s *SplitInfo) StableMarshal(buf []byte) []byte { - if s == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, s.StableSize()) - } - - var offset int - - offset += proto.BytesMarshal(splitInfoSplitIDField, buf[offset:], s.splitID) - offset += proto.NestedStructureMarshal(splitInfoLastPartField, buf[offset:], s.lastPart) - proto.NestedStructureMarshal(splitInfoLinkField, buf[offset:], s.link) - - return buf -} - -func (s *SplitInfo) StableSize() (size int) { - if s == nil { - return 0 - } - - size += proto.BytesSize(splitInfoSplitIDField, s.splitID) - size += proto.NestedStructureSize(splitInfoLastPartField, s.lastPart) - size += proto.NestedStructureSize(splitInfoLinkField, s.link) - - return size -} - -func (s *SplitInfo) Unmarshal(data []byte) error { - return message.Unmarshal(s, data, new(object.SplitInfo)) -} - -func (e *ECInfo) StableMarshal(buf []byte) []byte { - if e == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, e.StableSize()) - } - - var offset int - - for i := range e.Chunks { - offset += proto.NestedStructureMarshal(ecInfoChunksField, buf[offset:], &e.Chunks[i]) - } - - return buf -} - -func (e *ECInfo) StableSize() (size int) { - if e == nil { - return 0 - } - - for i := range e.Chunks { - size += proto.NestedStructureSize(ecInfoChunksField, &e.Chunks[i]) - } - - return size -} - -func (e *ECInfo) Unmarshal(data []byte) error { - return message.Unmarshal(e, data, new(object.ECInfo)) -} - -func (c *ECChunk) StableMarshal(buf []byte) []byte { - if c == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, c.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(ecChunkIDField, buf[offset:], &c.ID) - offset += proto.UInt32Marshal(ecChunkIndexField, buf[offset:], c.Index) - proto.UInt32Marshal(ecChunkTotalField, buf[offset:], c.Total) - - return buf -} - -func (c *ECChunk) StableSize() (size int) { - if c == nil { - return 0 - } - - size += proto.NestedStructureSize(ecChunkIDField, &c.ID) - size += proto.UInt32Size(ecChunkIndexField, c.Index) - size += proto.UInt32Size(ecChunkTotalField, c.Total) - - return size -} - -func (c *ECChunk) Unmarshal(data []byte) error { - return message.Unmarshal(c, data, new(object.ECInfo_Chunk)) -} - -func (r *GetRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(getReqBodyAddressField, buf[offset:], r.addr) - proto.BoolMarshal(getReqBodyRawFlagField, buf[offset:], r.raw) - - return buf -} - -func (r *GetRequestBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.NestedStructureSize(getReqBodyAddressField, r.addr) - size += proto.BoolSize(getReqBodyRawFlagField, r.raw) - - return size -} - -func (r *GetRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.GetRequest_Body)) -} - -func (r *GetObjectPartInit) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(getRespInitObjectIDField, buf[offset:], r.id) - offset += proto.NestedStructureMarshal(getRespInitSignatureField, buf[offset:], r.sig) - proto.NestedStructureMarshal(getRespInitHeaderField, buf[offset:], r.hdr) - - return buf -} - -func (r *GetObjectPartInit) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.NestedStructureSize(getRespInitObjectIDField, r.id) - size += proto.NestedStructureSize(getRespInitSignatureField, r.sig) - size += proto.NestedStructureSize(getRespInitHeaderField, r.hdr) - - return size -} - -func (r *GetObjectPartInit) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.GetResponse_Body_Init)) -} - -func (r *GetResponseBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - switch v := r.objPart.(type) { - case nil: - case *GetObjectPartInit: - proto.NestedStructureMarshal(getRespBodyInitField, buf, v) - case *GetObjectPartChunk: - if v != nil { - proto.BytesMarshal(getRespBodyChunkField, buf, v.chunk) - } - case *SplitInfo: - proto.NestedStructureMarshal(getRespBodySplitInfoField, buf, v) - case *ECInfo: - proto.NestedStructureMarshal(getRespBodyECInfoField, buf, v) - default: - panic("unknown one of object get response body type") - } - - return buf -} - -func (r *GetResponseBody) StableSize() (size int) { - if r == nil { - return 0 - } - - switch v := r.objPart.(type) { - case nil: - case *GetObjectPartInit: - size += proto.NestedStructureSize(getRespBodyInitField, v) - case *GetObjectPartChunk: - if v != nil { - size += proto.BytesSize(getRespBodyChunkField, v.chunk) - } - case *SplitInfo: - size += proto.NestedStructureSize(getRespBodySplitInfoField, v) - case *ECInfo: - size += proto.NestedStructureSize(getRespBodyECInfoField, v) - default: - panic("unknown one of object get response body type") - } - - return -} - -func (r *GetResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.GetResponse_Body)) -} - -func (r *PutObjectPartInit) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(putReqInitObjectIDField, buf[offset:], r.id) - offset += proto.NestedStructureMarshal(putReqInitSignatureField, buf[offset:], r.sig) - offset += proto.NestedStructureMarshal(putReqInitHeaderField, buf[offset:], r.hdr) - proto.RepeatedUInt32Marshal(putReqInitCopiesNumField, buf[offset:], r.copyNum) - - return buf -} - -func (r *PutObjectPartInit) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.NestedStructureSize(putReqInitObjectIDField, r.id) - size += proto.NestedStructureSize(putReqInitSignatureField, r.sig) - size += proto.NestedStructureSize(putReqInitHeaderField, r.hdr) - - arrSize, _ := proto.RepeatedUInt32Size(putReqInitCopiesNumField, r.copyNum) - size += arrSize - - return size -} - -func (r *PutObjectPartInit) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.PutRequest_Body_Init)) -} - -func (r *PutRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - switch v := r.objPart.(type) { - case nil: - case *PutObjectPartInit: - proto.NestedStructureMarshal(putReqBodyInitField, buf, v) - case *PutObjectPartChunk: - if v != nil { - proto.BytesMarshal(putReqBodyChunkField, buf, v.chunk) - } - default: - panic("unknown one of object put request body type") - } - - return buf -} - -func (r *PutRequestBody) StableSize() (size int) { - if r == nil { - return 0 - } - - switch v := r.objPart.(type) { - case nil: - case *PutObjectPartInit: - size += proto.NestedStructureSize(putReqBodyInitField, v) - case *PutObjectPartChunk: - if v != nil { - size += proto.BytesSize(putReqBodyChunkField, v.chunk) - } - default: - panic("unknown one of object get response body type") - } - - return size -} - -func (r *PutRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.PutRequest_Body)) -} - -func (r *PutResponseBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - proto.NestedStructureMarshal(putRespBodyObjectIDField, buf, r.id) - - return buf -} - -func (r *PutResponseBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.NestedStructureSize(putRespBodyObjectIDField, r.id) - - return size -} - -func (r *PutResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.PutResponse_Body)) -} - -func (r *DeleteRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - proto.NestedStructureMarshal(deleteReqBodyAddressField, buf, r.addr) - - return buf -} - -func (r *DeleteRequestBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.NestedStructureSize(deleteReqBodyAddressField, r.addr) - - return size -} - -func (r *DeleteRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.DeleteRequest_Body)) -} - -func (r *DeleteResponseBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - proto.NestedStructureMarshal(deleteRespBodyTombstoneFNum, buf, r.tombstone) - - return buf -} - -func (r *DeleteResponseBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.NestedStructureSize(deleteRespBodyTombstoneFNum, r.tombstone) - - return size -} - -func (r *DeleteResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.DeleteResponse_Body)) -} - -func (r *HeadRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(headReqBodyAddressField, buf[offset:], r.addr) - offset += proto.BoolMarshal(headReqBodyMainFlagField, buf[offset:], r.mainOnly) - proto.BoolMarshal(headReqBodyRawFlagField, buf[offset:], r.raw) - - return buf -} - -func (r *HeadRequestBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.NestedStructureSize(headReqBodyAddressField, r.addr) - size += proto.BoolSize(headReqBodyMainFlagField, r.mainOnly) - size += proto.BoolSize(headReqBodyRawFlagField, r.raw) - - return size -} - -func (r *HeadRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.HeadRequest_Body)) -} - -func (r *HeadResponseBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - switch v := r.hdrPart.(type) { - case nil: - case *HeaderWithSignature: - if v != nil { - proto.NestedStructureMarshal(headRespBodyHeaderField, buf, v) - } - case *ShortHeader: - if v != nil { - proto.NestedStructureMarshal(headRespBodyShortHeaderField, buf, v) - } - case *SplitInfo: - if v != nil { - proto.NestedStructureMarshal(headRespBodySplitInfoField, buf, v) - } - case *ECInfo: - if v != nil { - proto.NestedStructureMarshal(headRespBodyECInfoField, buf, v) - } - default: - panic("unknown one of object put request body type") - } - - return buf -} - -func (r *HeadResponseBody) StableSize() (size int) { - if r == nil { - return 0 - } - - switch v := r.hdrPart.(type) { - case nil: - case *HeaderWithSignature: - if v != nil { - size += proto.NestedStructureSize(headRespBodyHeaderField, v) - } - case *ShortHeader: - if v != nil { - size += proto.NestedStructureSize(headRespBodyShortHeaderField, v) - } - case *SplitInfo: - if v != nil { - size += proto.NestedStructureSize(headRespBodySplitInfoField, v) - } - case *ECInfo: - if v != nil { - size += proto.NestedStructureSize(headRespBodyECInfoField, v) - } - default: - panic("unknown one of object put request body type") - } - - return -} - -func (r *HeadResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.HeadResponse_Body)) -} - -func (f *SearchFilter) StableMarshal(buf []byte) []byte { - if f == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, f.StableSize()) - } - - var offset int - - offset += proto.EnumMarshal(searchFilterMatchField, buf[offset:], int32(f.matchType)) - offset += proto.StringMarshal(searchFilterNameField, buf[offset:], f.key) - proto.StringMarshal(searchFilterValueField, buf[offset:], f.val) - - return buf -} - -func (f *SearchFilter) StableSize() (size int) { - if f == nil { - return 0 - } - - size += proto.EnumSize(searchFilterMatchField, int32(f.matchType)) - size += proto.StringSize(searchFilterNameField, f.key) - size += proto.StringSize(searchFilterValueField, f.val) - - return size -} - -func (f *SearchFilter) Unmarshal(data []byte) error { - return message.Unmarshal(f, data, new(object.SearchRequest_Body_Filter)) -} - -func (r *SearchRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(searchReqBodyContainerIDField, buf[offset:], r.cid) - offset += proto.UInt32Marshal(searchReqBodyVersionField, buf[offset:], r.version) - - for i := range r.filters { - offset += proto.NestedStructureMarshal(searchReqBodyFiltersField, buf[offset:], &r.filters[i]) - } - - return buf -} - -func (r *SearchRequestBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.NestedStructureSize(searchReqBodyContainerIDField, r.cid) - size += proto.UInt32Size(searchReqBodyVersionField, r.version) - - for i := range r.filters { - size += proto.NestedStructureSize(searchReqBodyFiltersField, &r.filters[i]) - } - - return size -} - -func (r *SearchRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.SearchRequest_Body)) -} - -func (r *SearchResponseBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - refs.ObjectIDNestedListMarshal(searchRespBodyObjectIDsField, buf[offset:], r.idList) - - return buf -} - -func (r *SearchResponseBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += refs.ObjectIDNestedListSize(searchRespBodyObjectIDsField, r.idList) - - return size -} - -func (r *SearchResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.SearchResponse_Body)) -} - -func (r *Range) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.UInt64Marshal(rangeOffsetField, buf[offset:], r.off) - proto.UInt64Marshal(rangeLengthField, buf[offset:], r.len) - - return buf -} - -func (r *Range) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.UInt64Size(rangeOffsetField, r.off) - size += proto.UInt64Size(rangeLengthField, r.len) - - return size -} - -func (r *Range) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.Range)) -} - -func (r *GetRangeRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(getRangeReqBodyAddressField, buf[offset:], r.addr) - offset += proto.NestedStructureMarshal(getRangeReqBodyRangeField, buf[offset:], r.rng) - proto.BoolMarshal(getRangeReqBodyRawField, buf[offset:], r.raw) - - return buf -} - -func (r *GetRangeRequestBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.NestedStructureSize(getRangeReqBodyAddressField, r.addr) - size += proto.NestedStructureSize(getRangeReqBodyRangeField, r.rng) - size += proto.BoolSize(getRangeReqBodyRawField, r.raw) - - return size -} - -func (r *GetRangeRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.GetRangeRequest_Body)) -} - -func (r *GetRangeResponseBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - switch v := r.rngPart.(type) { - case nil: - case *GetRangePartChunk: - if v != nil { - proto.BytesMarshal(getRangeRespChunkField, buf, v.chunk) - } - case *SplitInfo: - if v != nil { - proto.NestedStructureMarshal(getRangeRespSplitInfoField, buf, v) - } - case *ECInfo: - if v != nil { - proto.NestedStructureMarshal(getRangeRespECInfoField, buf, v) - } - default: - panic("unknown one of object get range request body type") - } - - return buf -} - -func (r *GetRangeResponseBody) StableSize() (size int) { - if r == nil { - return 0 - } - - switch v := r.rngPart.(type) { - case nil: - case *GetRangePartChunk: - if v != nil { - size += proto.BytesSize(getRangeRespChunkField, v.chunk) - } - case *SplitInfo: - if v != nil { - size = proto.NestedStructureSize(getRangeRespSplitInfoField, v) - } - case *ECInfo: - if v != nil { - size = proto.NestedStructureSize(getRangeRespECInfoField, v) - } - default: - panic("unknown one of object get range request body type") - } - - return -} - -func (r *GetRangeResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.GetRangeResponse_Body)) -} - -func (r *GetRangeHashRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(getRangeHashReqBodyAddressField, buf[offset:], r.addr) - - for i := range r.rngs { - offset += proto.NestedStructureMarshal(getRangeHashReqBodyRangesField, buf[offset:], &r.rngs[i]) - } - - offset += proto.BytesMarshal(getRangeHashReqBodySaltField, buf[offset:], r.salt) - proto.EnumMarshal(getRangeHashReqBodyTypeField, buf[offset:], int32(r.typ)) - - return buf -} - -func (r *GetRangeHashRequestBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.NestedStructureSize(getRangeHashReqBodyAddressField, r.addr) - - for i := range r.rngs { - size += proto.NestedStructureSize(getRangeHashReqBodyRangesField, &r.rngs[i]) - } - - size += proto.BytesSize(getRangeHashReqBodySaltField, r.salt) - size += proto.EnumSize(getRangeHashReqBodyTypeField, int32(r.typ)) - - return size -} - -func (r *GetRangeHashRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.GetRangeHashRequest_Body)) -} - -func (r *GetRangeHashResponseBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.EnumMarshal(getRangeHashRespBodyTypeField, buf, int32(r.typ)) - proto.RepeatedBytesMarshal(getRangeHashRespBodyHashListField, buf[offset:], r.hashList) - - return buf -} - -func (r *GetRangeHashResponseBody) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.EnumSize(getRangeHashRespBodyTypeField, int32(r.typ)) - size += proto.RepeatedBytesSize(getRangeHashRespBodyHashListField, r.hashList) - - return size -} - -func (r *GetRangeHashResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.GetRangeHashResponse_Body)) -} - -func (r *PutSingleRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if r.marshalData != nil { - if buf == nil { - return r.marshalData - } - copy(buf, r.marshalData) - return buf - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - offset += proto.NestedStructureMarshal(putSingleReqObjectField, buf[offset:], r.object) - proto.RepeatedUInt32Marshal(putSingleReqCopiesNumberField, buf[offset:], r.copyNum) - - return buf -} - -// SetMarshalData sets marshal data to reduce memory allocations. -// -// It is unsafe to modify/copy request data after setting marshal data. -func (r *PutSingleRequestBody) SetMarshalData(data []byte) { - if r == nil { - return - } - - r.marshalData = data - - proto.NestedStructureSetMarshalData(putSingleReqObjectField, r.marshalData, r.object) -} - -func (r *PutSingleRequestBody) StableSize() int { - if r == nil { - return 0 - } - - var size int - size += proto.NestedStructureSize(putSingleReqObjectField, r.object) - arrSize, _ := proto.RepeatedUInt32Size(putSingleReqCopiesNumberField, r.copyNum) - size += arrSize - - return size -} - -func (r *PutSingleRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.PutSingleRequest_Body)) -} - -func (r *PutSingleResponseBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - return buf -} - -func (r *PutSingleResponseBody) StableSize() int { - return 0 -} - -func (r *PutSingleResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.PutSingleResponse_Body)) -} - -func (r *PatchRequestBodyPatch) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - offset += proto.NestedStructureMarshal(patchRequestBodyPatchRangeField, buf[offset:], r.GetRange()) - proto.BytesMarshal(patchRequestBodyPatchChunkField, buf[offset:], r.GetChunk()) - - return buf -} - -func (r *PatchRequestBodyPatch) StableSize() int { - if r == nil { - return 0 - } - - var size int - size += proto.NestedStructureSize(patchRequestBodyPatchRangeField, r.GetRange()) - size += proto.BytesSize(patchRequestBodyPatchChunkField, r.GetChunk()) - - return size -} - -func (r *PatchRequestBodyPatch) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.PatchRequest_Body_Patch)) -} - -func (r *PatchRequestBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - offset += proto.NestedStructureMarshal(patchRequestBodyAddrField, buf[offset:], r.address) - for i := range r.newAttributes { - offset += proto.NestedStructureMarshal(patchRequestBodyNewAttrsField, buf[offset:], &r.newAttributes[i]) - } - offset += proto.BoolMarshal(patchRequestBodyReplaceAttrField, buf[offset:], r.replaceAttributes) - proto.NestedStructureMarshal(patchRequestBodyPatchField, buf[offset:], r.patch) - - return buf -} - -func (r *PatchRequestBody) StableSize() int { - if r == nil { - return 0 - } - - var size int - size += proto.NestedStructureSize(patchRequestBodyAddrField, r.address) - for i := range r.newAttributes { - size += proto.NestedStructureSize(patchRequestBodyNewAttrsField, &r.newAttributes[i]) - } - size += proto.BoolSize(patchRequestBodyReplaceAttrField, r.replaceAttributes) - size += proto.NestedStructureSize(patchRequestBodyPatchField, r.patch) - - return size -} - -func (r *PatchRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.PatchRequest_Body)) -} - -func (r *PatchResponseBody) StableSize() int { - if r == nil { - return 0 - } - - var size int - size += proto.NestedStructureSize(patchResponseBodyObjectIDField, r.ObjectID) - - return size -} - -func (r *PatchResponseBody) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - proto.NestedStructureMarshal(patchResponseBodyObjectIDField, buf[offset:], r.ObjectID) - - return buf -} - -func (r *PatchResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(object.PatchResponse_Body)) -} diff --git a/object/message_test.go b/object/message_test.go deleted file mode 100644 index d4e95b3..0000000 --- a/object/message_test.go +++ /dev/null @@ -1,65 +0,0 @@ -package object_test - -import ( - "testing" - - objecttest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/object/test" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - messagetest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message/test" -) - -func TestMessageConvert(t *testing.T) { - messagetest.TestRPCMessage(t, - func(empty bool) message.Message { return objecttest.GenerateShortHeader(empty) }, - func(empty bool) message.Message { return objecttest.GenerateAttribute(empty) }, - func(empty bool) message.Message { return objecttest.GenerateSplitHeader(empty) }, - func(empty bool) message.Message { return objecttest.GenerateHeaderWithSplitHeader(empty) }, - func(empty bool) message.Message { return objecttest.GenerateHeaderWithECHeader(empty) }, - func(empty bool) message.Message { return objecttest.GenerateECHeader(empty) }, - func(empty bool) message.Message { return objecttest.GenerateObject(empty) }, - func(empty bool) message.Message { return objecttest.GenerateSplitInfo(empty) }, - func(empty bool) message.Message { return objecttest.GenerateECInfo(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetRequestBody(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetRequest(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetObjectPartInit(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetObjectPartChunk(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetResponseBody(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetResponse(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePutObjectPartInit(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePutObjectPartChunk(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePutRequestBody(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePutRequest(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePutResponseBody(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePutResponse(empty) }, - func(empty bool) message.Message { return objecttest.GenerateDeleteRequestBody(empty) }, - func(empty bool) message.Message { return objecttest.GenerateDeleteRequest(empty) }, - func(empty bool) message.Message { return objecttest.GenerateDeleteResponseBody(empty) }, - func(empty bool) message.Message { return objecttest.GenerateDeleteResponse(empty) }, - func(empty bool) message.Message { return objecttest.GenerateHeadRequestBody(empty) }, - func(empty bool) message.Message { return objecttest.GenerateHeadRequest(empty) }, - func(empty bool) message.Message { return objecttest.GenerateHeadResponseBody(empty) }, - func(empty bool) message.Message { return objecttest.GenerateHeadResponse(empty) }, - func(empty bool) message.Message { return objecttest.GenerateSearchFilter(empty) }, - func(empty bool) message.Message { return objecttest.GenerateSearchRequestBody(empty) }, - func(empty bool) message.Message { return objecttest.GenerateSearchRequest(empty) }, - func(empty bool) message.Message { return objecttest.GenerateSearchResponseBody(empty) }, - func(empty bool) message.Message { return objecttest.GenerateSearchResponse(empty) }, - func(empty bool) message.Message { return objecttest.GenerateRange(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetRangeRequestBody(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetRangeRequest(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetRangeResponseBody(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetRangeResponse(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetRangeHashRequestBody(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetRangeHashRequest(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetRangeHashResponseBody(empty) }, - func(empty bool) message.Message { return objecttest.GenerateGetRangeHashResponse(empty) }, - func(empty bool) message.Message { return objecttest.GenerateLock(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePutSingleRequest(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePutSingleResponse(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePatchRequestBodyPatch(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePatchRequestBody(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePatchRequest(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePatchResponseBody(empty) }, - func(empty bool) message.Message { return objecttest.GeneratePatchResponse(empty) }, - ) -} diff --git a/object/status.go b/object/status.go deleted file mode 100644 index cff8275..0000000 --- a/object/status.go +++ /dev/null @@ -1,91 +0,0 @@ -package object - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status" - statusgrpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/grpc" -) - -// LocalizeFailStatus checks if passed global status.Code is related to object failure and: -// -// then localizes the code and returns true, -// else leaves the code unchanged and returns false. -// -// Arg must not be nil. -func LocalizeFailStatus(c *status.Code) bool { - return status.LocalizeIfInSection(c, uint32(statusgrpc.Section_SECTION_OBJECT)) -} - -// GlobalizeFail globalizes local code of object failure. -// -// Arg must not be nil. -func GlobalizeFail(c *status.Code) { - c.GlobalizeSection(uint32(statusgrpc.Section_SECTION_OBJECT)) -} - -const ( - // StatusAccessDenied is a local status.Code value for - // ACCESS_DENIED object failure. - StatusAccessDenied status.Code = iota - // StatusNotFound is a local status.Code value for - // OBJECT_NOT_FOUND object failure. - StatusNotFound - // StatusLocked is a local status.Code value for - // LOCKED object failure. - StatusLocked - // StatusLockNonRegularObject is a local status.Code value for - // LOCK_NON_REGULAR_OBJECT object failure. - StatusLockNonRegularObject - // StatusAlreadyRemoved is a local status.Code value for - // OBJECT_ALREADY_REMOVED object failure. - StatusAlreadyRemoved - // StatusOutOfRange is a local status.Code value for - // OUT_OF_RANGE object failure. - StatusOutOfRange -) - -const ( - // detailAccessDeniedDesc is a StatusAccessDenied detail ID for - // human-readable description. - detailAccessDeniedDesc = iota -) - -// WriteAccessDeniedDesc writes human-readable description of StatusAccessDenied -// into status.Status as a detail. The status must not be nil. -// -// Existing details are expected to be ID-unique, otherwise undefined behavior. -func WriteAccessDeniedDesc(st *status.Status, desc string) { - var found bool - - st.IterateDetails(func(d *status.Detail) bool { - if d.ID() == detailAccessDeniedDesc { - found = true - d.SetValue([]byte(desc)) - } - - return found - }) - - if !found { - var d status.Detail - - d.SetID(detailAccessDeniedDesc) - d.SetValue([]byte(desc)) - - st.AppendDetails(d) - } -} - -// ReadAccessDeniedDesc looks up for status detail with human-readable description -// of StatusAccessDenied. Returns empty string if detail is missing. -func ReadAccessDeniedDesc(st status.Status) (desc string) { - st.IterateDetails(func(d *status.Detail) bool { - if d.ID() == detailAccessDeniedDesc { - desc = string(d.Value()) - return true - } - - return false - }) - - return -} diff --git a/object/status_test.go b/object/status_test.go deleted file mode 100644 index 7a9ac13..0000000 --- a/object/status_test.go +++ /dev/null @@ -1,35 +0,0 @@ -package object_test - -import ( - "testing" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/object" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status" - statustest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/test" - "github.com/stretchr/testify/require" -) - -func TestStatusCodes(t *testing.T) { - statustest.TestCodes(t, object.LocalizeFailStatus, object.GlobalizeFail, - object.StatusAccessDenied, 2048, - object.StatusNotFound, 2049, - object.StatusLocked, 2050, - object.StatusLockNonRegularObject, 2051, - object.StatusAlreadyRemoved, 2052, - object.StatusOutOfRange, 2053, - ) -} - -func TestAccessDeniedDesc(t *testing.T) { - var st status.Status - - require.Empty(t, object.ReadAccessDeniedDesc(st)) - - const desc = "some description" - - object.WriteAccessDeniedDesc(&st, desc) - require.Equal(t, desc, object.ReadAccessDeniedDesc(st)) - - object.WriteAccessDeniedDesc(&st, desc+"1") - require.Equal(t, desc+"1", object.ReadAccessDeniedDesc(st)) -} diff --git a/object/string.go b/object/string.go deleted file mode 100644 index 6e42c81..0000000 --- a/object/string.go +++ /dev/null @@ -1,55 +0,0 @@ -package object - -import ( - object "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/object/grpc" -) - -// String returns string representation of Type. -func (t Type) String() string { - return TypeToGRPCField(t).String() -} - -// FromString parses Type from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (t *Type) FromString(s string) bool { - var g object.ObjectType - - ok := g.FromString(s) - - if ok { - *t = TypeFromGRPCField(g) - } - - return ok -} - -// TypeFromString converts string to Type. -// -// Deprecated: use FromString method. -func TypeFromString(s string) (t Type) { - t.FromString(s) - return -} - -// String returns string representation of MatchType. -func (t MatchType) String() string { - return MatchTypeToGRPCField(t).String() -} - -// FromString parses MatchType from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (t *MatchType) FromString(s string) bool { - var g object.MatchType - - ok := g.FromString(s) - - if ok { - *t = MatchTypeFromGRPCField(g) - } - - return ok -} diff --git a/object/test/generate.go b/object/test/generate.go deleted file mode 100644 index b4d3de5..0000000 --- a/object/test/generate.go +++ /dev/null @@ -1,766 +0,0 @@ -package objecttest - -import ( - crand "crypto/rand" - "math/rand" - "time" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/object" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - refstest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/test" - sessiontest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/test" -) - -func GenerateShortHeader(empty bool) *object.ShortHeader { - m := new(object.ShortHeader) - - if !empty { - m.SetObjectType(13) - m.SetCreationEpoch(100) - m.SetPayloadLength(12321) - m.SetOwnerID(refstest.GenerateOwnerID(false)) - } - - m.SetVersion(refstest.GenerateVersion(empty)) - m.SetHomomorphicHash(refstest.GenerateChecksum(empty)) - m.SetPayloadHash(refstest.GenerateChecksum(empty)) - - return m -} - -func GenerateAttribute(empty bool) *object.Attribute { - m := new(object.Attribute) - - if !empty { - m.SetKey("object key") - m.SetValue("object value") - } - - return m -} - -func GenerateAttributes(empty bool) []object.Attribute { - var res []object.Attribute - - if !empty { - res = append(res, - *GenerateAttribute(false), - *GenerateAttribute(false), - ) - } - - return res -} - -func GenerateSplitHeader(empty bool) *object.SplitHeader { - return generateSplitHeader(empty, true) -} - -func generateSplitHeader(empty, withPar bool) *object.SplitHeader { - m := new(object.SplitHeader) - - if !empty { - id := make([]byte, 16) - _, _ = crand.Read(id) - - m.SetSplitID(id) - m.SetParent(refstest.GenerateObjectID(false)) - m.SetPrevious(refstest.GenerateObjectID(false)) - m.SetChildren(refstest.GenerateObjectIDs(false)) - } - - m.SetParentSignature(refstest.GenerateSignature(empty)) - - if withPar { - m.SetParentHeader(GenerateHeaderWithSplitHeader(empty)) - } - - return m -} - -func GenerateHeaderWithSplitHeader(empty bool) *object.Header { - m := generateHeader(empty) - m.SetSplit(generateSplitHeader(empty, false)) - return m -} - -func GenerateHeaderWithECHeader(empty bool) *object.Header { - m := generateHeader(empty) - m.SetEC(GenerateECHeader(empty)) - return m -} - -func GenerateECHeader(empty bool) *object.ECHeader { - ech := new(object.ECHeader) - - if !empty { - ech.Parent = refstest.GenerateObjectID(empty) - - ech.ParentSplitID = make([]byte, 16) - _, _ = crand.Read(ech.ParentSplitID) - - ech.ParentSplitParentID = refstest.GenerateObjectID(empty) - ech.ParentAttributes = GenerateAttributes(empty) - ech.Index = 0 - ech.Total = 2 - ech.Header = []byte("chunk of ec-encoded parent header") - ech.HeaderLength = uint32(2 * len(ech.Header)) - } - - return ech -} - -func generateHeader(empty bool) *object.Header { - m := new(object.Header) - - if !empty { - m.SetPayloadLength(777) - m.SetCreationEpoch(432) - m.SetObjectType(111) - m.SetOwnerID(refstest.GenerateOwnerID(false)) - m.SetContainerID(refstest.GenerateContainerID(false)) - m.SetAttributes(GenerateAttributes(false)) - } - - m.SetVersion(refstest.GenerateVersion(empty)) - m.SetPayloadHash(refstest.GenerateChecksum(empty)) - m.SetHomomorphicHash(refstest.GenerateChecksum(empty)) - m.SetSessionToken(sessiontest.GenerateSessionToken(empty)) - - return m -} - -func GenerateHeaderWithSignature(empty bool) *object.HeaderWithSignature { - m := new(object.HeaderWithSignature) - - m.SetSignature(refstest.GenerateSignature(empty)) - m.SetHeader(GenerateHeaderWithSplitHeader(empty)) - - return m -} - -func GenerateObject(empty bool) *object.Object { - m := new(object.Object) - - if !empty { - m.SetPayload([]byte{7, 8, 9}) - m.SetObjectID(refstest.GenerateObjectID(false)) - } - - m.SetSignature(refstest.GenerateSignature(empty)) - m.SetHeader(GenerateHeaderWithSplitHeader(empty)) - - return m -} - -func GenerateSplitInfo(empty bool) *object.SplitInfo { - m := new(object.SplitInfo) - - if !empty { - id := make([]byte, 16) - _, _ = crand.Read(id) - - m.SetSplitID(id) - m.SetLastPart(refstest.GenerateObjectID(false)) - m.SetLink(refstest.GenerateObjectID(false)) - } - - return m -} - -func GenerateECInfo(empty bool) *object.ECInfo { - m := new(object.ECInfo) - - if !empty { - m.Chunks = make([]object.ECChunk, 2) - for i := range m.Chunks { - m.Chunks[i] = *GenerateECChunk(false) - } - } - - return m -} - -func GenerateECChunk(empty bool) *object.ECChunk { - m := new(object.ECChunk) - - if !empty { - m.ID = *refstest.GenerateObjectID(false) - m.Index = 4 - m.Total = 7 - } - - return m -} - -func GenerateGetRequestBody(empty bool) *object.GetRequestBody { - m := new(object.GetRequestBody) - - if !empty { - m.SetRaw(true) - m.SetAddress(refstest.GenerateAddress(false)) - } - - return m -} - -func GenerateGetRequest(empty bool) *object.GetRequest { - m := new(object.GetRequest) - - if !empty { - m.SetBody(GenerateGetRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateGetObjectPartInit(empty bool) *object.GetObjectPartInit { - m := new(object.GetObjectPartInit) - - if !empty { - m.SetObjectID(refstest.GenerateObjectID(false)) - } - - m.SetSignature(refstest.GenerateSignature(empty)) - m.SetHeader(GenerateHeaderWithSplitHeader(empty)) - - return m -} - -func GenerateGetObjectPartChunk(empty bool) *object.GetObjectPartChunk { - m := new(object.GetObjectPartChunk) - - if !empty { - m.SetChunk([]byte("get chunk")) - } - - return m -} - -func GenerateGetResponseBody(empty bool) *object.GetResponseBody { - m := new(object.GetResponseBody) - - if !empty { - switch randomInt(3) { - case 0: - m.SetObjectPart(GenerateGetObjectPartInit(false)) - case 1: - m.SetObjectPart(GenerateGetObjectPartChunk(false)) - case 2: - m.SetObjectPart(GenerateSplitInfo(false)) - } - } - - return m -} - -func GenerateGetResponse(empty bool) *object.GetResponse { - m := new(object.GetResponse) - - if !empty { - m.SetBody(GenerateGetResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GeneratePutObjectPartInit(empty bool) *object.PutObjectPartInit { - m := new(object.PutObjectPartInit) - - if !empty { - m.SetCopiesNumber([]uint32{234}) - m.SetObjectID(refstest.GenerateObjectID(false)) - } - - m.SetSignature(refstest.GenerateSignature(empty)) - m.SetHeader(GenerateHeaderWithSplitHeader(empty)) - - return m -} - -func GeneratePutObjectPartChunk(empty bool) *object.PutObjectPartChunk { - m := new(object.PutObjectPartChunk) - - if !empty { - m.SetChunk([]byte("put chunk")) - } - - return m -} - -func GeneratePutRequestBody(empty bool) *object.PutRequestBody { - m := new(object.PutRequestBody) - - if !empty { - switch randomInt(2) { - case 0: - m.SetObjectPart(GeneratePutObjectPartInit(false)) - case 1: - m.SetObjectPart(GeneratePutObjectPartChunk(false)) - } - } - - return m -} - -func GeneratePutRequest(empty bool) *object.PutRequest { - m := new(object.PutRequest) - - if !empty { - m.SetBody(GeneratePutRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GeneratePutResponseBody(empty bool) *object.PutResponseBody { - m := new(object.PutResponseBody) - - if !empty { - m.SetObjectID(refstest.GenerateObjectID(false)) - } - - return m -} - -func GeneratePutResponse(empty bool) *object.PutResponse { - m := new(object.PutResponse) - - if !empty { - m.SetBody(GeneratePutResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateDeleteRequestBody(empty bool) *object.DeleteRequestBody { - m := new(object.DeleteRequestBody) - - if !empty { - m.SetAddress(refstest.GenerateAddress(false)) - } - - return m -} - -func GenerateDeleteRequest(empty bool) *object.DeleteRequest { - m := new(object.DeleteRequest) - - if !empty { - m.SetBody(GenerateDeleteRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateDeleteResponseBody(empty bool) *object.DeleteResponseBody { - m := new(object.DeleteResponseBody) - - if !empty { - m.SetTombstone(refstest.GenerateAddress(false)) - } - - return m -} - -func GenerateDeleteResponse(empty bool) *object.DeleteResponse { - m := new(object.DeleteResponse) - - if !empty { - m.SetBody(GenerateDeleteResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateHeadRequestBody(empty bool) *object.HeadRequestBody { - m := new(object.HeadRequestBody) - - if !empty { - m.SetRaw(true) - m.SetMainOnly(true) - m.SetAddress(refstest.GenerateAddress(false)) - } - - return m -} - -func GenerateHeadRequest(empty bool) *object.HeadRequest { - m := new(object.HeadRequest) - - if !empty { - m.SetBody(GenerateHeadRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateHeadResponseBody(empty bool) *object.HeadResponseBody { - m := new(object.HeadResponseBody) - - if !empty { - switch randomInt(3) { - case 0: - m.SetHeaderPart(GenerateHeaderWithSignature(false)) - case 1: - m.SetHeaderPart(GenerateShortHeader(false)) - case 2: - m.SetHeaderPart(GenerateSplitInfo(false)) - } - } - - return m -} - -func GenerateHeadResponse(empty bool) *object.HeadResponse { - m := new(object.HeadResponse) - - if !empty { - m.SetBody(GenerateHeadResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateSearchFilter(empty bool) *object.SearchFilter { - m := new(object.SearchFilter) - - if !empty { - m.SetKey("search filter key") - m.SetValue("search filter val") - m.SetMatchType(987) - } - - return m -} - -func GenerateSearchFilters(empty bool) []object.SearchFilter { - var res []object.SearchFilter - - if !empty { - res = append(res, - *GenerateSearchFilter(false), - *GenerateSearchFilter(false), - ) - } - - return res -} - -func GenerateSearchRequestBody(empty bool) *object.SearchRequestBody { - m := new(object.SearchRequestBody) - - if !empty { - m.SetVersion(555) - m.SetContainerID(refstest.GenerateContainerID(false)) - m.SetFilters(GenerateSearchFilters(false)) - } - - return m -} - -func GenerateSearchRequest(empty bool) *object.SearchRequest { - m := new(object.SearchRequest) - - if !empty { - m.SetBody(GenerateSearchRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateSearchResponseBody(empty bool) *object.SearchResponseBody { - m := new(object.SearchResponseBody) - - if !empty { - m.SetIDList(refstest.GenerateObjectIDs(false)) - } - - return m -} - -func GenerateSearchResponse(empty bool) *object.SearchResponse { - m := new(object.SearchResponse) - - if !empty { - m.SetBody(GenerateSearchResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateRange(empty bool) *object.Range { - m := new(object.Range) - - if !empty { - m.SetLength(11) - m.SetOffset(22) - } - - return m -} - -func GenerateRanges(empty bool) []object.Range { - var res []object.Range - - if !empty { - res = append(res, - *GenerateRange(false), - *GenerateRange(false), - ) - } - - return res -} - -func GenerateGetRangeRequestBody(empty bool) *object.GetRangeRequestBody { - m := new(object.GetRangeRequestBody) - - if !empty { - m.SetRaw(true) - m.SetAddress(refstest.GenerateAddress(empty)) - m.SetRange(GenerateRange(empty)) - } - - return m -} - -func GenerateGetRangeRequest(empty bool) *object.GetRangeRequest { - m := new(object.GetRangeRequest) - - if !empty { - m.SetBody(GenerateGetRangeRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateGetRangePartChunk(empty bool) *object.GetRangePartChunk { - m := new(object.GetRangePartChunk) - - if !empty { - m.SetChunk([]byte("get range chunk")) - } - - return m -} - -func GenerateGetRangeResponseBody(empty bool) *object.GetRangeResponseBody { - m := new(object.GetRangeResponseBody) - - if !empty { - switch randomInt(2) { - case 0: - m.SetRangePart(GenerateGetRangePartChunk(false)) - case 1: - m.SetRangePart(GenerateSplitInfo(false)) - } - } - - return m -} - -func GenerateGetRangeResponse(empty bool) *object.GetRangeResponse { - m := new(object.GetRangeResponse) - - if !empty { - m.SetBody(GenerateGetRangeResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateGetRangeHashRequestBody(empty bool) *object.GetRangeHashRequestBody { - m := new(object.GetRangeHashRequestBody) - - if !empty { - m.SetSalt([]byte("range hash salt")) - m.SetType(455) - m.SetAddress(refstest.GenerateAddress(false)) - m.SetRanges(GenerateRanges(false)) - } - - return m -} - -func GenerateGetRangeHashRequest(empty bool) *object.GetRangeHashRequest { - m := new(object.GetRangeHashRequest) - - if !empty { - m.SetBody(GenerateGetRangeHashRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateGetRangeHashResponseBody(empty bool) *object.GetRangeHashResponseBody { - m := new(object.GetRangeHashResponseBody) - - if !empty { - m.SetType(678) - m.SetHashList([][]byte{ - refstest.GenerateChecksum(false).GetSum(), - refstest.GenerateChecksum(false).GetSum(), - }) - } - - return m -} - -func GenerateGetRangeHashResponse(empty bool) *object.GetRangeHashResponse { - m := new(object.GetRangeHashResponse) - - if !empty { - m.SetBody(GenerateGetRangeHashResponseBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateLock(empty bool) *object.Lock { - m := new(object.Lock) - - if !empty { - m.SetMembers([]refs.ObjectID{ - *refstest.GenerateObjectID(false), - *refstest.GenerateObjectID(false), - }) - } - - return m -} - -func GeneratePutSingleRequest(empty bool) *object.PutSingleRequest { - m := new(object.PutSingleRequest) - - if !empty { - m.SetBody(GeneratePutSingleRequestBody(false)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GeneratePutSingleRequestBody(empty bool) *object.PutSingleRequestBody { - b := new(object.PutSingleRequestBody) - if !empty { - b.SetObject(GenerateObject(empty)) - b.SetCopiesNumber([]uint32{12345}) - } - return b -} - -func GeneratePutSingleResponse(empty bool) *object.PutSingleResponse { - m := new(object.PutSingleResponse) - if !empty { - m.SetBody(new(object.PutSingleResponseBody)) - } - m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) - return m -} - -func GeneratePatchRequestBodyPatch(empty bool) *object.PatchRequestBodyPatch { - m := new(object.PatchRequestBodyPatch) - - if !empty { - m.Range = GenerateRange(false) - m.Chunk = []byte("GeneratePatchRequestBodyPatch") - } - - return m -} - -func GeneratePatchRequestBody(empty bool) *object.PatchRequestBody { - m := new(object.PatchRequestBody) - - if !empty { - m.SetAddress(refstest.GenerateAddress(empty)) - m.SetNewAttributes(GenerateAttributes(empty)) - m.SetReplaceAttributes(false) - m.SetPatch(GeneratePatchRequestBodyPatch(empty)) - } - - return m -} - -func GeneratePatchRequest(empty bool) *object.PatchRequest { - m := new(object.PatchRequest) - - if !empty { - m.SetBody(GeneratePatchRequestBody(empty)) - } - - m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) - - return m -} - -func GeneratePatchResponseBody(empty bool) *object.PatchResponseBody { - m := new(object.PatchResponseBody) - - if !empty { - m.ObjectID = refstest.GenerateObjectID(empty) - } - - return m -} - -func GeneratePatchResponse(empty bool) *object.PatchResponse { - m := new(object.PatchResponse) - - if !empty { - m.Body = GeneratePatchResponseBody(empty) - } - - return m -} - -func randomInt(n int) int { - return rand.New(rand.NewSource(time.Now().UnixNano())).Intn(n) -} diff --git a/object/types.go b/object/types.go deleted file mode 100644 index 0ca3f12..0000000 --- a/object/types.go +++ /dev/null @@ -1,1650 +0,0 @@ -package object - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" -) - -type Type uint32 - -type MatchType uint32 - -type ShortHeader struct { - version *refs.Version - - creatEpoch uint64 - - ownerID *refs.OwnerID - - typ Type - - payloadLen uint64 - - payloadHash, homoHash *refs.Checksum -} - -type Attribute struct { - key, val string -} - -type SplitHeader struct { - par, prev *refs.ObjectID - - parSig *refs.Signature - - parHdr *Header - - children []refs.ObjectID - - splitID []byte -} - -type ECHeader struct { - Parent *refs.ObjectID - ParentSplitID []byte - ParentSplitParentID *refs.ObjectID - ParentAttributes []Attribute - Index uint32 - Total uint32 - Header []byte - HeaderLength uint32 -} - -type Header struct { - version *refs.Version - - cid *refs.ContainerID - - ownerID *refs.OwnerID - - creatEpoch uint64 - - payloadLen uint64 - - payloadHash, homoHash *refs.Checksum - - typ Type - - sessionToken *session.Token - - attr []Attribute - - split *SplitHeader - - ec *ECHeader -} - -type HeaderWithSignature struct { - header *Header - - signature *refs.Signature -} - -type Object struct { - objectID *refs.ObjectID - - idSig *refs.Signature - - header *Header - - payload []byte - - // marshalData holds marshaled data, must not be marshaled by StableMarshal - marshalData []byte -} - -type SplitInfo struct { - splitID []byte - - lastPart *refs.ObjectID - - link *refs.ObjectID -} - -type ECChunk struct { - ID refs.ObjectID - Index uint32 - Total uint32 -} - -type ECInfo struct { - Chunks []ECChunk -} - -type GetRequestBody struct { - addr *refs.Address - - raw bool -} - -type GetObjectPart interface { - getObjectPart() -} - -type GetObjectPartInit struct { - id *refs.ObjectID - - sig *refs.Signature - - hdr *Header -} - -type GetObjectPartChunk struct { - chunk []byte -} - -type GetRequest struct { - body *GetRequestBody - - session.RequestHeaders -} - -type GetResponseBody struct { - objPart GetObjectPart -} - -type PutObjectPart interface { - putObjectPart() -} - -type PutObjectPartInit struct { - id *refs.ObjectID - - sig *refs.Signature - - hdr *Header - - copyNum []uint32 -} - -type PutObjectPartChunk struct { - chunk []byte -} - -type GetResponse struct { - body *GetResponseBody - - session.ResponseHeaders -} - -type PutRequestBody struct { - objPart PutObjectPart -} - -type PutRequest struct { - body *PutRequestBody - - session.RequestHeaders -} - -type PutResponseBody struct { - id *refs.ObjectID -} - -type PutResponse struct { - body *PutResponseBody - - session.ResponseHeaders -} - -type DeleteRequestBody struct { - addr *refs.Address -} - -type DeleteRequest struct { - body *DeleteRequestBody - - session.RequestHeaders -} - -type DeleteResponseBody struct { - tombstone *refs.Address -} - -type DeleteResponse struct { - body *DeleteResponseBody - - session.ResponseHeaders -} - -type HeadRequestBody struct { - addr *refs.Address - - mainOnly, raw bool -} - -type GetHeaderPart interface { - getHeaderPart() -} - -type HeadRequest struct { - body *HeadRequestBody - - session.RequestHeaders -} - -type HeadResponseBody struct { - hdrPart GetHeaderPart -} - -type HeadResponse struct { - body *HeadResponseBody - - session.ResponseHeaders -} - -type SearchFilter struct { - matchType MatchType - - key, val string -} - -type SearchRequestBody struct { - cid *refs.ContainerID - - version uint32 - - filters []SearchFilter -} - -type SearchRequest struct { - body *SearchRequestBody - - session.RequestHeaders -} - -type SearchResponseBody struct { - idList []refs.ObjectID -} - -type SearchResponse struct { - body *SearchResponseBody - - session.ResponseHeaders -} - -type Range struct { - off, len uint64 -} - -type GetRangeRequestBody struct { - addr *refs.Address - - rng *Range - - raw bool -} - -type GetRangeRequest struct { - body *GetRangeRequestBody - - session.RequestHeaders -} - -type GetRangePart interface { - getRangePart() -} - -type GetRangePartChunk struct { - chunk []byte -} - -type GetRangeResponseBody struct { - rngPart GetRangePart -} - -type GetRangeResponse struct { - body *GetRangeResponseBody - - session.ResponseHeaders -} - -type GetRangeHashRequestBody struct { - addr *refs.Address - - rngs []Range - - salt []byte - - typ refs.ChecksumType -} - -type GetRangeHashRequest struct { - body *GetRangeHashRequestBody - - session.RequestHeaders -} - -type GetRangeHashResponseBody struct { - typ refs.ChecksumType - - hashList [][]byte -} - -type GetRangeHashResponse struct { - body *GetRangeHashResponseBody - - session.ResponseHeaders -} - -type PutSingleRequestBody struct { - object *Object - copyNum []uint32 - - // marshalData holds marshaled data, must not be marshaled by StableMarshal - marshalData []byte -} - -type PutSingleRequest struct { - body *PutSingleRequestBody - - session.RequestHeaders -} - -type PutSingleResponseBody struct{} - -type PutSingleResponse struct { - body *PutSingleResponseBody - - session.ResponseHeaders -} - -type PatchRequestBodyPatch struct { - Range *Range - - Chunk []byte -} - -type PatchRequestBody struct { - address *refs.Address - - newAttributes []Attribute - - replaceAttributes bool - - patch *PatchRequestBodyPatch -} - -type PatchRequest struct { - body *PatchRequestBody - - session.RequestHeaders -} - -type PatchResponseBody struct { - ObjectID *refs.ObjectID -} - -type PatchResponse struct { - Body *PatchResponseBody - - session.ResponseHeaders -} - -const ( - TypeRegular Type = iota - TypeTombstone - _ - TypeLock -) - -const ( - MatchUnknown MatchType = iota - MatchStringEqual - MatchStringNotEqual - MatchNotPresent - MatchCommonPrefix -) - -func (h *ShortHeader) GetVersion() *refs.Version { - if h != nil { - return h.version - } - - return nil -} - -func (h *ShortHeader) SetVersion(v *refs.Version) { - h.version = v -} - -func (h *ShortHeader) GetCreationEpoch() uint64 { - if h != nil { - return h.creatEpoch - } - - return 0 -} - -func (h *ShortHeader) SetCreationEpoch(v uint64) { - h.creatEpoch = v -} - -func (h *ShortHeader) GetOwnerID() *refs.OwnerID { - if h != nil { - return h.ownerID - } - - return nil -} - -func (h *ShortHeader) SetOwnerID(v *refs.OwnerID) { - h.ownerID = v -} - -func (h *ShortHeader) GetObjectType() Type { - if h != nil { - return h.typ - } - - return TypeRegular -} - -func (h *ShortHeader) SetObjectType(v Type) { - h.typ = v -} - -func (h *ShortHeader) GetPayloadLength() uint64 { - if h != nil { - return h.payloadLen - } - - return 0 -} - -func (h *ShortHeader) SetPayloadLength(v uint64) { - h.payloadLen = v -} - -func (h *ShortHeader) GetPayloadHash() *refs.Checksum { - if h != nil { - return h.payloadHash - } - - return nil -} - -func (h *ShortHeader) SetPayloadHash(v *refs.Checksum) { - h.payloadHash = v -} - -func (h *ShortHeader) GetHomomorphicHash() *refs.Checksum { - if h != nil { - return h.homoHash - } - - return nil -} - -func (h *ShortHeader) SetHomomorphicHash(v *refs.Checksum) { - h.homoHash = v -} - -func (h *ShortHeader) getHeaderPart() {} - -func (a *Attribute) GetKey() string { - if a != nil { - return a.key - } - - return "" -} - -func (a *Attribute) SetKey(v string) { - a.key = v -} - -func (a *Attribute) GetValue() string { - if a != nil { - return a.val - } - - return "" -} - -func (a *Attribute) SetValue(v string) { - a.val = v -} - -func (h *SplitHeader) GetParent() *refs.ObjectID { - if h != nil { - return h.par - } - - return nil -} - -func (h *SplitHeader) SetParent(v *refs.ObjectID) { - h.par = v -} - -func (h *SplitHeader) GetPrevious() *refs.ObjectID { - if h != nil { - return h.prev - } - - return nil -} - -func (h *SplitHeader) SetPrevious(v *refs.ObjectID) { - h.prev = v -} - -func (h *SplitHeader) GetParentSignature() *refs.Signature { - if h != nil { - return h.parSig - } - - return nil -} - -func (h *SplitHeader) SetParentSignature(v *refs.Signature) { - h.parSig = v -} - -func (h *SplitHeader) GetParentHeader() *Header { - if h != nil { - return h.parHdr - } - - return nil -} - -func (h *SplitHeader) SetParentHeader(v *Header) { - h.parHdr = v -} - -func (h *SplitHeader) GetChildren() []refs.ObjectID { - if h != nil { - return h.children - } - - return nil -} - -func (h *SplitHeader) SetChildren(v []refs.ObjectID) { - h.children = v -} - -func (h *SplitHeader) GetSplitID() []byte { - if h != nil { - return h.splitID - } - - return nil -} - -func (h *SplitHeader) SetSplitID(v []byte) { - h.splitID = v -} - -func (h *Header) GetVersion() *refs.Version { - if h != nil { - return h.version - } - - return nil -} - -func (h *Header) SetVersion(v *refs.Version) { - h.version = v -} - -func (h *Header) GetContainerID() *refs.ContainerID { - if h != nil { - return h.cid - } - - return nil -} - -func (h *Header) SetContainerID(v *refs.ContainerID) { - h.cid = v -} - -func (h *Header) GetOwnerID() *refs.OwnerID { - if h != nil { - return h.ownerID - } - - return nil -} - -func (h *Header) SetOwnerID(v *refs.OwnerID) { - h.ownerID = v -} - -func (h *Header) GetCreationEpoch() uint64 { - if h != nil { - return h.creatEpoch - } - - return 0 -} - -func (h *Header) SetCreationEpoch(v uint64) { - h.creatEpoch = v -} - -func (h *Header) GetPayloadLength() uint64 { - if h != nil { - return h.payloadLen - } - - return 0 -} - -func (h *Header) SetPayloadLength(v uint64) { - h.payloadLen = v -} - -func (h *Header) GetPayloadHash() *refs.Checksum { - if h != nil { - return h.payloadHash - } - - return nil -} - -func (h *Header) SetPayloadHash(v *refs.Checksum) { - h.payloadHash = v -} - -func (h *Header) GetObjectType() Type { - if h != nil { - return h.typ - } - - return TypeRegular -} - -func (h *Header) SetObjectType(v Type) { - h.typ = v -} - -func (h *Header) GetHomomorphicHash() *refs.Checksum { - if h != nil { - return h.homoHash - } - - return nil -} - -func (h *Header) SetHomomorphicHash(v *refs.Checksum) { - h.homoHash = v -} - -func (h *Header) GetSessionToken() *session.Token { - if h != nil { - return h.sessionToken - } - - return nil -} - -func (h *Header) SetSessionToken(v *session.Token) { - h.sessionToken = v -} - -func (h *Header) GetAttributes() []Attribute { - if h != nil { - return h.attr - } - - return nil -} - -func (h *Header) SetAttributes(v []Attribute) { - h.attr = v -} - -func (h *Header) GetSplit() *SplitHeader { - if h != nil { - return h.split - } - - return nil -} - -func (h *Header) SetSplit(v *SplitHeader) { - h.split = v -} - -func (h *Header) GetEC() *ECHeader { - if h != nil { - return h.ec - } - return nil -} - -func (h *Header) SetEC(v *ECHeader) { - h.ec = v -} - -func (h *HeaderWithSignature) GetHeader() *Header { - if h != nil { - return h.header - } - - return nil -} - -func (h *HeaderWithSignature) SetHeader(v *Header) { - h.header = v -} - -func (h *HeaderWithSignature) GetSignature() *refs.Signature { - if h != nil { - return h.signature - } - - return nil -} - -func (h *HeaderWithSignature) SetSignature(v *refs.Signature) { - h.signature = v -} - -func (h *HeaderWithSignature) getHeaderPart() {} - -func (o *Object) GetObjectID() *refs.ObjectID { - if o != nil { - return o.objectID - } - - return nil -} - -func (o *Object) SetObjectID(v *refs.ObjectID) { - o.objectID = v -} - -func (o *Object) GetSignature() *refs.Signature { - if o != nil { - return o.idSig - } - - return nil -} - -func (o *Object) SetSignature(v *refs.Signature) { - o.idSig = v -} - -func (o *Object) GetHeader() *Header { - if o != nil { - return o.header - } - - return nil -} - -func (o *Object) SetHeader(v *Header) { - o.header = v -} - -func (o *Object) GetPayload() []byte { - if o != nil { - return o.payload - } - - return nil -} - -func (o *Object) SetPayload(v []byte) { - o.payload = v -} - -func (s *SplitInfo) GetSplitID() []byte { - if s != nil { - return s.splitID - } - - return nil -} - -func (s *SplitInfo) SetSplitID(v []byte) { - s.splitID = v -} - -func (s *SplitInfo) GetLastPart() *refs.ObjectID { - if s != nil { - return s.lastPart - } - - return nil -} - -func (s *SplitInfo) SetLastPart(v *refs.ObjectID) { - s.lastPart = v -} - -func (s *SplitInfo) GetLink() *refs.ObjectID { - if s != nil { - return s.link - } - - return nil -} - -func (s *SplitInfo) SetLink(v *refs.ObjectID) { - s.link = v -} - -func (s *SplitInfo) getObjectPart() {} - -func (s *SplitInfo) getHeaderPart() {} - -func (s *SplitInfo) getRangePart() {} - -func (r *GetRequestBody) GetAddress() *refs.Address { - if r != nil { - return r.addr - } - - return nil -} - -func (r *GetRequestBody) SetAddress(v *refs.Address) { - r.addr = v -} - -func (r *GetRequestBody) GetRaw() bool { - if r != nil { - return r.raw - } - - return false -} - -func (r *GetRequestBody) SetRaw(v bool) { - r.raw = v -} - -func (r *GetRequest) GetBody() *GetRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *GetRequest) SetBody(v *GetRequestBody) { - r.body = v -} - -func (r *GetObjectPartInit) GetObjectID() *refs.ObjectID { - if r != nil { - return r.id - } - - return nil -} - -func (r *GetObjectPartInit) SetObjectID(v *refs.ObjectID) { - r.id = v -} - -func (r *GetObjectPartInit) GetSignature() *refs.Signature { - if r != nil { - return r.sig - } - - return nil -} - -func (r *GetObjectPartInit) SetSignature(v *refs.Signature) { - r.sig = v -} - -func (r *GetObjectPartInit) GetHeader() *Header { - if r != nil { - return r.hdr - } - - return nil -} - -func (r *GetObjectPartInit) SetHeader(v *Header) { - r.hdr = v -} - -func (r *GetObjectPartInit) getObjectPart() {} - -func (r *GetObjectPartChunk) GetChunk() []byte { - if r != nil { - return r.chunk - } - - return nil -} - -func (r *GetObjectPartChunk) SetChunk(v []byte) { - r.chunk = v -} - -func (r *GetObjectPartChunk) getObjectPart() {} - -func (r *GetResponseBody) GetObjectPart() GetObjectPart { - if r != nil { - return r.objPart - } - - return nil -} - -func (r *GetResponseBody) SetObjectPart(v GetObjectPart) { - r.objPart = v -} - -func (r *GetResponse) GetBody() *GetResponseBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *GetResponse) SetBody(v *GetResponseBody) { - r.body = v -} - -func (r *PutObjectPartInit) GetObjectID() *refs.ObjectID { - if r != nil { - return r.id - } - - return nil -} - -func (r *PutObjectPartInit) SetObjectID(v *refs.ObjectID) { - r.id = v -} - -func (r *PutObjectPartInit) GetSignature() *refs.Signature { - if r != nil { - return r.sig - } - - return nil -} - -func (r *PutObjectPartInit) SetSignature(v *refs.Signature) { - r.sig = v -} - -func (r *PutObjectPartInit) GetHeader() *Header { - if r != nil { - return r.hdr - } - - return nil -} - -func (r *PutObjectPartInit) SetHeader(v *Header) { - r.hdr = v -} - -func (r *PutObjectPartInit) GetCopiesNumber() []uint32 { - if r != nil { - return r.copyNum - } - - return nil -} - -func (r *PutObjectPartInit) SetCopiesNumber(v []uint32) { - r.copyNum = v -} - -func (r *PutObjectPartInit) putObjectPart() {} - -func (r *PutObjectPartChunk) GetChunk() []byte { - if r != nil { - return r.chunk - } - - return nil -} - -func (r *PutObjectPartChunk) SetChunk(v []byte) { - r.chunk = v -} - -func (r *PutObjectPartChunk) putObjectPart() {} - -func (r *PutRequestBody) GetObjectPart() PutObjectPart { - if r != nil { - return r.objPart - } - - return nil -} - -func (r *PutRequestBody) SetObjectPart(v PutObjectPart) { - r.objPart = v -} - -func (r *PutRequest) GetBody() *PutRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *PutRequest) SetBody(v *PutRequestBody) { - r.body = v -} - -func (r *PutResponseBody) GetObjectID() *refs.ObjectID { - if r != nil { - return r.id - } - - return nil -} - -func (r *PutResponseBody) SetObjectID(v *refs.ObjectID) { - r.id = v -} - -func (r *PutResponse) GetBody() *PutResponseBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *PutResponse) SetBody(v *PutResponseBody) { - r.body = v -} - -func (r *DeleteRequestBody) GetAddress() *refs.Address { - if r != nil { - return r.addr - } - - return nil -} - -func (r *DeleteRequestBody) SetAddress(v *refs.Address) { - r.addr = v -} - -func (r *DeleteRequest) GetBody() *DeleteRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *DeleteRequest) SetBody(v *DeleteRequestBody) { - r.body = v -} - -// GetTombstone returns tombstone address. -func (r *DeleteResponseBody) GetTombstone() *refs.Address { - if r != nil { - return r.tombstone - } - - return nil -} - -// SetTombstone sets tombstone address. -func (r *DeleteResponseBody) SetTombstone(v *refs.Address) { - r.tombstone = v -} - -func (r *DeleteResponse) GetBody() *DeleteResponseBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *DeleteResponse) SetBody(v *DeleteResponseBody) { - r.body = v -} - -func (r *HeadRequestBody) GetAddress() *refs.Address { - if r != nil { - return r.addr - } - - return nil -} - -func (r *HeadRequestBody) SetAddress(v *refs.Address) { - r.addr = v -} - -func (r *HeadRequestBody) GetMainOnly() bool { - if r != nil { - return r.mainOnly - } - - return false -} - -func (r *HeadRequestBody) SetMainOnly(v bool) { - r.mainOnly = v -} - -func (r *HeadRequestBody) GetRaw() bool { - if r != nil { - return r.raw - } - - return false -} - -func (r *HeadRequestBody) SetRaw(v bool) { - r.raw = v -} - -func (r *HeadRequest) GetBody() *HeadRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *HeadRequest) SetBody(v *HeadRequestBody) { - r.body = v -} - -func (r *HeadResponseBody) GetHeaderPart() GetHeaderPart { - if r != nil { - return r.hdrPart - } - - return nil -} - -func (r *HeadResponseBody) SetHeaderPart(v GetHeaderPart) { - r.hdrPart = v -} - -func (r *HeadResponse) GetBody() *HeadResponseBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *HeadResponse) SetBody(v *HeadResponseBody) { - r.body = v -} - -func (f *SearchFilter) GetMatchType() MatchType { - if f != nil { - return f.matchType - } - - return MatchUnknown -} - -func (f *SearchFilter) SetMatchType(v MatchType) { - f.matchType = v -} - -func (f *SearchFilter) GetKey() string { - if f != nil { - return f.key - } - - return "" -} - -func (f *SearchFilter) SetKey(v string) { - f.key = v -} - -func (f *SearchFilter) GetValue() string { - if f != nil { - return f.val - } - - return "" -} - -func (f *SearchFilter) SetValue(v string) { - f.val = v -} - -func (r *SearchRequestBody) GetContainerID() *refs.ContainerID { - if r != nil { - return r.cid - } - - return nil -} - -func (r *SearchRequestBody) SetContainerID(v *refs.ContainerID) { - r.cid = v -} - -func (r *SearchRequestBody) GetVersion() uint32 { - if r != nil { - return r.version - } - - return 0 -} - -func (r *SearchRequestBody) SetVersion(v uint32) { - r.version = v -} - -func (r *SearchRequestBody) GetFilters() []SearchFilter { - if r != nil { - return r.filters - } - - return nil -} - -func (r *SearchRequestBody) SetFilters(v []SearchFilter) { - r.filters = v -} - -func (r *SearchRequest) GetBody() *SearchRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *SearchRequest) SetBody(v *SearchRequestBody) { - r.body = v -} - -func (r *SearchResponseBody) GetIDList() []refs.ObjectID { - if r != nil { - return r.idList - } - - return nil -} - -func (r *SearchResponseBody) SetIDList(v []refs.ObjectID) { - r.idList = v -} - -func (r *SearchResponse) GetBody() *SearchResponseBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *SearchResponse) SetBody(v *SearchResponseBody) { - r.body = v -} - -func (r *Range) GetOffset() uint64 { - if r != nil { - return r.off - } - - return 0 -} - -func (r *Range) SetOffset(v uint64) { - r.off = v -} - -func (r *Range) GetLength() uint64 { - if r != nil { - return r.len - } - - return 0 -} - -func (r *Range) SetLength(v uint64) { - r.len = v -} - -func (r *GetRangeRequestBody) GetAddress() *refs.Address { - if r != nil { - return r.addr - } - - return nil -} - -func (r *GetRangeRequestBody) SetAddress(v *refs.Address) { - r.addr = v -} - -func (r *GetRangeRequestBody) GetRange() *Range { - if r != nil { - return r.rng - } - - return nil -} - -func (r *GetRangeRequestBody) SetRange(v *Range) { - r.rng = v -} - -func (r *GetRangeRequestBody) GetRaw() bool { - if r != nil { - return r.raw - } - - return false -} - -func (r *GetRangeRequestBody) SetRaw(v bool) { - r.raw = v -} - -func (r *GetRangeRequest) GetBody() *GetRangeRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *GetRangeRequest) SetBody(v *GetRangeRequestBody) { - r.body = v -} - -func (r *GetRangePartChunk) GetChunk() []byte { - if r != nil { - return r.chunk - } - - return nil -} - -func (r *GetRangePartChunk) SetChunk(v []byte) { - r.chunk = v -} - -func (r *GetRangePartChunk) getRangePart() {} - -func (r *GetRangeResponseBody) GetRangePart() GetRangePart { - if r != nil { - return r.rngPart - } - - return nil -} - -func (r *GetRangeResponseBody) SetRangePart(v GetRangePart) { - r.rngPart = v -} - -func (r *GetRangeResponse) GetBody() *GetRangeResponseBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *GetRangeResponse) SetBody(v *GetRangeResponseBody) { - r.body = v -} - -func (r *GetRangeHashRequestBody) GetAddress() *refs.Address { - if r != nil { - return r.addr - } - - return nil -} - -func (r *GetRangeHashRequestBody) SetAddress(v *refs.Address) { - r.addr = v -} - -func (r *GetRangeHashRequestBody) GetRanges() []Range { - if r != nil { - return r.rngs - } - - return nil -} - -func (r *GetRangeHashRequestBody) SetRanges(v []Range) { - r.rngs = v -} - -func (r *GetRangeHashRequestBody) GetSalt() []byte { - if r != nil { - return r.salt - } - - return nil -} - -func (r *GetRangeHashRequestBody) SetSalt(v []byte) { - r.salt = v -} - -func (r *GetRangeHashRequestBody) GetType() refs.ChecksumType { - if r != nil { - return r.typ - } - - return refs.UnknownChecksum -} - -func (r *GetRangeHashRequestBody) SetType(v refs.ChecksumType) { - r.typ = v -} - -func (r *GetRangeHashRequest) GetBody() *GetRangeHashRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *GetRangeHashRequest) SetBody(v *GetRangeHashRequestBody) { - r.body = v -} - -func (r *GetRangeHashResponseBody) GetType() refs.ChecksumType { - if r != nil { - return r.typ - } - - return refs.UnknownChecksum -} - -func (r *GetRangeHashResponseBody) SetType(v refs.ChecksumType) { - r.typ = v -} - -func (r *GetRangeHashResponseBody) GetHashList() [][]byte { - if r != nil { - return r.hashList - } - - return nil -} - -func (r *GetRangeHashResponseBody) SetHashList(v [][]byte) { - r.hashList = v -} - -func (r *GetRangeHashResponse) GetBody() *GetRangeHashResponseBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *GetRangeHashResponse) SetBody(v *GetRangeHashResponseBody) { - r.body = v -} - -func (r *PutSingleRequest) GetBody() *PutSingleRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *PutSingleRequest) SetBody(v *PutSingleRequestBody) { - r.body = v -} - -func (b *PutSingleRequestBody) GetObject() *Object { - if b == nil { - return nil - } - return b.object -} - -func (b *PutSingleRequestBody) SetObject(o *Object) { - b.object = o -} - -func (b *PutSingleRequestBody) GetCopiesNumber() []uint32 { - if b == nil { - return nil - } - return b.copyNum -} - -func (b *PutSingleRequestBody) SetCopiesNumber(v []uint32) { - b.copyNum = v -} - -func (r *PutSingleResponse) GetBody() *PutSingleResponseBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *PutSingleResponse) SetBody(v *PutSingleResponseBody) { - r.body = v -} - -func (r *PatchRequest) GetBody() *PatchRequestBody { - if r != nil { - return r.body - } - - return nil -} - -func (r *PatchRequest) SetBody(v *PatchRequestBody) { - r.body = v -} - -func (r *PatchRequestBody) GetAddress() *refs.Address { - if r != nil { - return r.address - } - - return nil -} - -func (r *PatchRequestBody) SetAddress(addr *refs.Address) { - r.address = addr -} - -func (r *PatchRequestBody) GetNewAttributes() []Attribute { - if r != nil { - return r.newAttributes - } - - return nil -} - -func (r *PatchRequestBody) SetNewAttributes(attrs []Attribute) { - r.newAttributes = attrs -} - -func (r *PatchRequestBody) GetReplaceAttributes() bool { - if r != nil { - return r.replaceAttributes - } - - return false -} - -func (r *PatchRequestBody) SetReplaceAttributes(replace bool) { - r.replaceAttributes = replace -} - -func (r *PatchRequestBody) GetPatch() *PatchRequestBodyPatch { - if r != nil { - return r.patch - } - - return nil -} - -func (r *PatchRequestBody) SetPatch(patch *PatchRequestBodyPatch) { - r.patch = patch -} - -func (r *PatchResponse) GetBody() *PatchResponseBody { - if r != nil { - return r.Body - } - - return nil -} - -func (r *PatchResponse) SetBody(v *PatchResponseBody) { - r.Body = v -} - -func (r *PatchResponseBody) GetObjectID() *refs.ObjectID { - if r != nil { - return r.ObjectID - } - - return nil -} - -func (r *PatchResponseBody) SetObjectID(objectID *refs.ObjectID) { - r.ObjectID = objectID -} - -func (r *PatchRequestBodyPatch) GetChunk() []byte { - if r != nil { - return r.Chunk - } - - return nil -} - -func (r *PatchRequestBodyPatch) GetRange() *Range { - if r != nil { - return r.Range - } - - return nil -} - -func (s *ECInfo) getObjectPart() {} - -func (s *ECInfo) getHeaderPart() {} - -func (s *ECInfo) getRangePart() {} diff --git a/prepare.sh b/prepare.sh deleted file mode 100755 index 1d00954..0000000 --- a/prepare.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -if [ -z "$1" ]; then - echo "usage: ./prepare.sh path/to/frostfs-api" - exit 1 -fi - -API_GO_PATH=$(pwd) -API_PATH=$1 - -# MOVE FILES FROM API REPO -cd "$API_PATH" || exit 1 -ARGS=$(find ./ -name '*.proto' -not -path './bin/*') -for file in $ARGS; do - dir=$(dirname "$file") - mkdir -p "$API_GO_PATH/$dir/grpc" - cp -r "$dir"/* "$API_GO_PATH/$dir/grpc" -done - -# MODIFY FILES -cd "$API_GO_PATH" || exit 1 -ARGS2=$(find ./ -name '*.proto' -not -path './bin/*') -for file in $ARGS2; do - echo "$file" - sed -i "s/import\ \"\(.*\)\/\(.*\)\.proto\";/import\ \"\1\/grpc\/\2\.proto\";/" $file -done - -cd "$API_GO_PATH" || exit 1 -# COMPILE -make protoc - -# REMOVE PROTO DEFINITIONS -ARGS=$(find ./$prefix -name '*.proto' -not -path './util/*' -not -path './bin/*') -for file in $ARGS; do - rm "$file" -done diff --git a/refs/bench_test.go b/refs/bench_test.go deleted file mode 100644 index 40784c6..0000000 --- a/refs/bench_test.go +++ /dev/null @@ -1,53 +0,0 @@ -package refs - -import ( - "math/rand" - "strconv" - "testing" -) - -func BenchmarkObjectIDSlice(b *testing.B) { - for _, size := range []int{0, 1, 50} { - b.Run(strconv.Itoa(size)+" elements", func(b *testing.B) { - benchmarkObjectIDSlice(b, size) - }) - } -} - -func benchmarkObjectIDSlice(b *testing.B, size int) { - ids := make([]ObjectID, size) - for i := range ids { - ids[i].val = make([]byte, 32) - rand.Read(ids[i].val) - } - raw := ObjectIDListToGRPCMessage(ids) - - b.Run("to grpc message", func(b *testing.B) { - b.ReportAllocs() - for range b.N { - raw := ObjectIDListToGRPCMessage(ids) - if len(raw) != len(ids) { - b.FailNow() - } - } - }) - b.Run("from grpc message", func(b *testing.B) { - b.ReportAllocs() - for range b.N { - ids, err := ObjectIDListFromGRPCMessage(raw) - if err != nil || len(raw) != len(ids) { - b.FailNow() - } - } - }) - b.Run("marshal", func(b *testing.B) { - b.ReportAllocs() - for range b.N { - buf := make([]byte, ObjectIDNestedListSize(1, ids)) - n := ObjectIDNestedListMarshal(1, buf, ids) - if n != len(buf) { - b.FailNow() - } - } - }) -} diff --git a/refs/convert.go b/refs/convert.go deleted file mode 100644 index da31cdb..0000000 --- a/refs/convert.go +++ /dev/null @@ -1,264 +0,0 @@ -package refs - -import ( - refs "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -func (o *OwnerID) ToGRPCMessage() grpc.Message { - var m *refs.OwnerID - - if o != nil { - m = new(refs.OwnerID) - - m.SetValue(o.val) - } - - return m -} - -func (o *OwnerID) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*refs.OwnerID) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - o.val = v.GetValue() - - return nil -} - -func (c *ContainerID) ToGRPCMessage() grpc.Message { - var m *refs.ContainerID - - if c != nil { - m = new(refs.ContainerID) - - m.SetValue(c.val) - } - - return m -} - -func (c *ContainerID) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*refs.ContainerID) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - c.val = v.GetValue() - - return nil -} - -func ContainerIDsToGRPCMessage(ids []ContainerID) (res []refs.ContainerID) { - if ids != nil { - res = make([]refs.ContainerID, 0, len(ids)) - - for i := range ids { - res = append(res, *ids[i].ToGRPCMessage().(*refs.ContainerID)) - } - } - - return -} - -func ContainerIDsFromGRPCMessage(idsV2 []refs.ContainerID) (res []ContainerID, err error) { - if idsV2 != nil { - res = make([]ContainerID, len(idsV2)) - - for i := range idsV2 { - err = res[i].FromGRPCMessage(&idsV2[i]) - if err != nil { - return - } - } - } - - return -} - -func (o *ObjectID) ToGRPCMessage() grpc.Message { - var m *refs.ObjectID - - if o != nil { - m = new(refs.ObjectID) - - m.SetValue(o.val) - } - - return m -} - -func (o *ObjectID) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*refs.ObjectID) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - o.val = v.GetValue() - - return nil -} - -func ObjectIDListToGRPCMessage(ids []ObjectID) (res []refs.ObjectID) { - if ids != nil { - res = make([]refs.ObjectID, 0, len(ids)) - - for i := range ids { - res = append(res, *ids[i].ToGRPCMessage().(*refs.ObjectID)) - } - } - - return -} - -func ObjectIDListFromGRPCMessage(idsV2 []refs.ObjectID) (res []ObjectID, err error) { - if idsV2 != nil { - res = make([]ObjectID, len(idsV2)) - - for i := range idsV2 { - err = res[i].FromGRPCMessage(&idsV2[i]) - if err != nil { - return - } - } - } - - return -} - -func (a *Address) ToGRPCMessage() grpc.Message { - var m *refs.Address - - if a != nil { - m = new(refs.Address) - - m.SetContainerId(a.cid.ToGRPCMessage().(*refs.ContainerID)) - m.SetObjectId(a.oid.ToGRPCMessage().(*refs.ObjectID)) - } - - return m -} - -func (a *Address) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*refs.Address) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - cid := v.GetContainerId() - if cid == nil { - a.cid = nil - } else { - if a.cid == nil { - a.cid = new(ContainerID) - } - - err = a.cid.FromGRPCMessage(cid) - if err != nil { - return err - } - } - - oid := v.GetObjectId() - if oid == nil { - a.oid = nil - } else { - if a.oid == nil { - a.oid = new(ObjectID) - } - - err = a.oid.FromGRPCMessage(oid) - } - - return err -} - -func ChecksumTypeToGRPC(t ChecksumType) refs.ChecksumType { - return refs.ChecksumType(t) -} - -func ChecksumTypeFromGRPC(t refs.ChecksumType) ChecksumType { - return ChecksumType(t) -} - -func (c *Checksum) ToGRPCMessage() grpc.Message { - var m *refs.Checksum - - if c != nil { - m = new(refs.Checksum) - - m.SetType(ChecksumTypeToGRPC(c.typ)) - m.SetSum(c.sum) - } - - return m -} - -func (c *Checksum) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*refs.Checksum) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - c.typ = ChecksumTypeFromGRPC(v.GetType()) - c.sum = v.GetSum() - - return nil -} - -func (v *Version) ToGRPCMessage() grpc.Message { - var m *refs.Version - - if v != nil { - m = new(refs.Version) - - m.SetMajor(v.major) - m.SetMinor(v.minor) - } - - return m -} - -func (v *Version) FromGRPCMessage(m grpc.Message) error { - ver, ok := m.(*refs.Version) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - v.major = ver.GetMajor() - v.minor = ver.GetMinor() - - return nil -} - -func (s *Signature) ToGRPCMessage() grpc.Message { - var m *refs.Signature - - if s != nil { - m = new(refs.Signature) - - m.SetKey(s.key) - m.SetSign(s.sign) - m.SetScheme(refs.SignatureScheme(s.scheme)) - } - - return m -} - -func (s *Signature) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*refs.Signature) - if !ok { - return message.NewUnexpectedMessageType(m, s) - } - - s.key = v.GetKey() - s.sign = v.GetSign() - s.scheme = SignatureScheme(v.GetScheme()) - - return nil -} diff --git a/refs/grpc/types_frostfs.pb.go b/refs/grpc/types_frostfs.pb.go deleted file mode 100644 index f2a2663..0000000 --- a/refs/grpc/types_frostfs.pb.go +++ /dev/null @@ -1,1527 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package refs - -import ( - json "encoding/json" - fmt "fmt" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" - strconv "strconv" -) - -type SignatureScheme int32 - -const ( - SignatureScheme_ECDSA_SHA512 SignatureScheme = 0 - SignatureScheme_ECDSA_RFC6979_SHA256 SignatureScheme = 1 - SignatureScheme_ECDSA_RFC6979_SHA256_WALLET_CONNECT SignatureScheme = 2 -) - -var ( - SignatureScheme_name = map[int32]string{ - 0: "ECDSA_SHA512", - 1: "ECDSA_RFC6979_SHA256", - 2: "ECDSA_RFC6979_SHA256_WALLET_CONNECT", - } - SignatureScheme_value = map[string]int32{ - "ECDSA_SHA512": 0, - "ECDSA_RFC6979_SHA256": 1, - "ECDSA_RFC6979_SHA256_WALLET_CONNECT": 2, - } -) - -func (x SignatureScheme) String() string { - if v, ok := SignatureScheme_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *SignatureScheme) FromString(s string) bool { - if v, ok := SignatureScheme_value[s]; ok { - *x = SignatureScheme(v) - return true - } - return false -} - -type ChecksumType int32 - -const ( - ChecksumType_CHECKSUM_TYPE_UNSPECIFIED ChecksumType = 0 - ChecksumType_TZ ChecksumType = 1 - ChecksumType_SHA256 ChecksumType = 2 -) - -var ( - ChecksumType_name = map[int32]string{ - 0: "CHECKSUM_TYPE_UNSPECIFIED", - 1: "TZ", - 2: "SHA256", - } - ChecksumType_value = map[string]int32{ - "CHECKSUM_TYPE_UNSPECIFIED": 0, - "TZ": 1, - "SHA256": 2, - } -) - -func (x ChecksumType) String() string { - if v, ok := ChecksumType_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *ChecksumType) FromString(s string) bool { - if v, ok := ChecksumType_value[s]; ok { - *x = ChecksumType(v) - return true - } - return false -} - -type Address struct { - ContainerId *ContainerID `json:"containerID"` - ObjectId *ObjectID `json:"objectID"` -} - -var ( - _ encoding.ProtoMarshaler = (*Address)(nil) - _ encoding.ProtoUnmarshaler = (*Address)(nil) - _ json.Marshaler = (*Address)(nil) - _ json.Unmarshaler = (*Address)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Address) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.ContainerId) - size += proto.NestedStructureSize(2, x.ObjectId) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Address) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Address) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.ContainerId != nil { - x.ContainerId.EmitProtobuf(mm.AppendMessage(1)) - } - if x.ObjectId != nil { - x.ObjectId.EmitProtobuf(mm.AppendMessage(2)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Address) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Address") - } - switch fc.FieldNum { - case 1: // ContainerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ContainerId") - } - x.ContainerId = new(ContainerID) - if err := x.ContainerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // ObjectId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ObjectId") - } - x.ObjectId = new(ObjectID) - if err := x.ObjectId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *Address) GetContainerId() *ContainerID { - if x != nil { - return x.ContainerId - } - return nil -} -func (x *Address) SetContainerId(v *ContainerID) { - x.ContainerId = v -} -func (x *Address) GetObjectId() *ObjectID { - if x != nil { - return x.ObjectId - } - return nil -} -func (x *Address) SetObjectId(v *ObjectID) { - x.ObjectId = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Address) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Address) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"containerID\":" - out.RawString(prefix) - x.ContainerId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"objectID\":" - out.RawString(prefix) - x.ObjectId.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Address) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Address) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "containerID": - { - var f *ContainerID - f = new(ContainerID) - f.UnmarshalEasyJSON(in) - x.ContainerId = f - } - case "objectID": - { - var f *ObjectID - f = new(ObjectID) - f.UnmarshalEasyJSON(in) - x.ObjectId = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ObjectID struct { - Value []byte `json:"value"` -} - -var ( - _ encoding.ProtoMarshaler = (*ObjectID)(nil) - _ encoding.ProtoUnmarshaler = (*ObjectID)(nil) - _ json.Marshaler = (*ObjectID)(nil) - _ json.Unmarshaler = (*ObjectID)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ObjectID) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.BytesSize(1, x.Value) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ObjectID) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ObjectID) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Value) != 0 { - mm.AppendBytes(1, x.Value) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ObjectID) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ObjectID") - } - switch fc.FieldNum { - case 1: // Value - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - } - } - return nil -} -func (x *ObjectID) GetValue() []byte { - if x != nil { - return x.Value - } - return nil -} -func (x *ObjectID) SetValue(v []byte) { - x.Value = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ObjectID) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ObjectID) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - if x.Value != nil { - out.Base64Bytes(x.Value) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ObjectID) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ObjectID) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "value": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Value = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ContainerID struct { - Value []byte `json:"value"` -} - -var ( - _ encoding.ProtoMarshaler = (*ContainerID)(nil) - _ encoding.ProtoUnmarshaler = (*ContainerID)(nil) - _ json.Marshaler = (*ContainerID)(nil) - _ json.Unmarshaler = (*ContainerID)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ContainerID) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.BytesSize(1, x.Value) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ContainerID) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ContainerID) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Value) != 0 { - mm.AppendBytes(1, x.Value) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ContainerID) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ContainerID") - } - switch fc.FieldNum { - case 1: // Value - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - } - } - return nil -} -func (x *ContainerID) GetValue() []byte { - if x != nil { - return x.Value - } - return nil -} -func (x *ContainerID) SetValue(v []byte) { - x.Value = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ContainerID) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ContainerID) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - if x.Value != nil { - out.Base64Bytes(x.Value) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ContainerID) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ContainerID) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "value": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Value = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type OwnerID struct { - Value []byte `json:"value"` -} - -var ( - _ encoding.ProtoMarshaler = (*OwnerID)(nil) - _ encoding.ProtoUnmarshaler = (*OwnerID)(nil) - _ json.Marshaler = (*OwnerID)(nil) - _ json.Unmarshaler = (*OwnerID)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *OwnerID) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.BytesSize(1, x.Value) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *OwnerID) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *OwnerID) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Value) != 0 { - mm.AppendBytes(1, x.Value) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *OwnerID) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "OwnerID") - } - switch fc.FieldNum { - case 1: // Value - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - } - } - return nil -} -func (x *OwnerID) GetValue() []byte { - if x != nil { - return x.Value - } - return nil -} -func (x *OwnerID) SetValue(v []byte) { - x.Value = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *OwnerID) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *OwnerID) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - if x.Value != nil { - out.Base64Bytes(x.Value) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *OwnerID) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *OwnerID) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "value": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Value = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Version struct { - Major uint32 `json:"major"` - Minor uint32 `json:"minor"` -} - -var ( - _ encoding.ProtoMarshaler = (*Version)(nil) - _ encoding.ProtoUnmarshaler = (*Version)(nil) - _ json.Marshaler = (*Version)(nil) - _ json.Unmarshaler = (*Version)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Version) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.UInt32Size(1, x.Major) - size += proto.UInt32Size(2, x.Minor) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Version) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Version) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Major != 0 { - mm.AppendUint32(1, x.Major) - } - if x.Minor != 0 { - mm.AppendUint32(2, x.Minor) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Version) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Version") - } - switch fc.FieldNum { - case 1: // Major - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Major") - } - x.Major = data - case 2: // Minor - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Minor") - } - x.Minor = data - } - } - return nil -} -func (x *Version) GetMajor() uint32 { - if x != nil { - return x.Major - } - return 0 -} -func (x *Version) SetMajor(v uint32) { - x.Major = v -} -func (x *Version) GetMinor() uint32 { - if x != nil { - return x.Minor - } - return 0 -} -func (x *Version) SetMinor(v uint32) { - x.Minor = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Version) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Version) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"major\":" - out.RawString(prefix) - out.Uint32(x.Major) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"minor\":" - out.RawString(prefix) - out.Uint32(x.Minor) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Version) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Version) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "major": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Major = f - } - case "minor": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Minor = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Signature struct { - Key []byte `json:"key"` - Sign []byte `json:"signature"` - Scheme SignatureScheme `json:"scheme"` -} - -var ( - _ encoding.ProtoMarshaler = (*Signature)(nil) - _ encoding.ProtoUnmarshaler = (*Signature)(nil) - _ json.Marshaler = (*Signature)(nil) - _ json.Unmarshaler = (*Signature)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Signature) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.BytesSize(1, x.Key) - size += proto.BytesSize(2, x.Sign) - size += proto.EnumSize(3, int32(x.Scheme)) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Signature) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Signature) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Key) != 0 { - mm.AppendBytes(1, x.Key) - } - if len(x.Sign) != 0 { - mm.AppendBytes(2, x.Sign) - } - if int32(x.Scheme) != 0 { - mm.AppendInt32(3, int32(x.Scheme)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Signature) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Signature") - } - switch fc.FieldNum { - case 1: // Key - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Key") - } - x.Key = data - case 2: // Sign - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Sign") - } - x.Sign = data - case 3: // Scheme - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Scheme") - } - x.Scheme = SignatureScheme(data) - } - } - return nil -} -func (x *Signature) GetKey() []byte { - if x != nil { - return x.Key - } - return nil -} -func (x *Signature) SetKey(v []byte) { - x.Key = v -} -func (x *Signature) GetSign() []byte { - if x != nil { - return x.Sign - } - return nil -} -func (x *Signature) SetSign(v []byte) { - x.Sign = v -} -func (x *Signature) GetScheme() SignatureScheme { - if x != nil { - return x.Scheme - } - return 0 -} -func (x *Signature) SetScheme(v SignatureScheme) { - x.Scheme = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Signature) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Signature) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"key\":" - out.RawString(prefix) - if x.Key != nil { - out.Base64Bytes(x.Key) - } else { - out.String("") - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"signature\":" - out.RawString(prefix) - if x.Sign != nil { - out.Base64Bytes(x.Sign) - } else { - out.String("") - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"scheme\":" - out.RawString(prefix) - v := int32(x.Scheme) - if vv, ok := SignatureScheme_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Signature) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Signature) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "key": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Key = f - } - case "signature": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Sign = f - } - case "scheme": - { - var f SignatureScheme - var parsedValue SignatureScheme - switch v := in.Interface().(type) { - case string: - if vv, ok := SignatureScheme_value[v]; ok { - parsedValue = SignatureScheme(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = SignatureScheme(vv) - case float64: - parsedValue = SignatureScheme(v) - } - f = parsedValue - x.Scheme = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type SignatureRFC6979 struct { - Key []byte `json:"key"` - Sign []byte `json:"signature"` -} - -var ( - _ encoding.ProtoMarshaler = (*SignatureRFC6979)(nil) - _ encoding.ProtoUnmarshaler = (*SignatureRFC6979)(nil) - _ json.Marshaler = (*SignatureRFC6979)(nil) - _ json.Unmarshaler = (*SignatureRFC6979)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *SignatureRFC6979) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.BytesSize(1, x.Key) - size += proto.BytesSize(2, x.Sign) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *SignatureRFC6979) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *SignatureRFC6979) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Key) != 0 { - mm.AppendBytes(1, x.Key) - } - if len(x.Sign) != 0 { - mm.AppendBytes(2, x.Sign) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *SignatureRFC6979) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "SignatureRFC6979") - } - switch fc.FieldNum { - case 1: // Key - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Key") - } - x.Key = data - case 2: // Sign - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Sign") - } - x.Sign = data - } - } - return nil -} -func (x *SignatureRFC6979) GetKey() []byte { - if x != nil { - return x.Key - } - return nil -} -func (x *SignatureRFC6979) SetKey(v []byte) { - x.Key = v -} -func (x *SignatureRFC6979) GetSign() []byte { - if x != nil { - return x.Sign - } - return nil -} -func (x *SignatureRFC6979) SetSign(v []byte) { - x.Sign = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *SignatureRFC6979) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *SignatureRFC6979) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"key\":" - out.RawString(prefix) - if x.Key != nil { - out.Base64Bytes(x.Key) - } else { - out.String("") - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"signature\":" - out.RawString(prefix) - if x.Sign != nil { - out.Base64Bytes(x.Sign) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *SignatureRFC6979) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *SignatureRFC6979) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "key": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Key = f - } - case "signature": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Sign = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Checksum struct { - Type ChecksumType `json:"type"` - Sum []byte `json:"sum"` -} - -var ( - _ encoding.ProtoMarshaler = (*Checksum)(nil) - _ encoding.ProtoUnmarshaler = (*Checksum)(nil) - _ json.Marshaler = (*Checksum)(nil) - _ json.Unmarshaler = (*Checksum)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Checksum) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.EnumSize(1, int32(x.Type)) - size += proto.BytesSize(2, x.Sum) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Checksum) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Checksum) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if int32(x.Type) != 0 { - mm.AppendInt32(1, int32(x.Type)) - } - if len(x.Sum) != 0 { - mm.AppendBytes(2, x.Sum) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Checksum) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Checksum") - } - switch fc.FieldNum { - case 1: // Type - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Type") - } - x.Type = ChecksumType(data) - case 2: // Sum - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Sum") - } - x.Sum = data - } - } - return nil -} -func (x *Checksum) GetType() ChecksumType { - if x != nil { - return x.Type - } - return 0 -} -func (x *Checksum) SetType(v ChecksumType) { - x.Type = v -} -func (x *Checksum) GetSum() []byte { - if x != nil { - return x.Sum - } - return nil -} -func (x *Checksum) SetSum(v []byte) { - x.Sum = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Checksum) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Checksum) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"type\":" - out.RawString(prefix) - v := int32(x.Type) - if vv, ok := ChecksumType_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"sum\":" - out.RawString(prefix) - if x.Sum != nil { - out.Base64Bytes(x.Sum) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Checksum) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Checksum) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "type": - { - var f ChecksumType - var parsedValue ChecksumType - switch v := in.Interface().(type) { - case string: - if vv, ok := ChecksumType_value[v]; ok { - parsedValue = ChecksumType(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = ChecksumType(vv) - case float64: - parsedValue = ChecksumType(v) - } - f = parsedValue - x.Type = f - } - case "sum": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Sum = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/refs/grpc/types_frostfs_fuzz.go b/refs/grpc/types_frostfs_fuzz.go deleted file mode 100644 index a64a9bf..0000000 --- a/refs/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,159 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package refs - -func DoFuzzProtoAddress(data []byte) int { - msg := new(Address) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONAddress(data []byte) int { - msg := new(Address) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoObjectID(data []byte) int { - msg := new(ObjectID) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONObjectID(data []byte) int { - msg := new(ObjectID) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoContainerID(data []byte) int { - msg := new(ContainerID) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONContainerID(data []byte) int { - msg := new(ContainerID) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoOwnerID(data []byte) int { - msg := new(OwnerID) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONOwnerID(data []byte) int { - msg := new(OwnerID) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoVersion(data []byte) int { - msg := new(Version) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONVersion(data []byte) int { - msg := new(Version) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoSignature(data []byte) int { - msg := new(Signature) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONSignature(data []byte) int { - msg := new(Signature) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoSignatureRFC6979(data []byte) int { - msg := new(SignatureRFC6979) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONSignatureRFC6979(data []byte) int { - msg := new(SignatureRFC6979) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoChecksum(data []byte) int { - msg := new(Checksum) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONChecksum(data []byte) int { - msg := new(Checksum) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/refs/grpc/types_frostfs_test.go b/refs/grpc/types_frostfs_test.go deleted file mode 100644 index 9b19892..0000000 --- a/refs/grpc/types_frostfs_test.go +++ /dev/null @@ -1,91 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package refs - -import ( - testing "testing" -) - -func FuzzProtoAddress(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoAddress(data) - }) -} -func FuzzJSONAddress(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONAddress(data) - }) -} -func FuzzProtoObjectID(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoObjectID(data) - }) -} -func FuzzJSONObjectID(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONObjectID(data) - }) -} -func FuzzProtoContainerID(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoContainerID(data) - }) -} -func FuzzJSONContainerID(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONContainerID(data) - }) -} -func FuzzProtoOwnerID(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoOwnerID(data) - }) -} -func FuzzJSONOwnerID(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONOwnerID(data) - }) -} -func FuzzProtoVersion(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoVersion(data) - }) -} -func FuzzJSONVersion(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONVersion(data) - }) -} -func FuzzProtoSignature(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoSignature(data) - }) -} -func FuzzJSONSignature(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONSignature(data) - }) -} -func FuzzProtoSignatureRFC6979(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoSignatureRFC6979(data) - }) -} -func FuzzJSONSignatureRFC6979(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONSignatureRFC6979(data) - }) -} -func FuzzProtoChecksum(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoChecksum(data) - }) -} -func FuzzJSONChecksum(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONChecksum(data) - }) -} diff --git a/refs/json.go b/refs/json.go deleted file mode 100644 index 529723a..0000000 --- a/refs/json.go +++ /dev/null @@ -1,62 +0,0 @@ -package refs - -import ( - refs "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -func (a *Address) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(a) -} - -func (a *Address) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(a, data, new(refs.Address)) -} - -func (o *ObjectID) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(o) -} - -func (o *ObjectID) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(o, data, new(refs.ObjectID)) -} - -func (c *ContainerID) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(c) -} - -func (c *ContainerID) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(c, data, new(refs.ContainerID)) -} - -func (o *OwnerID) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(o) -} - -func (o *OwnerID) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(o, data, new(refs.OwnerID)) -} - -func (v *Version) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(v) -} - -func (v *Version) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(v, data, new(refs.Version)) -} - -func (s *Signature) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(s) -} - -func (s *Signature) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(s, data, new(refs.Signature)) -} - -func (c *Checksum) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(c) -} - -func (c *Checksum) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(c, data, new(refs.Checksum)) -} diff --git a/refs/marshal.go b/refs/marshal.go deleted file mode 100644 index ef197b3..0000000 --- a/refs/marshal.go +++ /dev/null @@ -1,264 +0,0 @@ -package refs - -import ( - "encoding/binary" - - refs "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - "google.golang.org/protobuf/encoding/protowire" -) - -const ( - ownerIDValField = 1 - - containerIDValField = 1 - - objectIDValField = 1 - - addressContainerField = 1 - addressObjectField = 2 - - checksumTypeField = 1 - checksumValueField = 2 - - signatureKeyField = 1 - signatureValueField = 2 - signatureSchemeField = 3 - - versionMajorField = 1 - versionMinorField = 2 -) - -func (o *OwnerID) StableMarshal(buf []byte) []byte { - if o == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, o.StableSize()) - } - - proto.BytesMarshal(ownerIDValField, buf, o.val) - - return buf -} - -func (o *OwnerID) StableSize() int { - if o == nil { - return 0 - } - - return proto.BytesSize(ownerIDValField, o.val) -} - -func (o *OwnerID) Unmarshal(data []byte) error { - return message.Unmarshal(o, data, new(refs.OwnerID)) -} - -func (c *ContainerID) StableMarshal(buf []byte) []byte { - if c == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, c.StableSize()) - } - - proto.BytesMarshal(containerIDValField, buf, c.val) - - return buf -} - -func (c *ContainerID) StableSize() int { - if c == nil { - return 0 - } - - return proto.BytesSize(containerIDValField, c.val) -} - -func (c *ContainerID) Unmarshal(data []byte) error { - return message.Unmarshal(c, data, new(refs.ContainerID)) -} - -func (o *ObjectID) StableMarshal(buf []byte) []byte { - if o == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, o.StableSize()) - } - - proto.BytesMarshal(objectIDValField, buf, o.val) - - return buf -} - -// ObjectIDNestedListSize returns byte length of nested -// repeated ObjectID field with fNum number. -func ObjectIDNestedListSize(fNum int64, ids []ObjectID) (sz int) { - for i := range ids { - sz += proto.NestedStructureSize(fNum, &ids[i]) - } - - return -} - -func (o *ObjectID) StableSize() int { - if o == nil { - return 0 - } - - return proto.BytesSize(objectIDValField, o.val) -} - -// ObjectIDNestedListMarshal writes protobuf repeated ObjectID field -// with fNum number to buf. -func ObjectIDNestedListMarshal(fNum int64, buf []byte, ids []ObjectID) (off int) { - prefix := protowire.EncodeTag(protowire.Number(fNum), protowire.BytesType) - for i := range ids { - off += binary.PutUvarint(buf[off:], prefix) - - n := ids[i].StableSize() - off += binary.PutUvarint(buf[off:], uint64(n)) - off += proto.BytesMarshal(objectIDValField, buf[off:], ids[i].val) - } - - return -} - -func (o *ObjectID) Unmarshal(data []byte) error { - return message.Unmarshal(o, data, new(refs.ObjectID)) -} - -func (a *Address) StableMarshal(buf []byte) []byte { - if a == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, a.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(addressContainerField, buf[offset:], a.cid) - proto.NestedStructureMarshal(addressObjectField, buf[offset:], a.oid) - - return buf -} - -func (a *Address) StableSize() (size int) { - if a == nil { - return 0 - } - - size += proto.NestedStructureSize(addressContainerField, a.cid) - size += proto.NestedStructureSize(addressObjectField, a.oid) - - return size -} - -func (a *Address) Unmarshal(data []byte) error { - return message.Unmarshal(a, data, new(refs.Address)) -} - -func (c *Checksum) StableMarshal(buf []byte) []byte { - if c == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, c.StableSize()) - } - - var offset int - - offset += proto.EnumMarshal(checksumTypeField, buf[offset:], int32(c.typ)) - proto.BytesMarshal(checksumValueField, buf[offset:], c.sum) - - return buf -} - -func (c *Checksum) StableSize() (size int) { - if c == nil { - return 0 - } - - size += proto.EnumSize(checksumTypeField, int32(c.typ)) - size += proto.BytesSize(checksumValueField, c.sum) - - return size -} - -func (c *Checksum) Unmarshal(data []byte) error { - return message.Unmarshal(c, data, new(refs.Checksum)) -} - -func (s *Signature) StableMarshal(buf []byte) []byte { - if s == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, s.StableSize()) - } - - var offset int - - offset += proto.BytesMarshal(signatureKeyField, buf[offset:], s.key) - offset += proto.BytesMarshal(signatureValueField, buf[offset:], s.sign) - proto.EnumMarshal(signatureSchemeField, buf[offset:], int32(s.scheme)) - - return buf -} - -func (s *Signature) StableSize() (size int) { - if s == nil { - return 0 - } - - size += proto.BytesSize(signatureKeyField, s.key) - size += proto.BytesSize(signatureValueField, s.sign) - size += proto.EnumSize(signatureSchemeField, int32(s.scheme)) - - return size -} - -func (s *Signature) Unmarshal(data []byte) error { - return message.Unmarshal(s, data, new(refs.Signature)) -} - -func (v *Version) StableMarshal(buf []byte) []byte { - if v == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, v.StableSize()) - } - - var offset int - - offset += proto.UInt32Marshal(versionMajorField, buf[offset:], v.major) - proto.UInt32Marshal(versionMinorField, buf[offset:], v.minor) - - return buf -} - -func (v *Version) StableSize() (size int) { - if v == nil { - return 0 - } - - size += proto.UInt32Size(versionMajorField, v.major) - size += proto.UInt32Size(versionMinorField, v.minor) - - return size -} - -func (v *Version) Unmarshal(data []byte) error { - return message.Unmarshal(v, data, new(refs.Version)) -} diff --git a/refs/message_test.go b/refs/message_test.go deleted file mode 100644 index 69f2242..0000000 --- a/refs/message_test.go +++ /dev/null @@ -1,21 +0,0 @@ -package refs_test - -import ( - "testing" - - refstest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/test" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - messagetest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message/test" -) - -func TestMessageConvert(t *testing.T) { - messagetest.TestRPCMessage(t, - func(empty bool) message.Message { return refstest.GenerateOwnerID(empty) }, - func(empty bool) message.Message { return refstest.GenerateObjectID(empty) }, - func(empty bool) message.Message { return refstest.GenerateContainerID(empty) }, - func(empty bool) message.Message { return refstest.GenerateAddress(empty) }, - func(empty bool) message.Message { return refstest.GenerateChecksum(empty) }, - func(empty bool) message.Message { return refstest.GenerateSignature(empty) }, - func(empty bool) message.Message { return refstest.GenerateVersion(empty) }, - ) -} diff --git a/refs/string.go b/refs/string.go deleted file mode 100644 index 5389aa3..0000000 --- a/refs/string.go +++ /dev/null @@ -1,47 +0,0 @@ -package refs - -import ( - refs "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" -) - -// String returns string representation of ChecksumType. -func (t ChecksumType) String() string { - return ChecksumTypeToGRPC(t).String() -} - -// FromString parses ChecksumType from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (t *ChecksumType) FromString(s string) bool { - var g refs.ChecksumType - - ok := g.FromString(s) - - if ok { - *t = ChecksumTypeFromGRPC(g) - } - - return ok -} - -// String returns string representation of SignatureScheme. -func (t SignatureScheme) String() string { - return refs.SignatureScheme(t).String() -} - -// FromString parses SignatureScheme from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (t *SignatureScheme) FromString(s string) bool { - var g refs.SignatureScheme - - ok := g.FromString(s) - - if ok { - *t = SignatureScheme(g) - } - - return ok -} diff --git a/refs/test/generate.go b/refs/test/generate.go deleted file mode 100644 index 49619ef..0000000 --- a/refs/test/generate.go +++ /dev/null @@ -1,127 +0,0 @@ -package refstest - -import ( - crand "crypto/rand" - "crypto/sha256" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" -) - -func GenerateVersion(empty bool) *refs.Version { - m := new(refs.Version) - - if !empty { - m.SetMajor(2) - m.SetMinor(1) - } - - return m -} - -func GenerateOwnerID(empty bool) *refs.OwnerID { - m := new(refs.OwnerID) - - if !empty { - id := make([]byte, 25) - _, _ = crand.Read(id) - - m.SetValue(id) - } - - return m -} - -func GenerateAddress(empty bool) *refs.Address { - m := new(refs.Address) - - if !empty { - m.SetObjectID(GenerateObjectID(false)) - m.SetContainerID(GenerateContainerID(false)) - } - - return m -} - -func GenerateObjectID(empty bool) *refs.ObjectID { - m := new(refs.ObjectID) - - if !empty { - id := make([]byte, sha256.Size) - _, _ = crand.Read(id) - - m.SetValue(id) - } - - return m -} - -func GenerateObjectIDs(empty bool) []refs.ObjectID { - var ids []refs.ObjectID - - if !empty { - ids = append(ids, - *GenerateObjectID(false), - *GenerateObjectID(false), - ) - } - - return ids -} - -func GenerateContainerID(empty bool) *refs.ContainerID { - m := new(refs.ContainerID) - - if !empty { - id := make([]byte, sha256.Size) - _, _ = crand.Read(id) - - m.SetValue(id) - } - - return m -} - -func GenerateContainerIDs(empty bool) []refs.ContainerID { - var res []refs.ContainerID - - if !empty { - res = append(res, - *GenerateContainerID(false), - *GenerateContainerID(false), - ) - } - - return res -} - -func GenerateSignature(empty bool) *refs.Signature { - m := new(refs.Signature) - - if !empty { - key := make([]byte, 33) - _, _ = crand.Read(key) - - sign := make([]byte, 65) - _, _ = crand.Read(sign) - - m.SetScheme(refs.ECDSA_SHA512) - m.SetKey(key) - m.SetSign(sign) - } - - return m -} - -func GenerateChecksum(empty bool) *refs.Checksum { - m := new(refs.Checksum) - - if !empty { - cs := make([]byte, sha256.Size) - _, _ = crand.Read(cs) - - m.SetType(refs.SHA256) - m.SetSum(cs) - } - - return m -} diff --git a/refs/types.go b/refs/types.go deleted file mode 100644 index d8f0d9b..0000000 --- a/refs/types.go +++ /dev/null @@ -1,194 +0,0 @@ -package refs - -type OwnerID struct { - val []byte -} - -type ContainerID struct { - val []byte -} - -type ObjectID struct { - val []byte -} - -type Address struct { - cid *ContainerID - - oid *ObjectID -} - -type Checksum struct { - typ ChecksumType - - sum []byte -} - -type ChecksumType uint32 - -type SignatureScheme uint32 - -//nolint:revive -const ( - ECDSA_SHA512 SignatureScheme = iota - ECDSA_RFC6979_SHA256 - ECDSA_RFC6979_SHA256_WALLET_CONNECT -) - -type Signature struct { - key, sign []byte - scheme SignatureScheme -} - -type Version struct { - major, minor uint32 -} - -const ( - UnknownChecksum ChecksumType = iota - TillichZemor - SHA256 -) - -func (o *OwnerID) GetValue() []byte { - if o != nil { - return o.val - } - - return nil -} - -func (o *OwnerID) SetValue(v []byte) { - o.val = v -} - -func (c *ContainerID) GetValue() []byte { - if c != nil { - return c.val - } - - return nil -} - -func (c *ContainerID) SetValue(v []byte) { - c.val = v -} - -func (o *ObjectID) GetValue() []byte { - if o != nil { - return o.val - } - - return nil -} - -func (o *ObjectID) SetValue(v []byte) { - o.val = v -} - -func (a *Address) GetContainerID() *ContainerID { - if a != nil { - return a.cid - } - - return nil -} - -func (a *Address) SetContainerID(v *ContainerID) { - a.cid = v -} - -func (a *Address) GetObjectID() *ObjectID { - if a != nil { - return a.oid - } - - return nil -} - -func (a *Address) SetObjectID(v *ObjectID) { - a.oid = v -} - -func (c *Checksum) GetType() ChecksumType { - if c != nil { - return c.typ - } - - return UnknownChecksum -} - -func (c *Checksum) SetType(v ChecksumType) { - c.typ = v -} - -func (c *Checksum) GetSum() []byte { - if c != nil { - return c.sum - } - - return nil -} - -func (c *Checksum) SetSum(v []byte) { - c.sum = v -} - -func (s *Signature) GetKey() []byte { - if s != nil { - return s.key - } - - return nil -} - -func (s *Signature) SetKey(v []byte) { - s.key = v -} - -func (s *Signature) GetSign() []byte { - if s != nil { - return s.sign - } - - return nil -} - -func (s *Signature) SetSign(v []byte) { - s.sign = v -} - -func (s *Signature) GetScheme() SignatureScheme { - if s != nil { - return s.scheme - } - return 0 -} - -func (s *Signature) SetScheme(scheme SignatureScheme) { - s.scheme = scheme -} - -func (v *Version) GetMajor() uint32 { - if v != nil { - return v.major - } - - return 0 -} - -func (v *Version) SetMajor(val uint32) { - v.major = val -} - -func (v *Version) GetMinor() uint32 { - if v != nil { - return v.minor - } - - return 0 -} - -func (v *Version) SetMinor(val uint32) { - v.minor = val -} diff --git a/rpc/accounting.go b/rpc/accounting.go deleted file mode 100644 index 4f324c9..0000000 --- a/rpc/accounting.go +++ /dev/null @@ -1,29 +0,0 @@ -package rpc - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/accounting" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/client" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/common" -) - -const serviceAccounting = serviceNamePrefix + "accounting.AccountingService" - -const ( - rpcAccountingBalance = "Balance" -) - -// Balance executes AccountingService.Balance RPC. -func Balance( - cli *client.Client, - req *accounting.BalanceRequest, - opts ...client.CallOption, -) (*accounting.BalanceResponse, error) { - resp := new(accounting.BalanceResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceAccounting, rpcAccountingBalance), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} diff --git a/rpc/apemanager.go b/rpc/apemanager.go deleted file mode 100644 index 2a89c85..0000000 --- a/rpc/apemanager.go +++ /dev/null @@ -1,60 +0,0 @@ -package rpc - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/apemanager" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/client" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/common" -) - -const serviceAPEManager = frostfsServiceNamePrefix + "apemanager.APEManagerService" - -const ( - rpcAPEManagerAddChain = "AddChain" - rpcAPEManagerRemoveChain = "RemoveChain" - rpcAPEManagerListChains = "ListChains" -) - -func AddChain( - cli *client.Client, - req *apemanager.AddChainRequest, - opts ...client.CallOption, -) (*apemanager.AddChainResponse, error) { - resp := new(apemanager.AddChainResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceAPEManager, rpcAPEManagerAddChain), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} - -func RemoveChain( - cli *client.Client, - req *apemanager.RemoveChainRequest, - opts ...client.CallOption, -) (*apemanager.RemoveChainResponse, error) { - resp := new(apemanager.RemoveChainResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceAPEManager, rpcAPEManagerRemoveChain), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} - -func ListChains( - cli *client.Client, - req *apemanager.ListChainsRequest, - opts ...client.CallOption, -) (*apemanager.ListChainsResponse, error) { - resp := new(apemanager.ListChainsResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceAPEManager, rpcAPEManagerListChains), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} diff --git a/rpc/client/call_options.go b/rpc/client/call_options.go deleted file mode 100644 index 4fe8791..0000000 --- a/rpc/client/call_options.go +++ /dev/null @@ -1,40 +0,0 @@ -package client - -import ( - "context" - - "google.golang.org/grpc" -) - -// CallOption is a messaging session option within Protobuf RPC. -type CallOption func(*callParameters) - -type callParameters struct { - ctx context.Context // nolint:containedctx - dialer func(context.Context, grpc.ClientConnInterface) error -} - -func defaultCallParameters() *callParameters { - return &callParameters{ - ctx: context.Background(), - } -} - -// WithContext returns option to specify call context. If provided, all network -// communications will be based on this context. Otherwise, context.Background() -// is used. -// -// Context SHOULD NOT be nil. -func WithContext(ctx context.Context) CallOption { - return func(prm *callParameters) { - prm.ctx = ctx - } -} - -// WithDialer returns option to specify grpc dialer. If passed, it will be -// called after the connection is successfully created. -func WithDialer(dialer func(context.Context, grpc.ClientConnInterface) error) CallOption { - return func(prm *callParameters) { - prm.dialer = dialer - } -} diff --git a/rpc/client/client.go b/rpc/client/client.go deleted file mode 100644 index d9ce2fc..0000000 --- a/rpc/client/client.go +++ /dev/null @@ -1,30 +0,0 @@ -package client - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - "google.golang.org/grpc" - "google.golang.org/grpc/credentials" -) - -// Client represents client for exchanging messages -// with a remote server using Protobuf RPC. -type Client struct { - cfg -} - -// New creates, configures via options and returns new Client instance. -func New(opts ...Option) *Client { - var c Client - c.initDefault() - - for _, opt := range opts { - opt(&c.cfg) - } - - c.grpcDialOpts = append(c.grpcDialOpts, grpc.WithDefaultCallOptions(grpc.ForceCodec(encoding.ProtoCodec{}))) - if c.tlsCfg != nil { - c.grpcDialOpts = append(c.grpcDialOpts, grpc.WithTransportCredentials(credentials.NewTLS(c.tlsCfg))) - } - - return &c -} diff --git a/rpc/client/conn.go b/rpc/client/conn.go deleted file mode 100644 index f208413..0000000 --- a/rpc/client/conn.go +++ /dev/null @@ -1,24 +0,0 @@ -package client - -import ( - "io" - - "google.golang.org/grpc" -) - -// Conn is an interface for grpc client connection. -type Conn interface { - grpc.ClientConnInterface - io.Closer -} - -// Conn returns underlying connection. -// -// Returns non-nil result after the first Init() call -// completed without a connection error. -// -// Client should not be used after Close() call -// on the connection: behavior is undefined. -func (c *Client) Conn() io.Closer { - return c.conn -} diff --git a/rpc/client/connect.go b/rpc/client/connect.go deleted file mode 100644 index e22e0a6..0000000 --- a/rpc/client/connect.go +++ /dev/null @@ -1,72 +0,0 @@ -package client - -import ( - "context" - "errors" - "fmt" - "net" - "net/url" - - grpcstd "google.golang.org/grpc" -) - -var errInvalidEndpoint = errors.New("invalid endpoint options") - -func (c *Client) openGRPCConn(ctx context.Context, dialer func(ctx context.Context, cc grpcstd.ClientConnInterface) error) error { - if c.conn != nil { - return nil - } - - if c.addr == "" { - return errInvalidEndpoint - } - - var err error - - c.conn, err = grpcstd.NewClient(c.addr, c.grpcDialOpts...) - if err != nil { - return fmt.Errorf("gRPC new client: %w", err) - } - - if dialer != nil { - ctx, cancel := context.WithTimeout(ctx, c.dialTimeout) - defer cancel() - - if err := dialer(ctx, c.conn); err != nil { - _ = c.conn.Close() - return fmt.Errorf("gRPC dial: %w", err) - } - } - - return nil -} - -// ParseURI parses s as address and returns a host and a flag -// indicating that TLS is enabled. If multi-address is provided -// the argument is returned unchanged. -func ParseURI(s string) (string, bool, error) { - uri, err := url.ParseRequestURI(s) - if err != nil { - return s, false, nil - } - - // check if passed string was parsed correctly - // URIs that do not start with a slash after the scheme are interpreted as: - // `scheme:opaque` => if `opaque` is not empty, then it is supposed that URI - // is in `host:port` format - if uri.Host == "" { - uri.Host = uri.Scheme - uri.Scheme = grpcScheme // assume GRPC by default - if uri.Opaque != "" { - uri.Host = net.JoinHostPort(uri.Host, uri.Opaque) - } - } - - switch uri.Scheme { - case grpcTLSScheme, grpcScheme: - default: - return "", false, fmt.Errorf("unsupported scheme: %s", uri.Scheme) - } - - return uri.Host, uri.Scheme == grpcTLSScheme, nil -} diff --git a/rpc/client/flows.go b/rpc/client/flows.go deleted file mode 100644 index a3da1e2..0000000 --- a/rpc/client/flows.go +++ /dev/null @@ -1,124 +0,0 @@ -package client - -import ( - "errors" - "io" - "sync" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/common" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -// SendUnary initializes communication session by RPC info, performs unary RPC -// and closes the session. -func SendUnary(cli *Client, info common.CallMethodInfo, req, resp message.Message, opts ...CallOption) error { - rw, err := cli.Init(info, opts...) - if err != nil { - return err - } - - err = rw.WriteMessage(req) - if err != nil { - return err - } - - err = rw.ReadMessage(resp) - if err != nil { - return err - } - - return rw.Close() -} - -// MessageWriterCloser wraps MessageWriter -// and io.Closer interfaces. -type MessageWriterCloser interface { - MessageWriter - io.Closer -} - -type clientStreamWriterCloser struct { - MessageReadWriter - - resp message.Message -} - -func (c *clientStreamWriterCloser) Close() error { - err := c.MessageReadWriter.Close() - if err != nil { - return err - } - - return c.ReadMessage(c.resp) -} - -// OpenClientStream initializes communication session by RPC info, opens client-side stream -// and returns its interface. -// -// All stream writes must be performed before the closing. Close must be called once. -func OpenClientStream(cli *Client, info common.CallMethodInfo, resp message.Message, opts ...CallOption) (MessageWriterCloser, error) { - rw, err := cli.Init(info, opts...) - if err != nil { - return nil, err - } - - return &clientStreamWriterCloser{ - MessageReadWriter: rw, - resp: resp, - }, nil -} - -// MessageReaderCloser wraps MessageReader -// and io.Closer interface. -type MessageReaderCloser interface { - MessageReader - io.Closer -} - -type serverStreamReaderCloser struct { - rw MessageReadWriter - - once sync.Once - - req message.Message -} - -func (s *serverStreamReaderCloser) ReadMessage(msg message.Message) error { - var err error - - s.once.Do(func() { - err = s.rw.WriteMessage(s.req) - }) - - if err != nil { - return err - } - - err = s.rw.ReadMessage(msg) - if !errors.Is(err, io.EOF) { - return err - } - - err = s.rw.Close() - if err != nil { - return err - } - - return io.EOF -} - -// OpenServerStream initializes communication session by RPC info, opens server-side stream -// and returns its interface. -// -// All stream reads must be performed before the closing. Close must be called once. -func OpenServerStream(cli *Client, info common.CallMethodInfo, req message.Message, opts ...CallOption) (MessageReader, error) { - rw, err := cli.Init(info, opts...) - if err != nil { - return nil, err - } - - return &serverStreamReaderCloser{ - rw: rw, - req: req, - }, nil -} diff --git a/rpc/client/init.go b/rpc/client/init.go deleted file mode 100644 index be8d066..0000000 --- a/rpc/client/init.go +++ /dev/null @@ -1,69 +0,0 @@ -package client - -import ( - "context" - "io" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/common" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - "google.golang.org/grpc" -) - -// MessageReader is an interface of the Message reader. -type MessageReader interface { - // ReadMessage reads the next Message. - // - // Returns io.EOF if there are no more messages to read. - // ReadMessage should not be called after io.EOF occasion. - ReadMessage(message.Message) error -} - -// MessageWriter is an interface of the Message writer. -type MessageWriter interface { - // WriteMessage writers the next Message. - // - // WriteMessage should not be called after any error. - WriteMessage(message.Message) error -} - -// MessageReadWriter is a component interface -// for transmitting raw Protobuf messages. -type MessageReadWriter interface { - MessageReader - MessageWriter - - // Closes the communication session. - // - // All calls to send/receive messages must be done before closing. - io.Closer -} - -// Init initiates a messaging session and returns the interface for message transmitting. -func (c *Client) Init(info common.CallMethodInfo, opts ...CallOption) (MessageReadWriter, error) { - prm := defaultCallParameters() - - for _, opt := range opts { - opt(prm) - } - - if err := c.openGRPCConn(prm.ctx, prm.dialer); err != nil { - return nil, err - } - - ctx, cancel := context.WithCancel(prm.ctx) - stream, err := c.conn.NewStream(ctx, &grpc.StreamDesc{ - StreamName: info.Name, - ServerStreams: info.ServerStream(), - ClientStreams: info.ClientStream(), - }, toMethodName(info)) - if err != nil { - cancel() - return nil, err - } - - return &streamWrapper{ - ClientStream: stream, - cancel: cancel, - timeout: c.rwTimeout, - }, nil -} diff --git a/rpc/client/options.go b/rpc/client/options.go deleted file mode 100644 index 5711cd4..0000000 --- a/rpc/client/options.go +++ /dev/null @@ -1,129 +0,0 @@ -package client - -import ( - "crypto/tls" - "time" - - "google.golang.org/grpc" - "google.golang.org/grpc/credentials/insecure" -) - -const ( - grpcScheme = "grpc" - grpcTLSScheme = "grpcs" -) - -// Option is a Client's option. -type Option func(*cfg) - -type cfg struct { - addr string - - dialTimeout time.Duration - rwTimeout time.Duration - - tlsCfg *tls.Config - grpcDialOpts []grpc.DialOption - - conn Conn -} - -const ( - defaultDialTimeout = 5 * time.Second - defaultRWTimeout = 1 * time.Minute -) - -func (c *cfg) initDefault() { - c.dialTimeout = defaultDialTimeout - c.rwTimeout = defaultRWTimeout - c.grpcDialOpts = []grpc.DialOption{ - grpc.WithTransportCredentials(insecure.NewCredentials()), - } -} - -// WithNetworkAddress returns option to specify -// network address of the remote server. -// -// Ignored if WithGRPCConn is provided. -func WithNetworkAddress(v string) Option { - return func(c *cfg) { - if v != "" { - c.addr = v - } - } -} - -// WithNetworkURIAddress combines WithNetworkAddress and WithTLSCfg options -// based on arguments. -// -// Do not use along with WithNetworkAddress and WithTLSCfg. -// -// Ignored if WithGRPCConn is provided. -func WithNetworkURIAddress(addr string, tlsCfg *tls.Config) []Option { - host, isTLS, err := ParseURI(addr) - if err != nil { - return nil - } - - opts := make([]Option, 2) - opts[0] = WithNetworkAddress(host) - if isTLS { - if tlsCfg == nil { - tlsCfg = &tls.Config{} - } - opts[1] = WithTLSCfg(tlsCfg) - } else { - opts[1] = WithTLSCfg(nil) - } - - return opts -} - -// WithDialTimeout returns option to specify -// dial timeout of the remote server connection. -// -// Ignored if WithGRPCConn is provided. -func WithDialTimeout(v time.Duration) Option { - return func(c *cfg) { - if v > 0 { - c.dialTimeout = v - } - } -} - -// WithRWTimeout returns option to specify timeout -// for reading and writing single gRPC message. -func WithRWTimeout(v time.Duration) Option { - return func(c *cfg) { - if v > 0 { - c.rwTimeout = v - } - } -} - -// WithTLSCfg returns option to specify -// TLS configuration. -// -// Ignored if WithGRPCConn is provided. -func WithTLSCfg(v *tls.Config) Option { - return func(c *cfg) { - c.tlsCfg = v - } -} - -// WithGRPCConn returns option to specify -// gRPC virtual connection. -func WithGRPCConn(v Conn) Option { - return func(c *cfg) { - if v != nil { - c.conn = v - } - } -} - -// WithGRPCDialOptions returns an option to specify grpc.DialOption. -func WithGRPCDialOptions(opts []grpc.DialOption) Option { - return func(c *cfg) { - c.grpcDialOpts = append(c.grpcDialOpts, opts...) - } -} diff --git a/rpc/client/options_test.go b/rpc/client/options_test.go deleted file mode 100644 index 56704b6..0000000 --- a/rpc/client/options_test.go +++ /dev/null @@ -1,197 +0,0 @@ -package client - -import ( - "crypto/tls" - "testing" - - "github.com/stretchr/testify/require" -) - -func TestWithNetworkURIAddress(t *testing.T) { - hostPort := "frostfs.example.com:8080" - apiPort := "127.0.0.1:8080" - serverName := "testServer" - - testCases := []struct { - uri string - tlsConfig *tls.Config - - wantHost string - wantTLS bool - }{ - { - uri: grpcScheme + "://" + hostPort, - tlsConfig: nil, - wantHost: "frostfs.example.com:8080", - wantTLS: false, - }, - { - uri: grpcScheme + "://" + hostPort, - tlsConfig: &tls.Config{}, - wantHost: "frostfs.example.com:8080", - wantTLS: false, - }, - { - uri: grpcTLSScheme + "://" + hostPort, - tlsConfig: nil, - wantHost: "frostfs.example.com:8080", - wantTLS: true, - }, - { - uri: grpcTLSScheme + "://" + hostPort, - tlsConfig: &tls.Config{ServerName: serverName}, - wantHost: "frostfs.example.com:8080", - wantTLS: true, - }, - { - uri: "wrongScheme://" + hostPort, - tlsConfig: nil, - wantHost: "", - wantTLS: false, - }, - { - uri: "impossibleToParseIt", - tlsConfig: nil, - wantHost: "impossibleToParseIt", - wantTLS: false, - }, - { - uri: hostPort, - tlsConfig: nil, - wantHost: hostPort, - wantTLS: false, - }, - { - uri: apiPort, - tlsConfig: nil, - wantHost: apiPort, - wantTLS: false, - }, - } - - for _, test := range testCases { - cfg := &cfg{} - opts := WithNetworkURIAddress(test.uri, test.tlsConfig) - - for _, opt := range opts { - opt(cfg) - } - - require.Equal(t, test.wantHost, cfg.addr, test.uri) - require.Equal(t, test.wantTLS, cfg.tlsCfg != nil, test.uri) - // check if custom tlsConfig was applied - if test.tlsConfig != nil && test.wantTLS { - require.Equal(t, test.tlsConfig.ServerName, cfg.tlsCfg.ServerName, test.uri) - } - } -} - -func Test_WithNetworkAddress_WithTLS_WithNetworkURIAddress(t *testing.T) { - addr1, addr2 := "example1.com:8080", "example2.com:8080" - - testCases := []struct { - addr string - withTLS bool - - uri string - - wantHost string - wantTLS bool - }{ - { - addr: addr1, - withTLS: true, - - uri: grpcScheme + "://" + addr2, - - wantHost: addr2, - wantTLS: false, - }, - { - addr: addr1, - withTLS: false, - - uri: grpcTLSScheme + "://" + addr2, - - wantHost: addr2, - wantTLS: true, - }, - } - - for _, test := range testCases { - // order: - // 1. WithNetworkAddress - // 2. WithTLSCfg(if test.withTLS == true) - // 3. WithNetworkURIAddress - config := &cfg{} - opts := []Option{WithNetworkAddress(test.addr)} - - if test.withTLS { - opts = append(opts, WithTLSCfg(&tls.Config{})) - } - - opts = append(opts, WithNetworkURIAddress(test.uri, nil)...) - - for _, opt := range opts { - opt(config) - } - - require.Equal(t, test.wantHost, config.addr, test.addr) - require.Equal(t, test.wantTLS, config.tlsCfg != nil, test.addr) - } -} - -func Test_WithNetworkURIAddress_WithTLS_WithNetworkAddress(t *testing.T) { - addr1, addr2 := "example1.com:8080", "example2.com:8080" - - testCases := []struct { - addr string - withTLS bool - - uri string - - wantHost string - wantTLS bool - }{ - { - uri: grpcScheme + "://" + addr1, - - addr: addr2, - withTLS: true, - - wantHost: addr2, - wantTLS: true, - }, - { - uri: grpcTLSScheme + "://" + addr1, - - addr: addr2, - withTLS: false, - - wantHost: addr2, - wantTLS: true, - }, - } - - for _, test := range testCases { - // order: - // 1. WithNetworkURIAddress - // 2. WithNetworkAddress - // 3. WithTLSCfg(if test.withTLS == true) - config := &cfg{} - opts := WithNetworkURIAddress(test.uri, nil) - - opts = append(opts, WithNetworkAddress(test.addr)) - - if test.withTLS { - opts = append(opts, WithTLSCfg(&tls.Config{})) - } - - for _, opt := range opts { - opt(config) - } - - require.Equal(t, test.wantHost, config.addr, test.uri) - require.Equal(t, test.wantTLS, config.tlsCfg != nil, test.uri) - } -} diff --git a/rpc/client/stream_wrapper.go b/rpc/client/stream_wrapper.go deleted file mode 100644 index 22033dd..0000000 --- a/rpc/client/stream_wrapper.go +++ /dev/null @@ -1,58 +0,0 @@ -package client - -import ( - "context" - "time" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - "google.golang.org/grpc" -) - -type streamWrapper struct { - grpc.ClientStream - timeout time.Duration - cancel context.CancelFunc -} - -func (w streamWrapper) ReadMessage(m message.Message) error { - // Can be optimized: we can create blank message here. - gm := m.ToGRPCMessage() - - err := w.withTimeout(func() error { - return w.ClientStream.RecvMsg(gm) - }) - if err != nil { - return err - } - - return m.FromGRPCMessage(gm) -} - -func (w streamWrapper) WriteMessage(m message.Message) error { - return w.withTimeout(func() error { - return w.ClientStream.SendMsg(m.ToGRPCMessage()) - }) -} - -func (w *streamWrapper) Close() error { - return w.withTimeout(w.ClientStream.CloseSend) -} - -func (w *streamWrapper) withTimeout(closure func() error) error { - ch := make(chan error, 1) - go func() { - ch <- closure() - close(ch) - }() - - tt := time.NewTimer(w.timeout) - - select { - case err := <-ch: - tt.Stop() - return err - case <-tt.C: - w.cancel() - return context.DeadlineExceeded - } -} diff --git a/rpc/client/util.go b/rpc/client/util.go deleted file mode 100644 index 95dc2b0..0000000 --- a/rpc/client/util.go +++ /dev/null @@ -1,13 +0,0 @@ -package client - -import ( - "fmt" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/common" -) - -const methodNameFmt = "/%s/%s" - -func toMethodName(p common.CallMethodInfo) string { - return fmt.Sprintf(methodNameFmt, p.Service, p.Name) -} diff --git a/rpc/common.go b/rpc/common.go deleted file mode 100644 index 8177694..0000000 --- a/rpc/common.go +++ /dev/null @@ -1,10 +0,0 @@ -package rpc - -const ( - // serviceNamePrefix is still used in "old" services but should be - // considered as deprecated. Since new services use "frostfs" root, - // `frostfsServiceNamePrefix` must be used for their rpc interface. - serviceNamePrefix = "neo.fs.v2." - - frostfsServiceNamePrefix = "frostfs.v2." -) diff --git a/rpc/common/call.go b/rpc/common/call.go deleted file mode 100644 index bc3410a..0000000 --- a/rpc/common/call.go +++ /dev/null @@ -1,75 +0,0 @@ -package common - -type callType uint8 - -const ( - _ callType = iota - callUnary - callClientStream - callServerStream - callBidirStream -) - -// CallMethodInfo is an information about the RPC. -type CallMethodInfo struct { - // Name of the service. - Service string - - // Name of the RPC. - Name string - - t callType -} - -// ServerStream checks if CallMethodInfo contains -// information about the server-side streaming RPC. -func (c CallMethodInfo) ServerStream() bool { - return c.t == callServerStream || c.t == callBidirStream -} - -// ClientStream checks if CallMethodInfo contains -// information about the client-side streaming RPC. -func (c CallMethodInfo) ClientStream() bool { - return c.t == callClientStream || c.t == callBidirStream -} - -func (c *CallMethodInfo) setCommon(service, name string) { - c.Service = service - c.Name = name -} - -// CallMethodInfoUnary returns CallMethodInfo structure -// initialized for the unary RPC. -func CallMethodInfoUnary(service, name string) (info CallMethodInfo) { - info.setCommon(service, name) - info.t = callUnary - - return -} - -// CallMethodInfoClientStream returns CallMethodInfo structure -// initialized for the client-side streaming RPC. -func CallMethodInfoClientStream(service, name string) (info CallMethodInfo) { - info.setCommon(service, name) - info.t = callClientStream - - return -} - -// CallMethodInfoServerStream returns CallMethodInfo structure -// initialized for the server-side streaming RPC. -func CallMethodInfoServerStream(service, name string) (info CallMethodInfo) { - info.setCommon(service, name) - info.t = callServerStream - - return -} - -// CallMethodInfoBidirectionalStream returns CallMethodInfo structure -// initialized for the bidirectional streaming RPC. -func CallMethodInfoBidirectionalStream(service, name string) (info CallMethodInfo) { - info.setCommon(service, name) - info.t = callBidirStream - - return -} diff --git a/rpc/common/call_test.go b/rpc/common/call_test.go deleted file mode 100644 index 942ee02..0000000 --- a/rpc/common/call_test.go +++ /dev/null @@ -1,49 +0,0 @@ -package common_test - -import ( - "testing" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/common" - "github.com/stretchr/testify/require" -) - -const ( - testServiceName = "test service" - testRPCName = "test RPC" -) - -func TestCallMethodInfoUnary(t *testing.T) { - i := common.CallMethodInfoUnary(testServiceName, testRPCName) - - require.Equal(t, testServiceName, i.Service) - require.Equal(t, testRPCName, i.Name) - require.False(t, i.ClientStream()) - require.False(t, i.ServerStream()) -} - -func TestCallMethodInfoServerStream(t *testing.T) { - i := common.CallMethodInfoServerStream(testServiceName, testRPCName) - - require.Equal(t, testServiceName, i.Service) - require.Equal(t, testRPCName, i.Name) - require.False(t, i.ClientStream()) - require.True(t, i.ServerStream()) -} - -func TestCallMethodInfoClientStream(t *testing.T) { - i := common.CallMethodInfoClientStream(testServiceName, testRPCName) - - require.Equal(t, testServiceName, i.Service) - require.Equal(t, testRPCName, i.Name) - require.True(t, i.ClientStream()) - require.False(t, i.ServerStream()) -} - -func TestCallMethodInfoBidirectionalStream(t *testing.T) { - i := common.CallMethodInfoBidirectionalStream(testServiceName, testRPCName) - - require.Equal(t, testServiceName, i.Service) - require.Equal(t, testRPCName, i.Name) - require.True(t, i.ClientStream()) - require.True(t, i.ServerStream()) -} diff --git a/rpc/container.go b/rpc/container.go deleted file mode 100644 index b1d4a68..0000000 --- a/rpc/container.go +++ /dev/null @@ -1,82 +0,0 @@ -package rpc - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/container" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/client" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/common" -) - -const serviceContainer = serviceNamePrefix + "container.ContainerService" - -const ( - rpcContainerPut = "Put" - rpcContainerGet = "Get" - rpcContainerDel = "Delete" - rpcContainerList = "List" - rpcContainerGetEACL = "GetExtendedACL" - rpcContainerUsedSpace = "AnnounceUsedSpace" -) - -// PutContainer executes ContainerService.Put RPC. -func PutContainer( - cli *client.Client, - req *container.PutRequest, - opts ...client.CallOption, -) (*container.PutResponse, error) { - resp := new(container.PutResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceContainer, rpcContainerPut), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} - -// GetContainer executes ContainerService.Get RPC. -func GetContainer( - cli *client.Client, - req *container.GetRequest, - opts ...client.CallOption, -) (*container.GetResponse, error) { - resp := new(container.GetResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceContainer, rpcContainerGet), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} - -// DeleteContainer executes ContainerService.Delete RPC. -func DeleteContainer( - cli *client.Client, - req *container.DeleteRequest, - opts ...client.CallOption, -) (*container.PutResponse, error) { - resp := new(container.PutResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceContainer, rpcContainerDel), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} - -// ListContainers executes ContainerService.List RPC. -func ListContainers( - cli *client.Client, - req *container.ListRequest, - opts ...client.CallOption, -) (*container.ListResponse, error) { - resp := new(container.ListResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceContainer, rpcContainerList), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} diff --git a/rpc/grpc/init.go b/rpc/grpc/init.go deleted file mode 100644 index 0092d39..0000000 --- a/rpc/grpc/init.go +++ /dev/null @@ -1,4 +0,0 @@ -package grpc - -// Message represents raw gRPC message. -type Message any diff --git a/rpc/message/encoding.go b/rpc/message/encoding.go deleted file mode 100644 index d656acd..0000000 --- a/rpc/message/encoding.go +++ /dev/null @@ -1,40 +0,0 @@ -package message - -import ( - "encoding/json" -) - -// GRPCConvertedMessage is an interface -// of the gRPC message that is used -// for Message encoding/decoding. -type GRPCConvertedMessage interface { - UnmarshalProtobuf([]byte) error -} - -// Unmarshal decodes m from its Protobuf binary representation -// via related gRPC message. -// -// gm should be tof the same type as the m.ToGRPCMessage() return. -func Unmarshal(m Message, data []byte, gm GRPCConvertedMessage) error { - if err := gm.UnmarshalProtobuf(data); err != nil { - return err - } - - return m.FromGRPCMessage(gm) -} - -// MarshalJSON encodes m to Protobuf JSON representation. -func MarshalJSON(m Message) ([]byte, error) { - return json.Marshal(m.ToGRPCMessage()) -} - -// UnmarshalJSON decodes m from its Protobuf JSON representation -// via related gRPC message. -// -// gm should be tof the same type as the m.ToGRPCMessage() return. -func UnmarshalJSON(m Message, data []byte, gm any) error { - if err := json.Unmarshal(data, gm); err != nil { - return err - } - return m.FromGRPCMessage(gm) -} diff --git a/rpc/message/message.go b/rpc/message/message.go deleted file mode 100644 index 705270e..0000000 --- a/rpc/message/message.go +++ /dev/null @@ -1,43 +0,0 @@ -package message - -import ( - "fmt" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/grpc" -) - -// Message represents raw Protobuf message -// that can be transmitted via several -// transport protocols. -type Message interface { - // Must return gRPC message that can - // be used for gRPC protocol transmission. - ToGRPCMessage() grpc.Message - - // Must restore the message from related - // gRPC message. - // - // If gRPC message is not a related one, - // ErrUnexpectedMessageType can be returned - // to indicate this. - FromGRPCMessage(grpc.Message) error -} - -// ErrUnexpectedMessageType is an error that -// is used to indicate message mismatch. -type ErrUnexpectedMessageType struct { - exp, act any -} - -// NewUnexpectedMessageType initializes an error about message mismatch -// between act and exp. -func NewUnexpectedMessageType(act, exp any) ErrUnexpectedMessageType { - return ErrUnexpectedMessageType{ - exp: exp, - act: act, - } -} - -func (e ErrUnexpectedMessageType) Error() string { - return fmt.Sprintf("unexpected message type %T: expected %T", e.act, e.exp) -} diff --git a/rpc/message/test/message.go b/rpc/message/test/message.go deleted file mode 100644 index 96b6de4..0000000 --- a/rpc/message/test/message.go +++ /dev/null @@ -1,126 +0,0 @@ -package messagetest - -import ( - "encoding/json" - "errors" - "fmt" - "testing" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - "github.com/stretchr/testify/require" -) - -type jsonMessage interface { - json.Marshaler - json.Unmarshaler -} - -type binaryMessage interface { - StableMarshal([]byte) []byte - StableSize() int - Unmarshal([]byte) error -} - -func TestRPCMessage(t *testing.T, msgGens ...func(empty bool) message.Message) { - for _, msgGen := range msgGens { - msg := msgGen(false) - - t.Run(fmt.Sprintf("convert_%T", msg), func(t *testing.T) { - msg := msgGen(false) - - err := msg.FromGRPCMessage(100) - - require.True(t, errors.As(err, new(message.ErrUnexpectedMessageType))) - - msg2 := msgGen(true) - - err = msg2.FromGRPCMessage(msg.ToGRPCMessage()) - require.NoError(t, err) - - require.Equal(t, msg, msg2) - }) - - t.Run("encoding", func(t *testing.T) { - if jm, ok := msg.(jsonMessage); ok { - t.Run(fmt.Sprintf("JSON_%T", msg), func(t *testing.T) { - data, err := jm.MarshalJSON() - require.NoError(t, err) - - jm2 := msgGen(true).(jsonMessage) - require.NoError(t, jm2.UnmarshalJSON(data)) - - require.Equal(t, jm, jm2) - }) - } - - if bm, ok := msg.(binaryMessage); ok { - t.Run(fmt.Sprintf("%T.StableSize() does no allocations", bm), func(t *testing.T) { - require.Zero(t, testing.AllocsPerRun(1000, func() { - _ = bm.StableSize() - })) - }) - t.Run(fmt.Sprintf("Binary_%T", msg), func(t *testing.T) { - data := bm.StableMarshal(nil) - - bm2 := msgGen(true).(binaryMessage) - require.NoError(t, bm2.Unmarshal(data)) - - require.Equal(t, bm, bm2) - }) - } - t.Run("compatibility", func(t *testing.T) { - testCompatibility(t, msgGen) - }) - }) - } -} - -func testCompatibility(t *testing.T, msgGen func(empty bool) message.Message) { - compareBinary := func(t *testing.T, msg message.Message) { - am, ok := msg.(binaryMessage) - if !ok { - t.Skip() - } - - a := am.StableMarshal(nil) - b := msg.ToGRPCMessage().(encoding.ProtoMarshaler).MarshalProtobuf(nil) - if len(a) == 0 { - require.Empty(t, b) - } else { - require.Equal(t, a, b) - } - } - compareJSON := func(t *testing.T, msg message.Message) { - am, ok := msg.(jsonMessage) - if !ok { - t.Skip() - } - - a, err := am.MarshalJSON() - require.NoError(t, err) - - b, err := json.Marshal(msg.ToGRPCMessage()) - require.NoError(t, err) - - require.JSONEq(t, string(a), string(b)) - } - t.Run("empty", func(t *testing.T) { - msg := msgGen(true) - t.Run(fmt.Sprintf("Binary_%T", msg), func(t *testing.T) { - compareBinary(t, msg) - }) - t.Run(fmt.Sprintf("JSON_%T", msg), func(t *testing.T) { - compareJSON(t, msg) - }) - }) - t.Run("not empty", func(t *testing.T) { - msg := msgGen(false) - t.Run(fmt.Sprintf("Binary_%T", msg), func(t *testing.T) { - compareBinary(t, msg) - }) - t.Run(fmt.Sprintf("JSON_%T", msg), func(t *testing.T) { - compareJSON(t, msg) - }) - }) -} diff --git a/rpc/netmap.go b/rpc/netmap.go deleted file mode 100644 index 8119477..0000000 --- a/rpc/netmap.go +++ /dev/null @@ -1,62 +0,0 @@ -package rpc - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/client" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/common" -) - -const serviceNetmap = serviceNamePrefix + "netmap.NetmapService" - -const ( - rpcNetmapNodeInfo = "LocalNodeInfo" - rpcNetmapNetInfo = "NetworkInfo" - rpcNetmapSnapshot = "NetmapSnapshot" -) - -// LocalNodeInfo executes NetmapService.LocalNodeInfo RPC. -func LocalNodeInfo( - cli *client.Client, - req *netmap.LocalNodeInfoRequest, - opts ...client.CallOption, -) (*netmap.LocalNodeInfoResponse, error) { - resp := new(netmap.LocalNodeInfoResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceNetmap, rpcNetmapNodeInfo), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} - -// NetworkInfo executes NetmapService.NetworkInfo RPC. -func NetworkInfo( - cli *client.Client, - req *netmap.NetworkInfoRequest, - opts ...client.CallOption, -) (*netmap.NetworkInfoResponse, error) { - resp := new(netmap.NetworkInfoResponse) - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceNetmap, rpcNetmapNetInfo), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} - -// NetMapSnapshot executes NetmapService.NetmapSnapshot RPC. -func NetMapSnapshot( - cli *client.Client, - req *netmap.SnapshotRequest, - opts ...client.CallOption, -) (*netmap.SnapshotResponse, error) { - resp := new(netmap.SnapshotResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceNetmap, rpcNetmapSnapshot), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} diff --git a/rpc/object.go b/rpc/object.go deleted file mode 100644 index 6d7af31..0000000 --- a/rpc/object.go +++ /dev/null @@ -1,243 +0,0 @@ -package rpc - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/object" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/client" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/common" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" -) - -const serviceObject = serviceNamePrefix + "object.ObjectService" - -const ( - rpcObjectPut = "Put" - rpcObjectGet = "Get" - rpcObjectSearch = "Search" - rpcObjectRange = "GetRange" - rpcObjectHash = "GetRangeHash" - rpcObjectHead = "Head" - rpcObjectDelete = "Delete" - rpcObjectPutSingle = "PutSingle" - rpcObjectPatch = "Patch" -) - -// PutRequestWriter is an object.PutRequest -// message streaming component. -type PutRequestWriter struct { - wc client.MessageWriterCloser - - resp message.Message -} - -// Write writes req to the stream. -func (w *PutRequestWriter) Write(req *object.PutRequest) error { - return w.wc.WriteMessage(req) -} - -// Close closes the stream. -func (w *PutRequestWriter) Close() error { - return w.wc.Close() -} - -// PutObject executes ObjectService.Put RPC. -func PutObject( - cli *client.Client, - resp *object.PutResponse, - opts ...client.CallOption, -) (*PutRequestWriter, error) { - wc, err := client.OpenClientStream(cli, common.CallMethodInfoClientStream(serviceObject, rpcObjectPut), resp, opts...) - if err != nil { - return nil, err - } - - return &PutRequestWriter{ - wc: wc, - resp: resp, - }, nil -} - -// GetResponseReader is an object.GetResponse -// stream reader. -type GetResponseReader struct { - r client.MessageReader -} - -// Read reads response from the stream. -// -// Returns io.EOF of streaming is finished. -func (r *GetResponseReader) Read(resp *object.GetResponse) error { - return r.r.ReadMessage(resp) -} - -// GetObject executes ObjectService.Get RPC. -func GetObject( - cli *client.Client, - req *object.GetRequest, - opts ...client.CallOption, -) (*GetResponseReader, error) { - wc, err := client.OpenServerStream(cli, common.CallMethodInfoServerStream(serviceObject, rpcObjectGet), req, opts...) - if err != nil { - return nil, err - } - - return &GetResponseReader{ - r: wc, - }, nil -} - -// GetResponseReader is an object.SearchResponse -// stream reader. -type SearchResponseReader struct { - r client.MessageReader -} - -// Read reads response from the stream. -// -// Returns io.EOF of streaming is finished. -func (r *SearchResponseReader) Read(resp *object.SearchResponse) error { - return r.r.ReadMessage(resp) -} - -// SearchObjects executes ObjectService.Search RPC. -func SearchObjects( - cli *client.Client, - req *object.SearchRequest, - opts ...client.CallOption, -) (*SearchResponseReader, error) { - wc, err := client.OpenServerStream(cli, common.CallMethodInfoServerStream(serviceObject, rpcObjectSearch), req, opts...) - if err != nil { - return nil, err - } - - return &SearchResponseReader{ - r: wc, - }, nil -} - -// GetResponseReader is an object.GetRangeResponse -// stream reader. -type ObjectRangeResponseReader struct { - r client.MessageReader -} - -// Read reads response from the stream. -// -// Returns io.EOF of streaming is finished. -func (r *ObjectRangeResponseReader) Read(resp *object.GetRangeResponse) error { - return r.r.ReadMessage(resp) -} - -// GetObjectRange executes ObjectService.GetRange RPC. -func GetObjectRange( - cli *client.Client, - req *object.GetRangeRequest, - opts ...client.CallOption, -) (*ObjectRangeResponseReader, error) { - wc, err := client.OpenServerStream(cli, common.CallMethodInfoServerStream(serviceObject, rpcObjectRange), req, opts...) - if err != nil { - return nil, err - } - - return &ObjectRangeResponseReader{ - r: wc, - }, nil -} - -// HeadObject executes ObjectService.Head RPC. -func HeadObject( - cli *client.Client, - req *object.HeadRequest, - opts ...client.CallOption, -) (*object.HeadResponse, error) { - resp := new(object.HeadResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceObject, rpcObjectHead), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} - -// DeleteObject executes ObjectService.Delete RPC. -func DeleteObject( - cli *client.Client, - req *object.DeleteRequest, - opts ...client.CallOption, -) (*object.DeleteResponse, error) { - resp := new(object.DeleteResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceObject, rpcObjectDelete), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} - -// HashObjectRange executes ObjectService.GetRangeHash RPC. -func HashObjectRange( - cli *client.Client, - req *object.GetRangeHashRequest, - opts ...client.CallOption, -) (*object.GetRangeHashResponse, error) { - resp := new(object.GetRangeHashResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceObject, rpcObjectHash), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} - -// PutSingleObject executes ObjectService.PutSingle RPC. -func PutSingleObject( - cli *client.Client, - req *object.PutSingleRequest, - opts ...client.CallOption, -) (*object.PutSingleResponse, error) { - resp := new(object.PutSingleResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceObject, rpcObjectPutSingle), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} - -// PatchRequestWriter is an object.PatchRequest -// message streaming component. -type PatchRequestWriter struct { - wc client.MessageWriterCloser - - resp message.Message -} - -// Write writes req to the stream. -func (w *PatchRequestWriter) Write(req *object.PatchRequest) error { - return w.wc.WriteMessage(req) -} - -// Close closes the stream. -func (w *PatchRequestWriter) Close() error { - return w.wc.Close() -} - -// Patch executes ObjectService.Patch RPC. -func Patch( - cli *client.Client, - resp *object.PatchResponse, - opts ...client.CallOption, -) (*PatchRequestWriter, error) { - wc, err := client.OpenClientStream(cli, common.CallMethodInfoClientStream(serviceObject, rpcObjectPatch), resp, opts...) - if err != nil { - return nil, err - } - - return &PatchRequestWriter{ - wc: wc, - resp: resp, - }, nil -} diff --git a/rpc/session.go b/rpc/session.go deleted file mode 100644 index f786734..0000000 --- a/rpc/session.go +++ /dev/null @@ -1,28 +0,0 @@ -package rpc - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/client" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/common" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" -) - -const serviceSession = serviceNamePrefix + "session.SessionService" - -const ( - rpcSessionCreate = "Create" -) - -func CreateSession( - cli *client.Client, - req *session.CreateRequest, - opts ...client.CallOption, -) (*session.CreateResponse, error) { - resp := new(session.CreateResponse) - - err := client.SendUnary(cli, common.CallMethodInfoUnary(serviceSession, rpcSessionCreate), req, resp, opts...) - if err != nil { - return nil, err - } - - return resp, nil -} diff --git a/session/convert.go b/session/convert.go deleted file mode 100644 index d0e83fa..0000000 --- a/session/convert.go +++ /dev/null @@ -1,898 +0,0 @@ -package session - -import ( - "fmt" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl" - aclGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - refsGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - session "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status" - statusGRPC "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/grpc" -) - -func (c *CreateRequestBody) ToGRPCMessage() grpc.Message { - var m *session.CreateRequest_Body - - if c != nil { - m = new(session.CreateRequest_Body) - - m.SetOwnerId(c.ownerID.ToGRPCMessage().(*refsGRPC.OwnerID)) - m.SetExpiration(c.expiration) - } - - return m -} - -func (c *CreateRequestBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.CreateRequest_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - ownerID := v.GetOwnerId() - if ownerID == nil { - c.ownerID = nil - } else { - if c.ownerID == nil { - c.ownerID = new(refs.OwnerID) - } - - err = c.ownerID.FromGRPCMessage(ownerID) - if err != nil { - return err - } - } - - c.expiration = v.GetExpiration() - - return nil -} - -func (c *CreateRequest) ToGRPCMessage() grpc.Message { - var m *session.CreateRequest - - if c != nil { - m = new(session.CreateRequest) - - m.SetBody(c.body.ToGRPCMessage().(*session.CreateRequest_Body)) - c.RequestHeaders.ToMessage(m) - } - - return m -} - -func (c *CreateRequest) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.CreateRequest) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - c.body = nil - } else { - if c.body == nil { - c.body = new(CreateRequestBody) - } - - err = c.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return c.RequestHeaders.FromMessage(v) -} - -func (c *CreateResponseBody) ToGRPCMessage() grpc.Message { - var m *session.CreateResponse_Body - - if c != nil { - m = new(session.CreateResponse_Body) - - m.SetSessionKey(c.sessionKey) - m.SetId(c.id) - } - - return m -} - -func (c *CreateResponseBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.CreateResponse_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - c.sessionKey = v.GetSessionKey() - c.id = v.GetId() - - return nil -} - -func (c *CreateResponse) ToGRPCMessage() grpc.Message { - var m *session.CreateResponse - - if c != nil { - m = new(session.CreateResponse) - - m.SetBody(c.body.ToGRPCMessage().(*session.CreateResponse_Body)) - c.ResponseHeaders.ToMessage(m) - } - - return m -} - -func (c *CreateResponse) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.CreateResponse) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - c.body = nil - } else { - if c.body == nil { - c.body = new(CreateResponseBody) - } - - err = c.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - return c.ResponseHeaders.FromMessage(v) -} - -func (l *TokenLifetime) ToGRPCMessage() grpc.Message { - var m *session.SessionToken_Body_TokenLifetime - - if l != nil { - m = new(session.SessionToken_Body_TokenLifetime) - - m.SetExp(l.exp) - m.SetIat(l.iat) - m.SetNbf(l.nbf) - } - - return m -} - -func (l *TokenLifetime) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.SessionToken_Body_TokenLifetime) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - l.exp = v.GetExp() - l.iat = v.GetIat() - l.nbf = v.GetNbf() - - return nil -} - -func (x *XHeader) ToGRPCMessage() grpc.Message { - var m *session.XHeader - - if x != nil { - m = new(session.XHeader) - - m.SetKey(x.key) - m.SetValue(x.val) - } - - return m -} - -func (x *XHeader) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.XHeader) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - x.key = v.GetKey() - x.val = v.GetValue() - - return nil -} - -func XHeadersToGRPC(xs []XHeader) (res []session.XHeader) { - if xs != nil { - res = make([]session.XHeader, 0, len(xs)) - - for i := range xs { - res = append(res, *xs[i].ToGRPCMessage().(*session.XHeader)) - } - } - - return -} - -func XHeadersFromGRPC(xs []session.XHeader) (res []XHeader, err error) { - if xs != nil { - res = make([]XHeader, len(xs)) - - for i := range xs { - err = res[i].FromGRPCMessage(&xs[i]) - if err != nil { - return - } - } - } - - return -} - -func (t *Token) ToGRPCMessage() grpc.Message { - var m *session.SessionToken - - if t != nil { - m = new(session.SessionToken) - - m.SetBody(t.body.ToGRPCMessage().(*session.SessionToken_Body)) - m.SetSignature(t.sig.ToGRPCMessage().(*refsGRPC.Signature)) - } - - return m -} - -func (t *Token) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.SessionToken) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - body := v.GetBody() - if body == nil { - t.body = nil - } else { - if t.body == nil { - t.body = new(TokenBody) - } - - err = t.body.FromGRPCMessage(body) - if err != nil { - return err - } - } - - sig := v.GetSignature() - if sig == nil { - t.sig = nil - } else { - if t.sig == nil { - t.sig = new(refs.Signature) - } - - err = t.sig.FromGRPCMessage(sig) - if err != nil { - return err - } - } - - return nil -} - -func (r *RequestVerificationHeader) ToGRPCMessage() grpc.Message { - var m *session.RequestVerificationHeader - - if r != nil { - m = new(session.RequestVerificationHeader) - - m.SetBodySignature(r.bodySig.ToGRPCMessage().(*refsGRPC.Signature)) - m.SetMetaSignature(r.metaSig.ToGRPCMessage().(*refsGRPC.Signature)) - m.SetOriginSignature(r.originSig.ToGRPCMessage().(*refsGRPC.Signature)) - m.SetOrigin(r.origin.ToGRPCMessage().(*session.RequestVerificationHeader)) - } - - return m -} - -func (r *RequestVerificationHeader) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.RequestVerificationHeader) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - originSig := v.GetOriginSignature() - if originSig == nil { - r.originSig = nil - } else { - if r.originSig == nil { - r.originSig = new(refs.Signature) - } - - err = r.originSig.FromGRPCMessage(originSig) - if err != nil { - return err - } - } - - metaSig := v.GetMetaSignature() - if metaSig == nil { - r.metaSig = nil - } else { - if r.metaSig == nil { - r.metaSig = new(refs.Signature) - } - - err = r.metaSig.FromGRPCMessage(metaSig) - if err != nil { - return err - } - } - - bodySig := v.GetBodySignature() - if bodySig == nil { - r.bodySig = nil - } else { - if r.bodySig == nil { - r.bodySig = new(refs.Signature) - } - - err = r.bodySig.FromGRPCMessage(bodySig) - if err != nil { - return err - } - } - - origin := v.GetOrigin() - if origin == nil { - r.origin = nil - } else { - if r.origin == nil { - r.origin = new(RequestVerificationHeader) - } - - err = r.origin.FromGRPCMessage(origin) - if err != nil { - return err - } - } - - return nil -} - -func (r *RequestMetaHeader) ToGRPCMessage() grpc.Message { - var m *session.RequestMetaHeader - - if r != nil { - m = new(session.RequestMetaHeader) - - m.SetVersion(r.version.ToGRPCMessage().(*refsGRPC.Version)) - m.SetSessionToken(r.sessionToken.ToGRPCMessage().(*session.SessionToken)) - m.SetBearerToken(r.bearerToken.ToGRPCMessage().(*aclGRPC.BearerToken)) - m.SetXHeaders(XHeadersToGRPC(r.xHeaders)) - m.SetEpoch(r.epoch) - m.SetTtl(r.ttl) - m.SetOrigin(r.origin.ToGRPCMessage().(*session.RequestMetaHeader)) - m.SetMagicNumber(r.netMagic) - } - - return m -} - -func (r *RequestMetaHeader) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.RequestMetaHeader) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - version := v.GetVersion() - if version == nil { - r.version = nil - } else { - if r.version == nil { - r.version = new(refs.Version) - } - - err = r.version.FromGRPCMessage(version) - if err != nil { - return err - } - } - - sessionToken := v.GetSessionToken() - if sessionToken == nil { - r.sessionToken = nil - } else { - if r.sessionToken == nil { - r.sessionToken = new(Token) - } - - err = r.sessionToken.FromGRPCMessage(sessionToken) - if err != nil { - return err - } - } - - bearerToken := v.GetBearerToken() - if bearerToken == nil { - r.bearerToken = nil - } else { - if r.bearerToken == nil { - r.bearerToken = new(acl.BearerToken) - } - - err = r.bearerToken.FromGRPCMessage(bearerToken) - if err != nil { - return err - } - } - - origin := v.GetOrigin() - if origin == nil { - r.origin = nil - } else { - if r.origin == nil { - r.origin = new(RequestMetaHeader) - } - - err = r.origin.FromGRPCMessage(origin) - if err != nil { - return err - } - } - - r.xHeaders, err = XHeadersFromGRPC(v.GetXHeaders()) - if err != nil { - return err - } - - r.epoch = v.GetEpoch() - r.ttl = v.GetTtl() - r.netMagic = v.GetMagicNumber() - - return nil -} - -func (r *ResponseVerificationHeader) ToGRPCMessage() grpc.Message { - var m *session.ResponseVerificationHeader - - if r != nil { - m = new(session.ResponseVerificationHeader) - - m.SetBodySignature(r.bodySig.ToGRPCMessage().(*refsGRPC.Signature)) - m.SetMetaSignature(r.metaSig.ToGRPCMessage().(*refsGRPC.Signature)) - m.SetOriginSignature(r.originSig.ToGRPCMessage().(*refsGRPC.Signature)) - m.SetOrigin(r.origin.ToGRPCMessage().(*session.ResponseVerificationHeader)) - } - - return m -} - -func (r *ResponseVerificationHeader) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.ResponseVerificationHeader) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - originSig := v.GetOriginSignature() - if originSig == nil { - r.originSig = nil - } else { - if r.originSig == nil { - r.originSig = new(refs.Signature) - } - - err = r.originSig.FromGRPCMessage(originSig) - if err != nil { - return err - } - } - - metaSig := v.GetMetaSignature() - if metaSig == nil { - r.metaSig = nil - } else { - if r.metaSig == nil { - r.metaSig = new(refs.Signature) - } - - err = r.metaSig.FromGRPCMessage(metaSig) - if err != nil { - return err - } - } - - bodySig := v.GetBodySignature() - if bodySig == nil { - r.bodySig = nil - } else { - if r.bodySig == nil { - r.bodySig = new(refs.Signature) - } - - err = r.bodySig.FromGRPCMessage(bodySig) - if err != nil { - return err - } - } - - origin := v.GetOrigin() - if origin == nil { - r.origin = nil - } else { - if r.origin == nil { - r.origin = new(ResponseVerificationHeader) - } - - err = r.origin.FromGRPCMessage(origin) - if err != nil { - return err - } - } - - return nil -} - -func (r *ResponseMetaHeader) ToGRPCMessage() grpc.Message { - var m *session.ResponseMetaHeader - - if r != nil { - m = new(session.ResponseMetaHeader) - - m.SetVersion(r.version.ToGRPCMessage().(*refsGRPC.Version)) - m.SetXHeaders(XHeadersToGRPC(r.xHeaders)) - m.SetEpoch(r.epoch) - m.SetTtl(r.ttl) - m.SetOrigin(r.origin.ToGRPCMessage().(*session.ResponseMetaHeader)) - m.SetStatus(r.status.ToGRPCMessage().(*statusGRPC.Status)) - } - - return m -} - -func (r *ResponseMetaHeader) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.ResponseMetaHeader) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - version := v.GetVersion() - if version == nil { - r.version = nil - } else { - if r.version == nil { - r.version = new(refs.Version) - } - - err = r.version.FromGRPCMessage(version) - if err != nil { - return err - } - } - - origin := v.GetOrigin() - if origin == nil { - r.origin = nil - } else { - if r.origin == nil { - r.origin = new(ResponseMetaHeader) - } - - err = r.origin.FromGRPCMessage(origin) - if err != nil { - return err - } - } - - st := v.GetStatus() - if st == nil { - r.status = nil - } else { - if r.status == nil { - r.status = new(status.Status) - } - - err = r.status.FromGRPCMessage(st) - if err != nil { - return err - } - } - - r.xHeaders, err = XHeadersFromGRPC(v.GetXHeaders()) - if err != nil { - return err - } - - r.epoch = v.GetEpoch() - r.ttl = v.GetTtl() - - return nil -} - -func ObjectSessionVerbToGRPCField(v ObjectSessionVerb) session.ObjectSessionContext_Verb { - switch v { - case ObjectVerbPut: - return session.ObjectSessionContext_PUT - case ObjectVerbGet: - return session.ObjectSessionContext_GET - case ObjectVerbHead: - return session.ObjectSessionContext_HEAD - case ObjectVerbSearch: - return session.ObjectSessionContext_SEARCH - case ObjectVerbDelete: - return session.ObjectSessionContext_DELETE - case ObjectVerbRange: - return session.ObjectSessionContext_RANGE - case ObjectVerbRangeHash: - return session.ObjectSessionContext_RANGEHASH - case ObjectVerbPatch: - return session.ObjectSessionContext_PATCH - default: - return session.ObjectSessionContext_VERB_UNSPECIFIED - } -} - -func ObjectSessionVerbFromGRPCField(v session.ObjectSessionContext_Verb) ObjectSessionVerb { - switch v { - case session.ObjectSessionContext_PUT: - return ObjectVerbPut - case session.ObjectSessionContext_GET: - return ObjectVerbGet - case session.ObjectSessionContext_HEAD: - return ObjectVerbHead - case session.ObjectSessionContext_SEARCH: - return ObjectVerbSearch - case session.ObjectSessionContext_DELETE: - return ObjectVerbDelete - case session.ObjectSessionContext_RANGE: - return ObjectVerbRange - case session.ObjectSessionContext_RANGEHASH: - return ObjectVerbRangeHash - case session.ObjectSessionContext_PATCH: - return ObjectVerbPatch - default: - return ObjectVerbUnknown - } -} - -func (c *ObjectSessionContext) ToGRPCMessage() grpc.Message { - var m *session.ObjectSessionContext - - if c != nil { - m = new(session.ObjectSessionContext) - - m.SetVerb(ObjectSessionVerbToGRPCField(c.verb)) - m.SetTarget(&session.ObjectSessionContext_Target{ - Container: c.cnr.ToGRPCMessage().(*refsGRPC.ContainerID), - Objects: refs.ObjectIDListToGRPCMessage(c.objs), - }) - } - - return m -} - -func (c *ObjectSessionContext) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.ObjectSessionContext) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - cnr := v.GetTarget().GetContainer() - if cnr == nil { - c.cnr = nil - } else { - if c.cnr == nil { - c.cnr = new(refs.ContainerID) - } - - err = c.cnr.FromGRPCMessage(cnr) - if err != nil { - return err - } - } - - c.objs, err = refs.ObjectIDListFromGRPCMessage(v.GetTarget().GetObjects()) - if err != nil { - return err - } - - c.verb = ObjectSessionVerbFromGRPCField(v.GetVerb()) - - return nil -} - -func (t *TokenBody) ToGRPCMessage() grpc.Message { - var m *session.SessionToken_Body - - if t != nil { - m = new(session.SessionToken_Body) - - switch typ := t.ctx.(type) { - default: - panic(fmt.Sprintf("unknown session context %T", typ)) - case nil: - m.Context = nil - case *ObjectSessionContext: - m.SetObject(typ.ToGRPCMessage().(*session.ObjectSessionContext)) - case *ContainerSessionContext: - m.SetContainer(typ.ToGRPCMessage().(*session.ContainerSessionContext)) - } - - m.SetOwnerId(t.ownerID.ToGRPCMessage().(*refsGRPC.OwnerID)) - m.SetId(t.id) - m.SetSessionKey(t.sessionKey) - m.SetLifetime(t.lifetime.ToGRPCMessage().(*session.SessionToken_Body_TokenLifetime)) - } - - return m -} - -func (t *TokenBody) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.SessionToken_Body) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - t.ctx = nil - - switch val := v.GetContext().(type) { - default: - err = fmt.Errorf("unknown session context %T", val) - case nil: - case *session.SessionToken_Body_Object: - ctx, ok := t.ctx.(*ObjectSessionContext) - if !ok { - ctx = new(ObjectSessionContext) - t.ctx = ctx - } - - err = ctx.FromGRPCMessage(val.Object) - case *session.SessionToken_Body_Container: - ctx, ok := t.ctx.(*ContainerSessionContext) - if !ok { - ctx = new(ContainerSessionContext) - t.ctx = ctx - } - - err = ctx.FromGRPCMessage(val.Container) - } - - if err != nil { - return err - } - - ownerID := v.GetOwnerId() - if ownerID == nil { - t.ownerID = nil - } else { - if t.ownerID == nil { - t.ownerID = new(refs.OwnerID) - } - - err = t.ownerID.FromGRPCMessage(ownerID) - if err != nil { - return err - } - } - - lifetime := v.GetLifetime() - if lifetime == nil { - t.lifetime = nil - } else { - if t.lifetime == nil { - t.lifetime = new(TokenLifetime) - } - - err = t.lifetime.FromGRPCMessage(lifetime) - if err != nil { - return err - } - } - - t.id = v.GetId() - t.sessionKey = v.GetSessionKey() - - return nil -} - -// ContainerSessionVerbToGRPCField converts ContainerSessionVerb -// to gRPC-generated session.ContainerSessionContext_Verb. -// -// If v is outside of the ContainerSessionVerb enum, -// session.ContainerSessionContext_VERB_UNSPECIFIED is returned. -func ContainerSessionVerbToGRPCField(v ContainerSessionVerb) session.ContainerSessionContext_Verb { - switch v { - default: - return session.ContainerSessionContext_VERB_UNSPECIFIED - case ContainerVerbPut: - return session.ContainerSessionContext_PUT - case ContainerVerbDelete: - return session.ContainerSessionContext_DELETE - case ContainerVerbSetEACL: - return session.ContainerSessionContext_SETEACL - } -} - -// ContainerSessionVerbFromGRPCField converts gRPC-generated -// session.ContainerSessionContext_Verb to ContainerSessionVerb. -// -// If v is outside of the session.ContainerSessionContext_Verb enum, -// ContainerVerbUnknown is returned. -func ContainerSessionVerbFromGRPCField(v session.ContainerSessionContext_Verb) ContainerSessionVerb { - switch v { - default: - return ContainerVerbUnknown - case session.ContainerSessionContext_PUT: - return ContainerVerbPut - case session.ContainerSessionContext_DELETE: - return ContainerVerbDelete - case session.ContainerSessionContext_SETEACL: - return ContainerVerbSetEACL - } -} - -// ToGRPCMessage converts ContainerSessionContext to gRPC-generated -// session.ContainerSessionContext message. -func (x *ContainerSessionContext) ToGRPCMessage() grpc.Message { - var m *session.ContainerSessionContext - - if x != nil { - m = new(session.ContainerSessionContext) - - m.SetVerb(ContainerSessionVerbToGRPCField(x.verb)) - m.SetWildcard(x.wildcard) - m.SetContainerId(x.cid.ToGRPCMessage().(*refsGRPC.ContainerID)) - } - - return m -} - -// FromGRPCMessage tries to restore ContainerSessionContext from grpc.Message. -// -// Returns message.ErrUnexpectedMessageType if m is not -// a gRPC-generated session.ContainerSessionContext message. -func (x *ContainerSessionContext) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*session.ContainerSessionContext) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var err error - - cid := v.GetContainerId() - if cid == nil { - x.cid = nil - } else { - if x.cid == nil { - x.cid = new(refs.ContainerID) - } - - err = x.cid.FromGRPCMessage(cid) - if err != nil { - return err - } - } - - x.verb = ContainerSessionVerbFromGRPCField(v.GetVerb()) - x.wildcard = v.GetWildcard() - - return nil -} diff --git a/session/grpc/client.go b/session/grpc/client.go deleted file mode 100644 index 2dfe77e..0000000 --- a/session/grpc/client.go +++ /dev/null @@ -1,62 +0,0 @@ -package session - -import ( - "context" - "errors" - - "google.golang.org/grpc" -) - -// Client wraps SessionServiceClient -// with pre-defined configurations. -type Client struct { - *cfg - - client SessionServiceClient -} - -// Option represents Client option. -type Option func(*cfg) - -type cfg struct { - callOpts []grpc.CallOption -} - -// ErrNilSessionServiceClient is returned by functions that expect -// a non-nil SessionServiceClient, but received nil. -var ErrNilSessionServiceClient = errors.New("session gRPC client is nil") - -func defaultCfg() *cfg { - return new(cfg) -} - -// NewClient creates, initializes and returns a new Client instance. -// -// Options are applied one by one in order. -func NewClient(c SessionServiceClient, opts ...Option) (*Client, error) { - if c == nil { - return nil, ErrNilSessionServiceClient - } - - cfg := defaultCfg() - for i := range opts { - opts[i](cfg) - } - - return &Client{ - cfg: cfg, - client: c, - }, nil -} - -func (c *Client) Create(ctx context.Context, req *CreateRequest) (*CreateResponse, error) { - return c.client.Create(ctx, req, c.callOpts...) -} - -// WithCallOptions returns Option that configures -// Client to attach call options to each rpc call. -func WithCallOptions(opts []grpc.CallOption) Option { - return func(c *cfg) { - c.callOpts = opts - } -} diff --git a/session/grpc/service_frostfs.pb.go b/session/grpc/service_frostfs.pb.go deleted file mode 100644 index 26213b9..0000000 --- a/session/grpc/service_frostfs.pb.go +++ /dev/null @@ -1,866 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package session - -import ( - json "encoding/json" - fmt "fmt" - grpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" - strconv "strconv" -) - -type CreateRequest_Body struct { - OwnerId *grpc.OwnerID `json:"ownerId"` - Expiration uint64 `json:"expiration"` -} - -var ( - _ encoding.ProtoMarshaler = (*CreateRequest_Body)(nil) - _ encoding.ProtoUnmarshaler = (*CreateRequest_Body)(nil) - _ json.Marshaler = (*CreateRequest_Body)(nil) - _ json.Unmarshaler = (*CreateRequest_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *CreateRequest_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.OwnerId) - size += proto.UInt64Size(2, x.Expiration) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *CreateRequest_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *CreateRequest_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.OwnerId != nil { - x.OwnerId.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Expiration != 0 { - mm.AppendUint64(2, x.Expiration) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *CreateRequest_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "CreateRequest_Body") - } - switch fc.FieldNum { - case 1: // OwnerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "OwnerId") - } - x.OwnerId = new(grpc.OwnerID) - if err := x.OwnerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Expiration - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Expiration") - } - x.Expiration = data - } - } - return nil -} -func (x *CreateRequest_Body) GetOwnerId() *grpc.OwnerID { - if x != nil { - return x.OwnerId - } - return nil -} -func (x *CreateRequest_Body) SetOwnerId(v *grpc.OwnerID) { - x.OwnerId = v -} -func (x *CreateRequest_Body) GetExpiration() uint64 { - if x != nil { - return x.Expiration - } - return 0 -} -func (x *CreateRequest_Body) SetExpiration(v uint64) { - x.Expiration = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *CreateRequest_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *CreateRequest_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ownerId\":" - out.RawString(prefix) - x.OwnerId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"expiration\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.Expiration, 10) - out.RawByte('"') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *CreateRequest_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *CreateRequest_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "ownerId": - { - var f *grpc.OwnerID - f = new(grpc.OwnerID) - f.UnmarshalEasyJSON(in) - x.OwnerId = f - } - case "expiration": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.Expiration = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type CreateRequest struct { - Body *CreateRequest_Body `json:"body"` - MetaHeader *RequestMetaHeader `json:"metaHeader"` - VerifyHeader *RequestVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*CreateRequest)(nil) - _ encoding.ProtoUnmarshaler = (*CreateRequest)(nil) - _ json.Marshaler = (*CreateRequest)(nil) - _ json.Unmarshaler = (*CreateRequest)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *CreateRequest) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *CreateRequest) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *CreateRequest) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *CreateRequest) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *CreateRequest) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *CreateRequest) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "CreateRequest") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(CreateRequest_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(RequestMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(RequestVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *CreateRequest) GetBody() *CreateRequest_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *CreateRequest) SetBody(v *CreateRequest_Body) { - x.Body = v -} -func (x *CreateRequest) GetMetaHeader() *RequestMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *CreateRequest) SetMetaHeader(v *RequestMetaHeader) { - x.MetaHeader = v -} -func (x *CreateRequest) GetVerifyHeader() *RequestVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *CreateRequest) SetVerifyHeader(v *RequestVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *CreateRequest) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *CreateRequest) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *CreateRequest) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *CreateRequest) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *CreateRequest_Body - f = new(CreateRequest_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *RequestMetaHeader - f = new(RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *RequestVerificationHeader - f = new(RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type CreateResponse_Body struct { - Id []byte `json:"id"` - SessionKey []byte `json:"sessionKey"` -} - -var ( - _ encoding.ProtoMarshaler = (*CreateResponse_Body)(nil) - _ encoding.ProtoUnmarshaler = (*CreateResponse_Body)(nil) - _ json.Marshaler = (*CreateResponse_Body)(nil) - _ json.Unmarshaler = (*CreateResponse_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *CreateResponse_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.BytesSize(1, x.Id) - size += proto.BytesSize(2, x.SessionKey) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *CreateResponse_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *CreateResponse_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Id) != 0 { - mm.AppendBytes(1, x.Id) - } - if len(x.SessionKey) != 0 { - mm.AppendBytes(2, x.SessionKey) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *CreateResponse_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "CreateResponse_Body") - } - switch fc.FieldNum { - case 1: // Id - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Id") - } - x.Id = data - case 2: // SessionKey - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "SessionKey") - } - x.SessionKey = data - } - } - return nil -} -func (x *CreateResponse_Body) GetId() []byte { - if x != nil { - return x.Id - } - return nil -} -func (x *CreateResponse_Body) SetId(v []byte) { - x.Id = v -} -func (x *CreateResponse_Body) GetSessionKey() []byte { - if x != nil { - return x.SessionKey - } - return nil -} -func (x *CreateResponse_Body) SetSessionKey(v []byte) { - x.SessionKey = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *CreateResponse_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *CreateResponse_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"id\":" - out.RawString(prefix) - if x.Id != nil { - out.Base64Bytes(x.Id) - } else { - out.String("") - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"sessionKey\":" - out.RawString(prefix) - if x.SessionKey != nil { - out.Base64Bytes(x.SessionKey) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *CreateResponse_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *CreateResponse_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "id": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Id = f - } - case "sessionKey": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.SessionKey = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type CreateResponse struct { - Body *CreateResponse_Body `json:"body"` - MetaHeader *ResponseMetaHeader `json:"metaHeader"` - VerifyHeader *ResponseVerificationHeader `json:"verifyHeader"` -} - -var ( - _ encoding.ProtoMarshaler = (*CreateResponse)(nil) - _ encoding.ProtoUnmarshaler = (*CreateResponse)(nil) - _ json.Marshaler = (*CreateResponse)(nil) - _ json.Unmarshaler = (*CreateResponse)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *CreateResponse) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.MetaHeader) - size += proto.NestedStructureSize(3, x.VerifyHeader) - return size -} - -// ReadSignedData fills buf with signed data of x. -// If buffer length is less than x.SignedDataSize(), new buffer is allocated. -// -// Returns any error encountered which did not allow writing the data completely. -// Otherwise, returns the buffer in which the data is written. -// -// Structures with the same field values have the same signed data. -func (x *CreateResponse) SignedDataSize() int { - return x.GetBody().StableSize() -} - -// SignedDataSize returns size of the request signed data in bytes. -// -// Structures with the same field values have the same signed data size. -func (x *CreateResponse) ReadSignedData(buf []byte) ([]byte, error) { - return x.GetBody().MarshalProtobuf(buf), nil -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *CreateResponse) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *CreateResponse) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaHeader != nil { - x.MetaHeader.EmitProtobuf(mm.AppendMessage(2)) - } - if x.VerifyHeader != nil { - x.VerifyHeader.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *CreateResponse) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "CreateResponse") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(CreateResponse_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaHeader") - } - x.MetaHeader = new(ResponseMetaHeader) - if err := x.MetaHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // VerifyHeader - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "VerifyHeader") - } - x.VerifyHeader = new(ResponseVerificationHeader) - if err := x.VerifyHeader.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *CreateResponse) GetBody() *CreateResponse_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *CreateResponse) SetBody(v *CreateResponse_Body) { - x.Body = v -} -func (x *CreateResponse) GetMetaHeader() *ResponseMetaHeader { - if x != nil { - return x.MetaHeader - } - return nil -} -func (x *CreateResponse) SetMetaHeader(v *ResponseMetaHeader) { - x.MetaHeader = v -} -func (x *CreateResponse) GetVerifyHeader() *ResponseVerificationHeader { - if x != nil { - return x.VerifyHeader - } - return nil -} -func (x *CreateResponse) SetVerifyHeader(v *ResponseVerificationHeader) { - x.VerifyHeader = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *CreateResponse) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *CreateResponse) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaHeader\":" - out.RawString(prefix) - x.MetaHeader.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verifyHeader\":" - out.RawString(prefix) - x.VerifyHeader.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *CreateResponse) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *CreateResponse) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *CreateResponse_Body - f = new(CreateResponse_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "metaHeader": - { - var f *ResponseMetaHeader - f = new(ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.MetaHeader = f - } - case "verifyHeader": - { - var f *ResponseVerificationHeader - f = new(ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.VerifyHeader = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/session/grpc/service_frostfs_fuzz.go b/session/grpc/service_frostfs_fuzz.go deleted file mode 100644 index 759361c..0000000 --- a/session/grpc/service_frostfs_fuzz.go +++ /dev/null @@ -1,45 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package session - -func DoFuzzProtoCreateRequest(data []byte) int { - msg := new(CreateRequest) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONCreateRequest(data []byte) int { - msg := new(CreateRequest) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoCreateResponse(data []byte) int { - msg := new(CreateResponse) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONCreateResponse(data []byte) int { - msg := new(CreateResponse) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/session/grpc/service_frostfs_test.go b/session/grpc/service_frostfs_test.go deleted file mode 100644 index fc8664e..0000000 --- a/session/grpc/service_frostfs_test.go +++ /dev/null @@ -1,31 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package session - -import ( - testing "testing" -) - -func FuzzProtoCreateRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoCreateRequest(data) - }) -} -func FuzzJSONCreateRequest(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONCreateRequest(data) - }) -} -func FuzzProtoCreateResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoCreateResponse(data) - }) -} -func FuzzJSONCreateResponse(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONCreateResponse(data) - }) -} diff --git a/session/grpc/service_grpc.pb.go b/session/grpc/service_grpc.pb.go deleted file mode 100644 index adf6fc1..0000000 --- a/session/grpc/service_grpc.pb.go +++ /dev/null @@ -1,119 +0,0 @@ -// Code generated by protoc-gen-go-grpc. DO NOT EDIT. -// versions: -// - protoc-gen-go-grpc v1.3.0 -// - protoc v5.27.2 -// source: session/grpc/service.proto - -package session - -import ( - context "context" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" -) - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -// Requires gRPC-Go v1.32.0 or later. -const _ = grpc.SupportPackageIsVersion7 - -const ( - SessionService_Create_FullMethodName = "/neo.fs.v2.session.SessionService/Create" -) - -// SessionServiceClient is the client API for SessionService service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. -type SessionServiceClient interface { - // Open a new session between two peers. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): - // session has been successfully opened; - // - Common failures (SECTION_FAILURE_COMMON). - Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) -} - -type sessionServiceClient struct { - cc grpc.ClientConnInterface -} - -func NewSessionServiceClient(cc grpc.ClientConnInterface) SessionServiceClient { - return &sessionServiceClient{cc} -} - -func (c *sessionServiceClient) Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error) { - out := new(CreateResponse) - err := c.cc.Invoke(ctx, SessionService_Create_FullMethodName, in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// SessionServiceServer is the server API for SessionService service. -// All implementations should embed UnimplementedSessionServiceServer -// for forward compatibility -type SessionServiceServer interface { - // Open a new session between two peers. - // - // Statuses: - // - **OK** (0, SECTION_SUCCESS): - // session has been successfully opened; - // - Common failures (SECTION_FAILURE_COMMON). - Create(context.Context, *CreateRequest) (*CreateResponse, error) -} - -// UnimplementedSessionServiceServer should be embedded to have forward compatible implementations. -type UnimplementedSessionServiceServer struct { -} - -func (UnimplementedSessionServiceServer) Create(context.Context, *CreateRequest) (*CreateResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Create not implemented") -} - -// UnsafeSessionServiceServer may be embedded to opt out of forward compatibility for this service. -// Use of this interface is not recommended, as added methods to SessionServiceServer will -// result in compilation errors. -type UnsafeSessionServiceServer interface { - mustEmbedUnimplementedSessionServiceServer() -} - -func RegisterSessionServiceServer(s grpc.ServiceRegistrar, srv SessionServiceServer) { - s.RegisterService(&SessionService_ServiceDesc, srv) -} - -func _SessionService_Create_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(CreateRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(SessionServiceServer).Create(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: SessionService_Create_FullMethodName, - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SessionServiceServer).Create(ctx, req.(*CreateRequest)) - } - return interceptor(ctx, in, info, handler) -} - -// SessionService_ServiceDesc is the grpc.ServiceDesc for SessionService service. -// It's only intended for direct use with grpc.RegisterService, -// and not to be introspected or modified (even as a copy) -var SessionService_ServiceDesc = grpc.ServiceDesc{ - ServiceName: "neo.fs.v2.session.SessionService", - HandlerType: (*SessionServiceServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "Create", - Handler: _SessionService_Create_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "session/grpc/service.proto", -} diff --git a/session/grpc/types_frostfs.pb.go b/session/grpc/types_frostfs.pb.go deleted file mode 100644 index 542a02b..0000000 --- a/session/grpc/types_frostfs.pb.go +++ /dev/null @@ -1,3049 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package session - -import ( - json "encoding/json" - fmt "fmt" - grpc1 "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl/grpc" - grpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/grpc" - grpc2 "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/grpc" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" - strconv "strconv" -) - -type ObjectSessionContext_Verb int32 - -const ( - ObjectSessionContext_VERB_UNSPECIFIED ObjectSessionContext_Verb = 0 - ObjectSessionContext_PUT ObjectSessionContext_Verb = 1 - ObjectSessionContext_GET ObjectSessionContext_Verb = 2 - ObjectSessionContext_HEAD ObjectSessionContext_Verb = 3 - ObjectSessionContext_SEARCH ObjectSessionContext_Verb = 4 - ObjectSessionContext_DELETE ObjectSessionContext_Verb = 5 - ObjectSessionContext_RANGE ObjectSessionContext_Verb = 6 - ObjectSessionContext_RANGEHASH ObjectSessionContext_Verb = 7 - ObjectSessionContext_PATCH ObjectSessionContext_Verb = 8 -) - -var ( - ObjectSessionContext_Verb_name = map[int32]string{ - 0: "VERB_UNSPECIFIED", - 1: "PUT", - 2: "GET", - 3: "HEAD", - 4: "SEARCH", - 5: "DELETE", - 6: "RANGE", - 7: "RANGEHASH", - 8: "PATCH", - } - ObjectSessionContext_Verb_value = map[string]int32{ - "VERB_UNSPECIFIED": 0, - "PUT": 1, - "GET": 2, - "HEAD": 3, - "SEARCH": 4, - "DELETE": 5, - "RANGE": 6, - "RANGEHASH": 7, - "PATCH": 8, - } -) - -func (x ObjectSessionContext_Verb) String() string { - if v, ok := ObjectSessionContext_Verb_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *ObjectSessionContext_Verb) FromString(s string) bool { - if v, ok := ObjectSessionContext_Verb_value[s]; ok { - *x = ObjectSessionContext_Verb(v) - return true - } - return false -} - -type ObjectSessionContext_Target struct { - Container *grpc.ContainerID `json:"container"` - Objects []grpc.ObjectID `json:"objects"` -} - -var ( - _ encoding.ProtoMarshaler = (*ObjectSessionContext_Target)(nil) - _ encoding.ProtoUnmarshaler = (*ObjectSessionContext_Target)(nil) - _ json.Marshaler = (*ObjectSessionContext_Target)(nil) - _ json.Unmarshaler = (*ObjectSessionContext_Target)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ObjectSessionContext_Target) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Container) - for i := range x.Objects { - size += proto.NestedStructureSizeUnchecked(2, &x.Objects[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ObjectSessionContext_Target) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ObjectSessionContext_Target) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Container != nil { - x.Container.EmitProtobuf(mm.AppendMessage(1)) - } - for i := range x.Objects { - x.Objects[i].EmitProtobuf(mm.AppendMessage(2)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ObjectSessionContext_Target) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ObjectSessionContext_Target") - } - switch fc.FieldNum { - case 1: // Container - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Container") - } - x.Container = new(grpc.ContainerID) - if err := x.Container.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Objects - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Objects") - } - x.Objects = append(x.Objects, grpc.ObjectID{}) - ff := &x.Objects[len(x.Objects)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ObjectSessionContext_Target) GetContainer() *grpc.ContainerID { - if x != nil { - return x.Container - } - return nil -} -func (x *ObjectSessionContext_Target) SetContainer(v *grpc.ContainerID) { - x.Container = v -} -func (x *ObjectSessionContext_Target) GetObjects() []grpc.ObjectID { - if x != nil { - return x.Objects - } - return nil -} -func (x *ObjectSessionContext_Target) SetObjects(v []grpc.ObjectID) { - x.Objects = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ObjectSessionContext_Target) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ObjectSessionContext_Target) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"container\":" - out.RawString(prefix) - x.Container.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"objects\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Objects { - if i != 0 { - out.RawByte(',') - } - x.Objects[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ObjectSessionContext_Target) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ObjectSessionContext_Target) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "container": - { - var f *grpc.ContainerID - f = new(grpc.ContainerID) - f.UnmarshalEasyJSON(in) - x.Container = f - } - case "objects": - { - var f grpc.ObjectID - var list []grpc.ObjectID - in.Delim('[') - for !in.IsDelim(']') { - f = grpc.ObjectID{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Objects = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ObjectSessionContext struct { - Verb ObjectSessionContext_Verb `json:"verb"` - Target *ObjectSessionContext_Target `json:"target"` -} - -var ( - _ encoding.ProtoMarshaler = (*ObjectSessionContext)(nil) - _ encoding.ProtoUnmarshaler = (*ObjectSessionContext)(nil) - _ json.Marshaler = (*ObjectSessionContext)(nil) - _ json.Unmarshaler = (*ObjectSessionContext)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ObjectSessionContext) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.EnumSize(1, int32(x.Verb)) - size += proto.NestedStructureSize(2, x.Target) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ObjectSessionContext) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ObjectSessionContext) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if int32(x.Verb) != 0 { - mm.AppendInt32(1, int32(x.Verb)) - } - if x.Target != nil { - x.Target.EmitProtobuf(mm.AppendMessage(2)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ObjectSessionContext) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ObjectSessionContext") - } - switch fc.FieldNum { - case 1: // Verb - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Verb") - } - x.Verb = ObjectSessionContext_Verb(data) - case 2: // Target - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Target") - } - x.Target = new(ObjectSessionContext_Target) - if err := x.Target.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ObjectSessionContext) GetVerb() ObjectSessionContext_Verb { - if x != nil { - return x.Verb - } - return 0 -} -func (x *ObjectSessionContext) SetVerb(v ObjectSessionContext_Verb) { - x.Verb = v -} -func (x *ObjectSessionContext) GetTarget() *ObjectSessionContext_Target { - if x != nil { - return x.Target - } - return nil -} -func (x *ObjectSessionContext) SetTarget(v *ObjectSessionContext_Target) { - x.Target = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ObjectSessionContext) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ObjectSessionContext) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verb\":" - out.RawString(prefix) - v := int32(x.Verb) - if vv, ok := ObjectSessionContext_Verb_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"target\":" - out.RawString(prefix) - x.Target.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ObjectSessionContext) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ObjectSessionContext) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "verb": - { - var f ObjectSessionContext_Verb - var parsedValue ObjectSessionContext_Verb - switch v := in.Interface().(type) { - case string: - if vv, ok := ObjectSessionContext_Verb_value[v]; ok { - parsedValue = ObjectSessionContext_Verb(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = ObjectSessionContext_Verb(vv) - case float64: - parsedValue = ObjectSessionContext_Verb(v) - } - f = parsedValue - x.Verb = f - } - case "target": - { - var f *ObjectSessionContext_Target - f = new(ObjectSessionContext_Target) - f.UnmarshalEasyJSON(in) - x.Target = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ContainerSessionContext_Verb int32 - -const ( - ContainerSessionContext_VERB_UNSPECIFIED ContainerSessionContext_Verb = 0 - ContainerSessionContext_PUT ContainerSessionContext_Verb = 1 - ContainerSessionContext_DELETE ContainerSessionContext_Verb = 2 - ContainerSessionContext_SETEACL ContainerSessionContext_Verb = 3 -) - -var ( - ContainerSessionContext_Verb_name = map[int32]string{ - 0: "VERB_UNSPECIFIED", - 1: "PUT", - 2: "DELETE", - 3: "SETEACL", - } - ContainerSessionContext_Verb_value = map[string]int32{ - "VERB_UNSPECIFIED": 0, - "PUT": 1, - "DELETE": 2, - "SETEACL": 3, - } -) - -func (x ContainerSessionContext_Verb) String() string { - if v, ok := ContainerSessionContext_Verb_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *ContainerSessionContext_Verb) FromString(s string) bool { - if v, ok := ContainerSessionContext_Verb_value[s]; ok { - *x = ContainerSessionContext_Verb(v) - return true - } - return false -} - -type ContainerSessionContext struct { - Verb ContainerSessionContext_Verb `json:"verb"` - Wildcard bool `json:"wildcard"` - ContainerId *grpc.ContainerID `json:"containerID"` -} - -var ( - _ encoding.ProtoMarshaler = (*ContainerSessionContext)(nil) - _ encoding.ProtoUnmarshaler = (*ContainerSessionContext)(nil) - _ json.Marshaler = (*ContainerSessionContext)(nil) - _ json.Unmarshaler = (*ContainerSessionContext)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ContainerSessionContext) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.EnumSize(1, int32(x.Verb)) - size += proto.BoolSize(2, x.Wildcard) - size += proto.NestedStructureSize(3, x.ContainerId) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ContainerSessionContext) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ContainerSessionContext) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if int32(x.Verb) != 0 { - mm.AppendInt32(1, int32(x.Verb)) - } - if x.Wildcard { - mm.AppendBool(2, x.Wildcard) - } - if x.ContainerId != nil { - x.ContainerId.EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ContainerSessionContext) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ContainerSessionContext") - } - switch fc.FieldNum { - case 1: // Verb - data, ok := fc.Int32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Verb") - } - x.Verb = ContainerSessionContext_Verb(data) - case 2: // Wildcard - data, ok := fc.Bool() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Wildcard") - } - x.Wildcard = data - case 3: // ContainerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "ContainerId") - } - x.ContainerId = new(grpc.ContainerID) - if err := x.ContainerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ContainerSessionContext) GetVerb() ContainerSessionContext_Verb { - if x != nil { - return x.Verb - } - return 0 -} -func (x *ContainerSessionContext) SetVerb(v ContainerSessionContext_Verb) { - x.Verb = v -} -func (x *ContainerSessionContext) GetWildcard() bool { - if x != nil { - return x.Wildcard - } - return false -} -func (x *ContainerSessionContext) SetWildcard(v bool) { - x.Wildcard = v -} -func (x *ContainerSessionContext) GetContainerId() *grpc.ContainerID { - if x != nil { - return x.ContainerId - } - return nil -} -func (x *ContainerSessionContext) SetContainerId(v *grpc.ContainerID) { - x.ContainerId = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ContainerSessionContext) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ContainerSessionContext) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"verb\":" - out.RawString(prefix) - v := int32(x.Verb) - if vv, ok := ContainerSessionContext_Verb_name[v]; ok { - out.String(vv) - } else { - out.Int32(v) - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"wildcard\":" - out.RawString(prefix) - out.Bool(x.Wildcard) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"containerID\":" - out.RawString(prefix) - x.ContainerId.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ContainerSessionContext) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ContainerSessionContext) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "verb": - { - var f ContainerSessionContext_Verb - var parsedValue ContainerSessionContext_Verb - switch v := in.Interface().(type) { - case string: - if vv, ok := ContainerSessionContext_Verb_value[v]; ok { - parsedValue = ContainerSessionContext_Verb(vv) - break - } - vv, err := strconv.ParseInt(v, 10, 32) - if err != nil { - in.AddError(err) - return - } - parsedValue = ContainerSessionContext_Verb(vv) - case float64: - parsedValue = ContainerSessionContext_Verb(v) - } - f = parsedValue - x.Verb = f - } - case "wildcard": - { - var f bool - f = in.Bool() - x.Wildcard = f - } - case "containerID": - { - var f *grpc.ContainerID - f = new(grpc.ContainerID) - f.UnmarshalEasyJSON(in) - x.ContainerId = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type SessionToken_Body_TokenLifetime struct { - Exp uint64 `json:"exp"` - Nbf uint64 `json:"nbf"` - Iat uint64 `json:"iat"` -} - -var ( - _ encoding.ProtoMarshaler = (*SessionToken_Body_TokenLifetime)(nil) - _ encoding.ProtoUnmarshaler = (*SessionToken_Body_TokenLifetime)(nil) - _ json.Marshaler = (*SessionToken_Body_TokenLifetime)(nil) - _ json.Unmarshaler = (*SessionToken_Body_TokenLifetime)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *SessionToken_Body_TokenLifetime) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.UInt64Size(1, x.Exp) - size += proto.UInt64Size(2, x.Nbf) - size += proto.UInt64Size(3, x.Iat) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *SessionToken_Body_TokenLifetime) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *SessionToken_Body_TokenLifetime) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Exp != 0 { - mm.AppendUint64(1, x.Exp) - } - if x.Nbf != 0 { - mm.AppendUint64(2, x.Nbf) - } - if x.Iat != 0 { - mm.AppendUint64(3, x.Iat) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *SessionToken_Body_TokenLifetime) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "SessionToken_Body_TokenLifetime") - } - switch fc.FieldNum { - case 1: // Exp - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Exp") - } - x.Exp = data - case 2: // Nbf - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Nbf") - } - x.Nbf = data - case 3: // Iat - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Iat") - } - x.Iat = data - } - } - return nil -} -func (x *SessionToken_Body_TokenLifetime) GetExp() uint64 { - if x != nil { - return x.Exp - } - return 0 -} -func (x *SessionToken_Body_TokenLifetime) SetExp(v uint64) { - x.Exp = v -} -func (x *SessionToken_Body_TokenLifetime) GetNbf() uint64 { - if x != nil { - return x.Nbf - } - return 0 -} -func (x *SessionToken_Body_TokenLifetime) SetNbf(v uint64) { - x.Nbf = v -} -func (x *SessionToken_Body_TokenLifetime) GetIat() uint64 { - if x != nil { - return x.Iat - } - return 0 -} -func (x *SessionToken_Body_TokenLifetime) SetIat(v uint64) { - x.Iat = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *SessionToken_Body_TokenLifetime) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *SessionToken_Body_TokenLifetime) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"exp\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.Exp, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"nbf\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.Nbf, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"iat\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.Iat, 10) - out.RawByte('"') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *SessionToken_Body_TokenLifetime) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *SessionToken_Body_TokenLifetime) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "exp": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.Exp = f - } - case "nbf": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.Nbf = f - } - case "iat": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.Iat = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type SessionToken_Body struct { - Id []byte `json:"id"` - OwnerId *grpc.OwnerID `json:"ownerID"` - Lifetime *SessionToken_Body_TokenLifetime `json:"lifetime"` - SessionKey []byte `json:"sessionKey"` - Context isSessionToken_Body_Context -} - -var ( - _ encoding.ProtoMarshaler = (*SessionToken_Body)(nil) - _ encoding.ProtoUnmarshaler = (*SessionToken_Body)(nil) - _ json.Marshaler = (*SessionToken_Body)(nil) - _ json.Unmarshaler = (*SessionToken_Body)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *SessionToken_Body) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.BytesSize(1, x.Id) - size += proto.NestedStructureSize(2, x.OwnerId) - size += proto.NestedStructureSize(3, x.Lifetime) - size += proto.BytesSize(4, x.SessionKey) - if inner, ok := x.Context.(*SessionToken_Body_Object); ok { - size += proto.NestedStructureSize(5, inner.Object) - } - if inner, ok := x.Context.(*SessionToken_Body_Container); ok { - size += proto.NestedStructureSize(6, inner.Container) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *SessionToken_Body) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *SessionToken_Body) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Id) != 0 { - mm.AppendBytes(1, x.Id) - } - if x.OwnerId != nil { - x.OwnerId.EmitProtobuf(mm.AppendMessage(2)) - } - if x.Lifetime != nil { - x.Lifetime.EmitProtobuf(mm.AppendMessage(3)) - } - if len(x.SessionKey) != 0 { - mm.AppendBytes(4, x.SessionKey) - } - if inner, ok := x.Context.(*SessionToken_Body_Object); ok { - if inner.Object != nil { - inner.Object.EmitProtobuf(mm.AppendMessage(5)) - } - } - if inner, ok := x.Context.(*SessionToken_Body_Container); ok { - if inner.Container != nil { - inner.Container.EmitProtobuf(mm.AppendMessage(6)) - } - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *SessionToken_Body) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "SessionToken_Body") - } - switch fc.FieldNum { - case 1: // Id - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Id") - } - x.Id = data - case 2: // OwnerId - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "OwnerId") - } - x.OwnerId = new(grpc.OwnerID) - if err := x.OwnerId.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // Lifetime - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Lifetime") - } - x.Lifetime = new(SessionToken_Body_TokenLifetime) - if err := x.Lifetime.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 4: // SessionKey - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "SessionKey") - } - x.SessionKey = data - case 5: // Object - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Object") - } - oneofField := &SessionToken_Body_Object{Object: new(ObjectSessionContext)} - if err := oneofField.Object.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - x.Context = oneofField - case 6: // Container - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Container") - } - oneofField := &SessionToken_Body_Container{Container: new(ContainerSessionContext)} - if err := oneofField.Container.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - x.Context = oneofField - } - } - return nil -} -func (x *SessionToken_Body) GetId() []byte { - if x != nil { - return x.Id - } - return nil -} -func (x *SessionToken_Body) SetId(v []byte) { - x.Id = v -} -func (x *SessionToken_Body) GetOwnerId() *grpc.OwnerID { - if x != nil { - return x.OwnerId - } - return nil -} -func (x *SessionToken_Body) SetOwnerId(v *grpc.OwnerID) { - x.OwnerId = v -} -func (x *SessionToken_Body) GetLifetime() *SessionToken_Body_TokenLifetime { - if x != nil { - return x.Lifetime - } - return nil -} -func (x *SessionToken_Body) SetLifetime(v *SessionToken_Body_TokenLifetime) { - x.Lifetime = v -} -func (x *SessionToken_Body) GetSessionKey() []byte { - if x != nil { - return x.SessionKey - } - return nil -} -func (x *SessionToken_Body) SetSessionKey(v []byte) { - x.SessionKey = v -} -func (x *SessionToken_Body) GetContext() isSessionToken_Body_Context { - if x != nil { - return x.Context - } - return nil -} -func (x *SessionToken_Body) SetContext(v isSessionToken_Body_Context) { - x.Context = v -} -func (x *SessionToken_Body) GetObject() *ObjectSessionContext { - if xx, ok := x.GetContext().(*SessionToken_Body_Object); ok { - return xx.Object - } - return nil -} -func (x *SessionToken_Body) SetObject(v *ObjectSessionContext) { - x.Context = &SessionToken_Body_Object{Object: v} -} -func (x *SessionToken_Body) GetContainer() *ContainerSessionContext { - if xx, ok := x.GetContext().(*SessionToken_Body_Container); ok { - return xx.Container - } - return nil -} -func (x *SessionToken_Body) SetContainer(v *ContainerSessionContext) { - x.Context = &SessionToken_Body_Container{Container: v} -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *SessionToken_Body) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *SessionToken_Body) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"id\":" - out.RawString(prefix) - if x.Id != nil { - out.Base64Bytes(x.Id) - } else { - out.String("") - } - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ownerID\":" - out.RawString(prefix) - x.OwnerId.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"lifetime\":" - out.RawString(prefix) - x.Lifetime.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"sessionKey\":" - out.RawString(prefix) - if x.SessionKey != nil { - out.Base64Bytes(x.SessionKey) - } else { - out.String("") - } - } - switch xx := x.Context.(type) { - case *SessionToken_Body_Object: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"object\":" - out.RawString(prefix) - xx.Object.MarshalEasyJSON(out) - } - case *SessionToken_Body_Container: - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"container\":" - out.RawString(prefix) - xx.Container.MarshalEasyJSON(out) - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *SessionToken_Body) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *SessionToken_Body) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "id": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Id = f - } - case "ownerID": - { - var f *grpc.OwnerID - f = new(grpc.OwnerID) - f.UnmarshalEasyJSON(in) - x.OwnerId = f - } - case "lifetime": - { - var f *SessionToken_Body_TokenLifetime - f = new(SessionToken_Body_TokenLifetime) - f.UnmarshalEasyJSON(in) - x.Lifetime = f - } - case "sessionKey": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.SessionKey = f - } - case "object": - xx := new(SessionToken_Body_Object) - x.Context = xx - { - var f *ObjectSessionContext - f = new(ObjectSessionContext) - f.UnmarshalEasyJSON(in) - xx.Object = f - } - case "container": - xx := new(SessionToken_Body_Container) - x.Context = xx - { - var f *ContainerSessionContext - f = new(ContainerSessionContext) - f.UnmarshalEasyJSON(in) - xx.Container = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type isSessionToken_Body_Context interface { - isSessionToken_Body_Context() -} - -type SessionToken_Body_Object struct { - Object *ObjectSessionContext -} - -type SessionToken_Body_Container struct { - Container *ContainerSessionContext -} - -func (*SessionToken_Body_Object) isSessionToken_Body_Context() {} - -func (*SessionToken_Body_Container) isSessionToken_Body_Context() {} - -type SessionToken struct { - Body *SessionToken_Body `json:"body"` - Signature *grpc.Signature `json:"signature"` -} - -var ( - _ encoding.ProtoMarshaler = (*SessionToken)(nil) - _ encoding.ProtoUnmarshaler = (*SessionToken)(nil) - _ json.Marshaler = (*SessionToken)(nil) - _ json.Unmarshaler = (*SessionToken)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *SessionToken) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Body) - size += proto.NestedStructureSize(2, x.Signature) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *SessionToken) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *SessionToken) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Body != nil { - x.Body.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Signature != nil { - x.Signature.EmitProtobuf(mm.AppendMessage(2)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *SessionToken) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "SessionToken") - } - switch fc.FieldNum { - case 1: // Body - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Body") - } - x.Body = new(SessionToken_Body) - if err := x.Body.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Signature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Signature") - } - x.Signature = new(grpc.Signature) - if err := x.Signature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *SessionToken) GetBody() *SessionToken_Body { - if x != nil { - return x.Body - } - return nil -} -func (x *SessionToken) SetBody(v *SessionToken_Body) { - x.Body = v -} -func (x *SessionToken) GetSignature() *grpc.Signature { - if x != nil { - return x.Signature - } - return nil -} -func (x *SessionToken) SetSignature(v *grpc.Signature) { - x.Signature = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *SessionToken) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *SessionToken) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"body\":" - out.RawString(prefix) - x.Body.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"signature\":" - out.RawString(prefix) - x.Signature.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *SessionToken) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *SessionToken) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "body": - { - var f *SessionToken_Body - f = new(SessionToken_Body) - f.UnmarshalEasyJSON(in) - x.Body = f - } - case "signature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.Signature = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type XHeader struct { - Key string `json:"key"` - Value string `json:"value"` -} - -var ( - _ encoding.ProtoMarshaler = (*XHeader)(nil) - _ encoding.ProtoUnmarshaler = (*XHeader)(nil) - _ json.Marshaler = (*XHeader)(nil) - _ json.Unmarshaler = (*XHeader)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *XHeader) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.StringSize(1, x.Key) - size += proto.StringSize(2, x.Value) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *XHeader) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *XHeader) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if len(x.Key) != 0 { - mm.AppendString(1, x.Key) - } - if len(x.Value) != 0 { - mm.AppendString(2, x.Value) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *XHeader) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "XHeader") - } - switch fc.FieldNum { - case 1: // Key - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Key") - } - x.Key = data - case 2: // Value - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - } - } - return nil -} -func (x *XHeader) GetKey() string { - if x != nil { - return x.Key - } - return "" -} -func (x *XHeader) SetKey(v string) { - x.Key = v -} -func (x *XHeader) GetValue() string { - if x != nil { - return x.Value - } - return "" -} -func (x *XHeader) SetValue(v string) { - x.Value = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *XHeader) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *XHeader) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"key\":" - out.RawString(prefix) - out.String(x.Key) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - out.String(x.Value) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *XHeader) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *XHeader) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "key": - { - var f string - f = in.String() - x.Key = f - } - case "value": - { - var f string - f = in.String() - x.Value = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type RequestMetaHeader struct { - Version *grpc.Version `json:"version"` - Epoch uint64 `json:"epoch"` - Ttl uint32 `json:"ttl"` - XHeaders []XHeader `json:"xHeaders"` - SessionToken *SessionToken `json:"sessionToken"` - BearerToken *grpc1.BearerToken `json:"bearerToken"` - Origin *RequestMetaHeader `json:"origin"` - MagicNumber uint64 `json:"magicNumber"` -} - -var ( - _ encoding.ProtoMarshaler = (*RequestMetaHeader)(nil) - _ encoding.ProtoUnmarshaler = (*RequestMetaHeader)(nil) - _ json.Marshaler = (*RequestMetaHeader)(nil) - _ json.Unmarshaler = (*RequestMetaHeader)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *RequestMetaHeader) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Version) - size += proto.UInt64Size(2, x.Epoch) - size += proto.UInt32Size(3, x.Ttl) - for i := range x.XHeaders { - size += proto.NestedStructureSizeUnchecked(4, &x.XHeaders[i]) - } - size += proto.NestedStructureSize(5, x.SessionToken) - size += proto.NestedStructureSize(6, x.BearerToken) - size += proto.NestedStructureSize(7, x.Origin) - size += proto.UInt64Size(8, x.MagicNumber) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *RequestMetaHeader) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *RequestMetaHeader) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Version != nil { - x.Version.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Epoch != 0 { - mm.AppendUint64(2, x.Epoch) - } - if x.Ttl != 0 { - mm.AppendUint32(3, x.Ttl) - } - for i := range x.XHeaders { - x.XHeaders[i].EmitProtobuf(mm.AppendMessage(4)) - } - if x.SessionToken != nil { - x.SessionToken.EmitProtobuf(mm.AppendMessage(5)) - } - if x.BearerToken != nil { - x.BearerToken.EmitProtobuf(mm.AppendMessage(6)) - } - if x.Origin != nil { - x.Origin.EmitProtobuf(mm.AppendMessage(7)) - } - if x.MagicNumber != 0 { - mm.AppendUint64(8, x.MagicNumber) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *RequestMetaHeader) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "RequestMetaHeader") - } - switch fc.FieldNum { - case 1: // Version - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Version") - } - x.Version = new(grpc.Version) - if err := x.Version.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Epoch - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Epoch") - } - x.Epoch = data - case 3: // Ttl - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Ttl") - } - x.Ttl = data - case 4: // XHeaders - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "XHeaders") - } - x.XHeaders = append(x.XHeaders, XHeader{}) - ff := &x.XHeaders[len(x.XHeaders)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 5: // SessionToken - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "SessionToken") - } - x.SessionToken = new(SessionToken) - if err := x.SessionToken.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 6: // BearerToken - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "BearerToken") - } - x.BearerToken = new(grpc1.BearerToken) - if err := x.BearerToken.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 7: // Origin - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Origin") - } - x.Origin = new(RequestMetaHeader) - if err := x.Origin.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 8: // MagicNumber - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MagicNumber") - } - x.MagicNumber = data - } - } - return nil -} -func (x *RequestMetaHeader) GetVersion() *grpc.Version { - if x != nil { - return x.Version - } - return nil -} -func (x *RequestMetaHeader) SetVersion(v *grpc.Version) { - x.Version = v -} -func (x *RequestMetaHeader) GetEpoch() uint64 { - if x != nil { - return x.Epoch - } - return 0 -} -func (x *RequestMetaHeader) SetEpoch(v uint64) { - x.Epoch = v -} -func (x *RequestMetaHeader) GetTtl() uint32 { - if x != nil { - return x.Ttl - } - return 0 -} -func (x *RequestMetaHeader) SetTtl(v uint32) { - x.Ttl = v -} -func (x *RequestMetaHeader) GetXHeaders() []XHeader { - if x != nil { - return x.XHeaders - } - return nil -} -func (x *RequestMetaHeader) SetXHeaders(v []XHeader) { - x.XHeaders = v -} -func (x *RequestMetaHeader) GetSessionToken() *SessionToken { - if x != nil { - return x.SessionToken - } - return nil -} -func (x *RequestMetaHeader) SetSessionToken(v *SessionToken) { - x.SessionToken = v -} -func (x *RequestMetaHeader) GetBearerToken() *grpc1.BearerToken { - if x != nil { - return x.BearerToken - } - return nil -} -func (x *RequestMetaHeader) SetBearerToken(v *grpc1.BearerToken) { - x.BearerToken = v -} -func (x *RequestMetaHeader) GetOrigin() *RequestMetaHeader { - if x != nil { - return x.Origin - } - return nil -} -func (x *RequestMetaHeader) SetOrigin(v *RequestMetaHeader) { - x.Origin = v -} -func (x *RequestMetaHeader) GetMagicNumber() uint64 { - if x != nil { - return x.MagicNumber - } - return 0 -} -func (x *RequestMetaHeader) SetMagicNumber(v uint64) { - x.MagicNumber = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *RequestMetaHeader) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *RequestMetaHeader) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"version\":" - out.RawString(prefix) - x.Version.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"epoch\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.Epoch, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ttl\":" - out.RawString(prefix) - out.Uint32(x.Ttl) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"xHeaders\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.XHeaders { - if i != 0 { - out.RawByte(',') - } - x.XHeaders[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"sessionToken\":" - out.RawString(prefix) - x.SessionToken.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"bearerToken\":" - out.RawString(prefix) - x.BearerToken.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"origin\":" - out.RawString(prefix) - x.Origin.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"magicNumber\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.MagicNumber, 10) - out.RawByte('"') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *RequestMetaHeader) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *RequestMetaHeader) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "version": - { - var f *grpc.Version - f = new(grpc.Version) - f.UnmarshalEasyJSON(in) - x.Version = f - } - case "epoch": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.Epoch = f - } - case "ttl": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Ttl = f - } - case "xHeaders": - { - var f XHeader - var list []XHeader - in.Delim('[') - for !in.IsDelim(']') { - f = XHeader{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.XHeaders = list - in.Delim(']') - } - case "sessionToken": - { - var f *SessionToken - f = new(SessionToken) - f.UnmarshalEasyJSON(in) - x.SessionToken = f - } - case "bearerToken": - { - var f *grpc1.BearerToken - f = new(grpc1.BearerToken) - f.UnmarshalEasyJSON(in) - x.BearerToken = f - } - case "origin": - { - var f *RequestMetaHeader - f = new(RequestMetaHeader) - f.UnmarshalEasyJSON(in) - x.Origin = f - } - case "magicNumber": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.MagicNumber = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ResponseMetaHeader struct { - Version *grpc.Version `json:"version"` - Epoch uint64 `json:"epoch"` - Ttl uint32 `json:"ttl"` - XHeaders []XHeader `json:"xHeaders"` - Origin *ResponseMetaHeader `json:"origin"` - Status *grpc2.Status `json:"status"` -} - -var ( - _ encoding.ProtoMarshaler = (*ResponseMetaHeader)(nil) - _ encoding.ProtoUnmarshaler = (*ResponseMetaHeader)(nil) - _ json.Marshaler = (*ResponseMetaHeader)(nil) - _ json.Unmarshaler = (*ResponseMetaHeader)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ResponseMetaHeader) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.Version) - size += proto.UInt64Size(2, x.Epoch) - size += proto.UInt32Size(3, x.Ttl) - for i := range x.XHeaders { - size += proto.NestedStructureSizeUnchecked(4, &x.XHeaders[i]) - } - size += proto.NestedStructureSize(5, x.Origin) - size += proto.NestedStructureSize(6, x.Status) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ResponseMetaHeader) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ResponseMetaHeader) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Version != nil { - x.Version.EmitProtobuf(mm.AppendMessage(1)) - } - if x.Epoch != 0 { - mm.AppendUint64(2, x.Epoch) - } - if x.Ttl != 0 { - mm.AppendUint32(3, x.Ttl) - } - for i := range x.XHeaders { - x.XHeaders[i].EmitProtobuf(mm.AppendMessage(4)) - } - if x.Origin != nil { - x.Origin.EmitProtobuf(mm.AppendMessage(5)) - } - if x.Status != nil { - x.Status.EmitProtobuf(mm.AppendMessage(6)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ResponseMetaHeader) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ResponseMetaHeader") - } - switch fc.FieldNum { - case 1: // Version - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Version") - } - x.Version = new(grpc.Version) - if err := x.Version.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // Epoch - data, ok := fc.Uint64() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Epoch") - } - x.Epoch = data - case 3: // Ttl - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Ttl") - } - x.Ttl = data - case 4: // XHeaders - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "XHeaders") - } - x.XHeaders = append(x.XHeaders, XHeader{}) - ff := &x.XHeaders[len(x.XHeaders)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 5: // Origin - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Origin") - } - x.Origin = new(ResponseMetaHeader) - if err := x.Origin.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 6: // Status - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Status") - } - x.Status = new(grpc2.Status) - if err := x.Status.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ResponseMetaHeader) GetVersion() *grpc.Version { - if x != nil { - return x.Version - } - return nil -} -func (x *ResponseMetaHeader) SetVersion(v *grpc.Version) { - x.Version = v -} -func (x *ResponseMetaHeader) GetEpoch() uint64 { - if x != nil { - return x.Epoch - } - return 0 -} -func (x *ResponseMetaHeader) SetEpoch(v uint64) { - x.Epoch = v -} -func (x *ResponseMetaHeader) GetTtl() uint32 { - if x != nil { - return x.Ttl - } - return 0 -} -func (x *ResponseMetaHeader) SetTtl(v uint32) { - x.Ttl = v -} -func (x *ResponseMetaHeader) GetXHeaders() []XHeader { - if x != nil { - return x.XHeaders - } - return nil -} -func (x *ResponseMetaHeader) SetXHeaders(v []XHeader) { - x.XHeaders = v -} -func (x *ResponseMetaHeader) GetOrigin() *ResponseMetaHeader { - if x != nil { - return x.Origin - } - return nil -} -func (x *ResponseMetaHeader) SetOrigin(v *ResponseMetaHeader) { - x.Origin = v -} -func (x *ResponseMetaHeader) GetStatus() *grpc2.Status { - if x != nil { - return x.Status - } - return nil -} -func (x *ResponseMetaHeader) SetStatus(v *grpc2.Status) { - x.Status = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ResponseMetaHeader) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ResponseMetaHeader) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"version\":" - out.RawString(prefix) - x.Version.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"epoch\":" - out.RawString(prefix) - out.RawByte('"') - out.Buffer.Buf = strconv.AppendUint(out.Buffer.Buf, x.Epoch, 10) - out.RawByte('"') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"ttl\":" - out.RawString(prefix) - out.Uint32(x.Ttl) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"xHeaders\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.XHeaders { - if i != 0 { - out.RawByte(',') - } - x.XHeaders[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"origin\":" - out.RawString(prefix) - x.Origin.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"status\":" - out.RawString(prefix) - x.Status.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ResponseMetaHeader) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ResponseMetaHeader) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "version": - { - var f *grpc.Version - f = new(grpc.Version) - f.UnmarshalEasyJSON(in) - x.Version = f - } - case "epoch": - { - var f uint64 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 64) - if err != nil { - in.AddError(err) - return - } - pv := uint64(v) - f = pv - x.Epoch = f - } - case "ttl": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Ttl = f - } - case "xHeaders": - { - var f XHeader - var list []XHeader - in.Delim('[') - for !in.IsDelim(']') { - f = XHeader{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.XHeaders = list - in.Delim(']') - } - case "origin": - { - var f *ResponseMetaHeader - f = new(ResponseMetaHeader) - f.UnmarshalEasyJSON(in) - x.Origin = f - } - case "status": - { - var f *grpc2.Status - f = new(grpc2.Status) - f.UnmarshalEasyJSON(in) - x.Status = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type RequestVerificationHeader struct { - BodySignature *grpc.Signature `json:"bodySignature"` - MetaSignature *grpc.Signature `json:"metaSignature"` - OriginSignature *grpc.Signature `json:"originSignature"` - Origin *RequestVerificationHeader `json:"origin"` -} - -var ( - _ encoding.ProtoMarshaler = (*RequestVerificationHeader)(nil) - _ encoding.ProtoUnmarshaler = (*RequestVerificationHeader)(nil) - _ json.Marshaler = (*RequestVerificationHeader)(nil) - _ json.Unmarshaler = (*RequestVerificationHeader)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *RequestVerificationHeader) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.BodySignature) - size += proto.NestedStructureSize(2, x.MetaSignature) - size += proto.NestedStructureSize(3, x.OriginSignature) - size += proto.NestedStructureSize(4, x.Origin) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *RequestVerificationHeader) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *RequestVerificationHeader) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.BodySignature != nil { - x.BodySignature.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaSignature != nil { - x.MetaSignature.EmitProtobuf(mm.AppendMessage(2)) - } - if x.OriginSignature != nil { - x.OriginSignature.EmitProtobuf(mm.AppendMessage(3)) - } - if x.Origin != nil { - x.Origin.EmitProtobuf(mm.AppendMessage(4)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *RequestVerificationHeader) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "RequestVerificationHeader") - } - switch fc.FieldNum { - case 1: // BodySignature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "BodySignature") - } - x.BodySignature = new(grpc.Signature) - if err := x.BodySignature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaSignature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaSignature") - } - x.MetaSignature = new(grpc.Signature) - if err := x.MetaSignature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // OriginSignature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "OriginSignature") - } - x.OriginSignature = new(grpc.Signature) - if err := x.OriginSignature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 4: // Origin - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Origin") - } - x.Origin = new(RequestVerificationHeader) - if err := x.Origin.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *RequestVerificationHeader) GetBodySignature() *grpc.Signature { - if x != nil { - return x.BodySignature - } - return nil -} -func (x *RequestVerificationHeader) SetBodySignature(v *grpc.Signature) { - x.BodySignature = v -} -func (x *RequestVerificationHeader) GetMetaSignature() *grpc.Signature { - if x != nil { - return x.MetaSignature - } - return nil -} -func (x *RequestVerificationHeader) SetMetaSignature(v *grpc.Signature) { - x.MetaSignature = v -} -func (x *RequestVerificationHeader) GetOriginSignature() *grpc.Signature { - if x != nil { - return x.OriginSignature - } - return nil -} -func (x *RequestVerificationHeader) SetOriginSignature(v *grpc.Signature) { - x.OriginSignature = v -} -func (x *RequestVerificationHeader) GetOrigin() *RequestVerificationHeader { - if x != nil { - return x.Origin - } - return nil -} -func (x *RequestVerificationHeader) SetOrigin(v *RequestVerificationHeader) { - x.Origin = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *RequestVerificationHeader) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *RequestVerificationHeader) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"bodySignature\":" - out.RawString(prefix) - x.BodySignature.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaSignature\":" - out.RawString(prefix) - x.MetaSignature.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"originSignature\":" - out.RawString(prefix) - x.OriginSignature.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"origin\":" - out.RawString(prefix) - x.Origin.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *RequestVerificationHeader) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *RequestVerificationHeader) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "bodySignature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.BodySignature = f - } - case "metaSignature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.MetaSignature = f - } - case "originSignature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.OriginSignature = f - } - case "origin": - { - var f *RequestVerificationHeader - f = new(RequestVerificationHeader) - f.UnmarshalEasyJSON(in) - x.Origin = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type ResponseVerificationHeader struct { - BodySignature *grpc.Signature `json:"bodySignature"` - MetaSignature *grpc.Signature `json:"metaSignature"` - OriginSignature *grpc.Signature `json:"originSignature"` - Origin *ResponseVerificationHeader `json:"origin"` -} - -var ( - _ encoding.ProtoMarshaler = (*ResponseVerificationHeader)(nil) - _ encoding.ProtoUnmarshaler = (*ResponseVerificationHeader)(nil) - _ json.Marshaler = (*ResponseVerificationHeader)(nil) - _ json.Unmarshaler = (*ResponseVerificationHeader)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *ResponseVerificationHeader) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.NestedStructureSize(1, x.BodySignature) - size += proto.NestedStructureSize(2, x.MetaSignature) - size += proto.NestedStructureSize(3, x.OriginSignature) - size += proto.NestedStructureSize(4, x.Origin) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *ResponseVerificationHeader) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *ResponseVerificationHeader) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.BodySignature != nil { - x.BodySignature.EmitProtobuf(mm.AppendMessage(1)) - } - if x.MetaSignature != nil { - x.MetaSignature.EmitProtobuf(mm.AppendMessage(2)) - } - if x.OriginSignature != nil { - x.OriginSignature.EmitProtobuf(mm.AppendMessage(3)) - } - if x.Origin != nil { - x.Origin.EmitProtobuf(mm.AppendMessage(4)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *ResponseVerificationHeader) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "ResponseVerificationHeader") - } - switch fc.FieldNum { - case 1: // BodySignature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "BodySignature") - } - x.BodySignature = new(grpc.Signature) - if err := x.BodySignature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 2: // MetaSignature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "MetaSignature") - } - x.MetaSignature = new(grpc.Signature) - if err := x.MetaSignature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 3: // OriginSignature - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "OriginSignature") - } - x.OriginSignature = new(grpc.Signature) - if err := x.OriginSignature.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - case 4: // Origin - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Origin") - } - x.Origin = new(ResponseVerificationHeader) - if err := x.Origin.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *ResponseVerificationHeader) GetBodySignature() *grpc.Signature { - if x != nil { - return x.BodySignature - } - return nil -} -func (x *ResponseVerificationHeader) SetBodySignature(v *grpc.Signature) { - x.BodySignature = v -} -func (x *ResponseVerificationHeader) GetMetaSignature() *grpc.Signature { - if x != nil { - return x.MetaSignature - } - return nil -} -func (x *ResponseVerificationHeader) SetMetaSignature(v *grpc.Signature) { - x.MetaSignature = v -} -func (x *ResponseVerificationHeader) GetOriginSignature() *grpc.Signature { - if x != nil { - return x.OriginSignature - } - return nil -} -func (x *ResponseVerificationHeader) SetOriginSignature(v *grpc.Signature) { - x.OriginSignature = v -} -func (x *ResponseVerificationHeader) GetOrigin() *ResponseVerificationHeader { - if x != nil { - return x.Origin - } - return nil -} -func (x *ResponseVerificationHeader) SetOrigin(v *ResponseVerificationHeader) { - x.Origin = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *ResponseVerificationHeader) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *ResponseVerificationHeader) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"bodySignature\":" - out.RawString(prefix) - x.BodySignature.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"metaSignature\":" - out.RawString(prefix) - x.MetaSignature.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"originSignature\":" - out.RawString(prefix) - x.OriginSignature.MarshalEasyJSON(out) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"origin\":" - out.RawString(prefix) - x.Origin.MarshalEasyJSON(out) - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *ResponseVerificationHeader) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *ResponseVerificationHeader) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "bodySignature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.BodySignature = f - } - case "metaSignature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.MetaSignature = f - } - case "originSignature": - { - var f *grpc.Signature - f = new(grpc.Signature) - f.UnmarshalEasyJSON(in) - x.OriginSignature = f - } - case "origin": - { - var f *ResponseVerificationHeader - f = new(ResponseVerificationHeader) - f.UnmarshalEasyJSON(in) - x.Origin = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/session/grpc/types_frostfs_fuzz.go b/session/grpc/types_frostfs_fuzz.go deleted file mode 100644 index fae4a05..0000000 --- a/session/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,159 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package session - -func DoFuzzProtoObjectSessionContext(data []byte) int { - msg := new(ObjectSessionContext) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONObjectSessionContext(data []byte) int { - msg := new(ObjectSessionContext) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoContainerSessionContext(data []byte) int { - msg := new(ContainerSessionContext) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONContainerSessionContext(data []byte) int { - msg := new(ContainerSessionContext) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoSessionToken(data []byte) int { - msg := new(SessionToken) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONSessionToken(data []byte) int { - msg := new(SessionToken) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoXHeader(data []byte) int { - msg := new(XHeader) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONXHeader(data []byte) int { - msg := new(XHeader) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoRequestMetaHeader(data []byte) int { - msg := new(RequestMetaHeader) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONRequestMetaHeader(data []byte) int { - msg := new(RequestMetaHeader) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoResponseMetaHeader(data []byte) int { - msg := new(ResponseMetaHeader) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONResponseMetaHeader(data []byte) int { - msg := new(ResponseMetaHeader) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoRequestVerificationHeader(data []byte) int { - msg := new(RequestVerificationHeader) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONRequestVerificationHeader(data []byte) int { - msg := new(RequestVerificationHeader) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} -func DoFuzzProtoResponseVerificationHeader(data []byte) int { - msg := new(ResponseVerificationHeader) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONResponseVerificationHeader(data []byte) int { - msg := new(ResponseVerificationHeader) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/session/grpc/types_frostfs_test.go b/session/grpc/types_frostfs_test.go deleted file mode 100644 index 5c9b6c2..0000000 --- a/session/grpc/types_frostfs_test.go +++ /dev/null @@ -1,91 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package session - -import ( - testing "testing" -) - -func FuzzProtoObjectSessionContext(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoObjectSessionContext(data) - }) -} -func FuzzJSONObjectSessionContext(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONObjectSessionContext(data) - }) -} -func FuzzProtoContainerSessionContext(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoContainerSessionContext(data) - }) -} -func FuzzJSONContainerSessionContext(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONContainerSessionContext(data) - }) -} -func FuzzProtoSessionToken(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoSessionToken(data) - }) -} -func FuzzJSONSessionToken(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONSessionToken(data) - }) -} -func FuzzProtoXHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoXHeader(data) - }) -} -func FuzzJSONXHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONXHeader(data) - }) -} -func FuzzProtoRequestMetaHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoRequestMetaHeader(data) - }) -} -func FuzzJSONRequestMetaHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONRequestMetaHeader(data) - }) -} -func FuzzProtoResponseMetaHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoResponseMetaHeader(data) - }) -} -func FuzzJSONResponseMetaHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONResponseMetaHeader(data) - }) -} -func FuzzProtoRequestVerificationHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoRequestVerificationHeader(data) - }) -} -func FuzzJSONRequestVerificationHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONRequestVerificationHeader(data) - }) -} -func FuzzProtoResponseVerificationHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoResponseVerificationHeader(data) - }) -} -func FuzzJSONResponseVerificationHeader(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONResponseVerificationHeader(data) - }) -} diff --git a/session/json.go b/session/json.go deleted file mode 100644 index e157fc3..0000000 --- a/session/json.go +++ /dev/null @@ -1,86 +0,0 @@ -package session - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - session "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" -) - -func (c *ObjectSessionContext) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(c) -} - -func (c *ObjectSessionContext) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(c, data, new(session.ObjectSessionContext)) -} - -func (l *TokenLifetime) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(l) -} - -func (l *TokenLifetime) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(l, data, new(session.SessionToken_Body_TokenLifetime)) -} - -func (t *TokenBody) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(t) -} - -func (t *TokenBody) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(t, data, new(session.SessionToken_Body)) -} - -func (t *Token) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(t) -} - -func (t *Token) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(t, data, new(session.SessionToken)) -} - -func (x *XHeader) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(x) -} - -func (x *XHeader) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(x, data, new(session.XHeader)) -} - -func (r *RequestMetaHeader) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(r) -} - -func (r *RequestMetaHeader) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(r, data, new(session.RequestMetaHeader)) -} - -func (r *RequestVerificationHeader) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(r) -} - -func (r *RequestVerificationHeader) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(r, data, new(session.RequestVerificationHeader)) -} - -func (r *ResponseMetaHeader) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(r) -} - -func (r *ResponseMetaHeader) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(r, data, new(session.ResponseMetaHeader)) -} - -func (r *ResponseVerificationHeader) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(r) -} - -func (r *ResponseVerificationHeader) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(r, data, new(session.ResponseVerificationHeader)) -} - -func (x *ContainerSessionContext) MarshalJSON() ([]byte, error) { - return message.MarshalJSON(x) -} - -func (x *ContainerSessionContext) UnmarshalJSON(data []byte) error { - return message.UnmarshalJSON(x, data, new(session.ContainerSessionContext)) -} diff --git a/session/marshal.go b/session/marshal.go deleted file mode 100644 index c9ca34b..0000000 --- a/session/marshal.go +++ /dev/null @@ -1,536 +0,0 @@ -package session - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - session "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" -) - -const ( - createReqBodyOwnerField = 1 - createReqBodyExpirationField = 2 - - createRespBodyIDField = 1 - createRespBodyKeyField = 2 - - xheaderKeyField = 1 - xheaderValueField = 2 - - lifetimeExpirationField = 1 - lifetimeNotValidBeforeField = 2 - lifetimeIssuedAtField = 3 - - objectCtxVerbField = 1 - objectCtxTargetField = 2 - - sessionTokenBodyIDField = 1 - sessionTokenBodyOwnerField = 2 - sessionTokenBodyLifetimeField = 3 - sessionTokenBodyKeyField = 4 - sessionTokenBodyObjectCtxField = 5 - sessionTokenBodyCnrCtxField = 6 - - sessionTokenBodyField = 1 - sessionTokenSignatureField = 2 - - reqMetaHeaderVersionField = 1 - reqMetaHeaderEpochField = 2 - reqMetaHeaderTTLField = 3 - reqMetaHeaderXHeadersField = 4 - reqMetaHeaderSessionTokenField = 5 - reqMetaHeaderBearerTokenField = 6 - reqMetaHeaderOriginField = 7 - reqMetaHeaderNetMagicField = 8 - - reqVerifHeaderBodySignatureField = 1 - reqVerifHeaderMetaSignatureField = 2 - reqVerifHeaderOriginSignatureField = 3 - reqVerifHeaderOriginField = 4 - - respMetaHeaderVersionField = 1 - respMetaHeaderEpochField = 2 - respMetaHeaderTTLField = 3 - respMetaHeaderXHeadersField = 4 - respMetaHeaderOriginField = 5 - respMetaHeaderStatusField = 6 - - respVerifHeaderBodySignatureField = 1 - respVerifHeaderMetaSignatureField = 2 - respVerifHeaderOriginSignatureField = 3 - respVerifHeaderOriginField = 4 -) - -func (c *CreateRequestBody) StableMarshal(buf []byte) []byte { - if c == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, c.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(createReqBodyOwnerField, buf[offset:], c.ownerID) - proto.UInt64Marshal(createReqBodyExpirationField, buf[offset:], c.expiration) - - return buf -} - -func (c *CreateRequestBody) StableSize() (size int) { - if c == nil { - return 0 - } - - size += proto.NestedStructureSize(createReqBodyOwnerField, c.ownerID) - size += proto.UInt64Size(createReqBodyExpirationField, c.expiration) - - return size -} - -func (c *CreateRequestBody) Unmarshal(data []byte) error { - return message.Unmarshal(c, data, new(session.CreateRequest_Body)) -} - -func (c *CreateResponseBody) StableMarshal(buf []byte) []byte { - if c == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, c.StableSize()) - } - - var offset int - - offset += proto.BytesMarshal(createRespBodyIDField, buf[offset:], c.id) - proto.BytesMarshal(createRespBodyKeyField, buf[offset:], c.sessionKey) - - return buf -} - -func (c *CreateResponseBody) StableSize() (size int) { - if c == nil { - return 0 - } - - size += proto.BytesSize(createRespBodyIDField, c.id) - size += proto.BytesSize(createRespBodyKeyField, c.sessionKey) - - return size -} - -func (c *CreateResponseBody) Unmarshal(data []byte) error { - return message.Unmarshal(c, data, new(session.CreateResponse_Body)) -} - -func (x *XHeader) StableMarshal(buf []byte) []byte { - if x == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, x.StableSize()) - } - - var offset int - - offset += proto.StringMarshal(xheaderKeyField, buf[offset:], x.key) - proto.StringMarshal(xheaderValueField, buf[offset:], x.val) - - return buf -} - -func (x *XHeader) StableSize() (size int) { - if x == nil { - return 0 - } - - size += proto.StringSize(xheaderKeyField, x.key) - size += proto.StringSize(xheaderValueField, x.val) - - return size -} - -func (x *XHeader) Unmarshal(data []byte) error { - return message.Unmarshal(x, data, new(session.XHeader)) -} - -func (l *TokenLifetime) StableMarshal(buf []byte) []byte { - if l == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, l.StableSize()) - } - - var offset int - - offset += proto.UInt64Marshal(lifetimeExpirationField, buf[offset:], l.exp) - offset += proto.UInt64Marshal(lifetimeNotValidBeforeField, buf[offset:], l.nbf) - proto.UInt64Marshal(lifetimeIssuedAtField, buf[offset:], l.iat) - - return buf -} - -func (l *TokenLifetime) StableSize() (size int) { - if l == nil { - return 0 - } - - size += proto.UInt64Size(lifetimeExpirationField, l.exp) - size += proto.UInt64Size(lifetimeNotValidBeforeField, l.nbf) - size += proto.UInt64Size(lifetimeIssuedAtField, l.iat) - - return size -} - -func (l *TokenLifetime) Unmarshal(data []byte) error { - return message.Unmarshal(l, data, new(session.SessionToken_Body_TokenLifetime)) -} - -func (c *ObjectSessionContext) StableMarshal(buf []byte) []byte { - if c == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, c.StableSize()) - } - - offset := proto.EnumMarshal(objectCtxVerbField, buf, int32(c.verb)) - proto.NestedStructureMarshalUnchecked(objectCtxTargetField, buf[offset:], objectSessionContextTarget{ - cnr: c.cnr, - objs: c.objs, - }) - - return buf -} - -func (c *ObjectSessionContext) StableSize() (size int) { - if c == nil { - return 0 - } - - size += proto.EnumSize(objectCtxVerbField, int32(c.verb)) - size += proto.NestedStructureSizeUnchecked(objectCtxTargetField, objectSessionContextTarget{ - cnr: c.cnr, - objs: c.objs, - }) - - return size -} - -func (c *ObjectSessionContext) Unmarshal(data []byte) error { - return message.Unmarshal(c, data, new(session.ObjectSessionContext)) -} - -const ( - _ = iota - cnrCtxVerbFNum - cnrCtxWildcardFNum - cnrCtxCidFNum -) - -func (x *ContainerSessionContext) StableMarshal(buf []byte) []byte { - if x == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, x.StableSize()) - } - - var offset int - - offset += proto.EnumMarshal(cnrCtxVerbFNum, buf[offset:], int32(ContainerSessionVerbToGRPCField(x.verb))) - offset += proto.BoolMarshal(cnrCtxWildcardFNum, buf[offset:], x.wildcard) - proto.NestedStructureMarshal(cnrCtxCidFNum, buf[offset:], x.cid) - - return buf -} - -func (x *ContainerSessionContext) StableSize() (size int) { - if x == nil { - return 0 - } - - size += proto.EnumSize(cnrCtxVerbFNum, int32(ContainerSessionVerbToGRPCField(x.verb))) - size += proto.BoolSize(cnrCtxWildcardFNum, x.wildcard) - size += proto.NestedStructureSize(cnrCtxCidFNum, x.cid) - - return size -} - -func (x *ContainerSessionContext) Unmarshal(data []byte) error { - return message.Unmarshal(x, data, new(session.ContainerSessionContext)) -} - -func (t *TokenBody) StableMarshal(buf []byte) []byte { - if t == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, t.StableSize()) - } - - var offset int - - offset += proto.BytesMarshal(sessionTokenBodyIDField, buf[offset:], t.id) - offset += proto.NestedStructureMarshal(sessionTokenBodyOwnerField, buf[offset:], t.ownerID) - offset += proto.NestedStructureMarshal(sessionTokenBodyLifetimeField, buf[offset:], t.lifetime) - offset += proto.BytesMarshal(sessionTokenBodyKeyField, buf[offset:], t.sessionKey) - - if t.ctx != nil { - switch v := t.ctx.(type) { - case *ObjectSessionContext: - proto.NestedStructureMarshal(sessionTokenBodyObjectCtxField, buf[offset:], v) - case *ContainerSessionContext: - proto.NestedStructureMarshal(sessionTokenBodyCnrCtxField, buf[offset:], v) - default: - panic("cannot marshal unknown session token context") - } - } - - return buf -} - -func (t *TokenBody) StableSize() (size int) { - if t == nil { - return 0 - } - - size += proto.BytesSize(sessionTokenBodyIDField, t.id) - size += proto.NestedStructureSize(sessionTokenBodyOwnerField, t.ownerID) - size += proto.NestedStructureSize(sessionTokenBodyLifetimeField, t.lifetime) - size += proto.BytesSize(sessionTokenBodyKeyField, t.sessionKey) - - if t.ctx != nil { - switch v := t.ctx.(type) { - case *ObjectSessionContext: - size += proto.NestedStructureSize(sessionTokenBodyObjectCtxField, v) - case *ContainerSessionContext: - size += proto.NestedStructureSize(sessionTokenBodyCnrCtxField, v) - default: - panic("cannot marshal unknown session token context") - } - } - - return size -} - -func (t *TokenBody) Unmarshal(data []byte) error { - return message.Unmarshal(t, data, new(session.SessionToken_Body)) -} - -func (t *Token) StableMarshal(buf []byte) []byte { - if t == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, t.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(sessionTokenBodyField, buf[offset:], t.body) - proto.NestedStructureMarshal(sessionTokenSignatureField, buf[offset:], t.sig) - - return buf -} - -func (t *Token) StableSize() (size int) { - if t == nil { - return 0 - } - - size += proto.NestedStructureSize(sessionTokenBodyField, t.body) - size += proto.NestedStructureSize(sessionTokenSignatureField, t.sig) - - return size -} - -func (t *Token) Unmarshal(data []byte) error { - return message.Unmarshal(t, data, new(session.SessionToken)) -} - -func (r *RequestMetaHeader) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(reqMetaHeaderVersionField, buf[offset:], r.version) - offset += proto.UInt64Marshal(reqMetaHeaderEpochField, buf[offset:], r.epoch) - offset += proto.UInt32Marshal(reqMetaHeaderTTLField, buf[offset:], r.ttl) - - for i := range r.xHeaders { - offset += proto.NestedStructureMarshal(reqMetaHeaderXHeadersField, buf[offset:], &r.xHeaders[i]) - } - - offset += proto.NestedStructureMarshal(reqMetaHeaderSessionTokenField, buf[offset:], r.sessionToken) - offset += proto.NestedStructureMarshal(reqMetaHeaderBearerTokenField, buf[offset:], r.bearerToken) - offset += proto.NestedStructureMarshal(reqMetaHeaderOriginField, buf[offset:], r.origin) - proto.UInt64Marshal(reqMetaHeaderNetMagicField, buf[offset:], r.netMagic) - - return buf -} - -func (r *RequestMetaHeader) StableSize() (size int) { - if r == nil { - return 0 - } - - if r.version != nil { - size += proto.NestedStructureSize(reqMetaHeaderVersionField, r.version) - } - - size += proto.UInt64Size(reqMetaHeaderEpochField, r.epoch) - size += proto.UInt32Size(reqMetaHeaderTTLField, r.ttl) - - for i := range r.xHeaders { - size += proto.NestedStructureSize(reqMetaHeaderXHeadersField, &r.xHeaders[i]) - } - - size += proto.NestedStructureSize(reqMetaHeaderSessionTokenField, r.sessionToken) - size += proto.NestedStructureSize(reqMetaHeaderBearerTokenField, r.bearerToken) - size += proto.NestedStructureSize(reqMetaHeaderOriginField, r.origin) - size += proto.UInt64Size(reqMetaHeaderNetMagicField, r.netMagic) - - return size -} - -func (r *RequestMetaHeader) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(session.RequestMetaHeader)) -} - -func (r *RequestVerificationHeader) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(reqVerifHeaderBodySignatureField, buf[offset:], r.bodySig) - offset += proto.NestedStructureMarshal(reqVerifHeaderMetaSignatureField, buf[offset:], r.metaSig) - offset += proto.NestedStructureMarshal(reqVerifHeaderOriginSignatureField, buf[offset:], r.originSig) - proto.NestedStructureMarshal(reqVerifHeaderOriginField, buf[offset:], r.origin) - - return buf -} - -func (r *RequestVerificationHeader) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.NestedStructureSize(reqVerifHeaderBodySignatureField, r.bodySig) - size += proto.NestedStructureSize(reqVerifHeaderMetaSignatureField, r.metaSig) - size += proto.NestedStructureSize(reqVerifHeaderOriginSignatureField, r.originSig) - size += proto.NestedStructureSize(reqVerifHeaderOriginField, r.origin) - - return size -} - -func (r *RequestVerificationHeader) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(session.RequestVerificationHeader)) -} - -func (r *ResponseMetaHeader) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(respMetaHeaderVersionField, buf[offset:], r.version) - offset += proto.UInt64Marshal(respMetaHeaderEpochField, buf[offset:], r.epoch) - offset += proto.UInt32Marshal(respMetaHeaderTTLField, buf[offset:], r.ttl) - - for i := range r.xHeaders { - offset += proto.NestedStructureMarshal(respMetaHeaderXHeadersField, buf[offset:], &r.xHeaders[i]) - } - - offset += proto.NestedStructureMarshal(respMetaHeaderOriginField, buf[offset:], r.origin) - proto.NestedStructureMarshal(respMetaHeaderStatusField, buf[offset:], r.status) - - return buf -} - -func (r *ResponseMetaHeader) StableSize() (size int) { - if r == nil { - return 0 - } - - if r.version != nil { - size += proto.NestedStructureSize(respMetaHeaderVersionField, r.version) - } - - size += proto.UInt64Size(respMetaHeaderEpochField, r.epoch) - size += proto.UInt32Size(respMetaHeaderTTLField, r.ttl) - - for i := range r.xHeaders { - size += proto.NestedStructureSize(respMetaHeaderXHeadersField, &r.xHeaders[i]) - } - - size += proto.NestedStructureSize(respMetaHeaderOriginField, r.origin) - size += proto.NestedStructureSize(respMetaHeaderStatusField, r.status) - - return size -} - -func (r *ResponseMetaHeader) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(session.ResponseMetaHeader)) -} - -func (r *ResponseVerificationHeader) StableMarshal(buf []byte) []byte { - if r == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, r.StableSize()) - } - - var offset int - - offset += proto.NestedStructureMarshal(respVerifHeaderBodySignatureField, buf[offset:], r.bodySig) - offset += proto.NestedStructureMarshal(respVerifHeaderMetaSignatureField, buf[offset:], r.metaSig) - offset += proto.NestedStructureMarshal(respVerifHeaderOriginSignatureField, buf[offset:], r.originSig) - proto.NestedStructureMarshal(respVerifHeaderOriginField, buf[offset:], r.origin) - - return buf -} - -func (r *ResponseVerificationHeader) StableSize() (size int) { - if r == nil { - return 0 - } - - size += proto.NestedStructureSize(respVerifHeaderBodySignatureField, r.bodySig) - size += proto.NestedStructureSize(respVerifHeaderMetaSignatureField, r.metaSig) - size += proto.NestedStructureSize(respVerifHeaderOriginSignatureField, r.originSig) - size += proto.NestedStructureSize(respVerifHeaderOriginField, r.origin) - - return size -} - -func (r *ResponseVerificationHeader) Unmarshal(data []byte) error { - return message.Unmarshal(r, data, new(session.ResponseVerificationHeader)) -} diff --git a/session/message_test.go b/session/message_test.go deleted file mode 100644 index 39dd336..0000000 --- a/session/message_test.go +++ /dev/null @@ -1,27 +0,0 @@ -package session_test - -import ( - "testing" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - rpctest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message/test" - sessiontest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/test" -) - -func TestMessageConvert(t *testing.T) { - rpctest.TestRPCMessage(t, - func(empty bool) message.Message { return sessiontest.GenerateCreateRequestBody(empty) }, - func(empty bool) message.Message { return sessiontest.GenerateCreateRequest(empty) }, - func(empty bool) message.Message { return sessiontest.GenerateCreateResponseBody(empty) }, - func(empty bool) message.Message { return sessiontest.GenerateCreateResponse(empty) }, - func(empty bool) message.Message { return sessiontest.GenerateTokenLifetime(empty) }, - func(empty bool) message.Message { return sessiontest.GenerateXHeader(empty) }, - func(empty bool) message.Message { return sessiontest.GenerateSessionTokenBody(empty) }, - func(empty bool) message.Message { return sessiontest.GenerateSessionToken(empty) }, - func(empty bool) message.Message { return sessiontest.GenerateRequestMetaHeader(empty) }, - func(empty bool) message.Message { return sessiontest.GenerateRequestVerificationHeader(empty) }, - func(empty bool) message.Message { return sessiontest.GenerateResponseMetaHeader(empty) }, - func(empty bool) message.Message { return sessiontest.GenerateResponseVerificationHeader(empty) }, - func(empty bool) message.Message { return sessiontest.GenerateContainerSessionContext(empty) }, - ) -} diff --git a/session/status.go b/session/status.go deleted file mode 100644 index 8b3b381..0000000 --- a/session/status.go +++ /dev/null @@ -1,32 +0,0 @@ -package session - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status" - statusgrpc "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/grpc" -) - -// LocalizeFailStatus checks if passed global status.Code is related to session failure and: -// -// then localizes the code and returns true, -// else leaves the code unchanged and returns false. -// -// Arg must not be nil. -func LocalizeFailStatus(c *status.Code) bool { - return status.LocalizeIfInSection(c, uint32(statusgrpc.Section_SECTION_SESSION)) -} - -// GlobalizeFail globalizes local code of session failure. -// -// Arg must not be nil. -func GlobalizeFail(c *status.Code) { - c.GlobalizeSection(uint32(statusgrpc.Section_SECTION_SESSION)) -} - -const ( - // StatusTokenNotFound is a local status.Code value for - // TOKEN_NOT_FOUND session failure. - StatusTokenNotFound status.Code = iota - // StatusTokenExpired is a local status.Code value for - // TOKEN_EXPIRED session failure. - StatusTokenExpired -) diff --git a/session/status_test.go b/session/status_test.go deleted file mode 100644 index 57ce4bd..0000000 --- a/session/status_test.go +++ /dev/null @@ -1,15 +0,0 @@ -package session_test - -import ( - "testing" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" - statustest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/test" -) - -func TestStatusCodes(t *testing.T) { - statustest.TestCodes(t, session.LocalizeFailStatus, session.GlobalizeFail, - session.StatusTokenNotFound, 4096, - session.StatusTokenExpired, 4097, - ) -} diff --git a/session/string.go b/session/string.go deleted file mode 100644 index 0e7c48a..0000000 --- a/session/string.go +++ /dev/null @@ -1,47 +0,0 @@ -package session - -import ( - session "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" -) - -// String returns string representation of ObjectSessionVerb. -func (x ObjectSessionVerb) String() string { - return ObjectSessionVerbToGRPCField(x).String() -} - -// FromString parses ObjectSessionVerb from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (x *ObjectSessionVerb) FromString(s string) bool { - var g session.ObjectSessionContext_Verb - - ok := g.FromString(s) - - if ok { - *x = ObjectSessionVerbFromGRPCField(g) - } - - return ok -} - -// String returns string representation of ContainerSessionVerb. -func (x ContainerSessionVerb) String() string { - return ContainerSessionVerbToGRPCField(x).String() -} - -// FromString parses ContainerSessionVerb from a string representation. -// It is a reverse action to String(). -// -// Returns true if s was parsed successfully. -func (x *ContainerSessionVerb) FromString(s string) bool { - var g session.ContainerSessionContext_Verb - - ok := g.FromString(s) - - if ok { - *x = ContainerSessionVerbFromGRPCField(g) - } - - return ok -} diff --git a/session/test/generate.go b/session/test/generate.go deleted file mode 100644 index 58084be..0000000 --- a/session/test/generate.go +++ /dev/null @@ -1,251 +0,0 @@ -package sessiontest - -import ( - crand "crypto/rand" - "math/rand" - "time" - - acltest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl/test" - refstest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs/test" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" - statustest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/test" -) - -func GenerateCreateRequestBody(empty bool) *session.CreateRequestBody { - m := new(session.CreateRequestBody) - - if !empty { - m.SetExpiration(555) - m.SetOwnerID(refstest.GenerateOwnerID(false)) - } - - return m -} - -func GenerateCreateRequest(empty bool) *session.CreateRequest { - m := new(session.CreateRequest) - - if !empty { - m.SetBody(GenerateCreateRequestBody(false)) - } - - m.SetMetaHeader(GenerateRequestMetaHeader(empty)) - m.SetVerificationHeader(GenerateRequestVerificationHeader(empty)) - - return m -} - -func GenerateCreateResponseBody(empty bool) *session.CreateResponseBody { - m := new(session.CreateResponseBody) - - if !empty { - id := make([]byte, 16) - _, _ = crand.Read(id) - - m.SetID(id) - m.SetSessionKey([]byte{4, 5, 6}) - } - - return m -} - -func GenerateCreateResponse(empty bool) *session.CreateResponse { - m := new(session.CreateResponse) - - if !empty { - m.SetBody(GenerateCreateResponseBody(false)) - } - - m.SetMetaHeader(GenerateResponseMetaHeader(empty)) - m.SetVerificationHeader(GenerateResponseVerificationHeader(empty)) - - return m -} - -func GenerateResponseVerificationHeader(empty bool) *session.ResponseVerificationHeader { - return generateResponseVerificationHeader(empty, true) -} - -func generateResponseVerificationHeader(empty, withOrigin bool) *session.ResponseVerificationHeader { - m := new(session.ResponseVerificationHeader) - - if !empty { - m.SetBodySignature(refstest.GenerateSignature(false)) - } - - m.SetMetaSignature(refstest.GenerateSignature(empty)) - m.SetOriginSignature(refstest.GenerateSignature(empty)) - - if withOrigin { - m.SetOrigin(generateResponseVerificationHeader(empty, false)) - } - - return m -} - -func GenerateResponseMetaHeader(empty bool) *session.ResponseMetaHeader { - return generateResponseMetaHeader(empty, true) -} - -func generateResponseMetaHeader(empty, withOrigin bool) *session.ResponseMetaHeader { - m := new(session.ResponseMetaHeader) - - if !empty { - m.SetEpoch(13) - m.SetTTL(100) - } - - m.SetXHeaders(GenerateXHeaders(empty)) - m.SetVersion(refstest.GenerateVersion(empty)) - m.SetStatus(statustest.Status(empty)) - - if withOrigin { - m.SetOrigin(generateResponseMetaHeader(empty, false)) - } - - return m -} - -func GenerateRequestVerificationHeader(empty bool) *session.RequestVerificationHeader { - return generateRequestVerificationHeader(empty, true) -} - -func generateRequestVerificationHeader(empty, withOrigin bool) *session.RequestVerificationHeader { - m := new(session.RequestVerificationHeader) - - if !empty { - m.SetBodySignature(refstest.GenerateSignature(false)) - } - - m.SetMetaSignature(refstest.GenerateSignature(empty)) - m.SetOriginSignature(refstest.GenerateSignature(empty)) - - if withOrigin { - m.SetOrigin(generateRequestVerificationHeader(empty, false)) - } - - return m -} - -func GenerateRequestMetaHeader(empty bool) *session.RequestMetaHeader { - return generateRequestMetaHeader(empty, true) -} - -func generateRequestMetaHeader(empty, withOrigin bool) *session.RequestMetaHeader { - m := new(session.RequestMetaHeader) - - if !empty { - m.SetEpoch(13) - m.SetTTL(100) - m.SetNetworkMagic(1337) - } - - m.SetXHeaders(GenerateXHeaders(empty)) - m.SetVersion(refstest.GenerateVersion(empty)) - m.SetSessionToken(GenerateSessionToken(empty)) - m.SetBearerToken(acltest.GenerateBearerToken(empty)) - - if withOrigin { - m.SetOrigin(generateRequestMetaHeader(empty, false)) - } - - return m -} - -func GenerateSessionToken(empty bool) *session.Token { - m := new(session.Token) - - if !empty { - m.SetBody(GenerateSessionTokenBody(false)) - } - - m.SetSignature(refstest.GenerateSignature(empty)) - - return m -} - -func GenerateSessionTokenBody(empty bool) *session.TokenBody { - m := new(session.TokenBody) - - if !empty { - id := make([]byte, 16) - _, _ = crand.Read(id) - - m.SetID(id) - m.SetSessionKey([]byte{2}) - m.SetOwnerID(refstest.GenerateOwnerID(false)) - m.SetLifetime(GenerateTokenLifetime(false)) - - switch randomInt(2) { - case 0: - m.SetContext(GenerateObjectSessionContext(false)) - case 1: - m.SetContext(GenerateContainerSessionContext(false)) - } - } - - return m -} - -func GenerateTokenLifetime(empty bool) *session.TokenLifetime { - m := new(session.TokenLifetime) - - if !empty { - m.SetExp(1) - m.SetIat(2) - m.SetExp(3) - } - - return m -} - -func GenerateObjectSessionContext(empty bool) *session.ObjectSessionContext { - m := new(session.ObjectSessionContext) - - if !empty { - m.SetVerb(session.ObjectVerbHead) - m.SetTarget(refstest.GenerateContainerID(false), refstest.GenerateObjectIDs(false)...) - } - - return m -} - -func GenerateContainerSessionContext(empty bool) *session.ContainerSessionContext { - m := new(session.ContainerSessionContext) - - if !empty { - m.SetVerb(session.ContainerVerbDelete) - m.SetWildcard(true) - m.SetContainerID(refstest.GenerateContainerID(false)) - } - - return m -} - -func GenerateXHeader(empty bool) *session.XHeader { - m := new(session.XHeader) - - if !empty { - m.SetKey("key") - m.SetValue("val") - } - - return m -} - -func GenerateXHeaders(empty bool) []session.XHeader { - var xs []session.XHeader - - if !empty { - xs = append(xs, - *GenerateXHeader(false), - *GenerateXHeader(false), - ) - } - - return xs -} - -func randomInt(n int) int { - return rand.New(rand.NewSource(time.Now().UnixNano())).Intn(n) -} diff --git a/session/types.go b/session/types.go deleted file mode 100644 index d2df9c5..0000000 --- a/session/types.go +++ /dev/null @@ -1,836 +0,0 @@ -package session - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/acl" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" -) - -type CreateRequestBody struct { - ownerID *refs.OwnerID - - expiration uint64 -} - -type CreateRequest struct { - body *CreateRequestBody - - RequestHeaders -} - -type CreateResponseBody struct { - id []byte - - sessionKey []byte -} - -type CreateResponse struct { - body *CreateResponseBody - - ResponseHeaders -} - -type XHeader struct { - key, val string -} - -type TokenLifetime struct { - exp, nbf, iat uint64 -} - -type ObjectSessionVerb uint32 - -type objectSessionContextTarget struct { - cnr *refs.ContainerID - - objs []refs.ObjectID -} - -const ( - _ = iota - fNumObjectTargetContainer - fNumObjectTargetObjects -) - -func (x objectSessionContextTarget) StableMarshal(buf []byte) []byte { - if buf == nil { - buf = make([]byte, x.StableSize()) - } - - offset := proto.NestedStructureMarshal(fNumObjectTargetContainer, buf, x.cnr) - - for i := range x.objs { - offset += proto.NestedStructureMarshal(fNumObjectTargetObjects, buf[offset:], &x.objs[i]) - } - - return buf -} - -func (x objectSessionContextTarget) StableSize() (size int) { - size += proto.NestedStructureSize(fNumObjectTargetContainer, x.cnr) - - for i := range x.objs { - size += proto.NestedStructureSize(fNumObjectTargetObjects, &x.objs[i]) - } - - return size -} - -type ObjectSessionContext struct { - verb ObjectSessionVerb - - cnr *refs.ContainerID - - objs []refs.ObjectID -} - -type TokenContext interface { - sessionTokenContext() -} - -// Deprecated: use TokenContext instead. -// -//nolint:revive -type SessionTokenContext = TokenContext - -type TokenBody struct { - id []byte - - ownerID *refs.OwnerID - - lifetime *TokenLifetime - - sessionKey []byte - - ctx TokenContext -} - -// Deprecated: use TokenBody instead. -// -//nolint:revive -type SessionTokenBody = TokenBody - -type Token struct { - body *TokenBody - - sig *refs.Signature -} - -// Deprecated: use Token instead. -// -//nolint:revive -type SessionToken = Token - -type RequestVerificationHeader struct { - bodySig, metaSig, originSig *refs.Signature - - origin *RequestVerificationHeader -} - -type RequestMetaHeader struct { - version *refs.Version - - ttl uint32 - - epoch uint64 - - xHeaders []XHeader - - sessionToken *Token - - bearerToken *acl.BearerToken - - origin *RequestMetaHeader - - netMagic uint64 -} - -type ResponseVerificationHeader struct { - bodySig, metaSig, originSig *refs.Signature - - origin *ResponseVerificationHeader -} - -type ResponseMetaHeader struct { - version *refs.Version - - ttl uint32 - - epoch uint64 - - xHeaders []XHeader - - origin *ResponseMetaHeader - - status *status.Status -} - -const ( - ObjectVerbUnknown ObjectSessionVerb = iota - ObjectVerbPut - ObjectVerbGet - ObjectVerbHead - ObjectVerbSearch - ObjectVerbDelete - ObjectVerbRange - ObjectVerbRangeHash - ObjectVerbPatch -) - -func (c *CreateRequestBody) GetOwnerID() *refs.OwnerID { - if c != nil { - return c.ownerID - } - - return nil -} - -func (c *CreateRequestBody) SetOwnerID(v *refs.OwnerID) { - c.ownerID = v -} - -func (c *CreateRequestBody) GetExpiration() uint64 { - if c != nil { - return c.expiration - } - - return 0 -} - -func (c *CreateRequestBody) SetExpiration(v uint64) { - c.expiration = v -} - -func (c *CreateRequest) GetBody() *CreateRequestBody { - if c != nil { - return c.body - } - - return nil -} - -func (c *CreateRequest) SetBody(v *CreateRequestBody) { - c.body = v -} - -func (c *CreateRequest) GetMetaHeader() *RequestMetaHeader { - if c != nil { - return c.metaHeader - } - - return nil -} - -func (c *CreateRequest) SetMetaHeader(v *RequestMetaHeader) { - c.metaHeader = v -} - -func (c *CreateRequest) GetVerificationHeader() *RequestVerificationHeader { - if c != nil { - return c.verifyHeader - } - - return nil -} - -func (c *CreateRequest) SetVerificationHeader(v *RequestVerificationHeader) { - c.verifyHeader = v -} - -func (c *CreateResponseBody) GetID() []byte { - if c != nil { - return c.id - } - - return nil -} - -func (c *CreateResponseBody) SetID(v []byte) { - c.id = v -} - -func (c *CreateResponseBody) GetSessionKey() []byte { - if c != nil { - return c.sessionKey - } - - return nil -} - -func (c *CreateResponseBody) SetSessionKey(v []byte) { - c.sessionKey = v -} - -func (c *CreateResponse) GetBody() *CreateResponseBody { - if c != nil { - return c.body - } - - return nil -} - -func (c *CreateResponse) SetBody(v *CreateResponseBody) { - c.body = v -} - -func (c *CreateResponse) GetMetaHeader() *ResponseMetaHeader { - if c != nil { - return c.metaHeader - } - - return nil -} - -func (c *CreateResponse) SetMetaHeader(v *ResponseMetaHeader) { - c.metaHeader = v -} - -func (c *CreateResponse) GetVerificationHeader() *ResponseVerificationHeader { - if c != nil { - return c.verifyHeader - } - - return nil -} - -func (c *CreateResponse) SetVerificationHeader(v *ResponseVerificationHeader) { - c.verifyHeader = v -} - -func (x *XHeader) GetKey() string { - if x != nil { - return x.key - } - - return "" -} - -func (x *XHeader) SetKey(v string) { - x.key = v -} - -func (x *XHeader) GetValue() string { - if x != nil { - return x.val - } - - return "" -} - -func (x *XHeader) SetValue(v string) { - x.val = v -} - -func (r *RequestVerificationHeader) GetBodySignature() *refs.Signature { - if r != nil { - return r.bodySig - } - - return nil -} - -func (r *RequestVerificationHeader) SetBodySignature(v *refs.Signature) { - r.bodySig = v -} - -func (r *RequestVerificationHeader) GetMetaSignature() *refs.Signature { - if r != nil { - return r.metaSig - } - - return nil -} - -func (r *RequestVerificationHeader) SetMetaSignature(v *refs.Signature) { - r.metaSig = v -} - -func (r *RequestVerificationHeader) GetOriginSignature() *refs.Signature { - if r != nil { - return r.originSig - } - - return nil -} - -func (r *RequestVerificationHeader) SetOriginSignature(v *refs.Signature) { - r.originSig = v -} - -func (r *RequestVerificationHeader) GetOrigin() *RequestVerificationHeader { - if r != nil { - return r.origin - } - - return nil -} - -func (r *RequestVerificationHeader) SetOrigin(v *RequestVerificationHeader) { - r.origin = v -} - -func (r *RequestMetaHeader) GetVersion() *refs.Version { - if r != nil { - return r.version - } - - return nil -} - -func (r *RequestMetaHeader) SetVersion(v *refs.Version) { - r.version = v -} - -func (r *RequestMetaHeader) GetTTL() uint32 { - if r != nil { - return r.ttl - } - - return 0 -} - -func (r *RequestMetaHeader) SetTTL(v uint32) { - r.ttl = v -} - -func (r *RequestMetaHeader) GetEpoch() uint64 { - if r != nil { - return r.epoch - } - - return 0 -} - -func (r *RequestMetaHeader) SetEpoch(v uint64) { - r.epoch = v -} - -func (r *RequestMetaHeader) GetXHeaders() []XHeader { - if r != nil { - return r.xHeaders - } - - return nil -} - -func (r *RequestMetaHeader) SetXHeaders(v []XHeader) { - r.xHeaders = v -} - -func (r *RequestMetaHeader) GetSessionToken() *Token { - if r != nil { - return r.sessionToken - } - - return nil -} - -func (r *RequestMetaHeader) SetSessionToken(v *Token) { - r.sessionToken = v -} - -func (r *RequestMetaHeader) GetBearerToken() *acl.BearerToken { - if r != nil { - return r.bearerToken - } - - return nil -} - -func (r *RequestMetaHeader) SetBearerToken(v *acl.BearerToken) { - r.bearerToken = v -} - -func (r *RequestMetaHeader) GetOrigin() *RequestMetaHeader { - if r != nil { - return r.origin - } - - return nil -} - -func (r *RequestMetaHeader) SetOrigin(v *RequestMetaHeader) { - r.origin = v -} - -// GetNetworkMagic returns NeoFS network magic. -func (r *RequestMetaHeader) GetNetworkMagic() uint64 { - if r != nil { - return r.netMagic - } - - return 0 -} - -// SetNetworkMagic sets NeoFS network magic. -func (r *RequestMetaHeader) SetNetworkMagic(v uint64) { - r.netMagic = v -} - -func (l *TokenLifetime) GetExp() uint64 { - if l != nil { - return l.exp - } - - return 0 -} - -func (l *TokenLifetime) SetExp(v uint64) { - l.exp = v -} - -func (l *TokenLifetime) GetNbf() uint64 { - if l != nil { - return l.nbf - } - - return 0 -} - -func (l *TokenLifetime) SetNbf(v uint64) { - l.nbf = v -} - -func (l *TokenLifetime) GetIat() uint64 { - if l != nil { - return l.iat - } - - return 0 -} - -func (l *TokenLifetime) SetIat(v uint64) { - l.iat = v -} - -func (r *ResponseVerificationHeader) GetBodySignature() *refs.Signature { - if r != nil { - return r.bodySig - } - - return nil -} - -func (r *ResponseVerificationHeader) SetBodySignature(v *refs.Signature) { - r.bodySig = v -} - -func (r *ResponseVerificationHeader) GetMetaSignature() *refs.Signature { - if r != nil { - return r.metaSig - } - - return nil -} - -func (r *ResponseVerificationHeader) SetMetaSignature(v *refs.Signature) { - r.metaSig = v -} - -func (r *ResponseVerificationHeader) GetOriginSignature() *refs.Signature { - if r != nil { - return r.originSig - } - - return nil -} - -func (r *ResponseVerificationHeader) SetOriginSignature(v *refs.Signature) { - r.originSig = v -} - -func (r *ResponseVerificationHeader) GetOrigin() *ResponseVerificationHeader { - if r != nil { - return r.origin - } - - return nil -} - -func (r *ResponseVerificationHeader) SetOrigin(v *ResponseVerificationHeader) { - r.origin = v -} - -func (r *ResponseMetaHeader) GetVersion() *refs.Version { - if r != nil { - return r.version - } - - return nil -} - -func (r *ResponseMetaHeader) SetVersion(v *refs.Version) { - r.version = v -} - -func (r *ResponseMetaHeader) GetTTL() uint32 { - if r != nil { - return r.ttl - } - - return 0 -} - -func (r *ResponseMetaHeader) SetTTL(v uint32) { - r.ttl = v -} - -func (r *ResponseMetaHeader) GetEpoch() uint64 { - if r != nil { - return r.epoch - } - - return 0 -} - -func (r *ResponseMetaHeader) SetEpoch(v uint64) { - r.epoch = v -} - -func (r *ResponseMetaHeader) GetXHeaders() []XHeader { - if r != nil { - return r.xHeaders - } - - return nil -} - -func (r *ResponseMetaHeader) SetXHeaders(v []XHeader) { - r.xHeaders = v -} - -func (r *ResponseMetaHeader) GetOrigin() *ResponseMetaHeader { - if r != nil { - return r.origin - } - - return nil -} - -func (r *ResponseMetaHeader) SetOrigin(v *ResponseMetaHeader) { - r.origin = v -} - -// GetStatus returns response status. -func (r *ResponseMetaHeader) GetStatus() *status.Status { - if r != nil { - return r.status - } - - return nil -} - -// SetStatus sets response status. -func (r *ResponseMetaHeader) SetStatus(v *status.Status) { - r.status = v -} - -// SetStatus sets status of the message which can carry ResponseMetaHeader. -// -// Sets status field on the "highest" level of meta headers. -// If meta header is missing in message, it is allocated. -func SetStatus(msg interface { - GetMetaHeader() *ResponseMetaHeader - SetMetaHeader(*ResponseMetaHeader) -}, st *status.Status, -) { - meta := msg.GetMetaHeader() - if meta == nil { - meta = new(ResponseMetaHeader) - msg.SetMetaHeader(meta) - } - - meta.SetStatus(st) -} - -func (c *ObjectSessionContext) sessionTokenContext() {} - -func (c *ObjectSessionContext) GetVerb() ObjectSessionVerb { - if c != nil { - return c.verb - } - - return ObjectVerbUnknown -} - -func (c *ObjectSessionContext) SetVerb(v ObjectSessionVerb) { - c.verb = v -} - -func (c *ObjectSessionContext) GetContainer() *refs.ContainerID { - if c != nil { - return c.cnr - } - - return nil -} - -func (c *ObjectSessionContext) GetObjects() []refs.ObjectID { - if c != nil { - return c.objs - } - - return nil -} - -func (c *ObjectSessionContext) SetTarget(cnr *refs.ContainerID, objs ...refs.ObjectID) { - c.cnr = cnr - c.objs = objs -} - -func (t *TokenBody) GetID() []byte { - if t != nil { - return t.id - } - - return nil -} - -func (t *TokenBody) SetID(v []byte) { - t.id = v -} - -func (t *TokenBody) GetOwnerID() *refs.OwnerID { - if t != nil { - return t.ownerID - } - - return nil -} - -func (t *TokenBody) SetOwnerID(v *refs.OwnerID) { - t.ownerID = v -} - -func (t *TokenBody) GetLifetime() *TokenLifetime { - if t != nil { - return t.lifetime - } - - return nil -} - -func (t *TokenBody) SetLifetime(v *TokenLifetime) { - t.lifetime = v -} - -func (t *TokenBody) GetSessionKey() []byte { - if t != nil { - return t.sessionKey - } - - return nil -} - -func (t *TokenBody) SetSessionKey(v []byte) { - t.sessionKey = v -} - -func (t *TokenBody) GetContext() TokenContext { - if t != nil { - return t.ctx - } - - return nil -} - -func (t *TokenBody) SetContext(v TokenContext) { - t.ctx = v -} - -func (t *Token) GetBody() *TokenBody { - if t != nil { - return t.body - } - - return nil -} - -func (t *Token) SetBody(v *TokenBody) { - t.body = v -} - -func (t *Token) GetSignature() *refs.Signature { - if t != nil { - return t.sig - } - - return nil -} - -func (t *Token) SetSignature(v *refs.Signature) { - t.sig = v -} - -// ContainerSessionVerb represents NeoFS API v2 -// session.ContainerSessionContext.Verb enumeration. -type ContainerSessionVerb uint32 - -const ( - // ContainerVerbUnknown corresponds to VERB_UNSPECIFIED enum value. - ContainerVerbUnknown ContainerSessionVerb = iota - - // ContainerVerbPut corresponds to PUT enum value. - ContainerVerbPut - - // ContainerVerbDelete corresponds to DELETE enum value. - ContainerVerbDelete - - // ContainerVerbSetEACL corresponds to SETEACL enum value. - ContainerVerbSetEACL -) - -// ContainerSessionContext represents structure of the -// NeoFS API v2 session.ContainerSessionContext message. -type ContainerSessionContext struct { - verb ContainerSessionVerb - - wildcard bool - - cid *refs.ContainerID -} - -func (x *ContainerSessionContext) sessionTokenContext() {} - -// Verb returns type of request for which the token is issued. -func (x *ContainerSessionContext) Verb() ContainerSessionVerb { - if x != nil { - return x.verb - } - - return ContainerVerbUnknown -} - -// SetVerb sets type of request for which the token is issued. -func (x *ContainerSessionContext) SetVerb(v ContainerSessionVerb) { - x.verb = v -} - -// Wildcard returns wildcard flag of the container session. -func (x *ContainerSessionContext) Wildcard() bool { - if x != nil { - return x.wildcard - } - - return false -} - -// SetWildcard sets wildcard flag of the container session. -func (x *ContainerSessionContext) SetWildcard(v bool) { - x.wildcard = v -} - -// ContainerID returns identifier of the container related to the session. -func (x *ContainerSessionContext) ContainerID() *refs.ContainerID { - if x != nil { - return x.cid - } - - return nil -} - -// SetContainerID sets identifier of the container related to the session. -func (x *ContainerSessionContext) SetContainerID(v *refs.ContainerID) { - x.cid = v -} diff --git a/session/util.go b/session/util.go deleted file mode 100644 index ff19deb..0000000 --- a/session/util.go +++ /dev/null @@ -1,167 +0,0 @@ -package session - -import ( - session "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session/grpc" -) - -// RequestHeaders represents common part of -// all NeoFS requests including headers. -type RequestHeaders struct { - metaHeader *RequestMetaHeader - - verifyHeader *RequestVerificationHeader -} - -// GetMetaHeader returns meta header of the request. -func (c *RequestHeaders) GetMetaHeader() *RequestMetaHeader { - if c != nil { - return c.metaHeader - } - - return nil -} - -// SetMetaHeader sets meta header of the request. -func (c *RequestHeaders) SetMetaHeader(v *RequestMetaHeader) { - c.metaHeader = v -} - -// GetVerificationHeader returns verification header of the request. -func (c *RequestHeaders) GetVerificationHeader() *RequestVerificationHeader { - if c != nil { - return c.verifyHeader - } - - return nil -} - -// SetVerificationHeader sets verification header of the request. -func (c *RequestHeaders) SetVerificationHeader(v *RequestVerificationHeader) { - c.verifyHeader = v -} - -func (c *RequestHeaders) ToMessage(m interface { - SetMetaHeader(*session.RequestMetaHeader) - SetVerifyHeader(*session.RequestVerificationHeader) -}, -) { - m.SetMetaHeader(c.metaHeader.ToGRPCMessage().(*session.RequestMetaHeader)) - m.SetVerifyHeader(c.verifyHeader.ToGRPCMessage().(*session.RequestVerificationHeader)) -} - -func (c *RequestHeaders) FromMessage(m interface { - GetMetaHeader() *session.RequestMetaHeader - GetVerifyHeader() *session.RequestVerificationHeader -}, -) error { - metaHdr := m.GetMetaHeader() - if metaHdr == nil { - c.metaHeader = nil - } else { - if c.metaHeader == nil { - c.metaHeader = new(RequestMetaHeader) - } - - err := c.metaHeader.FromGRPCMessage(metaHdr) - if err != nil { - return err - } - } - - verifyHdr := m.GetVerifyHeader() - if verifyHdr == nil { - c.verifyHeader = nil - } else { - if c.verifyHeader == nil { - c.verifyHeader = new(RequestVerificationHeader) - } - - err := c.verifyHeader.FromGRPCMessage(verifyHdr) - if err != nil { - return err - } - } - - return nil -} - -// ResponseHeaders represents common part of -// all NeoFS responses including headers. -type ResponseHeaders struct { - metaHeader *ResponseMetaHeader - - verifyHeader *ResponseVerificationHeader -} - -// GetMetaHeader returns meta header of the response. -func (c *ResponseHeaders) GetMetaHeader() *ResponseMetaHeader { - if c != nil { - return c.metaHeader - } - - return nil -} - -// SetMetaHeader sets meta header of the response. -func (c *ResponseHeaders) SetMetaHeader(v *ResponseMetaHeader) { - c.metaHeader = v -} - -// GetVerificationHeader returns verification header of the response. -func (c *ResponseHeaders) GetVerificationHeader() *ResponseVerificationHeader { - if c != nil { - return c.verifyHeader - } - - return nil -} - -// SetVerificationHeader sets verification header of the response. -func (c *ResponseHeaders) SetVerificationHeader(v *ResponseVerificationHeader) { - c.verifyHeader = v -} - -func (c *ResponseHeaders) ToMessage(m interface { - SetMetaHeader(*session.ResponseMetaHeader) - SetVerifyHeader(*session.ResponseVerificationHeader) -}, -) { - m.SetMetaHeader(c.metaHeader.ToGRPCMessage().(*session.ResponseMetaHeader)) - m.SetVerifyHeader(c.verifyHeader.ToGRPCMessage().(*session.ResponseVerificationHeader)) -} - -func (c *ResponseHeaders) FromMessage(m interface { - GetMetaHeader() *session.ResponseMetaHeader - GetVerifyHeader() *session.ResponseVerificationHeader -}, -) error { - metaHdr := m.GetMetaHeader() - if metaHdr == nil { - c.metaHeader = nil - } else { - if c.metaHeader == nil { - c.metaHeader = new(ResponseMetaHeader) - } - - err := c.metaHeader.FromGRPCMessage(metaHdr) - if err != nil { - return err - } - } - - verifyHdr := m.GetVerifyHeader() - if verifyHdr == nil { - c.verifyHeader = nil - } else { - if c.verifyHeader == nil { - c.verifyHeader = new(ResponseVerificationHeader) - } - - err := c.verifyHeader.FromGRPCMessage(verifyHdr) - if err != nil { - return err - } - } - - return nil -} diff --git a/session/xheaders.go b/session/xheaders.go deleted file mode 100644 index c575d5f..0000000 --- a/session/xheaders.go +++ /dev/null @@ -1,34 +0,0 @@ -package session - -// ReservedXHeaderPrefix is a prefix of keys to "well-known" X-headers. -const ReservedXHeaderPrefix = "__SYSTEM__" - -const ( - // XHeaderNetmapEpoch is a key to the reserved X-header that specifies netmap epoch - // to use for object placement calculation. If set to '0' or not set, the current - // epoch only will be used. - XHeaderNetmapEpoch = ReservedXHeaderPrefix + "NETMAP_EPOCH" - - // XHeaderNetmapLookupDepth is a key to the reserved X-header that limits - // how many past epochs back the node will can lookup. If set to '0' or not - // set, the current epoch only will be used. - XHeaderNetmapLookupDepth = ReservedXHeaderPrefix + "NETMAP_LOOKUP_DEPTH" -) - -// ReservedXHeaderPrefixNeoFS is a prefix of keys to "well-known" X-headers. -// Deprecated: use ReservedXHeaderPrefix. -const ReservedXHeaderPrefixNeoFS = "__NEOFS__" - -const ( - // XHeaderNetmapEpochNeoFS is a key to the reserved X-header that specifies netmap epoch - // to use for object placement calculation. If set to '0' or not set, the current - // epoch only will be used. - // Deprecated: use XHeaderNetmapEpoch. - XHeaderNetmapEpochNeoFS = ReservedXHeaderPrefixNeoFS + "NETMAP_EPOCH" - - // XHeaderNetmapLookupDepthNeoFS is a key to the reserved X-header that limits - // how many past epochs back the node will can lookup. If set to '0' or not - // set, the current epoch only will be used. - // Deprecated: use XHeaderNetmapLookupDepth. - XHeaderNetmapLookupDepthNeoFS = ReservedXHeaderPrefixNeoFS + "NETMAP_LOOKUP_DEPTH" -) diff --git a/signature/body.go b/signature/body.go deleted file mode 100644 index b1a5904..0000000 --- a/signature/body.go +++ /dev/null @@ -1,116 +0,0 @@ -package signature - -import ( - "fmt" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/accounting" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/apemanager" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/container" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/netmap" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/object" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" -) - -// nolint:funlen -func serviceMessageBody(req any) stableMarshaler { - switch v := req.(type) { - default: - panic(fmt.Sprintf("unsupported session message %T", req)) - - /* Accounting */ - case *accounting.BalanceRequest: - return v.GetBody() - case *accounting.BalanceResponse: - return v.GetBody() - - /* Session */ - case *session.CreateRequest: - return v.GetBody() - case *session.CreateResponse: - return v.GetBody() - - /* Container */ - case *container.PutRequest: - return v.GetBody() - case *container.PutResponse: - return v.GetBody() - case *container.DeleteRequest: - return v.GetBody() - case *container.DeleteResponse: - return v.GetBody() - case *container.GetRequest: - return v.GetBody() - case *container.GetResponse: - return v.GetBody() - case *container.ListRequest: - return v.GetBody() - case *container.ListResponse: - return v.GetBody() - - /* Object */ - case *object.PutRequest: - return v.GetBody() - case *object.PutResponse: - return v.GetBody() - case *object.GetRequest: - return v.GetBody() - case *object.GetResponse: - return v.GetBody() - case *object.HeadRequest: - return v.GetBody() - case *object.HeadResponse: - return v.GetBody() - case *object.SearchRequest: - return v.GetBody() - case *object.SearchResponse: - return v.GetBody() - case *object.DeleteRequest: - return v.GetBody() - case *object.DeleteResponse: - return v.GetBody() - case *object.GetRangeRequest: - return v.GetBody() - case *object.GetRangeResponse: - return v.GetBody() - case *object.GetRangeHashRequest: - return v.GetBody() - case *object.GetRangeHashResponse: - return v.GetBody() - case *object.PutSingleRequest: - return v.GetBody() - case *object.PutSingleResponse: - return v.GetBody() - case *object.PatchRequest: - return v.GetBody() - case *object.PatchResponse: - return v.GetBody() - - /* Netmap */ - case *netmap.LocalNodeInfoRequest: - return v.GetBody() - case *netmap.LocalNodeInfoResponse: - return v.GetBody() - case *netmap.NetworkInfoRequest: - return v.GetBody() - case *netmap.NetworkInfoResponse: - return v.GetBody() - case *netmap.SnapshotRequest: - return v.GetBody() - case *netmap.SnapshotResponse: - return v.GetBody() - - /* APEManager */ - case *apemanager.AddChainRequest: - return v.GetBody() - case *apemanager.AddChainResponse: - return v.GetBody() - case *apemanager.RemoveChainRequest: - return v.GetBody() - case *apemanager.RemoveChainResponse: - return v.GetBody() - case *apemanager.ListChainsRequest: - return v.GetBody() - case *apemanager.ListChainsResponse: - return v.GetBody() - } -} diff --git a/signature/marshaller.go b/signature/marshaller.go deleted file mode 100644 index ff9beb3..0000000 --- a/signature/marshaller.go +++ /dev/null @@ -1,26 +0,0 @@ -package signature - -type stableMarshaler interface { - StableMarshal([]byte) []byte - StableSize() int -} - -type StableMarshalerWrapper struct { - SM stableMarshaler -} - -func (s StableMarshalerWrapper) ReadSignedData(buf []byte) ([]byte, error) { - if s.SM != nil { - return s.SM.StableMarshal(buf), nil - } - - return nil, nil -} - -func (s StableMarshalerWrapper) SignedDataSize() int { - if s.SM != nil { - return s.SM.StableSize() - } - - return 0 -} diff --git a/signature/sign.go b/signature/sign.go deleted file mode 100644 index f50d83f..0000000 --- a/signature/sign.go +++ /dev/null @@ -1,122 +0,0 @@ -package signature - -import ( - "crypto/ecdsa" - "fmt" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/signature" - "golang.org/x/sync/errgroup" -) - -type serviceRequest interface { - GetMetaHeader() *session.RequestMetaHeader - GetVerificationHeader() *session.RequestVerificationHeader - SetVerificationHeader(*session.RequestVerificationHeader) -} - -type serviceResponse interface { - GetMetaHeader() *session.ResponseMetaHeader - GetVerificationHeader() *session.ResponseVerificationHeader - SetVerificationHeader(*session.ResponseVerificationHeader) -} - -type signatureReceiver interface { - SetBodySignature(*refs.Signature) - SetMetaSignature(*refs.Signature) - SetOriginSignature(*refs.Signature) -} - -// SignServiceMessage signes service message with key. -func SignServiceMessage(key *ecdsa.PrivateKey, msg any) error { - switch v := msg.(type) { - case nil: - return nil - case serviceRequest: - return signServiceRequest(key, v) - case serviceResponse: - return signServiceResponse(key, v) - default: - panic(fmt.Sprintf("unsupported session message %T", v)) - } -} - -func signServiceRequest(key *ecdsa.PrivateKey, v serviceRequest) error { - result := &session.RequestVerificationHeader{} - body := serviceMessageBody(v) - meta := v.GetMetaHeader() - header := v.GetVerificationHeader() - if err := signMessageParts(key, body, meta, header, header != nil, result); err != nil { - return err - } - result.SetOrigin(header) - v.SetVerificationHeader(result) - return nil -} - -func signServiceResponse(key *ecdsa.PrivateKey, v serviceResponse) error { - result := &session.ResponseVerificationHeader{} - body := serviceMessageBody(v) - meta := v.GetMetaHeader() - header := v.GetVerificationHeader() - if err := signMessageParts(key, body, meta, header, header != nil, result); err != nil { - return err - } - result.SetOrigin(header) - v.SetVerificationHeader(result) - return nil -} - -func signMessageParts(key *ecdsa.PrivateKey, body, meta, header stableMarshaler, hasHeader bool, result signatureReceiver) error { - eg := &errgroup.Group{} - if !hasHeader { - // sign session message body - eg.Go(func() error { - if err := signServiceMessagePart(key, body, result.SetBodySignature); err != nil { - return fmt.Errorf("could not sign body: %w", err) - } - return nil - }) - } - - // sign meta header - eg.Go(func() error { - if err := signServiceMessagePart(key, meta, result.SetMetaSignature); err != nil { - return fmt.Errorf("could not sign meta header: %w", err) - } - return nil - }) - - // sign verification header origin - eg.Go(func() error { - if err := signServiceMessagePart(key, header, result.SetOriginSignature); err != nil { - return fmt.Errorf("could not sign origin of verification header: %w", err) - } - return nil - }) - return eg.Wait() -} - -func signServiceMessagePart(key *ecdsa.PrivateKey, part stableMarshaler, sigWrite func(*refs.Signature)) error { - var sig *refs.Signature - - wrapper := StableMarshalerWrapper{ - SM: part, - } - // sign part - if err := signature.SignDataWithHandler( - key, - wrapper, - func(s *refs.Signature) { - sig = s - }, - ); err != nil { - return err - } - - // write part signature - sigWrite(sig) - - return nil -} diff --git a/signature/sign_test.go b/signature/sign_test.go deleted file mode 100644 index b606c27..0000000 --- a/signature/sign_test.go +++ /dev/null @@ -1,125 +0,0 @@ -package signature - -import ( - "testing" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/accounting" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" - crypto "git.frostfs.info/TrueCloudLab/frostfs-crypto" - "github.com/stretchr/testify/require" -) - -func TestBalanceResponse(t *testing.T) { - dec := new(accounting.Decimal) - dec.SetValue(100) - - body := new(accounting.BalanceResponseBody) - body.SetBalance(dec) - - meta := new(session.ResponseMetaHeader) - meta.SetTTL(1) - - req := new(accounting.BalanceResponse) - req.SetBody(body) - req.SetMetaHeader(meta) - - // verify unsigned request - require.Error(t, VerifyServiceMessage(req)) - - key, err := crypto.LoadPrivateKey("Kwk6k2eC3L3QuPvD8aiaNyoSXgQ2YL1bwS5CP1oKoA9waeAze97s") - require.NoError(t, err) - - // sign request - require.NoError(t, SignServiceMessage(key, req)) - - // verification must pass - require.NoError(t, VerifyServiceMessage(req)) - - // add level to meta header matryoshka - meta = new(session.ResponseMetaHeader) - meta.SetOrigin(req.GetMetaHeader()) - req.SetMetaHeader(meta) - - // sign request - require.NoError(t, SignServiceMessage(key, req)) - - // verification must pass - require.NoError(t, VerifyServiceMessage(req)) - - // corrupt body - dec.SetValue(dec.GetValue() + 1) - - // verification must fail - require.Error(t, VerifyServiceMessage(req)) - - // restore body - dec.SetValue(dec.GetValue() - 1) - - // corrupt meta header - meta.SetTTL(meta.GetTTL() + 1) - - // verification must fail - require.Error(t, VerifyServiceMessage(req)) - - // restore meta header - meta.SetTTL(meta.GetTTL() - 1) - - // corrupt origin verification header - req.GetVerificationHeader().SetOrigin(nil) - - // verification must fail - require.Error(t, VerifyServiceMessage(req)) -} - -func BenchmarkSignRequest(b *testing.B) { - key, _ := crypto.LoadPrivateKey("Kwk6k2eC3L3QuPvD8aiaNyoSXgQ2YL1bwS5CP1oKoA9waeAze97s") - - b.ResetTimer() - b.ReportAllocs() - - for range b.N { - b.StopTimer() - dec := new(accounting.Decimal) - dec.SetValue(100) - - body := new(accounting.BalanceResponseBody) - body.SetBalance(dec) - - meta := new(session.ResponseMetaHeader) - meta.SetTTL(1) - - resp := new(accounting.BalanceResponse) - resp.SetBody(body) - resp.SetMetaHeader(meta) - - b.StartTimer() - SignServiceMessage(key, resp) - } -} - -func BenchmarkVerifyRequest(b *testing.B) { - key, _ := crypto.LoadPrivateKey("Kwk6k2eC3L3QuPvD8aiaNyoSXgQ2YL1bwS5CP1oKoA9waeAze97s") - - b.ResetTimer() - b.ReportAllocs() - - for range b.N { - b.StopTimer() - dec := new(accounting.Decimal) - dec.SetValue(100) - - body := new(accounting.BalanceResponseBody) - body.SetBalance(dec) - - meta := new(session.ResponseMetaHeader) - meta.SetTTL(1) - - resp := new(accounting.BalanceResponse) - resp.SetBody(body) - resp.SetMetaHeader(meta) - SignServiceMessage(key, resp) - b.StartTimer() - - VerifyServiceMessage(resp) - } -} diff --git a/signature/verify.go b/signature/verify.go deleted file mode 100644 index 7a8ed82..0000000 --- a/signature/verify.go +++ /dev/null @@ -1,127 +0,0 @@ -package signature - -import ( - "errors" - "fmt" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/refs" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/signature" - "golang.org/x/sync/errgroup" -) - -type signatureProvider interface { - GetBodySignature() *refs.Signature - GetMetaSignature() *refs.Signature - GetOriginSignature() *refs.Signature -} - -// VerifyServiceMessage verifies service message. -func VerifyServiceMessage(msg any) error { - switch v := msg.(type) { - case nil: - return nil - case serviceRequest: - return verifyServiceRequest(v) - case serviceResponse: - return verifyServiceResponse(v) - default: - panic(fmt.Sprintf("unsupported session message %T", v)) - } -} - -func verifyServiceRequest(v serviceRequest) error { - meta := v.GetMetaHeader() - verificationHeader := v.GetVerificationHeader() - body := serviceMessageBody(v) - return verifyServiceRequestRecursive(body, meta, verificationHeader) -} - -func verifyServiceRequestRecursive(body stableMarshaler, meta *session.RequestMetaHeader, verify *session.RequestVerificationHeader) error { - verificationHeaderOrigin := verify.GetOrigin() - metaOrigin := meta.GetOrigin() - - stop, err := verifyMessageParts(body, meta, verificationHeaderOrigin, verificationHeaderOrigin != nil, verify) - if err != nil { - return err - } - if stop { - return nil - } - - return verifyServiceRequestRecursive(body, metaOrigin, verificationHeaderOrigin) -} - -func verifyMessageParts(body, meta, originHeader stableMarshaler, hasOriginHeader bool, sigProvider signatureProvider) (stop bool, err error) { - eg := &errgroup.Group{} - - eg.Go(func() error { - if err := verifyServiceMessagePart(meta, sigProvider.GetMetaSignature); err != nil { - return fmt.Errorf("could not verify meta header: %w", err) - } - return nil - }) - - eg.Go(func() error { - if err := verifyServiceMessagePart(originHeader, sigProvider.GetOriginSignature); err != nil { - return fmt.Errorf("could not verify origin of verification header: %w", err) - } - return nil - }) - - if !hasOriginHeader { - eg.Go(func() error { - if err := verifyServiceMessagePart(body, sigProvider.GetBodySignature); err != nil { - return fmt.Errorf("could not verify body: %w", err) - } - return nil - }) - } - - if err := eg.Wait(); err != nil { - return false, err - } - - if !hasOriginHeader { - return true, nil - } - - if sigProvider.GetBodySignature() != nil { - return false, errors.New("body signature misses at the matryoshka upper level") - } - - return false, nil -} - -func verifyServiceResponse(v serviceResponse) error { - meta := v.GetMetaHeader() - verificationHeader := v.GetVerificationHeader() - body := serviceMessageBody(v) - return verifyServiceResponseRecursive(body, meta, verificationHeader) -} - -func verifyServiceResponseRecursive(body stableMarshaler, meta *session.ResponseMetaHeader, verify *session.ResponseVerificationHeader) error { - verificationHeaderOrigin := verify.GetOrigin() - metaOrigin := meta.GetOrigin() - - stop, err := verifyMessageParts(body, meta, verificationHeaderOrigin, verificationHeaderOrigin != nil, verify) - if err != nil { - return err - } - if stop { - return nil - } - - return verifyServiceResponseRecursive(body, metaOrigin, verificationHeaderOrigin) -} - -func verifyServiceMessagePart(part stableMarshaler, sigRdr func() *refs.Signature) error { - wrapper := StableMarshalerWrapper{ - SM: part, - } - - return signature.VerifyDataWithSource( - wrapper, - sigRdr, - ) -} diff --git a/status/convert.go b/status/convert.go deleted file mode 100644 index 6b34084..0000000 --- a/status/convert.go +++ /dev/null @@ -1,95 +0,0 @@ -package status - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/grpc" - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - status "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/grpc" -) - -func (x *Detail) ToGRPCMessage() grpc.Message { - var m *status.Status_Detail - - if x != nil { - m = new(status.Status_Detail) - - m.SetId(x.id) - m.SetValue(x.val) - } - - return m -} - -func (x *Detail) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*status.Status_Detail) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - x.id = v.GetId() - x.val = v.GetValue() - - return nil -} - -func CodeFromGRPC(v uint32) Code { - return Code(v) -} - -func CodeToGRPC(v Code) uint32 { - return uint32(v) -} - -func (x *Status) ToGRPCMessage() grpc.Message { - var m *status.Status - - if x != nil { - m = new(status.Status) - - m.SetCode(CodeToGRPC(x.code)) - m.SetMessage(x.msg) - - var ds []status.Status_Detail - - if ln := len(x.details); ln > 0 { - ds = make([]status.Status_Detail, 0, ln) - - for i := range ln { - ds = append(ds, *x.details[i].ToGRPCMessage().(*status.Status_Detail)) - } - } - - m.SetDetails(ds) - } - - return m -} - -func (x *Status) FromGRPCMessage(m grpc.Message) error { - v, ok := m.(*status.Status) - if !ok { - return message.NewUnexpectedMessageType(m, v) - } - - var ( - ds []Detail - dsV2 = v.GetDetails() - ) - - if dsV2 != nil { - ln := len(dsV2) - - ds = make([]Detail, ln) - - for i := range ln { - if err := ds[i].FromGRPCMessage(&dsV2[i]); err != nil { - return err - } - } - } - - x.details = ds - x.msg = v.GetMessage() - x.code = CodeFromGRPC(v.GetCode()) - - return nil -} diff --git a/status/details.go b/status/details.go deleted file mode 100644 index 5b8f460..0000000 --- a/status/details.go +++ /dev/null @@ -1,8 +0,0 @@ -package status - -// details for WrongMagicNumber code. -const ( - // DetailIDCorrectMagic is an identifier of details with correct network magic - // which can be attached to WrongMagicNumber code. - DetailIDCorrectMagic = iota -) diff --git a/status/grpc/types_frostfs.pb.go b/status/grpc/types_frostfs.pb.go deleted file mode 100644 index 6c62a0f..0000000 --- a/status/grpc/types_frostfs.pb.go +++ /dev/null @@ -1,694 +0,0 @@ -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package status - -import ( - json "encoding/json" - fmt "fmt" - pool "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/pool" - proto "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" - encoding "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto/encoding" - easyproto "github.com/VictoriaMetrics/easyproto" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" - strconv "strconv" -) - -type Section int32 - -const ( - Section_SECTION_SUCCESS Section = 0 - Section_SECTION_FAILURE_COMMON Section = 1 - Section_SECTION_OBJECT Section = 2 - Section_SECTION_CONTAINER Section = 3 - Section_SECTION_SESSION Section = 4 - Section_SECTION_APE_MANAGER Section = 5 -) - -var ( - Section_name = map[int32]string{ - 0: "SECTION_SUCCESS", - 1: "SECTION_FAILURE_COMMON", - 2: "SECTION_OBJECT", - 3: "SECTION_CONTAINER", - 4: "SECTION_SESSION", - 5: "SECTION_APE_MANAGER", - } - Section_value = map[string]int32{ - "SECTION_SUCCESS": 0, - "SECTION_FAILURE_COMMON": 1, - "SECTION_OBJECT": 2, - "SECTION_CONTAINER": 3, - "SECTION_SESSION": 4, - "SECTION_APE_MANAGER": 5, - } -) - -func (x Section) String() string { - if v, ok := Section_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *Section) FromString(s string) bool { - if v, ok := Section_value[s]; ok { - *x = Section(v) - return true - } - return false -} - -type Success int32 - -const ( - Success_OK Success = 0 -) - -var ( - Success_name = map[int32]string{ - 0: "OK", - } - Success_value = map[string]int32{ - "OK": 0, - } -) - -func (x Success) String() string { - if v, ok := Success_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *Success) FromString(s string) bool { - if v, ok := Success_value[s]; ok { - *x = Success(v) - return true - } - return false -} - -type CommonFail int32 - -const ( - CommonFail_INTERNAL CommonFail = 0 - CommonFail_WRONG_MAGIC_NUMBER CommonFail = 1 - CommonFail_SIGNATURE_VERIFICATION_FAIL CommonFail = 2 - CommonFail_NODE_UNDER_MAINTENANCE CommonFail = 3 - CommonFail_INVALID_ARGUMENT CommonFail = 4 -) - -var ( - CommonFail_name = map[int32]string{ - 0: "INTERNAL", - 1: "WRONG_MAGIC_NUMBER", - 2: "SIGNATURE_VERIFICATION_FAIL", - 3: "NODE_UNDER_MAINTENANCE", - 4: "INVALID_ARGUMENT", - } - CommonFail_value = map[string]int32{ - "INTERNAL": 0, - "WRONG_MAGIC_NUMBER": 1, - "SIGNATURE_VERIFICATION_FAIL": 2, - "NODE_UNDER_MAINTENANCE": 3, - "INVALID_ARGUMENT": 4, - } -) - -func (x CommonFail) String() string { - if v, ok := CommonFail_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *CommonFail) FromString(s string) bool { - if v, ok := CommonFail_value[s]; ok { - *x = CommonFail(v) - return true - } - return false -} - -type Object int32 - -const ( - Object_ACCESS_DENIED Object = 0 - Object_OBJECT_NOT_FOUND Object = 1 - Object_LOCKED Object = 2 - Object_LOCK_NON_REGULAR_OBJECT Object = 3 - Object_OBJECT_ALREADY_REMOVED Object = 4 - Object_OUT_OF_RANGE Object = 5 -) - -var ( - Object_name = map[int32]string{ - 0: "ACCESS_DENIED", - 1: "OBJECT_NOT_FOUND", - 2: "LOCKED", - 3: "LOCK_NON_REGULAR_OBJECT", - 4: "OBJECT_ALREADY_REMOVED", - 5: "OUT_OF_RANGE", - } - Object_value = map[string]int32{ - "ACCESS_DENIED": 0, - "OBJECT_NOT_FOUND": 1, - "LOCKED": 2, - "LOCK_NON_REGULAR_OBJECT": 3, - "OBJECT_ALREADY_REMOVED": 4, - "OUT_OF_RANGE": 5, - } -) - -func (x Object) String() string { - if v, ok := Object_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *Object) FromString(s string) bool { - if v, ok := Object_value[s]; ok { - *x = Object(v) - return true - } - return false -} - -type Container int32 - -const ( - Container_CONTAINER_NOT_FOUND Container = 0 - Container_EACL_NOT_FOUND Container = 1 - Container_CONTAINER_ACCESS_DENIED Container = 2 -) - -var ( - Container_name = map[int32]string{ - 0: "CONTAINER_NOT_FOUND", - 1: "EACL_NOT_FOUND", - 2: "CONTAINER_ACCESS_DENIED", - } - Container_value = map[string]int32{ - "CONTAINER_NOT_FOUND": 0, - "EACL_NOT_FOUND": 1, - "CONTAINER_ACCESS_DENIED": 2, - } -) - -func (x Container) String() string { - if v, ok := Container_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *Container) FromString(s string) bool { - if v, ok := Container_value[s]; ok { - *x = Container(v) - return true - } - return false -} - -type Session int32 - -const ( - Session_TOKEN_NOT_FOUND Session = 0 - Session_TOKEN_EXPIRED Session = 1 -) - -var ( - Session_name = map[int32]string{ - 0: "TOKEN_NOT_FOUND", - 1: "TOKEN_EXPIRED", - } - Session_value = map[string]int32{ - "TOKEN_NOT_FOUND": 0, - "TOKEN_EXPIRED": 1, - } -) - -func (x Session) String() string { - if v, ok := Session_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *Session) FromString(s string) bool { - if v, ok := Session_value[s]; ok { - *x = Session(v) - return true - } - return false -} - -type APEManager int32 - -const ( - APEManager_APE_MANAGER_ACCESS_DENIED APEManager = 0 -) - -var ( - APEManager_name = map[int32]string{ - 0: "APE_MANAGER_ACCESS_DENIED", - } - APEManager_value = map[string]int32{ - "APE_MANAGER_ACCESS_DENIED": 0, - } -) - -func (x APEManager) String() string { - if v, ok := APEManager_name[int32(x)]; ok { - return v - } - return strconv.FormatInt(int64(x), 10) -} -func (x *APEManager) FromString(s string) bool { - if v, ok := APEManager_value[s]; ok { - *x = APEManager(v) - return true - } - return false -} - -type Status_Detail struct { - Id uint32 `json:"id"` - Value []byte `json:"value"` -} - -var ( - _ encoding.ProtoMarshaler = (*Status_Detail)(nil) - _ encoding.ProtoUnmarshaler = (*Status_Detail)(nil) - _ json.Marshaler = (*Status_Detail)(nil) - _ json.Unmarshaler = (*Status_Detail)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Status_Detail) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.UInt32Size(1, x.Id) - size += proto.BytesSize(2, x.Value) - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Status_Detail) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Status_Detail) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Id != 0 { - mm.AppendUint32(1, x.Id) - } - if len(x.Value) != 0 { - mm.AppendBytes(2, x.Value) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Status_Detail) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Status_Detail") - } - switch fc.FieldNum { - case 1: // Id - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Id") - } - x.Id = data - case 2: // Value - data, ok := fc.Bytes() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Value") - } - x.Value = data - } - } - return nil -} -func (x *Status_Detail) GetId() uint32 { - if x != nil { - return x.Id - } - return 0 -} -func (x *Status_Detail) SetId(v uint32) { - x.Id = v -} -func (x *Status_Detail) GetValue() []byte { - if x != nil { - return x.Value - } - return nil -} -func (x *Status_Detail) SetValue(v []byte) { - x.Value = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Status_Detail) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Status_Detail) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"id\":" - out.RawString(prefix) - out.Uint32(x.Id) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"value\":" - out.RawString(prefix) - if x.Value != nil { - out.Base64Bytes(x.Value) - } else { - out.String("") - } - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Status_Detail) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Status_Detail) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "id": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Id = f - } - case "value": - { - var f []byte - { - tmp := in.Bytes() - if len(tmp) == 0 { - tmp = nil - } - f = tmp - } - x.Value = f - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} - -type Status struct { - Code uint32 `json:"code"` - Message string `json:"message"` - Details []Status_Detail `json:"details"` -} - -var ( - _ encoding.ProtoMarshaler = (*Status)(nil) - _ encoding.ProtoUnmarshaler = (*Status)(nil) - _ json.Marshaler = (*Status)(nil) - _ json.Unmarshaler = (*Status)(nil) -) - -// StableSize returns the size of x in protobuf format. -// -// Structures with the same field values have the same binary size. -func (x *Status) StableSize() (size int) { - if x == nil { - return 0 - } - size += proto.UInt32Size(1, x.Code) - size += proto.StringSize(2, x.Message) - for i := range x.Details { - size += proto.NestedStructureSizeUnchecked(3, &x.Details[i]) - } - return size -} - -// MarshalProtobuf implements the encoding.ProtoMarshaler interface. -func (x *Status) MarshalProtobuf(dst []byte) []byte { - m := pool.MarshalerPool.Get() - defer pool.MarshalerPool.Put(m) - x.EmitProtobuf(m.MessageMarshaler()) - dst = m.Marshal(dst) - return dst -} - -func (x *Status) EmitProtobuf(mm *easyproto.MessageMarshaler) { - if x == nil { - return - } - if x.Code != 0 { - mm.AppendUint32(1, x.Code) - } - if len(x.Message) != 0 { - mm.AppendString(2, x.Message) - } - for i := range x.Details { - x.Details[i].EmitProtobuf(mm.AppendMessage(3)) - } -} - -// UnmarshalProtobuf implements the encoding.ProtoUnmarshaler interface. -func (x *Status) UnmarshalProtobuf(src []byte) (err error) { - var fc easyproto.FieldContext - for len(src) > 0 { - src, err = fc.NextField(src) - if err != nil { - return fmt.Errorf("cannot read next field in %s", "Status") - } - switch fc.FieldNum { - case 1: // Code - data, ok := fc.Uint32() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Code") - } - x.Code = data - case 2: // Message - data, ok := fc.String() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Message") - } - x.Message = data - case 3: // Details - data, ok := fc.MessageData() - if !ok { - return fmt.Errorf("cannot unmarshal field %s", "Details") - } - x.Details = append(x.Details, Status_Detail{}) - ff := &x.Details[len(x.Details)-1] - if err := ff.UnmarshalProtobuf(data); err != nil { - return fmt.Errorf("unmarshal: %w", err) - } - } - } - return nil -} -func (x *Status) GetCode() uint32 { - if x != nil { - return x.Code - } - return 0 -} -func (x *Status) SetCode(v uint32) { - x.Code = v -} -func (x *Status) GetMessage() string { - if x != nil { - return x.Message - } - return "" -} -func (x *Status) SetMessage(v string) { - x.Message = v -} -func (x *Status) GetDetails() []Status_Detail { - if x != nil { - return x.Details - } - return nil -} -func (x *Status) SetDetails(v []Status_Detail) { - x.Details = v -} - -// MarshalJSON implements the json.Marshaler interface. -func (x *Status) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - x.MarshalEasyJSON(&w) - return w.Buffer.BuildBytes(), w.Error -} -func (x *Status) MarshalEasyJSON(out *jwriter.Writer) { - if x == nil { - out.RawString("null") - return - } - first := true - out.RawByte('{') - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"code\":" - out.RawString(prefix) - out.Uint32(x.Code) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"message\":" - out.RawString(prefix) - out.String(x.Message) - } - { - if !first { - out.RawByte(',') - } else { - first = false - } - const prefix string = "\"details\":" - out.RawString(prefix) - out.RawByte('[') - for i := range x.Details { - if i != 0 { - out.RawByte(',') - } - x.Details[i].MarshalEasyJSON(out) - } - out.RawByte(']') - } - out.RawByte('}') -} - -// UnmarshalJSON implements the json.Unmarshaler interface. -func (x *Status) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - x.UnmarshalEasyJSON(&r) - return r.Error() -} -func (x *Status) UnmarshalEasyJSON(in *jlexer.Lexer) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeFieldName(false) - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "code": - { - var f uint32 - r := in.JsonNumber() - n := r.String() - v, err := strconv.ParseUint(n, 10, 32) - if err != nil { - in.AddError(err) - return - } - pv := uint32(v) - f = pv - x.Code = f - } - case "message": - { - var f string - f = in.String() - x.Message = f - } - case "details": - { - var f Status_Detail - var list []Status_Detail - in.Delim('[') - for !in.IsDelim(']') { - f = Status_Detail{} - f.UnmarshalEasyJSON(in) - list = append(list, f) - in.WantComma() - } - x.Details = list - in.Delim(']') - } - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} diff --git a/status/grpc/types_frostfs_fuzz.go b/status/grpc/types_frostfs_fuzz.go deleted file mode 100644 index ce9d84e..0000000 --- a/status/grpc/types_frostfs_fuzz.go +++ /dev/null @@ -1,26 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package status - -func DoFuzzProtoStatus(data []byte) int { - msg := new(Status) - if err := msg.UnmarshalProtobuf(data); err != nil { - return 0 - } - _ = msg.MarshalProtobuf(nil) - return 1 -} -func DoFuzzJSONStatus(data []byte) int { - msg := new(Status) - if err := msg.UnmarshalJSON(data); err != nil { - return 0 - } - _, err := msg.MarshalJSON() - if err != nil { - panic(err) - } - return 1 -} diff --git a/status/grpc/types_frostfs_test.go b/status/grpc/types_frostfs_test.go deleted file mode 100644 index dfc5631..0000000 --- a/status/grpc/types_frostfs_test.go +++ /dev/null @@ -1,21 +0,0 @@ -//go:build gofuzz -// +build gofuzz - -// Code generated by protoc-gen-go-frostfs. DO NOT EDIT. - -package status - -import ( - testing "testing" -) - -func FuzzProtoStatus(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzProtoStatus(data) - }) -} -func FuzzJSONStatus(f *testing.F) { - f.Fuzz(func(t *testing.T, data []byte) { - DoFuzzJSONStatus(data) - }) -} diff --git a/status/marshal.go b/status/marshal.go deleted file mode 100644 index 2908e0d..0000000 --- a/status/marshal.go +++ /dev/null @@ -1,92 +0,0 @@ -package status - -import ( - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - status "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/grpc" - protoutil "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/util/proto" -) - -const ( - _ = iota - detailIDFNum - detailValueFNum -) - -func (x *Detail) StableMarshal(buf []byte) []byte { - if x == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, x.StableSize()) - } - - var offset int - - offset += protoutil.UInt32Marshal(detailIDFNum, buf[offset:], x.id) - protoutil.BytesMarshal(detailValueFNum, buf[offset:], x.val) - - return buf -} - -func (x *Detail) StableSize() (size int) { - if x == nil { - return 0 - } - - size += protoutil.UInt32Size(detailIDFNum, x.id) - size += protoutil.BytesSize(detailValueFNum, x.val) - - return size -} - -func (x *Detail) Unmarshal(data []byte) error { - return message.Unmarshal(x, data, new(status.Status_Detail)) -} - -const ( - _ = iota - statusCodeFNum - statusMsgFNum - statusDetailsFNum -) - -func (x *Status) StableMarshal(buf []byte) []byte { - if x == nil { - return []byte{} - } - - if buf == nil { - buf = make([]byte, x.StableSize()) - } - - var offset int - - offset += protoutil.UInt32Marshal(statusCodeFNum, buf[offset:], CodeToGRPC(x.code)) - offset += protoutil.StringMarshal(statusMsgFNum, buf[offset:], x.msg) - - for i := range x.details { - offset += protoutil.NestedStructureMarshal(statusDetailsFNum, buf[offset:], &x.details[i]) - } - - return buf -} - -func (x *Status) StableSize() (size int) { - if x == nil { - return 0 - } - - size += protoutil.UInt32Size(statusCodeFNum, CodeToGRPC(x.code)) - size += protoutil.StringSize(statusMsgFNum, x.msg) - - for i := range x.details { - size += protoutil.NestedStructureSize(statusDetailsFNum, &x.details[i]) - } - - return size -} - -func (x *Status) Unmarshal(data []byte) error { - return message.Unmarshal(x, data, new(status.Status)) -} diff --git a/status/message_test.go b/status/message_test.go deleted file mode 100644 index f16f152..0000000 --- a/status/message_test.go +++ /dev/null @@ -1,16 +0,0 @@ -package status_test - -import ( - "testing" - - "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message" - messagetest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/rpc/message/test" - statustest "git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/status/test" -) - -func TestMessageConvert(t *testing.T) { - messagetest.TestRPCMessage(t, - func(empty bool) message.Message { return statustest.Detail(empty) }, - func(empty bool) message.Message { return statustest.Status(empty) }, - ) -} diff --git a/status/status.go b/status/status.go deleted file mode 100644 index 53d361e..0000000 --- a/status/status.go +++ /dev/null @@ -1,103 +0,0 @@ -package status - -const sectionBitSize = 10 - -// InSections checks if the Code is in [i,j] section list. -func (x Code) InSections(i, j uint32) bool { - return uint32(x) >= i<