text:
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: pool.proto

package mgmt

import (
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	math "math"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package

type PoolRebuildStatus_State int32

const (
	PoolRebuildStatus_IDLE PoolRebuildStatus_State = 0
	PoolRebuildStatus_DONE PoolRebuildStatus_State = 1
	PoolRebuildStatus_BUSY PoolRebuildStatus_State = 2
)

var PoolRebuildStatus_State_name = map[int32]string{
	0: "IDLE",
	1: "DONE",
	2: "BUSY",
}

var PoolRebuildStatus_State_value = map[string]int32{
	"IDLE": 0,
	"DONE": 1,
	"BUSY": 2,
}

func (x PoolRebuildStatus_State) String() string {
	return proto.EnumName(PoolRebuildStatus_State_name, int32(x))
}

func (PoolRebuildStatus_State) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{20, 0}
}

// PoolCreateReq supplies new pool parameters.
type PoolCreateReq struct {
	Scmbytes             uint64   `protobuf:"varint,1,opt,name=scmbytes,proto3" json:"scmbytes,omitempty"`
	Nvmebytes            uint64   `protobuf:"varint,2,opt,name=nvmebytes,proto3" json:"nvmebytes,omitempty"`
	Ranks                []uint32 `protobuf:"varint,3,rep,packed,name=ranks,proto3" json:"ranks,omitempty"`
	Numsvcreps           uint32   `protobuf:"varint,4,opt,name=numsvcreps,proto3" json:"numsvcreps,omitempty"`
	User                 string   `protobuf:"bytes,5,opt,name=user,proto3" json:"user,omitempty"`
	Usergroup            string   `protobuf:"bytes,6,opt,name=usergroup,proto3" json:"usergroup,omitempty"`
	Uuid                 string   `protobuf:"bytes,7,opt,name=uuid,proto3" json:"uuid,omitempty"`
	Sys                  string   `protobuf:"bytes,8,opt,name=sys,proto3" json:"sys,omitempty"`
	Acl                  []string `protobuf:"bytes,9,rep,name=acl,proto3" json:"acl,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolCreateReq) Reset()         { *m = PoolCreateReq{} }
func (m *PoolCreateReq) String() string { return proto.CompactTextString(m) }
func (*PoolCreateReq) ProtoMessage()    {}
func (*PoolCreateReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{0}
}

func (m *PoolCreateReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolCreateReq.Unmarshal(m, b)
}
func (m *PoolCreateReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolCreateReq.Marshal(b, m, deterministic)
}
func (m *PoolCreateReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolCreateReq.Merge(m, src)
}
func (m *PoolCreateReq) XXX_Size() int {
	return xxx_messageInfo_PoolCreateReq.Size(m)
}
func (m *PoolCreateReq) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolCreateReq.DiscardUnknown(m)
}

var xxx_messageInfo_PoolCreateReq proto.InternalMessageInfo

func (m *PoolCreateReq) GetScmbytes() uint64 {
	if m != nil {
		return m.Scmbytes
	}
	return 0
}

func (m *PoolCreateReq) GetNvmebytes() uint64 {
	if m != nil {
		return m.Nvmebytes
	}
	return 0
}

func (m *PoolCreateReq) GetRanks() []uint32 {
	if m != nil {
		return m.Ranks
	}
	return nil
}

func (m *PoolCreateReq) GetNumsvcreps() uint32 {
	if m != nil {
		return m.Numsvcreps
	}
	return 0
}

func (m *PoolCreateReq) GetUser() string {
	if m != nil {
		return m.User
	}
	return ""
}

func (m *PoolCreateReq) GetUsergroup() string {
	if m != nil {
		return m.Usergroup
	}
	return ""
}

func (m *PoolCreateReq) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

func (m *PoolCreateReq) GetSys() string {
	if m != nil {
		return m.Sys
	}
	return ""
}

func (m *PoolCreateReq) GetAcl() []string {
	if m != nil {
		return m.Acl
	}
	return nil
}

// PoolCreateResp returns created pool uuid and ranks.
type PoolCreateResp struct {
	Status               int32    `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
	Svcreps              []uint32 `protobuf:"varint,2,rep,packed,name=svcreps,proto3" json:"svcreps,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolCreateResp) Reset()         { *m = PoolCreateResp{} }
func (m *PoolCreateResp) String() string { return proto.CompactTextString(m) }
func (*PoolCreateResp) ProtoMessage()    {}
func (*PoolCreateResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{1}
}

func (m *PoolCreateResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolCreateResp.Unmarshal(m, b)
}
func (m *PoolCreateResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolCreateResp.Marshal(b, m, deterministic)
}
func (m *PoolCreateResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolCreateResp.Merge(m, src)
}
func (m *PoolCreateResp) XXX_Size() int {
	return xxx_messageInfo_PoolCreateResp.Size(m)
}
func (m *PoolCreateResp) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolCreateResp.DiscardUnknown(m)
}

var xxx_messageInfo_PoolCreateResp proto.InternalMessageInfo

func (m *PoolCreateResp) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

func (m *PoolCreateResp) GetSvcreps() []uint32 {
	if m != nil {
		return m.Svcreps
	}
	return nil
}

// PoolDestroyReq supplies pool identifier and force flag.
type PoolDestroyReq struct {
	Uuid                 string   `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	Sys                  string   `protobuf:"bytes,2,opt,name=sys,proto3" json:"sys,omitempty"`
	Force                bool     `protobuf:"varint,3,opt,name=force,proto3" json:"force,omitempty"`
	SvcRanks             []uint32 `protobuf:"varint,4,rep,packed,name=svc_ranks,json=svcRanks,proto3" json:"svc_ranks,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolDestroyReq) Reset()         { *m = PoolDestroyReq{} }
func (m *PoolDestroyReq) String() string { return proto.CompactTextString(m) }
func (*PoolDestroyReq) ProtoMessage()    {}
func (*PoolDestroyReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{2}
}

func (m *PoolDestroyReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolDestroyReq.Unmarshal(m, b)
}
func (m *PoolDestroyReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolDestroyReq.Marshal(b, m, deterministic)
}
func (m *PoolDestroyReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolDestroyReq.Merge(m, src)
}
func (m *PoolDestroyReq) XXX_Size() int {
	return xxx_messageInfo_PoolDestroyReq.Size(m)
}
func (m *PoolDestroyReq) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolDestroyReq.DiscardUnknown(m)
}

var xxx_messageInfo_PoolDestroyReq proto.InternalMessageInfo

func (m *PoolDestroyReq) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

func (m *PoolDestroyReq) GetSys() string {
	if m != nil {
		return m.Sys
	}
	return ""
}

func (m *PoolDestroyReq) GetForce() bool {
	if m != nil {
		return m.Force
	}
	return false
}

func (m *PoolDestroyReq) GetSvcRanks() []uint32 {
	if m != nil {
		return m.SvcRanks
	}
	return nil
}

// PoolDestroyResp returns resultant state of destroy operation.
type PoolDestroyResp struct {
	Status               int32    `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolDestroyResp) Reset()         { *m = PoolDestroyResp{} }
func (m *PoolDestroyResp) String() string { return proto.CompactTextString(m) }
func (*PoolDestroyResp) ProtoMessage()    {}
func (*PoolDestroyResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{3}
}

func (m *PoolDestroyResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolDestroyResp.Unmarshal(m, b)
}
func (m *PoolDestroyResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolDestroyResp.Marshal(b, m, deterministic)
}
func (m *PoolDestroyResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolDestroyResp.Merge(m, src)
}
func (m *PoolDestroyResp) XXX_Size() int {
	return xxx_messageInfo_PoolDestroyResp.Size(m)
}
func (m *PoolDestroyResp) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolDestroyResp.DiscardUnknown(m)
}

var xxx_messageInfo_PoolDestroyResp proto.InternalMessageInfo

func (m *PoolDestroyResp) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

// PoolEvictReq supplies pool identifier.
type PoolEvictReq struct {
	Uuid                 string   `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	Sys                  string   `protobuf:"bytes,2,opt,name=sys,proto3" json:"sys,omitempty"`
	SvcRanks             []uint32 `protobuf:"varint,3,rep,packed,name=svc_ranks,json=svcRanks,proto3" json:"svc_ranks,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolEvictReq) Reset()         { *m = PoolEvictReq{} }
func (m *PoolEvictReq) String() string { return proto.CompactTextString(m) }
func (*PoolEvictReq) ProtoMessage()    {}
func (*PoolEvictReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{4}
}

func (m *PoolEvictReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolEvictReq.Unmarshal(m, b)
}
func (m *PoolEvictReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolEvictReq.Marshal(b, m, deterministic)
}
func (m *PoolEvictReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolEvictReq.Merge(m, src)
}
func (m *PoolEvictReq) XXX_Size() int {
	return xxx_messageInfo_PoolEvictReq.Size(m)
}
func (m *PoolEvictReq) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolEvictReq.DiscardUnknown(m)
}

var xxx_messageInfo_PoolEvictReq proto.InternalMessageInfo

func (m *PoolEvictReq) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

func (m *PoolEvictReq) GetSys() string {
	if m != nil {
		return m.Sys
	}
	return ""
}

func (m *PoolEvictReq) GetSvcRanks() []uint32 {
	if m != nil {
		return m.SvcRanks
	}
	return nil
}

// PoolEvictResp returns resultant state of evict operation.
type PoolEvictResp struct {
	Status               int32    `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolEvictResp) Reset()         { *m = PoolEvictResp{} }
func (m *PoolEvictResp) String() string { return proto.CompactTextString(m) }
func (*PoolEvictResp) ProtoMessage()    {}
func (*PoolEvictResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{5}
}

func (m *PoolEvictResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolEvictResp.Unmarshal(m, b)
}
func (m *PoolEvictResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolEvictResp.Marshal(b, m, deterministic)
}
func (m *PoolEvictResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolEvictResp.Merge(m, src)
}
func (m *PoolEvictResp) XXX_Size() int {
	return xxx_messageInfo_PoolEvictResp.Size(m)
}
func (m *PoolEvictResp) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolEvictResp.DiscardUnknown(m)
}

var xxx_messageInfo_PoolEvictResp proto.InternalMessageInfo

func (m *PoolEvictResp) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

// PoolExcludeReq supplies pool identifier, rank, and target_idxs.
type PoolExcludeReq struct {
	Uuid                 string   `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	Rank                 uint32   `protobuf:"varint,2,opt,name=rank,proto3" json:"rank,omitempty"`
	Targetidx            []uint32 `protobuf:"varint,3,rep,packed,name=targetidx,proto3" json:"targetidx,omitempty"`
	SvcRanks             []uint32 `protobuf:"varint,4,rep,packed,name=svc_ranks,json=svcRanks,proto3" json:"svc_ranks,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolExcludeReq) Reset()         { *m = PoolExcludeReq{} }
func (m *PoolExcludeReq) String() string { return proto.CompactTextString(m) }
func (*PoolExcludeReq) ProtoMessage()    {}
func (*PoolExcludeReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{6}
}

func (m *PoolExcludeReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolExcludeReq.Unmarshal(m, b)
}
func (m *PoolExcludeReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolExcludeReq.Marshal(b, m, deterministic)
}
func (m *PoolExcludeReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolExcludeReq.Merge(m, src)
}
func (m *PoolExcludeReq) XXX_Size() int {
	return xxx_messageInfo_PoolExcludeReq.Size(m)
}
func (m *PoolExcludeReq) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolExcludeReq.DiscardUnknown(m)
}

var xxx_messageInfo_PoolExcludeReq proto.InternalMessageInfo

func (m *PoolExcludeReq) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

func (m *PoolExcludeReq) GetRank() uint32 {
	if m != nil {
		return m.Rank
	}
	return 0
}

func (m *PoolExcludeReq) GetTargetidx() []uint32 {
	if m != nil {
		return m.Targetidx
	}
	return nil
}

func (m *PoolExcludeReq) GetSvcRanks() []uint32 {
	if m != nil {
		return m.SvcRanks
	}
	return nil
}

// PoolExcludeResp returns resultant state of Exclude operation.
type PoolExcludeResp struct {
	Status               int32    `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolExcludeResp) Reset()         { *m = PoolExcludeResp{} }
func (m *PoolExcludeResp) String() string { return proto.CompactTextString(m) }
func (*PoolExcludeResp) ProtoMessage()    {}
func (*PoolExcludeResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{7}
}

func (m *PoolExcludeResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolExcludeResp.Unmarshal(m, b)
}
func (m *PoolExcludeResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolExcludeResp.Marshal(b, m, deterministic)
}
func (m *PoolExcludeResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolExcludeResp.Merge(m, src)
}
func (m *PoolExcludeResp) XXX_Size() int {
	return xxx_messageInfo_PoolExcludeResp.Size(m)
}
func (m *PoolExcludeResp) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolExcludeResp.DiscardUnknown(m)
}

var xxx_messageInfo_PoolExcludeResp proto.InternalMessageInfo

func (m *PoolExcludeResp) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

// PoolDrainReq supplies pool identifier, rank, and target_idxs.
type PoolDrainReq struct {
	Uuid                 string   `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	Rank                 uint32   `protobuf:"varint,2,opt,name=rank,proto3" json:"rank,omitempty"`
	Targetidx            []uint32 `protobuf:"varint,3,rep,packed,name=targetidx,proto3" json:"targetidx,omitempty"`
	SvcRanks             []uint32 `protobuf:"varint,4,rep,packed,name=svc_ranks,json=svcRanks,proto3" json:"svc_ranks,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolDrainReq) Reset()         { *m = PoolDrainReq{} }
func (m *PoolDrainReq) String() string { return proto.CompactTextString(m) }
func (*PoolDrainReq) ProtoMessage()    {}
func (*PoolDrainReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{8}
}

func (m *PoolDrainReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolDrainReq.Unmarshal(m, b)
}
func (m *PoolDrainReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolDrainReq.Marshal(b, m, deterministic)
}
func (m *PoolDrainReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolDrainReq.Merge(m, src)
}
func (m *PoolDrainReq) XXX_Size() int {
	return xxx_messageInfo_PoolDrainReq.Size(m)
}
func (m *PoolDrainReq) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolDrainReq.DiscardUnknown(m)
}

var xxx_messageInfo_PoolDrainReq proto.InternalMessageInfo

func (m *PoolDrainReq) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

func (m *PoolDrainReq) GetRank() uint32 {
	if m != nil {
		return m.Rank
	}
	return 0
}

func (m *PoolDrainReq) GetTargetidx() []uint32 {
	if m != nil {
		return m.Targetidx
	}
	return nil
}

func (m *PoolDrainReq) GetSvcRanks() []uint32 {
	if m != nil {
		return m.SvcRanks
	}
	return nil
}

// PoolDrainResp returns resultant state of Drain operation.
type PoolDrainResp struct {
	Status               int32    `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolDrainResp) Reset()         { *m = PoolDrainResp{} }
func (m *PoolDrainResp) String() string { return proto.CompactTextString(m) }
func (*PoolDrainResp) ProtoMessage()    {}
func (*PoolDrainResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{9}
}

func (m *PoolDrainResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolDrainResp.Unmarshal(m, b)
}
func (m *PoolDrainResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolDrainResp.Marshal(b, m, deterministic)
}
func (m *PoolDrainResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolDrainResp.Merge(m, src)
}
func (m *PoolDrainResp) XXX_Size() int {
	return xxx_messageInfo_PoolDrainResp.Size(m)
}
func (m *PoolDrainResp) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolDrainResp.DiscardUnknown(m)
}

var xxx_messageInfo_PoolDrainResp proto.InternalMessageInfo

func (m *PoolDrainResp) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

// PoolExtendReq supplies pool identifier and rank list.
type PoolExtendReq struct {
	Uuid                 string   `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	Ranks                []uint32 `protobuf:"varint,2,rep,packed,name=ranks,proto3" json:"ranks,omitempty"`
	SvcRanks             []uint32 `protobuf:"varint,3,rep,packed,name=svc_ranks,json=svcRanks,proto3" json:"svc_ranks,omitempty"`
	Scmbytes             uint64   `protobuf:"varint,4,opt,name=scmbytes,proto3" json:"scmbytes,omitempty"`
	Nvmebytes            uint64   `protobuf:"varint,5,opt,name=nvmebytes,proto3" json:"nvmebytes,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolExtendReq) Reset()         { *m = PoolExtendReq{} }
func (m *PoolExtendReq) String() string { return proto.CompactTextString(m) }
func (*PoolExtendReq) ProtoMessage()    {}
func (*PoolExtendReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{10}
}

func (m *PoolExtendReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolExtendReq.Unmarshal(m, b)
}
func (m *PoolExtendReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolExtendReq.Marshal(b, m, deterministic)
}
func (m *PoolExtendReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolExtendReq.Merge(m, src)
}
func (m *PoolExtendReq) XXX_Size() int {
	return xxx_messageInfo_PoolExtendReq.Size(m)
}
func (m *PoolExtendReq) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolExtendReq.DiscardUnknown(m)
}

var xxx_messageInfo_PoolExtendReq proto.InternalMessageInfo

func (m *PoolExtendReq) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

func (m *PoolExtendReq) GetRanks() []uint32 {
	if m != nil {
		return m.Ranks
	}
	return nil
}

func (m *PoolExtendReq) GetSvcRanks() []uint32 {
	if m != nil {
		return m.SvcRanks
	}
	return nil
}

func (m *PoolExtendReq) GetScmbytes() uint64 {
	if m != nil {
		return m.Scmbytes
	}
	return 0
}

func (m *PoolExtendReq) GetNvmebytes() uint64 {
	if m != nil {
		return m.Nvmebytes
	}
	return 0
}

// PoolExtendResp returns resultant state of Extend operation.
type PoolExtendResp struct {
	Status               int32    `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolExtendResp) Reset()         { *m = PoolExtendResp{} }
func (m *PoolExtendResp) String() string { return proto.CompactTextString(m) }
func (*PoolExtendResp) ProtoMessage()    {}
func (*PoolExtendResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{11}
}

func (m *PoolExtendResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolExtendResp.Unmarshal(m, b)
}
func (m *PoolExtendResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolExtendResp.Marshal(b, m, deterministic)
}
func (m *PoolExtendResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolExtendResp.Merge(m, src)
}
func (m *PoolExtendResp) XXX_Size() int {
	return xxx_messageInfo_PoolExtendResp.Size(m)
}
func (m *PoolExtendResp) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolExtendResp.DiscardUnknown(m)
}

var xxx_messageInfo_PoolExtendResp proto.InternalMessageInfo

func (m *PoolExtendResp) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

// PoolReintegrateReq supplies pool identifier, rank, and target_idxs.
type PoolReintegrateReq struct {
	Uuid                 string   `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	Rank                 uint32   `protobuf:"varint,2,opt,name=rank,proto3" json:"rank,omitempty"`
	Targetidx            []uint32 `protobuf:"varint,3,rep,packed,name=targetidx,proto3" json:"targetidx,omitempty"`
	SvcRanks             []uint32 `protobuf:"varint,4,rep,packed,name=svc_ranks,json=svcRanks,proto3" json:"svc_ranks,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolReintegrateReq) Reset()         { *m = PoolReintegrateReq{} }
func (m *PoolReintegrateReq) String() string { return proto.CompactTextString(m) }
func (*PoolReintegrateReq) ProtoMessage()    {}
func (*PoolReintegrateReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{12}
}

func (m *PoolReintegrateReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolReintegrateReq.Unmarshal(m, b)
}
func (m *PoolReintegrateReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolReintegrateReq.Marshal(b, m, deterministic)
}
func (m *PoolReintegrateReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolReintegrateReq.Merge(m, src)
}
func (m *PoolReintegrateReq) XXX_Size() int {
	return xxx_messageInfo_PoolReintegrateReq.Size(m)
}
func (m *PoolReintegrateReq) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolReintegrateReq.DiscardUnknown(m)
}

var xxx_messageInfo_PoolReintegrateReq proto.InternalMessageInfo

func (m *PoolReintegrateReq) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

func (m *PoolReintegrateReq) GetRank() uint32 {
	if m != nil {
		return m.Rank
	}
	return 0
}

func (m *PoolReintegrateReq) GetTargetidx() []uint32 {
	if m != nil {
		return m.Targetidx
	}
	return nil
}

func (m *PoolReintegrateReq) GetSvcRanks() []uint32 {
	if m != nil {
		return m.SvcRanks
	}
	return nil
}

// PoolReintegrateResp returns resultant state of Reintegrate operation.
type PoolReintegrateResp struct {
	Status               int32    `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolReintegrateResp) Reset()         { *m = PoolReintegrateResp{} }
func (m *PoolReintegrateResp) String() string { return proto.CompactTextString(m) }
func (*PoolReintegrateResp) ProtoMessage()    {}
func (*PoolReintegrateResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{13}
}

func (m *PoolReintegrateResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolReintegrateResp.Unmarshal(m, b)
}
func (m *PoolReintegrateResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolReintegrateResp.Marshal(b, m, deterministic)
}
func (m *PoolReintegrateResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolReintegrateResp.Merge(m, src)
}
func (m *PoolReintegrateResp) XXX_Size() int {
	return xxx_messageInfo_PoolReintegrateResp.Size(m)
}
func (m *PoolReintegrateResp) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolReintegrateResp.DiscardUnknown(m)
}

var xxx_messageInfo_PoolReintegrateResp proto.InternalMessageInfo

func (m *PoolReintegrateResp) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

// ListPoolsReq represents a request to list pools on a given DAOS system.
type ListPoolsReq struct {
	Sys                  string   `protobuf:"bytes,1,opt,name=sys,proto3" json:"sys,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListPoolsReq) Reset()         { *m = ListPoolsReq{} }
func (m *ListPoolsReq) String() string { return proto.CompactTextString(m) }
func (*ListPoolsReq) ProtoMessage()    {}
func (*ListPoolsReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{14}
}

func (m *ListPoolsReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPoolsReq.Unmarshal(m, b)
}
func (m *ListPoolsReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPoolsReq.Marshal(b, m, deterministic)
}
func (m *ListPoolsReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPoolsReq.Merge(m, src)
}
func (m *ListPoolsReq) XXX_Size() int {
	return xxx_messageInfo_ListPoolsReq.Size(m)
}
func (m *ListPoolsReq) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPoolsReq.DiscardUnknown(m)
}

var xxx_messageInfo_ListPoolsReq proto.InternalMessageInfo

func (m *ListPoolsReq) GetSys() string {
	if m != nil {
		return m.Sys
	}
	return ""
}

// ListPoolsResp returns the list of pools in the system.
type ListPoolsResp struct {
	Status               int32                 `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
	Pools                []*ListPoolsResp_Pool `protobuf:"bytes,2,rep,name=pools,proto3" json:"pools,omitempty"`
	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
	XXX_unrecognized     []byte                `json:"-"`
	XXX_sizecache        int32                 `json:"-"`
}

func (m *ListPoolsResp) Reset()         { *m = ListPoolsResp{} }
func (m *ListPoolsResp) String() string { return proto.CompactTextString(m) }
func (*ListPoolsResp) ProtoMessage()    {}
func (*ListPoolsResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{15}
}

func (m *ListPoolsResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPoolsResp.Unmarshal(m, b)
}
func (m *ListPoolsResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPoolsResp.Marshal(b, m, deterministic)
}
func (m *ListPoolsResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPoolsResp.Merge(m, src)
}
func (m *ListPoolsResp) XXX_Size() int {
	return xxx_messageInfo_ListPoolsResp.Size(m)
}
func (m *ListPoolsResp) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPoolsResp.DiscardUnknown(m)
}

var xxx_messageInfo_ListPoolsResp proto.InternalMessageInfo

func (m *ListPoolsResp) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

func (m *ListPoolsResp) GetPools() []*ListPoolsResp_Pool {
	if m != nil {
		return m.Pools
	}
	return nil
}

type ListPoolsResp_Pool struct {
	Uuid                 string   `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	Svcreps              []uint32 `protobuf:"varint,2,rep,packed,name=svcreps,proto3" json:"svcreps,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListPoolsResp_Pool) Reset()         { *m = ListPoolsResp_Pool{} }
func (m *ListPoolsResp_Pool) String() string { return proto.CompactTextString(m) }
func (*ListPoolsResp_Pool) ProtoMessage()    {}
func (*ListPoolsResp_Pool) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{15, 0}
}

func (m *ListPoolsResp_Pool) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPoolsResp_Pool.Unmarshal(m, b)
}
func (m *ListPoolsResp_Pool) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPoolsResp_Pool.Marshal(b, m, deterministic)
}
func (m *ListPoolsResp_Pool) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPoolsResp_Pool.Merge(m, src)
}
func (m *ListPoolsResp_Pool) XXX_Size() int {
	return xxx_messageInfo_ListPoolsResp_Pool.Size(m)
}
func (m *ListPoolsResp_Pool) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPoolsResp_Pool.DiscardUnknown(m)
}

var xxx_messageInfo_ListPoolsResp_Pool proto.InternalMessageInfo

func (m *ListPoolsResp_Pool) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

func (m *ListPoolsResp_Pool) GetSvcreps() []uint32 {
	if m != nil {
		return m.Svcreps
	}
	return nil
}

// ListContainers
// Initial implementation differs from C API
// (numContainers not provided in request - get whole list)
type ListContReq struct {
	Uuid                 string   `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	SvcRanks             []uint32 `protobuf:"varint,2,rep,packed,name=svc_ranks,json=svcRanks,proto3" json:"svc_ranks,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListContReq) Reset()         { *m = ListContReq{} }
func (m *ListContReq) String() string { return proto.CompactTextString(m) }
func (*ListContReq) ProtoMessage()    {}
func (*ListContReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{16}
}

func (m *ListContReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListContReq.Unmarshal(m, b)
}
func (m *ListContReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListContReq.Marshal(b, m, deterministic)
}
func (m *ListContReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListContReq.Merge(m, src)
}
func (m *ListContReq) XXX_Size() int {
	return xxx_messageInfo_ListContReq.Size(m)
}
func (m *ListContReq) XXX_DiscardUnknown() {
	xxx_messageInfo_ListContReq.DiscardUnknown(m)
}

var xxx_messageInfo_ListContReq proto.InternalMessageInfo

func (m *ListContReq) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

func (m *ListContReq) GetSvcRanks() []uint32 {
	if m != nil {
		return m.SvcRanks
	}
	return nil
}

type ListContResp struct {
	Status               int32                `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
	Containers           []*ListContResp_Cont `protobuf:"bytes,2,rep,name=containers,proto3" json:"containers,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *ListContResp) Reset()         { *m = ListContResp{} }
func (m *ListContResp) String() string { return proto.CompactTextString(m) }
func (*ListContResp) ProtoMessage()    {}
func (*ListContResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{17}
}

func (m *ListContResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListContResp.Unmarshal(m, b)
}
func (m *ListContResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListContResp.Marshal(b, m, deterministic)
}
func (m *ListContResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListContResp.Merge(m, src)
}
func (m *ListContResp) XXX_Size() int {
	return xxx_messageInfo_ListContResp.Size(m)
}
func (m *ListContResp) XXX_DiscardUnknown() {
	xxx_messageInfo_ListContResp.DiscardUnknown(m)
}

var xxx_messageInfo_ListContResp proto.InternalMessageInfo

func (m *ListContResp) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

func (m *ListContResp) GetContainers() []*ListContResp_Cont {
	if m != nil {
		return m.Containers
	}
	return nil
}

type ListContResp_Cont struct {
	Uuid                 string   `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListContResp_Cont) Reset()         { *m = ListContResp_Cont{} }
func (m *ListContResp_Cont) String() string { return proto.CompactTextString(m) }
func (*ListContResp_Cont) ProtoMessage()    {}
func (*ListContResp_Cont) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{17, 0}
}

func (m *ListContResp_Cont) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListContResp_Cont.Unmarshal(m, b)
}
func (m *ListContResp_Cont) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListContResp_Cont.Marshal(b, m, deterministic)
}
func (m *ListContResp_Cont) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListContResp_Cont.Merge(m, src)
}
func (m *ListContResp_Cont) XXX_Size() int {
	return xxx_messageInfo_ListContResp_Cont.Size(m)
}
func (m *ListContResp_Cont) XXX_DiscardUnknown() {
	xxx_messageInfo_ListContResp_Cont.DiscardUnknown(m)
}

var xxx_messageInfo_ListContResp_Cont proto.InternalMessageInfo

func (m *ListContResp_Cont) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

// PoolQueryReq represents a pool query request.
type PoolQueryReq struct {
	Uuid                 string   `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	SvcRanks             []uint32 `protobuf:"varint,2,rep,packed,name=svc_ranks,json=svcRanks,proto3" json:"svc_ranks,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PoolQueryReq) Reset()         { *m = PoolQueryReq{} }
func (m *PoolQueryReq) String() string { return proto.CompactTextString(m) }
func (*PoolQueryReq) ProtoMessage()    {}
func (*PoolQueryReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{18}
}

func (m *PoolQueryReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolQueryReq.Unmarshal(m, b)
}
func (m *PoolQueryReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolQueryReq.Marshal(b, m, deterministic)
}
func (m *PoolQueryReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolQueryReq.Merge(m, src)
}
func (m *PoolQueryReq) XXX_Size() int {
	return xxx_messageInfo_PoolQueryReq.Size(m)
}
func (m *PoolQueryReq) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolQueryReq.DiscardUnknown(m)
}

var xxx_messageInfo_PoolQueryReq proto.InternalMessageInfo

func (m *PoolQueryReq) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

func (m *PoolQueryReq) GetSvcRanks() []uint32 {
	if m != nil {
		return m.SvcRanks
	}
	return nil
}

// StorageUsageStats represents usage statistics for a storage subsystem.
type StorageUsageStats struct {
	Total                uint64   `protobuf:"varint,1,opt,name=total,proto3" json:"total,omitempty"`
	Free                 uint64   `protobuf:"varint,2,opt,name=free,proto3" json:"free,omitempty"`
	Min                  uint64   `protobuf:"varint,3,opt,name=min,proto3" json:"min,omitempty"`
	Max                  uint64   `protobuf:"varint,4,opt,name=max,proto3" json:"max,omitempty"`
	Mean                 uint64   `protobuf:"varint,5,opt,name=mean,proto3" json:"mean,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *StorageUsageStats) Reset()         { *m = StorageUsageStats{} }
func (m *StorageUsageStats) String() string { return proto.CompactTextString(m) }
func (*StorageUsageStats) ProtoMessage()    {}
func (*StorageUsageStats) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{19}
}

func (m *StorageUsageStats) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StorageUsageStats.Unmarshal(m, b)
}
func (m *StorageUsageStats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StorageUsageStats.Marshal(b, m, deterministic)
}
func (m *StorageUsageStats) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StorageUsageStats.Merge(m, src)
}
func (m *StorageUsageStats) XXX_Size() int {
	return xxx_messageInfo_StorageUsageStats.Size(m)
}
func (m *StorageUsageStats) XXX_DiscardUnknown() {
	xxx_messageInfo_StorageUsageStats.DiscardUnknown(m)
}

var xxx_messageInfo_StorageUsageStats proto.InternalMessageInfo

func (m *StorageUsageStats) GetTotal() uint64 {
	if m != nil {
		return m.Total
	}
	return 0
}

func (m *StorageUsageStats) GetFree() uint64 {
	if m != nil {
		return m.Free
	}
	return 0
}

func (m *StorageUsageStats) GetMin() uint64 {
	if m != nil {
		return m.Min
	}
	return 0
}

func (m *StorageUsageStats) GetMax() uint64 {
	if m != nil {
		return m.Max
	}
	return 0
}

func (m *StorageUsageStats) GetMean() uint64 {
	if m != nil {
		return m.Mean
	}
	return 0
}

// PoolRebuildStatus represents a pool's rebuild status.
type PoolRebuildStatus struct {
	Status               int32                   `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
	State                PoolRebuildStatus_State `protobuf:"varint,2,opt,name=state,proto3,enum=mgmt.PoolRebuildStatus_State" json:"state,omitempty"`
	Objects              uint64                  `protobuf:"varint,3,opt,name=objects,proto3" json:"objects,omitempty"`
	Records              uint64                  `protobuf:"varint,4,opt,name=records,proto3" json:"records,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
	XXX_unrecognized     []byte                  `json:"-"`
	XXX_sizecache        int32                   `json:"-"`
}

func (m *PoolRebuildStatus) Reset()         { *m = PoolRebuildStatus{} }
func (m *PoolRebuildStatus) String() string { return proto.CompactTextString(m) }
func (*PoolRebuildStatus) ProtoMessage()    {}
func (*PoolRebuildStatus) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{20}
}

func (m *PoolRebuildStatus) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolRebuildStatus.Unmarshal(m, b)
}
func (m *PoolRebuildStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolRebuildStatus.Marshal(b, m, deterministic)
}
func (m *PoolRebuildStatus) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolRebuildStatus.Merge(m, src)
}
func (m *PoolRebuildStatus) XXX_Size() int {
	return xxx_messageInfo_PoolRebuildStatus.Size(m)
}
func (m *PoolRebuildStatus) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolRebuildStatus.DiscardUnknown(m)
}

var xxx_messageInfo_PoolRebuildStatus proto.InternalMessageInfo

func (m *PoolRebuildStatus) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

func (m *PoolRebuildStatus) GetState() PoolRebuildStatus_State {
	if m != nil {
		return m.State
	}
	return PoolRebuildStatus_IDLE
}

func (m *PoolRebuildStatus) GetObjects() uint64 {
	if m != nil {
		return m.Objects
	}
	return 0
}

func (m *PoolRebuildStatus) GetRecords() uint64 {
	if m != nil {
		return m.Records
	}
	return 0
}

// PoolQueryResp represents a pool query response.
type PoolQueryResp struct {
	Status               int32              `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
	Uuid                 string             `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid,omitempty"`
	Totaltargets         uint32             `protobuf:"varint,3,opt,name=totaltargets,proto3" json:"totaltargets,omitempty"`
	Activetargets        uint32             `protobuf:"varint,4,opt,name=activetargets,proto3" json:"activetargets,omitempty"`
	Disabledtargets      uint32             `protobuf:"varint,5,opt,name=disabledtargets,proto3" json:"disabledtargets,omitempty"`
	Rebuild              *PoolRebuildStatus `protobuf:"bytes,6,opt,name=rebuild,proto3" json:"rebuild,omitempty"`
	Scm                  *StorageUsageStats `protobuf:"bytes,7,opt,name=scm,proto3" json:"scm,omitempty"`
	Nvme                 *StorageUsageStats `protobuf:"bytes,8,opt,name=nvme,proto3" json:"nvme,omitempty"`
	Totalnodes           uint32             `protobuf:"varint,9,opt,name=totalnodes,proto3" json:"totalnodes,omitempty"`
	Version              uint32             `protobuf:"varint,10,opt,name=version,proto3" json:"version,omitempty"`
	Leader               uint32             `protobuf:"varint,11,opt,name=leader,proto3" json:"leader,omitempty"`
	XXX_NoUnkeyedLiteral struct{}           `json:"-"`
	XXX_unrecognized     []byte             `json:"-"`
	XXX_sizecache        int32              `json:"-"`
}

func (m *PoolQueryResp) Reset()         { *m = PoolQueryResp{} }
func (m *PoolQueryResp) String() string { return proto.CompactTextString(m) }
func (*PoolQueryResp) ProtoMessage()    {}
func (*PoolQueryResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{21}
}

func (m *PoolQueryResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolQueryResp.Unmarshal(m, b)
}
func (m *PoolQueryResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolQueryResp.Marshal(b, m, deterministic)
}
func (m *PoolQueryResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolQueryResp.Merge(m, src)
}
func (m *PoolQueryResp) XXX_Size() int {
	return xxx_messageInfo_PoolQueryResp.Size(m)
}
func (m *PoolQueryResp) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolQueryResp.DiscardUnknown(m)
}

var xxx_messageInfo_PoolQueryResp proto.InternalMessageInfo

func (m *PoolQueryResp) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

func (m *PoolQueryResp) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

func (m *PoolQueryResp) GetTotaltargets() uint32 {
	if m != nil {
		return m.Totaltargets
	}
	return 0
}

func (m *PoolQueryResp) GetActivetargets() uint32 {
	if m != nil {
		return m.Activetargets
	}
	return 0
}

func (m *PoolQueryResp) GetDisabledtargets() uint32 {
	if m != nil {
		return m.Disabledtargets
	}
	return 0
}

func (m *PoolQueryResp) GetRebuild() *PoolRebuildStatus {
	if m != nil {
		return m.Rebuild
	}
	return nil
}

func (m *PoolQueryResp) GetScm() *StorageUsageStats {
	if m != nil {
		return m.Scm
	}
	return nil
}

func (m *PoolQueryResp) GetNvme() *StorageUsageStats {
	if m != nil {
		return m.Nvme
	}
	return nil
}

func (m *PoolQueryResp) GetTotalnodes() uint32 {
	if m != nil {
		return m.Totalnodes
	}
	return 0
}

func (m *PoolQueryResp) GetVersion() uint32 {
	if m != nil {
		return m.Version
	}
	return 0
}

func (m *PoolQueryResp) GetLeader() uint32 {
	if m != nil {
		return m.Leader
	}
	return 0
}

// PoolSetPropReq represents a request to set a pool property.
type PoolSetPropReq struct {
	Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	// Types that are valid to be assigned to Property:
	//	*PoolSetPropReq_Name
	//	*PoolSetPropReq_Number
	Property isPoolSetPropReq_Property `protobuf_oneof:"property"`
	// Types that are valid to be assigned to Value:
	//	*PoolSetPropReq_Strval
	//	*PoolSetPropReq_Numval
	Value                isPoolSetPropReq_Value `protobuf_oneof:"value"`
	SvcRanks             []uint32               `protobuf:"varint,6,rep,packed,name=svc_ranks,json=svcRanks,proto3" json:"svc_ranks,omitempty"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *PoolSetPropReq) Reset()         { *m = PoolSetPropReq{} }
func (m *PoolSetPropReq) String() string { return proto.CompactTextString(m) }
func (*PoolSetPropReq) ProtoMessage()    {}
func (*PoolSetPropReq) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{22}
}

func (m *PoolSetPropReq) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolSetPropReq.Unmarshal(m, b)
}
func (m *PoolSetPropReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolSetPropReq.Marshal(b, m, deterministic)
}
func (m *PoolSetPropReq) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolSetPropReq.Merge(m, src)
}
func (m *PoolSetPropReq) XXX_Size() int {
	return xxx_messageInfo_PoolSetPropReq.Size(m)
}
func (m *PoolSetPropReq) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolSetPropReq.DiscardUnknown(m)
}

var xxx_messageInfo_PoolSetPropReq proto.InternalMessageInfo

func (m *PoolSetPropReq) GetUuid() string {
	if m != nil {
		return m.Uuid
	}
	return ""
}

type isPoolSetPropReq_Property interface {
	isPoolSetPropReq_Property()
}

type PoolSetPropReq_Name struct {
	Name string `protobuf:"bytes,2,opt,name=name,proto3,oneof"`
}

type PoolSetPropReq_Number struct {
	Number uint32 `protobuf:"varint,3,opt,name=number,proto3,oneof"`
}

func (*PoolSetPropReq_Name) isPoolSetPropReq_Property() {}

func (*PoolSetPropReq_Number) isPoolSetPropReq_Property() {}

func (m *PoolSetPropReq) GetProperty() isPoolSetPropReq_Property {
	if m != nil {
		return m.Property
	}
	return nil
}

func (m *PoolSetPropReq) GetName() string {
	if x, ok := m.GetProperty().(*PoolSetPropReq_Name); ok {
		return x.Name
	}
	return ""
}

func (m *PoolSetPropReq) GetNumber() uint32 {
	if x, ok := m.GetProperty().(*PoolSetPropReq_Number); ok {
		return x.Number
	}
	return 0
}

type isPoolSetPropReq_Value interface {
	isPoolSetPropReq_Value()
}

type PoolSetPropReq_Strval struct {
	Strval string `protobuf:"bytes,4,opt,name=strval,proto3,oneof"`
}

type PoolSetPropReq_Numval struct {
	Numval uint64 `protobuf:"varint,5,opt,name=numval,proto3,oneof"`
}

func (*PoolSetPropReq_Strval) isPoolSetPropReq_Value() {}

func (*PoolSetPropReq_Numval) isPoolSetPropReq_Value() {}

func (m *PoolSetPropReq) GetValue() isPoolSetPropReq_Value {
	if m != nil {
		return m.Value
	}
	return nil
}

func (m *PoolSetPropReq) GetStrval() string {
	if x, ok := m.GetValue().(*PoolSetPropReq_Strval); ok {
		return x.Strval
	}
	return ""
}

func (m *PoolSetPropReq) GetNumval() uint64 {
	if x, ok := m.GetValue().(*PoolSetPropReq_Numval); ok {
		return x.Numval
	}
	return 0
}

func (m *PoolSetPropReq) GetSvcRanks() []uint32 {
	if m != nil {
		return m.SvcRanks
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*PoolSetPropReq) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*PoolSetPropReq_Name)(nil),
		(*PoolSetPropReq_Number)(nil),
		(*PoolSetPropReq_Strval)(nil),
		(*PoolSetPropReq_Numval)(nil),
	}
}

// PoolSetPropResp represents the result of setting a property.
type PoolSetPropResp struct {
	Status int32 `protobuf:"varint,1,opt,name=status,proto3" json:"status,omitempty"`
	// Types that are valid to be assigned to Property:
	//	*PoolSetPropResp_Name
	//	*PoolSetPropResp_Number
	Property isPoolSetPropResp_Property `protobuf_oneof:"property"`
	// Types that are valid to be assigned to Value:
	//	*PoolSetPropResp_Strval
	//	*PoolSetPropResp_Numval
	Value                isPoolSetPropResp_Value `protobuf_oneof:"value"`
	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
	XXX_unrecognized     []byte                  `json:"-"`
	XXX_sizecache        int32                   `json:"-"`
}

func (m *PoolSetPropResp) Reset()         { *m = PoolSetPropResp{} }
func (m *PoolSetPropResp) String() string { return proto.CompactTextString(m) }
func (*PoolSetPropResp) ProtoMessage()    {}
func (*PoolSetPropResp) Descriptor() ([]byte, []int) {
	return fileDescriptor_8a14d8612184524f, []int{23}
}

func (m *PoolSetPropResp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PoolSetPropResp.Unmarshal(m, b)
}
func (m *PoolSetPropResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PoolSetPropResp.Marshal(b, m, deterministic)
}
func (m *PoolSetPropResp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PoolSetPropResp.Merge(m, src)
}
func (m *PoolSetPropResp) XXX_Size() int {
	return xxx_messageInfo_PoolSetPropResp.Size(m)
}
func (m *PoolSetPropResp) XXX_DiscardUnknown() {
	xxx_messageInfo_PoolSetPropResp.DiscardUnknown(m)
}

var xxx_messageInfo_PoolSetPropResp proto.InternalMessageInfo

func (m *PoolSetPropResp) GetStatus() int32 {
	if m != nil {
		return m.Status
	}
	return 0
}

type isPoolSetPropResp_Property interface {
	isPoolSetPropResp_Property()
}

type PoolSetPropResp_Name struct {
	Name string `protobuf:"bytes,2,opt,name=name,proto3,oneof"`
}

type PoolSetPropResp_Number struct {
	Number uint32 `protobuf:"varint,3,opt,name=number,proto3,oneof"`
}

func (*PoolSetPropResp_Name) isPoolSetPropResp_Property() {}

func (*PoolSetPropResp_Number) isPoolSetPropResp_Property() {}

func (m *PoolSetPropResp) GetProperty() isPoolSetPropResp_Property {
	if m != nil {
		return m.Property
	}
	return nil
}

func (m *PoolSetPropResp) GetName() string {
	if x, ok := m.GetProperty().(*PoolSetPropResp_Name); ok {
		return x.Name
	}
	return ""
}

func (m *PoolSetPropResp) GetNumber() uint32 {
	if x, ok := m.GetProperty().(*PoolSetPropResp_Number); ok {
		return x.Number
	}
	return 0
}

type isPoolSetPropResp_Value interface {
	isPoolSetPropResp_Value()
}

type PoolSetPropResp_Strval struct {
	Strval string `protobuf:"bytes,4,opt,name=strval,proto3,oneof"`
}

type PoolSetPropResp_Numval struct {
	Numval uint64 `protobuf:"varint,5,opt,name=numval,proto3,oneof"`
}

func (*PoolSetPropResp_Strval) isPoolSetPropResp_Value() {}

func (*PoolSetPropResp_Numval) isPoolSetPropResp_Value() {}

func (m *PoolSetPropResp) GetValue() isPoolSetPropResp_Value {
	if m != nil {
		return m.Value
	}
	return nil
}

func (m *PoolSetPropResp) GetStrval() string {
	if x, ok := m.GetValue().(*PoolSetPropResp_Strval); ok {
		return x.Strval
	}
	return ""
}

func (m *PoolSetPropResp) GetNumval() uint64 {
	if x, ok := m.GetValue().(*PoolSetPropResp_Numval); ok {
		return x.Numval
	}
	return 0
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*PoolSetPropResp) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*PoolSetPropResp_Name)(nil),
		(*PoolSetPropResp_Number)(nil),
		(*PoolSetPropResp_Strval)(nil),
		(*PoolSetPropResp_Numval)(nil),
	}
}

func init() {
	proto.RegisterEnum("mgmt.PoolRebuildStatus_State", PoolRebuildStatus_State_name, PoolRebuildStatus_State_value)
	proto.RegisterType((*PoolCreateReq)(nil), "mgmt.PoolCreateReq")
	proto.RegisterType((*PoolCreateResp)(nil), "mgmt.PoolCreateResp")
	proto.RegisterType((*PoolDestroyReq)(nil), "mgmt.PoolDestroyReq")
	proto.RegisterType((*PoolDestroyResp)(nil), "mgmt.PoolDestroyResp")
	proto.RegisterType((*PoolEvictReq)(nil), "mgmt.PoolEvictReq")
	proto.RegisterType((*PoolEvictResp)(nil), "mgmt.PoolEvictResp")
	proto.RegisterType((*PoolExcludeReq)(nil), "mgmt.PoolExcludeReq")
	proto.RegisterType((*PoolExcludeResp)(nil), "mgmt.PoolExcludeResp")
	proto.RegisterType((*PoolDrainReq)(nil), "mgmt.PoolDrainReq")
	proto.RegisterType((*PoolDrainResp)(nil), "mgmt.PoolDrainResp")
	proto.RegisterType((*PoolExtendReq)(nil), "mgmt.PoolExtendReq")
	proto.RegisterType((*PoolExtendResp)(nil), "mgmt.PoolExtendResp")
	proto.RegisterType((*PoolReintegrateReq)(nil), "mgmt.PoolReintegrateReq")
	proto.RegisterType((*PoolReintegrateResp)(nil), "mgmt.PoolReintegrateResp")
	proto.RegisterType((*ListPoolsReq)(nil), "mgmt.ListPoolsReq")
	proto.RegisterType((*ListPoolsResp)(nil), "mgmt.ListPoolsResp")
	proto.RegisterType((*ListPoolsResp_Pool)(nil), "mgmt.ListPoolsResp.Pool")
	proto.RegisterType((*ListContReq)(nil), "mgmt.ListContReq")
	proto.RegisterType((*ListContResp)(nil), "mgmt.ListContResp")
	proto.RegisterType((*ListContResp_Cont)(nil), "mgmt.ListContResp.Cont")
	proto.RegisterType((*PoolQueryReq)(nil), "mgmt.PoolQueryReq")
	proto.RegisterType((*StorageUsageStats)(nil), "mgmt.StorageUsageStats")
	proto.RegisterType((*PoolRebuildStatus)(nil), "mgmt.PoolRebuildStatus")
	proto.RegisterType((*PoolQueryResp)(nil), "mgmt.PoolQueryResp")
	proto.RegisterType((*PoolSetPropReq)(nil), "mgmt.PoolSetPropReq")
	proto.RegisterType((*PoolSetPropResp)(nil), "mgmt.PoolSetPropResp")
}

func init() {
	proto.RegisterFile("pool.proto", fileDescriptor_8a14d8612184524f)
}

var fileDescriptor_8a14d8612184524f = []byte{
	// 936 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0xef, 0x8e, 0xe3, 0x34,
	0x10, 0xdf, 0xb4, 0x49, 0xb7, 0x9d, 0xdd, 0xde, 0xed, 0x99, 0x13, 0x44, 0xcb, 0x1f, 0x55, 0x11,
	0x88, 0x9e, 0x10, 0x95, 0xb8, 0x43, 0xe2, 0x1b, 0x48, 0x7b, 0x5b, 0x69, 0x91, 0x4e, 0x70, 0xe7,
	0xea, 0x3e, 0xf0, 0x09, 0xb9, 0x89, 0xaf, 0x0a, 0x24, 0x71, 0xce, 0x76, 0xc2, 0x56, 0xbc, 0x02,
	0x48, 0x3c, 0x03, 0x8f, 0x01, 0x4f, 0xc4, 0x5b, 0xa0, 0xb1, 0x9d, 0xb6, 0xd9, 0x6e, 0xa3, 0xd5,
	0x7d, 0xd8, 0x4f, 0x99, 0x19, 0x8f, 0x3d, 0xbf, 0xf9, 0x8d, 0x67, 0x1c, 0x80, 0x52, 0x88, 0x6c,
	0x56, 0x4a, 0xa1, 0x05, 0xf1, 0xf3, 0x55, 0xae, 0xa3, 0xff, 0x3c, 0x18, 0xbf, 0x14, 0x22, 0x7b,
	0x2e, 0x39, 0xd3, 0x9c, 0xf2, 0xb7, 0xe4, 0x1c, 0x86, 0x2a, 0xce, 0x97, 0x6b, 0xcd, 0x55, 0xe8,
	0x4d, 0xbc, 0xa9, 0x4f, 0x37, 0x3a, 0xf9, 0x08, 0x46, 0x45, 0x9d, 0x73, 0xbb, 0xd8, 0x33, 0x8b,
	0x5b, 0x03, 0x79, 0x0c, 0x81, 0x64, 0xc5, 0xaf, 0x2a, 0xec, 0x4f, 0xfa, 0xd3, 0x31, 0xb5, 0x0a,
	0xf9, 0x04, 0xa0, 0xa8, 0x72, 0x55, 0xc7, 0x92, 0x97, 0x2a, 0xf4, 0x27, 0xde, 0x74, 0x4c, 0x77,
	0x2c, 0x84, 0x80, 0x5f, 0x29, 0x2e, 0xc3, 0x60, 0xe2, 0x4d, 0x47, 0xd4, 0xc8, 0x18, 0x07, 0xbf,
	0x2b, 0x29, 0xaa, 0x32, 0x1c, 0x98, 0x85, 0xad, 0xc1, 0xec, 0xa8, 0xd2, 0x24, 0x3c, 0x76, 0x3b,
	0xaa, 0x34, 0x21, 0x67, 0xd0, 0x57, 0x6b, 0x15, 0x0e, 0x8d, 0x09, 0x45, 0xb4, 0xb0, 0x38, 0x0b,
	0x47, 0x93, 0x3e, 0x5a, 0x58, 0x9c, 0x45, 0x17, 0xf0, 0x60, 0x37, 0x55, 0x55, 0x92, 0xf7, 0x61,
	0xa0, 0x34, 0xd3, 0x95, 0xcd, 0x34, 0xa0, 0x4e, 0x23, 0x21, 0x1c, 0x37, 0x80, 0x7b, 0x26, 0x97,
	0x46, 0x8d, 0x52, 0x7b, 0xc6, 0x25, 0x57, 0x5a, 0x8a, 0x35, 0xf2, 0xd5, 0xa0, 0xf1, 0xf6, 0xd1,
	0xf4, 0xb6, 0x68, 0x1e, 0x43, 0xf0, 0x46, 0xc8, 0x98, 0x87, 0xfd, 0x89, 0x37, 0x1d, 0x52, 0xab,
	0x90, 0x0f, 0x61, 0xa4, 0xea, 0xf8, 0x67, 0xcb, 0x9a, 0x6f, 0x22, 0x0d, 0x55, 0x1d, 0x53, 0xd4,
	0xa3, 0x27, 0xf0, 0xb0, 0x15, 0xea, 0x30, 0xde, 0xe8, 0x15, 0x9c, 0xa2, 0xeb, 0xbc, 0x4e, 0x63,
	0x7d, 0x77, 0x4c, 0xad, 0xe8, 0xfd, 0x1b, 0xd1, 0x3f, 0xb7, 0xf7, 0xc2, 0x1d, 0xd9, 0x11, 0x5b,
	0x59, 0x46, 0xe6, 0xd7, 0x71, 0x56, 0x25, 0xfc, 0x50, 0x74, 0x02, 0x3e, 0xc6, 0x31, 0xe1, 0xc7,
	0xd4, 0xc8, 0x58, 0x65, 0xcd, 0xe4, 0x8a, 0xeb, 0x34, 0xb9, 0x76, 0xf1, 0xb7, 0x86, 0x3b, 0x71,
	0xb3, 0x09, 0xda, 0x81, 0xef, 0xad, 0xe5, 0xe6, 0x52, 0xb2, 0xb4, 0xb8, 0x27, 0x74, 0x8e, 0x3b,
	0x17, 0xb2, 0x03, 0xdb, 0x5f, 0xae, 0xfb, 0xe6, 0xd7, 0x9a, 0x17, 0xc9, 0x21, 0x74, 0x9b, 0xbe,
	0xea, 0xed, 0xf6, 0x55, 0x57, 0xf5, 0x5a, 0x4d, 0xec, 0x77, 0x35, 0x71, 0x70, 0xa3, 0x89, 0xa3,
	0x69, 0x53, 0x4e, 0x8b, 0xa8, 0x03, 0xfc, 0x6f, 0x40, 0xd0, 0x93, 0xf2, 0xb4, 0xd0, 0x7c, 0x25,
	0xdd, 0xf8, 0xb8, 0x07, 0x7a, 0xbf, 0x84, 0xf7, 0xf6, 0x02, 0x77, 0xe0, 0x9c, 0xc0, 0xe9, 0x8b,
	0x54, 0x69, 0xdc, 0xa2, 0x10, 0xa1, 0x6b, 0x04, 0x6f, 0xd3, 0x08, 0xd1, 0x9f, 0x1e, 0x8c, 0x77,
	0x5c, 0x3a, 0x06, 0xc3, 0x0c, 0x02, 0x1c, 0xa1, 0xb6, 0x14, 0x27, 0x4f, 0xc3, 0x19, 0x0e, 0xd1,
	0x59, 0x6b, 0xef, 0xcc, 0x60, 0xb3, 0x6e, 0xe7, 0x5f, 0x83, 0x8f, 0xea, 0xad, 0xac, 0x1c, 0x1e,
	0x32, 0xdf, 0xc2, 0x09, 0x1e, 0xf9, 0x5c, 0x14, 0x07, 0xbb, 0xb9, 0x45, 0x50, 0xef, 0x06, 0x41,
	0xbf, 0xdb, 0x8c, 0xed, 0xfe, 0x8e, 0x6c, 0xbe, 0x01, 0x88, 0x45, 0xa1, 0x59, 0x5a, 0x70, 0xd9,
	0xa4, 0xf4, 0xc1, 0x36, 0xa5, 0x66, 0xff, 0xcc, 0x08, 0x3b, 0xae, 0xe7, 0xe7, 0xe0, 0xa3, 0xed,
	0x36, 0x64, 0xd1, 0x77, 0xb6, 0xdf, 0x5e, 0x55, 0x5c, 0xae, 0xdf, 0x09, 0x7d, 0x05, 0x8f, 0x16,
	0x5a, 0x48, 0xb6, 0xe2, 0xaf, 0x15, 0x5b, 0xf1, 0x85, 0x66, 0xda, 0xcc, 0x4f, 0x2d, 0x34, 0xcb,
	0xdc, 0x93, 0x64, 0x15, 0x3c, 0xfb, 0x8d, 0xe4, 0xdc, 0x3d, 0x45, 0x46, 0xc6, 0xf2, 0xe6, 0x69,
	0x61, 0xe6, 0xac, 0x4f, 0x51, 0x34, 0x16, 0x76, 0xed, 0xfa, 0x00, 0x45, 0xdc, 0x97, 0x73, 0x56,
	0xb8, 0xdb, 0x6f, 0xe4, 0xe8, 0x5f, 0x0f, 0x1e, 0xd9, 0x6b, 0xb5, 0xac, 0xd2, 0x2c, 0x59, 0x58,
	0x8a, 0x0e, 0x51, 0xf7, 0x0c, 0x02, 0x94, 0x6c, 0xe8, 0x07, 0x4f, 0x3f, 0xb6, 0xac, 0xed, 0xed,
	0x9f, 0xe1, 0x87, 0x53, 0xeb, 0x8b, 0x15, 0x17, 0xcb, 0x5f, 0x78, 0xac, 0x95, 0x83, 0xd7, 0xa8,
	0xb8, 0x22, 0x79, 0x2c, 0x64, 0xd2, 0xb4, 0x6b, 0xa3, 0x46, 0x9f, 0x41, 0x60, 0xce, 0x20, 0x43,
	0xf0, 0xbf, 0xbf, 0x7c, 0x31, 0x3f, 0x3b, 0x42, 0xe9, 0xf2, 0xc7, 0x1f, 0xe6, 0x67, 0x1e, 0x4a,
	0x17, 0xaf, 0x17, 0x3f, 0x9d, 0xf5, 0xa2, 0x3f, 0xfa, 0x76, 0x92, 0x38, 0xda, 0x3b, 0x8a, 0xde,
	0xd4, 0xa3, 0xb7, 0x53, 0x8f, 0x08, 0x4e, 0x0d, 0xa1, 0xb6, 0x01, 0x2d, 0xba, 0x31, 0x6d, 0xd9,
	0xc8, 0xa7, 0x30, 0x66, 0xb1, 0x4e, 0x6b, 0xde, 0x38, 0xd9, 0xa7, 0xbc, 0x6d, 0x24, 0x53, 0x78,
	0x98, 0xa4, 0x8a, 0x2d, 0x33, 0x9e, 0x34, 0x7e, 0x81, 0xf1, 0xbb, 0x69, 0x26, 0x5f, 0x61, 0xca,
	0x86, 0x2a, 0xf3, 0xc2, 0x6f, 0x6e, 0xde, 0x1e, 0x87, 0xb4, 0xf1, 0x23, 0x4f, 0xa0, 0xaf, 0xe2,
	0xdc, 0xbc, 0xfb, 0x1b, 0xf7, 0xbd, 0xab, 0x42, 0xd1, 0x87, 0x7c, 0x01, 0x3e, 0xce, 0x34, 0xf3,
	0x43, 0xd0, 0xe1, 0x6b, 0x9c, 0xf0, 0x17, 0xc5, 0xa4, 0x5a, 0x88, 0x84, 0xab, 0x70, 0x64, 0x7f,
	0x51, 0xb6, 0x16, 0xac, 0x4e, 0xcd, 0xa5, 0x4a, 0x45, 0x11, 0x82, 0x59, 0x6c, 0x54, 0x24, 0x39,
	0xe3, 0x2c, 0xe1, 0x32, 0x3c, 0x31, 0x0b, 0x4e, 0x8b, 0xfe, 0xf1, 0xec, 0x18, 0x5d, 0x70, 0xfd,
	0x52, 0x8a, 0xf2, 0xf0, 0x64, 0xf7, 0x0b, 0x96, 0xdb, 0x4b, 0x34, 0xba, 0x3a, 0xa2, 0x46, 0x23,
	0x21, 0x0c, 0x8a, 0x2a, 0x5f, 0x72, 0x69, 0xeb, 0x70, 0x75, 0x44, 0x9d, 0x8e, 0x2b, 0x4a, 0xcb,
	0x9a, 0x65, 0x86, 0xfc, 0xd1, 0x95, 0x47, 0x9d, 0xee, 0xf6, 0xe0, 0x8a, 0xb9, 0xd3, 0xb8, 0x62,
	0xf5, 0x76, 0xaf, 0x0d, 0xda, 0xbd, 0x76, 0x01, 0x30, 0x2c, 0xa5, 0x28, 0xb9, 0xd4, 0xeb, 0x8b,
	0x63, 0x08, 0x6a, 0x96, 0x55, 0x3c, 0xfa, 0xdb, 0xb3, 0xaf, 0xeb, 0x06, 0x7c, 0xc7, 0x6d, 0xba,
	0x87, 0x0c, 0x6e, 0x05, 0xb9, 0x1c, 0x98, 0xbf, 0xd8, 0x67, 0xff, 0x07, 0x00, 0x00, 0xff, 0xff,
	0x97, 0xd4, 0x6c, 0xb8, 0xd3, 0x0a, 0x00, 0x00,
}

repository: brianjmurrell/daos

repo_name: brianjmurrell/daos

gha_language: C


text:
require ti-linux-driver-examples.inc

SRCREV = "afa28447addb2fadd9daf5c94c6cf46d8c855d05"

PV = "git-${MACHINE_KERNEL_PR}-gitr${SRCREV}"
PR_append = "d"

SRC_URI = "git://arago-project.org/git/projects/examples-davinci.git;protocol=git \
  file://0001-linux-davinci-example-add-make-install-target.patch \
"

license: MIT

repository: overo/overo-oe-natty

license_type: permissive

repo_name: overo/overo-oe-natty

branch_name: HEAD

extension: bb


text:
package example1

import (
	"context"
	"fmt"
	"math/rand"
	"strings"
	"sync"
	"testing"
	"time"
)

type canFatal interface {
	Fatal(args ...interface{})
}

type Dumper interface {
	Dump(ctx context.Context, name string) ([]byte, error)
}

func TestAsyncWriterSyncMode(t *testing.T) {
	ctx, cancel := context.WithTimeout(context.Background(), 600*time.Second)
	defer cancel()
	async, names := getWriter(ctx, t, 10, 1)
	asyncSyncMode(ctx, t, async, names, 100, true)
}

func TestAsyncWriterFullAsyncMode(t *testing.T) {
	ctx, cancel := context.WithTimeout(context.Background(), 600*time.Second)
	defer cancel()
	async, names := getWriter(ctx, t, 10, 1)
	fullAsync(ctx, t, async, names, 100, false)
}

func TestAsyncWriterBurstAsyncMode(t *testing.T) {
	ctx, cancel := context.WithTimeout(context.Background(), 600*time.Second)
	defer cancel()
	async, names := getWriter(ctx, t, 10, 1)
	burstMode(ctx, t, async, names, 100, false)
}

func getWriter(ctx context.Context, t canFatal, concurrency int,
	prepRatio int) (*AsyncWriter, map[string]WriteRequester) {
	async := NewAsyncWriter(NewSlowQ(prepRatio))
	async.Start(ctx)
	names := map[string]WriteRequester{}
	for i := 0; i < concurrency; i++ {
		names[fmt.Sprintf("%d-writer", i)] = nil
	}

	for name := range names {
		q, err := async.Writer(ctx, name)
		if err != nil {
			t.Fatal(err)
		}
		names[name] = q
	}
	return async, names
}

func asyncSyncMode(ctx context.Context, t canFatal, async *AsyncWriter, names map[string]WriteRequester, sendCount int, ordered bool) {
	for name, q := range names {
		for i := 0; i < sendCount; i++ {
			q.Request(ctx, []byte(fmt.Sprintf("%s:%d", name, i))).
				Then(ctx, func(err error) {
					if err != nil {
						t.Fatal(err)
					}
				})
		}
	}
	if _, ok := t.(*testing.B); ok {
		return
	}
	err := checkResults(ctx, async, names, sendCount, ordered)
	if err != nil {
		t.Fatal(err)
	}
}

func burstMode(ctx context.Context, t canFatal, async *AsyncWriter, names map[string]WriteRequester, sendCount int, ordered bool) {
	wg := &sync.WaitGroup{}
	errors := make(chan error, 10)
	for name, q := range names {
		for j := 0; j < 10; j++ {
			for i := 0; i < sendCount; i++ {
				wg.Add(1)
				go func(name string, q WriteRequester, i int) {
					defer wg.Done()
					q.Request(ctx, []byte(fmt.Sprintf("%s:%d", name, i))).
						Then(ctx, func(err error) {
							if err != nil {
								select {
								case errors <- err:
								default:
									// too many forget about them
								}
							}
						})
				}(name, q, i)
			}
			time.Sleep(time.Duration(rand.Int()%1000+1000) * time.Nanosecond)
		}
	}
	wg.Wait()
	select {
	case err := <-errors:
		if err != nil {
			t.Fatal(err)
		}
	default:
	}
	if _, ok := t.(*testing.B); ok {
		return
	}
	err := checkResults(ctx, async, names, sendCount, ordered)
	if err != nil {
		t.Fatal(err)
	}
}

func checkResults(ctx context.Context, async Dumper, names map[string]WriteRequester, sendCount int, ordered bool) error {
	out := make(map[string][]byte)
	for name := range names {
		var err error
		out[name], err = async.Dump(ctx, name)
		if err != nil {
			return err
		}
		if out[name] == nil {
			return fmt.Errorf("expected input")
		}
		split := strings.SplitN(string(out[name]), ";", sendCount+1)
		for i, v := range split {
			if i >= sendCount {
				continue
			}
			if ordered {
				if v != fmt.Sprintf("%s:%d", name, i) {
					return fmt.Errorf("unexpected data %s for %s", v, name)
				}
			} else {
				if !strings.Contains(v, fmt.Sprintf("%s:", name)) {
					return fmt.Errorf("unexpected data %s for %s", v, name)
				}
			}
		}
	}
	return nil
}

func fullAsync(ctx context.Context, t canFatal, async *AsyncWriter, names map[string]WriteRequester, sendCount int, ordered bool) {
	wg := &sync.WaitGroup{}
	errors := make(chan error, 10)
	for name, q := range names {
		for i := 0; i < sendCount; i++ {
			wg.Add(1)
			go func(name string, q WriteRequester, i int) {
				defer wg.Done()
				q.Request(ctx, []byte(fmt.Sprintf("%s:%d", name, i))).
					Then(ctx, func(err error) {
						if err != nil {
							select {
							case errors <- err:
							default:
								// too many forget about them
							}
						}
					})

			}(name, q, i)
		}
	}
	wg.Wait()
	select {
	case err := <-errors:
		if err != nil {
			t.Fatal(err)
		}
	default:
	}
	if _, ok := t.(*testing.B); ok {
		return
	}
	err := checkResults(ctx, async, names, sendCount, ordered)
	if err != nil {
		t.Fatal(err)
	}

}

branch_name: refs/heads/master

gha_language: Go

extension: go


text:
SUMMARY = "Initial Java 1.4-compatible (and not higher) compiler"

DEPENDS = "jikes-native classpath-initial"

SRC_URI = ""

S = "${WORKDIR}"

inherit native

do_configure() {
 :
}

do_compile() {
  echo "#!/bin/sh" > jikes-initial
  echo "${STAGING_BINDIR_NATIVE}/jikes -bootclasspath ${STAGING_DATADIR_NATIVE}/classpath-initial/glibj.zip \$@" >> jikes-initial
}

do_stage() {
  install -d ${STAGING_BINDIR}
  install -m 0755 jikes-initial ${STAGING_BINDIR}
}


text:
KV = "4.8.17"
SRCDATE = "20181105"
MODNAMES = "linuxdvb"

require os-dvb-modules.inc

COMPATIBLE_MACHINE = "osninoplus"

SRC_URI[md5sum] = "edaa9a5b723fb8844bf01ebf6d701b39"
SRC_URI[sha256sum] = "7841dc3fe4d21369be41f074e76a57ddc08fcada29892e7609ea86303bc3e847"

repository: athoik/meta-edision

repo_name: athoik/meta-edision


text:
DESCRIPTION = "libgee is a collection library providing GObject-based interfaces \
and classes for commonly used data structures."
HOMEPAGE = "http://live.gnome.org/Libgee"
SECTION = "libs"
DEPENDS = "glib-2.0"

BBCLASSEXTEND = "native"
LICENSE = "LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"

PE = "1"
inherit gnomebase vala gobject-introspection

do_configure:prepend() {
    MACROS="libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4"
    for i in ${MACROS}; do
        rm -f m4/$i
    done
}

SRC_URI[archive.sha256sum] = "1bf834f5e10d60cc6124d74ed3c1dd38da646787fbf7872220b8b4068e476d4d"

repository: openembedded/meta-openembedded

repo_name: openembedded/meta-openembedded

gha_license_id: MIT

gha_language: BitBake


text:
package templates

import (
	"html/template"
)

type MarkdownProperty struct {
	Login              string
	Page               []string
	Zh                 string
	URI                string
	RequestTable       []MarkdownTable
	RequestJson        interface{} // 请求参数示例
	RequestTypeScript  interface{} // 请求参数-typescript 对象映射
	RequestJava        interface{} // 请求参数-Java 对象映射
	RequestSwift       interface{} // 请求参数-Swift 对象映射
	RequestCurl        interface{} // 请求curl
	ResponseTable      []MarkdownTable
	ResponseJson       interface{} // 应答参数示例
	ResponseTypeScript interface{} // 应答参数-typescript 对象映射
	ResponseJava       interface{} // 应答参数-Java 对象映射
	ResponseSwift      interface{} // 应答参数-Swift 对象映射
	ErrCodeTable       []MarkdownErrCodeTable
}

type MarkdownTable struct {
	Title  string
	Tables []MarkdownReqRespTable
}

type MarkdownReqRespTable struct {
	FieldName   string      // 参数名称
	FieldType   string      // 类型
	FieldDesc   string      // 参数含义
	FieldIgnore string      // 必填
	DefValue    interface{} // 默认值
	FieldRemark interface{} // 备注
	FieldValue  interface{} // 值（根据不同的类型生成的值不一样）
}

type MarkdownErrCodeTable struct {
	Name    string // 名称
	Value   int    // 值
	Desc    string // 描述
	Remarks string // 备注
}

var InterfaceMarkdownTemplate = template.Must(template.New("").Parse(interfaceMarkdownTxt))

type ApiListProperty struct {
	Title string
	List  []ApiListTable
}

type ApiListTable struct {
	Title string
	List  []*ApiTable
}

type ApiTable struct {
	Link    string
	Remarks string
	Emoji   string
}

var ApiListMarkdownTemplate = template.Must(template.New("").Parse(apiListMarkdownTxt))

type IntellijAutomatedProperty struct {
	Title string
	URL   string
	Data  string
}

var IntellijAutomatedTemplate = template.Must(template.New("").Parse(intellijAutomatedTestTxt))

repository: geekymedic/neon-cli

repo_name: geekymedic/neon-cli


text:
package user

import (
	"context"
	"errors"
	"github.com/go-kit/kit/transport/grpc"
	"github.com/longjoy/micro-go-course/section18/pb"
)

var (
	ErrorBadRequest = errors.New("invalid request parameter")
)

type grpcServer struct {
	checkPassword grpc.Handler
}

func (s *grpcServer) CheckPassword(ctx context.Context, r *pb.LoginRequest) (*pb.LoginResponse, error) {
	_, resp, err := s.checkPassword.ServeGRPC(ctx, r)
	if err != nil {
		return nil, err
	}
	return resp.(*pb.LoginResponse), nil
}

func NewUserServer(ctx context.Context, endpoints Endpoints) pb.UserServiceServer {
	return &grpcServer{
		checkPassword: grpc.NewServer(
			endpoints.UserEndpoint,
			DecodeLoginRequest,
			EncodeLoginResponse,
		),
	}
}

func DecodeLoginRequest(ctx context.Context, r interface{}) (interface{}, error) {
	req := r.(*pb.LoginRequest)
	return LoginForm{
		Username: req.Username,
		Password: req.Password,
	}, nil
}

func EncodeLoginResponse(_ context.Context, r interface{}) (interface{}, error) {
	resp := r.(LoginResult)
	retStr := "fail"
	if resp.Ret {
		retStr = "success"
	}
	errStr := ""
	if resp.Err != nil {
		errStr = resp.Err.Error()
	}
	return &pb.LoginResponse{
		Ret: retStr,
		Err: errStr,
	}, nil
}

repository: latermonk/micro-go-course-study

repo_name: latermonk/micro-go-course-study

branch_name: refs/heads/main


text:
package parser

import (
	"fmt"
	"reflect"
	"strings"
	"testing"
	"time"

	"github.com/siddontang/go-mysql/replication"

	"github.com/tanema/binlog-parser/src/database"
)

func TestConvertQueryEventToMessage(t *testing.T) {
	logPos := uint32(100)
	query := "SELECT 1"

	eventHeader := replication.EventHeader{Timestamp: uint32(time.Now().Unix()), LogPos: logPos}
	queryEvent := replication.QueryEvent{Query: []byte(query)}

	message := ConvertQueryEventToMessage(eventHeader, queryEvent)

	assertMessageHeader(t, message, logPos, MessageTypeQuery)

	if string(message.(QueryMessage).Query) != query {
		t.Fatal("Unexpected value for query ")
	}
}

func TestConvertRowsEventsToMessages(t *testing.T) {
	logPos := uint32(100)
	xid := uint64(200)

	tableMetadata := database.TableMetadata{
		Schema: "db_name",
		Table:  "table_name",
		Fields: []string{"field_1", "field_2"},
	}

	testCasesWriteRowsEvents := []struct {
		eventType replication.EventType
	}{
		{replication.WRITE_ROWS_EVENTv1},
		{replication.WRITE_ROWS_EVENTv2},
	}

	for _, tc := range testCasesWriteRowsEvents {
		t.Run("Insert message", func(t *testing.T) {
			eventHeader := createEventHeader(logPos, tc.eventType)
			rowsEvent := createRowsEvent([]interface{}{"value_1", "value_2"}, []interface{}{"value_3", "value_4"})
			rowsEventData := []RowsEventData{NewRowsEventData(eventHeader, rowsEvent, tableMetadata)}

			convertedMessages := ConvertRowsEventsToMessages(xid, rowsEventData)

			if len(convertedMessages) != 2 {
				t.Fatal("Expected 2 insert messages to be created")
			}

			assertMessageHeader(t, convertedMessages[0], logPos, MessageTypeInsert)
			assertMessageHeader(t, convertedMessages[1], logPos, MessageTypeInsert)

			insertMessageOne := convertedMessages[0].(InsertMessage)

			if !reflect.DeepEqual(insertMessageOne.Data, MessageRowData{Row: MessageRow{"field_1": "value_1", "field_2": "value_2"}}) {
				t.Fatal(fmt.Sprintf("Wrong data for insert message 1 - got %v", insertMessageOne.Data))
			}

			insertMessageTwo := convertedMessages[1].(InsertMessage)

			if !reflect.DeepEqual(insertMessageTwo.Data, MessageRowData{Row: MessageRow{"field_1": "value_3", "field_2": "value_4"}}) {
				t.Fatal(fmt.Sprintf("Wrong data for insert message 2 - got %v", insertMessageTwo.Data))
			}
		})
	}

	testCasesDeleteRowsEvents := []struct {
		eventType replication.EventType
	}{
		{replication.DELETE_ROWS_EVENTv1},
		{replication.DELETE_ROWS_EVENTv2},
	}

	for _, tc := range testCasesDeleteRowsEvents {
		t.Run("Delete message", func(t *testing.T) {
			eventHeader := createEventHeader(logPos, tc.eventType)
			rowsEvent := createRowsEvent([]interface{}{"value_1", "value_2"}, []interface{}{"value_3", "value_4"})
			rowsEventData := []RowsEventData{NewRowsEventData(eventHeader, rowsEvent, tableMetadata)}

			convertedMessages := ConvertRowsEventsToMessages(xid, rowsEventData)

			if len(convertedMessages) != 2 {
				t.Fatal("Expected 2 delete messages to be created")
			}

			assertMessageHeader(t, convertedMessages[0], logPos, MessageTypeDelete)
			assertMessageHeader(t, convertedMessages[1], logPos, MessageTypeDelete)

			deleteMessageOne := convertedMessages[0].(DeleteMessage)

			if !reflect.DeepEqual(deleteMessageOne.Data, MessageRowData{Row: MessageRow{"field_1": "value_1", "field_2": "value_2"}}) {
				t.Fatal(fmt.Sprintf("Wrong data for delete message 1 - got %v", deleteMessageOne.Data))
			}

			deleteMessageTwo := convertedMessages[1].(DeleteMessage)

			if !reflect.DeepEqual(deleteMessageTwo.Data, MessageRowData{Row: MessageRow{"field_1": "value_3", "field_2": "value_4"}}) {
				t.Fatal(fmt.Sprintf("Wrong data for delete message 2 - got %v", deleteMessageTwo.Data))
			}
		})
	}

	testCasesUpdateRowsEvents := []struct {
		eventType replication.EventType
	}{
		{replication.UPDATE_ROWS_EVENTv1},
		{replication.UPDATE_ROWS_EVENTv2},
	}

	for _, tc := range testCasesUpdateRowsEvents {
		t.Run("Update message", func(t *testing.T) {
			eventHeader := createEventHeader(logPos, tc.eventType)
			rowsEvent := createRowsEvent([]interface{}{"value_1", "value_2"}, []interface{}{"value_3", "value_4"})
			rowsEventData := []RowsEventData{NewRowsEventData(eventHeader, rowsEvent, tableMetadata)}

			convertedMessages := ConvertRowsEventsToMessages(xid, rowsEventData)

			if len(convertedMessages) != 1 {
				t.Fatal("Expected 1 update messages to be created")
			}

			assertMessageHeader(t, convertedMessages[0], logPos, MessageTypeUpdate)

			updateMessage := convertedMessages[0].(UpdateMessage)

			if !reflect.DeepEqual(updateMessage.OldData, MessageRowData{Row: MessageRow{"field_1": "value_1", "field_2": "value_2"}}) {
				t.Fatal(fmt.Sprintf("Wrong data for update message old data - got %v", updateMessage.OldData))
			}

			if !reflect.DeepEqual(updateMessage.NewData, MessageRowData{Row: MessageRow{"field_1": "value_3", "field_2": "value_4"}}) {
				t.Fatal(fmt.Sprintf("Wrong data for update message new data - got %v", updateMessage.NewData))
			}
		})
	}

	t.Run("Unknown event type", func(t *testing.T) {
		eventHeader := createEventHeader(logPos, replication.RAND_EVENT) // can be any unkown event actually
		rowsEvent := createRowsEvent()
		rowsEventData := []RowsEventData{NewRowsEventData(eventHeader, rowsEvent, tableMetadata)}

		convertedMessages := ConvertRowsEventsToMessages(xid, rowsEventData)

		if len(convertedMessages) != 0 {
			t.Fatal("Expected no messages to be created from unknown event")
		}
	})
}

func TestDetectMismatch(t *testing.T) {
	t.Run("No mismatch, empty input", func(t *testing.T) {
		row := []interface{}{}
		columnNames := []string{}
		if detected, _ := detectMismatch(row, columnNames); detected {
			t.Fatal("Expected no mismatch to be detected")
		}
	})

	t.Run("No mismatch", func(t *testing.T) {
		row := []interface{}{"value 1", "value 2"}
		columnNames := []string{"field_1", "field_2"}
		if detected, _ := detectMismatch(row, columnNames); detected {
			t.Fatal("Expected no mismatch to be detected")
		}
	})

	t.Run("Detect mismatch, row is missing field", func(t *testing.T) {
		row := []interface{}{"value 1"}
		columnNames := []string{"field_1", "field_2"}
		detected, notice := detectMismatch(row, columnNames)
		if !detected {
			t.Fatal("Expected mismatch to be detected")
		}
		if !strings.Contains(notice, "row is missing field(s)") {
			t.Fatal("Wrong notice")
		}
	})

	t.Run("Detect mismatch, column name is missing field", func(t *testing.T) {
		row := []interface{}{"value 1", "value 2"}
		columnNames := []string{"field_1"}
		detected, notice := detectMismatch(row, columnNames)
		if !detected {
			t.Fatal("Expected mismatch to be detected")
		}
		if !strings.Contains(notice, "column names array is missing field(s)") {
			t.Fatal("Wrong notice")
		}
	})
}

func createEventHeader(logPos uint32, eventType replication.EventType) replication.EventHeader {
	return replication.EventHeader{
		Timestamp: uint32(time.Now().Unix()),
		EventType: eventType,
		LogPos:    logPos,
	}
}

func createRowsEvent(rowData ...[]interface{}) replication.RowsEvent {
	return replication.RowsEvent{Rows: rowData}
}

func assertMessageHeader(t *testing.T, message Message, expectedLogPos uint32, expectedType MessageType) {
	if message.GetHeader().BinlogPosition != expectedLogPos {
		t.Fatal("Unexpected value for BinlogPosition")
	}

	if message.GetType() != expectedType {
		t.Fatal("Unexpected value for message type")
	}
}

repository: tanema/binlog-parser

repo_name: tanema/binlog-parser


text:
@article{bouvier_automatic_2010,
	title = {Automatic clustering of docking poses in virtual screening process using self-organizing map},
	volume = {26},
	issn = {1367-4803, 1460-2059},
	url = {http://bioinformatics.oxfordjournals.org/content/26/1/53},
	doi = {10.1093/bioinformatics/btp623},
	abstract = {Motivation: Scoring functions provided by the docking software are still a major limiting factor in virtual screening ({VS}) process to classify compounds. Score analysis of the docking is not able to find out all active compounds. This is due to a bad estimation of the ligand binding energies. Making the assumption that active compounds should have specific contacts with their target to display activity, it would be possible to discriminate active compounds from inactive ones with careful analysis of interatomic contacts between the molecule and the target. However, compounds clustering is very tedious due to the large number of contacts extracted from the different conformations proposed by docking experiments.
Results: Structural analysis of docked structures is processed in three steps: (i) a Kohonen self-organizing map ({SOM}) training phase using drug–protein contact descriptors followed by (ii) an unsupervised cluster analysis and (iii) a Newick file generation for results visualization as a tree. The docking poses are then analysed and classified quickly and automatically by {AuPosSOM} (Automatic analysis of Poses using {SOM}). {AuPosSOM} can be integrated into strategies for {VS} currently employed. We demonstrate that it is possible to discriminate active compounds from inactive ones using only mean protein contacts' footprints calculation from the multiple conformations given by the docking software. Chemical structure of the compound and key binding residues information are not necessary to find out active molecules. Thus, contact–activity relationship can be employed as a new {VS} process.
Availability: {AuPosSOM} is available at http://www.aupossom.com.
Contact: contact@aupossom.com; gildas.bertho@parisdescartes.fr
Supplementary information: Supplementary data are available at Bioinformatics online.},
	language = {en},
	number = {1},
	urldate = {2014-12-29},
	journal = {Bioinformatics},
	author = {Bouvier, Guillaume and Evrard-Todeschi, Nathalie and Girault, Jean-Pierre and Bertho, Gildas},
	month = jan,
	year = {2010},
	pmid = {19910307},
	keywords = {my publications},
	pages = {53--60},
	file = {Full Text PDF:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/SFVWCJ88/Bouvier et al. - 2010 - Automatic clustering of docking poses in virtual s.pdf:application/pdf;Snapshot:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/MHKM92ID/53.html:text/html}
}

@article{bertho_key-role_2008,
	title = {The key-role of tyrosine 155 in the mechanism of prion transconformation as highlighted by a study of sheep mutant peptides},
	volume = {29},
	issn = {0196-9781},
	url = {http://www.sciencedirect.com/science/article/pii/S0196978108001228},
	doi = {10.1016/j.peptides.2008.03.014},
	abstract = {Prion protein is a strongly conserved and ubiquitous glycoprotein. The conformational conversion of the non-pathogenic cellular prion isoform ({PrPC}) into a pathogenic scrapie isoform ({PrPSc}) is a fundamental event in the onset of transmissible spongiform encephalopathies ({TSE}). During this conversion, helix H1 and its two flanking loops are known to undergo a conformational transition into a β-like structure. In order to understand mechanisms which trigger this transconformation, sheep prion protein synthetic peptides spanning helix 1 and β-strand 2 (residues 142–166) were studied: (1) the N3 peptide, studied earlier, is known to fold into β-hairpin-like conformation in phosphate buffer at neutral {pH} and to adopt a helix H1 conformation when dissolved in trifluoroethanol/phosphate buffer mixture, (2) The R156A mutant (peptide R15) and (3) the Y155A mutant (peptide Y14) of the N3 peptide are studied by circular dichroism and {NMR} spectroscopy in this article. Structural characterization of these peptides highlights the key role of tyrosine 155 in the stabilization of the β-hairpin-like conformation of the sheep peptide in phosphate buffer. We propose a model where tyrosine 155 could stabilize the β-hairpin structure by creating a hydrophobic core in phosphate buffer, necessary to initiate the β-type structure formation. In the turn, the side chain ionic interaction, E152-R156 described before, seems to play a minor role relative to the hydrophobic packing, as observed with the R156A mutation (peptide R15). Interestingly, homology at amino acid residue 155 could be responsible for the species barrier in {TSE}.},
	number = {7},
	urldate = {2014-12-29},
	journal = {Peptides},
	author = {Bertho, Gildas and Bouvier, Guillaume and Hoa, Gaston Hui Bon and Girault, Jean-Pierre},
	year = {2008},
	keywords = {Fragments 152–156, Hydrophobic packing, my publications, {NMR}, Prion protein, Salt bridges, Solvation},
	pages = {1073--1084},
	file = {ScienceDirect Full Text PDF:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/QMWNSQIS/Bertho et al. - 2008 - The key-role of tyrosine 155 in the mechanism of p.pdf:application/pdf;ScienceDirect Snapshot:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/3BKAGSVZ/S0196978108001228.html:text/html}
}

@article{mantsyzov_contact-based_2012,
	title = {Contact-based ligand-clustering approach for the identification of active compounds in virtual screening},
	volume = {5},
	issn = {1178-6949},
	url = {http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3459543/},
	doi = {10.2147/AABC.S30881},
	abstract = {Evaluation of docking results is one of the most important problems for virtual screening and in silico drug design. Modern approaches for the identification of active compounds in a large data set of docked molecules use energy scoring functions. One of the general and most significant limitations of these methods relates to inaccurate binding energy estimation, which results in false scoring of docked compounds. Automatic analysis of poses using self-organizing maps ({AuPosSOM}) represents an alternative approach for the evaluation of docking results based on the clustering of compounds by the similarity of their contacts with the receptor. A scoring function was developed for the identification of the active compounds in the {AuPosSOM} clustered dataset. In addition, the {AuPosSOM} efficiency for the clustering of compounds and the identification of key contacts considered as important for its activity, were also improved. Benchmark tests for several targets revealed that together with the developed scoring function, {AuPosSOM} represents a good alternative to the energy-based scoring functions for the evaluation of docking results.},
	urldate = {2014-12-29},
	journal = {Adv Appl Bioinform Chem},
	author = {Mantsyzov, Alexey B and Bouvier, Guillaume and Evrard-Todeschi, Nathalie and Bertho, Gildas},
	month = sep,
	year = {2012},
	pmid = {23055752},
	pmcid = {PMC3459543},
	keywords = {my publications},
	pages = {61--79},
	file = {PubMed Central Full Text PDF:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/N356ZEWR/Mantsyzov et al. - 2012 - Contact-based ligand-clustering approach for the i.pdf:application/pdf}
}

@article{spill_convective_2013,
	title = {A convective replica-exchange method for sampling new energy basins},
	volume = {34},
	issn = {01928651},
	url = {http://doi.wiley.com/10.1002/jcc.23113},
	doi = {10.1002/jcc.23113},
	language = {en},
	number = {2},
	urldate = {2014-12-18},
	journal = {J. Comput. Chem.},
	author = {Spill, Yannick G. and Bouvier, Guillaume and Nilges, Michael},
	month = jan,
	year = {2013},
	keywords = {my publications},
	pages = {132--140},
	file = {23113_ftp.pdf:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/PTR8HMBA/23113_ftp.pdf:application/pdf}
}

@article{miri_stabilization_2014,
	title = {Stabilization of the integrase-{DNA} complex by Mg2+ ions and prediction of key residues for binding {HIV}-1 integrase inhibitors: Integrase-{DNA} Complex and Binding of {HIV}-1 Integrase Inhibitors},
	volume = {82},
	issn = {08873585},
	shorttitle = {Stabilization of the integrase-{DNA} complex by Mg $^{\textrm{2+}}$ ions and prediction of key residues for binding {HIV}-1 integrase inhibitors},
	url = {http://doi.wiley.com/10.1002/prot.24412},
	doi = {10.1002/prot.24412},
	language = {en},
	number = {3},
	urldate = {2014-12-18},
	journal = {Proteins},
	author = {Miri, Lamia and Bouvier, Guillaume and Kettani, Anass and Mikou, Afaf and Wakrim, Lahcen and Nilges, Michael and Malliavin, Thérèse E.},
	month = mar,
	year = {2014},
	keywords = {my publications},
	pages = {466--478},
	file = {prot24412.pdf:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/PSAAWS28/prot24412.pdf:application/pdf}
}

@article{bouvier_functional_2014,
	title = {Functional Motions Modulating {VanA} Ligand Binding Unraveled by Self-Organizing Maps},
	volume = {54},
	issn = {1549-9596, 1549-960X},
	url = {http://pubs.acs.org/doi/abs/10.1021/ci400354b},
	doi = {10.1021/ci400354b},
	language = {en},
	number = {1},
	urldate = {2014-12-18},
	journal = {J. Chem. Inf. Model.},
	author = {Bouvier, Guillaume and Duclert-Savatier, Nathalie and Desdouits, Nathan and Meziane-Cherif, Djalal and Blondel, Arnaud and Courvalin, Patrice and Nilges, Michael and Malliavin, Thérèse E.},
	month = jan,
	year = {2014},
	keywords = {my publications},
	pages = {289--301},
	file = {ci400354b.pdf:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/QFRAF5UC/ci400354b.pdf:application/pdf}
}

@article{nivaskumar_distinct_2014,
	title = {Distinct Docking and Stabilization Steps of the Pseudopilus Conformational Transition Path Suggest Rotational Assembly of Type {IV} Pilus-like Fibers},
	volume = {22},
	issn = {09692126},
	url = {http://linkinghub.elsevier.com/retrieve/pii/S0969212614000719},
	doi = {10.1016/j.str.2014.03.001},
	language = {en},
	number = {5},
	urldate = {2014-11-28},
	journal = {Structure},
	author = {Nivaskumar, Mangayarkarasi and Bouvier, Guillaume and Campos, Manuel and Nadeau, Nathalie and Yu, Xiong and Egelman, Edward H. and Nilges, Michael and Francetic, Olivera},
	month = may,
	year = {2014},
	keywords = {my publications},
	pages = {685--696},
	file = {1-s2.0-S0969212614000719-main.pdf:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/WSRUQS26/1-s2.0-S0969212614000719-main.pdf:application/pdf;ScienceDirect Full Text PDF:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/MPPZK82N/Nivaskumar et al. - 2014 - Distinct Docking and Stabilization Steps of the Ps.pdf:application/pdf;ScienceDirect Snapshot:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/F4N792J6/S0969212614000719.html:text/html}
}

@article{bouvier_automatic_2014,
	title = {An automatic tool to analyze and cluster macromolecular conformations based on Self-Organizing Maps},
    volume = {31},
    number = {9},
	issn = {1367-4803, 1460-2059},
	url = {http://bioinformatics.oxfordjournals.org/content/early/2014/12/26/bioinformatics.btu849},
	doi = {10.1093/bioinformatics/btu849},
	abstract = {Motivation: Sampling the conformational space of biological macromolecules generates large sets of data with considerable complexity. Data-mining techniques, such as clustering, can extract meaningful information. Among them, the Self-Organizing Maps ({SOMs}) algorithm has shown great promise, in particular since its computation time rises only linearly with the size of the data set. Whereas {SOMs} are generally used with few neurons, we investigate here their behavior with large numbers of neurons.
Results: We present here a python library implementing the full {SOM} analysis workflow. Large {SOMs} can readily be applied on heavy data sets. Coupled with visualization tools they have very interesting properties. Descriptors for each conformation of a trajectory are calculated and mapped onto a 3D landscape, the U-matrix, reporting the distance between neighboring neurons. To delineate clusters, we developed the flooding algorithm, which hierarchically identifies local basins of the U-matrix from the global minimum to the maximum.
Availability: The python implementation of the {SOM} library is freely available on github: https://github.com/bougui505/{SOM}.
Contact: michael.nilges@pasteur.fr, guillaume.bouvier@pasteur.fr},
	language = {en},
	urldate = {2014-12-28},
	journal = {Bioinformatics},
	author = {Bouvier, Guillaume and Desdouits, Nathan and Ferber, Mathias and Blondel, Arnaud and Nilges, Michael},
	month = dec,
	year = {2015},
	pmid = {25543048},
	keywords = {my publications},
	pages = {1490--1492},
	file = {Full Text PDF:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/TTJWQFZ6/Bouvier et al. - 2014 - An automatic tool to analyze and cluster macromole.pdf:application/pdf;Snapshot:/home/bougui/.mozilla/firefox/nf17tnzm.default-1407408151560/zotero/storage/8J36P7TR/bioinformatics.btu849.html:text/html}
}

@article{cassioli_algorithm_2014,
	title = {An algorithm to enumerate all possible protein conformations verifying a set of distance constraints},
	volume = {16},
	issn = {1471-2105},
	url = {http://www.biomedcentral.com/1471-2105/16/23},
	doi = {10.1186/s12859-015-0451-1},
	language = {en},
	number = {1},
	urldate = {2015-03-06},
	journal = {BMC Bioinformatics},
	author = {Cassioli, Andrea and Bardiaux, Benjamin and Bouvier, Guillaume and Mucherino, Antonio and Alves, Rafael and Liberti, Leo and Nilges, Michael and Lavor, Carlile and Malliavin, Thérèse E},
	month = dec,
    pages={23},
	year = {2015},
	file = {s12859-015-0451-1.pdf:/Bis/home/bougui/.mozilla/firefox/3d8f1z11.default-1395396062869/zotero/storage/6M4JI43M/s12859-015-0451-1.pdf:application/pdf}
}

@article{harigua-souiai_identification_2015,
	title = {Identification of binding sites and favorable ligand binding moieties by virtual screening and self-organizing map analysis},
	volume = {16},
	copyright = {http://creativecommons.org/licenses/by/2.0/},
	issn = {1471-2105},
	url = {http://www.biomedcentral.com/1471-2105/16/93/abstract},
	doi = {10.1186/s12859-015-0518-z},
	language = {en},
	number = {1},
	urldate = {2015-03-20},
	journal = {BMC Bioinformatics},
	author = {Harigua-Souiai, Emna and Cortes-Ciriano, Isidro and Desdouits, Nathan and Malliavin, Thérèse E. and Guizani, Ikram and Nilges, Michael and Blondel, Arnaud and Bouvier, Guillaume},
	month = mar,
	year = {2015},
	pages = {93},
	file = {Full Text PDF:/Bis/home/bougui/.mozilla/firefox/3d8f1z11.default-1395396062869/zotero/storage/EVTUEV3Z/Harigua-Souiai et al. - 2015 - Identification of binding sites and favorable liga.pdf:application/pdf;Snapshot:/Bis/home/bougui/.mozilla/firefox/3d8f1z11.default-1395396062869/zotero/storage/3CRXUDE3/abstract.html:text/html}
}

@article{doi:10.1021/acs.jctc.5b00153,
author = {Cortes-Ciriano, Isidro and Bouvier, Guillaume and Nilges, Michael and Maragliano, Luca and Malliavin, Thérèse E.},
title = {Temperature Accelerated Molecular Dynamics with Soft-Ratcheting Criterion Orients Enhanced Sampling by Low-Resolution Information},
journal = {Journal of Chemical Theory and Computation},
volume = {11},
number = {7},
pages = {3446-3454},
year = {2015},
doi = {10.1021/acs.jctc.5b00153},
URL = {http://dx.doi.org/10.1021/acs.jctc.5b00153},
eprint = {http://dx.doi.org/10.1021/acs.jctc.5b00153}
}

@article{10.1093/bioinformatics/btv529,
author = {Cortes-Ciriano, Isidro and van Westen, Gerard J P and Bouvier, Guillaume and Nilges, Michael and Overington, John P and Bender, Andreas and Malliavin, Therese E},
title = {Improved large-scale prediction of growth inhibition patterns using the NCI60 cancer cell line panel},
journal = {Bioinformatics},
year = {2015},
doi = {10.1093/bioinformatics/btv529},
}

@article{gault2015neisseria,
  title={Neisseria meningitidis Type IV Pili Composed of Sequence Invariable Pilins Are Masked by Multisite Glycosylation},
  author={Gault, Joseph and Ferber, Mathias and Machata, Silke and Imhaus, Anne-Flore and Malosse, Christian and Charles-Orszag, Arthur and Millien, Corinne and Bouvier, Guillaume and Bardiaux, Benjamin and P{\'e}hau-Arnaudet, G{\'e}rard and others},
  journal={PLoS Pathog},
  volume={11},
  number={9},
  pages={e1005162},
  year={2015},
  doi={10.1371/journal.ppat.1005162},
  publisher={Public Library of Science}
}

@article{ferber2016automated,
  title={Automated structure modeling of large protein assemblies using crosslinks as distance restraints},
  author={Ferber, Mathias and Kosinski, Jan and Ori, Alessandro and Rashid, Umar J and Moreno-Morcillo, Mar{\'\i}a and Simon, Bernd and Bouvier, Guillaume and Batista, Paulo Ricardo and M{\"u}ller, Christoph W and Beck, Martin and others},
  journal={Nature Methods},
  year={2016},
  doi={10.1038/nmeth.3838},
  publisher={Nature Publishing Group}
}

gha_language: TeX

extension: bib


text:
DESCRIPTION = "Utility that enables basic Ethernet frame filtering on a Linux bridge, MAC NAT and brouting."
PRIORITY = "optional"
LICENSE = "GPL"
SECTION = "console/network"
PR = "r2"

TARGET_CC_ARCH += "${LDFLAGS}"

SRC_URI = "${SOURCEFORGE_MIRROR}/ebtables/ebtables-v${PV}.tar.gz \
           file://gcc34.patch \
           file://gcc4.patch \
           file://installnonroot.patch \
           file://installcreatedirs.patch"
S = "${WORKDIR}/ebtables-v${PV}"

do_compile () {
	oe_runmake 'BINPATH=/sbin/' 'MANDIR=${mandir}/' \
		   'ETHERTYPESPATH=${sysconfdir}/' 'KERNEL_INCLUDES=${STAGING_INCDIR}'
}

do_install () {
	oe_runmake 'BINPATH=${D}${base_sbindir}/' 'MANDIR=${D}${mandir}/' \
		   'ETHERTYPESPATH=${D}${sysconfdir}/' install
}

SRC_URI[md5sum] = "c4559af2366c764c6c42a3fdd40d60d3"
SRC_URI[sha256sum] = "6b5a71790120977a96d5a468ed69987107c5079f14b0a4081f460b3b14fbf952"


text:
@article{RN1069,
 author = {Tong, S. Y. and Nelson, J. and Paterson, D. L. and Fowler, V. G., Jr. and Howden, B. P. and Cheng, A. C. and Chatfield, M. and Lipman, J. and Van Hal, S. and O'Sullivan, M. and Robinson, J. O. and Yahav, D. and Lye, D. and Davis, J. S. and group, Camera study and the Australasian Society for Infectious Diseases Clinical Research, Network},
 doi = {10.1186/s13063-016-1295-3},
 issn = {1745-6215 (Electronic)
1745-6215 (Linking)},
 journal = {Trials},
 pages = {170},
 title = {CAMERA2 - combination antibiotic therapy for methicillin-resistant Staphylococcus aureus infection: study protocol for a randomised controlled trial},
 type = {Journal Article},
 url = {https://www.ncbi.nlm.nih.gov/pubmed/27029920},
 volume = {17},
 year = {2016}
}