From 505ef59dd647a595350743d1e13dc815b7a38cb5 Mon Sep 17 00:00:00 2001 From: Alex Vanin Date: Fri, 4 Sep 2020 11:47:15 +0300 Subject: [PATCH] [#134] v2/netmap: Regenerate proto files Signed-off-by: Alex Vanin --- v2/netmap/grpc/service.go | 62 ++++++++++++++ v2/netmap/grpc/service.pb.go | Bin 0 -> 34266 bytes v2/netmap/grpc/types.go | 158 +++++++++++++++++++---------------- v2/netmap/grpc/types.pb.go | Bin 66558 -> 53572 bytes 4 files changed, 150 insertions(+), 70 deletions(-) create mode 100644 v2/netmap/grpc/service.go create mode 100644 v2/netmap/grpc/service.pb.go diff --git a/v2/netmap/grpc/service.go b/v2/netmap/grpc/service.go new file mode 100644 index 00000000..8f27bfdf --- /dev/null +++ b/v2/netmap/grpc/service.go @@ -0,0 +1,62 @@ +package netmap + +import ( + "github.com/nspcc-dev/neofs-api-go/v2/refs/grpc" + "github.com/nspcc-dev/neofs-api-go/v2/session/grpc" +) + +// SetBody sets body of the request. +func (m *LocalNodeInfoRequest) SetBody(v *LocalNodeInfoRequest_Body) { + if m != nil { + m.Body = v + } +} + +// SetMetaHeader sets meta header of the request. +func (m *LocalNodeInfoRequest) SetMetaHeader(v *session.RequestMetaHeader) { + if m != nil { + m.MetaHeader = v + } +} + +// SetVerifyHeader sets verification header of the request. +func (m *LocalNodeInfoRequest) SetVerifyHeader(v *session.RequestVerificationHeader) { + if m != nil { + m.VerifyHeader = v + } +} + +// SetVersion sets version of response body. +func (m *LocalNodeInfoResponse_Body) SetVersion(v *refs.Version) { + if m != nil { + m.Version = v + } +} + +// SetNodeInfo sets node info of response body. +func (m *LocalNodeInfoResponse_Body) SetNodeInfo(v *NodeInfo) { + if m != nil { + m.NodeInfo = v + } +} + +// SetBody sets body of the response. +func (m *LocalNodeInfoResponse) SetBody(v *LocalNodeInfoResponse_Body) { + if m != nil { + m.Body = v + } +} + +// SetMetaHeader sets meta header of the response. +func (m *LocalNodeInfoResponse) SetMetaHeader(v *session.ResponseMetaHeader) { + if m != nil { + m.MetaHeader = v + } +} + +// SetVerifyHeader sets verification header of the response. +func (m *LocalNodeInfoResponse) SetVerifyHeader(v *session.ResponseVerificationHeader) { + if m != nil { + m.VerifyHeader = v + } +} diff --git a/v2/netmap/grpc/service.pb.go b/v2/netmap/grpc/service.pb.go new file mode 100644 index 0000000000000000000000000000000000000000..54b7d8c95248d175b901bf81802ed18754b36229 GIT binary patch literal 34266 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 T+4Tmz*v6wb{M)+zcJu!Mfc`+> literal 0 HcmV?d00001 diff --git a/v2/netmap/grpc/types.go b/v2/netmap/grpc/types.go index a5e2cb3e..a912cb23 100644 --- a/v2/netmap/grpc/types.go +++ b/v2/netmap/grpc/types.go @@ -1,97 +1,108 @@ package netmap -// SetOp sets operation of the simple filter. -func (m *PlacementPolicy_FilterGroup_Filter_SimpleFilter) SetOp(v PlacementPolicy_FilterGroup_Filter_SimpleFilter_Operation) { +// SetReplicas of placement policy. +func (m *PlacementPolicy) SetReplicas(v []*Replica) { if m != nil { - m.Op = v + m.Replicas = v } } -// SetValue sets value of the simple filter. -func (m *PlacementPolicy_FilterGroup_Filter_SimpleFilter) SetValue(v string) { +// SetContainerBackupFactor of placement policy. +func (m *PlacementPolicy) SetContainerBackupFactor(v uint32) { if m != nil { - m.Args = &PlacementPolicy_FilterGroup_Filter_SimpleFilter_Value{ - Value: v, - } + m.ContainerBackupFactor = v } } -// SetFArgs sets filter args of the simple filter. -func (m *PlacementPolicy_FilterGroup_Filter_SimpleFilter) SetFArgs(v *PlacementPolicy_FilterGroup_Filter_SimpleFilter_SimpleFilters) { - if m != nil { - m.Args = &PlacementPolicy_FilterGroup_Filter_SimpleFilter_FArgs{ - FArgs: v, - } - } -} - -// SetFilters sets list of the simple filters. -func (m *PlacementPolicy_FilterGroup_Filter_SimpleFilter_SimpleFilters) SetFilters(v []*PlacementPolicy_FilterGroup_Filter_SimpleFilter) { - if m != nil { - m.Filters = v - } -} - -// SeyKey sets key of the filter. -func (m *PlacementPolicy_FilterGroup_Filter) SeyKey(v string) { - if m != nil { - m.Key = v - } -} - -// SetF sets simple filter of the filter. -func (m *PlacementPolicy_FilterGroup_Filter) SetF(v *PlacementPolicy_FilterGroup_Filter_SimpleFilter) { - if m != nil { - m.F = v - } -} - -// SetCount sets count value of the selector. -func (m *PlacementPolicy_FilterGroup_Selector) SetCount(v uint32) { - if m != nil { - m.Count = v - } -} - -// SetKey sets key of the selector. -func (m *PlacementPolicy_FilterGroup_Selector) SetKey(v string) { - if m != nil { - m.Key = v - } -} - -// SetFilters sets list of the filters. -func (m *PlacementPolicy_FilterGroup) SetFilters(v []*PlacementPolicy_FilterGroup_Filter) { - if m != nil { - m.Filters = v - } -} - -// SetSelectors sets list of the selectors. -func (m *PlacementPolicy_FilterGroup) SetSelectors(v []*PlacementPolicy_FilterGroup_Selector) { +// SetSelectors of placement policy. +func (m *PlacementPolicy) SetSelectors(v []*Selector) { if m != nil { m.Selectors = v } } -// SetExclude sets exclude list. -func (m *PlacementPolicy_FilterGroup) SetExclude(v []uint32) { +// SetFilters of placement policy. +func (m *PlacementPolicy) SetFilters(v []*Filter) { if m != nil { - m.Exclude = v + m.Filters = v } } -// SetReplFactor sets replication factor of the placement rule. -func (m *PlacementPolicy) SetReplFactor(v uint32) { +// SetName of placement filter. +func (m *Filter) SetName(v string) { if m != nil { - m.ReplFactor = v + m.Name = v } } -// SetSfGroups sets list of the selector-filter groups. -func (m *PlacementPolicy) SetSfGroups(v []*PlacementPolicy_FilterGroup) { +// SetKey of placement filter. +func (m *Filter) SetKey(v string) { if m != nil { - m.FilterGroups = v + m.Key = v + } +} + +// SetOperation of placement filter. +func (m *Filter) SetOp(v Operation) { + if m != nil { + m.Op = v + + } +} + +// SetValue of placement filter. +func (m *Filter) SetValue(v string) { + if m != nil { + m.Value = v + } +} + +// SetFilters sets sub-filters of placement filter. +func (m *Filter) SetFilters(v []*Filter) { + if m != nil { + m.Filters = v + } +} + +// SetName of placement selector. +func (m *Selector) SetName(v string) { + if m != nil { + m.Name = v + } +} + +// SetCount of nodes of placement selector. +func (m *Selector) SetCount(v uint32) { + if m != nil { + m.Count = v + } +} + +// SetAttribute of nodes of placement selector. +func (m *Selector) SetAttribute(v string) { + if m != nil { + m.Attribute = v + } +} + +// SetFilter of placement selector. +func (m *Selector) SetFilter(v string) { + if m != nil { + m.Filter = v + } +} + +// SetCount of object replica. +func (m *Replica) SetCount(v uint32) { + if m != nil { + m.Count = v + } +} + +// SetSelector of object replica. +func (m *Replica) SetSelector(v string) { + if m != nil { + m.Selector = v } } @@ -109,6 +120,13 @@ func (m *NodeInfo_Attribute) SetValue(v string) { } } +// SetParent sets value of the node parents. +func (m *NodeInfo_Attribute) SetParents(v []string) { + if m != nil { + m.Parents = v + } +} + // SetAddress sets node network address. func (m *NodeInfo) SetAddress(v string) { if m != nil { diff --git a/v2/netmap/grpc/types.pb.go b/v2/netmap/grpc/types.pb.go index a21ea50fcb3848a5d5bf9a4692aad861402779fc..5b0376fc5597a39ef852c444734b5729182c02ca 100644 GIT binary patch literal 53572 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 E|CxAP?f?J) literal 66558 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 E0|R0K`2YX_