...

Source file src/google.golang.org/genproto/googleapis/cloud/gkehub/v1/feature.pb.go

Documentation: google.golang.org/genproto/googleapis/cloud/gkehub/v1

     1  // Copyright 2021 Google LLC
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.26.0
    18  // 	protoc        v3.12.2
    19  // source: google/cloud/gkehub/v1/feature.proto
    20  
    21  package gkehub
    22  
    23  import (
    24  	reflect "reflect"
    25  	sync "sync"
    26  
    27  	_ "google.golang.org/genproto/googleapis/api/annotations"
    28  	v11 "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1"
    29  	v1 "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1"
    30  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    31  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    32  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    33  )
    34  
    35  const (
    36  	// Verify that this generated code is sufficiently up-to-date.
    37  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    38  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    39  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    40  )
    41  
    42  // State describes the lifecycle status of a Feature.
    43  type FeatureResourceState_State int32
    44  
    45  const (
    46  	// State is unknown or not set.
    47  	FeatureResourceState_STATE_UNSPECIFIED FeatureResourceState_State = 0
    48  	// The Feature is being enabled, and the Feature resource is being created.
    49  	// Once complete, the corresponding Feature will be enabled in this Hub.
    50  	FeatureResourceState_ENABLING FeatureResourceState_State = 1
    51  	// The Feature is enabled in this Hub, and the Feature resource is fully
    52  	// available.
    53  	FeatureResourceState_ACTIVE FeatureResourceState_State = 2
    54  	// The Feature is being disabled in this Hub, and the Feature resource
    55  	// is being deleted.
    56  	FeatureResourceState_DISABLING FeatureResourceState_State = 3
    57  	// The Feature resource is being updated.
    58  	FeatureResourceState_UPDATING FeatureResourceState_State = 4
    59  	// The Feature resource is being updated by the Hub Service.
    60  	FeatureResourceState_SERVICE_UPDATING FeatureResourceState_State = 5
    61  )
    62  
    63  // Enum value maps for FeatureResourceState_State.
    64  var (
    65  	FeatureResourceState_State_name = map[int32]string{
    66  		0: "STATE_UNSPECIFIED",
    67  		1: "ENABLING",
    68  		2: "ACTIVE",
    69  		3: "DISABLING",
    70  		4: "UPDATING",
    71  		5: "SERVICE_UPDATING",
    72  	}
    73  	FeatureResourceState_State_value = map[string]int32{
    74  		"STATE_UNSPECIFIED": 0,
    75  		"ENABLING":          1,
    76  		"ACTIVE":            2,
    77  		"DISABLING":         3,
    78  		"UPDATING":          4,
    79  		"SERVICE_UPDATING":  5,
    80  	}
    81  )
    82  
    83  func (x FeatureResourceState_State) Enum() *FeatureResourceState_State {
    84  	p := new(FeatureResourceState_State)
    85  	*p = x
    86  	return p
    87  }
    88  
    89  func (x FeatureResourceState_State) String() string {
    90  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    91  }
    92  
    93  func (FeatureResourceState_State) Descriptor() protoreflect.EnumDescriptor {
    94  	return file_google_cloud_gkehub_v1_feature_proto_enumTypes[0].Descriptor()
    95  }
    96  
    97  func (FeatureResourceState_State) Type() protoreflect.EnumType {
    98  	return &file_google_cloud_gkehub_v1_feature_proto_enumTypes[0]
    99  }
   100  
   101  func (x FeatureResourceState_State) Number() protoreflect.EnumNumber {
   102  	return protoreflect.EnumNumber(x)
   103  }
   104  
   105  // Deprecated: Use FeatureResourceState_State.Descriptor instead.
   106  func (FeatureResourceState_State) EnumDescriptor() ([]byte, []int) {
   107  	return file_google_cloud_gkehub_v1_feature_proto_rawDescGZIP(), []int{1, 0}
   108  }
   109  
   110  // Code represents a machine-readable, high-level status of the Feature.
   111  type FeatureState_Code int32
   112  
   113  const (
   114  	// Unknown or not set.
   115  	FeatureState_CODE_UNSPECIFIED FeatureState_Code = 0
   116  	// The Feature is operating normally.
   117  	FeatureState_OK FeatureState_Code = 1
   118  	// The Feature has encountered an issue, and is operating in a degraded
   119  	// state. The Feature may need intervention to return to normal operation.
   120  	// See the description and any associated Feature-specific details for more
   121  	// information.
   122  	FeatureState_WARNING FeatureState_Code = 2
   123  	// The Feature is not operating or is in a severely degraded state.
   124  	// The Feature may need intervention to return to normal operation.
   125  	// See the description and any associated Feature-specific details for more
   126  	// information.
   127  	FeatureState_ERROR FeatureState_Code = 3
   128  )
   129  
   130  // Enum value maps for FeatureState_Code.
   131  var (
   132  	FeatureState_Code_name = map[int32]string{
   133  		0: "CODE_UNSPECIFIED",
   134  		1: "OK",
   135  		2: "WARNING",
   136  		3: "ERROR",
   137  	}
   138  	FeatureState_Code_value = map[string]int32{
   139  		"CODE_UNSPECIFIED": 0,
   140  		"OK":               1,
   141  		"WARNING":          2,
   142  		"ERROR":            3,
   143  	}
   144  )
   145  
   146  func (x FeatureState_Code) Enum() *FeatureState_Code {
   147  	p := new(FeatureState_Code)
   148  	*p = x
   149  	return p
   150  }
   151  
   152  func (x FeatureState_Code) String() string {
   153  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   154  }
   155  
   156  func (FeatureState_Code) Descriptor() protoreflect.EnumDescriptor {
   157  	return file_google_cloud_gkehub_v1_feature_proto_enumTypes[1].Descriptor()
   158  }
   159  
   160  func (FeatureState_Code) Type() protoreflect.EnumType {
   161  	return &file_google_cloud_gkehub_v1_feature_proto_enumTypes[1]
   162  }
   163  
   164  func (x FeatureState_Code) Number() protoreflect.EnumNumber {
   165  	return protoreflect.EnumNumber(x)
   166  }
   167  
   168  // Deprecated: Use FeatureState_Code.Descriptor instead.
   169  func (FeatureState_Code) EnumDescriptor() ([]byte, []int) {
   170  	return file_google_cloud_gkehub_v1_feature_proto_rawDescGZIP(), []int{2, 0}
   171  }
   172  
   173  // Feature represents the settings and status of any Hub Feature.
   174  type Feature struct {
   175  	state         protoimpl.MessageState
   176  	sizeCache     protoimpl.SizeCache
   177  	unknownFields protoimpl.UnknownFields
   178  
   179  	// Output only. The full, unique name of this Feature resource in the format
   180  	// `projects/*/locations/*/features/*`.
   181  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   182  	// GCP labels for this Feature.
   183  	Labels map[string]string `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   184  	// Output only. State of the Feature resource itself.
   185  	ResourceState *FeatureResourceState `protobuf:"bytes,3,opt,name=resource_state,json=resourceState,proto3" json:"resource_state,omitempty"`
   186  	// Optional. Hub-wide Feature configuration. If this Feature does not support any
   187  	// Hub-wide configuration, this field may be unused.
   188  	Spec *CommonFeatureSpec `protobuf:"bytes,4,opt,name=spec,proto3" json:"spec,omitempty"`
   189  	// Optional. Membership-specific configuration for this Feature. If this Feature does
   190  	// not support any per-Membership configuration, this field may be unused.
   191  	//
   192  	// The keys indicate which Membership the configuration is for, in the form:
   193  	//
   194  	//     projects/{p}/locations/{l}/memberships/{m}
   195  	//
   196  	// Where {p} is the project, {l} is a valid location and {m} is a valid
   197  	// Membership in this project at that location. {p} WILL match the Feature's
   198  	// project.
   199  	//
   200  	// {p} will always be returned as the project number, but the project ID is
   201  	// also accepted during input. If the same Membership is specified in the map
   202  	// twice (using the project ID form, and the project number form), exactly
   203  	// ONE of the entries will be saved, with no guarantees as to which. For this
   204  	// reason, it is recommended the same format be used for all entries when
   205  	// mutating a Feature.
   206  	MembershipSpecs map[string]*MembershipFeatureSpec `protobuf:"bytes,5,rep,name=membership_specs,json=membershipSpecs,proto3" json:"membership_specs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   207  	// Output only. The Hub-wide Feature state.
   208  	State *CommonFeatureState `protobuf:"bytes,6,opt,name=state,proto3" json:"state,omitempty"`
   209  	// Output only. Membership-specific Feature status. If this Feature does
   210  	// report any per-Membership status, this field may be unused.
   211  	//
   212  	// The keys indicate which Membership the state is for, in the form:
   213  	//
   214  	//     projects/{p}/locations/{l}/memberships/{m}
   215  	//
   216  	// Where {p} is the project number, {l} is a valid location and {m} is a valid
   217  	// Membership in this project at that location. {p} MUST match the Feature's
   218  	// project number.
   219  	MembershipStates map[string]*MembershipFeatureState `protobuf:"bytes,7,rep,name=membership_states,json=membershipStates,proto3" json:"membership_states,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   220  	// Output only. When the Feature resource was created.
   221  	CreateTime *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
   222  	// Output only. When the Feature resource was last updated.
   223  	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
   224  	// Output only. When the Feature resource was deleted.
   225  	DeleteTime *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=delete_time,json=deleteTime,proto3" json:"delete_time,omitempty"`
   226  }
   227  
   228  func (x *Feature) Reset() {
   229  	*x = Feature{}
   230  	if protoimpl.UnsafeEnabled {
   231  		mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[0]
   232  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   233  		ms.StoreMessageInfo(mi)
   234  	}
   235  }
   236  
   237  func (x *Feature) String() string {
   238  	return protoimpl.X.MessageStringOf(x)
   239  }
   240  
   241  func (*Feature) ProtoMessage() {}
   242  
   243  func (x *Feature) ProtoReflect() protoreflect.Message {
   244  	mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[0]
   245  	if protoimpl.UnsafeEnabled && x != nil {
   246  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   247  		if ms.LoadMessageInfo() == nil {
   248  			ms.StoreMessageInfo(mi)
   249  		}
   250  		return ms
   251  	}
   252  	return mi.MessageOf(x)
   253  }
   254  
   255  // Deprecated: Use Feature.ProtoReflect.Descriptor instead.
   256  func (*Feature) Descriptor() ([]byte, []int) {
   257  	return file_google_cloud_gkehub_v1_feature_proto_rawDescGZIP(), []int{0}
   258  }
   259  
   260  func (x *Feature) GetName() string {
   261  	if x != nil {
   262  		return x.Name
   263  	}
   264  	return ""
   265  }
   266  
   267  func (x *Feature) GetLabels() map[string]string {
   268  	if x != nil {
   269  		return x.Labels
   270  	}
   271  	return nil
   272  }
   273  
   274  func (x *Feature) GetResourceState() *FeatureResourceState {
   275  	if x != nil {
   276  		return x.ResourceState
   277  	}
   278  	return nil
   279  }
   280  
   281  func (x *Feature) GetSpec() *CommonFeatureSpec {
   282  	if x != nil {
   283  		return x.Spec
   284  	}
   285  	return nil
   286  }
   287  
   288  func (x *Feature) GetMembershipSpecs() map[string]*MembershipFeatureSpec {
   289  	if x != nil {
   290  		return x.MembershipSpecs
   291  	}
   292  	return nil
   293  }
   294  
   295  func (x *Feature) GetState() *CommonFeatureState {
   296  	if x != nil {
   297  		return x.State
   298  	}
   299  	return nil
   300  }
   301  
   302  func (x *Feature) GetMembershipStates() map[string]*MembershipFeatureState {
   303  	if x != nil {
   304  		return x.MembershipStates
   305  	}
   306  	return nil
   307  }
   308  
   309  func (x *Feature) GetCreateTime() *timestamppb.Timestamp {
   310  	if x != nil {
   311  		return x.CreateTime
   312  	}
   313  	return nil
   314  }
   315  
   316  func (x *Feature) GetUpdateTime() *timestamppb.Timestamp {
   317  	if x != nil {
   318  		return x.UpdateTime
   319  	}
   320  	return nil
   321  }
   322  
   323  func (x *Feature) GetDeleteTime() *timestamppb.Timestamp {
   324  	if x != nil {
   325  		return x.DeleteTime
   326  	}
   327  	return nil
   328  }
   329  
   330  // FeatureResourceState describes the state of a Feature *resource* in the
   331  // GkeHub API. See `FeatureState` for the "running state" of the Feature in the
   332  // Hub and across Memberships.
   333  type FeatureResourceState struct {
   334  	state         protoimpl.MessageState
   335  	sizeCache     protoimpl.SizeCache
   336  	unknownFields protoimpl.UnknownFields
   337  
   338  	// The current state of the Feature resource in the Hub API.
   339  	State FeatureResourceState_State `protobuf:"varint,1,opt,name=state,proto3,enum=google.cloud.gkehub.v1.FeatureResourceState_State" json:"state,omitempty"`
   340  }
   341  
   342  func (x *FeatureResourceState) Reset() {
   343  	*x = FeatureResourceState{}
   344  	if protoimpl.UnsafeEnabled {
   345  		mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[1]
   346  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   347  		ms.StoreMessageInfo(mi)
   348  	}
   349  }
   350  
   351  func (x *FeatureResourceState) String() string {
   352  	return protoimpl.X.MessageStringOf(x)
   353  }
   354  
   355  func (*FeatureResourceState) ProtoMessage() {}
   356  
   357  func (x *FeatureResourceState) ProtoReflect() protoreflect.Message {
   358  	mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[1]
   359  	if protoimpl.UnsafeEnabled && x != nil {
   360  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   361  		if ms.LoadMessageInfo() == nil {
   362  			ms.StoreMessageInfo(mi)
   363  		}
   364  		return ms
   365  	}
   366  	return mi.MessageOf(x)
   367  }
   368  
   369  // Deprecated: Use FeatureResourceState.ProtoReflect.Descriptor instead.
   370  func (*FeatureResourceState) Descriptor() ([]byte, []int) {
   371  	return file_google_cloud_gkehub_v1_feature_proto_rawDescGZIP(), []int{1}
   372  }
   373  
   374  func (x *FeatureResourceState) GetState() FeatureResourceState_State {
   375  	if x != nil {
   376  		return x.State
   377  	}
   378  	return FeatureResourceState_STATE_UNSPECIFIED
   379  }
   380  
   381  // FeatureState describes the high-level state of a Feature. It may be used to
   382  // describe a Feature's state at the environ-level, or per-membershop, depending
   383  // on the context.
   384  type FeatureState struct {
   385  	state         protoimpl.MessageState
   386  	sizeCache     protoimpl.SizeCache
   387  	unknownFields protoimpl.UnknownFields
   388  
   389  	// The high-level, machine-readable status of this Feature.
   390  	Code FeatureState_Code `protobuf:"varint,1,opt,name=code,proto3,enum=google.cloud.gkehub.v1.FeatureState_Code" json:"code,omitempty"`
   391  	// A human-readable description of the current status.
   392  	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   393  	// The time this status and any related Feature-specific details were updated.
   394  	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
   395  }
   396  
   397  func (x *FeatureState) Reset() {
   398  	*x = FeatureState{}
   399  	if protoimpl.UnsafeEnabled {
   400  		mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[2]
   401  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   402  		ms.StoreMessageInfo(mi)
   403  	}
   404  }
   405  
   406  func (x *FeatureState) String() string {
   407  	return protoimpl.X.MessageStringOf(x)
   408  }
   409  
   410  func (*FeatureState) ProtoMessage() {}
   411  
   412  func (x *FeatureState) ProtoReflect() protoreflect.Message {
   413  	mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[2]
   414  	if protoimpl.UnsafeEnabled && x != nil {
   415  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   416  		if ms.LoadMessageInfo() == nil {
   417  			ms.StoreMessageInfo(mi)
   418  		}
   419  		return ms
   420  	}
   421  	return mi.MessageOf(x)
   422  }
   423  
   424  // Deprecated: Use FeatureState.ProtoReflect.Descriptor instead.
   425  func (*FeatureState) Descriptor() ([]byte, []int) {
   426  	return file_google_cloud_gkehub_v1_feature_proto_rawDescGZIP(), []int{2}
   427  }
   428  
   429  func (x *FeatureState) GetCode() FeatureState_Code {
   430  	if x != nil {
   431  		return x.Code
   432  	}
   433  	return FeatureState_CODE_UNSPECIFIED
   434  }
   435  
   436  func (x *FeatureState) GetDescription() string {
   437  	if x != nil {
   438  		return x.Description
   439  	}
   440  	return ""
   441  }
   442  
   443  func (x *FeatureState) GetUpdateTime() *timestamppb.Timestamp {
   444  	if x != nil {
   445  		return x.UpdateTime
   446  	}
   447  	return nil
   448  }
   449  
   450  // CommonFeatureSpec contains Hub-wide configuration information
   451  type CommonFeatureSpec struct {
   452  	state         protoimpl.MessageState
   453  	sizeCache     protoimpl.SizeCache
   454  	unknownFields protoimpl.UnknownFields
   455  
   456  	// Types that are assignable to FeatureSpec:
   457  	//	*CommonFeatureSpec_Multiclusteringress
   458  	FeatureSpec isCommonFeatureSpec_FeatureSpec `protobuf_oneof:"feature_spec"`
   459  }
   460  
   461  func (x *CommonFeatureSpec) Reset() {
   462  	*x = CommonFeatureSpec{}
   463  	if protoimpl.UnsafeEnabled {
   464  		mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[3]
   465  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   466  		ms.StoreMessageInfo(mi)
   467  	}
   468  }
   469  
   470  func (x *CommonFeatureSpec) String() string {
   471  	return protoimpl.X.MessageStringOf(x)
   472  }
   473  
   474  func (*CommonFeatureSpec) ProtoMessage() {}
   475  
   476  func (x *CommonFeatureSpec) ProtoReflect() protoreflect.Message {
   477  	mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[3]
   478  	if protoimpl.UnsafeEnabled && x != nil {
   479  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   480  		if ms.LoadMessageInfo() == nil {
   481  			ms.StoreMessageInfo(mi)
   482  		}
   483  		return ms
   484  	}
   485  	return mi.MessageOf(x)
   486  }
   487  
   488  // Deprecated: Use CommonFeatureSpec.ProtoReflect.Descriptor instead.
   489  func (*CommonFeatureSpec) Descriptor() ([]byte, []int) {
   490  	return file_google_cloud_gkehub_v1_feature_proto_rawDescGZIP(), []int{3}
   491  }
   492  
   493  func (m *CommonFeatureSpec) GetFeatureSpec() isCommonFeatureSpec_FeatureSpec {
   494  	if m != nil {
   495  		return m.FeatureSpec
   496  	}
   497  	return nil
   498  }
   499  
   500  func (x *CommonFeatureSpec) GetMulticlusteringress() *v1.FeatureSpec {
   501  	if x, ok := x.GetFeatureSpec().(*CommonFeatureSpec_Multiclusteringress); ok {
   502  		return x.Multiclusteringress
   503  	}
   504  	return nil
   505  }
   506  
   507  type isCommonFeatureSpec_FeatureSpec interface {
   508  	isCommonFeatureSpec_FeatureSpec()
   509  }
   510  
   511  type CommonFeatureSpec_Multiclusteringress struct {
   512  	// Multicluster Ingress-specific spec.
   513  	Multiclusteringress *v1.FeatureSpec `protobuf:"bytes,102,opt,name=multiclusteringress,proto3,oneof"`
   514  }
   515  
   516  func (*CommonFeatureSpec_Multiclusteringress) isCommonFeatureSpec_FeatureSpec() {}
   517  
   518  // CommonFeatureState contains Hub-wide Feature status information.
   519  type CommonFeatureState struct {
   520  	state         protoimpl.MessageState
   521  	sizeCache     protoimpl.SizeCache
   522  	unknownFields protoimpl.UnknownFields
   523  
   524  	// Output only. The "running state" of the Feature in this Hub.
   525  	State *FeatureState `protobuf:"bytes,1,opt,name=state,proto3" json:"state,omitempty"`
   526  }
   527  
   528  func (x *CommonFeatureState) Reset() {
   529  	*x = CommonFeatureState{}
   530  	if protoimpl.UnsafeEnabled {
   531  		mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[4]
   532  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   533  		ms.StoreMessageInfo(mi)
   534  	}
   535  }
   536  
   537  func (x *CommonFeatureState) String() string {
   538  	return protoimpl.X.MessageStringOf(x)
   539  }
   540  
   541  func (*CommonFeatureState) ProtoMessage() {}
   542  
   543  func (x *CommonFeatureState) ProtoReflect() protoreflect.Message {
   544  	mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[4]
   545  	if protoimpl.UnsafeEnabled && x != nil {
   546  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   547  		if ms.LoadMessageInfo() == nil {
   548  			ms.StoreMessageInfo(mi)
   549  		}
   550  		return ms
   551  	}
   552  	return mi.MessageOf(x)
   553  }
   554  
   555  // Deprecated: Use CommonFeatureState.ProtoReflect.Descriptor instead.
   556  func (*CommonFeatureState) Descriptor() ([]byte, []int) {
   557  	return file_google_cloud_gkehub_v1_feature_proto_rawDescGZIP(), []int{4}
   558  }
   559  
   560  func (x *CommonFeatureState) GetState() *FeatureState {
   561  	if x != nil {
   562  		return x.State
   563  	}
   564  	return nil
   565  }
   566  
   567  // MembershipFeatureSpec contains configuration information for a single
   568  // Membership.
   569  type MembershipFeatureSpec struct {
   570  	state         protoimpl.MessageState
   571  	sizeCache     protoimpl.SizeCache
   572  	unknownFields protoimpl.UnknownFields
   573  
   574  	// Types that are assignable to FeatureSpec:
   575  	//	*MembershipFeatureSpec_Configmanagement
   576  	FeatureSpec isMembershipFeatureSpec_FeatureSpec `protobuf_oneof:"feature_spec"`
   577  }
   578  
   579  func (x *MembershipFeatureSpec) Reset() {
   580  	*x = MembershipFeatureSpec{}
   581  	if protoimpl.UnsafeEnabled {
   582  		mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[5]
   583  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   584  		ms.StoreMessageInfo(mi)
   585  	}
   586  }
   587  
   588  func (x *MembershipFeatureSpec) String() string {
   589  	return protoimpl.X.MessageStringOf(x)
   590  }
   591  
   592  func (*MembershipFeatureSpec) ProtoMessage() {}
   593  
   594  func (x *MembershipFeatureSpec) ProtoReflect() protoreflect.Message {
   595  	mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[5]
   596  	if protoimpl.UnsafeEnabled && x != nil {
   597  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   598  		if ms.LoadMessageInfo() == nil {
   599  			ms.StoreMessageInfo(mi)
   600  		}
   601  		return ms
   602  	}
   603  	return mi.MessageOf(x)
   604  }
   605  
   606  // Deprecated: Use MembershipFeatureSpec.ProtoReflect.Descriptor instead.
   607  func (*MembershipFeatureSpec) Descriptor() ([]byte, []int) {
   608  	return file_google_cloud_gkehub_v1_feature_proto_rawDescGZIP(), []int{5}
   609  }
   610  
   611  func (m *MembershipFeatureSpec) GetFeatureSpec() isMembershipFeatureSpec_FeatureSpec {
   612  	if m != nil {
   613  		return m.FeatureSpec
   614  	}
   615  	return nil
   616  }
   617  
   618  func (x *MembershipFeatureSpec) GetConfigmanagement() *v11.MembershipSpec {
   619  	if x, ok := x.GetFeatureSpec().(*MembershipFeatureSpec_Configmanagement); ok {
   620  		return x.Configmanagement
   621  	}
   622  	return nil
   623  }
   624  
   625  type isMembershipFeatureSpec_FeatureSpec interface {
   626  	isMembershipFeatureSpec_FeatureSpec()
   627  }
   628  
   629  type MembershipFeatureSpec_Configmanagement struct {
   630  	// Config Management-specific spec.
   631  	Configmanagement *v11.MembershipSpec `protobuf:"bytes,106,opt,name=configmanagement,proto3,oneof"`
   632  }
   633  
   634  func (*MembershipFeatureSpec_Configmanagement) isMembershipFeatureSpec_FeatureSpec() {}
   635  
   636  // MembershipFeatureState contains Feature status information for a single
   637  // Membership.
   638  type MembershipFeatureState struct {
   639  	state         protoimpl.MessageState
   640  	sizeCache     protoimpl.SizeCache
   641  	unknownFields protoimpl.UnknownFields
   642  
   643  	// Types that are assignable to FeatureState:
   644  	//	*MembershipFeatureState_Configmanagement
   645  	FeatureState isMembershipFeatureState_FeatureState `protobuf_oneof:"feature_state"`
   646  	// The high-level state of this Feature for a single membership.
   647  	State *FeatureState `protobuf:"bytes,1,opt,name=state,proto3" json:"state,omitempty"`
   648  }
   649  
   650  func (x *MembershipFeatureState) Reset() {
   651  	*x = MembershipFeatureState{}
   652  	if protoimpl.UnsafeEnabled {
   653  		mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[6]
   654  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   655  		ms.StoreMessageInfo(mi)
   656  	}
   657  }
   658  
   659  func (x *MembershipFeatureState) String() string {
   660  	return protoimpl.X.MessageStringOf(x)
   661  }
   662  
   663  func (*MembershipFeatureState) ProtoMessage() {}
   664  
   665  func (x *MembershipFeatureState) ProtoReflect() protoreflect.Message {
   666  	mi := &file_google_cloud_gkehub_v1_feature_proto_msgTypes[6]
   667  	if protoimpl.UnsafeEnabled && x != nil {
   668  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   669  		if ms.LoadMessageInfo() == nil {
   670  			ms.StoreMessageInfo(mi)
   671  		}
   672  		return ms
   673  	}
   674  	return mi.MessageOf(x)
   675  }
   676  
   677  // Deprecated: Use MembershipFeatureState.ProtoReflect.Descriptor instead.
   678  func (*MembershipFeatureState) Descriptor() ([]byte, []int) {
   679  	return file_google_cloud_gkehub_v1_feature_proto_rawDescGZIP(), []int{6}
   680  }
   681  
   682  func (m *MembershipFeatureState) GetFeatureState() isMembershipFeatureState_FeatureState {
   683  	if m != nil {
   684  		return m.FeatureState
   685  	}
   686  	return nil
   687  }
   688  
   689  func (x *MembershipFeatureState) GetConfigmanagement() *v11.MembershipState {
   690  	if x, ok := x.GetFeatureState().(*MembershipFeatureState_Configmanagement); ok {
   691  		return x.Configmanagement
   692  	}
   693  	return nil
   694  }
   695  
   696  func (x *MembershipFeatureState) GetState() *FeatureState {
   697  	if x != nil {
   698  		return x.State
   699  	}
   700  	return nil
   701  }
   702  
   703  type isMembershipFeatureState_FeatureState interface {
   704  	isMembershipFeatureState_FeatureState()
   705  }
   706  
   707  type MembershipFeatureState_Configmanagement struct {
   708  	// Config Management-specific state.
   709  	Configmanagement *v11.MembershipState `protobuf:"bytes,106,opt,name=configmanagement,proto3,oneof"`
   710  }
   711  
   712  func (*MembershipFeatureState_Configmanagement) isMembershipFeatureState_FeatureState() {}
   713  
   714  var File_google_cloud_gkehub_v1_feature_proto protoreflect.FileDescriptor
   715  
   716  var file_google_cloud_gkehub_v1_feature_proto_rawDesc = []byte{
   717  	0x0a, 0x24, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x67,
   718  	0x6b, 0x65, 0x68, 0x75, 0x62, 0x2f, 0x76, 0x31, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
   719  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x16, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
   720  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x1a, 0x1f,
   721  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64,
   722  	0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
   723  	0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f,
   724  	0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x3e, 0x67, 0x6f, 0x6f, 0x67,
   725  	0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2f,
   726  	0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
   727  	0x65, 0x6e, 0x74, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65,
   728  	0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x44, 0x67, 0x6f, 0x6f, 0x67,
   729  	0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2f,
   730  	0x76, 0x31, 0x2f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x69,
   731  	0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x6c, 0x75, 0x73,
   732  	0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
   733  	0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
   734  	0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74,
   735  	0x6f, 0x22, 0xe4, 0x08, 0x0a, 0x07, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x17, 0x0a,
   736  	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03,
   737  	0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73,
   738  	0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
   739  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x2e,
   740  	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e,
   741  	0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x58, 0x0a, 0x0e, 0x72,
   742  	0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20,
   743  	0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
   744  	0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61,
   745  	0x74, 0x75, 0x72, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74,
   746  	0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
   747  	0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x42, 0x0a, 0x04, 0x73, 0x70, 0x65, 0x63, 0x18, 0x04, 0x20,
   748  	0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
   749  	0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d,
   750  	0x6d, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x70, 0x65, 0x63, 0x42, 0x03,
   751  	0xe0, 0x41, 0x01, 0x52, 0x04, 0x73, 0x70, 0x65, 0x63, 0x12, 0x64, 0x0a, 0x10, 0x6d, 0x65, 0x6d,
   752  	0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x18, 0x05, 0x20,
   753  	0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
   754  	0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61,
   755  	0x74, 0x75, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x53,
   756  	0x70, 0x65, 0x63, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f,
   757  	0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x53, 0x70, 0x65, 0x63, 0x73, 0x12,
   758  	0x45, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a,
   759  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b,
   760  	0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x46, 0x65,
   761  	0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
   762  	0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x67, 0x0a, 0x11, 0x6d, 0x65, 0x6d, 0x62, 0x65, 0x72,
   763  	0x73, 0x68, 0x69, 0x70, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28,
   764  	0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
   765  	0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75,
   766  	0x72, 0x65, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x53, 0x74, 0x61,
   767  	0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x6d,
   768  	0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x12,
   769  	0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08,
   770  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
   771  	0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
   772  	0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d,
   773  	0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65,
   774  	0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
   775  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
   776  	0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54,
   777  	0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69,
   778  	0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
   779  	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73,
   780  	0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74,
   781  	0x65, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45,
   782  	0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
   783  	0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
   784  	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
   785  	0x1a, 0x71, 0x0a, 0x14, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x53, 0x70,
   786  	0x65, 0x63, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
   787  	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x43, 0x0a, 0x05, 0x76, 0x61,
   788  	0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
   789  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e,
   790  	0x76, 0x31, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x46, 0x65, 0x61,
   791  	0x74, 0x75, 0x72, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
   792  	0x02, 0x38, 0x01, 0x1a, 0x73, 0x0a, 0x15, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69,
   793  	0x70, 0x53, 0x74, 0x61, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
   794  	0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x44,
   795  	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e,
   796  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65,
   797  	0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69,
   798  	0x70, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x76,
   799  	0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x3a, 0x5e, 0xea, 0x41, 0x5b, 0x0a, 0x1d, 0x67,
   800  	0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
   801  	0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x3a, 0x70, 0x72,
   802  	0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d,
   803  	0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61,
   804  	0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x2f, 0x7b,
   805  	0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x7d, 0x22, 0xcd, 0x01, 0x0a, 0x14, 0x46, 0x65, 0x61,
   806  	0x74, 0x75, 0x72, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74,
   807  	0x65, 0x12, 0x48, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
   808  	0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
   809  	0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
   810  	0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x53,
   811  	0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x6b, 0x0a, 0x05, 0x53,
   812  	0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e,
   813  	0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x45,
   814  	0x4e, 0x41, 0x42, 0x4c, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x43, 0x54,
   815  	0x49, 0x56, 0x45, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x49,
   816  	0x4e, 0x47, 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x50, 0x44, 0x41, 0x54, 0x49, 0x4e, 0x47,
   817  	0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x45, 0x52, 0x56, 0x49, 0x43, 0x45, 0x5f, 0x55, 0x50,
   818  	0x44, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x22, 0xea, 0x01, 0x0a, 0x0c, 0x46, 0x65, 0x61,
   819  	0x74, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x3d, 0x0a, 0x04, 0x63, 0x6f, 0x64,
   820  	0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
   821  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31,
   822  	0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x43, 0x6f,
   823  	0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
   824  	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
   825  	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70,
   826  	0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
   827  	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
   828  	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x75, 0x70, 0x64,
   829  	0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x3c, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12,
   830  	0x14, 0x0a, 0x10, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
   831  	0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4f, 0x4b, 0x10, 0x01, 0x12, 0x0b, 0x0a,
   832  	0x07, 0x57, 0x41, 0x52, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x52,
   833  	0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x90, 0x01, 0x0a, 0x11, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
   834  	0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x6b, 0x0a, 0x13, 0x6d,
   835  	0x75, 0x6c, 0x74, 0x69, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x72, 0x65,
   836  	0x73, 0x73, 0x18, 0x66, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
   837  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x6d,
   838  	0x75, 0x6c, 0x74, 0x69, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x72, 0x65,
   839  	0x73, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x70, 0x65,
   840  	0x63, 0x48, 0x00, 0x52, 0x13, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
   841  	0x72, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x66, 0x65, 0x61, 0x74,
   842  	0x75, 0x72, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x22, 0x55, 0x0a, 0x12, 0x43, 0x6f, 0x6d, 0x6d,
   843  	0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x3f,
   844  	0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e,
   845  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65,
   846  	0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x74,
   847  	0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22,
   848  	0x8e, 0x01, 0x0a, 0x15, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x46, 0x65,
   849  	0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x65, 0x0a, 0x10, 0x63, 0x6f, 0x6e,
   850  	0x66, 0x69, 0x67, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x6a, 0x20,
   851  	0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
   852  	0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
   853  	0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4d, 0x65,
   854  	0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x53, 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x10,
   855  	0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74,
   856  	0x42, 0x0e, 0x0a, 0x0c, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x63,
   857  	0x22, 0xcd, 0x01, 0x0a, 0x16, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x46,
   858  	0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x66, 0x0a, 0x10, 0x63,
   859  	0x6f, 0x6e, 0x66, 0x69, 0x67, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18,
   860  	0x6a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
   861  	0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6e, 0x66,
   862  	0x69, 0x67, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e,
   863  	0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x68, 0x69, 0x70, 0x53, 0x74, 0x61, 0x74, 0x65, 0x48,
   864  	0x00, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
   865  	0x65, 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01,
   866  	0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
   867  	0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x65, 0x61, 0x74,
   868  	0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x42,
   869  	0x0f, 0x0a, 0x0d, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65,
   870  	0x42, 0xb8, 0x01, 0x0a, 0x1a, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
   871  	0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0x2e, 0x76, 0x31, 0x42,
   872  	0x0c, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a,
   873  	0x3c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f,
   874  	0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67,
   875  	0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x67, 0x6b, 0x65,
   876  	0x68, 0x75, 0x62, 0x2f, 0x76, 0x31, 0x3b, 0x67, 0x6b, 0x65, 0x68, 0x75, 0x62, 0xaa, 0x02, 0x16,
   877  	0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x47, 0x6b, 0x65,
   878  	0x48, 0x75, 0x62, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x16, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c,
   879  	0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x47, 0x6b, 0x65, 0x48, 0x75, 0x62, 0x5c, 0x56, 0x31, 0xea,
   880  	0x02, 0x19, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a,
   881  	0x3a, 0x47, 0x6b, 0x65, 0x48, 0x75, 0x62, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f,
   882  	0x74, 0x6f, 0x33,
   883  }
   884  
   885  var (
   886  	file_google_cloud_gkehub_v1_feature_proto_rawDescOnce sync.Once
   887  	file_google_cloud_gkehub_v1_feature_proto_rawDescData = file_google_cloud_gkehub_v1_feature_proto_rawDesc
   888  )
   889  
   890  func file_google_cloud_gkehub_v1_feature_proto_rawDescGZIP() []byte {
   891  	file_google_cloud_gkehub_v1_feature_proto_rawDescOnce.Do(func() {
   892  		file_google_cloud_gkehub_v1_feature_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_gkehub_v1_feature_proto_rawDescData)
   893  	})
   894  	return file_google_cloud_gkehub_v1_feature_proto_rawDescData
   895  }
   896  
   897  var file_google_cloud_gkehub_v1_feature_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
   898  var file_google_cloud_gkehub_v1_feature_proto_msgTypes = make([]protoimpl.MessageInfo, 10)
   899  var file_google_cloud_gkehub_v1_feature_proto_goTypes = []interface{}{
   900  	(FeatureResourceState_State)(0), // 0: google.cloud.gkehub.v1.FeatureResourceState.State
   901  	(FeatureState_Code)(0),          // 1: google.cloud.gkehub.v1.FeatureState.Code
   902  	(*Feature)(nil),                 // 2: google.cloud.gkehub.v1.Feature
   903  	(*FeatureResourceState)(nil),    // 3: google.cloud.gkehub.v1.FeatureResourceState
   904  	(*FeatureState)(nil),            // 4: google.cloud.gkehub.v1.FeatureState
   905  	(*CommonFeatureSpec)(nil),       // 5: google.cloud.gkehub.v1.CommonFeatureSpec
   906  	(*CommonFeatureState)(nil),      // 6: google.cloud.gkehub.v1.CommonFeatureState
   907  	(*MembershipFeatureSpec)(nil),   // 7: google.cloud.gkehub.v1.MembershipFeatureSpec
   908  	(*MembershipFeatureState)(nil),  // 8: google.cloud.gkehub.v1.MembershipFeatureState
   909  	nil,                             // 9: google.cloud.gkehub.v1.Feature.LabelsEntry
   910  	nil,                             // 10: google.cloud.gkehub.v1.Feature.MembershipSpecsEntry
   911  	nil,                             // 11: google.cloud.gkehub.v1.Feature.MembershipStatesEntry
   912  	(*timestamppb.Timestamp)(nil),   // 12: google.protobuf.Timestamp
   913  	(*v1.FeatureSpec)(nil),          // 13: google.cloud.gkehub.multiclusteringress.v1.FeatureSpec
   914  	(*v11.MembershipSpec)(nil),      // 14: google.cloud.gkehub.configmanagement.v1.MembershipSpec
   915  	(*v11.MembershipState)(nil),     // 15: google.cloud.gkehub.configmanagement.v1.MembershipState
   916  }
   917  var file_google_cloud_gkehub_v1_feature_proto_depIdxs = []int32{
   918  	9,  // 0: google.cloud.gkehub.v1.Feature.labels:type_name -> google.cloud.gkehub.v1.Feature.LabelsEntry
   919  	3,  // 1: google.cloud.gkehub.v1.Feature.resource_state:type_name -> google.cloud.gkehub.v1.FeatureResourceState
   920  	5,  // 2: google.cloud.gkehub.v1.Feature.spec:type_name -> google.cloud.gkehub.v1.CommonFeatureSpec
   921  	10, // 3: google.cloud.gkehub.v1.Feature.membership_specs:type_name -> google.cloud.gkehub.v1.Feature.MembershipSpecsEntry
   922  	6,  // 4: google.cloud.gkehub.v1.Feature.state:type_name -> google.cloud.gkehub.v1.CommonFeatureState
   923  	11, // 5: google.cloud.gkehub.v1.Feature.membership_states:type_name -> google.cloud.gkehub.v1.Feature.MembershipStatesEntry
   924  	12, // 6: google.cloud.gkehub.v1.Feature.create_time:type_name -> google.protobuf.Timestamp
   925  	12, // 7: google.cloud.gkehub.v1.Feature.update_time:type_name -> google.protobuf.Timestamp
   926  	12, // 8: google.cloud.gkehub.v1.Feature.delete_time:type_name -> google.protobuf.Timestamp
   927  	0,  // 9: google.cloud.gkehub.v1.FeatureResourceState.state:type_name -> google.cloud.gkehub.v1.FeatureResourceState.State
   928  	1,  // 10: google.cloud.gkehub.v1.FeatureState.code:type_name -> google.cloud.gkehub.v1.FeatureState.Code
   929  	12, // 11: google.cloud.gkehub.v1.FeatureState.update_time:type_name -> google.protobuf.Timestamp
   930  	13, // 12: google.cloud.gkehub.v1.CommonFeatureSpec.multiclusteringress:type_name -> google.cloud.gkehub.multiclusteringress.v1.FeatureSpec
   931  	4,  // 13: google.cloud.gkehub.v1.CommonFeatureState.state:type_name -> google.cloud.gkehub.v1.FeatureState
   932  	14, // 14: google.cloud.gkehub.v1.MembershipFeatureSpec.configmanagement:type_name -> google.cloud.gkehub.configmanagement.v1.MembershipSpec
   933  	15, // 15: google.cloud.gkehub.v1.MembershipFeatureState.configmanagement:type_name -> google.cloud.gkehub.configmanagement.v1.MembershipState
   934  	4,  // 16: google.cloud.gkehub.v1.MembershipFeatureState.state:type_name -> google.cloud.gkehub.v1.FeatureState
   935  	7,  // 17: google.cloud.gkehub.v1.Feature.MembershipSpecsEntry.value:type_name -> google.cloud.gkehub.v1.MembershipFeatureSpec
   936  	8,  // 18: google.cloud.gkehub.v1.Feature.MembershipStatesEntry.value:type_name -> google.cloud.gkehub.v1.MembershipFeatureState
   937  	19, // [19:19] is the sub-list for method output_type
   938  	19, // [19:19] is the sub-list for method input_type
   939  	19, // [19:19] is the sub-list for extension type_name
   940  	19, // [19:19] is the sub-list for extension extendee
   941  	0,  // [0:19] is the sub-list for field type_name
   942  }
   943  
   944  func init() { file_google_cloud_gkehub_v1_feature_proto_init() }
   945  func file_google_cloud_gkehub_v1_feature_proto_init() {
   946  	if File_google_cloud_gkehub_v1_feature_proto != nil {
   947  		return
   948  	}
   949  	if !protoimpl.UnsafeEnabled {
   950  		file_google_cloud_gkehub_v1_feature_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
   951  			switch v := v.(*Feature); i {
   952  			case 0:
   953  				return &v.state
   954  			case 1:
   955  				return &v.sizeCache
   956  			case 2:
   957  				return &v.unknownFields
   958  			default:
   959  				return nil
   960  			}
   961  		}
   962  		file_google_cloud_gkehub_v1_feature_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
   963  			switch v := v.(*FeatureResourceState); i {
   964  			case 0:
   965  				return &v.state
   966  			case 1:
   967  				return &v.sizeCache
   968  			case 2:
   969  				return &v.unknownFields
   970  			default:
   971  				return nil
   972  			}
   973  		}
   974  		file_google_cloud_gkehub_v1_feature_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
   975  			switch v := v.(*FeatureState); i {
   976  			case 0:
   977  				return &v.state
   978  			case 1:
   979  				return &v.sizeCache
   980  			case 2:
   981  				return &v.unknownFields
   982  			default:
   983  				return nil
   984  			}
   985  		}
   986  		file_google_cloud_gkehub_v1_feature_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
   987  			switch v := v.(*CommonFeatureSpec); i {
   988  			case 0:
   989  				return &v.state
   990  			case 1:
   991  				return &v.sizeCache
   992  			case 2:
   993  				return &v.unknownFields
   994  			default:
   995  				return nil
   996  			}
   997  		}
   998  		file_google_cloud_gkehub_v1_feature_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
   999  			switch v := v.(*CommonFeatureState); i {
  1000  			case 0:
  1001  				return &v.state
  1002  			case 1:
  1003  				return &v.sizeCache
  1004  			case 2:
  1005  				return &v.unknownFields
  1006  			default:
  1007  				return nil
  1008  			}
  1009  		}
  1010  		file_google_cloud_gkehub_v1_feature_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1011  			switch v := v.(*MembershipFeatureSpec); i {
  1012  			case 0:
  1013  				return &v.state
  1014  			case 1:
  1015  				return &v.sizeCache
  1016  			case 2:
  1017  				return &v.unknownFields
  1018  			default:
  1019  				return nil
  1020  			}
  1021  		}
  1022  		file_google_cloud_gkehub_v1_feature_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1023  			switch v := v.(*MembershipFeatureState); i {
  1024  			case 0:
  1025  				return &v.state
  1026  			case 1:
  1027  				return &v.sizeCache
  1028  			case 2:
  1029  				return &v.unknownFields
  1030  			default:
  1031  				return nil
  1032  			}
  1033  		}
  1034  	}
  1035  	file_google_cloud_gkehub_v1_feature_proto_msgTypes[3].OneofWrappers = []interface{}{
  1036  		(*CommonFeatureSpec_Multiclusteringress)(nil),
  1037  	}
  1038  	file_google_cloud_gkehub_v1_feature_proto_msgTypes[5].OneofWrappers = []interface{}{
  1039  		(*MembershipFeatureSpec_Configmanagement)(nil),
  1040  	}
  1041  	file_google_cloud_gkehub_v1_feature_proto_msgTypes[6].OneofWrappers = []interface{}{
  1042  		(*MembershipFeatureState_Configmanagement)(nil),
  1043  	}
  1044  	type x struct{}
  1045  	out := protoimpl.TypeBuilder{
  1046  		File: protoimpl.DescBuilder{
  1047  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1048  			RawDescriptor: file_google_cloud_gkehub_v1_feature_proto_rawDesc,
  1049  			NumEnums:      2,
  1050  			NumMessages:   10,
  1051  			NumExtensions: 0,
  1052  			NumServices:   0,
  1053  		},
  1054  		GoTypes:           file_google_cloud_gkehub_v1_feature_proto_goTypes,
  1055  		DependencyIndexes: file_google_cloud_gkehub_v1_feature_proto_depIdxs,
  1056  		EnumInfos:         file_google_cloud_gkehub_v1_feature_proto_enumTypes,
  1057  		MessageInfos:      file_google_cloud_gkehub_v1_feature_proto_msgTypes,
  1058  	}.Build()
  1059  	File_google_cloud_gkehub_v1_feature_proto = out.File
  1060  	file_google_cloud_gkehub_v1_feature_proto_rawDesc = nil
  1061  	file_google_cloud_gkehub_v1_feature_proto_goTypes = nil
  1062  	file_google_cloud_gkehub_v1_feature_proto_depIdxs = nil
  1063  }
  1064  

View as plain text