From c6b9b9908174a33ee2eb43705e000251d7a6b159 Mon Sep 17 00:00:00 2001 From: devad Date: Wed, 26 Jul 2023 17:23:56 +0800 Subject: [PATCH] :sparkles: feat reportAvailable impl Signed-off-by: devad Former-commit-id: 82285d1dba06aca04d60858ee28b1a0cf6d21896 --- model/scnodeavailinfomodel_gen.go | 36 +- model/scparticipantavailinfomodel_gen.go | 30 +- .../participantservice/participantservice.go | 15 +- rpc/client/pcmcore/pcmcore.go | 3 + .../registerparticipantlogic.go | 4 - .../reportavailablelogic.go | 92 ++ .../reportheartbeatlogic.go | 3 +- .../participantserviceserver.go | 8 +- rpc/pb/pcmCore.proto | 37 +- rpc/pcmCore/pcmCore.pb.go | 953 ++++++++++++------ rpc/pcmCore/pcmCore_grpc.pb.go | 59 +- 11 files changed, 894 insertions(+), 346 deletions(-) create mode 100644 rpc/internal/logic/participantservice/reportavailablelogic.go diff --git a/model/scnodeavailinfomodel_gen.go b/model/scnodeavailinfomodel_gen.go index 917d537a..27bdae9f 100755 --- a/model/scnodeavailinfomodel_gen.go +++ b/model/scnodeavailinfomodel_gen.go @@ -39,22 +39,22 @@ type ( } ScNodeAvailInfo struct { - Id int64 `db:"id"` // id - NodeName string `db:"node_name"` // 节点名称 - CpuTotal int64 `db:"cpu_total"` // cpu核数 - CpuUsable float64 `db:"cpu_usable"` // cpu可用率 - DiskTotal int64 `db:"disk_total"` // 磁盘空间 - DiskAvail int64 `db:"disk_avail"` // 磁盘可用空间 - MemTotal int64 `db:"mem_total"` // 内存总数 - MemAvail int64 `db:"mem_avail"` // 内存可用数 - GpuTotal int64 `db:"gpu_total"` // gpu总数 - GpuAvail int64 `db:"gpu_avail"` // gpu可用数 - ParticipantId int64 `db:"participant_id"` // 集群静态信息id - DeletedFlag int64 `db:"deleted_flag"` // 是否删除 - CreatedBy sql.NullInt64 `db:"created_by"` // 创建人 - CreatedTime time.Time `db:"created_time"` // 创建时间 - UpdatedBy sql.NullInt64 `db:"updated_by"` // 更新人 - UpdatedTime sql.NullTime `db:"updated_time"` // 更新时间 + Id int64 `db:"id"` // id + NodeName string `db:"node_name"` // 节点名称 + CpuTotal int64 `db:"cpu_total"` // cpu核数 + CpuUsable float64 `db:"cpu_usable"` // cpu可用率 + DiskTotal int64 `db:"disk_total"` // 磁盘空间 + DiskAvail int64 `db:"disk_avail"` // 磁盘可用空间 + MemTotal int64 `db:"mem_total"` // 内存总数 + MemAvail int64 `db:"mem_avail"` // 内存可用数 + GpuTotal int64 `db:"gpu_total"` // gpu总数 + GpuAvail int64 `db:"gpu_avail"` // gpu可用数 + ParticipantAvailId int64 `db:"participant_avail_id"` // 集群动态信息id + DeletedFlag int64 `db:"deleted_flag"` // 是否删除 + CreatedBy sql.NullInt64 `db:"created_by"` // 创建人 + CreatedTime time.Time `db:"created_time"` // 创建时间 + UpdatedBy sql.NullInt64 `db:"updated_by"` // 更新人 + UpdatedTime sql.NullTime `db:"updated_time"` // 更新时间 } ) @@ -102,7 +102,7 @@ func (m *defaultScNodeAvailInfoModel) Insert(ctx context.Context, data *ScNodeAv pcmScNodeAvailInfoIdKey := fmt.Sprintf("%s%v", cachePcmScNodeAvailInfoIdPrefix, data.Id) ret, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) { query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, scNodeAvailInfoRowsExpectAutoSet) - return conn.ExecCtx(ctx, query, data.Id, data.NodeName, data.CpuTotal, data.CpuUsable, data.DiskTotal, data.DiskAvail, data.MemTotal, data.MemAvail, data.GpuTotal, data.GpuAvail, data.ParticipantId, data.DeletedFlag, data.CreatedBy, data.CreatedTime, data.UpdatedBy, data.UpdatedTime) + return conn.ExecCtx(ctx, query, data.Id, data.NodeName, data.CpuTotal, data.CpuUsable, data.DiskTotal, data.DiskAvail, data.MemTotal, data.MemAvail, data.GpuTotal, data.GpuAvail, data.ParticipantAvailId, data.DeletedFlag, data.CreatedBy, data.CreatedTime, data.UpdatedBy, data.UpdatedTime) }, pcmScNodeAvailInfoIdKey) return ret, err } @@ -111,7 +111,7 @@ func (m *defaultScNodeAvailInfoModel) Update(ctx context.Context, data *ScNodeAv pcmScNodeAvailInfoIdKey := fmt.Sprintf("%s%v", cachePcmScNodeAvailInfoIdPrefix, data.Id) _, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) { query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, scNodeAvailInfoRowsWithPlaceHolder) - return conn.ExecCtx(ctx, query, data.NodeName, data.CpuTotal, data.CpuUsable, data.DiskTotal, data.DiskAvail, data.MemTotal, data.MemAvail, data.GpuTotal, data.GpuAvail, data.ParticipantId, data.DeletedFlag, data.CreatedBy, data.CreatedTime, data.UpdatedBy, data.UpdatedTime, data.Id) + return conn.ExecCtx(ctx, query, data.NodeName, data.CpuTotal, data.CpuUsable, data.DiskTotal, data.DiskAvail, data.MemTotal, data.MemAvail, data.GpuTotal, data.GpuAvail, data.ParticipantAvailId, data.DeletedFlag, data.CreatedBy, data.CreatedTime, data.UpdatedBy, data.UpdatedTime, data.Id) }, pcmScNodeAvailInfoIdKey) return err } diff --git a/model/scparticipantavailinfomodel_gen.go b/model/scparticipantavailinfomodel_gen.go index 856db2ee..f55b9893 100755 --- a/model/scparticipantavailinfomodel_gen.go +++ b/model/scparticipantavailinfomodel_gen.go @@ -39,19 +39,17 @@ type ( } ScParticipantAvailInfo struct { - Id int64 `db:"id"` // id - Host sql.NullString `db:"host"` // 集群p端host - Port sql.NullString `db:"port"` // 集群p端端口 - AvailStorageSpace sql.NullInt64 `db:"avail_storage_space"` // 集群存储可用空间 - UserNum sql.NullInt64 `db:"user_num"` // 用户数量 - PendingJobNum sql.NullInt64 `db:"pending_job_num"` // 待处理作业数量 - RunningJobNum int64 `db:"running_job_num"` // 运行作业数量 - ParticipantId int64 `db:"participant_id"` // 集群静态信息id - DeletedFlag int64 `db:"deleted_flag"` // 是否删除 - CreatedBy sql.NullInt64 `db:"created_by"` // 创建人 - CreatedTime time.Time `db:"created_time"` // 创建时间 - UpdatedBy sql.NullInt64 `db:"updated_by"` // 更新人 - UpdatedTime sql.NullTime `db:"updated_time"` // 更新时间 + Id int64 `db:"id"` // id + AvailStorageSpace int64 `db:"avail_storage_space"` // 集群存储可用空间 + UserNum int64 `db:"user_num"` // 用户数量 + PendingJobNum int64 `db:"pending_job_num"` // 待处理作业数量 + RunningJobNum int64 `db:"running_job_num"` // 运行作业数量 + ParticipantId int64 `db:"participant_id"` // 集群静态信息id + DeletedFlag int64 `db:"deleted_flag"` // 是否删除 + CreatedBy sql.NullInt64 `db:"created_by"` // 创建人 + CreatedTime time.Time `db:"created_time"` // 创建时间 + UpdatedBy sql.NullInt64 `db:"updated_by"` // 更新人 + UpdatedTime sql.NullTime `db:"updated_time"` // 更新时间 } ) @@ -98,8 +96,8 @@ func (m *defaultScParticipantAvailInfoModel) FindOne(ctx context.Context, id int func (m *defaultScParticipantAvailInfoModel) Insert(ctx context.Context, data *ScParticipantAvailInfo) (sql.Result, error) { pcmScParticipantAvailInfoIdKey := fmt.Sprintf("%s%v", cachePcmScParticipantAvailInfoIdPrefix, data.Id) ret, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) { - query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, scParticipantAvailInfoRowsExpectAutoSet) - return conn.ExecCtx(ctx, query, data.Id, data.Host, data.Port, data.AvailStorageSpace, data.UserNum, data.PendingJobNum, data.RunningJobNum, data.ParticipantId, data.DeletedFlag, data.CreatedBy, data.CreatedTime, data.UpdatedBy, data.UpdatedTime) + query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, scParticipantAvailInfoRowsExpectAutoSet) + return conn.ExecCtx(ctx, query, data.Id, data.AvailStorageSpace, data.UserNum, data.PendingJobNum, data.RunningJobNum, data.ParticipantId, data.DeletedFlag, data.CreatedBy, data.CreatedTime, data.UpdatedBy, data.UpdatedTime) }, pcmScParticipantAvailInfoIdKey) return ret, err } @@ -108,7 +106,7 @@ func (m *defaultScParticipantAvailInfoModel) Update(ctx context.Context, data *S pcmScParticipantAvailInfoIdKey := fmt.Sprintf("%s%v", cachePcmScParticipantAvailInfoIdPrefix, data.Id) _, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) { query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, scParticipantAvailInfoRowsWithPlaceHolder) - return conn.ExecCtx(ctx, query, data.Host, data.Port, data.AvailStorageSpace, data.UserNum, data.PendingJobNum, data.RunningJobNum, data.ParticipantId, data.DeletedFlag, data.CreatedBy, data.CreatedTime, data.UpdatedBy, data.UpdatedTime, data.Id) + return conn.ExecCtx(ctx, query, data.AvailStorageSpace, data.UserNum, data.PendingJobNum, data.RunningJobNum, data.ParticipantId, data.DeletedFlag, data.CreatedBy, data.CreatedTime, data.UpdatedBy, data.UpdatedTime, data.Id) }, pcmScParticipantAvailInfoIdKey) return err } diff --git a/rpc/client/participantservice/participantservice.go b/rpc/client/participantservice/participantservice.go index e6e5b478..faa39c39 100644 --- a/rpc/client/participantservice/participantservice.go +++ b/rpc/client/participantservice/participantservice.go @@ -19,11 +19,14 @@ type ( HpcInfo = pcmCore.HpcInfo InfoListReq = pcmCore.InfoListReq InfoListResp = pcmCore.InfoListResp + NodeAvailInfo = pcmCore.NodeAvailInfo NodePhyInfo = pcmCore.NodePhyInfo + ParticipantAvailReq = pcmCore.ParticipantAvailReq ParticipantHeartbeatReq = pcmCore.ParticipantHeartbeatReq ParticipantLabel = pcmCore.ParticipantLabel ParticipantPhyReq = pcmCore.ParticipantPhyReq ParticipantPhyResp = pcmCore.ParticipantPhyResp + ParticipantResp = pcmCore.ParticipantResp ParticipantTenant = pcmCore.ParticipantTenant SyncInfoReq = pcmCore.SyncInfoReq SyncInfoResp = pcmCore.SyncInfoResp @@ -31,8 +34,10 @@ type ( ParticipantService interface { // registerParticipant Participant注册接口 RegisterParticipant(ctx context.Context, in *ParticipantPhyReq, opts ...grpc.CallOption) (*ParticipantPhyResp, error) - // 心跳 + // reportHeartbeat 心跳请求 ReportHeartbeat(ctx context.Context, in *ParticipantHeartbeatReq, opts ...grpc.CallOption) (*HealthCheckResp, error) + // reportAvailable 监控数据上报 + ReportAvailable(ctx context.Context, in *ParticipantAvailReq, opts ...grpc.CallOption) (*ParticipantResp, error) } defaultParticipantService struct { @@ -52,8 +57,14 @@ func (m *defaultParticipantService) RegisterParticipant(ctx context.Context, in return client.RegisterParticipant(ctx, in, opts...) } -// 心跳 +// reportHeartbeat 心跳请求 func (m *defaultParticipantService) ReportHeartbeat(ctx context.Context, in *ParticipantHeartbeatReq, opts ...grpc.CallOption) (*HealthCheckResp, error) { client := pcmCore.NewParticipantServiceClient(m.cli.Conn()) return client.ReportHeartbeat(ctx, in, opts...) } + +// reportAvailable 监控数据上报 +func (m *defaultParticipantService) ReportAvailable(ctx context.Context, in *ParticipantAvailReq, opts ...grpc.CallOption) (*ParticipantResp, error) { + client := pcmCore.NewParticipantServiceClient(m.cli.Conn()) + return client.ReportAvailable(ctx, in, opts...) +} diff --git a/rpc/client/pcmcore/pcmcore.go b/rpc/client/pcmcore/pcmcore.go index 5349e0ba..dc0c7d77 100644 --- a/rpc/client/pcmcore/pcmcore.go +++ b/rpc/client/pcmcore/pcmcore.go @@ -19,11 +19,14 @@ type ( HpcInfo = pcmCore.HpcInfo InfoListReq = pcmCore.InfoListReq InfoListResp = pcmCore.InfoListResp + NodeAvailInfo = pcmCore.NodeAvailInfo NodePhyInfo = pcmCore.NodePhyInfo + ParticipantAvailReq = pcmCore.ParticipantAvailReq ParticipantHeartbeatReq = pcmCore.ParticipantHeartbeatReq ParticipantLabel = pcmCore.ParticipantLabel ParticipantPhyReq = pcmCore.ParticipantPhyReq ParticipantPhyResp = pcmCore.ParticipantPhyResp + ParticipantResp = pcmCore.ParticipantResp ParticipantTenant = pcmCore.ParticipantTenant SyncInfoReq = pcmCore.SyncInfoReq SyncInfoResp = pcmCore.SyncInfoResp diff --git a/rpc/internal/logic/participantservice/registerparticipantlogic.go b/rpc/internal/logic/participantservice/registerparticipantlogic.go index d164850d..faa5ac67 100644 --- a/rpc/internal/logic/participantservice/registerparticipantlogic.go +++ b/rpc/internal/logic/participantservice/registerparticipantlogic.go @@ -46,11 +46,7 @@ func (l *RegisterParticipantLogic) RegisterParticipant(in *pcmCore.ParticipantPh participantInfo := &model.ScParticipantPhyInfo{} tool.Convert(in, participantInfo) if in.ParticipantId == 0 { - var err error participantInfo.Id = tool.GenSnowflakeID() - if err != nil { - logx.Errorf("生成id错误 err:", err) - } } else { participantInfo.Id = in.ParticipantId } diff --git a/rpc/internal/logic/participantservice/reportavailablelogic.go b/rpc/internal/logic/participantservice/reportavailablelogic.go new file mode 100644 index 00000000..f0b713e8 --- /dev/null +++ b/rpc/internal/logic/participantservice/reportavailablelogic.go @@ -0,0 +1,92 @@ +package participantservicelogic + +import ( + "context" + "fmt" + "github.com/pkg/errors" + "gitlink.org.cn/jcce-pcm/pcm-coordinator/model" + "gitlink.org.cn/jcce-pcm/utils/tool" + "gorm.io/gorm" + "time" + + "gitlink.org.cn/jcce-pcm/pcm-coordinator/rpc/internal/svc" + "gitlink.org.cn/jcce-pcm/pcm-coordinator/rpc/pcmCore" + + "github.com/zeromicro/go-zero/core/logx" +) + +type ReportAvailableLogic struct { + ctx context.Context + svcCtx *svc.ServiceContext + logx.Logger +} + +func NewReportAvailableLogic(ctx context.Context, svcCtx *svc.ServiceContext) *ReportAvailableLogic { + return &ReportAvailableLogic{ + ctx: ctx, + svcCtx: svcCtx, + Logger: logx.WithContext(ctx), + } +} + +// ReportAvailable 监控数据上报 +func (l *ReportAvailableLogic) ReportAvailable(in *pcmCore.ParticipantAvailReq) (*pcmCore.ParticipantResp, error) { + db := l.svcCtx.DbEngin.Begin() + // 执行回滚或者提交操作 + defer func() { + if p := recover(); p != nil { + db.Rollback() + logx.Error(p) + } else if db.Error != nil { + logx.Info("rollback") + db.Rollback() + } else { + db = db.Commit() + logx.Info("commit success") + } + }() + //判断Participant静态信息是否存在 + participantPhyInfo := &model.ScParticipantPhyInfo{} + participantPhyInfo.Id = in.ParticipantId + if errors.Is(db.Take(&participantPhyInfo).Error, gorm.ErrRecordNotFound) { + fmt.Println("sdsdfsdf ") + return &pcmCore.ParticipantResp{ + Code: 500, + Msg: fmt.Sprintf("ParticipantInfo Does not exist, please check participantPhyId: %d", in.ParticipantId), + }, nil + } + + participantAvailInfo := &model.ScParticipantAvailInfo{} + tool.Convert(in, participantAvailInfo) + if in.Id == 0 { + participantAvailInfo.Id = tool.GenSnowflakeID() + } + participantAvailInfo.CreatedTime = time.Now() + //保存participant动态信息 + result := db.Save(&participantAvailInfo) + //保存节点信息 + nodeList := make([]*model.ScNodeAvailInfo, 0) + for _, info := range in.NodeAvailInfo { + nodeInfo := &model.ScNodeAvailInfo{} + tool.Convert(info, nodeInfo) + nodeInfo.CreatedTime = time.Now() + nodeInfo.ParticipantAvailId = participantAvailInfo.Id + if nodeInfo.Id == 0 { + nodeInfo.Id = tool.GenSnowflakeID() + } + nodeList = append(nodeList, nodeInfo) + } + result = db.Save(&nodeList) + if result.Error != nil { + logx.Errorf("orm err:", result.Error) + return &pcmCore.ParticipantResp{ + Code: 500, + Msg: fmt.Sprintf("Save participantAvailInfo error %s", result.Error), + }, nil + } + + return &pcmCore.ParticipantResp{ + Code: 200, + Msg: "ok", + }, nil +} diff --git a/rpc/internal/logic/participantservice/reportheartbeatlogic.go b/rpc/internal/logic/participantservice/reportheartbeatlogic.go index 15dbd5c2..e0b92c36 100644 --- a/rpc/internal/logic/participantservice/reportheartbeatlogic.go +++ b/rpc/internal/logic/participantservice/reportheartbeatlogic.go @@ -2,7 +2,6 @@ package participantservicelogic import ( "context" - "fmt" "github.com/zeromicro/go-zero/core/logx" "gitlink.org.cn/jcce-pcm/pcm-coordinator/rpc/internal/svc" "gitlink.org.cn/jcce-pcm/pcm-coordinator/rpc/pcmCore" @@ -26,7 +25,7 @@ func NewReportHeartbeatLogic(ctx context.Context, svcCtx *svc.ServiceContext) *R func (l *ReportHeartbeatLogic) ReportHeartbeat(in *pcmCore.ParticipantHeartbeatReq) (*pcmCore.HealthCheckResp, error) { SendHeartbeat(in.Host, in.Port, in.ParticipantId) for _, client := range ParticipantClients { - fmt.Println("客户端id:", client.ParticipantID, " 客户端状态: ", client.ClientState, "客户端最后发送心跳检测时间: ", client.LastHeartbeat) + logx.Infof("客户端id:%d; 客户端状态:%s ;客户端最后发送心跳检测时间:%s .", client.ParticipantID, client.ClientState, client.LastHeartbeat) } return &pcmCore.HealthCheckResp{ Code: 200, diff --git a/rpc/internal/server/participantservice/participantserviceserver.go b/rpc/internal/server/participantservice/participantserviceserver.go index 7801e9c3..ca9b50f1 100644 --- a/rpc/internal/server/participantservice/participantserviceserver.go +++ b/rpc/internal/server/participantservice/participantserviceserver.go @@ -28,8 +28,14 @@ func (s *ParticipantServiceServer) RegisterParticipant(ctx context.Context, in * return l.RegisterParticipant(in) } -// 心跳 +// reportHeartbeat 心跳请求 func (s *ParticipantServiceServer) ReportHeartbeat(ctx context.Context, in *pcmCore.ParticipantHeartbeatReq) (*pcmCore.HealthCheckResp, error) { l := participantservicelogic.NewReportHeartbeatLogic(ctx, s.svcCtx) return l.ReportHeartbeat(in) } + +// reportAvailable 监控数据上报 +func (s *ParticipantServiceServer) ReportAvailable(ctx context.Context, in *pcmCore.ParticipantAvailReq) (*pcmCore.ParticipantResp, error) { + l := participantservicelogic.NewReportAvailableLogic(ctx, s.svcCtx) + return l.ReportAvailable(in) +} diff --git a/rpc/pb/pcmCore.proto b/rpc/pb/pcmCore.proto index 43d29a47..bd9eb0e7 100644 --- a/rpc/pb/pcmCore.proto +++ b/rpc/pb/pcmCore.proto @@ -161,12 +161,47 @@ message ParticipantHeartbeatReq{ string port = 3; //port } +// ParticipantAvailInfo Participant可用信息 +message ParticipantAvailReq{ + int64 id = 1; //id + int64 availStorageSpace = 2; //集群存储可用空间 + int32 userNum = 3; //用户数量 + int32 pendingJobNum = 4; //待处理作业数量 + int32 runningJobNum = 5; //运行作业数量 + int64 participantId = 6; //集群静态信息id + repeated NodeAvailInfo nodeAvailInfo = 7; //节点可用信息 +} + +// NodeAvailInfo 节点可用信息 +message NodeAvailInfo{ + int64 id = 1; //id + string nodeName = 2; //节点名称 + int32 cpuTotal = 3; //cpu核数 + double cpuUsable = 4; //cpu可用率 + int32 diskTotal = 5; //磁盘空间 + int32 diskAvail = 6; //磁盘可用空间 + int32 memTotal = 7; //内存总数 + int32 memAvail = 8; //内存可用数 + int32 gpuTotal = 9; //gpu总数 + int32 gpuAvail = 10; //gpu可用数 + int64 participantAvailId = 11; //集群动态信息id +} + +message ParticipantResp{ + int64 code = 1; + string msg = 2; +} + // participant 参与者 service participantService { // registerParticipant Participant注册接口 rpc registerParticipant (ParticipantPhyReq) returns (ParticipantPhyResp) {}; - //心跳 + // reportHeartbeat 心跳请求 rpc reportHeartbeat (ParticipantHeartbeatReq) returns (HealthCheckResp) {}; + + // reportAvailable 监控数据上报 + rpc reportAvailable (ParticipantAvailReq) returns(ParticipantResp){} + } \ No newline at end of file diff --git a/rpc/pcmCore/pcmCore.pb.go b/rpc/pcmCore/pcmCore.pb.go index f3677740..074c992a 100644 --- a/rpc/pcmCore/pcmCore.pb.go +++ b/rpc/pcmCore/pcmCore.pb.go @@ -1,8 +1,8 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.30.0 -// protoc v3.19.4 -// source: pcmCore.proto +// protoc v4.23.4 +// source: pb/pcmCore.proto package pcmCore @@ -53,11 +53,11 @@ func (x MessageStatus) String() string { } func (MessageStatus) Descriptor() protoreflect.EnumDescriptor { - return file_pcmCore_proto_enumTypes[0].Descriptor() + return file_pb_pcmCore_proto_enumTypes[0].Descriptor() } func (MessageStatus) Type() protoreflect.EnumType { - return &file_pcmCore_proto_enumTypes[0] + return &file_pb_pcmCore_proto_enumTypes[0] } func (x MessageStatus) Number() protoreflect.EnumNumber { @@ -66,7 +66,7 @@ func (x MessageStatus) Number() protoreflect.EnumNumber { // Deprecated: Use MessageStatus.Descriptor instead. func (MessageStatus) EnumDescriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{0} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{0} } type SyncInfoReq struct { @@ -84,7 +84,7 @@ type SyncInfoReq struct { func (x *SyncInfoReq) Reset() { *x = SyncInfoReq{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[0] + mi := &file_pb_pcmCore_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -97,7 +97,7 @@ func (x *SyncInfoReq) String() string { func (*SyncInfoReq) ProtoMessage() {} func (x *SyncInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[0] + mi := &file_pb_pcmCore_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -110,7 +110,7 @@ func (x *SyncInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use SyncInfoReq.ProtoReflect.Descriptor instead. func (*SyncInfoReq) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{0} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{0} } func (x *SyncInfoReq) GetParticipantId() int64 { @@ -173,7 +173,7 @@ type AiInfo struct { func (x *AiInfo) Reset() { *x = AiInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[1] + mi := &file_pb_pcmCore_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -186,7 +186,7 @@ func (x *AiInfo) String() string { func (*AiInfo) ProtoMessage() {} func (x *AiInfo) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[1] + mi := &file_pb_pcmCore_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -199,7 +199,7 @@ func (x *AiInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use AiInfo.ProtoReflect.Descriptor instead. func (*AiInfo) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{1} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{1} } func (x *AiInfo) GetParticipantId() int64 { @@ -328,7 +328,7 @@ type CloudInfo struct { func (x *CloudInfo) Reset() { *x = CloudInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[2] + mi := &file_pb_pcmCore_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -341,7 +341,7 @@ func (x *CloudInfo) String() string { func (*CloudInfo) ProtoMessage() {} func (x *CloudInfo) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[2] + mi := &file_pb_pcmCore_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -354,7 +354,7 @@ func (x *CloudInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use CloudInfo.ProtoReflect.Descriptor instead. func (*CloudInfo) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{2} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{2} } func (x *CloudInfo) GetParticipant() int64 { @@ -464,7 +464,7 @@ type HpcInfo struct { func (x *HpcInfo) Reset() { *x = HpcInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[3] + mi := &file_pb_pcmCore_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -477,7 +477,7 @@ func (x *HpcInfo) String() string { func (*HpcInfo) ProtoMessage() {} func (x *HpcInfo) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[3] + mi := &file_pb_pcmCore_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -490,7 +490,7 @@ func (x *HpcInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use HpcInfo.ProtoReflect.Descriptor instead. func (*HpcInfo) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{3} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{3} } func (x *HpcInfo) GetParticipantId() int64 { @@ -645,7 +645,7 @@ type SyncInfoResp struct { func (x *SyncInfoResp) Reset() { *x = SyncInfoResp{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[4] + mi := &file_pb_pcmCore_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -658,7 +658,7 @@ func (x *SyncInfoResp) String() string { func (*SyncInfoResp) ProtoMessage() {} func (x *SyncInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[4] + mi := &file_pb_pcmCore_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -671,7 +671,7 @@ func (x *SyncInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use SyncInfoResp.ProtoReflect.Descriptor instead. func (*SyncInfoResp) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{4} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{4} } func (x *SyncInfoResp) GetCode() int64 { @@ -700,7 +700,7 @@ type InfoListReq struct { func (x *InfoListReq) Reset() { *x = InfoListReq{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[5] + mi := &file_pb_pcmCore_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -713,7 +713,7 @@ func (x *InfoListReq) String() string { func (*InfoListReq) ProtoMessage() {} func (x *InfoListReq) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[5] + mi := &file_pb_pcmCore_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -726,7 +726,7 @@ func (x *InfoListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use InfoListReq.ProtoReflect.Descriptor instead. func (*InfoListReq) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{5} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{5} } func (x *InfoListReq) GetKind() string { @@ -756,7 +756,7 @@ type InfoListResp struct { func (x *InfoListResp) Reset() { *x = InfoListResp{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[6] + mi := &file_pb_pcmCore_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -769,7 +769,7 @@ func (x *InfoListResp) String() string { func (*InfoListResp) ProtoMessage() {} func (x *InfoListResp) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[6] + mi := &file_pb_pcmCore_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -782,7 +782,7 @@ func (x *InfoListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use InfoListResp.ProtoReflect.Descriptor instead. func (*InfoListResp) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{6} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{6} } func (x *InfoListResp) GetHpcInfoList() []*HpcInfo { @@ -818,7 +818,7 @@ type ParticipantTenant struct { func (x *ParticipantTenant) Reset() { *x = ParticipantTenant{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[7] + mi := &file_pb_pcmCore_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -831,7 +831,7 @@ func (x *ParticipantTenant) String() string { func (*ParticipantTenant) ProtoMessage() {} func (x *ParticipantTenant) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[7] + mi := &file_pb_pcmCore_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -844,7 +844,7 @@ func (x *ParticipantTenant) ProtoReflect() protoreflect.Message { // Deprecated: Use ParticipantTenant.ProtoReflect.Descriptor instead. func (*ParticipantTenant) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{7} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{7} } func (x *ParticipantTenant) GetTenantName() string { @@ -868,7 +868,7 @@ type ParticipantLabel struct { func (x *ParticipantLabel) Reset() { *x = ParticipantLabel{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[8] + mi := &file_pb_pcmCore_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -881,7 +881,7 @@ func (x *ParticipantLabel) String() string { func (*ParticipantLabel) ProtoMessage() {} func (x *ParticipantLabel) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[8] + mi := &file_pb_pcmCore_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -894,7 +894,7 @@ func (x *ParticipantLabel) ProtoReflect() protoreflect.Message { // Deprecated: Use ParticipantLabel.ProtoReflect.Descriptor instead. func (*ParticipantLabel) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{8} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{8} } func (x *ParticipantLabel) GetId() int64 { @@ -931,7 +931,7 @@ type HealthCheckResp struct { func (x *HealthCheckResp) Reset() { *x = HealthCheckResp{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[9] + mi := &file_pb_pcmCore_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -944,7 +944,7 @@ func (x *HealthCheckResp) String() string { func (*HealthCheckResp) ProtoMessage() {} func (x *HealthCheckResp) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[9] + mi := &file_pb_pcmCore_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -957,7 +957,7 @@ func (x *HealthCheckResp) ProtoReflect() protoreflect.Message { // Deprecated: Use HealthCheckResp.ProtoReflect.Descriptor instead. func (*HealthCheckResp) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{9} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{9} } func (x *HealthCheckResp) GetMessageStatus() MessageStatus { @@ -994,7 +994,7 @@ type ParticipantPhyResp struct { func (x *ParticipantPhyResp) Reset() { *x = ParticipantPhyResp{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[10] + mi := &file_pb_pcmCore_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1007,7 +1007,7 @@ func (x *ParticipantPhyResp) String() string { func (*ParticipantPhyResp) ProtoMessage() {} func (x *ParticipantPhyResp) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[10] + mi := &file_pb_pcmCore_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1020,7 +1020,7 @@ func (x *ParticipantPhyResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ParticipantPhyResp.ProtoReflect.Descriptor instead. func (*ParticipantPhyResp) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{10} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{10} } func (x *ParticipantPhyResp) GetCode() int64 { @@ -1070,7 +1070,7 @@ type ParticipantPhyReq struct { func (x *ParticipantPhyReq) Reset() { *x = ParticipantPhyReq{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[11] + mi := &file_pb_pcmCore_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1083,7 +1083,7 @@ func (x *ParticipantPhyReq) String() string { func (*ParticipantPhyReq) ProtoMessage() {} func (x *ParticipantPhyReq) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[11] + mi := &file_pb_pcmCore_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1096,7 +1096,7 @@ func (x *ParticipantPhyReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ParticipantPhyReq.ProtoReflect.Descriptor instead. func (*ParticipantPhyReq) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{11} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{11} } func (x *ParticipantPhyReq) GetName() string { @@ -1222,7 +1222,7 @@ type NodePhyInfo struct { func (x *NodePhyInfo) Reset() { *x = NodePhyInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[12] + mi := &file_pb_pcmCore_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1235,7 +1235,7 @@ func (x *NodePhyInfo) String() string { func (*NodePhyInfo) ProtoMessage() {} func (x *NodePhyInfo) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[12] + mi := &file_pb_pcmCore_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1248,7 +1248,7 @@ func (x *NodePhyInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use NodePhyInfo.ProtoReflect.Descriptor instead. func (*NodePhyInfo) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{12} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{12} } func (x *NodePhyInfo) GetId() int64 { @@ -1314,7 +1314,7 @@ type ParticipantHeartbeatReq struct { func (x *ParticipantHeartbeatReq) Reset() { *x = ParticipantHeartbeatReq{} if protoimpl.UnsafeEnabled { - mi := &file_pcmCore_proto_msgTypes[13] + mi := &file_pb_pcmCore_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1327,7 +1327,7 @@ func (x *ParticipantHeartbeatReq) String() string { func (*ParticipantHeartbeatReq) ProtoMessage() {} func (x *ParticipantHeartbeatReq) ProtoReflect() protoreflect.Message { - mi := &file_pcmCore_proto_msgTypes[13] + mi := &file_pb_pcmCore_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1340,7 +1340,7 @@ func (x *ParticipantHeartbeatReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ParticipantHeartbeatReq.ProtoReflect.Descriptor instead. func (*ParticipantHeartbeatReq) Descriptor() ([]byte, []int) { - return file_pcmCore_proto_rawDescGZIP(), []int{13} + return file_pb_pcmCore_proto_rawDescGZIP(), []int{13} } func (x *ParticipantHeartbeatReq) GetParticipantId() int64 { @@ -1364,202 +1364,524 @@ func (x *ParticipantHeartbeatReq) GetPort() string { return "" } -var File_pcmCore_proto protoreflect.FileDescriptor +// ParticipantAvailInfo Participant可用信息 +type ParticipantAvailReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -var file_pcmCore_proto_rawDesc = []byte{ - 0x0a, 0x0d, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, - 0x07, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x22, 0xe6, 0x01, 0x0a, 0x0b, 0x53, 0x79, 0x6e, - 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, - 0x6e, 0x64, 0x12, 0x32, 0x0a, 0x0b, 0x48, 0x70, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, - 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, - 0x65, 0x2e, 0x48, 0x70, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x48, 0x70, 0x63, 0x49, 0x6e, - 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0d, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x49, - 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, - 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x0d, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, - 0x12, 0x2f, 0x0a, 0x0a, 0x41, 0x69, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x05, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x41, - 0x69, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x41, 0x69, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, - 0x74, 0x22, 0xbf, 0x03, 0x0a, 0x06, 0x41, 0x69, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x0d, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x69, - 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, - 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x14, 0x0a, - 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, - 0x62, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x6c, 0x61, - 0x76, 0x6f, 0x72, 0x49, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x6c, 0x61, - 0x76, 0x6f, 0x72, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, - 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x24, 0x0a, - 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x49, 0x64, 0x22, 0xbb, 0x02, 0x0a, 0x09, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, - 0x61, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, - 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6b, - 0x69, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, - 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, - 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x75, 0x6e, 0x6e, 0x69, - 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x75, - 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, - 0x75, 0x6c, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x79, 0x61, 0x6d, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x79, 0x61, 0x6d, 0x6c, 0x53, 0x74, 0x72, 0x69, 0x6e, - 0x67, 0x22, 0xad, 0x04, 0x0a, 0x07, 0x48, 0x70, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, - 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x01, + Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` //id + AvailStorageSpace int64 `protobuf:"varint,2,opt,name=availStorageSpace,proto3" json:"availStorageSpace,omitempty"` //集群存储可用空间 + UserNum int32 `protobuf:"varint,3,opt,name=userNum,proto3" json:"userNum,omitempty"` //用户数量 + PendingJobNum int32 `protobuf:"varint,4,opt,name=pendingJobNum,proto3" json:"pendingJobNum,omitempty"` //待处理作业数量 + RunningJobNum int32 `protobuf:"varint,5,opt,name=runningJobNum,proto3" json:"runningJobNum,omitempty"` //运行作业数量 + ParticipantId int64 `protobuf:"varint,6,opt,name=participantId,proto3" json:"participantId,omitempty"` //集群静态信息id + NodeAvailInfo []*NodeAvailInfo `protobuf:"bytes,7,rep,name=nodeAvailInfo,proto3" json:"nodeAvailInfo,omitempty"` //节点可用信息 +} + +func (x *ParticipantAvailReq) Reset() { + *x = ParticipantAvailReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_pcmCore_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ParticipantAvailReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ParticipantAvailReq) ProtoMessage() {} + +func (x *ParticipantAvailReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_pcmCore_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ParticipantAvailReq.ProtoReflect.Descriptor instead. +func (*ParticipantAvailReq) Descriptor() ([]byte, []int) { + return file_pb_pcmCore_proto_rawDescGZIP(), []int{14} +} + +func (x *ParticipantAvailReq) GetId() int64 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *ParticipantAvailReq) GetAvailStorageSpace() int64 { + if x != nil { + return x.AvailStorageSpace + } + return 0 +} + +func (x *ParticipantAvailReq) GetUserNum() int32 { + if x != nil { + return x.UserNum + } + return 0 +} + +func (x *ParticipantAvailReq) GetPendingJobNum() int32 { + if x != nil { + return x.PendingJobNum + } + return 0 +} + +func (x *ParticipantAvailReq) GetRunningJobNum() int32 { + if x != nil { + return x.RunningJobNum + } + return 0 +} + +func (x *ParticipantAvailReq) GetParticipantId() int64 { + if x != nil { + return x.ParticipantId + } + return 0 +} + +func (x *ParticipantAvailReq) GetNodeAvailInfo() []*NodeAvailInfo { + if x != nil { + return x.NodeAvailInfo + } + return nil +} + +// NodeAvailInfo 节点可用信息 +type NodeAvailInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` //id + NodeName string `protobuf:"bytes,2,opt,name=nodeName,proto3" json:"nodeName,omitempty"` //节点名称 + CpuTotal int32 `protobuf:"varint,3,opt,name=cpuTotal,proto3" json:"cpuTotal,omitempty"` //cpu核数 + CpuUsable float64 `protobuf:"fixed64,4,opt,name=cpuUsable,proto3" json:"cpuUsable,omitempty"` //cpu可用率 + DiskTotal int32 `protobuf:"varint,5,opt,name=diskTotal,proto3" json:"diskTotal,omitempty"` //磁盘空间 + DiskAvail int32 `protobuf:"varint,6,opt,name=diskAvail,proto3" json:"diskAvail,omitempty"` //磁盘可用空间 + MemTotal int32 `protobuf:"varint,7,opt,name=memTotal,proto3" json:"memTotal,omitempty"` //内存总数 + MemAvail int32 `protobuf:"varint,8,opt,name=memAvail,proto3" json:"memAvail,omitempty"` //内存可用数 + GpuTotal int32 `protobuf:"varint,9,opt,name=gpuTotal,proto3" json:"gpuTotal,omitempty"` //gpu总数 + GpuAvail int32 `protobuf:"varint,10,opt,name=gpuAvail,proto3" json:"gpuAvail,omitempty"` //gpu可用数 + ParticipantAvailId int64 `protobuf:"varint,11,opt,name=participantAvailId,proto3" json:"participantAvailId,omitempty"` //集群动态信息id +} + +func (x *NodeAvailInfo) Reset() { + *x = NodeAvailInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_pcmCore_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *NodeAvailInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*NodeAvailInfo) ProtoMessage() {} + +func (x *NodeAvailInfo) ProtoReflect() protoreflect.Message { + mi := &file_pb_pcmCore_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use NodeAvailInfo.ProtoReflect.Descriptor instead. +func (*NodeAvailInfo) Descriptor() ([]byte, []int) { + return file_pb_pcmCore_proto_rawDescGZIP(), []int{15} +} + +func (x *NodeAvailInfo) GetId() int64 { + if x != nil { + return x.Id + } + return 0 +} + +func (x *NodeAvailInfo) GetNodeName() string { + if x != nil { + return x.NodeName + } + return "" +} + +func (x *NodeAvailInfo) GetCpuTotal() int32 { + if x != nil { + return x.CpuTotal + } + return 0 +} + +func (x *NodeAvailInfo) GetCpuUsable() float64 { + if x != nil { + return x.CpuUsable + } + return 0 +} + +func (x *NodeAvailInfo) GetDiskTotal() int32 { + if x != nil { + return x.DiskTotal + } + return 0 +} + +func (x *NodeAvailInfo) GetDiskAvail() int32 { + if x != nil { + return x.DiskAvail + } + return 0 +} + +func (x *NodeAvailInfo) GetMemTotal() int32 { + if x != nil { + return x.MemTotal + } + return 0 +} + +func (x *NodeAvailInfo) GetMemAvail() int32 { + if x != nil { + return x.MemAvail + } + return 0 +} + +func (x *NodeAvailInfo) GetGpuTotal() int32 { + if x != nil { + return x.GpuTotal + } + return 0 +} + +func (x *NodeAvailInfo) GetGpuAvail() int32 { + if x != nil { + return x.GpuAvail + } + return 0 +} + +func (x *NodeAvailInfo) GetParticipantAvailId() int64 { + if x != nil { + return x.ParticipantAvailId + } + return 0 +} + +type ParticipantResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Code int64 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg,omitempty"` +} + +func (x *ParticipantResp) Reset() { + *x = ParticipantResp{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_pcmCore_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ParticipantResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ParticipantResp) ProtoMessage() {} + +func (x *ParticipantResp) ProtoReflect() protoreflect.Message { + mi := &file_pb_pcmCore_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ParticipantResp.ProtoReflect.Descriptor instead. +func (*ParticipantResp) Descriptor() ([]byte, []int) { + return file_pb_pcmCore_proto_rawDescGZIP(), []int{16} +} + +func (x *ParticipantResp) GetCode() int64 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ParticipantResp) GetMsg() string { + if x != nil { + return x.Msg + } + return "" +} + +var File_pb_pcmCore_proto protoreflect.FileDescriptor + +var file_pb_pcmCore_proto_rawDesc = []byte{ + 0x0a, 0x10, 0x70, 0x62, 0x2f, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x12, 0x07, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x22, 0xe6, 0x01, 0x0a, 0x0b, + 0x53, 0x79, 0x6e, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x70, + 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x32, 0x0a, 0x0b, 0x48, 0x70, 0x63, 0x49, 0x6e, 0x66, 0x6f, + 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x63, 0x6d, + 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x48, 0x70, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x48, 0x70, + 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0d, 0x43, 0x6c, 0x6f, + 0x75, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x4c, + 0x69, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x0a, 0x41, 0x69, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, + 0x74, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, + 0x65, 0x2e, 0x41, 0x69, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x41, 0x69, 0x49, 0x6e, 0x66, 0x6f, + 0x4c, 0x69, 0x73, 0x74, 0x22, 0xbf, 0x03, 0x0a, 0x06, 0x41, 0x69, 0x49, 0x6e, 0x66, 0x6f, 0x12, + 0x24, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, + 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x1d, 0x0a, + 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, + 0x67, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x75, 0x6e, + 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, + 0x12, 0x14, 0x0a, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, + 0x72, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, + 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x08, + 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x49, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x66, 0x6c, 0x61, 0x76, 0x6f, 0x72, 0x49, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x75, 0x62, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0e, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x12, 0x24, 0x0a, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, + 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x69, 0x74, 0x65, 0x6d, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xbb, 0x02, 0x0a, 0x09, 0x43, 0x6c, 0x6f, 0x75, 0x64, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, + 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, + 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, + 0x6e, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, + 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x75, + 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0b, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, + 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x79, 0x61, 0x6d, 0x6c, 0x53, 0x74, 0x72, 0x69, + 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x79, 0x61, 0x6d, 0x6c, 0x53, 0x74, + 0x72, 0x69, 0x6e, 0x67, 0x22, 0xad, 0x04, 0x0a, 0x07, 0x48, 0x70, 0x63, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, + 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x14, + 0x0a, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, + 0x6f, 0x62, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x6f, 0x72, 0x6b, + 0x44, 0x69, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x77, 0x6f, 0x72, 0x6b, 0x44, + 0x69, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x61, 0x6c, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x61, 0x6c, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, + 0x0a, 0x09, 0x63, 0x6d, 0x64, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x6d, 0x64, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x1c, 0x0a, 0x09, + 0x64, 0x65, 0x72, 0x69, 0x76, 0x65, 0x64, 0x45, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x64, 0x65, 0x72, 0x69, 0x76, 0x65, 0x64, 0x45, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, + 0x75, 0x73, 0x74, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6c, 0x75, + 0x73, 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x64, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1a, + 0x0a, 0x08, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x43, 0x70, 0x75, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x43, 0x70, 0x75, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, + 0x0a, 0x08, 0x65, 0x78, 0x69, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x65, 0x78, 0x69, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, + 0x73, 0x6f, 0x63, 0x49, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, + 0x6f, 0x63, 0x49, 0x64, 0x22, 0x34, 0x0a, 0x0c, 0x53, 0x79, 0x6e, 0x63, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x47, 0x0a, 0x0b, 0x49, 0x6e, + 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x24, 0x0a, + 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6a, - 0x6f, 0x62, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, - 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, - 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x72, - 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0b, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, - 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x69, 0x72, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x69, 0x72, 0x12, - 0x1a, 0x0a, 0x08, 0x77, 0x61, 0x6c, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x77, 0x61, 0x6c, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, - 0x6d, 0x64, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x63, 0x6d, 0x64, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x72, - 0x69, 0x76, 0x65, 0x64, 0x45, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x65, - 0x72, 0x69, 0x76, 0x65, 0x64, 0x45, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, - 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, - 0x72, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x64, 0x18, 0x0e, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, - 0x6c, 0x6c, 0x6f, 0x63, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x61, - 0x6c, 0x6c, 0x6f, 0x63, 0x43, 0x70, 0x75, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x61, - 0x6c, 0x6c, 0x6f, 0x63, 0x43, 0x70, 0x75, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x65, - 0x78, 0x69, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x65, - 0x78, 0x69, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x73, 0x73, 0x6f, 0x63, - 0x49, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x49, - 0x64, 0x22, 0x34, 0x0a, 0x0c, 0x53, 0x79, 0x6e, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, + 0x74, 0x49, 0x64, 0x22, 0xad, 0x01, 0x0a, 0x0c, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x32, 0x0a, 0x0b, 0x48, 0x70, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x4c, + 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x63, 0x6d, 0x43, + 0x6f, 0x72, 0x65, 0x2e, 0x48, 0x70, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x48, 0x70, 0x63, + 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0d, 0x43, 0x6c, 0x6f, 0x75, + 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x12, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x0d, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, + 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x0a, 0x41, 0x69, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, + 0x2e, 0x41, 0x69, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x41, 0x69, 0x49, 0x6e, 0x66, 0x6f, 0x4c, + 0x69, 0x73, 0x74, 0x22, 0x33, 0x0a, 0x11, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, + 0x6e, 0x74, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x65, 0x6e, 0x61, + 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x65, + 0x6e, 0x61, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x4a, 0x0a, 0x10, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x22, 0x75, 0x0a, 0x0f, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3c, 0x0a, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, + 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x60, 0x0a, 0x12, 0x50, + 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x50, 0x68, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x47, 0x0a, 0x0b, 0x49, 0x6e, 0x66, 0x6f, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, - 0x22, 0xad, 0x01, 0x0a, 0x0c, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x32, 0x0a, 0x0b, 0x48, 0x70, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, - 0x2e, 0x48, 0x70, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x48, 0x70, 0x63, 0x49, 0x6e, 0x66, - 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x38, 0x0a, 0x0d, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x49, 0x6e, - 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, - 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x0d, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, - 0x2f, 0x0a, 0x0a, 0x41, 0x69, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x41, 0x69, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x41, 0x69, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, - 0x22, 0x33, 0x0a, 0x11, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x54, - 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x65, 0x6e, 0x61, 0x6e, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x4a, 0x0a, 0x10, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, - 0x70, 0x61, 0x6e, 0x74, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x22, 0x75, 0x0a, 0x0f, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x3c, 0x0a, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x70, 0x63, - 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x52, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x60, 0x0a, 0x12, 0x50, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x50, 0x68, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, - 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x63, 0x6f, - 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x6d, 0x73, 0x67, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, - 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x70, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x9e, 0x04, 0x0a, 0x11, 0x50, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x50, 0x68, 0x79, 0x52, 0x65, 0x71, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x20, 0x0a, 0x0b, - 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2a, - 0x0a, 0x10, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, - 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, - 0x12, 0x2c, 0x0a, 0x11, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, - 0x53, 0x70, 0x61, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x53, 0x70, 0x61, 0x63, 0x65, 0x12, 0x2a, - 0x0a, 0x10, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, - 0x74, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, - 0x0a, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x65, - 0x6e, 0x61, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x08, 0x6e, 0x6f, - 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, - 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x68, 0x79, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x24, 0x0a, 0x0d, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x0e, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x37, 0x0a, 0x09, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x18, - 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, - 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4c, 0x61, 0x62, 0x65, 0x6c, - 0x52, 0x09, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xc3, 0x01, 0x0a, 0x0b, - 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x68, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6e, - 0x6f, 0x64, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e, - 0x6f, 0x64, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x73, 0x4e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x1c, 0x0a, 0x09, 0x6f, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x6f, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, - 0x08, 0x61, 0x72, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x61, 0x72, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x63, - 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x63, - 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x63, 0x68, 0x46, 0x72, 0x65, - 0x71, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x63, 0x68, 0x46, 0x72, 0x65, - 0x71, 0x22, 0x67, 0x0a, 0x17, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x2a, 0x33, 0x0a, 0x0d, 0x4d, 0x65, + 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, + 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x9e, 0x04, + 0x0a, 0x11, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x50, 0x68, 0x79, + 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, + 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, + 0x20, 0x0a, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x6e, 0x64, + 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6e, 0x65, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x20, 0x0a, + 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x22, 0x0a, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x70, + 0x61, 0x63, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x76, + 0x61, 0x69, 0x6c, 0x53, 0x70, 0x61, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, + 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x53, 0x70, 0x61, 0x63, + 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x42, 0x61, 0x6e, 0x64, + 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x6f, + 0x72, 0x61, 0x67, 0x65, 0x42, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x12, 0x0a, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, + 0x0a, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, + 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x14, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x68, + 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, + 0x24, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, + 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, + 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x37, 0x0a, 0x09, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x49, 0x6e, + 0x66, 0x6f, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, + 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4c, 0x61, + 0x62, 0x65, 0x6c, 0x52, 0x09, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xc3, + 0x01, 0x0a, 0x0b, 0x4e, 0x6f, 0x64, 0x65, 0x50, 0x68, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, + 0x0a, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x73, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x73, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x61, 0x72, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x61, 0x72, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x63, 0x68, + 0x46, 0x72, 0x65, 0x71, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x63, 0x68, + 0x46, 0x72, 0x65, 0x71, 0x22, 0x67, 0x0a, 0x17, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, + 0x61, 0x6e, 0x74, 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x52, 0x65, 0x71, 0x12, + 0x24, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, + 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x22, 0x9d, 0x02, + 0x0a, 0x13, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x76, 0x61, + 0x69, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x53, 0x74, + 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x11, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x53, 0x70, + 0x61, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x75, 0x6d, 0x12, 0x24, 0x0a, + 0x0d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, + 0x4e, 0x75, 0x6d, 0x12, 0x24, 0x0a, 0x0d, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x4a, 0x6f, + 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x72, 0x75, 0x6e, 0x6e, + 0x69, 0x6e, 0x67, 0x4a, 0x6f, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x3c, 0x0a, 0x0d, 0x6e, 0x6f, 0x64, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x49, 0x6e, 0x66, 0x6f, + 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, + 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0d, + 0x6e, 0x6f, 0x64, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xd1, 0x02, + 0x0a, 0x0d, 0x4e, 0x6f, 0x64, 0x65, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x1a, 0x0a, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, + 0x70, 0x75, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, + 0x70, 0x75, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x70, 0x75, 0x55, 0x73, + 0x61, 0x62, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x09, 0x63, 0x70, 0x75, 0x55, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x54, 0x6f, 0x74, + 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x54, 0x6f, + 0x74, 0x61, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x41, 0x76, 0x61, 0x69, 0x6c, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x41, 0x76, 0x61, 0x69, + 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x6d, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x6d, 0x65, 0x6d, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x1a, 0x0a, + 0x08, 0x6d, 0x65, 0x6d, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x6d, 0x65, 0x6d, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x70, 0x75, + 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x70, 0x75, + 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x67, 0x70, 0x75, 0x41, 0x76, 0x61, 0x69, + 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x67, 0x70, 0x75, 0x41, 0x76, 0x61, 0x69, + 0x6c, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, + 0x41, 0x76, 0x61, 0x69, 0x6c, 0x49, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x70, + 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x49, + 0x64, 0x22, 0x37, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x2a, 0x33, 0x0a, 0x0d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x08, 0x0a, 0x04, 0x46, 0x41, 0x49, 0x4c, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x02, 0x32, @@ -1570,7 +1892,7 @@ var file_pcmCore_proto_rawDesc = []byte{ 0x65, 0x73, 0x70, 0x12, 0x37, 0x0a, 0x08, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x14, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, - 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x32, 0xb7, 0x01, 0x0a, + 0x49, 0x6e, 0x66, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x32, 0x84, 0x02, 0x0a, 0x12, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x50, 0x0a, 0x13, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x1a, 0x2e, 0x70, 0x63, 0x6d, @@ -1582,25 +1904,30 @@ var file_pcmCore_proto_rawDesc = []byte{ 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x2e, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x43, 0x68, 0x65, 0x63, 0x6b, - 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x42, 0x0a, 0x5a, 0x08, 0x2f, 0x70, 0x63, 0x6d, 0x43, 0x6f, - 0x72, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x0f, 0x72, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x1c, 0x2e, 0x70, 0x63, 0x6d, 0x43, + 0x6f, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, + 0x76, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, + 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x22, 0x00, 0x42, 0x0a, 0x5a, 0x08, 0x2f, 0x70, 0x63, 0x6d, 0x43, 0x6f, 0x72, 0x65, 0x62, + 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( - file_pcmCore_proto_rawDescOnce sync.Once - file_pcmCore_proto_rawDescData = file_pcmCore_proto_rawDesc + file_pb_pcmCore_proto_rawDescOnce sync.Once + file_pb_pcmCore_proto_rawDescData = file_pb_pcmCore_proto_rawDesc ) -func file_pcmCore_proto_rawDescGZIP() []byte { - file_pcmCore_proto_rawDescOnce.Do(func() { - file_pcmCore_proto_rawDescData = protoimpl.X.CompressGZIP(file_pcmCore_proto_rawDescData) +func file_pb_pcmCore_proto_rawDescGZIP() []byte { + file_pb_pcmCore_proto_rawDescOnce.Do(func() { + file_pb_pcmCore_proto_rawDescData = protoimpl.X.CompressGZIP(file_pb_pcmCore_proto_rawDescData) }) - return file_pcmCore_proto_rawDescData + return file_pb_pcmCore_proto_rawDescData } -var file_pcmCore_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_pcmCore_proto_msgTypes = make([]protoimpl.MessageInfo, 14) -var file_pcmCore_proto_goTypes = []interface{}{ +var file_pb_pcmCore_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_pb_pcmCore_proto_msgTypes = make([]protoimpl.MessageInfo, 17) +var file_pb_pcmCore_proto_goTypes = []interface{}{ (MessageStatus)(0), // 0: pcmCore.MessageStatus (*SyncInfoReq)(nil), // 1: pcmCore.SyncInfoReq (*AiInfo)(nil), // 2: pcmCore.AiInfo @@ -1616,8 +1943,11 @@ var file_pcmCore_proto_goTypes = []interface{}{ (*ParticipantPhyReq)(nil), // 12: pcmCore.ParticipantPhyReq (*NodePhyInfo)(nil), // 13: pcmCore.NodePhyInfo (*ParticipantHeartbeatReq)(nil), // 14: pcmCore.ParticipantHeartbeatReq + (*ParticipantAvailReq)(nil), // 15: pcmCore.ParticipantAvailReq + (*NodeAvailInfo)(nil), // 16: pcmCore.NodeAvailInfo + (*ParticipantResp)(nil), // 17: pcmCore.ParticipantResp } -var file_pcmCore_proto_depIdxs = []int32{ +var file_pb_pcmCore_proto_depIdxs = []int32{ 4, // 0: pcmCore.SyncInfoReq.HpcInfoList:type_name -> pcmCore.HpcInfo 3, // 1: pcmCore.SyncInfoReq.CloudInfoList:type_name -> pcmCore.CloudInfo 2, // 2: pcmCore.SyncInfoReq.AiInfoList:type_name -> pcmCore.AiInfo @@ -1627,28 +1957,31 @@ var file_pcmCore_proto_depIdxs = []int32{ 0, // 6: pcmCore.HealthCheckResp.messageStatus:type_name -> pcmCore.MessageStatus 13, // 7: pcmCore.ParticipantPhyReq.nodeInfo:type_name -> pcmCore.NodePhyInfo 9, // 8: pcmCore.ParticipantPhyReq.labelInfo:type_name -> pcmCore.ParticipantLabel - 1, // 9: pcmCore.pcmCore.SyncInfo:input_type -> pcmCore.SyncInfoReq - 6, // 10: pcmCore.pcmCore.InfoList:input_type -> pcmCore.InfoListReq - 12, // 11: pcmCore.participantService.registerParticipant:input_type -> pcmCore.ParticipantPhyReq - 14, // 12: pcmCore.participantService.reportHeartbeat:input_type -> pcmCore.ParticipantHeartbeatReq - 5, // 13: pcmCore.pcmCore.SyncInfo:output_type -> pcmCore.SyncInfoResp - 7, // 14: pcmCore.pcmCore.InfoList:output_type -> pcmCore.InfoListResp - 11, // 15: pcmCore.participantService.registerParticipant:output_type -> pcmCore.ParticipantPhyResp - 10, // 16: pcmCore.participantService.reportHeartbeat:output_type -> pcmCore.HealthCheckResp - 13, // [13:17] is the sub-list for method output_type - 9, // [9:13] is the sub-list for method input_type - 9, // [9:9] is the sub-list for extension type_name - 9, // [9:9] is the sub-list for extension extendee - 0, // [0:9] is the sub-list for field type_name + 16, // 9: pcmCore.ParticipantAvailReq.nodeAvailInfo:type_name -> pcmCore.NodeAvailInfo + 1, // 10: pcmCore.pcmCore.SyncInfo:input_type -> pcmCore.SyncInfoReq + 6, // 11: pcmCore.pcmCore.InfoList:input_type -> pcmCore.InfoListReq + 12, // 12: pcmCore.participantService.registerParticipant:input_type -> pcmCore.ParticipantPhyReq + 14, // 13: pcmCore.participantService.reportHeartbeat:input_type -> pcmCore.ParticipantHeartbeatReq + 15, // 14: pcmCore.participantService.reportAvailable:input_type -> pcmCore.ParticipantAvailReq + 5, // 15: pcmCore.pcmCore.SyncInfo:output_type -> pcmCore.SyncInfoResp + 7, // 16: pcmCore.pcmCore.InfoList:output_type -> pcmCore.InfoListResp + 11, // 17: pcmCore.participantService.registerParticipant:output_type -> pcmCore.ParticipantPhyResp + 10, // 18: pcmCore.participantService.reportHeartbeat:output_type -> pcmCore.HealthCheckResp + 17, // 19: pcmCore.participantService.reportAvailable:output_type -> pcmCore.ParticipantResp + 15, // [15:20] is the sub-list for method output_type + 10, // [10:15] is the sub-list for method input_type + 10, // [10:10] is the sub-list for extension type_name + 10, // [10:10] is the sub-list for extension extendee + 0, // [0:10] is the sub-list for field type_name } -func init() { file_pcmCore_proto_init() } -func file_pcmCore_proto_init() { - if File_pcmCore_proto != nil { +func init() { file_pb_pcmCore_proto_init() } +func file_pb_pcmCore_proto_init() { + if File_pb_pcmCore_proto != nil { return } if !protoimpl.UnsafeEnabled { - file_pcmCore_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SyncInfoReq); i { case 0: return &v.state @@ -1660,7 +1993,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*AiInfo); i { case 0: return &v.state @@ -1672,7 +2005,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CloudInfo); i { case 0: return &v.state @@ -1684,7 +2017,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HpcInfo); i { case 0: return &v.state @@ -1696,7 +2029,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SyncInfoResp); i { case 0: return &v.state @@ -1708,7 +2041,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*InfoListReq); i { case 0: return &v.state @@ -1720,7 +2053,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*InfoListResp); i { case 0: return &v.state @@ -1732,7 +2065,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ParticipantTenant); i { case 0: return &v.state @@ -1744,7 +2077,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ParticipantLabel); i { case 0: return &v.state @@ -1756,7 +2089,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*HealthCheckResp); i { case 0: return &v.state @@ -1768,7 +2101,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ParticipantPhyResp); i { case 0: return &v.state @@ -1780,7 +2113,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ParticipantPhyReq); i { case 0: return &v.state @@ -1792,7 +2125,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NodePhyInfo); i { case 0: return &v.state @@ -1804,7 +2137,7 @@ func file_pcmCore_proto_init() { return nil } } - file_pcmCore_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + file_pb_pcmCore_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ParticipantHeartbeatReq); i { case 0: return &v.state @@ -1816,24 +2149,60 @@ func file_pcmCore_proto_init() { return nil } } + file_pb_pcmCore_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ParticipantAvailReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_pcmCore_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*NodeAvailInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_pcmCore_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ParticipantResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_pcmCore_proto_rawDesc, + RawDescriptor: file_pb_pcmCore_proto_rawDesc, NumEnums: 1, - NumMessages: 14, + NumMessages: 17, NumExtensions: 0, NumServices: 2, }, - GoTypes: file_pcmCore_proto_goTypes, - DependencyIndexes: file_pcmCore_proto_depIdxs, - EnumInfos: file_pcmCore_proto_enumTypes, - MessageInfos: file_pcmCore_proto_msgTypes, + GoTypes: file_pb_pcmCore_proto_goTypes, + DependencyIndexes: file_pb_pcmCore_proto_depIdxs, + EnumInfos: file_pb_pcmCore_proto_enumTypes, + MessageInfos: file_pb_pcmCore_proto_msgTypes, }.Build() - File_pcmCore_proto = out.File - file_pcmCore_proto_rawDesc = nil - file_pcmCore_proto_goTypes = nil - file_pcmCore_proto_depIdxs = nil + File_pb_pcmCore_proto = out.File + file_pb_pcmCore_proto_rawDesc = nil + file_pb_pcmCore_proto_goTypes = nil + file_pb_pcmCore_proto_depIdxs = nil } diff --git a/rpc/pcmCore/pcmCore_grpc.pb.go b/rpc/pcmCore/pcmCore_grpc.pb.go index c5521a0a..39d14a0f 100644 --- a/rpc/pcmCore/pcmCore_grpc.pb.go +++ b/rpc/pcmCore/pcmCore_grpc.pb.go @@ -1,8 +1,8 @@ // Code generated by protoc-gen-go-grpc. DO NOT EDIT. // versions: // - protoc-gen-go-grpc v1.3.0 -// - protoc v3.19.4 -// source: pcmCore.proto +// - protoc v4.23.4 +// source: pb/pcmCore.proto package pcmCore @@ -27,9 +27,9 @@ const ( // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. type PcmCoreClient interface { - //SyncInfo Synchronous data information + // SyncInfo Synchronous data information SyncInfo(ctx context.Context, in *SyncInfoReq, opts ...grpc.CallOption) (*SyncInfoResp, error) - //InfoList + // InfoList InfoList(ctx context.Context, in *InfoListReq, opts ...grpc.CallOption) (*InfoListResp, error) } @@ -63,9 +63,9 @@ func (c *pcmCoreClient) InfoList(ctx context.Context, in *InfoListReq, opts ...g // All implementations must embed UnimplementedPcmCoreServer // for forward compatibility type PcmCoreServer interface { - //SyncInfo Synchronous data information + // SyncInfo Synchronous data information SyncInfo(context.Context, *SyncInfoReq) (*SyncInfoResp, error) - //InfoList + // InfoList InfoList(context.Context, *InfoListReq) (*InfoListResp, error) mustEmbedUnimplementedPcmCoreServer() } @@ -146,12 +146,13 @@ var PcmCore_ServiceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "pcmCore.proto", + Metadata: "pb/pcmCore.proto", } const ( ParticipantService_RegisterParticipant_FullMethodName = "/pcmCore.participantService/registerParticipant" ParticipantService_ReportHeartbeat_FullMethodName = "/pcmCore.participantService/reportHeartbeat" + ParticipantService_ReportAvailable_FullMethodName = "/pcmCore.participantService/reportAvailable" ) // ParticipantServiceClient is the client API for ParticipantService service. @@ -160,8 +161,10 @@ const ( type ParticipantServiceClient interface { // registerParticipant Participant注册接口 RegisterParticipant(ctx context.Context, in *ParticipantPhyReq, opts ...grpc.CallOption) (*ParticipantPhyResp, error) - //心跳 + // reportHeartbeat 心跳请求 ReportHeartbeat(ctx context.Context, in *ParticipantHeartbeatReq, opts ...grpc.CallOption) (*HealthCheckResp, error) + // reportAvailable 监控数据上报 + ReportAvailable(ctx context.Context, in *ParticipantAvailReq, opts ...grpc.CallOption) (*ParticipantResp, error) } type participantServiceClient struct { @@ -190,14 +193,25 @@ func (c *participantServiceClient) ReportHeartbeat(ctx context.Context, in *Part return out, nil } +func (c *participantServiceClient) ReportAvailable(ctx context.Context, in *ParticipantAvailReq, opts ...grpc.CallOption) (*ParticipantResp, error) { + out := new(ParticipantResp) + err := c.cc.Invoke(ctx, ParticipantService_ReportAvailable_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // ParticipantServiceServer is the server API for ParticipantService service. // All implementations must embed UnimplementedParticipantServiceServer // for forward compatibility type ParticipantServiceServer interface { // registerParticipant Participant注册接口 RegisterParticipant(context.Context, *ParticipantPhyReq) (*ParticipantPhyResp, error) - //心跳 + // reportHeartbeat 心跳请求 ReportHeartbeat(context.Context, *ParticipantHeartbeatReq) (*HealthCheckResp, error) + // reportAvailable 监控数据上报 + ReportAvailable(context.Context, *ParticipantAvailReq) (*ParticipantResp, error) mustEmbedUnimplementedParticipantServiceServer() } @@ -211,6 +225,9 @@ func (UnimplementedParticipantServiceServer) RegisterParticipant(context.Context func (UnimplementedParticipantServiceServer) ReportHeartbeat(context.Context, *ParticipantHeartbeatReq) (*HealthCheckResp, error) { return nil, status.Errorf(codes.Unimplemented, "method ReportHeartbeat not implemented") } +func (UnimplementedParticipantServiceServer) ReportAvailable(context.Context, *ParticipantAvailReq) (*ParticipantResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReportAvailable not implemented") +} func (UnimplementedParticipantServiceServer) mustEmbedUnimplementedParticipantServiceServer() {} // UnsafeParticipantServiceServer may be embedded to opt out of forward compatibility for this service. @@ -260,6 +277,24 @@ func _ParticipantService_ReportHeartbeat_Handler(srv interface{}, ctx context.Co return interceptor(ctx, in, info, handler) } +func _ParticipantService_ReportAvailable_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ParticipantAvailReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ParticipantServiceServer).ReportAvailable(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ParticipantService_ReportAvailable_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ParticipantServiceServer).ReportAvailable(ctx, req.(*ParticipantAvailReq)) + } + return interceptor(ctx, in, info, handler) +} + // ParticipantService_ServiceDesc is the grpc.ServiceDesc for ParticipantService service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -275,7 +310,11 @@ var ParticipantService_ServiceDesc = grpc.ServiceDesc{ MethodName: "reportHeartbeat", Handler: _ParticipantService_ReportHeartbeat_Handler, }, + { + MethodName: "reportAvailable", + Handler: _ParticipantService_ReportAvailable_Handler, + }, }, Streams: []grpc.StreamDesc{}, - Metadata: "pcmCore.proto", + Metadata: "pb/pcmCore.proto", }