[#74] apemanager: Generate protobufs for apemanager service
* Generate protobufs. * Make marshallers, unmarshallers, json-encoders etc. * Create message encoding/decoding unit-tests. Signed-off-by: Airat Arifullin <a.arifullin@yadro.com>
This commit is contained in:
parent
67c6f305b2
commit
387b850e5e
17 changed files with 3375 additions and 45 deletions
244
apemanager/types.go
Normal file
244
apemanager/types.go
Normal file
|
@ -0,0 +1,244 @@
|
|||
package apemanager
|
||||
|
||||
import (
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-api-go/v2/session"
|
||||
)
|
||||
|
||||
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 AddChainRequest struct {
|
||||
body *AddChainRequestBody
|
||||
|
||||
session.RequestHeaders
|
||||
}
|
||||
|
||||
func (r *AddChainRequest) SetBody(body *AddChainRequestBody) {
|
||||
r.body = body
|
||||
}
|
||||
|
||||
func (r *AddChainRequest) GetBody() *AddChainRequestBody {
|
||||
return r.body
|
||||
}
|
||||
|
||||
type chainKind interface {
|
||||
isChainKind()
|
||||
}
|
||||
|
||||
type Chain struct {
|
||||
kind chainKind
|
||||
}
|
||||
|
||||
func (c *Chain) SetKind(kind chainKind) {
|
||||
c.kind = kind
|
||||
}
|
||||
|
||||
func (c *Chain) GetKind() chainKind {
|
||||
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 {
|
||||
return c.Raw
|
||||
}
|
||||
|
||||
type AddChainRequestBody struct {
|
||||
target *ChainTarget
|
||||
|
||||
chain *Chain
|
||||
}
|
||||
|
||||
func (rb *AddChainRequestBody) SetTarget(target *ChainTarget) {
|
||||
rb.target = target
|
||||
}
|
||||
|
||||
func (rb *AddChainRequestBody) GetTarget() *ChainTarget {
|
||||
return rb.target
|
||||
}
|
||||
|
||||
func (rb *AddChainRequestBody) SetChain(chain *Chain) {
|
||||
rb.chain = chain
|
||||
}
|
||||
|
||||
func (rb *AddChainRequestBody) GetChain() *Chain {
|
||||
return rb.chain
|
||||
}
|
||||
|
||||
type AddChainResponse struct {
|
||||
body *AddChainResponseBody
|
||||
|
||||
session.ResponseHeaders
|
||||
}
|
||||
|
||||
func (r *AddChainResponse) SetBody(body *AddChainResponseBody) {
|
||||
r.body = body
|
||||
}
|
||||
|
||||
func (r *AddChainResponse) GetBody() *AddChainResponseBody {
|
||||
return r.body
|
||||
}
|
||||
|
||||
type AddChainResponseBody struct {
|
||||
chainID []byte
|
||||
}
|
||||
|
||||
func (rb *AddChainResponseBody) SetChainID(chainID []byte) {
|
||||
rb.chainID = chainID
|
||||
}
|
||||
|
||||
func (rb *AddChainResponseBody) GetChainID() []byte {
|
||||
return rb.chainID
|
||||
}
|
||||
|
||||
type RemoveChainRequest struct {
|
||||
body *RemoveChainRequestBody
|
||||
|
||||
session.RequestHeaders
|
||||
}
|
||||
|
||||
func (r *RemoveChainRequest) SetBody(body *RemoveChainRequestBody) {
|
||||
r.body = body
|
||||
}
|
||||
|
||||
func (r *RemoveChainRequest) GetBody() *RemoveChainRequestBody {
|
||||
return r.body
|
||||
}
|
||||
|
||||
type RemoveChainRequestBody struct {
|
||||
target *ChainTarget
|
||||
|
||||
chainID []byte
|
||||
}
|
||||
|
||||
func (rb *RemoveChainRequestBody) SetTarget(target *ChainTarget) {
|
||||
rb.target = target
|
||||
}
|
||||
|
||||
func (rb *RemoveChainRequestBody) GetTarget() *ChainTarget {
|
||||
return rb.target
|
||||
}
|
||||
|
||||
func (rb *RemoveChainRequestBody) SetChainID(chainID []byte) {
|
||||
rb.chainID = chainID
|
||||
}
|
||||
|
||||
func (rb *RemoveChainRequestBody) GetChainID() []byte {
|
||||
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 {
|
||||
return r.body
|
||||
}
|
||||
|
||||
type ListChainsRequest struct {
|
||||
body *ListChainsRequestBody
|
||||
|
||||
session.RequestHeaders
|
||||
}
|
||||
|
||||
func (r *ListChainsRequest) SetBody(body *ListChainsRequestBody) {
|
||||
r.body = body
|
||||
}
|
||||
|
||||
func (r *ListChainsRequest) GetBody() *ListChainsRequestBody {
|
||||
return r.body
|
||||
}
|
||||
|
||||
type ListChainsRequestBody struct {
|
||||
target *ChainTarget
|
||||
}
|
||||
|
||||
func (rb *ListChainsRequestBody) SetTarget(target *ChainTarget) {
|
||||
rb.target = target
|
||||
}
|
||||
|
||||
func (rb *ListChainsRequestBody) GetTarget() *ChainTarget {
|
||||
return rb.target
|
||||
}
|
||||
|
||||
type ListChainsResponse struct {
|
||||
body *ListChainsResponseBody
|
||||
|
||||
session.ResponseHeaders
|
||||
}
|
||||
|
||||
func (r *ListChainsResponse) SetBody(body *ListChainsResponseBody) {
|
||||
r.body = body
|
||||
}
|
||||
|
||||
func (r *ListChainsResponse) GetBody() *ListChainsResponseBody {
|
||||
return r.body
|
||||
}
|
||||
|
||||
type ListChainsResponseBody struct {
|
||||
chains []*Chain
|
||||
|
||||
session.RequestHeaders
|
||||
}
|
||||
|
||||
func (r *ListChainsResponseBody) SetChains(chains []*Chain) {
|
||||
r.chains = chains
|
||||
}
|
||||
|
||||
func (r *ListChainsResponseBody) GetChains() []*Chain {
|
||||
return r.chains
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue