# frozen_string_literal: true # Generated by the protocol buffer compiler. DO NOT EDIT! # source: google/api/consumer.proto require 'google/protobuf' descriptor_data = "\n\x19google/api/consumer.proto\x12\ngoogle.api\"=\n\x11ProjectProperties\x12(\n\nproperties\x18\x01 \x03(\x0b\x32\x14.google.api.Property\"\xac\x01\n\x08Property\x12\x0c\n\x04name\x18\x01 \x01(\t\x12/\n\x04type\x18\x02 \x01(\x0e\x32!.google.api.Property.PropertyType\x12\x13\n\x0b\x64\x65scription\x18\x03 \x01(\t\"L\n\x0cPropertyType\x12\x0f\n\x0bUNSPECIFIED\x10\x00\x12\t\n\x05INT64\x10\x01\x12\x08\n\x04\x42OOL\x10\x02\x12\n\n\x06STRING\x10\x03\x12\n\n\x06\x44OUBLE\x10\x04\x42h\n\x0e\x63om.google.apiB\rConsumerProtoP\x01ZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfigb\x06proto3" pool = Google::Protobuf::DescriptorPool.generated_pool begin pool.add_serialized_file(descriptor_data) rescue TypeError # Compatibility code: will be removed in the next major version. require 'google/protobuf/descriptor_pb' parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data) parsed.clear_dependency serialized = parsed.class.encode(parsed) file = pool.add_serialized_file(serialized) warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}" imports = [ ] imports.each do |type_name, expected_filename| import_file = pool.lookup(type_name).file_descriptor if import_file.name != expected_filename warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}" end end warn "Each proto file must use a consistent fully-qualified name." warn "This will become an error in the next major version." end module Google module Api ProjectProperties = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.ProjectProperties").msgclass Property = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.Property").msgclass Property::PropertyType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.Property.PropertyType").enummodule end end #### Source proto file: google/api/consumer.proto #### # # // Copyright 2024 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. # # syntax = "proto3"; # # package google.api; # # option go_package = "google.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig"; # option java_multiple_files = true; # option java_outer_classname = "ConsumerProto"; # option java_package = "com.google.api"; # # // A descriptor for defining project properties for a service. One service may # // have many consumer projects, and the service may want to behave differently # // depending on some properties on the project. For example, a project may be # // associated with a school, or a business, or a government agency, a business # // type property on the project may affect how a service responds to the client. # // This descriptor defines which properties are allowed to be set on a project. # // # // Example: # // # // project_properties: # // properties: # // - name: NO_WATERMARK # // type: BOOL # // description: Allows usage of the API without watermarks. # // - name: EXTENDED_TILE_CACHE_PERIOD # // type: INT64 # message ProjectProperties { # // List of per consumer project-specific properties. # repeated Property properties = 1; # } # # // Defines project properties. # // # // API services can define properties that can be assigned to consumer projects # // so that backends can perform response customization without having to make # // additional calls or maintain additional storage. For example, Maps API # // defines properties that controls map tile cache period, or whether to embed a # // watermark in a result. # // # // These values can be set via API producer console. Only API providers can # // define and set these properties. # message Property { # // Supported data type of the property values # enum PropertyType { # // The type is unspecified, and will result in an error. # UNSPECIFIED = 0; # # // The type is `int64`. # INT64 = 1; # # // The type is `bool`. # BOOL = 2; # # // The type is `string`. # STRING = 3; # # // The type is 'double'. # DOUBLE = 4; # } # # // The name of the property (a.k.a key). # string name = 1; # # // The type of this property. # PropertyType type = 2; # # // The description of the property # string description = 3; # }