| // Copyright 2023 Google LLC |
| // |
| // Licensed 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 protoc-gen-go. DO NOT EDIT. |
| // versions: |
| // protoc-gen-go v1.33.0 |
| // protoc v4.25.3 |
| // source: google/cloud/bigquery/datapolicies/v1/datapolicy.proto |
| |
| package datapoliciespb |
| |
| import ( |
| context "context" |
| reflect "reflect" |
| sync "sync" |
| |
| iampb "cloud.google.com/go/iam/apiv1/iampb" |
| _ "google.golang.org/genproto/googleapis/api/annotations" |
| grpc "google.golang.org/grpc" |
| codes "google.golang.org/grpc/codes" |
| status "google.golang.org/grpc/status" |
| protoreflect "google.golang.org/protobuf/reflect/protoreflect" |
| protoimpl "google.golang.org/protobuf/runtime/protoimpl" |
| emptypb "google.golang.org/protobuf/types/known/emptypb" |
| fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" |
| ) |
| |
| 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) |
| ) |
| |
| // A list of supported data policy types. |
| type DataPolicy_DataPolicyType int32 |
| |
| const ( |
| // Default value for the data policy type. This should not be used. |
| DataPolicy_DATA_POLICY_TYPE_UNSPECIFIED DataPolicy_DataPolicyType = 0 |
| // Used to create a data policy for column-level security, without data |
| // masking. |
| DataPolicy_COLUMN_LEVEL_SECURITY_POLICY DataPolicy_DataPolicyType = 3 |
| // Used to create a data policy for data masking. |
| DataPolicy_DATA_MASKING_POLICY DataPolicy_DataPolicyType = 2 |
| ) |
| |
| // Enum value maps for DataPolicy_DataPolicyType. |
| var ( |
| DataPolicy_DataPolicyType_name = map[int32]string{ |
| 0: "DATA_POLICY_TYPE_UNSPECIFIED", |
| 3: "COLUMN_LEVEL_SECURITY_POLICY", |
| 2: "DATA_MASKING_POLICY", |
| } |
| DataPolicy_DataPolicyType_value = map[string]int32{ |
| "DATA_POLICY_TYPE_UNSPECIFIED": 0, |
| "COLUMN_LEVEL_SECURITY_POLICY": 3, |
| "DATA_MASKING_POLICY": 2, |
| } |
| ) |
| |
| func (x DataPolicy_DataPolicyType) Enum() *DataPolicy_DataPolicyType { |
| p := new(DataPolicy_DataPolicyType) |
| *p = x |
| return p |
| } |
| |
| func (x DataPolicy_DataPolicyType) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (DataPolicy_DataPolicyType) Descriptor() protoreflect.EnumDescriptor { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_enumTypes[0].Descriptor() |
| } |
| |
| func (DataPolicy_DataPolicyType) Type() protoreflect.EnumType { |
| return &file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_enumTypes[0] |
| } |
| |
| func (x DataPolicy_DataPolicyType) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Use DataPolicy_DataPolicyType.Descriptor instead. |
| func (DataPolicy_DataPolicyType) EnumDescriptor() ([]byte, []int) { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescGZIP(), []int{7, 0} |
| } |
| |
| // The available masking rules. Learn more here: |
| // https://cloud.google.com/bigquery/docs/column-data-masking-intro#masking_options. |
| type DataMaskingPolicy_PredefinedExpression int32 |
| |
| const ( |
| // Default, unspecified predefined expression. No masking will take place |
| // since no expression is specified. |
| DataMaskingPolicy_PREDEFINED_EXPRESSION_UNSPECIFIED DataMaskingPolicy_PredefinedExpression = 0 |
| // Masking expression to replace data with SHA-256 hash. |
| DataMaskingPolicy_SHA256 DataMaskingPolicy_PredefinedExpression = 3 |
| // Masking expression to replace data with NULLs. |
| DataMaskingPolicy_ALWAYS_NULL DataMaskingPolicy_PredefinedExpression = 5 |
| // Masking expression to replace data with their default masking values. |
| // The default masking values for each type listed as below: |
| // |
| // * STRING: "" |
| // * BYTES: b” |
| // * INTEGER: 0 |
| // * FLOAT: 0.0 |
| // * NUMERIC: 0 |
| // * BOOLEAN: FALSE |
| // * TIMESTAMP: 1970-01-01 00:00:00 UTC |
| // * DATE: 1970-01-01 |
| // * TIME: 00:00:00 |
| // * DATETIME: 1970-01-01T00:00:00 |
| // * GEOGRAPHY: POINT(0 0) |
| // * BIGNUMERIC: 0 |
| // * ARRAY: [] |
| // * STRUCT: NOT_APPLICABLE |
| // * JSON: NULL |
| DataMaskingPolicy_DEFAULT_MASKING_VALUE DataMaskingPolicy_PredefinedExpression = 7 |
| // Masking expression shows the last four characters of text. |
| // The masking behavior is as follows: |
| // |
| // * If text length > 4 characters: Replace text with XXXXX, append last |
| // four characters of original text. |
| // * If text length <= 4 characters: Apply SHA-256 hash. |
| DataMaskingPolicy_LAST_FOUR_CHARACTERS DataMaskingPolicy_PredefinedExpression = 9 |
| // Masking expression shows the first four characters of text. |
| // The masking behavior is as follows: |
| // |
| // * If text length > 4 characters: Replace text with XXXXX, prepend first |
| // four characters of original text. |
| // * If text length <= 4 characters: Apply SHA-256 hash. |
| DataMaskingPolicy_FIRST_FOUR_CHARACTERS DataMaskingPolicy_PredefinedExpression = 10 |
| // Masking expression for email addresses. |
| // The masking behavior is as follows: |
| // |
| // * Syntax-valid email address: Replace username with XXXXX. For example, |
| // cloudysanfrancisco@gmail.com becomes XXXXX@gmail.com. |
| // * Syntax-invalid email address: Apply SHA-256 hash. |
| // |
| // For more information, see [Email |
| // mask](https://cloud.google.com/bigquery/docs/column-data-masking-intro#masking_options). |
| DataMaskingPolicy_EMAIL_MASK DataMaskingPolicy_PredefinedExpression = 12 |
| // Masking expression to only show the year of `Date`, |
| // `DateTime` and `TimeStamp`. For example, with the |
| // year 2076: |
| // |
| // * DATE : 2076-01-01 |
| // * DATETIME : 2076-01-01T00:00:00 |
| // * TIMESTAMP : 2076-01-01 00:00:00 UTC |
| // |
| // Truncation occurs according to the UTC time zone. To change this, adjust |
| // the default time zone using the `time_zone` system variable. |
| // For more information, see the <a |
| // href="https://cloud.google.com/bigquery/docs/reference/system-variables">System |
| // variables reference</a>. |
| DataMaskingPolicy_DATE_YEAR_MASK DataMaskingPolicy_PredefinedExpression = 13 |
| ) |
| |
| // Enum value maps for DataMaskingPolicy_PredefinedExpression. |
| var ( |
| DataMaskingPolicy_PredefinedExpression_name = map[int32]string{ |
| 0: "PREDEFINED_EXPRESSION_UNSPECIFIED", |
| 3: "SHA256", |
| 5: "ALWAYS_NULL", |
| 7: "DEFAULT_MASKING_VALUE", |
| 9: "LAST_FOUR_CHARACTERS", |
| 10: "FIRST_FOUR_CHARACTERS", |
| 12: "EMAIL_MASK", |
| 13: "DATE_YEAR_MASK", |
| } |
| DataMaskingPolicy_PredefinedExpression_value = map[string]int32{ |
| "PREDEFINED_EXPRESSION_UNSPECIFIED": 0, |
| "SHA256": 3, |
| "ALWAYS_NULL": 5, |
| "DEFAULT_MASKING_VALUE": 7, |
| "LAST_FOUR_CHARACTERS": 9, |
| "FIRST_FOUR_CHARACTERS": 10, |
| "EMAIL_MASK": 12, |
| "DATE_YEAR_MASK": 13, |
| } |
| ) |
| |
| func (x DataMaskingPolicy_PredefinedExpression) Enum() *DataMaskingPolicy_PredefinedExpression { |
| p := new(DataMaskingPolicy_PredefinedExpression) |
| *p = x |
| return p |
| } |
| |
| func (x DataMaskingPolicy_PredefinedExpression) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (DataMaskingPolicy_PredefinedExpression) Descriptor() protoreflect.EnumDescriptor { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_enumTypes[1].Descriptor() |
| } |
| |
| func (DataMaskingPolicy_PredefinedExpression) Type() protoreflect.EnumType { |
| return &file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_enumTypes[1] |
| } |
| |
| func (x DataMaskingPolicy_PredefinedExpression) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Use DataMaskingPolicy_PredefinedExpression.Descriptor instead. |
| func (DataMaskingPolicy_PredefinedExpression) EnumDescriptor() ([]byte, []int) { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescGZIP(), []int{8, 0} |
| } |
| |
| // Request message for the CreateDataPolicy method. |
| type CreateDataPolicyRequest struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Required. Resource name of the project that the data policy will belong to. |
| // The format is `projects/{project_number}/locations/{location_id}`. |
| Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` |
| // Required. The data policy to create. The `name` field does not need to be |
| // provided for the data policy creation. |
| DataPolicy *DataPolicy `protobuf:"bytes,2,opt,name=data_policy,json=dataPolicy,proto3" json:"data_policy,omitempty"` |
| } |
| |
| func (x *CreateDataPolicyRequest) Reset() { |
| *x = CreateDataPolicyRequest{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[0] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *CreateDataPolicyRequest) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*CreateDataPolicyRequest) ProtoMessage() {} |
| |
| func (x *CreateDataPolicyRequest) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_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 CreateDataPolicyRequest.ProtoReflect.Descriptor instead. |
| func (*CreateDataPolicyRequest) Descriptor() ([]byte, []int) { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescGZIP(), []int{0} |
| } |
| |
| func (x *CreateDataPolicyRequest) GetParent() string { |
| if x != nil { |
| return x.Parent |
| } |
| return "" |
| } |
| |
| func (x *CreateDataPolicyRequest) GetDataPolicy() *DataPolicy { |
| if x != nil { |
| return x.DataPolicy |
| } |
| return nil |
| } |
| |
| // Response message for the UpdateDataPolicy method. |
| type UpdateDataPolicyRequest struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Required. Update the data policy's metadata. |
| // |
| // The target data policy is determined by the `name` field. |
| // Other fields are updated to the specified values based on the field masks. |
| DataPolicy *DataPolicy `protobuf:"bytes,1,opt,name=data_policy,json=dataPolicy,proto3" json:"data_policy,omitempty"` |
| // The update mask applies to the resource. For the `FieldMask` definition, |
| // see |
| // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask |
| // If not set, defaults to all of the fields that are allowed to update. |
| // |
| // Updates to the `name` and `dataPolicyId` fields are not allowed. |
| UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` |
| } |
| |
| func (x *UpdateDataPolicyRequest) Reset() { |
| *x = UpdateDataPolicyRequest{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[1] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *UpdateDataPolicyRequest) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*UpdateDataPolicyRequest) ProtoMessage() {} |
| |
| func (x *UpdateDataPolicyRequest) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_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 UpdateDataPolicyRequest.ProtoReflect.Descriptor instead. |
| func (*UpdateDataPolicyRequest) Descriptor() ([]byte, []int) { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescGZIP(), []int{1} |
| } |
| |
| func (x *UpdateDataPolicyRequest) GetDataPolicy() *DataPolicy { |
| if x != nil { |
| return x.DataPolicy |
| } |
| return nil |
| } |
| |
| func (x *UpdateDataPolicyRequest) GetUpdateMask() *fieldmaskpb.FieldMask { |
| if x != nil { |
| return x.UpdateMask |
| } |
| return nil |
| } |
| |
| // Request message for the RenameDataPolicy method. |
| type RenameDataPolicyRequest struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Required. Resource name of the data policy to rename. The format is |
| // `projects/{project_number}/locations/{location_id}/dataPolicies/{data_policy_id}` |
| Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` |
| // Required. The new data policy id. |
| NewDataPolicyId string `protobuf:"bytes,2,opt,name=new_data_policy_id,json=newDataPolicyId,proto3" json:"new_data_policy_id,omitempty"` |
| } |
| |
| func (x *RenameDataPolicyRequest) Reset() { |
| *x = RenameDataPolicyRequest{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[2] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *RenameDataPolicyRequest) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*RenameDataPolicyRequest) ProtoMessage() {} |
| |
| func (x *RenameDataPolicyRequest) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_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 RenameDataPolicyRequest.ProtoReflect.Descriptor instead. |
| func (*RenameDataPolicyRequest) Descriptor() ([]byte, []int) { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescGZIP(), []int{2} |
| } |
| |
| func (x *RenameDataPolicyRequest) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| func (x *RenameDataPolicyRequest) GetNewDataPolicyId() string { |
| if x != nil { |
| return x.NewDataPolicyId |
| } |
| return "" |
| } |
| |
| // Request message for the DeleteDataPolicy method. |
| type DeleteDataPolicyRequest struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Required. Resource name of the data policy to delete. Format is |
| // `projects/{project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`. |
| Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` |
| } |
| |
| func (x *DeleteDataPolicyRequest) Reset() { |
| *x = DeleteDataPolicyRequest{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[3] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *DeleteDataPolicyRequest) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*DeleteDataPolicyRequest) ProtoMessage() {} |
| |
| func (x *DeleteDataPolicyRequest) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_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 DeleteDataPolicyRequest.ProtoReflect.Descriptor instead. |
| func (*DeleteDataPolicyRequest) Descriptor() ([]byte, []int) { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescGZIP(), []int{3} |
| } |
| |
| func (x *DeleteDataPolicyRequest) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| // Request message for the GetDataPolicy method. |
| type GetDataPolicyRequest struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Required. Resource name of the requested data policy. Format is |
| // `projects/{project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`. |
| Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` |
| } |
| |
| func (x *GetDataPolicyRequest) Reset() { |
| *x = GetDataPolicyRequest{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[4] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *GetDataPolicyRequest) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*GetDataPolicyRequest) ProtoMessage() {} |
| |
| func (x *GetDataPolicyRequest) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_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 GetDataPolicyRequest.ProtoReflect.Descriptor instead. |
| func (*GetDataPolicyRequest) Descriptor() ([]byte, []int) { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescGZIP(), []int{4} |
| } |
| |
| func (x *GetDataPolicyRequest) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| // Request message for the ListDataPolicies method. |
| type ListDataPoliciesRequest struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Required. Resource name of the project for which to list data policies. |
| // Format is `projects/{project_number}/locations/{location_id}`. |
| Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` |
| // The maximum number of data policies to return. Must be a value between 1 |
| // and 1000. |
| // If not set, defaults to 50. |
| PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` |
| // The `nextPageToken` value returned from a previous list request, if any. If |
| // not set, defaults to an empty string. |
| PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` |
| // Filters the data policies by policy tags that they |
| // are associated with. Currently filter only supports |
| // "policy<span></span>_tag" based filtering and OR based predicates. Sample |
| // filter can be "policy<span></span>_tag: |
| // projects/1/locations/us/taxonomies/2/policyTags/3". |
| // You may also use wildcard such as "policy<span></span>_tag: |
| // projects/1/locations/us/taxonomies/2*". Please note that OR predicates |
| // cannot be used with wildcard filters. |
| Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"` |
| } |
| |
| func (x *ListDataPoliciesRequest) Reset() { |
| *x = ListDataPoliciesRequest{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[5] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *ListDataPoliciesRequest) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*ListDataPoliciesRequest) ProtoMessage() {} |
| |
| func (x *ListDataPoliciesRequest) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_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 ListDataPoliciesRequest.ProtoReflect.Descriptor instead. |
| func (*ListDataPoliciesRequest) Descriptor() ([]byte, []int) { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescGZIP(), []int{5} |
| } |
| |
| func (x *ListDataPoliciesRequest) GetParent() string { |
| if x != nil { |
| return x.Parent |
| } |
| return "" |
| } |
| |
| func (x *ListDataPoliciesRequest) GetPageSize() int32 { |
| if x != nil { |
| return x.PageSize |
| } |
| return 0 |
| } |
| |
| func (x *ListDataPoliciesRequest) GetPageToken() string { |
| if x != nil { |
| return x.PageToken |
| } |
| return "" |
| } |
| |
| func (x *ListDataPoliciesRequest) GetFilter() string { |
| if x != nil { |
| return x.Filter |
| } |
| return "" |
| } |
| |
| // Response message for the ListDataPolicies method. |
| type ListDataPoliciesResponse struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Data policies that belong to the requested project. |
| DataPolicies []*DataPolicy `protobuf:"bytes,1,rep,name=data_policies,json=dataPolicies,proto3" json:"data_policies,omitempty"` |
| // Token used to retrieve the next page of results, or empty if there are no |
| // more results. |
| NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` |
| } |
| |
| func (x *ListDataPoliciesResponse) Reset() { |
| *x = ListDataPoliciesResponse{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[6] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *ListDataPoliciesResponse) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*ListDataPoliciesResponse) ProtoMessage() {} |
| |
| func (x *ListDataPoliciesResponse) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_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 ListDataPoliciesResponse.ProtoReflect.Descriptor instead. |
| func (*ListDataPoliciesResponse) Descriptor() ([]byte, []int) { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescGZIP(), []int{6} |
| } |
| |
| func (x *ListDataPoliciesResponse) GetDataPolicies() []*DataPolicy { |
| if x != nil { |
| return x.DataPolicies |
| } |
| return nil |
| } |
| |
| func (x *ListDataPoliciesResponse) GetNextPageToken() string { |
| if x != nil { |
| return x.NextPageToken |
| } |
| return "" |
| } |
| |
| // Represents the label-policy binding. |
| type DataPolicy struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Label that is bound to this data policy. |
| // |
| // Types that are assignable to MatchingLabel: |
| // |
| // *DataPolicy_PolicyTag |
| MatchingLabel isDataPolicy_MatchingLabel `protobuf_oneof:"matching_label"` |
| // The policy that is bound to this data policy. |
| // |
| // Types that are assignable to Policy: |
| // |
| // *DataPolicy_DataMaskingPolicy |
| Policy isDataPolicy_Policy `protobuf_oneof:"policy"` |
| // Output only. Resource name of this data policy, in the format of |
| // `projects/{project_number}/locations/{location_id}/dataPolicies/{data_policy_id}`. |
| Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` |
| // Type of data policy. |
| DataPolicyType DataPolicy_DataPolicyType `protobuf:"varint,2,opt,name=data_policy_type,json=dataPolicyType,proto3,enum=google.cloud.bigquery.datapolicies.v1.DataPolicy_DataPolicyType" json:"data_policy_type,omitempty"` |
| // User-assigned (human readable) ID of the data policy that needs to be |
| // unique within a project. Used as {data_policy_id} in part of the resource |
| // name. |
| DataPolicyId string `protobuf:"bytes,3,opt,name=data_policy_id,json=dataPolicyId,proto3" json:"data_policy_id,omitempty"` |
| } |
| |
| func (x *DataPolicy) Reset() { |
| *x = DataPolicy{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[7] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *DataPolicy) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*DataPolicy) ProtoMessage() {} |
| |
| func (x *DataPolicy) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_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 DataPolicy.ProtoReflect.Descriptor instead. |
| func (*DataPolicy) Descriptor() ([]byte, []int) { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescGZIP(), []int{7} |
| } |
| |
| func (m *DataPolicy) GetMatchingLabel() isDataPolicy_MatchingLabel { |
| if m != nil { |
| return m.MatchingLabel |
| } |
| return nil |
| } |
| |
| func (x *DataPolicy) GetPolicyTag() string { |
| if x, ok := x.GetMatchingLabel().(*DataPolicy_PolicyTag); ok { |
| return x.PolicyTag |
| } |
| return "" |
| } |
| |
| func (m *DataPolicy) GetPolicy() isDataPolicy_Policy { |
| if m != nil { |
| return m.Policy |
| } |
| return nil |
| } |
| |
| func (x *DataPolicy) GetDataMaskingPolicy() *DataMaskingPolicy { |
| if x, ok := x.GetPolicy().(*DataPolicy_DataMaskingPolicy); ok { |
| return x.DataMaskingPolicy |
| } |
| return nil |
| } |
| |
| func (x *DataPolicy) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| func (x *DataPolicy) GetDataPolicyType() DataPolicy_DataPolicyType { |
| if x != nil { |
| return x.DataPolicyType |
| } |
| return DataPolicy_DATA_POLICY_TYPE_UNSPECIFIED |
| } |
| |
| func (x *DataPolicy) GetDataPolicyId() string { |
| if x != nil { |
| return x.DataPolicyId |
| } |
| return "" |
| } |
| |
| type isDataPolicy_MatchingLabel interface { |
| isDataPolicy_MatchingLabel() |
| } |
| |
| type DataPolicy_PolicyTag struct { |
| // Policy tag resource name, in the format of |
| // `projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}/policyTags/{policyTag_id}`. |
| PolicyTag string `protobuf:"bytes,4,opt,name=policy_tag,json=policyTag,proto3,oneof"` |
| } |
| |
| func (*DataPolicy_PolicyTag) isDataPolicy_MatchingLabel() {} |
| |
| type isDataPolicy_Policy interface { |
| isDataPolicy_Policy() |
| } |
| |
| type DataPolicy_DataMaskingPolicy struct { |
| // The data masking policy that specifies the data masking rule to use. |
| DataMaskingPolicy *DataMaskingPolicy `protobuf:"bytes,5,opt,name=data_masking_policy,json=dataMaskingPolicy,proto3,oneof"` |
| } |
| |
| func (*DataPolicy_DataMaskingPolicy) isDataPolicy_Policy() {} |
| |
| // The data masking policy that is used to specify data masking rule. |
| type DataMaskingPolicy struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // A masking expression to bind to the data masking rule. |
| // |
| // Types that are assignable to MaskingExpression: |
| // |
| // *DataMaskingPolicy_PredefinedExpression_ |
| // *DataMaskingPolicy_Routine |
| MaskingExpression isDataMaskingPolicy_MaskingExpression `protobuf_oneof:"masking_expression"` |
| } |
| |
| func (x *DataMaskingPolicy) Reset() { |
| *x = DataMaskingPolicy{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[8] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *DataMaskingPolicy) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*DataMaskingPolicy) ProtoMessage() {} |
| |
| func (x *DataMaskingPolicy) ProtoReflect() protoreflect.Message { |
| mi := &file_google_cloud_bigquery_datapolicies_v1_datapolicy_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 DataMaskingPolicy.ProtoReflect.Descriptor instead. |
| func (*DataMaskingPolicy) Descriptor() ([]byte, []int) { |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescGZIP(), []int{8} |
| } |
| |
| func (m *DataMaskingPolicy) GetMaskingExpression() isDataMaskingPolicy_MaskingExpression { |
| if m != nil { |
| return m.MaskingExpression |
| } |
| return nil |
| } |
| |
| func (x *DataMaskingPolicy) GetPredefinedExpression() DataMaskingPolicy_PredefinedExpression { |
| if x, ok := x.GetMaskingExpression().(*DataMaskingPolicy_PredefinedExpression_); ok { |
| return x.PredefinedExpression |
| } |
| return DataMaskingPolicy_PREDEFINED_EXPRESSION_UNSPECIFIED |
| } |
| |
| func (x *DataMaskingPolicy) GetRoutine() string { |
| if x, ok := x.GetMaskingExpression().(*DataMaskingPolicy_Routine); ok { |
| return x.Routine |
| } |
| return "" |
| } |
| |
| type isDataMaskingPolicy_MaskingExpression interface { |
| isDataMaskingPolicy_MaskingExpression() |
| } |
| |
| type DataMaskingPolicy_PredefinedExpression_ struct { |
| // A predefined masking expression. |
| PredefinedExpression DataMaskingPolicy_PredefinedExpression `protobuf:"varint,1,opt,name=predefined_expression,json=predefinedExpression,proto3,enum=google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy_PredefinedExpression,oneof"` |
| } |
| |
| type DataMaskingPolicy_Routine struct { |
| // The name of the BigQuery routine that contains the custom masking |
| // routine, in the format of |
| // `projects/{project_number}/datasets/{dataset_id}/routines/{routine_id}`. |
| Routine string `protobuf:"bytes,3,opt,name=routine,proto3,oneof"` |
| } |
| |
| func (*DataMaskingPolicy_PredefinedExpression_) isDataMaskingPolicy_MaskingExpression() {} |
| |
| func (*DataMaskingPolicy_Routine) isDataMaskingPolicy_MaskingExpression() {} |
| |
| var File_google_cloud_bigquery_datapolicies_v1_datapolicy_proto protoreflect.FileDescriptor |
| |
| var file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDesc = []byte{ |
| 0x0a, 0x36, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x62, |
| 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, |
| 0x63, 0x69, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, |
| 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x25, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, |
| 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, |
| 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x1a, |
| 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, |
| 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, |
| 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, |
| 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, |
| 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, |
| 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, |
| 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, |
| 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x69, 0x61, 0x6d, 0x2f, 0x76, |
| 0x31, 0x2f, 0x69, 0x61, 0x6d, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, |
| 0x74, 0x6f, 0x1a, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x69, 0x61, 0x6d, 0x2f, 0x76, |
| 0x31, 0x2f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, |
| 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, |
| 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, |
| 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, |
| 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc0, 0x01, |
| 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, |
| 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4c, 0x0a, 0x06, 0x70, 0x61, 0x72, |
| 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x34, 0xe0, 0x41, 0x02, 0xfa, 0x41, |
| 0x2e, 0x12, 0x2c, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x64, 0x61, 0x74, 0x61, 0x70, |
| 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, |
| 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, |
| 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x57, 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x5f, |
| 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, |
| 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, |
| 0x75, 0x65, 0x72, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, |
| 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x42, |
| 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, |
| 0x22, 0xaf, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x50, |
| 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x57, 0x0a, 0x0b, |
| 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, |
| 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, |
| 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, |
| 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, |
| 0x6c, 0x69, 0x63, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x50, |
| 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, |
| 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, |
| 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, |
| 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, |
| 0x73, 0x6b, 0x22, 0x64, 0x0a, 0x17, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, |
| 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, |
| 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, |
| 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x12, 0x6e, 0x65, 0x77, 0x5f, 0x64, 0x61, |
| 0x74, 0x61, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, |
| 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x6e, 0x65, 0x77, 0x44, 0x61, 0x74, 0x61, |
| 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x22, 0x63, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, |
| 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, |
| 0x65, 0x73, 0x74, 0x12, 0x48, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, |
| 0x09, 0x42, 0x34, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2e, 0x0a, 0x2c, 0x62, 0x69, 0x67, 0x71, 0x75, |
| 0x65, 0x72, 0x79, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x67, 0x6f, |
| 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x61, 0x74, |
| 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x60, 0x0a, |
| 0x14, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, |
| 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x48, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, |
| 0x01, 0x28, 0x09, 0x42, 0x34, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2e, 0x0a, 0x2c, 0x62, 0x69, 0x67, |
| 0x71, 0x75, 0x65, 0x72, 0x79, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, |
| 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, |
| 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, |
| 0xbb, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, |
| 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4c, 0x0a, 0x06, 0x70, |
| 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x34, 0xe0, 0x41, 0x02, |
| 0xfa, 0x41, 0x2e, 0x12, 0x2c, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x64, 0x61, 0x74, |
| 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, |
| 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, |
| 0x79, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, |
| 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, |
| 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, |
| 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, |
| 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, |
| 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x9a, 0x01, |
| 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, |
| 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x0d, 0x64, 0x61, |
| 0x74, 0x61, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, |
| 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, |
| 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, |
| 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, |
| 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, |
| 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, |
| 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, |
| 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xc6, 0x04, 0x0a, 0x0a, 0x44, |
| 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x1f, 0x0a, 0x0a, 0x70, 0x6f, 0x6c, |
| 0x69, 0x63, 0x79, 0x5f, 0x74, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, |
| 0x09, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x54, 0x61, 0x67, 0x12, 0x6a, 0x0a, 0x13, 0x64, 0x61, |
| 0x74, 0x61, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, |
| 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, |
| 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, |
| 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, |
| 0x44, 0x61, 0x74, 0x61, 0x4d, 0x61, 0x73, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x69, 0x63, |
| 0x79, 0x48, 0x01, 0x52, 0x11, 0x64, 0x61, 0x74, 0x61, 0x4d, 0x61, 0x73, 0x6b, 0x69, 0x6e, 0x67, |
| 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, |
| 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, |
| 0x6a, 0x0a, 0x10, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x74, |
| 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, |
| 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, |
| 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x76, |
| 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x44, 0x61, 0x74, |
| 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0e, 0x64, 0x61, 0x74, |
| 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x64, |
| 0x61, 0x74, 0x61, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, |
| 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, |
| 0x64, 0x22, 0x6d, 0x0a, 0x0e, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x54, |
| 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x50, 0x4f, 0x4c, 0x49, |
| 0x43, 0x59, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, |
| 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x4f, 0x4c, 0x55, 0x4d, 0x4e, 0x5f, |
| 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x53, 0x45, 0x43, 0x55, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x50, |
| 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x10, 0x03, 0x12, 0x17, 0x0a, 0x13, 0x44, 0x41, 0x54, 0x41, 0x5f, |
| 0x4d, 0x41, 0x53, 0x4b, 0x49, 0x4e, 0x47, 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x10, 0x02, |
| 0x3a, 0x75, 0xea, 0x41, 0x72, 0x0a, 0x2c, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x64, |
| 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, |
| 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, |
| 0x69, 0x63, 0x79, 0x12, 0x42, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, |
| 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, |
| 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x64, 0x61, 0x74, |
| 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x5f, |
| 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x7d, 0x42, 0x10, 0x0a, 0x0e, 0x6d, 0x61, 0x74, 0x63, 0x68, |
| 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x42, 0x08, 0x0a, 0x06, 0x70, 0x6f, 0x6c, |
| 0x69, 0x63, 0x79, 0x22, 0x9d, 0x03, 0x0a, 0x11, 0x44, 0x61, 0x74, 0x61, 0x4d, 0x61, 0x73, 0x6b, |
| 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x84, 0x01, 0x0a, 0x15, 0x70, 0x72, |
| 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, |
| 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x4d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, |
| 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, |
| 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x76, |
| 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x4d, 0x61, 0x73, 0x6b, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x6c, |
| 0x69, 0x63, 0x79, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x45, 0x78, |
| 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x14, 0x70, 0x72, 0x65, 0x64, |
| 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, |
| 0x12, 0x1a, 0x0a, 0x07, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, |
| 0x09, 0x48, 0x00, 0x52, 0x07, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x65, 0x22, 0xce, 0x01, 0x0a, |
| 0x14, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x45, 0x78, 0x70, 0x72, 0x65, |
| 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x21, 0x50, 0x52, 0x45, 0x44, 0x45, 0x46, 0x49, |
| 0x4e, 0x45, 0x44, 0x5f, 0x45, 0x58, 0x50, 0x52, 0x45, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x55, |
| 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, |
| 0x53, 0x48, 0x41, 0x32, 0x35, 0x36, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x4c, 0x57, 0x41, |
| 0x59, 0x53, 0x5f, 0x4e, 0x55, 0x4c, 0x4c, 0x10, 0x05, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x45, 0x46, |
| 0x41, 0x55, 0x4c, 0x54, 0x5f, 0x4d, 0x41, 0x53, 0x4b, 0x49, 0x4e, 0x47, 0x5f, 0x56, 0x41, 0x4c, |
| 0x55, 0x45, 0x10, 0x07, 0x12, 0x18, 0x0a, 0x14, 0x4c, 0x41, 0x53, 0x54, 0x5f, 0x46, 0x4f, 0x55, |
| 0x52, 0x5f, 0x43, 0x48, 0x41, 0x52, 0x41, 0x43, 0x54, 0x45, 0x52, 0x53, 0x10, 0x09, 0x12, 0x19, |
| 0x0a, 0x15, 0x46, 0x49, 0x52, 0x53, 0x54, 0x5f, 0x46, 0x4f, 0x55, 0x52, 0x5f, 0x43, 0x48, 0x41, |
| 0x52, 0x41, 0x43, 0x54, 0x45, 0x52, 0x53, 0x10, 0x0a, 0x12, 0x0e, 0x0a, 0x0a, 0x45, 0x4d, 0x41, |
| 0x49, 0x4c, 0x5f, 0x4d, 0x41, 0x53, 0x4b, 0x10, 0x0c, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x41, 0x54, |
| 0x45, 0x5f, 0x59, 0x45, 0x41, 0x52, 0x5f, 0x4d, 0x41, 0x53, 0x4b, 0x10, 0x0d, 0x42, 0x14, 0x0a, |
| 0x12, 0x6d, 0x61, 0x73, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x65, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73, |
| 0x69, 0x6f, 0x6e, 0x32, 0x90, 0x0f, 0x0a, 0x11, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, |
| 0x63, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xe1, 0x01, 0x0a, 0x10, 0x43, 0x72, |
| 0x65, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x3e, |
| 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, |
| 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, |
| 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, |
| 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, |
| 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, |
| 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, |
| 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, |
| 0x79, 0x22, 0x5a, 0xda, 0x41, 0x12, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x64, 0x61, 0x74, |
| 0x61, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3f, 0x3a, 0x0b, |
| 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0x30, 0x2f, 0x76, 0x31, |
| 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, |
| 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, |
| 0x2f, 0x64, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x12, 0xf2, 0x01, |
| 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, |
| 0x63, 0x79, 0x12, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, |
| 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, |
| 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, |
| 0x65, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, |
| 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, |
| 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, |
| 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x50, |
| 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0x6b, 0xda, 0x41, 0x17, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, |
| 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, |
| 0x6b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4b, 0x3a, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x6f, |
| 0x6c, 0x69, 0x63, 0x79, 0x32, 0x3c, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x64, 0x61, 0x74, 0x61, 0x5f, |
| 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, |
| 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, |
| 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2f, |
| 0x2a, 0x7d, 0x12, 0xe3, 0x01, 0x0a, 0x10, 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, |
| 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, |
| 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, |
| 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, |
| 0x52, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, |
| 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, |
| 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, |
| 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, |
| 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0x5c, 0xda, 0x41, 0x17, 0x6e, |
| 0x61, 0x6d, 0x65, 0x2c, 0x6e, 0x65, 0x77, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x70, 0x6f, 0x6c, |
| 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3c, 0x3a, 0x01, 0x2a, 0x22, |
| 0x37, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, |
| 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, |
| 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2f, 0x2a, |
| 0x7d, 0x3a, 0x72, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xab, 0x01, 0x0a, 0x10, 0x44, 0x65, 0x6c, |
| 0x65, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x3e, 0x2e, |
| 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, |
| 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, |
| 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x61, 0x74, 0x61, |
| 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, |
| 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, |
| 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x3f, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, |
| 0xe4, 0x93, 0x02, 0x32, 0x2a, 0x30, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, |
| 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, |
| 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, |
| 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xc0, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x44, 0x61, |
| 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, |
| 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, |
| 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, |
| 0x2e, 0x47, 0x65, 0x74, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, |
| 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, |
| 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x64, 0x61, |
| 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x61, |
| 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0x3f, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, |
| 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x12, 0x30, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, |
| 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, |
| 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x50, 0x6f, |
| 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0xd6, 0x01, 0x0a, 0x10, 0x4c, 0x69, |
| 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x12, 0x3e, |
| 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, |
| 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, |
| 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x50, |
| 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, |
| 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, |
| 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, |
| 0x69, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x50, |
| 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, |
| 0x41, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x32, |
| 0x12, 0x30, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, |
| 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, |
| 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, |
| 0x65, 0x73, 0x12, 0x97, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, |
| 0x69, 0x63, 0x79, 0x12, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, |
| 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, |
| 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, |
| 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0x4c, |
| 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x46, 0x3a, 0x01, 0x2a, 0x22, 0x41, 0x2f, 0x76, 0x31, 0x2f, 0x7b, |
| 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, |
| 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, |
| 0x64, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, |
| 0x67, 0x65, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x97, 0x01, 0x0a, |
| 0x0c, 0x53, 0x65, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x22, 0x2e, |
| 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, |
| 0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, |
| 0x74, 0x1a, 0x15, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, |
| 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0x4c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x46, |
| 0x3a, 0x01, 0x2a, 0x22, 0x41, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, |
| 0x63, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, |
| 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x50, 0x6f, |
| 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x73, 0x65, 0x74, 0x49, 0x61, 0x6d, |
| 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0xbd, 0x01, 0x0a, 0x12, 0x54, 0x65, 0x73, 0x74, 0x49, |
| 0x61, 0x6d, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x28, 0x2e, |
| 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, |
| 0x73, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, |
| 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, |
| 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x49, 0x61, 0x6d, 0x50, |
| 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, |
| 0x73, 0x65, 0x22, 0x52, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4c, 0x3a, 0x01, 0x2a, 0x22, 0x47, 0x2f, |
| 0x76, 0x31, 0x2f, 0x7b, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x3d, 0x70, 0x72, 0x6f, |
| 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, |
| 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, |
| 0x2f, 0x2a, 0x7d, 0x3a, 0x74, 0x65, 0x73, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x65, 0x72, 0x6d, 0x69, |
| 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x7e, 0xca, 0x41, 0x21, 0x62, 0x69, 0x67, 0x71, 0x75, |
| 0x65, 0x72, 0x79, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x67, 0x6f, |
| 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x57, 0x68, |
| 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, |
| 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x62, |
| 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, |
| 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, |
| 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, |
| 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0x89, 0x02, 0x0a, 0x29, 0x63, 0x6f, 0x6d, 0x2e, 0x67, |
| 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x62, 0x69, 0x67, 0x71, |
| 0x75, 0x65, 0x72, 0x79, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, |
| 0x73, 0x2e, 0x76, 0x31, 0x42, 0x0f, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, |
| 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, |
| 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x62, 0x69, 0x67, |
| 0x71, 0x75, 0x65, 0x72, 0x79, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, |
| 0x65, 0x73, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x31, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, |
| 0x69, 0x63, 0x69, 0x65, 0x73, 0x70, 0x62, 0x3b, 0x64, 0x61, 0x74, 0x61, 0x70, 0x6f, 0x6c, 0x69, |
| 0x63, 0x69, 0x65, 0x73, 0x70, 0x62, 0xaa, 0x02, 0x25, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, |
| 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x44, |
| 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2e, 0x56, 0x31, 0xca, 0x02, |
| 0x25, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x42, 0x69, |
| 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, |
| 0x69, 0x65, 0x73, 0x5c, 0x56, 0x31, 0xea, 0x02, 0x29, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, |
| 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x42, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, |
| 0x3a, 0x3a, 0x44, 0x61, 0x74, 0x61, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x3a, 0x3a, |
| 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, |
| } |
| |
| var ( |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescOnce sync.Once |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescData = file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDesc |
| ) |
| |
| func file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescGZIP() []byte { |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescOnce.Do(func() { |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescData) |
| }) |
| return file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDescData |
| } |
| |
| var file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_enumTypes = make([]protoimpl.EnumInfo, 2) |
| var file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes = make([]protoimpl.MessageInfo, 9) |
| var file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_goTypes = []interface{}{ |
| (DataPolicy_DataPolicyType)(0), // 0: google.cloud.bigquery.datapolicies.v1.DataPolicy.DataPolicyType |
| (DataMaskingPolicy_PredefinedExpression)(0), // 1: google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy.PredefinedExpression |
| (*CreateDataPolicyRequest)(nil), // 2: google.cloud.bigquery.datapolicies.v1.CreateDataPolicyRequest |
| (*UpdateDataPolicyRequest)(nil), // 3: google.cloud.bigquery.datapolicies.v1.UpdateDataPolicyRequest |
| (*RenameDataPolicyRequest)(nil), // 4: google.cloud.bigquery.datapolicies.v1.RenameDataPolicyRequest |
| (*DeleteDataPolicyRequest)(nil), // 5: google.cloud.bigquery.datapolicies.v1.DeleteDataPolicyRequest |
| (*GetDataPolicyRequest)(nil), // 6: google.cloud.bigquery.datapolicies.v1.GetDataPolicyRequest |
| (*ListDataPoliciesRequest)(nil), // 7: google.cloud.bigquery.datapolicies.v1.ListDataPoliciesRequest |
| (*ListDataPoliciesResponse)(nil), // 8: google.cloud.bigquery.datapolicies.v1.ListDataPoliciesResponse |
| (*DataPolicy)(nil), // 9: google.cloud.bigquery.datapolicies.v1.DataPolicy |
| (*DataMaskingPolicy)(nil), // 10: google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy |
| (*fieldmaskpb.FieldMask)(nil), // 11: google.protobuf.FieldMask |
| (*iampb.GetIamPolicyRequest)(nil), // 12: google.iam.v1.GetIamPolicyRequest |
| (*iampb.SetIamPolicyRequest)(nil), // 13: google.iam.v1.SetIamPolicyRequest |
| (*iampb.TestIamPermissionsRequest)(nil), // 14: google.iam.v1.TestIamPermissionsRequest |
| (*emptypb.Empty)(nil), // 15: google.protobuf.Empty |
| (*iampb.Policy)(nil), // 16: google.iam.v1.Policy |
| (*iampb.TestIamPermissionsResponse)(nil), // 17: google.iam.v1.TestIamPermissionsResponse |
| } |
| var file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_depIdxs = []int32{ |
| 9, // 0: google.cloud.bigquery.datapolicies.v1.CreateDataPolicyRequest.data_policy:type_name -> google.cloud.bigquery.datapolicies.v1.DataPolicy |
| 9, // 1: google.cloud.bigquery.datapolicies.v1.UpdateDataPolicyRequest.data_policy:type_name -> google.cloud.bigquery.datapolicies.v1.DataPolicy |
| 11, // 2: google.cloud.bigquery.datapolicies.v1.UpdateDataPolicyRequest.update_mask:type_name -> google.protobuf.FieldMask |
| 9, // 3: google.cloud.bigquery.datapolicies.v1.ListDataPoliciesResponse.data_policies:type_name -> google.cloud.bigquery.datapolicies.v1.DataPolicy |
| 10, // 4: google.cloud.bigquery.datapolicies.v1.DataPolicy.data_masking_policy:type_name -> google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy |
| 0, // 5: google.cloud.bigquery.datapolicies.v1.DataPolicy.data_policy_type:type_name -> google.cloud.bigquery.datapolicies.v1.DataPolicy.DataPolicyType |
| 1, // 6: google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy.predefined_expression:type_name -> google.cloud.bigquery.datapolicies.v1.DataMaskingPolicy.PredefinedExpression |
| 2, // 7: google.cloud.bigquery.datapolicies.v1.DataPolicyService.CreateDataPolicy:input_type -> google.cloud.bigquery.datapolicies.v1.CreateDataPolicyRequest |
| 3, // 8: google.cloud.bigquery.datapolicies.v1.DataPolicyService.UpdateDataPolicy:input_type -> google.cloud.bigquery.datapolicies.v1.UpdateDataPolicyRequest |
| 4, // 9: google.cloud.bigquery.datapolicies.v1.DataPolicyService.RenameDataPolicy:input_type -> google.cloud.bigquery.datapolicies.v1.RenameDataPolicyRequest |
| 5, // 10: google.cloud.bigquery.datapolicies.v1.DataPolicyService.DeleteDataPolicy:input_type -> google.cloud.bigquery.datapolicies.v1.DeleteDataPolicyRequest |
| 6, // 11: google.cloud.bigquery.datapolicies.v1.DataPolicyService.GetDataPolicy:input_type -> google.cloud.bigquery.datapolicies.v1.GetDataPolicyRequest |
| 7, // 12: google.cloud.bigquery.datapolicies.v1.DataPolicyService.ListDataPolicies:input_type -> google.cloud.bigquery.datapolicies.v1.ListDataPoliciesRequest |
| 12, // 13: google.cloud.bigquery.datapolicies.v1.DataPolicyService.GetIamPolicy:input_type -> google.iam.v1.GetIamPolicyRequest |
| 13, // 14: google.cloud.bigquery.datapolicies.v1.DataPolicyService.SetIamPolicy:input_type -> google.iam.v1.SetIamPolicyRequest |
| 14, // 15: google.cloud.bigquery.datapolicies.v1.DataPolicyService.TestIamPermissions:input_type -> google.iam.v1.TestIamPermissionsRequest |
| 9, // 16: google.cloud.bigquery.datapolicies.v1.DataPolicyService.CreateDataPolicy:output_type -> google.cloud.bigquery.datapolicies.v1.DataPolicy |
| 9, // 17: google.cloud.bigquery.datapolicies.v1.DataPolicyService.UpdateDataPolicy:output_type -> google.cloud.bigquery.datapolicies.v1.DataPolicy |
| 9, // 18: google.cloud.bigquery.datapolicies.v1.DataPolicyService.RenameDataPolicy:output_type -> google.cloud.bigquery.datapolicies.v1.DataPolicy |
| 15, // 19: google.cloud.bigquery.datapolicies.v1.DataPolicyService.DeleteDataPolicy:output_type -> google.protobuf.Empty |
| 9, // 20: google.cloud.bigquery.datapolicies.v1.DataPolicyService.GetDataPolicy:output_type -> google.cloud.bigquery.datapolicies.v1.DataPolicy |
| 8, // 21: google.cloud.bigquery.datapolicies.v1.DataPolicyService.ListDataPolicies:output_type -> google.cloud.bigquery.datapolicies.v1.ListDataPoliciesResponse |
| 16, // 22: google.cloud.bigquery.datapolicies.v1.DataPolicyService.GetIamPolicy:output_type -> google.iam.v1.Policy |
| 16, // 23: google.cloud.bigquery.datapolicies.v1.DataPolicyService.SetIamPolicy:output_type -> google.iam.v1.Policy |
| 17, // 24: google.cloud.bigquery.datapolicies.v1.DataPolicyService.TestIamPermissions:output_type -> google.iam.v1.TestIamPermissionsResponse |
| 16, // [16:25] is the sub-list for method output_type |
| 7, // [7:16] is the sub-list for method input_type |
| 7, // [7:7] is the sub-list for extension type_name |
| 7, // [7:7] is the sub-list for extension extendee |
| 0, // [0:7] is the sub-list for field type_name |
| } |
| |
| func init() { file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_init() } |
| func file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_init() { |
| if File_google_cloud_bigquery_datapolicies_v1_datapolicy_proto != nil { |
| return |
| } |
| if !protoimpl.UnsafeEnabled { |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*CreateDataPolicyRequest); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*UpdateDataPolicyRequest); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*RenameDataPolicyRequest); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*DeleteDataPolicyRequest); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*GetDataPolicyRequest); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*ListDataPoliciesRequest); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*ListDataPoliciesResponse); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*DataPolicy); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*DataMaskingPolicy); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| } |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[7].OneofWrappers = []interface{}{ |
| (*DataPolicy_PolicyTag)(nil), |
| (*DataPolicy_DataMaskingPolicy)(nil), |
| } |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes[8].OneofWrappers = []interface{}{ |
| (*DataMaskingPolicy_PredefinedExpression_)(nil), |
| (*DataMaskingPolicy_Routine)(nil), |
| } |
| type x struct{} |
| out := protoimpl.TypeBuilder{ |
| File: protoimpl.DescBuilder{ |
| GoPackagePath: reflect.TypeOf(x{}).PkgPath(), |
| RawDescriptor: file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDesc, |
| NumEnums: 2, |
| NumMessages: 9, |
| NumExtensions: 0, |
| NumServices: 1, |
| }, |
| GoTypes: file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_goTypes, |
| DependencyIndexes: file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_depIdxs, |
| EnumInfos: file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_enumTypes, |
| MessageInfos: file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_msgTypes, |
| }.Build() |
| File_google_cloud_bigquery_datapolicies_v1_datapolicy_proto = out.File |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_rawDesc = nil |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_goTypes = nil |
| file_google_cloud_bigquery_datapolicies_v1_datapolicy_proto_depIdxs = nil |
| } |
| |
| // Reference imports to suppress errors if they are not otherwise used. |
| var _ context.Context |
| var _ grpc.ClientConnInterface |
| |
| // This is a compile-time assertion to ensure that this generated file |
| // is compatible with the grpc package it is being compiled against. |
| const _ = grpc.SupportPackageIsVersion6 |
| |
| // DataPolicyServiceClient is the client API for DataPolicyService service. |
| // |
| // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. |
| type DataPolicyServiceClient interface { |
| // Creates a new data policy under a project with the given `dataPolicyId` |
| // (used as the display name), policy tag, and data policy type. |
| CreateDataPolicy(ctx context.Context, in *CreateDataPolicyRequest, opts ...grpc.CallOption) (*DataPolicy, error) |
| // Updates the metadata for an existing data policy. The target data policy |
| // can be specified by the resource name. |
| UpdateDataPolicy(ctx context.Context, in *UpdateDataPolicyRequest, opts ...grpc.CallOption) (*DataPolicy, error) |
| // Renames the id (display name) of the specified data policy. |
| RenameDataPolicy(ctx context.Context, in *RenameDataPolicyRequest, opts ...grpc.CallOption) (*DataPolicy, error) |
| // Deletes the data policy specified by its resource name. |
| DeleteDataPolicy(ctx context.Context, in *DeleteDataPolicyRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) |
| // Gets the data policy specified by its resource name. |
| GetDataPolicy(ctx context.Context, in *GetDataPolicyRequest, opts ...grpc.CallOption) (*DataPolicy, error) |
| // List all of the data policies in the specified parent project. |
| ListDataPolicies(ctx context.Context, in *ListDataPoliciesRequest, opts ...grpc.CallOption) (*ListDataPoliciesResponse, error) |
| // Gets the IAM policy for the specified data policy. |
| GetIamPolicy(ctx context.Context, in *iampb.GetIamPolicyRequest, opts ...grpc.CallOption) (*iampb.Policy, error) |
| // Sets the IAM policy for the specified data policy. |
| SetIamPolicy(ctx context.Context, in *iampb.SetIamPolicyRequest, opts ...grpc.CallOption) (*iampb.Policy, error) |
| // Returns the caller's permission on the specified data policy resource. |
| TestIamPermissions(ctx context.Context, in *iampb.TestIamPermissionsRequest, opts ...grpc.CallOption) (*iampb.TestIamPermissionsResponse, error) |
| } |
| |
| type dataPolicyServiceClient struct { |
| cc grpc.ClientConnInterface |
| } |
| |
| func NewDataPolicyServiceClient(cc grpc.ClientConnInterface) DataPolicyServiceClient { |
| return &dataPolicyServiceClient{cc} |
| } |
| |
| func (c *dataPolicyServiceClient) CreateDataPolicy(ctx context.Context, in *CreateDataPolicyRequest, opts ...grpc.CallOption) (*DataPolicy, error) { |
| out := new(DataPolicy) |
| err := c.cc.Invoke(ctx, "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/CreateDataPolicy", in, out, opts...) |
| if err != nil { |
| return nil, err |
| } |
| return out, nil |
| } |
| |
| func (c *dataPolicyServiceClient) UpdateDataPolicy(ctx context.Context, in *UpdateDataPolicyRequest, opts ...grpc.CallOption) (*DataPolicy, error) { |
| out := new(DataPolicy) |
| err := c.cc.Invoke(ctx, "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/UpdateDataPolicy", in, out, opts...) |
| if err != nil { |
| return nil, err |
| } |
| return out, nil |
| } |
| |
| func (c *dataPolicyServiceClient) RenameDataPolicy(ctx context.Context, in *RenameDataPolicyRequest, opts ...grpc.CallOption) (*DataPolicy, error) { |
| out := new(DataPolicy) |
| err := c.cc.Invoke(ctx, "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/RenameDataPolicy", in, out, opts...) |
| if err != nil { |
| return nil, err |
| } |
| return out, nil |
| } |
| |
| func (c *dataPolicyServiceClient) DeleteDataPolicy(ctx context.Context, in *DeleteDataPolicyRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { |
| out := new(emptypb.Empty) |
| err := c.cc.Invoke(ctx, "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/DeleteDataPolicy", in, out, opts...) |
| if err != nil { |
| return nil, err |
| } |
| return out, nil |
| } |
| |
| func (c *dataPolicyServiceClient) GetDataPolicy(ctx context.Context, in *GetDataPolicyRequest, opts ...grpc.CallOption) (*DataPolicy, error) { |
| out := new(DataPolicy) |
| err := c.cc.Invoke(ctx, "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/GetDataPolicy", in, out, opts...) |
| if err != nil { |
| return nil, err |
| } |
| return out, nil |
| } |
| |
| func (c *dataPolicyServiceClient) ListDataPolicies(ctx context.Context, in *ListDataPoliciesRequest, opts ...grpc.CallOption) (*ListDataPoliciesResponse, error) { |
| out := new(ListDataPoliciesResponse) |
| err := c.cc.Invoke(ctx, "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/ListDataPolicies", in, out, opts...) |
| if err != nil { |
| return nil, err |
| } |
| return out, nil |
| } |
| |
| func (c *dataPolicyServiceClient) GetIamPolicy(ctx context.Context, in *iampb.GetIamPolicyRequest, opts ...grpc.CallOption) (*iampb.Policy, error) { |
| out := new(iampb.Policy) |
| err := c.cc.Invoke(ctx, "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/GetIamPolicy", in, out, opts...) |
| if err != nil { |
| return nil, err |
| } |
| return out, nil |
| } |
| |
| func (c *dataPolicyServiceClient) SetIamPolicy(ctx context.Context, in *iampb.SetIamPolicyRequest, opts ...grpc.CallOption) (*iampb.Policy, error) { |
| out := new(iampb.Policy) |
| err := c.cc.Invoke(ctx, "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/SetIamPolicy", in, out, opts...) |
| if err != nil { |
| return nil, err |
| } |
| return out, nil |
| } |
| |
| func (c *dataPolicyServiceClient) TestIamPermissions(ctx context.Context, in *iampb.TestIamPermissionsRequest, opts ...grpc.CallOption) (*iampb.TestIamPermissionsResponse, error) { |
| out := new(iampb.TestIamPermissionsResponse) |
| err := c.cc.Invoke(ctx, "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/TestIamPermissions", in, out, opts...) |
| if err != nil { |
| return nil, err |
| } |
| return out, nil |
| } |
| |
| // DataPolicyServiceServer is the server API for DataPolicyService service. |
| type DataPolicyServiceServer interface { |
| // Creates a new data policy under a project with the given `dataPolicyId` |
| // (used as the display name), policy tag, and data policy type. |
| CreateDataPolicy(context.Context, *CreateDataPolicyRequest) (*DataPolicy, error) |
| // Updates the metadata for an existing data policy. The target data policy |
| // can be specified by the resource name. |
| UpdateDataPolicy(context.Context, *UpdateDataPolicyRequest) (*DataPolicy, error) |
| // Renames the id (display name) of the specified data policy. |
| RenameDataPolicy(context.Context, *RenameDataPolicyRequest) (*DataPolicy, error) |
| // Deletes the data policy specified by its resource name. |
| DeleteDataPolicy(context.Context, *DeleteDataPolicyRequest) (*emptypb.Empty, error) |
| // Gets the data policy specified by its resource name. |
| GetDataPolicy(context.Context, *GetDataPolicyRequest) (*DataPolicy, error) |
| // List all of the data policies in the specified parent project. |
| ListDataPolicies(context.Context, *ListDataPoliciesRequest) (*ListDataPoliciesResponse, error) |
| // Gets the IAM policy for the specified data policy. |
| GetIamPolicy(context.Context, *iampb.GetIamPolicyRequest) (*iampb.Policy, error) |
| // Sets the IAM policy for the specified data policy. |
| SetIamPolicy(context.Context, *iampb.SetIamPolicyRequest) (*iampb.Policy, error) |
| // Returns the caller's permission on the specified data policy resource. |
| TestIamPermissions(context.Context, *iampb.TestIamPermissionsRequest) (*iampb.TestIamPermissionsResponse, error) |
| } |
| |
| // UnimplementedDataPolicyServiceServer can be embedded to have forward compatible implementations. |
| type UnimplementedDataPolicyServiceServer struct { |
| } |
| |
| func (*UnimplementedDataPolicyServiceServer) CreateDataPolicy(context.Context, *CreateDataPolicyRequest) (*DataPolicy, error) { |
| return nil, status.Errorf(codes.Unimplemented, "method CreateDataPolicy not implemented") |
| } |
| func (*UnimplementedDataPolicyServiceServer) UpdateDataPolicy(context.Context, *UpdateDataPolicyRequest) (*DataPolicy, error) { |
| return nil, status.Errorf(codes.Unimplemented, "method UpdateDataPolicy not implemented") |
| } |
| func (*UnimplementedDataPolicyServiceServer) RenameDataPolicy(context.Context, *RenameDataPolicyRequest) (*DataPolicy, error) { |
| return nil, status.Errorf(codes.Unimplemented, "method RenameDataPolicy not implemented") |
| } |
| func (*UnimplementedDataPolicyServiceServer) DeleteDataPolicy(context.Context, *DeleteDataPolicyRequest) (*emptypb.Empty, error) { |
| return nil, status.Errorf(codes.Unimplemented, "method DeleteDataPolicy not implemented") |
| } |
| func (*UnimplementedDataPolicyServiceServer) GetDataPolicy(context.Context, *GetDataPolicyRequest) (*DataPolicy, error) { |
| return nil, status.Errorf(codes.Unimplemented, "method GetDataPolicy not implemented") |
| } |
| func (*UnimplementedDataPolicyServiceServer) ListDataPolicies(context.Context, *ListDataPoliciesRequest) (*ListDataPoliciesResponse, error) { |
| return nil, status.Errorf(codes.Unimplemented, "method ListDataPolicies not implemented") |
| } |
| func (*UnimplementedDataPolicyServiceServer) GetIamPolicy(context.Context, *iampb.GetIamPolicyRequest) (*iampb.Policy, error) { |
| return nil, status.Errorf(codes.Unimplemented, "method GetIamPolicy not implemented") |
| } |
| func (*UnimplementedDataPolicyServiceServer) SetIamPolicy(context.Context, *iampb.SetIamPolicyRequest) (*iampb.Policy, error) { |
| return nil, status.Errorf(codes.Unimplemented, "method SetIamPolicy not implemented") |
| } |
| func (*UnimplementedDataPolicyServiceServer) TestIamPermissions(context.Context, *iampb.TestIamPermissionsRequest) (*iampb.TestIamPermissionsResponse, error) { |
| return nil, status.Errorf(codes.Unimplemented, "method TestIamPermissions not implemented") |
| } |
| |
| func RegisterDataPolicyServiceServer(s *grpc.Server, srv DataPolicyServiceServer) { |
| s.RegisterService(&_DataPolicyService_serviceDesc, srv) |
| } |
| |
| func _DataPolicyService_CreateDataPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
| in := new(CreateDataPolicyRequest) |
| if err := dec(in); err != nil { |
| return nil, err |
| } |
| if interceptor == nil { |
| return srv.(DataPolicyServiceServer).CreateDataPolicy(ctx, in) |
| } |
| info := &grpc.UnaryServerInfo{ |
| Server: srv, |
| FullMethod: "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/CreateDataPolicy", |
| } |
| handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
| return srv.(DataPolicyServiceServer).CreateDataPolicy(ctx, req.(*CreateDataPolicyRequest)) |
| } |
| return interceptor(ctx, in, info, handler) |
| } |
| |
| func _DataPolicyService_UpdateDataPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
| in := new(UpdateDataPolicyRequest) |
| if err := dec(in); err != nil { |
| return nil, err |
| } |
| if interceptor == nil { |
| return srv.(DataPolicyServiceServer).UpdateDataPolicy(ctx, in) |
| } |
| info := &grpc.UnaryServerInfo{ |
| Server: srv, |
| FullMethod: "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/UpdateDataPolicy", |
| } |
| handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
| return srv.(DataPolicyServiceServer).UpdateDataPolicy(ctx, req.(*UpdateDataPolicyRequest)) |
| } |
| return interceptor(ctx, in, info, handler) |
| } |
| |
| func _DataPolicyService_RenameDataPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
| in := new(RenameDataPolicyRequest) |
| if err := dec(in); err != nil { |
| return nil, err |
| } |
| if interceptor == nil { |
| return srv.(DataPolicyServiceServer).RenameDataPolicy(ctx, in) |
| } |
| info := &grpc.UnaryServerInfo{ |
| Server: srv, |
| FullMethod: "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/RenameDataPolicy", |
| } |
| handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
| return srv.(DataPolicyServiceServer).RenameDataPolicy(ctx, req.(*RenameDataPolicyRequest)) |
| } |
| return interceptor(ctx, in, info, handler) |
| } |
| |
| func _DataPolicyService_DeleteDataPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
| in := new(DeleteDataPolicyRequest) |
| if err := dec(in); err != nil { |
| return nil, err |
| } |
| if interceptor == nil { |
| return srv.(DataPolicyServiceServer).DeleteDataPolicy(ctx, in) |
| } |
| info := &grpc.UnaryServerInfo{ |
| Server: srv, |
| FullMethod: "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/DeleteDataPolicy", |
| } |
| handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
| return srv.(DataPolicyServiceServer).DeleteDataPolicy(ctx, req.(*DeleteDataPolicyRequest)) |
| } |
| return interceptor(ctx, in, info, handler) |
| } |
| |
| func _DataPolicyService_GetDataPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
| in := new(GetDataPolicyRequest) |
| if err := dec(in); err != nil { |
| return nil, err |
| } |
| if interceptor == nil { |
| return srv.(DataPolicyServiceServer).GetDataPolicy(ctx, in) |
| } |
| info := &grpc.UnaryServerInfo{ |
| Server: srv, |
| FullMethod: "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/GetDataPolicy", |
| } |
| handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
| return srv.(DataPolicyServiceServer).GetDataPolicy(ctx, req.(*GetDataPolicyRequest)) |
| } |
| return interceptor(ctx, in, info, handler) |
| } |
| |
| func _DataPolicyService_ListDataPolicies_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
| in := new(ListDataPoliciesRequest) |
| if err := dec(in); err != nil { |
| return nil, err |
| } |
| if interceptor == nil { |
| return srv.(DataPolicyServiceServer).ListDataPolicies(ctx, in) |
| } |
| info := &grpc.UnaryServerInfo{ |
| Server: srv, |
| FullMethod: "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/ListDataPolicies", |
| } |
| handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
| return srv.(DataPolicyServiceServer).ListDataPolicies(ctx, req.(*ListDataPoliciesRequest)) |
| } |
| return interceptor(ctx, in, info, handler) |
| } |
| |
| func _DataPolicyService_GetIamPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
| in := new(iampb.GetIamPolicyRequest) |
| if err := dec(in); err != nil { |
| return nil, err |
| } |
| if interceptor == nil { |
| return srv.(DataPolicyServiceServer).GetIamPolicy(ctx, in) |
| } |
| info := &grpc.UnaryServerInfo{ |
| Server: srv, |
| FullMethod: "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/GetIamPolicy", |
| } |
| handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
| return srv.(DataPolicyServiceServer).GetIamPolicy(ctx, req.(*iampb.GetIamPolicyRequest)) |
| } |
| return interceptor(ctx, in, info, handler) |
| } |
| |
| func _DataPolicyService_SetIamPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
| in := new(iampb.SetIamPolicyRequest) |
| if err := dec(in); err != nil { |
| return nil, err |
| } |
| if interceptor == nil { |
| return srv.(DataPolicyServiceServer).SetIamPolicy(ctx, in) |
| } |
| info := &grpc.UnaryServerInfo{ |
| Server: srv, |
| FullMethod: "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/SetIamPolicy", |
| } |
| handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
| return srv.(DataPolicyServiceServer).SetIamPolicy(ctx, req.(*iampb.SetIamPolicyRequest)) |
| } |
| return interceptor(ctx, in, info, handler) |
| } |
| |
| func _DataPolicyService_TestIamPermissions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { |
| in := new(iampb.TestIamPermissionsRequest) |
| if err := dec(in); err != nil { |
| return nil, err |
| } |
| if interceptor == nil { |
| return srv.(DataPolicyServiceServer).TestIamPermissions(ctx, in) |
| } |
| info := &grpc.UnaryServerInfo{ |
| Server: srv, |
| FullMethod: "/google.cloud.bigquery.datapolicies.v1.DataPolicyService/TestIamPermissions", |
| } |
| handler := func(ctx context.Context, req interface{}) (interface{}, error) { |
| return srv.(DataPolicyServiceServer).TestIamPermissions(ctx, req.(*iampb.TestIamPermissionsRequest)) |
| } |
| return interceptor(ctx, in, info, handler) |
| } |
| |
| var _DataPolicyService_serviceDesc = grpc.ServiceDesc{ |
| ServiceName: "google.cloud.bigquery.datapolicies.v1.DataPolicyService", |
| HandlerType: (*DataPolicyServiceServer)(nil), |
| Methods: []grpc.MethodDesc{ |
| { |
| MethodName: "CreateDataPolicy", |
| Handler: _DataPolicyService_CreateDataPolicy_Handler, |
| }, |
| { |
| MethodName: "UpdateDataPolicy", |
| Handler: _DataPolicyService_UpdateDataPolicy_Handler, |
| }, |
| { |
| MethodName: "RenameDataPolicy", |
| Handler: _DataPolicyService_RenameDataPolicy_Handler, |
| }, |
| { |
| MethodName: "DeleteDataPolicy", |
| Handler: _DataPolicyService_DeleteDataPolicy_Handler, |
| }, |
| { |
| MethodName: "GetDataPolicy", |
| Handler: _DataPolicyService_GetDataPolicy_Handler, |
| }, |
| { |
| MethodName: "ListDataPolicies", |
| Handler: _DataPolicyService_ListDataPolicies_Handler, |
| }, |
| { |
| MethodName: "GetIamPolicy", |
| Handler: _DataPolicyService_GetIamPolicy_Handler, |
| }, |
| { |
| MethodName: "SetIamPolicy", |
| Handler: _DataPolicyService_SetIamPolicy_Handler, |
| }, |
| { |
| MethodName: "TestIamPermissions", |
| Handler: _DataPolicyService_TestIamPermissions_Handler, |
| }, |
| }, |
| Streams: []grpc.StreamDesc{}, |
| Metadata: "google/cloud/bigquery/datapolicies/v1/datapolicy.proto", |
| } |