blob: afb285533b753297567d0c38bf9cdaf00cac1bf5 [file] [log] [blame]
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Code generated by make build. DO NOT EDIT
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.26.0
// protoc v3.16.0
// source: incubator-yunikorn-scheduler-interface/si.proto
package si
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
descriptorpb "google.golang.org/protobuf/types/descriptorpb"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
type TerminationType int32
const (
TerminationType_STOPPED_BY_RM TerminationType = 0 // Stopped or killed by ResourceManager (created by RM)
TerminationType_TIMEOUT TerminationType = 1 // Timed out based on the executionTimeoutMilliSeconds (created by core)
TerminationType_PREEMPTED_BY_SCHEDULER TerminationType = 2 // Preempted allocation by scheduler (created by core)
TerminationType_PLACEHOLDER_REPLACED TerminationType = 3 // Placeholder allocation replaced by real allocation (created by core)
)
// Enum value maps for TerminationType.
var (
TerminationType_name = map[int32]string{
0: "STOPPED_BY_RM",
1: "TIMEOUT",
2: "PREEMPTED_BY_SCHEDULER",
3: "PLACEHOLDER_REPLACED",
}
TerminationType_value = map[string]int32{
"STOPPED_BY_RM": 0,
"TIMEOUT": 1,
"PREEMPTED_BY_SCHEDULER": 2,
"PLACEHOLDER_REPLACED": 3,
}
)
func (x TerminationType) Enum() *TerminationType {
p := new(TerminationType)
*p = x
return p
}
func (x TerminationType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (TerminationType) Descriptor() protoreflect.EnumDescriptor {
return file_incubator_yunikorn_scheduler_interface_si_proto_enumTypes[0].Descriptor()
}
func (TerminationType) Type() protoreflect.EnumType {
return &file_incubator_yunikorn_scheduler_interface_si_proto_enumTypes[0]
}
func (x TerminationType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use TerminationType.Descriptor instead.
func (TerminationType) EnumDescriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{0}
}
// Scheduler can send action to RM.
type UpdateResponse_ActionFromScheduler int32
const (
// Nothing needs to do
UpdateResponse_NOACTION UpdateResponse_ActionFromScheduler = 0
// Something is wrong, RM needs to stop the RM, and re-register with scheduler.
UpdateResponse_RESYNC UpdateResponse_ActionFromScheduler = 1
)
// Enum value maps for UpdateResponse_ActionFromScheduler.
var (
UpdateResponse_ActionFromScheduler_name = map[int32]string{
0: "NOACTION",
1: "RESYNC",
}
UpdateResponse_ActionFromScheduler_value = map[string]int32{
"NOACTION": 0,
"RESYNC": 1,
}
)
func (x UpdateResponse_ActionFromScheduler) Enum() *UpdateResponse_ActionFromScheduler {
p := new(UpdateResponse_ActionFromScheduler)
*p = x
return p
}
func (x UpdateResponse_ActionFromScheduler) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (UpdateResponse_ActionFromScheduler) Descriptor() protoreflect.EnumDescriptor {
return file_incubator_yunikorn_scheduler_interface_si_proto_enumTypes[1].Descriptor()
}
func (UpdateResponse_ActionFromScheduler) Type() protoreflect.EnumType {
return &file_incubator_yunikorn_scheduler_interface_si_proto_enumTypes[1]
}
func (x UpdateResponse_ActionFromScheduler) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use UpdateResponse_ActionFromScheduler.Descriptor instead.
func (UpdateResponse_ActionFromScheduler) EnumDescriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{3, 0}
}
// Action from RM
type UpdateNodeInfo_ActionFromRM int32
const (
// Update node resources, attributes.
UpdateNodeInfo_UPDATE UpdateNodeInfo_ActionFromRM = 0
// Do not allocate new allocations on the node.
UpdateNodeInfo_DRAIN_NODE UpdateNodeInfo_ActionFromRM = 1
// Decomission node, it will immediately stop allocations on the node and
// remove the node from schedulable lists.
UpdateNodeInfo_DECOMISSION UpdateNodeInfo_ActionFromRM = 2
// From Draining state to SCHEDULABLE state.
// If node is not in draining state, error will be thrown
UpdateNodeInfo_DRAIN_TO_SCHEDULABLE UpdateNodeInfo_ActionFromRM = 3
)
// Enum value maps for UpdateNodeInfo_ActionFromRM.
var (
UpdateNodeInfo_ActionFromRM_name = map[int32]string{
0: "UPDATE",
1: "DRAIN_NODE",
2: "DECOMISSION",
3: "DRAIN_TO_SCHEDULABLE",
}
UpdateNodeInfo_ActionFromRM_value = map[string]int32{
"UPDATE": 0,
"DRAIN_NODE": 1,
"DECOMISSION": 2,
"DRAIN_TO_SCHEDULABLE": 3,
}
)
func (x UpdateNodeInfo_ActionFromRM) Enum() *UpdateNodeInfo_ActionFromRM {
p := new(UpdateNodeInfo_ActionFromRM)
*p = x
return p
}
func (x UpdateNodeInfo_ActionFromRM) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (UpdateNodeInfo_ActionFromRM) Descriptor() protoreflect.EnumDescriptor {
return file_incubator_yunikorn_scheduler_interface_si_proto_enumTypes[2].Descriptor()
}
func (UpdateNodeInfo_ActionFromRM) Type() protoreflect.EnumType {
return &file_incubator_yunikorn_scheduler_interface_si_proto_enumTypes[2]
}
func (x UpdateNodeInfo_ActionFromRM) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use UpdateNodeInfo_ActionFromRM.Descriptor instead.
func (UpdateNodeInfo_ActionFromRM) EnumDescriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{21, 0}
}
// container scheduling states
type UpdateContainerSchedulingStateRequest_SchedulingState int32
const (
// the container is being skipped by the scheduler
UpdateContainerSchedulingStateRequest_SKIPPED UpdateContainerSchedulingStateRequest_SchedulingState = 0
// the container is scheduled and it has been assigned to a node
UpdateContainerSchedulingStateRequest_SCHEDULED UpdateContainerSchedulingStateRequest_SchedulingState = 1
// the container is reserved on some node, but not yet assigned
UpdateContainerSchedulingStateRequest_RESERVED UpdateContainerSchedulingStateRequest_SchedulingState = 2
// scheduler has visited all candidate nodes for this container
// but non of them could satisfy this container's requirement
UpdateContainerSchedulingStateRequest_FAILED UpdateContainerSchedulingStateRequest_SchedulingState = 3
)
// Enum value maps for UpdateContainerSchedulingStateRequest_SchedulingState.
var (
UpdateContainerSchedulingStateRequest_SchedulingState_name = map[int32]string{
0: "SKIPPED",
1: "SCHEDULED",
2: "RESERVED",
3: "FAILED",
}
UpdateContainerSchedulingStateRequest_SchedulingState_value = map[string]int32{
"SKIPPED": 0,
"SCHEDULED": 1,
"RESERVED": 2,
"FAILED": 3,
}
)
func (x UpdateContainerSchedulingStateRequest_SchedulingState) Enum() *UpdateContainerSchedulingStateRequest_SchedulingState {
p := new(UpdateContainerSchedulingStateRequest_SchedulingState)
*p = x
return p
}
func (x UpdateContainerSchedulingStateRequest_SchedulingState) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (UpdateContainerSchedulingStateRequest_SchedulingState) Descriptor() protoreflect.EnumDescriptor {
return file_incubator_yunikorn_scheduler_interface_si_proto_enumTypes[3].Descriptor()
}
func (UpdateContainerSchedulingStateRequest_SchedulingState) Type() protoreflect.EnumType {
return &file_incubator_yunikorn_scheduler_interface_si_proto_enumTypes[3]
}
func (x UpdateContainerSchedulingStateRequest_SchedulingState) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use UpdateContainerSchedulingStateRequest_SchedulingState.Descriptor instead.
func (UpdateContainerSchedulingStateRequest_SchedulingState) EnumDescriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{27, 0}
}
type EventRecord_Type int32
const (
EventRecord_REQUEST EventRecord_Type = 0
EventRecord_APP EventRecord_Type = 1
EventRecord_NODE EventRecord_Type = 2
EventRecord_QUEUE EventRecord_Type = 3
)
// Enum value maps for EventRecord_Type.
var (
EventRecord_Type_name = map[int32]string{
0: "REQUEST",
1: "APP",
2: "NODE",
3: "QUEUE",
}
EventRecord_Type_value = map[string]int32{
"REQUEST": 0,
"APP": 1,
"NODE": 2,
"QUEUE": 3,
}
)
func (x EventRecord_Type) Enum() *EventRecord_Type {
p := new(EventRecord_Type)
*p = x
return p
}
func (x EventRecord_Type) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (EventRecord_Type) Descriptor() protoreflect.EnumDescriptor {
return file_incubator_yunikorn_scheduler_interface_si_proto_enumTypes[4].Descriptor()
}
func (EventRecord_Type) Type() protoreflect.EnumType {
return &file_incubator_yunikorn_scheduler_interface_si_proto_enumTypes[4]
}
func (x EventRecord_Type) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use EventRecord_Type.Descriptor instead.
func (EventRecord_Type) EnumDescriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{30, 0}
}
//
//service MetricsService {
//}
type RegisterResourceManagerRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// An ID which can uniquely identify a RM **cluster**. (For example, if a RM cluster has multiple manager instances for HA purpose, they should use the same information when do registration).
// If RM register with the same ID, all previous scheduling state in memory will be cleaned up, and expect RM report full scheduling state after registration.
RmID string `protobuf:"bytes,1,opt,name=rmID,proto3" json:"rmID,omitempty"`
// Version of RM scheduler interface client.
Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
// Policy group name:
// This defines which policy to use. Policy should be statically configured. (Think about network security group concept of ec2).
// Different RMs can refer to the same policyGroup if their static configuration is identical.
PolicyGroup string `protobuf:"bytes,3,opt,name=policyGroup,proto3" json:"policyGroup,omitempty"`
}
func (x *RegisterResourceManagerRequest) Reset() {
*x = RegisterResourceManagerRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RegisterResourceManagerRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RegisterResourceManagerRequest) ProtoMessage() {}
func (x *RegisterResourceManagerRequest) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[0]
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 RegisterResourceManagerRequest.ProtoReflect.Descriptor instead.
func (*RegisterResourceManagerRequest) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{0}
}
func (x *RegisterResourceManagerRequest) GetRmID() string {
if x != nil {
return x.RmID
}
return ""
}
func (x *RegisterResourceManagerRequest) GetVersion() string {
if x != nil {
return x.Version
}
return ""
}
func (x *RegisterResourceManagerRequest) GetPolicyGroup() string {
if x != nil {
return x.PolicyGroup
}
return ""
}
// Upon success, scheduler returns RegisterResourceManagerResponse to RM, otherwise RM receives exception.
type RegisterResourceManagerResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *RegisterResourceManagerResponse) Reset() {
*x = RegisterResourceManagerResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RegisterResourceManagerResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RegisterResourceManagerResponse) ProtoMessage() {}
func (x *RegisterResourceManagerResponse) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[1]
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 RegisterResourceManagerResponse.ProtoReflect.Descriptor instead.
func (*RegisterResourceManagerResponse) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{1}
}
type UpdateRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// New allocation requests or replace existing allocation request (if allocationID is same)
Asks []*AllocationAsk `protobuf:"bytes,1,rep,name=asks,proto3" json:"asks,omitempty"`
// Allocations can be released.
Releases *AllocationReleasesRequest `protobuf:"bytes,2,opt,name=releases,proto3" json:"releases,omitempty"`
// New node can be scheduled. If a node is notified to be "unscheduable", it needs to be part of this field as well.
NewSchedulableNodes []*NewNodeInfo `protobuf:"bytes,3,rep,name=newSchedulableNodes,proto3" json:"newSchedulableNodes,omitempty"`
// Update nodes for existing schedulable nodes.
// May include:
// - Node resource changes. (Like grows/shrinks node resource)
// - Node attribute changes. (Including node-partition concept like YARN, and concept like "local images".
//
// Should not include:
// - Allocation-related changes with the node.
// - Realtime Utilizations.
UpdatedNodes []*UpdateNodeInfo `protobuf:"bytes,4,rep,name=updatedNodes,proto3" json:"updatedNodes,omitempty"`
// ID of RM, this will be used to identify which RM of the request comes from.
RmID string `protobuf:"bytes,5,opt,name=rmID,proto3" json:"rmID,omitempty"`
// RM should explicitly add application when allocation request also explictly belongs to application.
// This is optional if allocation request doesn't belong to a application. (Independent allocation)
NewApplications []*AddApplicationRequest `protobuf:"bytes,6,rep,name=newApplications,proto3" json:"newApplications,omitempty"`
// RM can also remove applications, all allocation/allocation requests associated with the application will be removed
RemoveApplications []*RemoveApplicationRequest `protobuf:"bytes,7,rep,name=removeApplications,proto3" json:"removeApplications,omitempty"`
}
func (x *UpdateRequest) Reset() {
*x = UpdateRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateRequest) ProtoMessage() {}
func (x *UpdateRequest) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[2]
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 UpdateRequest.ProtoReflect.Descriptor instead.
func (*UpdateRequest) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{2}
}
func (x *UpdateRequest) GetAsks() []*AllocationAsk {
if x != nil {
return x.Asks
}
return nil
}
func (x *UpdateRequest) GetReleases() *AllocationReleasesRequest {
if x != nil {
return x.Releases
}
return nil
}
func (x *UpdateRequest) GetNewSchedulableNodes() []*NewNodeInfo {
if x != nil {
return x.NewSchedulableNodes
}
return nil
}
func (x *UpdateRequest) GetUpdatedNodes() []*UpdateNodeInfo {
if x != nil {
return x.UpdatedNodes
}
return nil
}
func (x *UpdateRequest) GetRmID() string {
if x != nil {
return x.RmID
}
return ""
}
func (x *UpdateRequest) GetNewApplications() []*AddApplicationRequest {
if x != nil {
return x.NewApplications
}
return nil
}
func (x *UpdateRequest) GetRemoveApplications() []*RemoveApplicationRequest {
if x != nil {
return x.RemoveApplications
}
return nil
}
type UpdateResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// What RM needs to do, scheduler can send control code to RM when something goes wrong.
// Don't use/expand this field for other general purposed actions. (Like kill a remote container process).
Action UpdateResponse_ActionFromScheduler `protobuf:"varint,1,opt,name=action,proto3,enum=si.v1.UpdateResponse_ActionFromScheduler" json:"action,omitempty"`
// New allocations
NewAllocations []*Allocation `protobuf:"bytes,2,rep,name=newAllocations,proto3" json:"newAllocations,omitempty"`
// Released allocations, this could be either ack from scheduler when RM asks to terminate some allocations.
// Or it could be decision made by scheduler (such as preemption or timeout).
ReleasedAllocations []*AllocationRelease `protobuf:"bytes,3,rep,name=releasedAllocations,proto3" json:"releasedAllocations,omitempty"`
// Released allocation asks(placeholder), when the placeholder allocation times out
ReleasedAllocationAsks []*AllocationAskRelease `protobuf:"bytes,4,rep,name=releasedAllocationAsks,proto3" json:"releasedAllocationAsks,omitempty"`
// Rejected allocation requests
RejectedAllocations []*RejectedAllocationAsk `protobuf:"bytes,5,rep,name=rejectedAllocations,proto3" json:"rejectedAllocations,omitempty"`
// Rejected Applications
RejectedApplications []*RejectedApplication `protobuf:"bytes,6,rep,name=rejectedApplications,proto3" json:"rejectedApplications,omitempty"`
// Accepted Applications
AcceptedApplications []*AcceptedApplication `protobuf:"bytes,7,rep,name=acceptedApplications,proto3" json:"acceptedApplications,omitempty"`
// Updated Applications
UpdatedApplications []*UpdatedApplication `protobuf:"bytes,8,rep,name=updatedApplications,proto3" json:"updatedApplications,omitempty"`
// Rejected Node Registrations
RejectedNodes []*RejectedNode `protobuf:"bytes,9,rep,name=rejectedNodes,proto3" json:"rejectedNodes,omitempty"`
// Accepted Node Registrations
AcceptedNodes []*AcceptedNode `protobuf:"bytes,10,rep,name=acceptedNodes,proto3" json:"acceptedNodes,omitempty"`
}
func (x *UpdateResponse) Reset() {
*x = UpdateResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateResponse) ProtoMessage() {}
func (x *UpdateResponse) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[3]
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 UpdateResponse.ProtoReflect.Descriptor instead.
func (*UpdateResponse) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{3}
}
func (x *UpdateResponse) GetAction() UpdateResponse_ActionFromScheduler {
if x != nil {
return x.Action
}
return UpdateResponse_NOACTION
}
func (x *UpdateResponse) GetNewAllocations() []*Allocation {
if x != nil {
return x.NewAllocations
}
return nil
}
func (x *UpdateResponse) GetReleasedAllocations() []*AllocationRelease {
if x != nil {
return x.ReleasedAllocations
}
return nil
}
func (x *UpdateResponse) GetReleasedAllocationAsks() []*AllocationAskRelease {
if x != nil {
return x.ReleasedAllocationAsks
}
return nil
}
func (x *UpdateResponse) GetRejectedAllocations() []*RejectedAllocationAsk {
if x != nil {
return x.RejectedAllocations
}
return nil
}
func (x *UpdateResponse) GetRejectedApplications() []*RejectedApplication {
if x != nil {
return x.RejectedApplications
}
return nil
}
func (x *UpdateResponse) GetAcceptedApplications() []*AcceptedApplication {
if x != nil {
return x.AcceptedApplications
}
return nil
}
func (x *UpdateResponse) GetUpdatedApplications() []*UpdatedApplication {
if x != nil {
return x.UpdatedApplications
}
return nil
}
func (x *UpdateResponse) GetRejectedNodes() []*RejectedNode {
if x != nil {
return x.RejectedNodes
}
return nil
}
func (x *UpdateResponse) GetAcceptedNodes() []*AcceptedNode {
if x != nil {
return x.AcceptedNodes
}
return nil
}
type UpdatedApplication struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The application ID that was updated
ApplicationID string `protobuf:"bytes,1,opt,name=applicationID,proto3" json:"applicationID,omitempty"`
// State of the application
State string `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
// Timestamp of the state transition
StateTransitionTimestamp int64 `protobuf:"varint,3,opt,name=stateTransitionTimestamp,proto3" json:"stateTransitionTimestamp,omitempty"`
// Detailed message
Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"`
}
func (x *UpdatedApplication) Reset() {
*x = UpdatedApplication{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdatedApplication) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdatedApplication) ProtoMessage() {}
func (x *UpdatedApplication) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[4]
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 UpdatedApplication.ProtoReflect.Descriptor instead.
func (*UpdatedApplication) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{4}
}
func (x *UpdatedApplication) GetApplicationID() string {
if x != nil {
return x.ApplicationID
}
return ""
}
func (x *UpdatedApplication) GetState() string {
if x != nil {
return x.State
}
return ""
}
func (x *UpdatedApplication) GetStateTransitionTimestamp() int64 {
if x != nil {
return x.StateTransitionTimestamp
}
return 0
}
func (x *UpdatedApplication) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
type RejectedApplication struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The application ID that was rejected
ApplicationID string `protobuf:"bytes,1,opt,name=applicationID,proto3" json:"applicationID,omitempty"`
// A human-readable reason message
Reason string `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason,omitempty"`
}
func (x *RejectedApplication) Reset() {
*x = RejectedApplication{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RejectedApplication) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RejectedApplication) ProtoMessage() {}
func (x *RejectedApplication) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[5]
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 RejectedApplication.ProtoReflect.Descriptor instead.
func (*RejectedApplication) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{5}
}
func (x *RejectedApplication) GetApplicationID() string {
if x != nil {
return x.ApplicationID
}
return ""
}
func (x *RejectedApplication) GetReason() string {
if x != nil {
return x.Reason
}
return ""
}
type AcceptedApplication struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The application ID that was accepted
ApplicationID string `protobuf:"bytes,1,opt,name=applicationID,proto3" json:"applicationID,omitempty"`
}
func (x *AcceptedApplication) Reset() {
*x = AcceptedApplication{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AcceptedApplication) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AcceptedApplication) ProtoMessage() {}
func (x *AcceptedApplication) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[6]
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 AcceptedApplication.ProtoReflect.Descriptor instead.
func (*AcceptedApplication) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{6}
}
func (x *AcceptedApplication) GetApplicationID() string {
if x != nil {
return x.ApplicationID
}
return ""
}
type RejectedNode struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The node ID that was rejected
NodeID string `protobuf:"bytes,1,opt,name=nodeID,proto3" json:"nodeID,omitempty"`
// A human-readable reason message
Reason string `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason,omitempty"`
}
func (x *RejectedNode) Reset() {
*x = RejectedNode{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RejectedNode) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RejectedNode) ProtoMessage() {}
func (x *RejectedNode) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[7]
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 RejectedNode.ProtoReflect.Descriptor instead.
func (*RejectedNode) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{7}
}
func (x *RejectedNode) GetNodeID() string {
if x != nil {
return x.NodeID
}
return ""
}
func (x *RejectedNode) GetReason() string {
if x != nil {
return x.Reason
}
return ""
}
type AcceptedNode struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The node ID that was accepted
NodeID string `protobuf:"bytes,1,opt,name=nodeID,proto3" json:"nodeID,omitempty"`
}
func (x *AcceptedNode) Reset() {
*x = AcceptedNode{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AcceptedNode) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AcceptedNode) ProtoMessage() {}
func (x *AcceptedNode) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[8]
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 AcceptedNode.ProtoReflect.Descriptor instead.
func (*AcceptedNode) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{8}
}
func (x *AcceptedNode) GetNodeID() string {
if x != nil {
return x.NodeID
}
return ""
}
type Priority struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to Priority:
// *Priority_PriorityValue
// *Priority_PriorityClassName
Priority isPriority_Priority `protobuf_oneof:"priority"`
}
func (x *Priority) Reset() {
*x = Priority{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Priority) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Priority) ProtoMessage() {}
func (x *Priority) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[9]
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 Priority.ProtoReflect.Descriptor instead.
func (*Priority) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{9}
}
func (m *Priority) GetPriority() isPriority_Priority {
if m != nil {
return m.Priority
}
return nil
}
func (x *Priority) GetPriorityValue() int32 {
if x, ok := x.GetPriority().(*Priority_PriorityValue); ok {
return x.PriorityValue
}
return 0
}
func (x *Priority) GetPriorityClassName() string {
if x, ok := x.GetPriority().(*Priority_PriorityClassName); ok {
return x.PriorityClassName
}
return ""
}
type isPriority_Priority interface {
isPriority_Priority()
}
type Priority_PriorityValue struct {
// Priority of each ask, higher is more important.
// How to deal with Priority is handled by each scheduler implementation.
PriorityValue int32 `protobuf:"varint,1,opt,name=priorityValue,proto3,oneof"`
}
type Priority_PriorityClassName struct {
// PriorityClass is used for app owners to set named priorities. This is a portable way for
// app owners have a consistent way to setup priority across clusters
PriorityClassName string `protobuf:"bytes,2,opt,name=priorityClassName,proto3,oneof"`
}
func (*Priority_PriorityValue) isPriority_Priority() {}
func (*Priority_PriorityClassName) isPriority_Priority() {}
// A sparse map of resource to Quantity.
type Resource struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Resources map[string]*Quantity `protobuf:"bytes,1,rep,name=resources,proto3" json:"resources,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}
func (x *Resource) Reset() {
*x = Resource{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Resource) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Resource) ProtoMessage() {}
func (x *Resource) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[10]
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 Resource.ProtoReflect.Descriptor instead.
func (*Resource) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{10}
}
func (x *Resource) GetResources() map[string]*Quantity {
if x != nil {
return x.Resources
}
return nil
}
// Quantity includes a single int64 value
type Quantity struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Value int64 `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"`
}
func (x *Quantity) Reset() {
*x = Quantity{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Quantity) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Quantity) ProtoMessage() {}
func (x *Quantity) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[11]
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 Quantity.ProtoReflect.Descriptor instead.
func (*Quantity) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{11}
}
func (x *Quantity) GetValue() int64 {
if x != nil {
return x.Value
}
return 0
}
type AllocationAsk struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Allocation key is used by both of scheduler and RM to track allocations.
// It doesn't have to be same as RM's internal allocation id (such as Pod name of K8s or ContainerID of YARN).
// Allocations from the same AllocationAsk which are returned to the RM at the same time will have the same allocationKey.
// The request is considered an update of the existing AllocationAsk if an ALlocationAsk with the same allocationKey
// already exists.
AllocationKey string `protobuf:"bytes,1,opt,name=allocationKey,proto3" json:"allocationKey,omitempty"`
// The application ID this allocation ask belongs to
ApplicationID string `protobuf:"bytes,2,opt,name=applicationID,proto3" json:"applicationID,omitempty"`
// The partition the application belongs to
PartitionName string `protobuf:"bytes,3,opt,name=partitionName,proto3" json:"partitionName,omitempty"`
// The amount of resources per ask
ResourceAsk *Resource `protobuf:"bytes,4,opt,name=resourceAsk,proto3" json:"resourceAsk,omitempty"`
// Maximum number of allocations
MaxAllocations int32 `protobuf:"varint,5,opt,name=maxAllocations,proto3" json:"maxAllocations,omitempty"`
// Priority of ask
Priority *Priority `protobuf:"bytes,6,opt,name=priority,proto3" json:"priority,omitempty"`
// Execution timeout: How long this allocation will be terminated (by scheduler)
// once allocated by scheduler, 0 or negative value means never expire.
ExecutionTimeoutMilliSeconds int64 `protobuf:"varint,7,opt,name=executionTimeoutMilliSeconds,proto3" json:"executionTimeoutMilliSeconds,omitempty"`
// A set of tags for this spscific AllocationAsk. Allocation level tags are used in placing this specific
// ask on nodes in the cluster. These tags are used in the PlacementConstraints.
// These tags are optional.
Tags map[string]string `protobuf:"bytes,8,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// The name of the TaskGroup this ask belongs to
TaskGroupName string `protobuf:"bytes,9,opt,name=taskGroupName,proto3" json:"taskGroupName,omitempty"`
// Is this a placeholder ask (true) or a real ask (false), defaults to false
// ignored if the taskGroupName is not set
Placeholder bool `protobuf:"varint,10,opt,name=placeholder,proto3" json:"placeholder,omitempty"`
}
func (x *AllocationAsk) Reset() {
*x = AllocationAsk{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AllocationAsk) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AllocationAsk) ProtoMessage() {}
func (x *AllocationAsk) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[12]
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 AllocationAsk.ProtoReflect.Descriptor instead.
func (*AllocationAsk) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{12}
}
func (x *AllocationAsk) GetAllocationKey() string {
if x != nil {
return x.AllocationKey
}
return ""
}
func (x *AllocationAsk) GetApplicationID() string {
if x != nil {
return x.ApplicationID
}
return ""
}
func (x *AllocationAsk) GetPartitionName() string {
if x != nil {
return x.PartitionName
}
return ""
}
func (x *AllocationAsk) GetResourceAsk() *Resource {
if x != nil {
return x.ResourceAsk
}
return nil
}
func (x *AllocationAsk) GetMaxAllocations() int32 {
if x != nil {
return x.MaxAllocations
}
return 0
}
func (x *AllocationAsk) GetPriority() *Priority {
if x != nil {
return x.Priority
}
return nil
}
func (x *AllocationAsk) GetExecutionTimeoutMilliSeconds() int64 {
if x != nil {
return x.ExecutionTimeoutMilliSeconds
}
return 0
}
func (x *AllocationAsk) GetTags() map[string]string {
if x != nil {
return x.Tags
}
return nil
}
func (x *AllocationAsk) GetTaskGroupName() string {
if x != nil {
return x.TaskGroupName
}
return ""
}
func (x *AllocationAsk) GetPlaceholder() bool {
if x != nil {
return x.Placeholder
}
return false
}
type AddApplicationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The ID of the application, must be unique
ApplicationID string `protobuf:"bytes,1,opt,name=applicationID,proto3" json:"applicationID,omitempty"`
// The queue this application is requesting. The scheduler will place the application into a
// queue according to policy, taking into account the requested queue as per the policy.
QueueName string `protobuf:"bytes,2,opt,name=queueName,proto3" json:"queueName,omitempty"`
// The partition the application belongs to
PartitionName string `protobuf:"bytes,3,opt,name=partitionName,proto3" json:"partitionName,omitempty"`
// The user group information of the application owner
Ugi *UserGroupInformation `protobuf:"bytes,4,opt,name=ugi,proto3" json:"ugi,omitempty"`
// A set of tags for the application. These tags provide application level generic inforamtion.
// The tags are optional and are used in placing an appliction or scheduling.
// Application tags are not considered when processing AllocationAsks.
Tags map[string]string `protobuf:"bytes,5,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Execution timeout: How long this application can be in a running state
// 0 or negative value means never expire.
ExecutionTimeoutMilliSeconds int64 `protobuf:"varint,6,opt,name=executionTimeoutMilliSeconds,proto3" json:"executionTimeoutMilliSeconds,omitempty"`
// The total amount of resources gang placeholders will request
PlaceholderAsk *Resource `protobuf:"bytes,7,opt,name=placeholderAsk,proto3" json:"placeholderAsk,omitempty"`
// Gang scheduling style can be hard (the application will fail after placeholder timeout)
// or soft (after the timeout the application will be scheduled as a normal application)
GangSchedulingStyle string `protobuf:"bytes,8,opt,name=gangSchedulingStyle,proto3" json:"gangSchedulingStyle,omitempty"`
}
func (x *AddApplicationRequest) Reset() {
*x = AddApplicationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AddApplicationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AddApplicationRequest) ProtoMessage() {}
func (x *AddApplicationRequest) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[13]
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 AddApplicationRequest.ProtoReflect.Descriptor instead.
func (*AddApplicationRequest) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{13}
}
func (x *AddApplicationRequest) GetApplicationID() string {
if x != nil {
return x.ApplicationID
}
return ""
}
func (x *AddApplicationRequest) GetQueueName() string {
if x != nil {
return x.QueueName
}
return ""
}
func (x *AddApplicationRequest) GetPartitionName() string {
if x != nil {
return x.PartitionName
}
return ""
}
func (x *AddApplicationRequest) GetUgi() *UserGroupInformation {
if x != nil {
return x.Ugi
}
return nil
}
func (x *AddApplicationRequest) GetTags() map[string]string {
if x != nil {
return x.Tags
}
return nil
}
func (x *AddApplicationRequest) GetExecutionTimeoutMilliSeconds() int64 {
if x != nil {
return x.ExecutionTimeoutMilliSeconds
}
return 0
}
func (x *AddApplicationRequest) GetPlaceholderAsk() *Resource {
if x != nil {
return x.PlaceholderAsk
}
return nil
}
func (x *AddApplicationRequest) GetGangSchedulingStyle() string {
if x != nil {
return x.GangSchedulingStyle
}
return ""
}
type RemoveApplicationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The ID of the application to remove
ApplicationID string `protobuf:"bytes,1,opt,name=applicationID,proto3" json:"applicationID,omitempty"`
// The partition the application belongs to
PartitionName string `protobuf:"bytes,2,opt,name=partitionName,proto3" json:"partitionName,omitempty"`
}
func (x *RemoveApplicationRequest) Reset() {
*x = RemoveApplicationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RemoveApplicationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RemoveApplicationRequest) ProtoMessage() {}
func (x *RemoveApplicationRequest) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_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 RemoveApplicationRequest.ProtoReflect.Descriptor instead.
func (*RemoveApplicationRequest) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{14}
}
func (x *RemoveApplicationRequest) GetApplicationID() string {
if x != nil {
return x.ApplicationID
}
return ""
}
func (x *RemoveApplicationRequest) GetPartitionName() string {
if x != nil {
return x.PartitionName
}
return ""
}
type UserGroupInformation struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// the user name
User string `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"`
// the list of groups of the user, can be empty
Groups []string `protobuf:"bytes,2,rep,name=groups,proto3" json:"groups,omitempty"`
}
func (x *UserGroupInformation) Reset() {
*x = UserGroupInformation{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UserGroupInformation) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UserGroupInformation) ProtoMessage() {}
func (x *UserGroupInformation) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_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 UserGroupInformation.ProtoReflect.Descriptor instead.
func (*UserGroupInformation) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{15}
}
func (x *UserGroupInformation) GetUser() string {
if x != nil {
return x.User
}
return ""
}
func (x *UserGroupInformation) GetGroups() []string {
if x != nil {
return x.Groups
}
return nil
}
type Allocation struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// AllocationKey from AllocationAsk
AllocationKey string `protobuf:"bytes,1,opt,name=allocationKey,proto3" json:"allocationKey,omitempty"`
// Allocation tags from AllocationAsk
AllocationTags map[string]string `protobuf:"bytes,2,rep,name=allocationTags,proto3" json:"allocationTags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// UUID of the allocation
UUID string `protobuf:"bytes,3,opt,name=UUID,proto3" json:"UUID,omitempty"`
// Resource for each allocation
ResourcePerAlloc *Resource `protobuf:"bytes,5,opt,name=resourcePerAlloc,proto3" json:"resourcePerAlloc,omitempty"`
// Priority of ask
Priority *Priority `protobuf:"bytes,6,opt,name=priority,proto3" json:"priority,omitempty"`
// Queue which the allocation belongs to
QueueName string `protobuf:"bytes,7,opt,name=queueName,proto3" json:"queueName,omitempty"`
// Node which the allocation belongs to
NodeID string `protobuf:"bytes,8,opt,name=nodeID,proto3" json:"nodeID,omitempty"`
// The ID of the application
ApplicationID string `protobuf:"bytes,9,opt,name=applicationID,proto3" json:"applicationID,omitempty"`
// Partition of the allocation
PartitionName string `protobuf:"bytes,10,opt,name=partitionName,proto3" json:"partitionName,omitempty"`
// The name of the TaskGroup this allocation belongs to
TaskGroupName string `protobuf:"bytes,11,opt,name=taskGroupName,proto3" json:"taskGroupName,omitempty"`
// Is this a placeholder allocation (true) or a real allocation (false), defaults to false
// ignored if the taskGroupName is not set
Placeholder bool `protobuf:"varint,12,opt,name=placeholder,proto3" json:"placeholder,omitempty"`
}
func (x *Allocation) Reset() {
*x = Allocation{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Allocation) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Allocation) ProtoMessage() {}
func (x *Allocation) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_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 Allocation.ProtoReflect.Descriptor instead.
func (*Allocation) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{16}
}
func (x *Allocation) GetAllocationKey() string {
if x != nil {
return x.AllocationKey
}
return ""
}
func (x *Allocation) GetAllocationTags() map[string]string {
if x != nil {
return x.AllocationTags
}
return nil
}
func (x *Allocation) GetUUID() string {
if x != nil {
return x.UUID
}
return ""
}
func (x *Allocation) GetResourcePerAlloc() *Resource {
if x != nil {
return x.ResourcePerAlloc
}
return nil
}
func (x *Allocation) GetPriority() *Priority {
if x != nil {
return x.Priority
}
return nil
}
func (x *Allocation) GetQueueName() string {
if x != nil {
return x.QueueName
}
return ""
}
func (x *Allocation) GetNodeID() string {
if x != nil {
return x.NodeID
}
return ""
}
func (x *Allocation) GetApplicationID() string {
if x != nil {
return x.ApplicationID
}
return ""
}
func (x *Allocation) GetPartitionName() string {
if x != nil {
return x.PartitionName
}
return ""
}
func (x *Allocation) GetTaskGroupName() string {
if x != nil {
return x.TaskGroupName
}
return ""
}
func (x *Allocation) GetPlaceholder() bool {
if x != nil {
return x.Placeholder
}
return false
}
type AllocationReleasesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The allocations to release
AllocationsToRelease []*AllocationRelease `protobuf:"bytes,1,rep,name=allocationsToRelease,proto3" json:"allocationsToRelease,omitempty"`
// The asks to release
AllocationAsksToRelease []*AllocationAskRelease `protobuf:"bytes,2,rep,name=allocationAsksToRelease,proto3" json:"allocationAsksToRelease,omitempty"`
}
func (x *AllocationReleasesRequest) Reset() {
*x = AllocationReleasesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AllocationReleasesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AllocationReleasesRequest) ProtoMessage() {}
func (x *AllocationReleasesRequest) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[17]
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 AllocationReleasesRequest.ProtoReflect.Descriptor instead.
func (*AllocationReleasesRequest) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{17}
}
func (x *AllocationReleasesRequest) GetAllocationsToRelease() []*AllocationRelease {
if x != nil {
return x.AllocationsToRelease
}
return nil
}
func (x *AllocationReleasesRequest) GetAllocationAsksToRelease() []*AllocationAskRelease {
if x != nil {
return x.AllocationAsksToRelease
}
return nil
}
// Release allocation: this is a bidirectional message. The Terminationtype defines the origin, or creator,
// as per the comment. The confirmation or response from the receiver is the same message with the same
// termination type set.
type AllocationRelease struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The name of the partition the allocation belongs to
PartitionName string `protobuf:"bytes,1,opt,name=partitionName,proto3" json:"partitionName,omitempty"`
// The application the allocation belongs to
ApplicationID string `protobuf:"bytes,2,opt,name=applicationID,proto3" json:"applicationID,omitempty"`
// The UUID of the allocation to release, if not set all allocations are released for
// the applicationID
UUID string `protobuf:"bytes,3,opt,name=UUID,proto3" json:"UUID,omitempty"`
// Termination type of the released allocation
TerminationType TerminationType `protobuf:"varint,4,opt,name=terminationType,proto3,enum=si.v1.TerminationType" json:"terminationType,omitempty"`
// human-readable message
Message string `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
}
func (x *AllocationRelease) Reset() {
*x = AllocationRelease{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AllocationRelease) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AllocationRelease) ProtoMessage() {}
func (x *AllocationRelease) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[18]
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 AllocationRelease.ProtoReflect.Descriptor instead.
func (*AllocationRelease) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{18}
}
func (x *AllocationRelease) GetPartitionName() string {
if x != nil {
return x.PartitionName
}
return ""
}
func (x *AllocationRelease) GetApplicationID() string {
if x != nil {
return x.ApplicationID
}
return ""
}
func (x *AllocationRelease) GetUUID() string {
if x != nil {
return x.UUID
}
return ""
}
func (x *AllocationRelease) GetTerminationType() TerminationType {
if x != nil {
return x.TerminationType
}
return TerminationType_STOPPED_BY_RM
}
func (x *AllocationRelease) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
// Release ask
type AllocationAskRelease struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Which partition to release the ask from, required.
PartitionName string `protobuf:"bytes,1,opt,name=partitionName,proto3" json:"partitionName,omitempty"`
// optional, when this is set, filter allocation key by application id.
// when application id is set and allocationKey is not set, release all allocations key under the application id.
ApplicationID string `protobuf:"bytes,2,opt,name=applicationID,proto3" json:"applicationID,omitempty"`
// optional, when this is set, only release allocation ask by specified
Allocationkey string `protobuf:"bytes,3,opt,name=allocationkey,proto3" json:"allocationkey,omitempty"`
// Termination type of the released allocation ask
TerminationType TerminationType `protobuf:"varint,4,opt,name=terminationType,proto3,enum=si.v1.TerminationType" json:"terminationType,omitempty"`
// For human-readable message
Message string `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
}
func (x *AllocationAskRelease) Reset() {
*x = AllocationAskRelease{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AllocationAskRelease) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AllocationAskRelease) ProtoMessage() {}
func (x *AllocationAskRelease) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[19]
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 AllocationAskRelease.ProtoReflect.Descriptor instead.
func (*AllocationAskRelease) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{19}
}
func (x *AllocationAskRelease) GetPartitionName() string {
if x != nil {
return x.PartitionName
}
return ""
}
func (x *AllocationAskRelease) GetApplicationID() string {
if x != nil {
return x.ApplicationID
}
return ""
}
func (x *AllocationAskRelease) GetAllocationkey() string {
if x != nil {
return x.Allocationkey
}
return ""
}
func (x *AllocationAskRelease) GetTerminationType() TerminationType {
if x != nil {
return x.TerminationType
}
return TerminationType_STOPPED_BY_RM
}
func (x *AllocationAskRelease) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
type NewNodeInfo struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// ID of node, must be unique
NodeID string `protobuf:"bytes,1,opt,name=nodeID,proto3" json:"nodeID,omitempty"`
// node attributes
Attributes map[string]string `protobuf:"bytes,2,rep,name=attributes,proto3" json:"attributes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Schedulable Resource
SchedulableResource *Resource `protobuf:"bytes,3,opt,name=schedulableResource,proto3" json:"schedulableResource,omitempty"`
// Occupied Resource
OccupiedResource *Resource `protobuf:"bytes,4,opt,name=occupiedResource,proto3" json:"occupiedResource,omitempty"`
// Allocated resources, this will be added when node registered to RM (recovery)
ExistingAllocations []*Allocation `protobuf:"bytes,5,rep,name=existingAllocations,proto3" json:"existingAllocations,omitempty"`
}
func (x *NewNodeInfo) Reset() {
*x = NewNodeInfo{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *NewNodeInfo) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*NewNodeInfo) ProtoMessage() {}
func (x *NewNodeInfo) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[20]
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 NewNodeInfo.ProtoReflect.Descriptor instead.
func (*NewNodeInfo) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{20}
}
func (x *NewNodeInfo) GetNodeID() string {
if x != nil {
return x.NodeID
}
return ""
}
func (x *NewNodeInfo) GetAttributes() map[string]string {
if x != nil {
return x.Attributes
}
return nil
}
func (x *NewNodeInfo) GetSchedulableResource() *Resource {
if x != nil {
return x.SchedulableResource
}
return nil
}
func (x *NewNodeInfo) GetOccupiedResource() *Resource {
if x != nil {
return x.OccupiedResource
}
return nil
}
func (x *NewNodeInfo) GetExistingAllocations() []*Allocation {
if x != nil {
return x.ExistingAllocations
}
return nil
}
type UpdateNodeInfo struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// ID of node, the node must exist to be updated
NodeID string `protobuf:"bytes,1,opt,name=nodeID,proto3" json:"nodeID,omitempty"`
// New attributes of node, which will replace previously reported attribute.
Attributes map[string]string `protobuf:"bytes,2,rep,name=attributes,proto3" json:"attributes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// new schedulable resource, scheduler may preempt allocations on the
// node or schedule more allocations accordingly.
SchedulableResource *Resource `protobuf:"bytes,3,opt,name=schedulableResource,proto3" json:"schedulableResource,omitempty"`
// when the scheduler is co-exist with some other schedulers, some node
// resources might be occupied (allocated) by other schedulers.
OccupiedResource *Resource `protobuf:"bytes,4,opt,name=occupiedResource,proto3" json:"occupiedResource,omitempty"`
// Action to perform by the scheduler
Action UpdateNodeInfo_ActionFromRM `protobuf:"varint,5,opt,name=action,proto3,enum=si.v1.UpdateNodeInfo_ActionFromRM" json:"action,omitempty"`
}
func (x *UpdateNodeInfo) Reset() {
*x = UpdateNodeInfo{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateNodeInfo) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateNodeInfo) ProtoMessage() {}
func (x *UpdateNodeInfo) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[21]
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 UpdateNodeInfo.ProtoReflect.Descriptor instead.
func (*UpdateNodeInfo) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{21}
}
func (x *UpdateNodeInfo) GetNodeID() string {
if x != nil {
return x.NodeID
}
return ""
}
func (x *UpdateNodeInfo) GetAttributes() map[string]string {
if x != nil {
return x.Attributes
}
return nil
}
func (x *UpdateNodeInfo) GetSchedulableResource() *Resource {
if x != nil {
return x.SchedulableResource
}
return nil
}
func (x *UpdateNodeInfo) GetOccupiedResource() *Resource {
if x != nil {
return x.OccupiedResource
}
return nil
}
func (x *UpdateNodeInfo) GetAction() UpdateNodeInfo_ActionFromRM {
if x != nil {
return x.Action
}
return UpdateNodeInfo_UPDATE
}
type RejectedAllocationAsk struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
AllocationKey string `protobuf:"bytes,1,opt,name=allocationKey,proto3" json:"allocationKey,omitempty"`
// The ID of the application
ApplicationID string `protobuf:"bytes,2,opt,name=applicationID,proto3" json:"applicationID,omitempty"`
// A human-readable reason message
Reason string `protobuf:"bytes,3,opt,name=reason,proto3" json:"reason,omitempty"`
}
func (x *RejectedAllocationAsk) Reset() {
*x = RejectedAllocationAsk{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RejectedAllocationAsk) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RejectedAllocationAsk) ProtoMessage() {}
func (x *RejectedAllocationAsk) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[22]
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 RejectedAllocationAsk.ProtoReflect.Descriptor instead.
func (*RejectedAllocationAsk) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{22}
}
func (x *RejectedAllocationAsk) GetAllocationKey() string {
if x != nil {
return x.AllocationKey
}
return ""
}
func (x *RejectedAllocationAsk) GetApplicationID() string {
if x != nil {
return x.ApplicationID
}
return ""
}
func (x *RejectedAllocationAsk) GetReason() string {
if x != nil {
return x.Reason
}
return ""
}
type PredicatesArgs struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// allocation key identifies a container, the predicates function is going to check
// if this container is eligible to be placed ont to a node.
AllocationKey string `protobuf:"bytes,1,opt,name=allocationKey,proto3" json:"allocationKey,omitempty"`
// the node ID the container is assigned to.
NodeID string `protobuf:"bytes,2,opt,name=nodeID,proto3" json:"nodeID,omitempty"`
// run the predicates for alloactions (true) or reservations (false)
Allocate bool `protobuf:"varint,3,opt,name=allocate,proto3" json:"allocate,omitempty"`
}
func (x *PredicatesArgs) Reset() {
*x = PredicatesArgs{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[23]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PredicatesArgs) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PredicatesArgs) ProtoMessage() {}
func (x *PredicatesArgs) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[23]
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 PredicatesArgs.ProtoReflect.Descriptor instead.
func (*PredicatesArgs) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{23}
}
func (x *PredicatesArgs) GetAllocationKey() string {
if x != nil {
return x.AllocationKey
}
return ""
}
func (x *PredicatesArgs) GetNodeID() string {
if x != nil {
return x.NodeID
}
return ""
}
func (x *PredicatesArgs) GetAllocate() bool {
if x != nil {
return x.Allocate
}
return false
}
type ReSyncSchedulerCacheArgs struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// a list of assumed allocations, this will be sync'd to scheduler cache.
AssumedAllocations []*AssumedAllocation `protobuf:"bytes,1,rep,name=assumedAllocations,proto3" json:"assumedAllocations,omitempty"`
// a list of allocations to forget
ForgetAllocations []*ForgotAllocation `protobuf:"bytes,2,rep,name=forgetAllocations,proto3" json:"forgetAllocations,omitempty"`
}
func (x *ReSyncSchedulerCacheArgs) Reset() {
*x = ReSyncSchedulerCacheArgs{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ReSyncSchedulerCacheArgs) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ReSyncSchedulerCacheArgs) ProtoMessage() {}
func (x *ReSyncSchedulerCacheArgs) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[24]
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 ReSyncSchedulerCacheArgs.ProtoReflect.Descriptor instead.
func (*ReSyncSchedulerCacheArgs) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{24}
}
func (x *ReSyncSchedulerCacheArgs) GetAssumedAllocations() []*AssumedAllocation {
if x != nil {
return x.AssumedAllocations
}
return nil
}
func (x *ReSyncSchedulerCacheArgs) GetForgetAllocations() []*ForgotAllocation {
if x != nil {
return x.ForgetAllocations
}
return nil
}
type AssumedAllocation struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// allocation key used to identify a container.
AllocationKey string `protobuf:"bytes,1,opt,name=allocationKey,proto3" json:"allocationKey,omitempty"`
// the node ID the container is assumed to be allocated to, this info is stored in scheduler cache.
NodeID string `protobuf:"bytes,2,opt,name=nodeID,proto3" json:"nodeID,omitempty"`
}
func (x *AssumedAllocation) Reset() {
*x = AssumedAllocation{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *AssumedAllocation) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*AssumedAllocation) ProtoMessage() {}
func (x *AssumedAllocation) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[25]
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 AssumedAllocation.ProtoReflect.Descriptor instead.
func (*AssumedAllocation) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{25}
}
func (x *AssumedAllocation) GetAllocationKey() string {
if x != nil {
return x.AllocationKey
}
return ""
}
func (x *AssumedAllocation) GetNodeID() string {
if x != nil {
return x.NodeID
}
return ""
}
type ForgotAllocation struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// allocation key used to identify a container.
AllocationKey string `protobuf:"bytes,1,opt,name=allocationKey,proto3" json:"allocationKey,omitempty"`
}
func (x *ForgotAllocation) Reset() {
*x = ForgotAllocation{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ForgotAllocation) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ForgotAllocation) ProtoMessage() {}
func (x *ForgotAllocation) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[26]
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 ForgotAllocation.ProtoReflect.Descriptor instead.
func (*ForgotAllocation) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{26}
}
func (x *ForgotAllocation) GetAllocationKey() string {
if x != nil {
return x.AllocationKey
}
return ""
}
type UpdateContainerSchedulingStateRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// application ID
ApplicartionID string `protobuf:"bytes,1,opt,name=applicartionID,proto3" json:"applicartionID,omitempty"`
// allocation key used to identify a container.
AllocationKey string `protobuf:"bytes,2,opt,name=allocationKey,proto3" json:"allocationKey,omitempty"`
// container scheduling state
State UpdateContainerSchedulingStateRequest_SchedulingState `protobuf:"varint,3,opt,name=state,proto3,enum=si.v1.UpdateContainerSchedulingStateRequest_SchedulingState" json:"state,omitempty"`
// an optional plain message to explain why it is in such state
Reason string `protobuf:"bytes,4,opt,name=reason,proto3" json:"reason,omitempty"`
}
func (x *UpdateContainerSchedulingStateRequest) Reset() {
*x = UpdateContainerSchedulingStateRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateContainerSchedulingStateRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateContainerSchedulingStateRequest) ProtoMessage() {}
func (x *UpdateContainerSchedulingStateRequest) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[27]
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 UpdateContainerSchedulingStateRequest.ProtoReflect.Descriptor instead.
func (*UpdateContainerSchedulingStateRequest) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{27}
}
func (x *UpdateContainerSchedulingStateRequest) GetApplicartionID() string {
if x != nil {
return x.ApplicartionID
}
return ""
}
func (x *UpdateContainerSchedulingStateRequest) GetAllocationKey() string {
if x != nil {
return x.AllocationKey
}
return ""
}
func (x *UpdateContainerSchedulingStateRequest) GetState() UpdateContainerSchedulingStateRequest_SchedulingState {
if x != nil {
return x.State
}
return UpdateContainerSchedulingStateRequest_SKIPPED
}
func (x *UpdateContainerSchedulingStateRequest) GetReason() string {
if x != nil {
return x.Reason
}
return ""
}
type UpdateConfigurationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// New config what needs to be saved
Configs string `protobuf:"bytes,1,opt,name=configs,proto3" json:"configs,omitempty"`
}
func (x *UpdateConfigurationRequest) Reset() {
*x = UpdateConfigurationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateConfigurationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateConfigurationRequest) ProtoMessage() {}
func (x *UpdateConfigurationRequest) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[28]
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 UpdateConfigurationRequest.ProtoReflect.Descriptor instead.
func (*UpdateConfigurationRequest) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{28}
}
func (x *UpdateConfigurationRequest) GetConfigs() string {
if x != nil {
return x.Configs
}
return ""
}
type UpdateConfigurationResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// flag that marks the config update success or failure
Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
// the old configuration what was changed
OldConfig string `protobuf:"bytes,2,opt,name=oldConfig,proto3" json:"oldConfig,omitempty"`
// reason in case of failure
Reason string `protobuf:"bytes,3,opt,name=reason,proto3" json:"reason,omitempty"`
}
func (x *UpdateConfigurationResponse) Reset() {
*x = UpdateConfigurationResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[29]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *UpdateConfigurationResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UpdateConfigurationResponse) ProtoMessage() {}
func (x *UpdateConfigurationResponse) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[29]
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 UpdateConfigurationResponse.ProtoReflect.Descriptor instead.
func (*UpdateConfigurationResponse) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{29}
}
func (x *UpdateConfigurationResponse) GetSuccess() bool {
if x != nil {
return x.Success
}
return false
}
func (x *UpdateConfigurationResponse) GetOldConfig() string {
if x != nil {
return x.OldConfig
}
return ""
}
func (x *UpdateConfigurationResponse) GetReason() string {
if x != nil {
return x.Reason
}
return ""
}
type EventRecord struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// the type of the object associated with the event
Type EventRecord_Type `protobuf:"varint,1,opt,name=type,proto3,enum=si.v1.EventRecord_Type" json:"type,omitempty"`
// ID of the object associated with the event
ObjectID string `protobuf:"bytes,2,opt,name=objectID,proto3" json:"objectID,omitempty"`
// the group this object belongs to
// it specifies the application ID for allocations and the queue for applications
GroupID string `protobuf:"bytes,3,opt,name=groupID,proto3" json:"groupID,omitempty"`
// the reason of this event
Reason string `protobuf:"bytes,4,opt,name=reason,proto3" json:"reason,omitempty"`
// the detailed message as string
Message string `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
// timestamp of the event
TimestampNano int64 `protobuf:"varint,6,opt,name=timestampNano,proto3" json:"timestampNano,omitempty"`
}
func (x *EventRecord) Reset() {
*x = EventRecord{}
if protoimpl.UnsafeEnabled {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[30]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *EventRecord) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*EventRecord) ProtoMessage() {}
func (x *EventRecord) ProtoReflect() protoreflect.Message {
mi := &file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[30]
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 EventRecord.ProtoReflect.Descriptor instead.
func (*EventRecord) Descriptor() ([]byte, []int) {
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP(), []int{30}
}
func (x *EventRecord) GetType() EventRecord_Type {
if x != nil {
return x.Type
}
return EventRecord_REQUEST
}
func (x *EventRecord) GetObjectID() string {
if x != nil {
return x.ObjectID
}
return ""
}
func (x *EventRecord) GetGroupID() string {
if x != nil {
return x.GroupID
}
return ""
}
func (x *EventRecord) GetReason() string {
if x != nil {
return x.Reason
}
return ""
}
func (x *EventRecord) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
func (x *EventRecord) GetTimestampNano() int64 {
if x != nil {
return x.TimestampNano
}
return 0
}
var file_incubator_yunikorn_scheduler_interface_si_proto_extTypes = []protoimpl.ExtensionInfo{
{
ExtendedType: (*descriptorpb.FieldOptions)(nil),
ExtensionType: (*bool)(nil),
Field: 1059,
Name: "si.v1.si_secret",
Tag: "varint,1059,opt,name=si_secret",
Filename: "incubator-yunikorn-scheduler-interface/si.proto",
},
}
// Extension fields to descriptorpb.FieldOptions.
var (
// Indicates that a field MAY contain information that is sensitive
// and MUST be treated as such (e.g. not logged).
//
// optional bool si_secret = 1059;
E_SiSecret = &file_incubator_yunikorn_scheduler_interface_si_proto_extTypes[0]
)
var File_incubator_yunikorn_scheduler_interface_si_proto protoreflect.FileDescriptor
var file_incubator_yunikorn_scheduler_interface_si_proto_rawDesc = []byte{
0x0a, 0x2f, 0x69, 0x6e, 0x63, 0x75, 0x62, 0x61, 0x74, 0x6f, 0x72, 0x2d, 0x79, 0x75, 0x6e, 0x69,
0x6b, 0x6f, 0x72, 0x6e, 0x2d, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x72, 0x2d, 0x69,
0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2f, 0x73, 0x69, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x12, 0x05, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x70, 0x0a, 0x1e, 0x52, 0x65,
0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x61,
0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04,
0x72, 0x6d, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6d, 0x49, 0x44,
0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6f,
0x6c, 0x69, 0x63, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0b, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x21, 0x0a, 0x1f,
0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
0xa5, 0x03, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x28, 0x0a, 0x04, 0x61, 0x73, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x14, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x41, 0x73, 0x6b, 0x52, 0x04, 0x61, 0x73, 0x6b, 0x73, 0x12, 0x3c, 0x0a, 0x08, 0x72,
0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e,
0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52,
0x08, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x12, 0x44, 0x0a, 0x13, 0x6e, 0x65, 0x77,
0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x73,
0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x4e,
0x65, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x13, 0x6e, 0x65, 0x77, 0x53,
0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12,
0x39, 0x0a, 0x0c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x18,
0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70,
0x64, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0c, 0x75, 0x70,
0x64, 0x61, 0x74, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6d,
0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x46,
0x0a, 0x0f, 0x6e, 0x65, 0x77, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x41, 0x64, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0f, 0x6e, 0x65, 0x77, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4f, 0x0a, 0x12, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65,
0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x76,
0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x52, 0x12, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x93, 0x06, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x06, 0x61, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x73, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
0x65, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x63, 0x68, 0x65,
0x64, 0x75, 0x6c, 0x65, 0x72, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a,
0x0e, 0x6e, 0x65, 0x77, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6c,
0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x6e, 0x65, 0x77, 0x41, 0x6c, 0x6c,
0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4a, 0x0a, 0x13, 0x72, 0x65, 0x6c, 0x65,
0x61, 0x73, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6c,
0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52,
0x13, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x12, 0x53, 0x0a, 0x16, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64,
0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x6b, 0x73, 0x18, 0x04,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6c, 0x6c,
0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x6b, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73,
0x65, 0x52, 0x16, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x6f, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x6b, 0x73, 0x12, 0x4e, 0x0a, 0x13, 0x72, 0x65, 0x6a,
0x65, 0x63, 0x74, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52,
0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x41, 0x73, 0x6b, 0x52, 0x13, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x41, 0x6c,
0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4e, 0x0a, 0x14, 0x72, 0x65, 0x6a,
0x65, 0x63, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x52, 0x14, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4e, 0x0a, 0x14, 0x61, 0x63, 0x63,
0x65, 0x70, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e,
0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x52, 0x14, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4b, 0x0a, 0x13, 0x75, 0x70, 0x64,
0x61, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x52, 0x13, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x39, 0x0a, 0x0d, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74,
0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e,
0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x4e, 0x6f,
0x64, 0x65, 0x52, 0x0d, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65,
0x73, 0x12, 0x39, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x4e, 0x6f, 0x64,
0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31,
0x2e, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x0d, 0x61,
0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x2f, 0x0a, 0x13,
0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75,
0x6c, 0x65, 0x72, 0x12, 0x0c, 0x0a, 0x08, 0x4e, 0x4f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10,
0x00, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x53, 0x59, 0x4e, 0x43, 0x10, 0x01, 0x22, 0xa6, 0x01,
0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74,
0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65,
0x12, 0x3a, 0x0a, 0x18, 0x73, 0x74, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74,
0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01,
0x28, 0x03, 0x52, 0x18, 0x73, 0x74, 0x61, 0x74, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74,
0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x18, 0x0a, 0x07,
0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x53, 0x0a, 0x13, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74,
0x65, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a,
0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x3b, 0x0a, 0x13, 0x41,
0x63, 0x63, 0x65, 0x70, 0x74, 0x65, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x22, 0x3e, 0x0a, 0x0c, 0x52, 0x65, 0x6a, 0x65,
0x63, 0x74, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65,
0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x44,
0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x26, 0x0a, 0x0c, 0x41, 0x63, 0x63, 0x65,
0x70, 0x74, 0x65, 0x64, 0x4e, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65,
0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x44,
0x22, 0x6e, 0x0a, 0x08, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x26, 0x0a, 0x0d,
0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0d, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x56,
0x61, 0x6c, 0x75, 0x65, 0x12, 0x2e, 0x0a, 0x11, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79,
0x43, 0x6c, 0x61, 0x73, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48,
0x00, 0x52, 0x11, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x43, 0x6c, 0x61, 0x73, 0x73,
0x4e, 0x61, 0x6d, 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79,
0x22, 0x97, 0x01, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3c, 0x0a,
0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x1e, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x1a, 0x4d, 0x0a, 0x0e, 0x52,
0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
0x25, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f,
0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x20, 0x0a, 0x08, 0x51, 0x75,
0x61, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x82, 0x04, 0x0a,
0x0d, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x6b, 0x12, 0x24,
0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x4b, 0x65, 0x79, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x61,
0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
0x09, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65,
0x12, 0x31, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, 0x73, 0x6b, 0x18,
0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65,
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x41, 0x73, 0x6b, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78,
0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2b, 0x0a, 0x08, 0x70,
0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e,
0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08,
0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x42, 0x0a, 0x1c, 0x65, 0x78, 0x65, 0x63,
0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x4d, 0x69, 0x6c, 0x6c,
0x69, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1c,
0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x32, 0x0a, 0x04,
0x74, 0x61, 0x67, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x73, 0x69, 0x2e,
0x76, 0x31, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x6b,
0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73,
0x12, 0x24, 0x0a, 0x0d, 0x74, 0x61, 0x73, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d,
0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x61, 0x73, 0x6b, 0x47, 0x72, 0x6f,
0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68,
0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x6c, 0x61,
0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x1a, 0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 0x73,
0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
0x01, 0x22, 0xd4, 0x03, 0x0a, 0x15, 0x41, 0x64, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x61,
0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49,
0x44, 0x12, 0x1c, 0x0a, 0x09, 0x71, 0x75, 0x65, 0x75, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x71, 0x75, 0x65, 0x75, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12,
0x24, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65,
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f,
0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x03, 0x75, 0x67, 0x69, 0x18, 0x04, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x47,
0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
0x03, 0x75, 0x67, 0x69, 0x12, 0x3a, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03,
0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x64, 0x64, 0x41, 0x70,
0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
0x2e, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73,
0x12, 0x42, 0x0a, 0x1c, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d,
0x65, 0x6f, 0x75, 0x74, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73,
0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1c, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f,
0x6e, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x4d, 0x69, 0x6c, 0x6c, 0x69, 0x53, 0x65, 0x63,
0x6f, 0x6e, 0x64, 0x73, 0x12, 0x37, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c,
0x64, 0x65, 0x72, 0x41, 0x73, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0e, 0x70,
0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x41, 0x73, 0x6b, 0x12, 0x30, 0x0a,
0x13, 0x67, 0x61, 0x6e, 0x67, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x53,
0x74, 0x79, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x67, 0x61, 0x6e, 0x67,
0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x79, 0x6c, 0x65, 0x1a,
0x37, 0x0a, 0x09, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14,
0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76,
0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x66, 0x0a, 0x18, 0x52, 0x65, 0x6d, 0x6f,
0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70,
0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x61,
0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65,
0x22, 0x42, 0x0a, 0x14, 0x55, 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x6e, 0x66,
0x6f, 0x72, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06,
0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x67, 0x72,
0x6f, 0x75, 0x70, 0x73, 0x22, 0x8c, 0x04, 0x0a, 0x0a, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x12, 0x4d, 0x0a, 0x0e, 0x61, 0x6c, 0x6c,
0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x25, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54,
0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61, 0x67, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x55, 0x55, 0x49, 0x44,
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x55, 0x49, 0x44, 0x12, 0x3b, 0x0a, 0x10,
0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x65, 0x72, 0x41, 0x6c, 0x6c, 0x6f, 0x63,
0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52,
0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x10, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x50, 0x65, 0x72, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x12, 0x2b, 0x0a, 0x08, 0x70, 0x72, 0x69,
0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x70, 0x72,
0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x71, 0x75, 0x65, 0x75, 0x65, 0x4e,
0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x71, 0x75, 0x65, 0x75, 0x65,
0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x44, 0x18, 0x08,
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d,
0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x09, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4e,
0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69,
0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x74, 0x61, 0x73, 0x6b,
0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52,
0x0d, 0x74, 0x61, 0x73, 0x6b, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20,
0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72, 0x18, 0x0c, 0x20,
0x01, 0x28, 0x08, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x68, 0x6f, 0x6c, 0x64, 0x65, 0x72,
0x1a, 0x41, 0x0a, 0x13, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x61,
0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
0x02, 0x38, 0x01, 0x22, 0xc0, 0x01, 0x0a, 0x19, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x4c, 0x0a, 0x14, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x54, 0x6f, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x18, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x14, 0x61, 0x6c, 0x6c, 0x6f, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x54, 0x6f, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x12,
0x55, 0x0a, 0x17, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x6b,
0x73, 0x54, 0x6f, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x1b, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x41, 0x73, 0x6b, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x52, 0x17, 0x61,
0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x6b, 0x73, 0x54, 0x6f, 0x52,
0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x22, 0xcf, 0x01, 0x0a, 0x11, 0x41, 0x6c, 0x6c, 0x6f, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x0d,
0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61,
0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x55, 0x55, 0x49, 0x44,
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x55, 0x49, 0x44, 0x12, 0x40, 0x0a, 0x0f,
0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18,
0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65,
0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0f, 0x74,
0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18,
0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xe4, 0x01, 0x0a, 0x14, 0x41, 0x6c, 0x6c,
0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x6b, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73,
0x65, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61,
0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74,
0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x24, 0x0a,
0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x6b, 0x65, 0x79, 0x18, 0x03,
0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x6b, 0x65, 0x79, 0x12, 0x40, 0x0a, 0x0f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x73,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x54, 0x79, 0x70, 0x65, 0x52, 0x0f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22,
0xed, 0x02, 0x0a, 0x0b, 0x4e, 0x65, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12,
0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x44, 0x12, 0x42, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69,
0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x73, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x65, 0x77, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e,
0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52,
0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x41, 0x0a, 0x13, 0x73,
0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31,
0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x13, 0x73, 0x63, 0x68, 0x65, 0x64,
0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3b,
0x0a, 0x10, 0x6f, 0x63, 0x63, 0x75, 0x70, 0x69, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31,
0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x10, 0x6f, 0x63, 0x63, 0x75, 0x70,
0x69, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x43, 0x0a, 0x13, 0x65,
0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31,
0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x65, 0x78, 0x69,
0x73, 0x74, 0x69, 0x6e, 0x67, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x1a, 0x3d, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e,
0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
0xc1, 0x03, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e,
0x66, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x44, 0x12, 0x45, 0x0a, 0x0a, 0x61, 0x74,
0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25,
0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x64,
0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73,
0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65,
0x73, 0x12, 0x41, 0x0a, 0x13, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65,
0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f,
0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52,
0x13, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x12, 0x3b, 0x0a, 0x10, 0x6f, 0x63, 0x63, 0x75, 0x70, 0x69, 0x65, 0x64,
0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f,
0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52,
0x10, 0x6f, 0x63, 0x63, 0x75, 0x70, 0x69, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
0x65, 0x12, 0x3a, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28,
0x0e, 0x32, 0x22, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46,
0x72, 0x6f, 0x6d, 0x52, 0x4d, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x3d, 0x0a,
0x0f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b,
0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x55, 0x0a, 0x0c,
0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x4d, 0x12, 0x0a, 0x0a, 0x06,
0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x52, 0x41, 0x49,
0x4e, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x45, 0x43, 0x4f,
0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x52, 0x41,
0x49, 0x4e, 0x5f, 0x54, 0x4f, 0x5f, 0x53, 0x43, 0x48, 0x45, 0x44, 0x55, 0x4c, 0x41, 0x42, 0x4c,
0x45, 0x10, 0x03, 0x22, 0x7b, 0x0a, 0x15, 0x52, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x41,
0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x73, 0x6b, 0x12, 0x24, 0x0a, 0x0d,
0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b,
0x65, 0x79, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73,
0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e,
0x22, 0x6a, 0x0a, 0x0e, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x41, 0x72,
0x67, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65,
0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x44,
0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01,
0x28, 0x08, 0x52, 0x08, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x65, 0x22, 0xab, 0x01, 0x0a,
0x18, 0x52, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x72,
0x43, 0x61, 0x63, 0x68, 0x65, 0x41, 0x72, 0x67, 0x73, 0x12, 0x48, 0x0a, 0x12, 0x61, 0x73, 0x73,
0x75, 0x6d, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x73,
0x73, 0x75, 0x6d, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
0x12, 0x61, 0x73, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x12, 0x45, 0x0a, 0x11, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x74, 0x41, 0x6c, 0x6c,
0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17,
0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x41, 0x6c, 0x6c,
0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x66, 0x6f, 0x72, 0x67, 0x65, 0x74, 0x41,
0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x51, 0x0a, 0x11, 0x41, 0x73,
0x73, 0x75, 0x6d, 0x65, 0x64, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
0x24, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x44, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x44, 0x22, 0x38, 0x0a,
0x10, 0x46, 0x6f, 0x72, 0x67, 0x6f, 0x74, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b,
0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x22, 0xaa, 0x02, 0x0a, 0x25, 0x55, 0x70, 0x64, 0x61,
0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x63, 0x68, 0x65, 0x64,
0x75, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x26, 0x0a, 0x0e, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x72, 0x74, 0x69, 0x6f,
0x6e, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x70, 0x70, 0x6c, 0x69,
0x63, 0x61, 0x72, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x6c, 0x6c,
0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x12,
0x52, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c,
0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e,
0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67,
0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x63, 0x68,
0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74,
0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x04, 0x20,
0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x47, 0x0a, 0x0f, 0x53,
0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x69, 0x6e, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0b,
0x0a, 0x07, 0x53, 0x4b, 0x49, 0x50, 0x50, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x53,
0x43, 0x48, 0x45, 0x44, 0x55, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x45,
0x53, 0x45, 0x52, 0x56, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c,
0x45, 0x44, 0x10, 0x03, 0x22, 0x36, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x22, 0x6d, 0x0a, 0x1b,
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x73,
0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75,
0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x6e, 0x66,
0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x6c, 0x64, 0x43, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20,
0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0xfb, 0x01, 0x0a, 0x0b,
0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x74,
0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x73, 0x69, 0x2e, 0x76,
0x31, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x54, 0x79,
0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6f, 0x62, 0x6a, 0x65,
0x63, 0x74, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x62, 0x6a, 0x65,
0x63, 0x74, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x18,
0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x44, 0x12, 0x16,
0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x12, 0x24, 0x0a, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x4e, 0x61, 0x6e,
0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
0x6d, 0x70, 0x4e, 0x61, 0x6e, 0x6f, 0x22, 0x31, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b,
0x0a, 0x07, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x41,
0x50, 0x50, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x44, 0x45, 0x10, 0x02, 0x12, 0x09,
0x0a, 0x05, 0x51, 0x55, 0x45, 0x55, 0x45, 0x10, 0x03, 0x2a, 0x67, 0x0a, 0x0f, 0x54, 0x65, 0x72,
0x6d, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x11, 0x0a, 0x0d,
0x53, 0x54, 0x4f, 0x50, 0x50, 0x45, 0x44, 0x5f, 0x42, 0x59, 0x5f, 0x52, 0x4d, 0x10, 0x00, 0x12,
0x0b, 0x0a, 0x07, 0x54, 0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16,
0x50, 0x52, 0x45, 0x45, 0x4d, 0x50, 0x54, 0x45, 0x44, 0x5f, 0x42, 0x59, 0x5f, 0x53, 0x43, 0x48,
0x45, 0x44, 0x55, 0x4c, 0x45, 0x52, 0x10, 0x02, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x4c, 0x41, 0x43,
0x45, 0x48, 0x4f, 0x4c, 0x44, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x41, 0x43, 0x45, 0x44,
0x10, 0x03, 0x32, 0xb4, 0x01, 0x0a, 0x09, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x72,
0x12, 0x6a, 0x0a, 0x17, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x12, 0x25, 0x2e, 0x73, 0x69,
0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x1a, 0x26, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73,
0x74, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67,
0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3b, 0x0a, 0x06,
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x14, 0x2e, 0x73, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55,
0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x73,
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x3a, 0x3b, 0x0a, 0x09, 0x73, 0x69, 0x5f,
0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0xa3, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x73, 0x69,
0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x42, 0x0b, 0x5a, 0x09, 0x6c, 0x69, 0x62, 0x2f, 0x67, 0x6f,
0x2f, 0x73, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_incubator_yunikorn_scheduler_interface_si_proto_rawDescOnce sync.Once
file_incubator_yunikorn_scheduler_interface_si_proto_rawDescData = file_incubator_yunikorn_scheduler_interface_si_proto_rawDesc
)
func file_incubator_yunikorn_scheduler_interface_si_proto_rawDescGZIP() []byte {
file_incubator_yunikorn_scheduler_interface_si_proto_rawDescOnce.Do(func() {
file_incubator_yunikorn_scheduler_interface_si_proto_rawDescData = protoimpl.X.CompressGZIP(file_incubator_yunikorn_scheduler_interface_si_proto_rawDescData)
})
return file_incubator_yunikorn_scheduler_interface_si_proto_rawDescData
}
var file_incubator_yunikorn_scheduler_interface_si_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
var file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes = make([]protoimpl.MessageInfo, 37)
var file_incubator_yunikorn_scheduler_interface_si_proto_goTypes = []interface{}{
(TerminationType)(0), // 0: si.v1.TerminationType
(UpdateResponse_ActionFromScheduler)(0), // 1: si.v1.UpdateResponse.ActionFromScheduler
(UpdateNodeInfo_ActionFromRM)(0), // 2: si.v1.UpdateNodeInfo.ActionFromRM
(UpdateContainerSchedulingStateRequest_SchedulingState)(0), // 3: si.v1.UpdateContainerSchedulingStateRequest.SchedulingState
(EventRecord_Type)(0), // 4: si.v1.EventRecord.Type
(*RegisterResourceManagerRequest)(nil), // 5: si.v1.RegisterResourceManagerRequest
(*RegisterResourceManagerResponse)(nil), // 6: si.v1.RegisterResourceManagerResponse
(*UpdateRequest)(nil), // 7: si.v1.UpdateRequest
(*UpdateResponse)(nil), // 8: si.v1.UpdateResponse
(*UpdatedApplication)(nil), // 9: si.v1.UpdatedApplication
(*RejectedApplication)(nil), // 10: si.v1.RejectedApplication
(*AcceptedApplication)(nil), // 11: si.v1.AcceptedApplication
(*RejectedNode)(nil), // 12: si.v1.RejectedNode
(*AcceptedNode)(nil), // 13: si.v1.AcceptedNode
(*Priority)(nil), // 14: si.v1.Priority
(*Resource)(nil), // 15: si.v1.Resource
(*Quantity)(nil), // 16: si.v1.Quantity
(*AllocationAsk)(nil), // 17: si.v1.AllocationAsk
(*AddApplicationRequest)(nil), // 18: si.v1.AddApplicationRequest
(*RemoveApplicationRequest)(nil), // 19: si.v1.RemoveApplicationRequest
(*UserGroupInformation)(nil), // 20: si.v1.UserGroupInformation
(*Allocation)(nil), // 21: si.v1.Allocation
(*AllocationReleasesRequest)(nil), // 22: si.v1.AllocationReleasesRequest
(*AllocationRelease)(nil), // 23: si.v1.AllocationRelease
(*AllocationAskRelease)(nil), // 24: si.v1.AllocationAskRelease
(*NewNodeInfo)(nil), // 25: si.v1.NewNodeInfo
(*UpdateNodeInfo)(nil), // 26: si.v1.UpdateNodeInfo
(*RejectedAllocationAsk)(nil), // 27: si.v1.RejectedAllocationAsk
(*PredicatesArgs)(nil), // 28: si.v1.PredicatesArgs
(*ReSyncSchedulerCacheArgs)(nil), // 29: si.v1.ReSyncSchedulerCacheArgs
(*AssumedAllocation)(nil), // 30: si.v1.AssumedAllocation
(*ForgotAllocation)(nil), // 31: si.v1.ForgotAllocation
(*UpdateContainerSchedulingStateRequest)(nil), // 32: si.v1.UpdateContainerSchedulingStateRequest
(*UpdateConfigurationRequest)(nil), // 33: si.v1.UpdateConfigurationRequest
(*UpdateConfigurationResponse)(nil), // 34: si.v1.UpdateConfigurationResponse
(*EventRecord)(nil), // 35: si.v1.EventRecord
nil, // 36: si.v1.Resource.ResourcesEntry
nil, // 37: si.v1.AllocationAsk.TagsEntry
nil, // 38: si.v1.AddApplicationRequest.TagsEntry
nil, // 39: si.v1.Allocation.AllocationTagsEntry
nil, // 40: si.v1.NewNodeInfo.AttributesEntry
nil, // 41: si.v1.UpdateNodeInfo.AttributesEntry
(*descriptorpb.FieldOptions)(nil), // 42: google.protobuf.FieldOptions
}
var file_incubator_yunikorn_scheduler_interface_si_proto_depIdxs = []int32{
17, // 0: si.v1.UpdateRequest.asks:type_name -> si.v1.AllocationAsk
22, // 1: si.v1.UpdateRequest.releases:type_name -> si.v1.AllocationReleasesRequest
25, // 2: si.v1.UpdateRequest.newSchedulableNodes:type_name -> si.v1.NewNodeInfo
26, // 3: si.v1.UpdateRequest.updatedNodes:type_name -> si.v1.UpdateNodeInfo
18, // 4: si.v1.UpdateRequest.newApplications:type_name -> si.v1.AddApplicationRequest
19, // 5: si.v1.UpdateRequest.removeApplications:type_name -> si.v1.RemoveApplicationRequest
1, // 6: si.v1.UpdateResponse.action:type_name -> si.v1.UpdateResponse.ActionFromScheduler
21, // 7: si.v1.UpdateResponse.newAllocations:type_name -> si.v1.Allocation
23, // 8: si.v1.UpdateResponse.releasedAllocations:type_name -> si.v1.AllocationRelease
24, // 9: si.v1.UpdateResponse.releasedAllocationAsks:type_name -> si.v1.AllocationAskRelease
27, // 10: si.v1.UpdateResponse.rejectedAllocations:type_name -> si.v1.RejectedAllocationAsk
10, // 11: si.v1.UpdateResponse.rejectedApplications:type_name -> si.v1.RejectedApplication
11, // 12: si.v1.UpdateResponse.acceptedApplications:type_name -> si.v1.AcceptedApplication
9, // 13: si.v1.UpdateResponse.updatedApplications:type_name -> si.v1.UpdatedApplication
12, // 14: si.v1.UpdateResponse.rejectedNodes:type_name -> si.v1.RejectedNode
13, // 15: si.v1.UpdateResponse.acceptedNodes:type_name -> si.v1.AcceptedNode
36, // 16: si.v1.Resource.resources:type_name -> si.v1.Resource.ResourcesEntry
15, // 17: si.v1.AllocationAsk.resourceAsk:type_name -> si.v1.Resource
14, // 18: si.v1.AllocationAsk.priority:type_name -> si.v1.Priority
37, // 19: si.v1.AllocationAsk.tags:type_name -> si.v1.AllocationAsk.TagsEntry
20, // 20: si.v1.AddApplicationRequest.ugi:type_name -> si.v1.UserGroupInformation
38, // 21: si.v1.AddApplicationRequest.tags:type_name -> si.v1.AddApplicationRequest.TagsEntry
15, // 22: si.v1.AddApplicationRequest.placeholderAsk:type_name -> si.v1.Resource
39, // 23: si.v1.Allocation.allocationTags:type_name -> si.v1.Allocation.AllocationTagsEntry
15, // 24: si.v1.Allocation.resourcePerAlloc:type_name -> si.v1.Resource
14, // 25: si.v1.Allocation.priority:type_name -> si.v1.Priority
23, // 26: si.v1.AllocationReleasesRequest.allocationsToRelease:type_name -> si.v1.AllocationRelease
24, // 27: si.v1.AllocationReleasesRequest.allocationAsksToRelease:type_name -> si.v1.AllocationAskRelease
0, // 28: si.v1.AllocationRelease.terminationType:type_name -> si.v1.TerminationType
0, // 29: si.v1.AllocationAskRelease.terminationType:type_name -> si.v1.TerminationType
40, // 30: si.v1.NewNodeInfo.attributes:type_name -> si.v1.NewNodeInfo.AttributesEntry
15, // 31: si.v1.NewNodeInfo.schedulableResource:type_name -> si.v1.Resource
15, // 32: si.v1.NewNodeInfo.occupiedResource:type_name -> si.v1.Resource
21, // 33: si.v1.NewNodeInfo.existingAllocations:type_name -> si.v1.Allocation
41, // 34: si.v1.UpdateNodeInfo.attributes:type_name -> si.v1.UpdateNodeInfo.AttributesEntry
15, // 35: si.v1.UpdateNodeInfo.schedulableResource:type_name -> si.v1.Resource
15, // 36: si.v1.UpdateNodeInfo.occupiedResource:type_name -> si.v1.Resource
2, // 37: si.v1.UpdateNodeInfo.action:type_name -> si.v1.UpdateNodeInfo.ActionFromRM
30, // 38: si.v1.ReSyncSchedulerCacheArgs.assumedAllocations:type_name -> si.v1.AssumedAllocation
31, // 39: si.v1.ReSyncSchedulerCacheArgs.forgetAllocations:type_name -> si.v1.ForgotAllocation
3, // 40: si.v1.UpdateContainerSchedulingStateRequest.state:type_name -> si.v1.UpdateContainerSchedulingStateRequest.SchedulingState
4, // 41: si.v1.EventRecord.type:type_name -> si.v1.EventRecord.Type
16, // 42: si.v1.Resource.ResourcesEntry.value:type_name -> si.v1.Quantity
42, // 43: si.v1.si_secret:extendee -> google.protobuf.FieldOptions
5, // 44: si.v1.Scheduler.RegisterResourceManager:input_type -> si.v1.RegisterResourceManagerRequest
7, // 45: si.v1.Scheduler.Update:input_type -> si.v1.UpdateRequest
6, // 46: si.v1.Scheduler.RegisterResourceManager:output_type -> si.v1.RegisterResourceManagerResponse
8, // 47: si.v1.Scheduler.Update:output_type -> si.v1.UpdateResponse
46, // [46:48] is the sub-list for method output_type
44, // [44:46] is the sub-list for method input_type
44, // [44:44] is the sub-list for extension type_name
43, // [43:44] is the sub-list for extension extendee
0, // [0:43] is the sub-list for field type_name
}
func init() { file_incubator_yunikorn_scheduler_interface_si_proto_init() }
func file_incubator_yunikorn_scheduler_interface_si_proto_init() {
if File_incubator_yunikorn_scheduler_interface_si_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RegisterResourceManagerRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RegisterResourceManagerResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdatedApplication); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RejectedApplication); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AcceptedApplication); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RejectedNode); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AcceptedNode); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Priority); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Resource); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Quantity); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AllocationAsk); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AddApplicationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RemoveApplicationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UserGroupInformation); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Allocation); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AllocationReleasesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AllocationRelease); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AllocationAskRelease); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*NewNodeInfo); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateNodeInfo); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RejectedAllocationAsk); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PredicatesArgs); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ReSyncSchedulerCacheArgs); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*AssumedAllocation); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ForgotAllocation); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateContainerSchedulingStateRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateConfigurationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*UpdateConfigurationResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*EventRecord); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes[9].OneofWrappers = []interface{}{
(*Priority_PriorityValue)(nil),
(*Priority_PriorityClassName)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_incubator_yunikorn_scheduler_interface_si_proto_rawDesc,
NumEnums: 5,
NumMessages: 37,
NumExtensions: 1,
NumServices: 1,
},
GoTypes: file_incubator_yunikorn_scheduler_interface_si_proto_goTypes,
DependencyIndexes: file_incubator_yunikorn_scheduler_interface_si_proto_depIdxs,
EnumInfos: file_incubator_yunikorn_scheduler_interface_si_proto_enumTypes,
MessageInfos: file_incubator_yunikorn_scheduler_interface_si_proto_msgTypes,
ExtensionInfos: file_incubator_yunikorn_scheduler_interface_si_proto_extTypes,
}.Build()
File_incubator_yunikorn_scheduler_interface_si_proto = out.File
file_incubator_yunikorn_scheduler_interface_si_proto_rawDesc = nil
file_incubator_yunikorn_scheduler_interface_si_proto_goTypes = nil
file_incubator_yunikorn_scheduler_interface_si_proto_depIdxs = nil
}