File: visibility_pb.rb

package info (click to toggle)
ruby-googleapis-common-protos-types 1.14.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 644 kB
  • sloc: ruby: 7; makefile: 4
file content (157 lines) | stat: -rw-r--r-- 6,676 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
# frozen_string_literal: true
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/api/visibility.proto

require 'google/protobuf'

require 'google/protobuf/descriptor_pb'


descriptor_data = "\n\x1bgoogle/api/visibility.proto\x12\ngoogle.api\x1a google/protobuf/descriptor.proto\"7\n\nVisibility\x12)\n\x05rules\x18\x01 \x03(\x0b\x32\x1a.google.api.VisibilityRule\"7\n\x0eVisibilityRule\x12\x10\n\x08selector\x18\x01 \x01(\t\x12\x13\n\x0brestriction\x18\x02 \x01(\t:T\n\x0f\x65num_visibility\x12\x1c.google.protobuf.EnumOptions\x18\xaf\xca\xbc\" \x01(\x0b\x32\x1a.google.api.VisibilityRule:Z\n\x10value_visibility\x12!.google.protobuf.EnumValueOptions\x18\xaf\xca\xbc\" \x01(\x0b\x32\x1a.google.api.VisibilityRule:V\n\x10\x66ield_visibility\x12\x1d.google.protobuf.FieldOptions\x18\xaf\xca\xbc\" \x01(\x0b\x32\x1a.google.api.VisibilityRule:Z\n\x12message_visibility\x12\x1f.google.protobuf.MessageOptions\x18\xaf\xca\xbc\" \x01(\x0b\x32\x1a.google.api.VisibilityRule:X\n\x11method_visibility\x12\x1e.google.protobuf.MethodOptions\x18\xaf\xca\xbc\" \x01(\x0b\x32\x1a.google.api.VisibilityRule:V\n\x0e\x61pi_visibility\x12\x1f.google.protobuf.ServiceOptions\x18\xaf\xca\xbc\" \x01(\x0b\x32\x1a.google.api.VisibilityRuleBn\n\x0e\x63om.google.apiB\x0fVisibilityProtoP\x01Z?google.golang.org/genproto/googleapis/api/visibility;visibility\xf8\x01\x01\xa2\x02\x04GAPIb\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
    Visibility = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.Visibility").msgclass
    VisibilityRule = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.VisibilityRule").msgclass
  end
end

#### Source proto file: google/api/visibility.proto ####
#
# // 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.
#
# syntax = "proto3";
#
# package google.api;
#
# import "google/protobuf/descriptor.proto";
#
# option cc_enable_arenas = true;
# option go_package = "google.golang.org/genproto/googleapis/api/visibility;visibility";
# option java_multiple_files = true;
# option java_outer_classname = "VisibilityProto";
# option java_package = "com.google.api";
# option objc_class_prefix = "GAPI";
#
# extend google.protobuf.EnumOptions {
#   // See `VisibilityRule`.
#   google.api.VisibilityRule enum_visibility = 72295727;
# }
#
# extend google.protobuf.EnumValueOptions {
#   // See `VisibilityRule`.
#   google.api.VisibilityRule value_visibility = 72295727;
# }
#
# extend google.protobuf.FieldOptions {
#   // See `VisibilityRule`.
#   google.api.VisibilityRule field_visibility = 72295727;
# }
#
# extend google.protobuf.MessageOptions {
#   // See `VisibilityRule`.
#   google.api.VisibilityRule message_visibility = 72295727;
# }
#
# extend google.protobuf.MethodOptions {
#   // See `VisibilityRule`.
#   google.api.VisibilityRule method_visibility = 72295727;
# }
#
# extend google.protobuf.ServiceOptions {
#   // See `VisibilityRule`.
#   google.api.VisibilityRule api_visibility = 72295727;
# }
#
# // `Visibility` restricts service consumer's access to service elements,
# // such as whether an application can call a visibility-restricted method.
# // The restriction is expressed by applying visibility labels on service
# // elements. The visibility labels are elsewhere linked to service consumers.
# //
# // A service can define multiple visibility labels, but a service consumer
# // should be granted at most one visibility label. Multiple visibility
# // labels for a single service consumer are not supported.
# //
# // If an element and all its parents have no visibility label, its visibility
# // is unconditionally granted.
# //
# // Example:
# //
# //     visibility:
# //       rules:
# //       - selector: google.calendar.Calendar.EnhancedSearch
# //         restriction: PREVIEW
# //       - selector: google.calendar.Calendar.Delegate
# //         restriction: INTERNAL
# //
# // Here, all methods are publicly visible except for the restricted methods
# // EnhancedSearch and Delegate.
# message Visibility {
#   // A list of visibility rules that apply to individual API elements.
#   //
#   // **NOTE:** All service configuration rules follow "last one wins" order.
#   repeated VisibilityRule rules = 1;
# }
#
# // A visibility rule provides visibility configuration for an individual API
# // element.
# message VisibilityRule {
#   // Selects methods, messages, fields, enums, etc. to which this rule applies.
#   //
#   // Refer to [selector][google.api.DocumentationRule.selector] for syntax
#   // details.
#   string selector = 1;
#
#   // A comma-separated list of visibility labels that apply to the `selector`.
#   // Any of the listed labels can be used to grant the visibility.
#   //
#   // If a rule has multiple labels, removing one of the labels but not all of
#   // them can break clients.
#   //
#   // Example:
#   //
#   //     visibility:
#   //       rules:
#   //       - selector: google.calendar.Calendar.EnhancedSearch
#   //         restriction: INTERNAL, PREVIEW
#   //
#   // Removing INTERNAL from this restriction will break clients that rely on
#   // this method and only had access to it through INTERNAL.
#   string restriction = 2;
# }