google-api-client 0.10.1 → 0.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +3 -0
  3. data/api_names.yaml +395 -0
  4. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  5. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +254 -254
  6. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +65 -65
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +220 -220
  8. data/generated/google/apis/admin_directory_v1.rb +1 -1
  9. data/generated/google/apis/admin_directory_v1/classes.rb +106 -0
  10. data/generated/google/apis/admin_directory_v1/representations.rb +37 -0
  11. data/generated/google/apis/admin_reports_v1.rb +3 -3
  12. data/generated/google/apis/admin_reports_v1/service.rb +6 -6
  13. data/generated/google/apis/adsense_v1_4.rb +1 -1
  14. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  15. data/generated/google/apis/analytics_v3.rb +1 -1
  16. data/generated/google/apis/analytics_v3/service.rb +39 -0
  17. data/generated/google/apis/analyticsreporting_v4/classes.rb +920 -920
  18. data/generated/google/apis/analyticsreporting_v4/representations.rb +197 -197
  19. data/generated/google/apis/analyticsreporting_v4/service.rb +4 -4
  20. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  21. data/generated/google/apis/androidenterprise_v1/classes.rb +8 -13
  22. data/generated/google/apis/androidenterprise_v1/service.rb +3 -3
  23. data/generated/google/apis/appengine_v1beta5.rb +1 -1
  24. data/generated/google/apis/appengine_v1beta5/classes.rb +115 -5
  25. data/generated/google/apis/appengine_v1beta5/representations.rb +37 -0
  26. data/generated/google/apis/appengine_v1beta5/service.rb +12 -9
  27. data/generated/google/apis/appstate_v1.rb +1 -1
  28. data/generated/google/apis/bigquery_v2.rb +1 -1
  29. data/generated/google/apis/bigquery_v2/classes.rb +32 -37
  30. data/generated/google/apis/bigquery_v2/service.rb +10 -2
  31. data/generated/google/apis/calendar_v3.rb +1 -1
  32. data/generated/google/apis/calendar_v3/classes.rb +205 -0
  33. data/generated/google/apis/calendar_v3/representations.rb +97 -0
  34. data/generated/google/apis/classroom_v1.rb +22 -25
  35. data/generated/google/apis/classroom_v1/classes.rb +998 -907
  36. data/generated/google/apis/classroom_v1/representations.rb +240 -240
  37. data/generated/google/apis/classroom_v1/service.rb +1269 -1061
  38. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  39. data/generated/google/apis/cloudbuild_v1/classes.rb +164 -163
  40. data/generated/google/apis/cloudbuild_v1/representations.rb +31 -31
  41. data/generated/google/apis/cloudbuild_v1/service.rb +114 -114
  42. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  43. data/generated/google/apis/clouddebugger_v2/classes.rb +687 -687
  44. data/generated/google/apis/clouddebugger_v2/representations.rb +147 -147
  45. data/generated/google/apis/clouddebugger_v2/service.rb +132 -132
  46. data/generated/google/apis/cloudkms_v1.rb +1 -1
  47. data/generated/google/apis/cloudkms_v1/classes.rb +231 -248
  48. data/generated/google/apis/cloudkms_v1/representations.rb +74 -74
  49. data/generated/google/apis/cloudkms_v1/service.rb +228 -228
  50. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  51. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  52. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +738 -128
  53. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +245 -23
  54. data/generated/google/apis/cloudresourcemanager_v1/service.rb +1293 -249
  55. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +4 -4
  56. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +982 -372
  57. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +293 -71
  58. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +626 -277
  59. data/generated/google/apis/cloudtrace_v1.rb +1 -1
  60. data/generated/google/apis/cloudtrace_v1/classes.rb +19 -19
  61. data/generated/google/apis/cloudtrace_v1/representations.rb +2 -2
  62. data/generated/google/apis/cloudtrace_v1/service.rb +30 -30
  63. data/generated/google/apis/compute_beta.rb +1 -1
  64. data/generated/google/apis/compute_beta/classes.rb +116 -0
  65. data/generated/google/apis/compute_beta/representations.rb +48 -0
  66. data/generated/google/apis/compute_beta/service.rb +46 -1
  67. data/generated/google/apis/compute_v1.rb +1 -1
  68. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  69. data/generated/google/apis/dataflow_v1b3/classes.rb +3276 -3320
  70. data/generated/google/apis/dataflow_v1b3/representations.rb +779 -781
  71. data/generated/google/apis/dataflow_v1b3/service.rb +225 -225
  72. data/generated/google/apis/dataproc_v1.rb +1 -1
  73. data/generated/google/apis/dataproc_v1/classes.rb +1221 -1207
  74. data/generated/google/apis/dataproc_v1/representations.rb +255 -253
  75. data/generated/google/apis/dataproc_v1/service.rb +100 -100
  76. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  77. data/generated/google/apis/deploymentmanager_v2/classes.rb +5 -5
  78. data/generated/google/apis/dns_v1.rb +1 -1
  79. data/generated/google/apis/dns_v2beta1.rb +1 -1
  80. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  81. data/generated/google/apis/drive_v2.rb +1 -1
  82. data/generated/google/apis/drive_v2/classes.rb +3 -1
  83. data/generated/google/apis/drive_v3.rb +1 -1
  84. data/generated/google/apis/drive_v3/classes.rb +3 -1
  85. data/generated/google/apis/fusiontables_v2.rb +1 -1
  86. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  87. data/generated/google/apis/games_management_v1management.rb +1 -1
  88. data/generated/google/apis/games_v1.rb +1 -1
  89. data/generated/google/apis/genomics_v1.rb +7 -7
  90. data/generated/google/apis/genomics_v1/classes.rb +959 -959
  91. data/generated/google/apis/genomics_v1/representations.rb +238 -238
  92. data/generated/google/apis/genomics_v1/service.rb +996 -996
  93. data/generated/google/apis/iam_v1.rb +1 -1
  94. data/generated/google/apis/iam_v1/classes.rb +440 -440
  95. data/generated/google/apis/iam_v1/representations.rb +94 -94
  96. data/generated/google/apis/iam_v1/service.rb +170 -173
  97. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  98. data/generated/google/apis/identitytoolkit_v3/classes.rb +55 -0
  99. data/generated/google/apis/identitytoolkit_v3/representations.rb +8 -0
  100. data/generated/google/apis/kgsearch_v1/service.rb +4 -4
  101. data/generated/google/apis/language_v1beta1.rb +1 -1
  102. data/generated/google/apis/language_v1beta1/classes.rb +427 -427
  103. data/generated/google/apis/language_v1beta1/representations.rb +113 -113
  104. data/generated/google/apis/language_v1beta1/service.rb +25 -24
  105. data/generated/google/apis/licensing_v1.rb +2 -2
  106. data/generated/google/apis/licensing_v1/classes.rb +14 -2
  107. data/generated/google/apis/licensing_v1/representations.rb +2 -0
  108. data/generated/google/apis/licensing_v1/service.rb +1 -1
  109. data/generated/google/apis/logging_v2beta1.rb +1 -1
  110. data/generated/google/apis/logging_v2beta1/classes.rb +864 -864
  111. data/generated/google/apis/logging_v2beta1/representations.rb +168 -168
  112. data/generated/google/apis/logging_v2beta1/service.rb +261 -261
  113. data/generated/google/apis/manufacturers_v1.rb +1 -1
  114. data/generated/google/apis/manufacturers_v1/classes.rb +452 -105
  115. data/generated/google/apis/manufacturers_v1/representations.rb +138 -18
  116. data/generated/google/apis/manufacturers_v1/service.rb +11 -11
  117. data/generated/google/apis/mirror_v1.rb +1 -1
  118. data/generated/google/apis/monitoring_v3.rb +7 -7
  119. data/generated/google/apis/monitoring_v3/classes.rb +668 -670
  120. data/generated/google/apis/monitoring_v3/representations.rb +140 -140
  121. data/generated/google/apis/monitoring_v3/service.rb +208 -208
  122. data/generated/google/apis/partners_v2.rb +1 -1
  123. data/generated/google/apis/partners_v2/classes.rb +505 -505
  124. data/generated/google/apis/partners_v2/representations.rb +118 -118
  125. data/generated/google/apis/partners_v2/service.rb +275 -275
  126. data/generated/google/apis/people_v1.rb +1 -1
  127. data/generated/google/apis/people_v1/classes.rb +1037 -1031
  128. data/generated/google/apis/people_v1/representations.rb +247 -246
  129. data/generated/google/apis/people_v1/service.rb +20 -20
  130. data/generated/google/apis/plus_domains_v1.rb +1 -1
  131. data/generated/google/apis/plus_v1.rb +1 -1
  132. data/generated/google/apis/proximitybeacon_v1beta1.rb +1 -1
  133. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +392 -392
  134. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +93 -93
  135. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +381 -381
  136. data/generated/google/apis/pubsub_v1.rb +4 -4
  137. data/generated/google/apis/pubsub_v1/classes.rb +131 -132
  138. data/generated/google/apis/pubsub_v1/representations.rb +35 -35
  139. data/generated/google/apis/pubsub_v1/service.rb +399 -408
  140. data/generated/google/apis/reseller_v1.rb +1 -1
  141. data/generated/google/apis/reseller_v1/classes.rb +9 -0
  142. data/generated/google/apis/reseller_v1/representations.rb +1 -0
  143. data/generated/google/apis/script_v1.rb +9 -9
  144. data/generated/google/apis/script_v1/classes.rb +110 -110
  145. data/generated/google/apis/script_v1/representations.rb +26 -26
  146. data/generated/google/apis/sheets_v4.rb +4 -4
  147. data/generated/google/apis/sheets_v4/classes.rb +4329 -4329
  148. data/generated/google/apis/sheets_v4/representations.rb +856 -856
  149. data/generated/google/apis/sheets_v4/service.rb +106 -106
  150. data/generated/google/apis/slides_v1.rb +4 -4
  151. data/generated/google/apis/slides_v1/classes.rb +2923 -2841
  152. data/generated/google/apis/slides_v1/representations.rb +722 -691
  153. data/generated/google/apis/slides_v1/service.rb +58 -15
  154. data/generated/google/apis/speech_v1beta1.rb +1 -1
  155. data/generated/google/apis/speech_v1beta1/classes.rb +191 -191
  156. data/generated/google/apis/speech_v1beta1/representations.rb +57 -57
  157. data/generated/google/apis/speech_v1beta1/service.rb +70 -70
  158. data/generated/google/apis/storage_v1.rb +1 -1
  159. data/generated/google/apis/storage_v1/classes.rb +151 -0
  160. data/generated/google/apis/storage_v1/representations.rb +45 -0
  161. data/generated/google/apis/storage_v1/service.rb +248 -0
  162. data/generated/google/apis/vision_v1.rb +1 -1
  163. data/generated/google/apis/vision_v1/classes.rb +1227 -1221
  164. data/generated/google/apis/vision_v1/representations.rb +217 -215
  165. data/generated/google/apis/webmasters_v3.rb +1 -1
  166. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  167. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  168. data/generated/google/apis/youtube_partner_v1/classes.rb +78 -0
  169. data/generated/google/apis/youtube_partner_v1/representations.rb +34 -0
  170. data/generated/google/apis/youtube_partner_v1/service.rb +40 -0
  171. data/generated/google/apis/youtubereporting_v1.rb +4 -4
  172. data/generated/google/apis/youtubereporting_v1/classes.rb +65 -65
  173. data/generated/google/apis/youtubereporting_v1/representations.rb +18 -18
  174. data/generated/google/apis/youtubereporting_v1/service.rb +111 -111
  175. data/lib/google/apis/version.rb +1 -1
  176. metadata +2 -2
@@ -26,7 +26,7 @@ module Google
26
26
  # @see http://cloud.google.com/debugger
27
27
  module ClouddebuggerV2
28
28
  VERSION = 'V2'
29
- REVISION = '20170214'
29
+ REVISION = '20170322'
30
30
 
31
31
  # Manage cloud debugger
32
32
  AUTH_CLOUD_DEBUGGER = 'https://www.googleapis.com/auth/cloud_debugger'
@@ -22,30 +22,22 @@ module Google
22
22
  module Apis
23
23
  module ClouddebuggerV2
24
24
 
25
- # A CloudRepoSourceContext denotes a particular revision in a cloud
26
- # repo (a repo hosted by the Google Cloud Platform).
27
- class CloudRepoSourceContext
25
+ # A CloudWorkspaceSourceContext denotes a workspace at a particular snapshot.
26
+ class CloudWorkspaceSourceContext
28
27
  include Google::Apis::Core::Hashable
29
28
 
30
- # A unique identifier for a cloud repo.
31
- # Corresponds to the JSON property `repoId`
32
- # @return [Google::Apis::ClouddebuggerV2::RepoId]
33
- attr_accessor :repo_id
34
-
35
- # An alias to a repo revision.
36
- # Corresponds to the JSON property `aliasContext`
37
- # @return [Google::Apis::ClouddebuggerV2::AliasContext]
38
- attr_accessor :alias_context
39
-
40
- # A revision ID.
41
- # Corresponds to the JSON property `revisionId`
29
+ # The ID of the snapshot.
30
+ # An empty snapshot_id refers to the most recent snapshot.
31
+ # Corresponds to the JSON property `snapshotId`
42
32
  # @return [String]
43
- attr_accessor :revision_id
33
+ attr_accessor :snapshot_id
44
34
 
45
- # The name of an alias (branch, tag, etc.).
46
- # Corresponds to the JSON property `aliasName`
47
- # @return [String]
48
- attr_accessor :alias_name
35
+ # A CloudWorkspaceId is a unique identifier for a cloud workspace.
36
+ # A cloud workspace is a place associated with a repo where modified files
37
+ # can be stored before they are committed.
38
+ # Corresponds to the JSON property `workspaceId`
39
+ # @return [Google::Apis::ClouddebuggerV2::CloudWorkspaceId]
40
+ attr_accessor :workspace_id
49
41
 
50
42
  def initialize(**args)
51
43
  update!(**args)
@@ -53,48 +45,55 @@ module Google
53
45
 
54
46
  # Update properties of this object
55
47
  def update!(**args)
56
- @repo_id = args[:repo_id] if args.key?(:repo_id)
57
- @alias_context = args[:alias_context] if args.key?(:alias_context)
58
- @revision_id = args[:revision_id] if args.key?(:revision_id)
59
- @alias_name = args[:alias_name] if args.key?(:alias_name)
48
+ @snapshot_id = args[:snapshot_id] if args.key?(:snapshot_id)
49
+ @workspace_id = args[:workspace_id] if args.key?(:workspace_id)
60
50
  end
61
51
  end
62
52
 
63
- # Request to register a debuggee.
64
- class RegisterDebuggeeRequest
53
+ # Response for updating an active breakpoint.
54
+ # The message is defined to allow future extensions.
55
+ class UpdateActiveBreakpointResponse
65
56
  include Google::Apis::Core::Hashable
66
57
 
67
- # Represents the application to debug. The application may include one or more
68
- # replicated processes executing the same code. Each of these processes is
69
- # attached with a debugger agent, carrying out the debugging commands.
70
- # The agents attached to the same debuggee are identified by using exactly the
71
- # same field values when registering.
72
- # Corresponds to the JSON property `debuggee`
73
- # @return [Google::Apis::ClouddebuggerV2::Debuggee]
74
- attr_accessor :debuggee
75
-
76
58
  def initialize(**args)
77
59
  update!(**args)
78
60
  end
79
61
 
80
62
  # Update properties of this object
81
63
  def update!(**args)
82
- @debuggee = args[:debuggee] if args.key?(:debuggee)
83
64
  end
84
65
  end
85
66
 
86
- # Response for registering a debuggee.
87
- class RegisterDebuggeeResponse
67
+ # A SourceContext referring to a Gerrit project.
68
+ class GerritSourceContext
88
69
  include Google::Apis::Core::Hashable
89
70
 
90
- # Represents the application to debug. The application may include one or more
91
- # replicated processes executing the same code. Each of these processes is
92
- # attached with a debugger agent, carrying out the debugging commands.
93
- # The agents attached to the same debuggee are identified by using exactly the
94
- # same field values when registering.
95
- # Corresponds to the JSON property `debuggee`
96
- # @return [Google::Apis::ClouddebuggerV2::Debuggee]
97
- attr_accessor :debuggee
71
+ # The full project name within the host. Projects may be nested, so
72
+ # "project/subproject" is a valid project name.
73
+ # The "repo name" is hostURI/project.
74
+ # Corresponds to the JSON property `gerritProject`
75
+ # @return [String]
76
+ attr_accessor :gerrit_project
77
+
78
+ # An alias to a repo revision.
79
+ # Corresponds to the JSON property `aliasContext`
80
+ # @return [Google::Apis::ClouddebuggerV2::AliasContext]
81
+ attr_accessor :alias_context
82
+
83
+ # The URI of a running Gerrit instance.
84
+ # Corresponds to the JSON property `hostUri`
85
+ # @return [String]
86
+ attr_accessor :host_uri
87
+
88
+ # A revision (commit) ID.
89
+ # Corresponds to the JSON property `revisionId`
90
+ # @return [String]
91
+ attr_accessor :revision_id
92
+
93
+ # The name of an alias (branch, tag, etc.).
94
+ # Corresponds to the JSON property `aliasName`
95
+ # @return [String]
96
+ attr_accessor :alias_name
98
97
 
99
98
  def initialize(**args)
100
99
  update!(**args)
@@ -102,18 +101,30 @@ module Google
102
101
 
103
102
  # Update properties of this object
104
103
  def update!(**args)
105
- @debuggee = args[:debuggee] if args.key?(:debuggee)
104
+ @gerrit_project = args[:gerrit_project] if args.key?(:gerrit_project)
105
+ @alias_context = args[:alias_context] if args.key?(:alias_context)
106
+ @host_uri = args[:host_uri] if args.key?(:host_uri)
107
+ @revision_id = args[:revision_id] if args.key?(:revision_id)
108
+ @alias_name = args[:alias_name] if args.key?(:alias_name)
106
109
  end
107
110
  end
108
111
 
109
- # Response for getting breakpoint information.
110
- class GetBreakpointResponse
112
+ # A CloudWorkspaceId is a unique identifier for a cloud workspace.
113
+ # A cloud workspace is a place associated with a repo where modified files
114
+ # can be stored before they are committed.
115
+ class CloudWorkspaceId
111
116
  include Google::Apis::Core::Hashable
112
117
 
113
- # Represents the breakpoint specification, status and results.
114
- # Corresponds to the JSON property `breakpoint`
115
- # @return [Google::Apis::ClouddebuggerV2::Breakpoint]
116
- attr_accessor :breakpoint
118
+ # The unique name of the workspace within the repo. This is the name
119
+ # chosen by the client in the Source API's CreateWorkspace method.
120
+ # Corresponds to the JSON property `name`
121
+ # @return [String]
122
+ attr_accessor :name
123
+
124
+ # A unique identifier for a cloud repo.
125
+ # Corresponds to the JSON property `repoId`
126
+ # @return [Google::Apis::ClouddebuggerV2::RepoId]
127
+ attr_accessor :repo_id
117
128
 
118
129
  def initialize(**args)
119
130
  update!(**args)
@@ -121,33 +132,28 @@ module Google
121
132
 
122
133
  # Update properties of this object
123
134
  def update!(**args)
124
- @breakpoint = args[:breakpoint] if args.key?(:breakpoint)
135
+ @name = args[:name] if args.key?(:name)
136
+ @repo_id = args[:repo_id] if args.key?(:repo_id)
125
137
  end
126
138
  end
127
139
 
128
- # Represents a contextual status message.
129
- # The message can indicate an error or informational status, and refer to
130
- # specific parts of the containing object.
131
- # For example, the `Breakpoint.status` field can indicate an error referring
132
- # to the `BREAKPOINT_SOURCE_LOCATION` with the message `Location not found`.
133
- class StatusMessage
140
+ # Response for listing breakpoints.
141
+ class ListBreakpointsResponse
134
142
  include Google::Apis::Core::Hashable
135
143
 
136
- # Distinguishes errors from informational messages.
137
- # Corresponds to the JSON property `isError`
138
- # @return [Boolean]
139
- attr_accessor :is_error
140
- alias_method :is_error?, :is_error
141
-
142
- # Represents a message with parameters.
143
- # Corresponds to the JSON property `description`
144
- # @return [Google::Apis::ClouddebuggerV2::FormatMessage]
145
- attr_accessor :description
144
+ # List of breakpoints matching the request.
145
+ # The fields `id` and `location` are guaranteed to be set on each breakpoint.
146
+ # The fields: `stack_frames`, `evaluated_expressions` and `variable_table`
147
+ # are cleared on each breakpoint regardless of it's status.
148
+ # Corresponds to the JSON property `breakpoints`
149
+ # @return [Array<Google::Apis::ClouddebuggerV2::Breakpoint>]
150
+ attr_accessor :breakpoints
146
151
 
147
- # Reference to which the message applies.
148
- # Corresponds to the JSON property `refersTo`
152
+ # A wait token that can be used in the next call to `list` (REST) or
153
+ # `ListBreakpoints` (RPC) to block until the list of breakpoints has changes.
154
+ # Corresponds to the JSON property `nextWaitToken`
149
155
  # @return [String]
150
- attr_accessor :refers_to
156
+ attr_accessor :next_wait_token
151
157
 
152
158
  def initialize(**args)
153
159
  update!(**args)
@@ -155,162 +161,130 @@ module Google
155
161
 
156
162
  # Update properties of this object
157
163
  def update!(**args)
158
- @is_error = args[:is_error] if args.key?(:is_error)
159
- @description = args[:description] if args.key?(:description)
160
- @refers_to = args[:refers_to] if args.key?(:refers_to)
164
+ @breakpoints = args[:breakpoints] if args.key?(:breakpoints)
165
+ @next_wait_token = args[:next_wait_token] if args.key?(:next_wait_token)
161
166
  end
162
167
  end
163
168
 
164
- # A GitSourceContext denotes a particular revision in a third party Git
165
- # repository (e.g. GitHub).
166
- class GitSourceContext
169
+ # Represents the breakpoint specification, status and results.
170
+ class Breakpoint
167
171
  include Google::Apis::Core::Hashable
168
172
 
169
- # Git commit hash.
170
- # required.
171
- # Corresponds to the JSON property `revisionId`
173
+ # List of read-only expressions to evaluate at the breakpoint location.
174
+ # The expressions are composed using expressions in the programming language
175
+ # at the source location. If the breakpoint action is `LOG`, the evaluated
176
+ # expressions are included in log statements.
177
+ # Corresponds to the JSON property `expressions`
178
+ # @return [Array<String>]
179
+ attr_accessor :expressions
180
+
181
+ # Values of evaluated expressions at breakpoint time.
182
+ # The evaluated expressions appear in exactly the same order they
183
+ # are listed in the `expressions` field.
184
+ # The `name` field holds the original expression text, the `value` or
185
+ # `members` field holds the result of the evaluated expression.
186
+ # If the expression cannot be evaluated, the `status` inside the `Variable`
187
+ # will indicate an error and contain the error text.
188
+ # Corresponds to the JSON property `evaluatedExpressions`
189
+ # @return [Array<Google::Apis::ClouddebuggerV2::Variable>]
190
+ attr_accessor :evaluated_expressions
191
+
192
+ # When true, indicates that this is a final result and the
193
+ # breakpoint state will not change from here on.
194
+ # Corresponds to the JSON property `isFinalState`
195
+ # @return [Boolean]
196
+ attr_accessor :is_final_state
197
+ alias_method :is_final_state?, :is_final_state
198
+
199
+ # The stack at breakpoint time.
200
+ # Corresponds to the JSON property `stackFrames`
201
+ # @return [Array<Google::Apis::ClouddebuggerV2::StackFrame>]
202
+ attr_accessor :stack_frames
203
+
204
+ # Condition that triggers the breakpoint.
205
+ # The condition is a compound boolean expression composed using expressions
206
+ # in a programming language at the source location.
207
+ # Corresponds to the JSON property `condition`
172
208
  # @return [String]
173
- attr_accessor :revision_id
209
+ attr_accessor :condition
174
210
 
175
- # Git repository URL.
176
- # Corresponds to the JSON property `url`
211
+ # Represents a contextual status message.
212
+ # The message can indicate an error or informational status, and refer to
213
+ # specific parts of the containing object.
214
+ # For example, the `Breakpoint.status` field can indicate an error referring
215
+ # to the `BREAKPOINT_SOURCE_LOCATION` with the message `Location not found`.
216
+ # Corresponds to the JSON property `status`
217
+ # @return [Google::Apis::ClouddebuggerV2::StatusMessage]
218
+ attr_accessor :status
219
+
220
+ # E-mail address of the user that created this breakpoint
221
+ # Corresponds to the JSON property `userEmail`
177
222
  # @return [String]
178
- attr_accessor :url
223
+ attr_accessor :user_email
179
224
 
180
- def initialize(**args)
181
- update!(**args)
182
- end
225
+ # Action that the agent should perform when the code at the
226
+ # breakpoint location is hit.
227
+ # Corresponds to the JSON property `action`
228
+ # @return [String]
229
+ attr_accessor :action
183
230
 
184
- # Update properties of this object
185
- def update!(**args)
186
- @revision_id = args[:revision_id] if args.key?(:revision_id)
187
- @url = args[:url] if args.key?(:url)
188
- end
189
- end
231
+ # Indicates the severity of the log. Only relevant when action is `LOG`.
232
+ # Corresponds to the JSON property `logLevel`
233
+ # @return [String]
234
+ attr_accessor :log_level
190
235
 
191
- # Represents a variable or an argument possibly of a compound object type.
192
- # Note how the following variables are represented:
193
- # 1) A simple variable:
194
- # int x = 5
195
- # ` name: "x", value: "5", type: "int" ` // Captured variable
196
- # 2) A compound object:
197
- # struct T `
198
- # int m1;
199
- # int m2;
200
- # `;
201
- # T x = ` 3, 7 `;
202
- # ` // Captured variable
203
- # name: "x",
204
- # type: "T",
205
- # members ` name: "m1", value: "3", type: "int" `,
206
- # members ` name: "m2", value: "7", type: "int" `
207
- # `
208
- # 3) A pointer where the pointee was captured:
209
- # T x = ` 3, 7 `;
210
- # T* p = &x;
211
- # ` // Captured variable
212
- # name: "p",
213
- # type: "T*",
214
- # value: "0x00500500",
215
- # members ` name: "m1", value: "3", type: "int" `,
216
- # members ` name: "m2", value: "7", type: "int" `
217
- # `
218
- # 4) A pointer where the pointee was not captured:
219
- # T* p = new T;
220
- # ` // Captured variable
221
- # name: "p",
222
- # type: "T*",
223
- # value: "0x00400400"
224
- # status ` is_error: true, description ` format: "unavailable" ` `
225
- # `
226
- # The status should describe the reason for the missing value,
227
- # such as `<optimized out>`, `<inaccessible>`, `<pointers limit reached>`.
228
- # Note that a null pointer should not have members.
229
- # 5) An unnamed value:
230
- # int* p = new int(7);
231
- # ` // Captured variable
232
- # name: "p",
233
- # value: "0x00500500",
234
- # type: "int*",
235
- # members ` value: "7", type: "int" ` `
236
- # 6) An unnamed pointer where the pointee was not captured:
237
- # int* p = new int(7);
238
- # int** pp = &p;
239
- # ` // Captured variable
240
- # name: "pp",
241
- # value: "0x00500500",
242
- # type: "int**",
243
- # members `
244
- # value: "0x00400400",
245
- # type: "int*"
246
- # status `
247
- # is_error: true,
248
- # description: ` format: "unavailable" ` `
249
- # `
250
- # `
251
- # `
252
- # To optimize computation, memory and network traffic, variables that
253
- # repeat in the output multiple times can be stored once in a shared
254
- # variable table and be referenced using the `var_table_index` field. The
255
- # variables stored in the shared table are nameless and are essentially
256
- # a partition of the complete variable. To reconstruct the complete
257
- # variable, merge the referencing variable with the referenced variable.
258
- # When using the shared variable table, the following variables:
259
- # T x = ` 3, 7 `;
260
- # T* p = &x;
261
- # T& r = x;
262
- # ` name: "x", var_table_index: 3, type: "T" ` // Captured variables
263
- # ` name: "p", value "0x00500500", type="T*", var_table_index: 3 `
264
- # ` name: "r", type="T&", var_table_index: 3 `
265
- # ` // Shared variable table entry #3:
266
- # members ` name: "m1", value: "3", type: "int" `,
267
- # members ` name: "m2", value: "7", type: "int" `
268
- # `
269
- # Note that the pointer address is stored with the referencing variable
270
- # and not with the referenced variable. This allows the referenced variable
271
- # to be shared between pointers and references.
272
- # The type field is optional. The debugger agent may or may not support it.
273
- class Variable
274
- include Google::Apis::Core::Hashable
275
-
276
- # Variable type (e.g. `MyClass`). If the variable is split with
277
- # `var_table_index`, `type` goes next to `value`. The interpretation of
278
- # a type is agent specific. It is recommended to include the dynamic type
279
- # rather than a static type of an object.
280
- # Corresponds to the JSON property `type`
236
+ # Breakpoint identifier, unique in the scope of the debuggee.
237
+ # Corresponds to the JSON property `id`
281
238
  # @return [String]
282
- attr_accessor :type
239
+ attr_accessor :id
283
240
 
284
- # Simple value of the variable.
285
- # Corresponds to the JSON property `value`
286
- # @return [String]
287
- attr_accessor :value
241
+ # Represents a location in the source code.
242
+ # Corresponds to the JSON property `location`
243
+ # @return [Google::Apis::ClouddebuggerV2::SourceLocation]
244
+ attr_accessor :location
288
245
 
289
- # Reference to a variable in the shared variable table. More than
290
- # one variable can reference the same variable in the table. The
291
- # `var_table_index` field is an index into `variable_table` in Breakpoint.
292
- # Corresponds to the JSON property `varTableIndex`
293
- # @return [Fixnum]
294
- attr_accessor :var_table_index
246
+ # Time this breakpoint was finalized as seen by the server in seconds
247
+ # resolution.
248
+ # Corresponds to the JSON property `finalTime`
249
+ # @return [String]
250
+ attr_accessor :final_time
295
251
 
296
- # Members contained or pointed to by the variable.
297
- # Corresponds to the JSON property `members`
252
+ # The `variable_table` exists to aid with computation, memory and network
253
+ # traffic optimization. It enables storing a variable once and reference
254
+ # it from multiple variables, including variables stored in the
255
+ # `variable_table` itself.
256
+ # For example, the same `this` object, which may appear at many levels of
257
+ # the stack, can have all of its data stored once in this table. The
258
+ # stack frame variables then would hold only a reference to it.
259
+ # The variable `var_table_index` field is an index into this repeated field.
260
+ # The stored objects are nameless and get their name from the referencing
261
+ # variable. The effective variable is a merge of the referencing variable
262
+ # and the referenced variable.
263
+ # Corresponds to the JSON property `variableTable`
298
264
  # @return [Array<Google::Apis::ClouddebuggerV2::Variable>]
299
- attr_accessor :members
265
+ attr_accessor :variable_table
300
266
 
301
- # Represents a contextual status message.
302
- # The message can indicate an error or informational status, and refer to
303
- # specific parts of the containing object.
304
- # For example, the `Breakpoint.status` field can indicate an error referring
305
- # to the `BREAKPOINT_SOURCE_LOCATION` with the message `Location not found`.
306
- # Corresponds to the JSON property `status`
307
- # @return [Google::Apis::ClouddebuggerV2::StatusMessage]
308
- attr_accessor :status
267
+ # Time this breakpoint was created by the server in seconds resolution.
268
+ # Corresponds to the JSON property `createTime`
269
+ # @return [String]
270
+ attr_accessor :create_time
309
271
 
310
- # Name of the variable, if any.
311
- # Corresponds to the JSON property `name`
272
+ # Only relevant when action is `LOG`. Defines the message to log when
273
+ # the breakpoint hits. The message may include parameter placeholders `$0`,
274
+ # `$1`, etc. These placeholders are replaced with the evaluated value
275
+ # of the appropriate expression. Expressions not referenced in
276
+ # `log_message_format` are not logged.
277
+ # Example: `Message received, id = $0, count = $1` with
278
+ # `expressions` = `[ message.id, message.count ]`.
279
+ # Corresponds to the JSON property `logMessageFormat`
312
280
  # @return [String]
313
- attr_accessor :name
281
+ attr_accessor :log_message_format
282
+
283
+ # A set of custom breakpoint properties, populated by the agent, to be
284
+ # displayed to the user.
285
+ # Corresponds to the JSON property `labels`
286
+ # @return [Hash<String,String>]
287
+ attr_accessor :labels
314
288
 
315
289
  def initialize(**args)
316
290
  update!(**args)
@@ -318,40 +292,52 @@ module Google
318
292
 
319
293
  # Update properties of this object
320
294
  def update!(**args)
321
- @type = args[:type] if args.key?(:type)
322
- @value = args[:value] if args.key?(:value)
323
- @var_table_index = args[:var_table_index] if args.key?(:var_table_index)
324
- @members = args[:members] if args.key?(:members)
295
+ @expressions = args[:expressions] if args.key?(:expressions)
296
+ @evaluated_expressions = args[:evaluated_expressions] if args.key?(:evaluated_expressions)
297
+ @is_final_state = args[:is_final_state] if args.key?(:is_final_state)
298
+ @stack_frames = args[:stack_frames] if args.key?(:stack_frames)
299
+ @condition = args[:condition] if args.key?(:condition)
325
300
  @status = args[:status] if args.key?(:status)
326
- @name = args[:name] if args.key?(:name)
301
+ @user_email = args[:user_email] if args.key?(:user_email)
302
+ @action = args[:action] if args.key?(:action)
303
+ @log_level = args[:log_level] if args.key?(:log_level)
304
+ @id = args[:id] if args.key?(:id)
305
+ @location = args[:location] if args.key?(:location)
306
+ @final_time = args[:final_time] if args.key?(:final_time)
307
+ @variable_table = args[:variable_table] if args.key?(:variable_table)
308
+ @create_time = args[:create_time] if args.key?(:create_time)
309
+ @log_message_format = args[:log_message_format] if args.key?(:log_message_format)
310
+ @labels = args[:labels] if args.key?(:labels)
327
311
  end
328
312
  end
329
313
 
330
- # Represents a stack frame context.
331
- class StackFrame
314
+ # Request to update an active breakpoint.
315
+ class UpdateActiveBreakpointRequest
332
316
  include Google::Apis::Core::Hashable
333
317
 
334
- # Set of local variables at the stack frame location.
335
- # Note that this might not be populated for all stack frames.
336
- # Corresponds to the JSON property `locals`
337
- # @return [Array<Google::Apis::ClouddebuggerV2::Variable>]
338
- attr_accessor :locals
318
+ # Represents the breakpoint specification, status and results.
319
+ # Corresponds to the JSON property `breakpoint`
320
+ # @return [Google::Apis::ClouddebuggerV2::Breakpoint]
321
+ attr_accessor :breakpoint
339
322
 
340
- # Represents a location in the source code.
341
- # Corresponds to the JSON property `location`
342
- # @return [Google::Apis::ClouddebuggerV2::SourceLocation]
343
- attr_accessor :location
323
+ def initialize(**args)
324
+ update!(**args)
325
+ end
344
326
 
345
- # Demangled function name at the call site.
346
- # Corresponds to the JSON property `function`
347
- # @return [String]
348
- attr_accessor :function
327
+ # Update properties of this object
328
+ def update!(**args)
329
+ @breakpoint = args[:breakpoint] if args.key?(:breakpoint)
330
+ end
331
+ end
349
332
 
350
- # Set of arguments passed to this function.
351
- # Note that this might not be populated for all stack frames.
352
- # Corresponds to the JSON property `arguments`
353
- # @return [Array<Google::Apis::ClouddebuggerV2::Variable>]
354
- attr_accessor :arguments
333
+ # Response for setting a breakpoint.
334
+ class SetBreakpointResponse
335
+ include Google::Apis::Core::Hashable
336
+
337
+ # Represents the breakpoint specification, status and results.
338
+ # Corresponds to the JSON property `breakpoint`
339
+ # @return [Google::Apis::ClouddebuggerV2::Breakpoint]
340
+ attr_accessor :breakpoint
355
341
 
356
342
  def initialize(**args)
357
343
  update!(**args)
@@ -359,27 +345,36 @@ module Google
359
345
 
360
346
  # Update properties of this object
361
347
  def update!(**args)
362
- @locals = args[:locals] if args.key?(:locals)
363
- @location = args[:location] if args.key?(:location)
364
- @function = args[:function] if args.key?(:function)
365
- @arguments = args[:arguments] if args.key?(:arguments)
348
+ @breakpoint = args[:breakpoint] if args.key?(:breakpoint)
366
349
  end
367
350
  end
368
351
 
369
- # A unique identifier for a cloud repo.
370
- class RepoId
352
+ # A SourceContext is a reference to a tree of files. A SourceContext together
353
+ # with a path point to a unique revision of a single file or directory.
354
+ class SourceContext
371
355
  include Google::Apis::Core::Hashable
372
356
 
373
- # Selects a repo using a Google Cloud Platform project ID
374
- # (e.g. winged-cargo-31) and a repo name within that project.
375
- # Corresponds to the JSON property `projectRepoId`
376
- # @return [Google::Apis::ClouddebuggerV2::ProjectRepoId]
377
- attr_accessor :project_repo_id
357
+ # A GitSourceContext denotes a particular revision in a third party Git
358
+ # repository (e.g. GitHub).
359
+ # Corresponds to the JSON property `git`
360
+ # @return [Google::Apis::ClouddebuggerV2::GitSourceContext]
361
+ attr_accessor :git
378
362
 
379
- # A server-assigned, globally unique identifier.
380
- # Corresponds to the JSON property `uid`
381
- # @return [String]
382
- attr_accessor :uid
363
+ # A SourceContext referring to a Gerrit project.
364
+ # Corresponds to the JSON property `gerrit`
365
+ # @return [Google::Apis::ClouddebuggerV2::GerritSourceContext]
366
+ attr_accessor :gerrit
367
+
368
+ # A CloudRepoSourceContext denotes a particular revision in a cloud
369
+ # repo (a repo hosted by the Google Cloud Platform).
370
+ # Corresponds to the JSON property `cloudRepo`
371
+ # @return [Google::Apis::ClouddebuggerV2::CloudRepoSourceContext]
372
+ attr_accessor :cloud_repo
373
+
374
+ # A CloudWorkspaceSourceContext denotes a workspace at a particular snapshot.
375
+ # Corresponds to the JSON property `cloudWorkspace`
376
+ # @return [Google::Apis::ClouddebuggerV2::CloudWorkspaceSourceContext]
377
+ attr_accessor :cloud_workspace
383
378
 
384
379
  def initialize(**args)
385
380
  update!(**args)
@@ -387,30 +382,37 @@ module Google
387
382
 
388
383
  # Update properties of this object
389
384
  def update!(**args)
390
- @project_repo_id = args[:project_repo_id] if args.key?(:project_repo_id)
391
- @uid = args[:uid] if args.key?(:uid)
385
+ @git = args[:git] if args.key?(:git)
386
+ @gerrit = args[:gerrit] if args.key?(:gerrit)
387
+ @cloud_repo = args[:cloud_repo] if args.key?(:cloud_repo)
388
+ @cloud_workspace = args[:cloud_workspace] if args.key?(:cloud_workspace)
392
389
  end
393
390
  end
394
391
 
395
- # Represents a message with parameters.
396
- class FormatMessage
392
+ # A CloudRepoSourceContext denotes a particular revision in a cloud
393
+ # repo (a repo hosted by the Google Cloud Platform).
394
+ class CloudRepoSourceContext
397
395
  include Google::Apis::Core::Hashable
398
396
 
399
- # Optional parameters to be embedded into the message.
400
- # Corresponds to the JSON property `parameters`
401
- # @return [Array<String>]
402
- attr_accessor :parameters
397
+ # A revision ID.
398
+ # Corresponds to the JSON property `revisionId`
399
+ # @return [String]
400
+ attr_accessor :revision_id
403
401
 
404
- # Format template for the message. The `format` uses placeholders `$0`,
405
- # `$1`, etc. to reference parameters. `$$` can be used to denote the `$`
406
- # character.
407
- # Examples:
408
- # * `Failed to load '$0' which helps debug $1 the first time it
409
- # is loaded. Again, $0 is very important.`
410
- # * `Please pay $$10 to use $0 instead of $1.`
411
- # Corresponds to the JSON property `format`
402
+ # The name of an alias (branch, tag, etc.).
403
+ # Corresponds to the JSON property `aliasName`
412
404
  # @return [String]
413
- attr_accessor :format
405
+ attr_accessor :alias_name
406
+
407
+ # A unique identifier for a cloud repo.
408
+ # Corresponds to the JSON property `repoId`
409
+ # @return [Google::Apis::ClouddebuggerV2::RepoId]
410
+ attr_accessor :repo_id
411
+
412
+ # An alias to a repo revision.
413
+ # Corresponds to the JSON property `aliasContext`
414
+ # @return [Google::Apis::ClouddebuggerV2::AliasContext]
415
+ attr_accessor :alias_context
414
416
 
415
417
  def initialize(**args)
416
418
  update!(**args)
@@ -418,26 +420,25 @@ module Google
418
420
 
419
421
  # Update properties of this object
420
422
  def update!(**args)
421
- @parameters = args[:parameters] if args.key?(:parameters)
422
- @format = args[:format] if args.key?(:format)
423
+ @revision_id = args[:revision_id] if args.key?(:revision_id)
424
+ @alias_name = args[:alias_name] if args.key?(:alias_name)
425
+ @repo_id = args[:repo_id] if args.key?(:repo_id)
426
+ @alias_context = args[:alias_context] if args.key?(:alias_context)
423
427
  end
424
428
  end
425
429
 
426
- # An ExtendedSourceContext is a SourceContext combined with additional
427
- # details describing the context.
428
- class ExtendedSourceContext
430
+ # Request to register a debuggee.
431
+ class RegisterDebuggeeRequest
429
432
  include Google::Apis::Core::Hashable
430
433
 
431
- # A SourceContext is a reference to a tree of files. A SourceContext together
432
- # with a path point to a unique revision of a single file or directory.
433
- # Corresponds to the JSON property `context`
434
- # @return [Google::Apis::ClouddebuggerV2::SourceContext]
435
- attr_accessor :context
436
-
437
- # Labels with user defined metadata.
438
- # Corresponds to the JSON property `labels`
439
- # @return [Hash<String,String>]
440
- attr_accessor :labels
434
+ # Represents the application to debug. The application may include one or more
435
+ # replicated processes executing the same code. Each of these processes is
436
+ # attached with a debugger agent, carrying out the debugging commands.
437
+ # The agents attached to the same debuggee are identified by using exactly the
438
+ # same field values when registering.
439
+ # Corresponds to the JSON property `debuggee`
440
+ # @return [Google::Apis::ClouddebuggerV2::Debuggee]
441
+ attr_accessor :debuggee
441
442
 
442
443
  def initialize(**args)
443
444
  update!(**args)
@@ -445,24 +446,22 @@ module Google
445
446
 
446
447
  # Update properties of this object
447
448
  def update!(**args)
448
- @context = args[:context] if args.key?(:context)
449
- @labels = args[:labels] if args.key?(:labels)
449
+ @debuggee = args[:debuggee] if args.key?(:debuggee)
450
450
  end
451
451
  end
452
452
 
453
- # An alias to a repo revision.
454
- class AliasContext
453
+ # Response for registering a debuggee.
454
+ class RegisterDebuggeeResponse
455
455
  include Google::Apis::Core::Hashable
456
456
 
457
- # The alias name.
458
- # Corresponds to the JSON property `name`
459
- # @return [String]
460
- attr_accessor :name
461
-
462
- # The alias kind.
463
- # Corresponds to the JSON property `kind`
464
- # @return [String]
465
- attr_accessor :kind
457
+ # Represents the application to debug. The application may include one or more
458
+ # replicated processes executing the same code. Each of these processes is
459
+ # attached with a debugger agent, carrying out the debugging commands.
460
+ # The agents attached to the same debuggee are identified by using exactly the
461
+ # same field values when registering.
462
+ # Corresponds to the JSON property `debuggee`
463
+ # @return [Google::Apis::ClouddebuggerV2::Debuggee]
464
+ attr_accessor :debuggee
466
465
 
467
466
  def initialize(**args)
468
467
  update!(**args)
@@ -470,23 +469,18 @@ module Google
470
469
 
471
470
  # Update properties of this object
472
471
  def update!(**args)
473
- @name = args[:name] if args.key?(:name)
474
- @kind = args[:kind] if args.key?(:kind)
472
+ @debuggee = args[:debuggee] if args.key?(:debuggee)
475
473
  end
476
474
  end
477
475
 
478
- # Response for listing debuggees.
479
- class ListDebuggeesResponse
480
- include Google::Apis::Core::Hashable
481
-
482
- # List of debuggees accessible to the calling user.
483
- # Note that the `description` field is the only human readable field
484
- # that should be displayed to the user.
485
- # The fields `debuggee.id` and `description` fields are guaranteed to be
486
- # set on each debuggee.
487
- # Corresponds to the JSON property `debuggees`
488
- # @return [Array<Google::Apis::ClouddebuggerV2::Debuggee>]
489
- attr_accessor :debuggees
476
+ # Response for getting breakpoint information.
477
+ class GetBreakpointResponse
478
+ include Google::Apis::Core::Hashable
479
+
480
+ # Represents the breakpoint specification, status and results.
481
+ # Corresponds to the JSON property `breakpoint`
482
+ # @return [Google::Apis::ClouddebuggerV2::Breakpoint]
483
+ attr_accessor :breakpoint
490
484
 
491
485
  def initialize(**args)
492
486
  update!(**args)
@@ -494,42 +488,61 @@ module Google
494
488
 
495
489
  # Update properties of this object
496
490
  def update!(**args)
497
- @debuggees = args[:debuggees] if args.key?(:debuggees)
491
+ @breakpoint = args[:breakpoint] if args.key?(:breakpoint)
498
492
  end
499
493
  end
500
494
 
501
- # A generic empty message that you can re-use to avoid defining duplicated
502
- # empty messages in your APIs. A typical example is to use it as the request
503
- # or the response type of an API method. For instance:
504
- # service Foo `
505
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
506
- # `
507
- # The JSON representation for `Empty` is empty JSON object ````.
508
- class Empty
495
+ # Represents a contextual status message.
496
+ # The message can indicate an error or informational status, and refer to
497
+ # specific parts of the containing object.
498
+ # For example, the `Breakpoint.status` field can indicate an error referring
499
+ # to the `BREAKPOINT_SOURCE_LOCATION` with the message `Location not found`.
500
+ class StatusMessage
509
501
  include Google::Apis::Core::Hashable
510
502
 
503
+ # Distinguishes errors from informational messages.
504
+ # Corresponds to the JSON property `isError`
505
+ # @return [Boolean]
506
+ attr_accessor :is_error
507
+ alias_method :is_error?, :is_error
508
+
509
+ # Represents a message with parameters.
510
+ # Corresponds to the JSON property `description`
511
+ # @return [Google::Apis::ClouddebuggerV2::FormatMessage]
512
+ attr_accessor :description
513
+
514
+ # Reference to which the message applies.
515
+ # Corresponds to the JSON property `refersTo`
516
+ # @return [String]
517
+ attr_accessor :refers_to
518
+
511
519
  def initialize(**args)
512
520
  update!(**args)
513
521
  end
514
522
 
515
523
  # Update properties of this object
516
524
  def update!(**args)
525
+ @is_error = args[:is_error] if args.key?(:is_error)
526
+ @description = args[:description] if args.key?(:description)
527
+ @refers_to = args[:refers_to] if args.key?(:refers_to)
517
528
  end
518
529
  end
519
530
 
520
- # Represents a location in the source code.
521
- class SourceLocation
531
+ # A GitSourceContext denotes a particular revision in a third party Git
532
+ # repository (e.g. GitHub).
533
+ class GitSourceContext
522
534
  include Google::Apis::Core::Hashable
523
535
 
524
- # Line inside the file. The first line in the file has the value `1`.
525
- # Corresponds to the JSON property `line`
526
- # @return [Fixnum]
527
- attr_accessor :line
536
+ # Git commit hash.
537
+ # required.
538
+ # Corresponds to the JSON property `revisionId`
539
+ # @return [String]
540
+ attr_accessor :revision_id
528
541
 
529
- # Path to the source file within the source context of the target binary.
530
- # Corresponds to the JSON property `path`
542
+ # Git repository URL.
543
+ # Corresponds to the JSON property `url`
531
544
  # @return [String]
532
- attr_accessor :path
545
+ attr_accessor :url
533
546
 
534
547
  def initialize(**args)
535
548
  update!(**args)
@@ -537,81 +550,112 @@ module Google
537
550
 
538
551
  # Update properties of this object
539
552
  def update!(**args)
540
- @line = args[:line] if args.key?(:line)
541
- @path = args[:path] if args.key?(:path)
553
+ @revision_id = args[:revision_id] if args.key?(:revision_id)
554
+ @url = args[:url] if args.key?(:url)
542
555
  end
543
556
  end
544
557
 
545
- # Represents the application to debug. The application may include one or more
546
- # replicated processes executing the same code. Each of these processes is
547
- # attached with a debugger agent, carrying out the debugging commands.
548
- # The agents attached to the same debuggee are identified by using exactly the
549
- # same field values when registering.
550
- class Debuggee
558
+ # Represents a variable or an argument possibly of a compound object type.
559
+ # Note how the following variables are represented:
560
+ # 1) A simple variable:
561
+ # int x = 5
562
+ # ` name: "x", value: "5", type: "int" ` // Captured variable
563
+ # 2) A compound object:
564
+ # struct T `
565
+ # int m1;
566
+ # int m2;
567
+ # `;
568
+ # T x = ` 3, 7 `;
569
+ # ` // Captured variable
570
+ # name: "x",
571
+ # type: "T",
572
+ # members ` name: "m1", value: "3", type: "int" `,
573
+ # members ` name: "m2", value: "7", type: "int" `
574
+ # `
575
+ # 3) A pointer where the pointee was captured:
576
+ # T x = ` 3, 7 `;
577
+ # T* p = &x;
578
+ # ` // Captured variable
579
+ # name: "p",
580
+ # type: "T*",
581
+ # value: "0x00500500",
582
+ # members ` name: "m1", value: "3", type: "int" `,
583
+ # members ` name: "m2", value: "7", type: "int" `
584
+ # `
585
+ # 4) A pointer where the pointee was not captured:
586
+ # T* p = new T;
587
+ # ` // Captured variable
588
+ # name: "p",
589
+ # type: "T*",
590
+ # value: "0x00400400"
591
+ # status ` is_error: true, description ` format: "unavailable" ` `
592
+ # `
593
+ # The status should describe the reason for the missing value,
594
+ # such as `<optimized out>`, `<inaccessible>`, `<pointers limit reached>`.
595
+ # Note that a null pointer should not have members.
596
+ # 5) An unnamed value:
597
+ # int* p = new int(7);
598
+ # ` // Captured variable
599
+ # name: "p",
600
+ # value: "0x00500500",
601
+ # type: "int*",
602
+ # members ` value: "7", type: "int" ` `
603
+ # 6) An unnamed pointer where the pointee was not captured:
604
+ # int* p = new int(7);
605
+ # int** pp = &p;
606
+ # ` // Captured variable
607
+ # name: "pp",
608
+ # value: "0x00500500",
609
+ # type: "int**",
610
+ # members `
611
+ # value: "0x00400400",
612
+ # type: "int*"
613
+ # status `
614
+ # is_error: true,
615
+ # description: ` format: "unavailable" ` `
616
+ # `
617
+ # `
618
+ # `
619
+ # To optimize computation, memory and network traffic, variables that
620
+ # repeat in the output multiple times can be stored once in a shared
621
+ # variable table and be referenced using the `var_table_index` field. The
622
+ # variables stored in the shared table are nameless and are essentially
623
+ # a partition of the complete variable. To reconstruct the complete
624
+ # variable, merge the referencing variable with the referenced variable.
625
+ # When using the shared variable table, the following variables:
626
+ # T x = ` 3, 7 `;
627
+ # T* p = &x;
628
+ # T& r = x;
629
+ # ` name: "x", var_table_index: 3, type: "T" ` // Captured variables
630
+ # ` name: "p", value "0x00500500", type="T*", var_table_index: 3 `
631
+ # ` name: "r", type="T&", var_table_index: 3 `
632
+ # ` // Shared variable table entry #3:
633
+ # members ` name: "m1", value: "3", type: "int" `,
634
+ # members ` name: "m2", value: "7", type: "int" `
635
+ # `
636
+ # Note that the pointer address is stored with the referencing variable
637
+ # and not with the referenced variable. This allows the referenced variable
638
+ # to be shared between pointers and references.
639
+ # The type field is optional. The debugger agent may or may not support it.
640
+ class Variable
551
641
  include Google::Apis::Core::Hashable
552
642
 
553
- # Project the debuggee is associated with.
554
- # Use the project number when registering a Google Cloud Platform project.
555
- # Corresponds to the JSON property `project`
556
- # @return [String]
557
- attr_accessor :project
558
-
559
- # Unique identifier for the debuggee generated by the controller service.
560
- # Corresponds to the JSON property `id`
561
- # @return [String]
562
- attr_accessor :id
563
-
564
- # If set to `true`, indicates that the agent should disable itself and
565
- # detach from the debuggee.
566
- # Corresponds to the JSON property `isDisabled`
567
- # @return [Boolean]
568
- attr_accessor :is_disabled
569
- alias_method :is_disabled?, :is_disabled
570
-
571
- # Version ID of the agent release. The version ID is structured as
572
- # following: `domain/type/vmajor.minor` (for example
573
- # `google.com/gcp-java/v1.1`).
574
- # Corresponds to the JSON property `agentVersion`
575
- # @return [String]
576
- attr_accessor :agent_version
577
-
578
- # Debuggee uniquifier within the project.
579
- # Any string that identifies the application within the project can be used.
580
- # Including environment and version or build IDs is recommended.
581
- # Corresponds to the JSON property `uniquifier`
582
- # @return [String]
583
- attr_accessor :uniquifier
643
+ # Reference to a variable in the shared variable table. More than
644
+ # one variable can reference the same variable in the table. The
645
+ # `var_table_index` field is an index into `variable_table` in Breakpoint.
646
+ # Corresponds to the JSON property `varTableIndex`
647
+ # @return [Fixnum]
648
+ attr_accessor :var_table_index
584
649
 
585
- # Human readable description of the debuggee.
586
- # Including a human-readable project name, environment name and version
587
- # information is recommended.
588
- # Corresponds to the JSON property `description`
650
+ # Simple value of the variable.
651
+ # Corresponds to the JSON property `value`
589
652
  # @return [String]
590
- attr_accessor :description
591
-
592
- # References to the locations and revisions of the source code used in the
593
- # deployed application.
594
- # NOTE: This field is deprecated. Consumers should use
595
- # `ext_source_contexts` if it is not empty. Debug agents should populate
596
- # both this field and `ext_source_contexts`.
597
- # Corresponds to the JSON property `sourceContexts`
598
- # @return [Array<Google::Apis::ClouddebuggerV2::SourceContext>]
599
- attr_accessor :source_contexts
600
-
601
- # References to the locations and revisions of the source code used in the
602
- # deployed application.
603
- # Contexts describing a remote repo related to the source code
604
- # have a `category` label of `remote_repo`. Source snapshot source
605
- # contexts have a `category` of `snapshot`.
606
- # Corresponds to the JSON property `extSourceContexts`
607
- # @return [Array<Google::Apis::ClouddebuggerV2::ExtendedSourceContext>]
608
- attr_accessor :ext_source_contexts
653
+ attr_accessor :value
609
654
 
610
- # A set of custom debuggee properties, populated by the agent, to be
611
- # displayed to the user.
612
- # Corresponds to the JSON property `labels`
613
- # @return [Hash<String,String>]
614
- attr_accessor :labels
655
+ # Members contained or pointed to by the variable.
656
+ # Corresponds to the JSON property `members`
657
+ # @return [Array<Google::Apis::ClouddebuggerV2::Variable>]
658
+ attr_accessor :members
615
659
 
616
660
  # Represents a contextual status message.
617
661
  # The message can indicate an error or informational status, and refer to
@@ -622,12 +666,18 @@ module Google
622
666
  # @return [Google::Apis::ClouddebuggerV2::StatusMessage]
623
667
  attr_accessor :status
624
668
 
625
- # If set to `true`, indicates that the debuggee is considered as inactive by
626
- # the Controller service.
627
- # Corresponds to the JSON property `isInactive`
628
- # @return [Boolean]
629
- attr_accessor :is_inactive
630
- alias_method :is_inactive?, :is_inactive
669
+ # Name of the variable, if any.
670
+ # Corresponds to the JSON property `name`
671
+ # @return [String]
672
+ attr_accessor :name
673
+
674
+ # Variable type (e.g. `MyClass`). If the variable is split with
675
+ # `var_table_index`, `type` goes next to `value`. The interpretation of
676
+ # a type is agent specific. It is recommended to include the dynamic type
677
+ # rather than a static type of an object.
678
+ # Corresponds to the JSON property `type`
679
+ # @return [String]
680
+ attr_accessor :type
631
681
 
632
682
  def initialize(**args)
633
683
  update!(**args)
@@ -635,42 +685,40 @@ module Google
635
685
 
636
686
  # Update properties of this object
637
687
  def update!(**args)
638
- @project = args[:project] if args.key?(:project)
639
- @id = args[:id] if args.key?(:id)
640
- @is_disabled = args[:is_disabled] if args.key?(:is_disabled)
641
- @agent_version = args[:agent_version] if args.key?(:agent_version)
642
- @uniquifier = args[:uniquifier] if args.key?(:uniquifier)
643
- @description = args[:description] if args.key?(:description)
644
- @source_contexts = args[:source_contexts] if args.key?(:source_contexts)
645
- @ext_source_contexts = args[:ext_source_contexts] if args.key?(:ext_source_contexts)
646
- @labels = args[:labels] if args.key?(:labels)
688
+ @var_table_index = args[:var_table_index] if args.key?(:var_table_index)
689
+ @value = args[:value] if args.key?(:value)
690
+ @members = args[:members] if args.key?(:members)
647
691
  @status = args[:status] if args.key?(:status)
648
- @is_inactive = args[:is_inactive] if args.key?(:is_inactive)
692
+ @name = args[:name] if args.key?(:name)
693
+ @type = args[:type] if args.key?(:type)
649
694
  end
650
695
  end
651
696
 
652
- # Response for listing active breakpoints.
653
- class ListActiveBreakpointsResponse
697
+ # Represents a stack frame context.
698
+ class StackFrame
654
699
  include Google::Apis::Core::Hashable
655
700
 
656
- # List of all active breakpoints.
657
- # The fields `id` and `location` are guaranteed to be set on each breakpoint.
658
- # Corresponds to the JSON property `breakpoints`
659
- # @return [Array<Google::Apis::ClouddebuggerV2::Breakpoint>]
660
- attr_accessor :breakpoints
701
+ # Demangled function name at the call site.
702
+ # Corresponds to the JSON property `function`
703
+ # @return [String]
704
+ attr_accessor :function
661
705
 
662
- # The `wait_expired` field is set to true by the server when the
663
- # request times out and the field `success_on_timeout` is set to true.
664
- # Corresponds to the JSON property `waitExpired`
665
- # @return [Boolean]
666
- attr_accessor :wait_expired
667
- alias_method :wait_expired?, :wait_expired
706
+ # Set of arguments passed to this function.
707
+ # Note that this might not be populated for all stack frames.
708
+ # Corresponds to the JSON property `arguments`
709
+ # @return [Array<Google::Apis::ClouddebuggerV2::Variable>]
710
+ attr_accessor :arguments
668
711
 
669
- # A wait token that can be used in the next method call to block until
670
- # the list of breakpoints changes.
671
- # Corresponds to the JSON property `nextWaitToken`
672
- # @return [String]
673
- attr_accessor :next_wait_token
712
+ # Set of local variables at the stack frame location.
713
+ # Note that this might not be populated for all stack frames.
714
+ # Corresponds to the JSON property `locals`
715
+ # @return [Array<Google::Apis::ClouddebuggerV2::Variable>]
716
+ attr_accessor :locals
717
+
718
+ # Represents a location in the source code.
719
+ # Corresponds to the JSON property `location`
720
+ # @return [Google::Apis::ClouddebuggerV2::SourceLocation]
721
+ attr_accessor :location
674
722
 
675
723
  def initialize(**args)
676
724
  update!(**args)
@@ -678,26 +726,27 @@ module Google
678
726
 
679
727
  # Update properties of this object
680
728
  def update!(**args)
681
- @breakpoints = args[:breakpoints] if args.key?(:breakpoints)
682
- @wait_expired = args[:wait_expired] if args.key?(:wait_expired)
683
- @next_wait_token = args[:next_wait_token] if args.key?(:next_wait_token)
729
+ @function = args[:function] if args.key?(:function)
730
+ @arguments = args[:arguments] if args.key?(:arguments)
731
+ @locals = args[:locals] if args.key?(:locals)
732
+ @location = args[:location] if args.key?(:location)
684
733
  end
685
734
  end
686
735
 
687
- # Selects a repo using a Google Cloud Platform project ID
688
- # (e.g. winged-cargo-31) and a repo name within that project.
689
- class ProjectRepoId
736
+ # A unique identifier for a cloud repo.
737
+ class RepoId
690
738
  include Google::Apis::Core::Hashable
691
739
 
692
- # The ID of the project.
693
- # Corresponds to the JSON property `projectId`
740
+ # A server-assigned, globally unique identifier.
741
+ # Corresponds to the JSON property `uid`
694
742
  # @return [String]
695
- attr_accessor :project_id
743
+ attr_accessor :uid
696
744
 
697
- # The name of the repo. Leave empty for the default repo.
698
- # Corresponds to the JSON property `repoName`
699
- # @return [String]
700
- attr_accessor :repo_name
745
+ # Selects a repo using a Google Cloud Platform project ID
746
+ # (e.g. winged-cargo-31) and a repo name within that project.
747
+ # Corresponds to the JSON property `projectRepoId`
748
+ # @return [Google::Apis::ClouddebuggerV2::ProjectRepoId]
749
+ attr_accessor :project_repo_id
701
750
 
702
751
  def initialize(**args)
703
752
  update!(**args)
@@ -705,27 +754,30 @@ module Google
705
754
 
706
755
  # Update properties of this object
707
756
  def update!(**args)
708
- @project_id = args[:project_id] if args.key?(:project_id)
709
- @repo_name = args[:repo_name] if args.key?(:repo_name)
757
+ @uid = args[:uid] if args.key?(:uid)
758
+ @project_repo_id = args[:project_repo_id] if args.key?(:project_repo_id)
710
759
  end
711
760
  end
712
761
 
713
- # A CloudWorkspaceSourceContext denotes a workspace at a particular snapshot.
714
- class CloudWorkspaceSourceContext
762
+ # Represents a message with parameters.
763
+ class FormatMessage
715
764
  include Google::Apis::Core::Hashable
716
765
 
717
- # The ID of the snapshot.
718
- # An empty snapshot_id refers to the most recent snapshot.
719
- # Corresponds to the JSON property `snapshotId`
720
- # @return [String]
721
- attr_accessor :snapshot_id
766
+ # Optional parameters to be embedded into the message.
767
+ # Corresponds to the JSON property `parameters`
768
+ # @return [Array<String>]
769
+ attr_accessor :parameters
722
770
 
723
- # A CloudWorkspaceId is a unique identifier for a cloud workspace.
724
- # A cloud workspace is a place associated with a repo where modified files
725
- # can be stored before they are committed.
726
- # Corresponds to the JSON property `workspaceId`
727
- # @return [Google::Apis::ClouddebuggerV2::CloudWorkspaceId]
728
- attr_accessor :workspace_id
771
+ # Format template for the message. The `format` uses placeholders `$0`,
772
+ # `$1`, etc. to reference parameters. `$$` can be used to denote the `$`
773
+ # character.
774
+ # Examples:
775
+ # * `Failed to load '$0' which helps debug $1 the first time it
776
+ # is loaded. Again, $0 is very important.`
777
+ # * `Please pay $$10 to use $0 instead of $1.`
778
+ # Corresponds to the JSON property `format`
779
+ # @return [String]
780
+ attr_accessor :format
729
781
 
730
782
  def initialize(**args)
731
783
  update!(**args)
@@ -733,41 +785,26 @@ module Google
733
785
 
734
786
  # Update properties of this object
735
787
  def update!(**args)
736
- @snapshot_id = args[:snapshot_id] if args.key?(:snapshot_id)
737
- @workspace_id = args[:workspace_id] if args.key?(:workspace_id)
788
+ @parameters = args[:parameters] if args.key?(:parameters)
789
+ @format = args[:format] if args.key?(:format)
738
790
  end
739
791
  end
740
792
 
741
- # A SourceContext referring to a Gerrit project.
742
- class GerritSourceContext
793
+ # An ExtendedSourceContext is a SourceContext combined with additional
794
+ # details describing the context.
795
+ class ExtendedSourceContext
743
796
  include Google::Apis::Core::Hashable
744
797
 
745
- # The full project name within the host. Projects may be nested, so
746
- # "project/subproject" is a valid project name.
747
- # The "repo name" is hostURI/project.
748
- # Corresponds to the JSON property `gerritProject`
749
- # @return [String]
750
- attr_accessor :gerrit_project
751
-
752
- # An alias to a repo revision.
753
- # Corresponds to the JSON property `aliasContext`
754
- # @return [Google::Apis::ClouddebuggerV2::AliasContext]
755
- attr_accessor :alias_context
756
-
757
- # The URI of a running Gerrit instance.
758
- # Corresponds to the JSON property `hostUri`
759
- # @return [String]
760
- attr_accessor :host_uri
761
-
762
- # A revision (commit) ID.
763
- # Corresponds to the JSON property `revisionId`
764
- # @return [String]
765
- attr_accessor :revision_id
798
+ # A SourceContext is a reference to a tree of files. A SourceContext together
799
+ # with a path point to a unique revision of a single file or directory.
800
+ # Corresponds to the JSON property `context`
801
+ # @return [Google::Apis::ClouddebuggerV2::SourceContext]
802
+ attr_accessor :context
766
803
 
767
- # The name of an alias (branch, tag, etc.).
768
- # Corresponds to the JSON property `aliasName`
769
- # @return [String]
770
- attr_accessor :alias_name
804
+ # Labels with user defined metadata.
805
+ # Corresponds to the JSON property `labels`
806
+ # @return [Hash<String,String>]
807
+ attr_accessor :labels
771
808
 
772
809
  def initialize(**args)
773
810
  update!(**args)
@@ -775,204 +812,189 @@ module Google
775
812
 
776
813
  # Update properties of this object
777
814
  def update!(**args)
778
- @gerrit_project = args[:gerrit_project] if args.key?(:gerrit_project)
779
- @alias_context = args[:alias_context] if args.key?(:alias_context)
780
- @host_uri = args[:host_uri] if args.key?(:host_uri)
781
- @revision_id = args[:revision_id] if args.key?(:revision_id)
782
- @alias_name = args[:alias_name] if args.key?(:alias_name)
815
+ @context = args[:context] if args.key?(:context)
816
+ @labels = args[:labels] if args.key?(:labels)
783
817
  end
784
818
  end
785
819
 
786
- # Response for updating an active breakpoint.
787
- # The message is defined to allow future extensions.
788
- class UpdateActiveBreakpointResponse
820
+ # Response for listing debuggees.
821
+ class ListDebuggeesResponse
789
822
  include Google::Apis::Core::Hashable
790
823
 
824
+ # List of debuggees accessible to the calling user.
825
+ # Note that the `description` field is the only human readable field
826
+ # that should be displayed to the user.
827
+ # The fields `debuggee.id` and `description` fields are guaranteed to be
828
+ # set on each debuggee.
829
+ # Corresponds to the JSON property `debuggees`
830
+ # @return [Array<Google::Apis::ClouddebuggerV2::Debuggee>]
831
+ attr_accessor :debuggees
832
+
791
833
  def initialize(**args)
792
834
  update!(**args)
793
835
  end
794
836
 
795
837
  # Update properties of this object
796
838
  def update!(**args)
839
+ @debuggees = args[:debuggees] if args.key?(:debuggees)
797
840
  end
798
841
  end
799
842
 
800
- # A CloudWorkspaceId is a unique identifier for a cloud workspace.
801
- # A cloud workspace is a place associated with a repo where modified files
802
- # can be stored before they are committed.
803
- class CloudWorkspaceId
843
+ # An alias to a repo revision.
844
+ class AliasContext
804
845
  include Google::Apis::Core::Hashable
805
846
 
806
- # A unique identifier for a cloud repo.
807
- # Corresponds to the JSON property `repoId`
808
- # @return [Google::Apis::ClouddebuggerV2::RepoId]
809
- attr_accessor :repo_id
810
-
811
- # The unique name of the workspace within the repo. This is the name
812
- # chosen by the client in the Source API's CreateWorkspace method.
847
+ # The alias name.
813
848
  # Corresponds to the JSON property `name`
814
849
  # @return [String]
815
850
  attr_accessor :name
816
851
 
852
+ # The alias kind.
853
+ # Corresponds to the JSON property `kind`
854
+ # @return [String]
855
+ attr_accessor :kind
856
+
817
857
  def initialize(**args)
818
858
  update!(**args)
819
859
  end
820
860
 
821
861
  # Update properties of this object
822
862
  def update!(**args)
823
- @repo_id = args[:repo_id] if args.key?(:repo_id)
824
863
  @name = args[:name] if args.key?(:name)
864
+ @kind = args[:kind] if args.key?(:kind)
825
865
  end
826
866
  end
827
867
 
828
- # Response for listing breakpoints.
829
- class ListBreakpointsResponse
868
+ # A generic empty message that you can re-use to avoid defining duplicated
869
+ # empty messages in your APIs. A typical example is to use it as the request
870
+ # or the response type of an API method. For instance:
871
+ # service Foo `
872
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
873
+ # `
874
+ # The JSON representation for `Empty` is empty JSON object ````.
875
+ class Empty
830
876
  include Google::Apis::Core::Hashable
831
877
 
832
- # List of breakpoints matching the request.
833
- # The fields `id` and `location` are guaranteed to be set on each breakpoint.
834
- # The fields: `stack_frames`, `evaluated_expressions` and `variable_table`
835
- # are cleared on each breakpoint regardless of it's status.
836
- # Corresponds to the JSON property `breakpoints`
837
- # @return [Array<Google::Apis::ClouddebuggerV2::Breakpoint>]
838
- attr_accessor :breakpoints
839
-
840
- # A wait token that can be used in the next call to `list` (REST) or
841
- # `ListBreakpoints` (RPC) to block until the list of breakpoints has changes.
842
- # Corresponds to the JSON property `nextWaitToken`
843
- # @return [String]
844
- attr_accessor :next_wait_token
845
-
846
878
  def initialize(**args)
847
879
  update!(**args)
848
880
  end
849
881
 
850
882
  # Update properties of this object
851
883
  def update!(**args)
852
- @breakpoints = args[:breakpoints] if args.key?(:breakpoints)
853
- @next_wait_token = args[:next_wait_token] if args.key?(:next_wait_token)
854
884
  end
855
885
  end
856
886
 
857
- # Represents the breakpoint specification, status and results.
858
- class Breakpoint
859
- include Google::Apis::Core::Hashable
860
-
861
- # List of read-only expressions to evaluate at the breakpoint location.
862
- # The expressions are composed using expressions in the programming language
863
- # at the source location. If the breakpoint action is `LOG`, the evaluated
864
- # expressions are included in log statements.
865
- # Corresponds to the JSON property `expressions`
866
- # @return [Array<String>]
867
- attr_accessor :expressions
868
-
869
- # Values of evaluated expressions at breakpoint time.
870
- # The evaluated expressions appear in exactly the same order they
871
- # are listed in the `expressions` field.
872
- # The `name` field holds the original expression text, the `value` or
873
- # `members` field holds the result of the evaluated expression.
874
- # If the expression cannot be evaluated, the `status` inside the `Variable`
875
- # will indicate an error and contain the error text.
876
- # Corresponds to the JSON property `evaluatedExpressions`
877
- # @return [Array<Google::Apis::ClouddebuggerV2::Variable>]
878
- attr_accessor :evaluated_expressions
879
-
880
- # When true, indicates that this is a final result and the
881
- # breakpoint state will not change from here on.
882
- # Corresponds to the JSON property `isFinalState`
883
- # @return [Boolean]
884
- attr_accessor :is_final_state
885
- alias_method :is_final_state?, :is_final_state
886
-
887
- # The stack at breakpoint time.
888
- # Corresponds to the JSON property `stackFrames`
889
- # @return [Array<Google::Apis::ClouddebuggerV2::StackFrame>]
890
- attr_accessor :stack_frames
891
-
892
- # Condition that triggers the breakpoint.
893
- # The condition is a compound boolean expression composed using expressions
894
- # in a programming language at the source location.
895
- # Corresponds to the JSON property `condition`
896
- # @return [String]
897
- attr_accessor :condition
898
-
899
- # Represents a contextual status message.
900
- # The message can indicate an error or informational status, and refer to
901
- # specific parts of the containing object.
902
- # For example, the `Breakpoint.status` field can indicate an error referring
903
- # to the `BREAKPOINT_SOURCE_LOCATION` with the message `Location not found`.
904
- # Corresponds to the JSON property `status`
905
- # @return [Google::Apis::ClouddebuggerV2::StatusMessage]
906
- attr_accessor :status
887
+ # Represents a location in the source code.
888
+ class SourceLocation
889
+ include Google::Apis::Core::Hashable
907
890
 
908
- # E-mail address of the user that created this breakpoint
909
- # Corresponds to the JSON property `userEmail`
891
+ # Path to the source file within the source context of the target binary.
892
+ # Corresponds to the JSON property `path`
910
893
  # @return [String]
911
- attr_accessor :user_email
894
+ attr_accessor :path
912
895
 
913
- # Action that the agent should perform when the code at the
914
- # breakpoint location is hit.
915
- # Corresponds to the JSON property `action`
916
- # @return [String]
917
- attr_accessor :action
896
+ # Line inside the file. The first line in the file has the value `1`.
897
+ # Corresponds to the JSON property `line`
898
+ # @return [Fixnum]
899
+ attr_accessor :line
918
900
 
919
- # Indicates the severity of the log. Only relevant when action is `LOG`.
920
- # Corresponds to the JSON property `logLevel`
921
- # @return [String]
922
- attr_accessor :log_level
901
+ def initialize(**args)
902
+ update!(**args)
903
+ end
923
904
 
924
- # Breakpoint identifier, unique in the scope of the debuggee.
905
+ # Update properties of this object
906
+ def update!(**args)
907
+ @path = args[:path] if args.key?(:path)
908
+ @line = args[:line] if args.key?(:line)
909
+ end
910
+ end
911
+
912
+ # Represents the application to debug. The application may include one or more
913
+ # replicated processes executing the same code. Each of these processes is
914
+ # attached with a debugger agent, carrying out the debugging commands.
915
+ # The agents attached to the same debuggee are identified by using exactly the
916
+ # same field values when registering.
917
+ class Debuggee
918
+ include Google::Apis::Core::Hashable
919
+
920
+ # Unique identifier for the debuggee generated by the controller service.
925
921
  # Corresponds to the JSON property `id`
926
922
  # @return [String]
927
923
  attr_accessor :id
928
924
 
929
- # Represents a location in the source code.
930
- # Corresponds to the JSON property `location`
931
- # @return [Google::Apis::ClouddebuggerV2::SourceLocation]
932
- attr_accessor :location
925
+ # Version ID of the agent release. The version ID is structured as
926
+ # following: `domain/type/vmajor.minor` (for example
927
+ # `google.com/gcp-java/v1.1`).
928
+ # Corresponds to the JSON property `agentVersion`
929
+ # @return [String]
930
+ attr_accessor :agent_version
933
931
 
934
- # Time this breakpoint was finalized as seen by the server in seconds
935
- # resolution.
936
- # Corresponds to the JSON property `finalTime`
932
+ # If set to `true`, indicates that the agent should disable itself and
933
+ # detach from the debuggee.
934
+ # Corresponds to the JSON property `isDisabled`
935
+ # @return [Boolean]
936
+ attr_accessor :is_disabled
937
+ alias_method :is_disabled?, :is_disabled
938
+
939
+ # Debuggee uniquifier within the project.
940
+ # Any string that identifies the application within the project can be used.
941
+ # Including environment and version or build IDs is recommended.
942
+ # Corresponds to the JSON property `uniquifier`
937
943
  # @return [String]
938
- attr_accessor :final_time
944
+ attr_accessor :uniquifier
939
945
 
940
- # The `variable_table` exists to aid with computation, memory and network
941
- # traffic optimization. It enables storing a variable once and reference
942
- # it from multiple variables, including variables stored in the
943
- # `variable_table` itself.
944
- # For example, the same `this` object, which may appear at many levels of
945
- # the stack, can have all of its data stored once in this table. The
946
- # stack frame variables then would hold only a reference to it.
947
- # The variable `var_table_index` field is an index into this repeated field.
948
- # The stored objects are nameless and get their name from the referencing
949
- # variable. The effective variable is a merge of the referencing variable
950
- # and the referenced variable.
951
- # Corresponds to the JSON property `variableTable`
952
- # @return [Array<Google::Apis::ClouddebuggerV2::Variable>]
953
- attr_accessor :variable_table
946
+ # Human readable description of the debuggee.
947
+ # Including a human-readable project name, environment name and version
948
+ # information is recommended.
949
+ # Corresponds to the JSON property `description`
950
+ # @return [String]
951
+ attr_accessor :description
954
952
 
955
- # A set of custom breakpoint properties, populated by the agent, to be
953
+ # References to the locations and revisions of the source code used in the
954
+ # deployed application.
955
+ # NOTE: This field is deprecated. Consumers should use
956
+ # `ext_source_contexts` if it is not empty. Debug agents should populate
957
+ # both this field and `ext_source_contexts`.
958
+ # Corresponds to the JSON property `sourceContexts`
959
+ # @return [Array<Google::Apis::ClouddebuggerV2::SourceContext>]
960
+ attr_accessor :source_contexts
961
+
962
+ # References to the locations and revisions of the source code used in the
963
+ # deployed application.
964
+ # Contexts describing a remote repo related to the source code
965
+ # have a `category` label of `remote_repo`. Source snapshot source
966
+ # contexts have a `category` of `snapshot`.
967
+ # Corresponds to the JSON property `extSourceContexts`
968
+ # @return [Array<Google::Apis::ClouddebuggerV2::ExtendedSourceContext>]
969
+ attr_accessor :ext_source_contexts
970
+
971
+ # A set of custom debuggee properties, populated by the agent, to be
956
972
  # displayed to the user.
957
973
  # Corresponds to the JSON property `labels`
958
974
  # @return [Hash<String,String>]
959
975
  attr_accessor :labels
960
976
 
961
- # Only relevant when action is `LOG`. Defines the message to log when
962
- # the breakpoint hits. The message may include parameter placeholders `$0`,
963
- # `$1`, etc. These placeholders are replaced with the evaluated value
964
- # of the appropriate expression. Expressions not referenced in
965
- # `log_message_format` are not logged.
966
- # Example: `Message received, id = $0, count = $1` with
967
- # `expressions` = `[ message.id, message.count ]`.
968
- # Corresponds to the JSON property `logMessageFormat`
969
- # @return [String]
970
- attr_accessor :log_message_format
977
+ # Represents a contextual status message.
978
+ # The message can indicate an error or informational status, and refer to
979
+ # specific parts of the containing object.
980
+ # For example, the `Breakpoint.status` field can indicate an error referring
981
+ # to the `BREAKPOINT_SOURCE_LOCATION` with the message `Location not found`.
982
+ # Corresponds to the JSON property `status`
983
+ # @return [Google::Apis::ClouddebuggerV2::StatusMessage]
984
+ attr_accessor :status
971
985
 
972
- # Time this breakpoint was created by the server in seconds resolution.
973
- # Corresponds to the JSON property `createTime`
986
+ # If set to `true`, indicates that the debuggee is considered as inactive by
987
+ # the Controller service.
988
+ # Corresponds to the JSON property `isInactive`
989
+ # @return [Boolean]
990
+ attr_accessor :is_inactive
991
+ alias_method :is_inactive?, :is_inactive
992
+
993
+ # Project the debuggee is associated with.
994
+ # Use the project number when registering a Google Cloud Platform project.
995
+ # Corresponds to the JSON property `project`
974
996
  # @return [String]
975
- attr_accessor :create_time
997
+ attr_accessor :project
976
998
 
977
999
  def initialize(**args)
978
1000
  update!(**args)
@@ -980,52 +1002,34 @@ module Google
980
1002
 
981
1003
  # Update properties of this object
982
1004
  def update!(**args)
983
- @expressions = args[:expressions] if args.key?(:expressions)
984
- @evaluated_expressions = args[:evaluated_expressions] if args.key?(:evaluated_expressions)
985
- @is_final_state = args[:is_final_state] if args.key?(:is_final_state)
986
- @stack_frames = args[:stack_frames] if args.key?(:stack_frames)
987
- @condition = args[:condition] if args.key?(:condition)
988
- @status = args[:status] if args.key?(:status)
989
- @user_email = args[:user_email] if args.key?(:user_email)
990
- @action = args[:action] if args.key?(:action)
991
- @log_level = args[:log_level] if args.key?(:log_level)
992
1005
  @id = args[:id] if args.key?(:id)
993
- @location = args[:location] if args.key?(:location)
994
- @final_time = args[:final_time] if args.key?(:final_time)
995
- @variable_table = args[:variable_table] if args.key?(:variable_table)
1006
+ @agent_version = args[:agent_version] if args.key?(:agent_version)
1007
+ @is_disabled = args[:is_disabled] if args.key?(:is_disabled)
1008
+ @uniquifier = args[:uniquifier] if args.key?(:uniquifier)
1009
+ @description = args[:description] if args.key?(:description)
1010
+ @source_contexts = args[:source_contexts] if args.key?(:source_contexts)
1011
+ @ext_source_contexts = args[:ext_source_contexts] if args.key?(:ext_source_contexts)
996
1012
  @labels = args[:labels] if args.key?(:labels)
997
- @log_message_format = args[:log_message_format] if args.key?(:log_message_format)
998
- @create_time = args[:create_time] if args.key?(:create_time)
1013
+ @status = args[:status] if args.key?(:status)
1014
+ @is_inactive = args[:is_inactive] if args.key?(:is_inactive)
1015
+ @project = args[:project] if args.key?(:project)
999
1016
  end
1000
1017
  end
1001
1018
 
1002
- # Request to update an active breakpoint.
1003
- class UpdateActiveBreakpointRequest
1019
+ # Selects a repo using a Google Cloud Platform project ID
1020
+ # (e.g. winged-cargo-31) and a repo name within that project.
1021
+ class ProjectRepoId
1004
1022
  include Google::Apis::Core::Hashable
1005
1023
 
1006
- # Represents the breakpoint specification, status and results.
1007
- # Corresponds to the JSON property `breakpoint`
1008
- # @return [Google::Apis::ClouddebuggerV2::Breakpoint]
1009
- attr_accessor :breakpoint
1010
-
1011
- def initialize(**args)
1012
- update!(**args)
1013
- end
1014
-
1015
- # Update properties of this object
1016
- def update!(**args)
1017
- @breakpoint = args[:breakpoint] if args.key?(:breakpoint)
1018
- end
1019
- end
1020
-
1021
- # Response for setting a breakpoint.
1022
- class SetBreakpointResponse
1023
- include Google::Apis::Core::Hashable
1024
+ # The ID of the project.
1025
+ # Corresponds to the JSON property `projectId`
1026
+ # @return [String]
1027
+ attr_accessor :project_id
1024
1028
 
1025
- # Represents the breakpoint specification, status and results.
1026
- # Corresponds to the JSON property `breakpoint`
1027
- # @return [Google::Apis::ClouddebuggerV2::Breakpoint]
1028
- attr_accessor :breakpoint
1029
+ # The name of the repo. Leave empty for the default repo.
1030
+ # Corresponds to the JSON property `repoName`
1031
+ # @return [String]
1032
+ attr_accessor :repo_name
1029
1033
 
1030
1034
  def initialize(**args)
1031
1035
  update!(**args)
@@ -1033,36 +1037,33 @@ module Google
1033
1037
 
1034
1038
  # Update properties of this object
1035
1039
  def update!(**args)
1036
- @breakpoint = args[:breakpoint] if args.key?(:breakpoint)
1040
+ @project_id = args[:project_id] if args.key?(:project_id)
1041
+ @repo_name = args[:repo_name] if args.key?(:repo_name)
1037
1042
  end
1038
1043
  end
1039
1044
 
1040
- # A SourceContext is a reference to a tree of files. A SourceContext together
1041
- # with a path point to a unique revision of a single file or directory.
1042
- class SourceContext
1045
+ # Response for listing active breakpoints.
1046
+ class ListActiveBreakpointsResponse
1043
1047
  include Google::Apis::Core::Hashable
1044
1048
 
1045
- # A GitSourceContext denotes a particular revision in a third party Git
1046
- # repository (e.g. GitHub).
1047
- # Corresponds to the JSON property `git`
1048
- # @return [Google::Apis::ClouddebuggerV2::GitSourceContext]
1049
- attr_accessor :git
1050
-
1051
- # A SourceContext referring to a Gerrit project.
1052
- # Corresponds to the JSON property `gerrit`
1053
- # @return [Google::Apis::ClouddebuggerV2::GerritSourceContext]
1054
- attr_accessor :gerrit
1049
+ # A wait token that can be used in the next method call to block until
1050
+ # the list of breakpoints changes.
1051
+ # Corresponds to the JSON property `nextWaitToken`
1052
+ # @return [String]
1053
+ attr_accessor :next_wait_token
1055
1054
 
1056
- # A CloudRepoSourceContext denotes a particular revision in a cloud
1057
- # repo (a repo hosted by the Google Cloud Platform).
1058
- # Corresponds to the JSON property `cloudRepo`
1059
- # @return [Google::Apis::ClouddebuggerV2::CloudRepoSourceContext]
1060
- attr_accessor :cloud_repo
1055
+ # List of all active breakpoints.
1056
+ # The fields `id` and `location` are guaranteed to be set on each breakpoint.
1057
+ # Corresponds to the JSON property `breakpoints`
1058
+ # @return [Array<Google::Apis::ClouddebuggerV2::Breakpoint>]
1059
+ attr_accessor :breakpoints
1061
1060
 
1062
- # A CloudWorkspaceSourceContext denotes a workspace at a particular snapshot.
1063
- # Corresponds to the JSON property `cloudWorkspace`
1064
- # @return [Google::Apis::ClouddebuggerV2::CloudWorkspaceSourceContext]
1065
- attr_accessor :cloud_workspace
1061
+ # The `wait_expired` field is set to true by the server when the
1062
+ # request times out and the field `success_on_timeout` is set to true.
1063
+ # Corresponds to the JSON property `waitExpired`
1064
+ # @return [Boolean]
1065
+ attr_accessor :wait_expired
1066
+ alias_method :wait_expired?, :wait_expired
1066
1067
 
1067
1068
  def initialize(**args)
1068
1069
  update!(**args)
@@ -1070,10 +1071,9 @@ module Google
1070
1071
 
1071
1072
  # Update properties of this object
1072
1073
  def update!(**args)
1073
- @git = args[:git] if args.key?(:git)
1074
- @gerrit = args[:gerrit] if args.key?(:gerrit)
1075
- @cloud_repo = args[:cloud_repo] if args.key?(:cloud_repo)
1076
- @cloud_workspace = args[:cloud_workspace] if args.key?(:cloud_workspace)
1074
+ @next_wait_token = args[:next_wait_token] if args.key?(:next_wait_token)
1075
+ @breakpoints = args[:breakpoints] if args.key?(:breakpoints)
1076
+ @wait_expired = args[:wait_expired] if args.key?(:wait_expired)
1077
1077
  end
1078
1078
  end
1079
1079
  end