diff --git a/generated/google/apis/bigqueryreservation_v1beta1.rb b/generated/google/apis/bigqueryreservation_v1beta1.rb index 4f86f95f9..ebed897bc 100644 --- a/generated/google/apis/bigqueryreservation_v1beta1.rb +++ b/generated/google/apis/bigqueryreservation_v1beta1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/bigquery/ module BigqueryreservationV1beta1 VERSION = 'V1beta1' - REVISION = '20200220' + REVISION = '20200229' # View and manage your data in Google BigQuery AUTH_BIGQUERY = 'https://www.googleapis.com/auth/bigquery' diff --git a/generated/google/apis/bigqueryreservation_v1beta1/classes.rb b/generated/google/apis/bigqueryreservation_v1beta1/classes.rb index 5f104d8bb..ce7b67cb1 100644 --- a/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +++ b/generated/google/apis/bigqueryreservation_v1beta1/classes.rb @@ -96,20 +96,18 @@ module Google end # Capacity commitment is a way to purchase compute capacity for BigQuery jobs - # (in the form of slots) with some minimum committed period of usage. Capacity - # commitment is immutable and cannot be deleted until the end of the commitment - # period. After the end of the commitment period, slots are still available but - # can be freely removed any time. Annual commitments will automatically be - # downgraded to monthly after the commitment ends. + # (in the form of slots) with some committed period of usage. Monthly and + # annual commitments renew by default. Only flex commitments can be removed. In + # order to remove monthly or annual commitments, their plan needs to be changed + # to flex first. # A capacity commitment resource exists as a child resource of the admin # project. class CapacityCommitment include Google::Apis::Core::Hashable - # Output only. The end of the commitment period. Capacity commitment cannot be - # removed before commitment_end_time. It is applicable only for ACTIVE - # capacity commitments and is computed as a combination of the plan and the - # time when the capacity commitment became ACTIVE. + # Output only. The end of the current commitment period. It is applicable only + # for ACTIVE + # capacity commitments. # Corresponds to the JSON property `commitmentEndTime` # @return [String] attr_accessor :commitment_end_time @@ -135,6 +133,13 @@ module Google # @return [String] attr_accessor :plan + # The plan this capacity commitment is converted to after commitment_end_time + # passes. Once the plan is changed, committed period is extended according to + # commitment plan. Only applicable for MONTHLY and ANNUAL commitments. + # Corresponds to the JSON property `renewalPlan` + # @return [String] + attr_accessor :renewal_plan + # Number of slots in this commitment. # Corresponds to the JSON property `slotCount` # @return [Fixnum] @@ -155,6 +160,7 @@ module Google @failure_status = args[:failure_status] if args.key?(:failure_status) @name = args[:name] if args.key?(:name) @plan = args[:plan] if args.key?(:plan) + @renewal_plan = args[:renewal_plan] if args.key?(:renewal_plan) @slot_count = args[:slot_count] if args.key?(:slot_count) @state = args[:state] if args.key?(:state) end @@ -257,6 +263,27 @@ module Google end end + # The request for ReservationService.MergeCapacityCommitments. + class MergeCapacityCommitmentsRequest + include Google::Apis::Core::Hashable + + # Ids of capacity commitments to merge. + # These capacity commitments must exist under admin project and location + # specified in the parent. + # Corresponds to the JSON property `capacityCommitmentIds` + # @return [Array] + attr_accessor :capacity_commitment_ids + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @capacity_commitment_ids = args[:capacity_commitment_ids] if args.key?(:capacity_commitment_ids) + end + end + # The request for # ReservationService.MoveAssignment. # Note: "bigquery.reservationAssignments.create" permission is required on the @@ -350,6 +377,62 @@ module Google end end + # The request for ReservationService.SplitCapacityCommitment. + class SplitCapacityCommitmentRequest + include Google::Apis::Core::Hashable + + # Number of slots in the capacity commitment after the split. + # Corresponds to the JSON property `slotCount` + # @return [Fixnum] + attr_accessor :slot_count + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @slot_count = args[:slot_count] if args.key?(:slot_count) + end + end + + # The response for ReservationService.SplitCapacityCommitment. + class SplitCapacityCommitmentResponse + include Google::Apis::Core::Hashable + + # Capacity commitment is a way to purchase compute capacity for BigQuery jobs + # (in the form of slots) with some committed period of usage. Monthly and + # annual commitments renew by default. Only flex commitments can be removed. In + # order to remove monthly or annual commitments, their plan needs to be changed + # to flex first. + # A capacity commitment resource exists as a child resource of the admin + # project. + # Corresponds to the JSON property `first` + # @return [Google::Apis::BigqueryreservationV1beta1::CapacityCommitment] + attr_accessor :first + + # Capacity commitment is a way to purchase compute capacity for BigQuery jobs + # (in the form of slots) with some committed period of usage. Monthly and + # annual commitments renew by default. Only flex commitments can be removed. In + # order to remove monthly or annual commitments, their plan needs to be changed + # to flex first. + # A capacity commitment resource exists as a child resource of the admin + # project. + # Corresponds to the JSON property `second` + # @return [Google::Apis::BigqueryreservationV1beta1::CapacityCommitment] + attr_accessor :second + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @first = args[:first] if args.key?(:first) + @second = args[:second] if args.key?(:second) + end + end + # The `Status` type defines a logical error model that is suitable for # different programming environments, including REST APIs and RPC APIs. It is # used by [gRPC](https://github.com/grpc). Each `Status` message contains @@ -388,6 +471,25 @@ module Google @message = args[:message] if args.key?(:message) end end + + # The request for ReservationService.UpgradeCapacityCommitmentPlan. + class UpgradeCapacityCommitmentPlanRequest + include Google::Apis::Core::Hashable + + # New capacity commitment plan. + # Corresponds to the JSON property `plan` + # @return [String] + attr_accessor :plan + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @plan = args[:plan] if args.key?(:plan) + end + end end end end diff --git a/generated/google/apis/bigqueryreservation_v1beta1/representations.rb b/generated/google/apis/bigqueryreservation_v1beta1/representations.rb index 212aef687..fcc65cf96 100644 --- a/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +++ b/generated/google/apis/bigqueryreservation_v1beta1/representations.rb @@ -64,6 +64,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class MergeCapacityCommitmentsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class MoveAssignmentRequest class Representation < Google::Apis::Core::JsonRepresentation; end @@ -82,12 +88,30 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class SplitCapacityCommitmentRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SplitCapacityCommitmentResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Status class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class UpgradeCapacityCommitmentPlanRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Assignment # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -115,6 +139,7 @@ module Google property :name, as: 'name' property :plan, as: 'plan' + property :renewal_plan, as: 'renewalPlan' property :slot_count, :numeric_string => true, as: 'slotCount' property :state, as: 'state' end @@ -153,6 +178,13 @@ module Google end end + class MergeCapacityCommitmentsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :capacity_commitment_ids, as: 'capacityCommitmentIds' + end + end + class MoveAssignmentRequest # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -178,6 +210,23 @@ module Google end end + class SplitCapacityCommitmentRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :slot_count, :numeric_string => true, as: 'slotCount' + end + end + + class SplitCapacityCommitmentResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :first, as: 'first', class: Google::Apis::BigqueryreservationV1beta1::CapacityCommitment, decorator: Google::Apis::BigqueryreservationV1beta1::CapacityCommitment::Representation + + property :second, as: 'second', class: Google::Apis::BigqueryreservationV1beta1::CapacityCommitment, decorator: Google::Apis::BigqueryreservationV1beta1::CapacityCommitment::Representation + + end + end + class Status # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -186,6 +235,13 @@ module Google property :message, as: 'message' end end + + class UpgradeCapacityCommitmentPlanRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :plan, as: 'plan' + end + end end end end diff --git a/generated/google/apis/bigqueryreservation_v1beta1/service.rb b/generated/google/apis/bigqueryreservation_v1beta1/service.rb index a5439796c..bfb199696 100644 --- a/generated/google/apis/bigqueryreservation_v1beta1/service.rb +++ b/generated/google/apis/bigqueryreservation_v1beta1/service.rb @@ -320,6 +320,157 @@ module Google execute_or_queue_command(command, &block) end + # Merges capacity commitments of the same plan into one. Resulting capacity + # commitment has the longer commitment_end_time out of the two. Attempting to + # merge capacity commitments of different plan will fail with the error code + # `google.rpc.Code.FAILED_PRECONDITION`. + # @param [String] parent + # Parent resource that identifies admin project and location e.g., + # projects/myproject/locations/us + # @param [Google::Apis::BigqueryreservationV1beta1::MergeCapacityCommitmentsRequest] merge_capacity_commitments_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BigqueryreservationV1beta1::CapacityCommitment] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BigqueryreservationV1beta1::CapacityCommitment] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def merge_capacity_commitments(parent, merge_capacity_commitments_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+parent}/capacityCommitments:merge', options) + command.request_representation = Google::Apis::BigqueryreservationV1beta1::MergeCapacityCommitmentsRequest::Representation + command.request_object = merge_capacity_commitments_request_object + command.response_representation = Google::Apis::BigqueryreservationV1beta1::CapacityCommitment::Representation + command.response_class = Google::Apis::BigqueryreservationV1beta1::CapacityCommitment + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates an existing capacity commitment. + # Only renewal_plan field can be updated. + # @param [String] name + # Output only. The resource name of the capacity commitment, e.g., + # projects/myproject/locations/US/capacityCommitments/123 + # @param [Google::Apis::BigqueryreservationV1beta1::CapacityCommitment] capacity_commitment_object + # @param [String] update_mask + # Standard field mask for the set of fields to be updated. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BigqueryreservationV1beta1::CapacityCommitment] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BigqueryreservationV1beta1::CapacityCommitment] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_project_location_capacity_commitment(name, capacity_commitment_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta1/{+name}', options) + command.request_representation = Google::Apis::BigqueryreservationV1beta1::CapacityCommitment::Representation + command.request_object = capacity_commitment_object + command.response_representation = Google::Apis::BigqueryreservationV1beta1::CapacityCommitment::Representation + command.response_class = Google::Apis::BigqueryreservationV1beta1::CapacityCommitment + command.params['name'] = name unless name.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Splits capacity commitment to two commitments of the same plan and + # commitment_end_time. A common use case to do that is to perform a downgrade + # e.g., in order to downgrade from 10000 slots to 8000, one might split 10000 + # capacity commitment to 2000 and 8000, change the plan of the first one to + # flex and then delete it. + # @param [String] name + # Required. The resource name e.g.,: + # projects/myproject/locations/US/capacityCommitments/123 + # @param [Google::Apis::BigqueryreservationV1beta1::SplitCapacityCommitmentRequest] split_capacity_commitment_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BigqueryreservationV1beta1::SplitCapacityCommitmentResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BigqueryreservationV1beta1::SplitCapacityCommitmentResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def split_capacity_commitment(name, split_capacity_commitment_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:split', options) + command.request_representation = Google::Apis::BigqueryreservationV1beta1::SplitCapacityCommitmentRequest::Representation + command.request_object = split_capacity_commitment_request_object + command.response_representation = Google::Apis::BigqueryreservationV1beta1::SplitCapacityCommitmentResponse::Representation + command.response_class = Google::Apis::BigqueryreservationV1beta1::SplitCapacityCommitmentResponse + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Replaces an existing commitment with a new commitment of a different plan. + # Plan can only be changed to a plan of a longer commitment period. New + # commitment start is set to a current time. Attempting to change to a plan + # with shorter commitment period will fail with the error code + # `google.rpc.Code.FAILED_PRECONDITION`. + # @param [String] capacity_commitment + # Required. The resource name e.g.,: + # projects/myproject/locations/US/capacityCommitments/123 + # @param [Google::Apis::BigqueryreservationV1beta1::UpgradeCapacityCommitmentPlanRequest] upgrade_capacity_commitment_plan_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::BigqueryreservationV1beta1::CapacityCommitment] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::BigqueryreservationV1beta1::CapacityCommitment] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def upgrade_capacity_commitment_plan(capacity_commitment, upgrade_capacity_commitment_plan_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+capacityCommitment}:upgradeCapacityCommitmentPlan', options) + command.request_representation = Google::Apis::BigqueryreservationV1beta1::UpgradeCapacityCommitmentPlanRequest::Representation + command.request_object = upgrade_capacity_commitment_plan_request_object + command.response_representation = Google::Apis::BigqueryreservationV1beta1::CapacityCommitment::Representation + command.response_class = Google::Apis::BigqueryreservationV1beta1::CapacityCommitment + command.params['capacityCommitment'] = capacity_commitment unless capacity_commitment.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Creates a new reservation resource. # @param [String] parent # Required. Project, location. E.g., diff --git a/generated/google/apis/classroom_v1.rb b/generated/google/apis/classroom_v1.rb index 3c9643287..ae46c89b1 100644 --- a/generated/google/apis/classroom_v1.rb +++ b/generated/google/apis/classroom_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/classroom/ module ClassroomV1 VERSION = 'V1' - REVISION = '20200222' + REVISION = '20200229' # View and manage announcements in Google Classroom AUTH_CLASSROOM_ANNOUNCEMENTS = 'https://www.googleapis.com/auth/classroom.announcements' @@ -51,6 +51,12 @@ module Google # View course work and grades for students in the Google Classroom classes you teach or administer AUTH_CLASSROOM_COURSEWORK_STUDENTS_READONLY = 'https://www.googleapis.com/auth/classroom.coursework.students.readonly' + # See, edit, and create classwork materials in Google Classroom + AUTH_CLASSROOM_COURSEWORKMATERIALS = 'https://www.googleapis.com/auth/classroom.courseworkmaterials' + + # See all classwork materials for your Google Classroom classes + AUTH_CLASSROOM_COURSEWORKMATERIALS_READONLY = 'https://www.googleapis.com/auth/classroom.courseworkmaterials.readonly' + # View your Google Classroom guardians AUTH_CLASSROOM_GUARDIANLINKS_ME_READONLY = 'https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly' diff --git a/generated/google/apis/classroom_v1/classes.rb b/generated/google/apis/classroom_v1/classes.rb index 94b86f2d0..305119e1c 100644 --- a/generated/google/apis/classroom_v1/classes.rb +++ b/generated/google/apis/classroom_v1/classes.rb @@ -714,6 +714,121 @@ module Google end end + # Course work material created by a teacher for students of the course + class CourseWorkMaterial + include Google::Apis::Core::Hashable + + # Absolute link to this course work material in the Classroom web UI. + # This is only populated if `state` is `PUBLISHED`. + # Read-only. + # Corresponds to the JSON property `alternateLink` + # @return [String] + attr_accessor :alternate_link + + # Assignee mode of the course work material. + # If unspecified, the default value is `ALL_STUDENTS`. + # Corresponds to the JSON property `assigneeMode` + # @return [String] + attr_accessor :assignee_mode + + # Identifier of the course. + # Read-only. + # Corresponds to the JSON property `courseId` + # @return [String] + attr_accessor :course_id + + # Timestamp when this course work material was created. + # Read-only. + # Corresponds to the JSON property `creationTime` + # @return [String] + attr_accessor :creation_time + + # Identifier for the user that created the course work material. + # Read-only. + # Corresponds to the JSON property `creatorUserId` + # @return [String] + attr_accessor :creator_user_id + + # Optional description of this course work material. + # The text must be a valid UTF-8 string containing no more + # than 30,000 characters. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Classroom-assigned identifier of this course work material, unique per + # course. + # Read-only. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Assignee details about a coursework/announcement. + # This field is set if and only if `assigneeMode` is `INDIVIDUAL_STUDENTS`. + # Corresponds to the JSON property `individualStudentsOptions` + # @return [Google::Apis::ClassroomV1::IndividualStudentsOptions] + attr_accessor :individual_students_options + + # Additional materials. + # A course work material must have no more than 20 material items. + # Corresponds to the JSON property `materials` + # @return [Array] + attr_accessor :materials + + # Optional timestamp when this course work material is scheduled to be + # published. + # Corresponds to the JSON property `scheduledTime` + # @return [String] + attr_accessor :scheduled_time + + # Status of this course work material. + # If unspecified, the default state is `DRAFT`. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # Title of this course work material. + # The title must be a valid UTF-8 string containing between 1 and 3000 + # characters. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + # Identifier for the topic that this course work material is associated with. + # Must match an existing topic in the course. + # Corresponds to the JSON property `topicId` + # @return [String] + attr_accessor :topic_id + + # Timestamp of the most recent change to this course work material. + # Read-only. + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @alternate_link = args[:alternate_link] if args.key?(:alternate_link) + @assignee_mode = args[:assignee_mode] if args.key?(:assignee_mode) + @course_id = args[:course_id] if args.key?(:course_id) + @creation_time = args[:creation_time] if args.key?(:creation_time) + @creator_user_id = args[:creator_user_id] if args.key?(:creator_user_id) + @description = args[:description] if args.key?(:description) + @id = args[:id] if args.key?(:id) + @individual_students_options = args[:individual_students_options] if args.key?(:individual_students_options) + @materials = args[:materials] if args.key?(:materials) + @scheduled_time = args[:scheduled_time] if args.key?(:scheduled_time) + @state = args[:state] if args.key?(:state) + @title = args[:title] if args.key?(:title) + @topic_id = args[:topic_id] if args.key?(:topic_id) + @update_time = args[:update_time] if args.key?(:update_time) + end + end + # Represents a whole or partial calendar date, e.g. a birthday. The time of day # and time zone are either specified elsewhere or are not significant. The date # is relative to the Proleptic Gregorian Calendar. This can represent: @@ -1222,6 +1337,32 @@ module Google end end + # Response when listing course work material. + class ListCourseWorkMaterialResponse + include Google::Apis::Core::Hashable + + # Course work material items that match the request. + # Corresponds to the JSON property `courseWorkMaterial` + # @return [Array] + attr_accessor :course_work_material + + # Token identifying the next page of results to return. If empty, no further + # results are available. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @course_work_material = args[:course_work_material] if args.key?(:course_work_material) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + # Response when listing course work. class ListCourseWorkResponse include Google::Apis::Core::Hashable diff --git a/generated/google/apis/classroom_v1/representations.rb b/generated/google/apis/classroom_v1/representations.rb index 1341fb066..12b618268 100644 --- a/generated/google/apis/classroom_v1/representations.rb +++ b/generated/google/apis/classroom_v1/representations.rb @@ -94,6 +94,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class CourseWorkMaterial + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Date class Representation < Google::Apis::Core::JsonRepresentation; end @@ -184,6 +190,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class ListCourseWorkMaterialResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class ListCourseWorkResponse class Representation < Google::Apis::Core::JsonRepresentation; end @@ -537,6 +549,28 @@ module Google end end + class CourseWorkMaterial + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :alternate_link, as: 'alternateLink' + property :assignee_mode, as: 'assigneeMode' + property :course_id, as: 'courseId' + property :creation_time, as: 'creationTime' + property :creator_user_id, as: 'creatorUserId' + property :description, as: 'description' + property :id, as: 'id' + property :individual_students_options, as: 'individualStudentsOptions', class: Google::Apis::ClassroomV1::IndividualStudentsOptions, decorator: Google::Apis::ClassroomV1::IndividualStudentsOptions::Representation + + collection :materials, as: 'materials', class: Google::Apis::ClassroomV1::Material, decorator: Google::Apis::ClassroomV1::Material::Representation + + property :scheduled_time, as: 'scheduledTime' + property :state, as: 'state' + property :title, as: 'title' + property :topic_id, as: 'topicId' + property :update_time, as: 'updateTime' + end + end + class Date # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -676,6 +710,15 @@ module Google end end + class ListCourseWorkMaterialResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :course_work_material, as: 'courseWorkMaterial', class: Google::Apis::ClassroomV1::CourseWorkMaterial, decorator: Google::Apis::ClassroomV1::CourseWorkMaterial::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + class ListCourseWorkResponse # @private class Representation < Google::Apis::Core::JsonRepresentation diff --git a/generated/google/apis/classroom_v1/service.rb b/generated/google/apis/classroom_v1/service.rb index 25d6e9b80..a056b223d 100644 --- a/generated/google/apis/classroom_v1/service.rb +++ b/generated/google/apis/classroom_v1/service.rb @@ -1476,6 +1476,272 @@ module Google execute_or_queue_command(command, &block) end + # Creates a course work material. + # This method returns the following error codes: + # * `PERMISSION_DENIED` if the requesting user is not permitted to access the + # requested course, create course work material in the requested course, + # share a Drive attachment, or for access errors. + # * `INVALID_ARGUMENT` if the request is malformed or if more than 20 + # * materials are provided. + # * `NOT_FOUND` if the requested course does not exist. + # * `FAILED_PRECONDITION` for the following request error: + # * AttachmentNotVisible + # @param [String] course_id + # Identifier of the course. + # This identifier can be either the Classroom-assigned identifier or an + # alias. + # @param [Google::Apis::ClassroomV1::CourseWorkMaterial] course_work_material_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClassroomV1::CourseWorkMaterial] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClassroomV1::CourseWorkMaterial] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_course_course_work_material(course_id, course_work_material_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/courses/{courseId}/courseWorkMaterials', options) + command.request_representation = Google::Apis::ClassroomV1::CourseWorkMaterial::Representation + command.request_object = course_work_material_object + command.response_representation = Google::Apis::ClassroomV1::CourseWorkMaterial::Representation + command.response_class = Google::Apis::ClassroomV1::CourseWorkMaterial + command.params['courseId'] = course_id unless course_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a course work material. + # This request must be made by the Developer Console project of the + # [OAuth client ID](https://support.google.com/cloud/answer/6158849) used to + # create the corresponding course work material item. + # This method returns the following error codes: + # * `PERMISSION_DENIED` if the requesting developer project did not create + # the corresponding course work material, if the requesting user is not + # permitted to delete the requested course or for access errors. + # * `FAILED_PRECONDITION` if the requested course work material has already + # been deleted. + # * `NOT_FOUND` if no course exists with the requested ID. + # @param [String] course_id + # Identifier of the course. + # This identifier can be either the Classroom-assigned identifier or an + # alias. + # @param [String] id + # Identifier of the course work material to delete. + # This identifier is a Classroom-assigned identifier. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClassroomV1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClassroomV1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_course_course_work_material(course_id, id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1/courses/{courseId}/courseWorkMaterials/{id}', options) + command.response_representation = Google::Apis::ClassroomV1::Empty::Representation + command.response_class = Google::Apis::ClassroomV1::Empty + command.params['courseId'] = course_id unless course_id.nil? + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns a course work material. + # This method returns the following error codes: + # * `PERMISSION_DENIED` if the requesting user is not permitted to access the + # requested course or course work material, or for access errors. + # * `INVALID_ARGUMENT` if the request is malformed. + # * `NOT_FOUND` if the requested course or course work material does not + # exist. + # @param [String] course_id + # Identifier of the course. + # This identifier can be either the Classroom-assigned identifier or an + # alias. + # @param [String] id + # Identifier of the course work material. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClassroomV1::CourseWorkMaterial] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClassroomV1::CourseWorkMaterial] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_course_course_work_material(course_id, id, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/courses/{courseId}/courseWorkMaterials/{id}', options) + command.response_representation = Google::Apis::ClassroomV1::CourseWorkMaterial::Representation + command.response_class = Google::Apis::ClassroomV1::CourseWorkMaterial + command.params['courseId'] = course_id unless course_id.nil? + command.params['id'] = id unless id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns a list of course work material that the requester is permitted to + # view. + # Course students may only view `PUBLISHED` course work material. Course + # teachers and domain administrators may view all course work material. + # This method returns the following error codes: + # * `PERMISSION_DENIED` if the requesting user is not permitted to access + # the requested course or for access errors. + # * `INVALID_ARGUMENT` if the request is malformed. + # * `NOT_FOUND` if the requested course does not exist. + # @param [String] course_id + # Identifier of the course. + # This identifier can be either the Classroom-assigned identifier or an + # alias. + # @param [Array, String] course_work_material_states + # Restriction on the work status to return. Only course work material that + # matches is returned. If unspecified, items with a work status of + # `PUBLISHED` is returned. + # @param [String] material_drive_id + # Optional filtering for course work material with at least one Drive + # material whose ID matches the provided string. If `material_link` is also + # specified, course work material must have materials matching both filters. + # @param [String] material_link + # Optional filtering for course work material with at least one link material + # whose URL partially matches the provided string. + # @param [String] order_by + # Optional sort ordering for results. A comma-separated list of fields with + # an optional sort direction keyword. Supported field is `updateTime`. + # Supported direction keywords are `asc` and `desc`. + # If not specified, `updateTime desc` is the default behavior. + # Examples: `updateTime asc`, `updateTime` + # @param [Fixnum] page_size + # Maximum number of items to return. Zero or unspecified indicates that the + # server may assign a maximum. + # The server may return fewer than the specified number of results. + # @param [String] page_token + # nextPageToken + # value returned from a previous + # list call, + # indicating that the subsequent page of results should be returned. + # The list request + # must be otherwise identical to the one that resulted in this token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClassroomV1::ListCourseWorkMaterialResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClassroomV1::ListCourseWorkMaterialResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_course_course_work_materials(course_id, course_work_material_states: nil, material_drive_id: nil, material_link: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/courses/{courseId}/courseWorkMaterials', options) + command.response_representation = Google::Apis::ClassroomV1::ListCourseWorkMaterialResponse::Representation + command.response_class = Google::Apis::ClassroomV1::ListCourseWorkMaterialResponse + command.params['courseId'] = course_id unless course_id.nil? + command.query['courseWorkMaterialStates'] = course_work_material_states unless course_work_material_states.nil? + command.query['materialDriveId'] = material_drive_id unless material_drive_id.nil? + command.query['materialLink'] = material_link unless material_link.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates one or more fields of a course work material. + # This method returns the following error codes: + # * `PERMISSION_DENIED` if the requesting developer project for + # access errors. + # * `INVALID_ARGUMENT` if the request is malformed. + # * `FAILED_PRECONDITION` if the requested course work material has already + # been deleted. + # * `NOT_FOUND` if the requested course or course work material does not + # exist + # @param [String] course_id + # Identifier of the course. + # This identifier can be either the Classroom-assigned identifier or an + # alias. + # @param [String] id + # Identifier of the course work material. + # @param [Google::Apis::ClassroomV1::CourseWorkMaterial] course_work_material_object + # @param [String] update_mask + # Mask that identifies which fields on the course work material to update. + # This field is required to do an update. The update fails if invalid + # fields are specified. If a field supports empty values, it can be cleared + # by specifying it in the update mask and not in the course work material + # object. If a field that does not support empty values is included in the + # update mask and not set in the course work material object, an + # `INVALID_ARGUMENT` error will be returned. + # The following fields may be specified by teachers: + # * `title` + # * `description` + # * `state` + # * `scheduled_time` + # * `topic_id` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ClassroomV1::CourseWorkMaterial] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ClassroomV1::CourseWorkMaterial] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_course_course_work_material(course_id, id, course_work_material_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1/courses/{courseId}/courseWorkMaterials/{id}', options) + command.request_representation = Google::Apis::ClassroomV1::CourseWorkMaterial::Representation + command.request_object = course_work_material_object + command.response_representation = Google::Apis::ClassroomV1::CourseWorkMaterial::Representation + command.response_class = Google::Apis::ClassroomV1::CourseWorkMaterial + command.params['courseId'] = course_id unless course_id.nil? + command.params['id'] = id unless id.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Adds a user as a student of a course. # This method returns the following error codes: # * `PERMISSION_DENIED` if the requesting user is not permitted to create diff --git a/generated/google/apis/container_v1beta1/classes.rb b/generated/google/apis/container_v1beta1/classes.rb index 924fabbc8..ff8c0c356 100644 --- a/generated/google/apis/container_v1beta1/classes.rb +++ b/generated/google/apis/container_v1beta1/classes.rb @@ -2304,8 +2304,7 @@ module Google # @return [Fixnum] attr_accessor :int_value - # Metric name, required. - # e.g., "nodes total", "percent done" + # Required. Metric name, e.g., "nodes total", "percent done". # Corresponds to the JSON property `name` # @return [String] attr_accessor :name @@ -2937,7 +2936,7 @@ module Google # @return [String] attr_accessor :status - # If an error has occurred, a textual description of the error. + # Output only. If an error has occurred, a textual description of the error. # Corresponds to the JSON property `statusMessage` # @return [String] attr_accessor :status_message @@ -3248,7 +3247,9 @@ module Google # @return [String] attr_accessor :consume_reservation_type - # Corresponds to the label key of reservation resource. + # Corresponds to the label key of a reservation resource. To target a + # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as + # the key and specify the name of your reservation as its value. # Corresponds to the JSON property `key` # @return [String] attr_accessor :key @@ -4715,6 +4716,11 @@ module Google # @return [String] attr_accessor :identity_namespace + # The workload pool to attach all Kubernetes service accounts to. + # Corresponds to the JSON property `workloadPool` + # @return [String] + attr_accessor :workload_pool + def initialize(**args) update!(**args) end @@ -4722,6 +4728,7 @@ module Google # Update properties of this object def update!(**args) @identity_namespace = args[:identity_namespace] if args.key?(:identity_namespace) + @workload_pool = args[:workload_pool] if args.key?(:workload_pool) end end @@ -4730,6 +4737,12 @@ module Google class WorkloadMetadataConfig include Google::Apis::Core::Hashable + # Mode is the configuration for how to expose metadata to workloads running + # on the node pool. + # Corresponds to the JSON property `mode` + # @return [String] + attr_accessor :mode + # NodeMetadata is the configuration for how to expose metadata to the # workloads running on the node. # Corresponds to the JSON property `nodeMetadata` @@ -4742,6 +4755,7 @@ module Google # Update properties of this object def update!(**args) + @mode = args[:mode] if args.key?(:mode) @node_metadata = args[:node_metadata] if args.key?(:node_metadata) end end diff --git a/generated/google/apis/container_v1beta1/representations.rb b/generated/google/apis/container_v1beta1/representations.rb index dc6280b79..80161ec33 100644 --- a/generated/google/apis/container_v1beta1/representations.rb +++ b/generated/google/apis/container_v1beta1/representations.rb @@ -1748,12 +1748,14 @@ module Google # @private class Representation < Google::Apis::Core::JsonRepresentation property :identity_namespace, as: 'identityNamespace' + property :workload_pool, as: 'workloadPool' end end class WorkloadMetadataConfig # @private class Representation < Google::Apis::Core::JsonRepresentation + property :mode, as: 'mode' property :node_metadata, as: 'nodeMetadata' end end diff --git a/generated/google/apis/dlp_v2.rb b/generated/google/apis/dlp_v2.rb index cede8b0ab..dfea0da6a 100644 --- a/generated/google/apis/dlp_v2.rb +++ b/generated/google/apis/dlp_v2.rb @@ -27,7 +27,7 @@ module Google # @see https://cloud.google.com/dlp/docs/ module DlpV2 VERSION = 'V2' - REVISION = '20200224' + REVISION = '20200229' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/dlp_v2/classes.rb b/generated/google/apis/dlp_v2/classes.rb index 813ca36b6..098e11504 100644 --- a/generated/google/apis/dlp_v2/classes.rb +++ b/generated/google/apis/dlp_v2/classes.rb @@ -968,6 +968,80 @@ module Google end end + # Represents a container that may contain DLP findings. + # Examples of a container include a file, table, or database record. + class GooglePrivacyDlpV2Container + include Google::Apis::Core::Hashable + + # A string representation of the full container name. + # Examples: + # - BigQuery: 'Project:DataSetId.TableId' + # - Google Cloud Storage: 'gs://Bucket/folders/filename.txt' + # Corresponds to the JSON property `fullPath` + # @return [String] + attr_accessor :full_path + + # Project where the finding was found. + # Can be different from the project that owns the finding. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The rest of the path after the root. + # Examples: + # - For BigQuery table `project_id:dataset_id.table_id`, the relative path is + # `table_id` + # - Google Cloud Storage file `gs://bucket/folder/filename.txt`, the relative + # path is `folder/filename.txt` + # Corresponds to the JSON property `relativePath` + # @return [String] + attr_accessor :relative_path + + # The root of the container. + # Examples: + # - For BigQuery table `project_id:dataset_id.table_id`, the root is + # `dataset_id` + # - For Google Cloud Storage file `gs://bucket/folder/filename.txt`, the root + # is `gs://bucket` + # Corresponds to the JSON property `rootPath` + # @return [String] + attr_accessor :root_path + + # Container type, for example BigQuery or Google Cloud Storage. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # Findings container modification timestamp, if applicable. + # For Google Cloud Storage contains last file modification timestamp. + # For BigQuery table contains last_modified_time property. + # For Datastore - not populated. + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + # Findings container version, if available + # ("generation" for Google Cloud Storage). + # Corresponds to the JSON property `version` + # @return [String] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @full_path = args[:full_path] if args.key?(:full_path) + @project_id = args[:project_id] if args.key?(:project_id) + @relative_path = args[:relative_path] if args.key?(:relative_path) + @root_path = args[:root_path] if args.key?(:root_path) + @type = args[:type] if args.key?(:type) + @update_time = args[:update_time] if args.key?(:update_time) + @version = args[:version] if args.key?(:version) + end + end + # Container structure for the content to inspect. class GooglePrivacyDlpV2ContentItem include Google::Apis::Core::Hashable @@ -2471,6 +2545,18 @@ module Google # @return [String] attr_accessor :job_name + # The labels associated with this `InspectFinding`. + # Label keys must be between 1 and 63 characters long and must conform + # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?. + # Label values must be between 0 and 63 characters long and must conform + # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. + # No more than 10 labels can be associated with a given finding. + # Example: "environment" : "production" + # Example: "pipeline" : "etl" + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + # Confidence of how likely it is that the `info_type` is correct. # Corresponds to the JSON property `likelihood` # @return [String] @@ -2521,6 +2607,7 @@ module Google @info_type = args[:info_type] if args.key?(:info_type) @job_create_time = args[:job_create_time] if args.key?(:job_create_time) @job_name = args[:job_name] if args.key?(:job_name) + @labels = args[:labels] if args.key?(:labels) @likelihood = args[:likelihood] if args.key?(:likelihood) @location = args[:location] if args.key?(:location) @name = args[:name] if args.key?(:name) @@ -2567,6 +2654,22 @@ module Google end end + # The request message for finishing a DLP hybrid job. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + class GooglePrivacyDlpV2FinishDlpJobRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + # Buckets values based on fixed size ranges. The # Bucketing transformation can provide all of this functionality, # but requires more configuration. This message is provided as a convenience to @@ -2656,6 +2759,267 @@ module Google end end + # An individual hybrid item to inspect. Will be stored temporarily during + # processing. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + class GooglePrivacyDlpV2HybridContentItem + include Google::Apis::Core::Hashable + + # Populate to associate additional data with each finding. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + # Corresponds to the JSON property `findingDetails` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2HybridFindingDetails] + attr_accessor :finding_details + + # Container structure for the content to inspect. + # Corresponds to the JSON property `item` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem] + attr_accessor :item + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @finding_details = args[:finding_details] if args.key?(:finding_details) + @item = args[:item] if args.key?(:item) + end + end + + # Populate to associate additional data with each finding. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + class GooglePrivacyDlpV2HybridFindingDetails + include Google::Apis::Core::Hashable + + # Represents a container that may contain DLP findings. + # Examples of a container include a file, table, or database record. + # Corresponds to the JSON property `containerDetails` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Container] + attr_accessor :container_details + + # Offset in bytes of the line, from the beginning of the file, where the + # finding is located. Populate if the item being scanned is only part of a + # bigger item, such as a shard of a file and you want to track the absolute + # position of the finding. + # Corresponds to the JSON property `fileOffset` + # @return [Fixnum] + attr_accessor :file_offset + + # Labels to represent user provided metadata about the data being inspected. + # If configured by the job, some key values may be required. + # The labels associated with `Finding`'s produced by hybrid + # inspection. + # Label keys must be between 1 and 63 characters long and must conform + # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?. + # Label values must be between 0 and 63 characters long and must conform + # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. + # No more than 10 labels can be associated with a given finding. + # Example: "environment" : "production" + # Example: "pipeline" : "etl" + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Offset of the row for tables. Populate if the row(s) being scanned are + # part of a bigger dataset and you want to keep track of their absolute + # position. + # Corresponds to the JSON property `rowOffset` + # @return [Fixnum] + attr_accessor :row_offset + + # Instructions regarding the table content being inspected. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + # Corresponds to the JSON property `tableOptions` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2TableOptions] + attr_accessor :table_options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @container_details = args[:container_details] if args.key?(:container_details) + @file_offset = args[:file_offset] if args.key?(:file_offset) + @labels = args[:labels] if args.key?(:labels) + @row_offset = args[:row_offset] if args.key?(:row_offset) + @table_options = args[:table_options] if args.key?(:table_options) + end + end + + # Request to search for potentially sensitive info in a custom location. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + class GooglePrivacyDlpV2HybridInspectDlpJobRequest + include Google::Apis::Core::Hashable + + # An individual hybrid item to inspect. Will be stored temporarily during + # processing. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + # Corresponds to the JSON property `hybridItem` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2HybridContentItem] + attr_accessor :hybrid_item + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @hybrid_item = args[:hybrid_item] if args.key?(:hybrid_item) + end + end + + # Request to search for potentially sensitive info in a custom location. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + class GooglePrivacyDlpV2HybridInspectJobTriggerRequest + include Google::Apis::Core::Hashable + + # An individual hybrid item to inspect. Will be stored temporarily during + # processing. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + # Corresponds to the JSON property `hybridItem` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2HybridContentItem] + attr_accessor :hybrid_item + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @hybrid_item = args[:hybrid_item] if args.key?(:hybrid_item) + end + end + + # Quota exceeded errors will be thrown once quota has been met. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + class GooglePrivacyDlpV2HybridInspectResponse + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Statistics related to processing hybrid inspect requests + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + class GooglePrivacyDlpV2HybridInspectStatistics + include Google::Apis::Core::Hashable + + # The number of hybrid inspection requests aborted because the job ran + # out of quota or was ended before they could be processed. + # Corresponds to the JSON property `hybridRequestsAborted` + # @return [Fixnum] + attr_accessor :hybrid_requests_aborted + + # The number of hybrid requests currently being processed. Only populated + # when called via method `getDlpJob`. + # A burst of traffic may cause hybrid inspect requests to be enqueued. + # Processing will take place as quickly as possible, but resource limitations + # may impact how long a request is enqueued for. + # Corresponds to the JSON property `hybridRequestsPending` + # @return [Fixnum] + attr_accessor :hybrid_requests_pending + + # The number of hybrid inspection requests processed within this job. + # Corresponds to the JSON property `hybridRequestsProcessed` + # @return [Fixnum] + attr_accessor :hybrid_requests_processed + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @hybrid_requests_aborted = args[:hybrid_requests_aborted] if args.key?(:hybrid_requests_aborted) + @hybrid_requests_pending = args[:hybrid_requests_pending] if args.key?(:hybrid_requests_pending) + @hybrid_requests_processed = args[:hybrid_requests_processed] if args.key?(:hybrid_requests_processed) + end + end + + # Configuration to control jobs where the content being inspected is outside + # of Google Cloud Platform. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + class GooglePrivacyDlpV2HybridOptions + include Google::Apis::Core::Hashable + + # A short description of where the data is coming from. Will be stored once + # in the job. 256 max length. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # To organize findings, these labels will be added to each finding. + # Label keys must be between 1 and 63 characters long and must conform + # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?. + # Label values must be between 0 and 63 characters long and must conform + # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. + # No more than 10 labels can be associated with a given finding. + # Example: "environment" : "production" + # Example: "pipeline" : "etl" + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # These are labels that each inspection request must include within their + # 'finding_labels' map. Request may contain others, but any missing one of + # these will be rejected. + # Label keys must be between 1 and 63 characters long and must conform + # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?. + # No more than 10 keys can be required. + # Corresponds to the JSON property `requiredFindingLabelKeys` + # @return [Array] + attr_accessor :required_finding_label_keys + + # Instructions regarding the table content being inspected. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + # Corresponds to the JSON property `tableOptions` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2TableOptions] + attr_accessor :table_options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @labels = args[:labels] if args.key?(:labels) + @required_finding_label_keys = args[:required_finding_label_keys] if args.key?(:required_finding_label_keys) + @table_options = args[:table_options] if args.key?(:table_options) + end + end + # Location of the finding within an image. class GooglePrivacyDlpV2ImageLocation include Google::Apis::Core::Hashable @@ -4090,6 +4454,23 @@ module Google end end + # Job trigger option for hybrid jobs. Jobs must be manually created + # and finished. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + class GooglePrivacyDlpV2Manual + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + # Compute numerical stats over an individual column, including # min, max, and quantiles. class GooglePrivacyDlpV2NumericalStatsConfig @@ -5113,6 +5494,14 @@ module Google class GooglePrivacyDlpV2Result include Google::Apis::Core::Hashable + # Statistics related to processing hybrid inspect requests + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + # Corresponds to the JSON property `hybridStats` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectStatistics] + attr_accessor :hybrid_stats + # Statistics of how many instances of each info type were found during # inspect job. # Corresponds to the JSON property `infoTypeStats` @@ -5135,6 +5524,7 @@ module Google # Update properties of this object def update!(**args) + @hybrid_stats = args[:hybrid_stats] if args.key?(:hybrid_stats) @info_type_stats = args[:info_type_stats] if args.key?(:info_type_stats) @processed_bytes = args[:processed_bytes] if args.key?(:processed_bytes) @total_estimated_bytes = args[:total_estimated_bytes] if args.key?(:total_estimated_bytes) @@ -5304,6 +5694,15 @@ module Google # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DatastoreOptions] attr_accessor :datastore_options + # Configuration to control jobs where the content being inspected is outside + # of Google Cloud Platform. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + # Corresponds to the JSON property `hybridOptions` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2HybridOptions] + attr_accessor :hybrid_options + # Configuration of the timespan of the items to include in scanning. # Currently only supported when inspecting Google Cloud Storage and BigQuery. # Corresponds to the JSON property `timespanConfig` @@ -5319,6 +5718,7 @@ module Google @big_query_options = args[:big_query_options] if args.key?(:big_query_options) @cloud_storage_options = args[:cloud_storage_options] if args.key?(:cloud_storage_options) @datastore_options = args[:datastore_options] if args.key?(:datastore_options) + @hybrid_options = args[:hybrid_options] if args.key?(:hybrid_options) @timespan_config = args[:timespan_config] if args.key?(:timespan_config) end end @@ -5368,6 +5768,32 @@ module Google # @return [String] attr_accessor :description + # Custom information type based on a dictionary of words or phrases. This can + # be used to match sensitive information specific to the data, such as a list + # of employee IDs or job titles. + # Dictionary words are case-insensitive and all characters other than letters + # and digits in the unicode [Basic Multilingual + # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29# + # Basic_Multilingual_Plane) + # will be replaced with whitespace when scanning for matches, so the + # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson", + # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters + # surrounding any match must be of a different type than the adjacent + # characters within the word, so letters must be next to non-letters and + # digits next to non-digits. For example, the dictionary word "jen" will + # match the first three letters of the text "jen123" but will return no + # matches for "jennifer". + # Dictionary words containing a large number of characters that are not + # letters or digits may result in unexpected findings because such characters + # are treated as whitespace. The + # [limits](https://cloud.google.com/dlp/limits) page contains details about + # the size limits of dictionaries. For dictionaries that do not fit within + # these constraints, consider using `LargeCustomDictionaryConfig` in the + # `StoredInfoType` API. + # Corresponds to the JSON property `dictionary` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Dictionary] + attr_accessor :dictionary + # Display name of the StoredInfoType (max 256 characters). # Corresponds to the JSON property `displayName` # @return [String] @@ -5383,6 +5809,11 @@ module Google # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2LargeCustomDictionaryConfig] attr_accessor :large_custom_dictionary + # Message defining a custom regular expression. + # Corresponds to the JSON property `regex` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Regex] + attr_accessor :regex + def initialize(**args) update!(**args) end @@ -5390,8 +5821,10 @@ module Google # Update properties of this object def update!(**args) @description = args[:description] if args.key?(:description) + @dictionary = args[:dictionary] if args.key?(:dictionary) @display_name = args[:display_name] if args.key?(:display_name) @large_custom_dictionary = args[:large_custom_dictionary] if args.key?(:large_custom_dictionary) + @regex = args[:regex] if args.key?(:regex) end end @@ -5600,6 +6033,31 @@ module Google end end + # Instructions regarding the table content being inspected. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + class GooglePrivacyDlpV2TableOptions + include Google::Apis::Core::Hashable + + # The columns that are the primary keys for table objects included in + # ContentItem. A copy of this cell's value will stored alongside alongside + # each finding so that the finding can be traced to the specific row it came + # from. No more than 3 may be provided. + # Corresponds to the JSON property `identifyingFields` + # @return [Array] + attr_accessor :identifying_fields + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @identifying_fields = args[:identifying_fields] if args.key?(:identifying_fields) + end + end + # A column with a semantic tag attached. class GooglePrivacyDlpV2TaggedField include Google::Apis::Core::Hashable @@ -5890,6 +6348,15 @@ module Google class GooglePrivacyDlpV2Trigger include Google::Apis::Core::Hashable + # Job trigger option for hybrid jobs. Jobs must be manually created + # and finished. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + # Corresponds to the JSON property `manual` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Manual] + attr_accessor :manual + # Schedule for triggeredJobs. # Corresponds to the JSON property `schedule` # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Schedule] @@ -5901,6 +6368,7 @@ module Google # Update properties of this object def update!(**args) + @manual = args[:manual] if args.key?(:manual) @schedule = args[:schedule] if args.key?(:schedule) end end diff --git a/generated/google/apis/dlp_v2/representations.rb b/generated/google/apis/dlp_v2/representations.rb index 644b03935..df09cc303 100644 --- a/generated/google/apis/dlp_v2/representations.rb +++ b/generated/google/apis/dlp_v2/representations.rb @@ -172,6 +172,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class GooglePrivacyDlpV2Container + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class GooglePrivacyDlpV2ContentItem class Representation < Google::Apis::Core::JsonRepresentation; end @@ -400,6 +406,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class GooglePrivacyDlpV2FinishDlpJobRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class GooglePrivacyDlpV2FixedSizeBucketingConfig class Representation < Google::Apis::Core::JsonRepresentation; end @@ -412,6 +424,48 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class GooglePrivacyDlpV2HybridContentItem + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2HybridFindingDetails + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2HybridInspectDlpJobRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2HybridInspectJobTriggerRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2HybridInspectResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2HybridInspectStatistics + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2HybridOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class GooglePrivacyDlpV2ImageLocation class Representation < Google::Apis::Core::JsonRepresentation; end @@ -682,6 +736,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class GooglePrivacyDlpV2Manual + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class GooglePrivacyDlpV2NumericalStatsConfig class Representation < Google::Apis::Core::JsonRepresentation; end @@ -964,6 +1024,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class GooglePrivacyDlpV2TableOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class GooglePrivacyDlpV2TaggedField class Representation < Google::Apis::Core::JsonRepresentation; end @@ -1352,6 +1418,19 @@ module Google end end + class GooglePrivacyDlpV2Container + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :full_path, as: 'fullPath' + property :project_id, as: 'projectId' + property :relative_path, as: 'relativePath' + property :root_path, as: 'rootPath' + property :type, as: 'type' + property :update_time, as: 'updateTime' + property :version, as: 'version' + end + end + class GooglePrivacyDlpV2ContentItem # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1759,6 +1838,7 @@ module Google property :job_create_time, as: 'jobCreateTime' property :job_name, as: 'jobName' + hash :labels, as: 'labels' property :likelihood, as: 'likelihood' property :location, as: 'location', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Location, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Location::Representation @@ -1781,6 +1861,12 @@ module Google end end + class GooglePrivacyDlpV2FinishDlpJobRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + class GooglePrivacyDlpV2FixedSizeBucketingConfig # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1804,6 +1890,71 @@ module Google end end + class GooglePrivacyDlpV2HybridContentItem + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :finding_details, as: 'findingDetails', class: Google::Apis::DlpV2::GooglePrivacyDlpV2HybridFindingDetails, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2HybridFindingDetails::Representation + + property :item, as: 'item', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem::Representation + + end + end + + class GooglePrivacyDlpV2HybridFindingDetails + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :container_details, as: 'containerDetails', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Container, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Container::Representation + + property :file_offset, :numeric_string => true, as: 'fileOffset' + hash :labels, as: 'labels' + property :row_offset, :numeric_string => true, as: 'rowOffset' + property :table_options, as: 'tableOptions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2TableOptions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2TableOptions::Representation + + end + end + + class GooglePrivacyDlpV2HybridInspectDlpJobRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :hybrid_item, as: 'hybridItem', class: Google::Apis::DlpV2::GooglePrivacyDlpV2HybridContentItem, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2HybridContentItem::Representation + + end + end + + class GooglePrivacyDlpV2HybridInspectJobTriggerRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :hybrid_item, as: 'hybridItem', class: Google::Apis::DlpV2::GooglePrivacyDlpV2HybridContentItem, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2HybridContentItem::Representation + + end + end + + class GooglePrivacyDlpV2HybridInspectResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class GooglePrivacyDlpV2HybridInspectStatistics + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :hybrid_requests_aborted, :numeric_string => true, as: 'hybridRequestsAborted' + property :hybrid_requests_pending, :numeric_string => true, as: 'hybridRequestsPending' + property :hybrid_requests_processed, :numeric_string => true, as: 'hybridRequestsProcessed' + end + end + + class GooglePrivacyDlpV2HybridOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + hash :labels, as: 'labels' + collection :required_finding_label_keys, as: 'requiredFindingLabelKeys' + property :table_options, as: 'tableOptions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2TableOptions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2TableOptions::Representation + + end + end + class GooglePrivacyDlpV2ImageLocation # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -2248,6 +2399,12 @@ module Google end end + class GooglePrivacyDlpV2Manual + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + class GooglePrivacyDlpV2NumericalStatsConfig # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -2559,6 +2716,8 @@ module Google class GooglePrivacyDlpV2Result # @private class Representation < Google::Apis::Core::JsonRepresentation + property :hybrid_stats, as: 'hybridStats', class: Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectStatistics, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectStatistics::Representation + collection :info_type_stats, as: 'infoTypeStats', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeStats, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeStats::Representation property :processed_bytes, :numeric_string => true, as: 'processedBytes' @@ -2622,6 +2781,8 @@ module Google property :datastore_options, as: 'datastoreOptions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DatastoreOptions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DatastoreOptions::Representation + property :hybrid_options, as: 'hybridOptions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2HybridOptions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2HybridOptions::Representation + property :timespan_config, as: 'timespanConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2TimespanConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2TimespanConfig::Representation end @@ -2642,9 +2803,13 @@ module Google # @private class Representation < Google::Apis::Core::JsonRepresentation property :description, as: 'description' + property :dictionary, as: 'dictionary', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Dictionary, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Dictionary::Representation + property :display_name, as: 'displayName' property :large_custom_dictionary, as: 'largeCustomDictionary', class: Google::Apis::DlpV2::GooglePrivacyDlpV2LargeCustomDictionaryConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2LargeCustomDictionaryConfig::Representation + property :regex, as: 'regex', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Regex, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Regex::Representation + end end @@ -2710,6 +2875,14 @@ module Google end end + class GooglePrivacyDlpV2TableOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :identifying_fields, as: 'identifyingFields', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + end + end + class GooglePrivacyDlpV2TaggedField # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -2802,6 +2975,8 @@ module Google class GooglePrivacyDlpV2Trigger # @private class Representation < Google::Apis::Core::JsonRepresentation + property :manual, as: 'manual', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Manual, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Manual::Representation + property :schedule, as: 'schedule', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Schedule, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Schedule::Representation end diff --git a/generated/google/apis/dlp_v2/service.rb b/generated/google/apis/dlp_v2/service.rb index 61d8c909a..32a04ca94 100644 --- a/generated/google/apis/dlp_v2/service.rb +++ b/generated/google/apis/dlp_v2/service.rb @@ -2811,6 +2811,43 @@ module Google execute_or_queue_command(command, &block) end + # Finish a running hybrid DlpJob. Triggers the finalization steps and running + # of any enabled actions that have not yet run. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + # @param [String] name + # Required. The name of the DlpJob resource to be cancelled. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2FinishDlpJobRequest] google_privacy_dlp_v2_finish_dlp_job_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GoogleProtobufEmpty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GoogleProtobufEmpty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def finish_project_location_dlp_job(name, google_privacy_dlp_v2_finish_dlp_job_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+name}:finish', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2FinishDlpJobRequest::Representation + command.request_object = google_privacy_dlp_v2_finish_dlp_job_request_object + command.response_representation = Google::Apis::DlpV2::GoogleProtobufEmpty::Representation + command.response_class = Google::Apis::DlpV2::GoogleProtobufEmpty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Gets the latest state of a long-running DlpJob. # See https://cloud.google.com/dlp/docs/inspecting-storage and # https://cloud.google.com/dlp/docs/compute-risk-analysis to learn more. @@ -2843,6 +2880,45 @@ module Google execute_or_queue_command(command, &block) end + # Inspect hybrid content and store findings to a job. + # To review the findings inspect the job. Inspection will occur + # asynchronously. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + # @param [String] name + # Required. Resource name of the job to execute a hybrid inspect on, for example + # `projects/dlp-test-project/dlpJob/53234423`. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectDlpJobRequest] google_privacy_dlp_v2_hybrid_inspect_dlp_job_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def hybrid_project_location_dlp_job_inspect(name, google_privacy_dlp_v2_hybrid_inspect_dlp_job_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+name}:hybridInspect', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectDlpJobRequest::Representation + command.request_object = google_privacy_dlp_v2_hybrid_inspect_dlp_job_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectResponse + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Lists DlpJobs that match the specified filter in the request. # See https://cloud.google.com/dlp/docs/inspecting-storage and # https://cloud.google.com/dlp/docs/compute-risk-analysis to learn more. @@ -3306,6 +3382,46 @@ module Google execute_or_queue_command(command, &block) end + # Inspect hybrid content and store findings to a trigger. The inspection + # will be processed asynchronously. To review the findings monitor the + # jobs within the trigger. + # Early access feature is in a pre-release state and might change or have + # limited support. For more information, see + # https://cloud.google.com/products#product-launch-stages. + # @param [String] name + # Required. Resource name of the trigger to execute a hybrid inspect on, for + # example + # `projects/dlp-test-project/jobTriggers/53234423`. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectJobTriggerRequest] google_privacy_dlp_v2_hybrid_inspect_job_trigger_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def hybrid_project_location_job_trigger_inspect(name, google_privacy_dlp_v2_hybrid_inspect_job_trigger_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+name}:hybridInspect', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectJobTriggerRequest::Representation + command.request_object = google_privacy_dlp_v2_hybrid_inspect_job_trigger_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2HybridInspectResponse + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Lists job triggers. # See https://cloud.google.com/dlp/docs/creating-job-triggers to learn more. # @param [String] parent diff --git a/generated/google/apis/healthcare_v1beta1.rb b/generated/google/apis/healthcare_v1beta1.rb index 606570a5b..61d0b88df 100644 --- a/generated/google/apis/healthcare_v1beta1.rb +++ b/generated/google/apis/healthcare_v1beta1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/healthcare module HealthcareV1beta1 VERSION = 'V1beta1' - REVISION = '20200212' + REVISION = '20200229' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/healthcare_v1beta1/classes.rb b/generated/google/apis/healthcare_v1beta1/classes.rb index da9bbc22d..cd7df2b69 100644 --- a/generated/google/apis/healthcare_v1beta1/classes.rb +++ b/generated/google/apis/healthcare_v1beta1/classes.rb @@ -2088,6 +2088,10 @@ module Google # to a project. cloud-healthcare@system.gserviceaccount.com must have # publisher permissions on the given Cloud Pub/Sub topic. Not having adequate # permissions causes the calls that send notifications to fail. + # If a notification can't be published to Cloud Pub/Sub, errors are logged to + # Stackdriver (see [Viewing + # logs](/healthcare/docs/how-tos/stackdriver-logging)). If the number of + # errors exceeds a certain rate, some aren't submitted. # Corresponds to the JSON property `pubsubTopic` # @return [String] attr_accessor :pubsub_topic diff --git a/generated/google/apis/toolresults_v1.rb b/generated/google/apis/networkmanagement_v1beta1.rb similarity index 50% rename from generated/google/apis/toolresults_v1.rb rename to generated/google/apis/networkmanagement_v1beta1.rb index 079a1ae6a..f755483b6 100644 --- a/generated/google/apis/toolresults_v1.rb +++ b/generated/google/apis/networkmanagement_v1beta1.rb @@ -12,20 +12,24 @@ # See the License for the specific language governing permissions and # limitations under the License. -require 'google/apis/toolresults_v1/service.rb' -require 'google/apis/toolresults_v1/classes.rb' -require 'google/apis/toolresults_v1/representations.rb' +require 'google/apis/networkmanagement_v1beta1/service.rb' +require 'google/apis/networkmanagement_v1beta1/classes.rb' +require 'google/apis/networkmanagement_v1beta1/representations.rb' module Google module Apis - # Cloud Tool Results API + # Network Management API # - # API to publish and access results from developer tools. + # The Network Management API provides a collection of network performance + # monitoring and diagnostic capabilities. # - # @see https://firebase.google.com/docs/test-lab/ - module ToolresultsV1 - VERSION = 'V1' - REVISION = '20200224' + # @see https://cloud.google.com/ + module NetworkmanagementV1beta1 + VERSION = 'V1beta1' + REVISION = '20200303' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' end end end diff --git a/generated/google/apis/networkmanagement_v1beta1/classes.rb b/generated/google/apis/networkmanagement_v1beta1/classes.rb new file mode 100644 index 000000000..ad5574f99 --- /dev/null +++ b/generated/google/apis/networkmanagement_v1beta1/classes.rb @@ -0,0 +1,1856 @@ +# Copyright 2015 Google Inc. +# +# 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. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module NetworkmanagementV1beta1 + + # Details of the final state "abort" and associated resource. + class AbortInfo + include Google::Apis::Core::Hashable + + # Causes that the analysis is aborted. + # Corresponds to the JSON property `cause` + # @return [String] + attr_accessor :cause + + # URI of the resource that caused the abort. + # Corresponds to the JSON property `resourceUri` + # @return [String] + attr_accessor :resource_uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cause = args[:cause] if args.key?(:cause) + @resource_uri = args[:resource_uri] if args.key?(:resource_uri) + end + end + + # Specifies the audit configuration for a service. + # The configuration determines which permission types are logged, and what + # identities, if any, are exempted from logging. + # An AuditConfig must have one or more AuditLogConfigs. + # If there are AuditConfigs for both `allServices` and a specific service, + # the union of the two AuditConfigs is used for that service: the log_types + # specified in each AuditConfig are enabled, and the exempted_members in each + # AuditLogConfig are exempted. + # Example Policy with multiple AuditConfigs: + # ` + # "audit_configs": [ + # ` + # "service": "allServices" + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # "exempted_members": [ + # "user:jose@example.com" + # ] + # `, + # ` + # "log_type": "DATA_WRITE", + # `, + # ` + # "log_type": "ADMIN_READ", + # ` + # ] + # `, + # ` + # "service": "sampleservice.googleapis.com" + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # `, + # ` + # "log_type": "DATA_WRITE", + # "exempted_members": [ + # "user:aliya@example.com" + # ] + # ` + # ] + # ` + # ] + # ` + # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ + # logging. It also exempts jose@example.com from DATA_READ logging, and + # aliya@example.com from DATA_WRITE logging. + class AuditConfig + include Google::Apis::Core::Hashable + + # The configuration for logging of each type of permission. + # Corresponds to the JSON property `auditLogConfigs` + # @return [Array] + attr_accessor :audit_log_configs + + # Specifies a service that will be enabled for audit logging. + # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. + # `allServices` is a special value that covers all services. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs) + @service = args[:service] if args.key?(:service) + end + end + + # Provides the configuration for logging a type of permissions. + # Example: + # ` + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # "exempted_members": [ + # "user:jose@example.com" + # ] + # `, + # ` + # "log_type": "DATA_WRITE", + # ` + # ] + # ` + # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting + # jose@example.com from DATA_READ logging. + class AuditLogConfig + include Google::Apis::Core::Hashable + + # Specifies the identities that do not cause logging for this type of + # permission. + # Follows the same format of Binding.members. + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # The log type that this config enables. + # Corresponds to the JSON property `logType` + # @return [String] + attr_accessor :log_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @log_type = args[:log_type] if args.key?(:log_type) + end + end + + # Associates `members` with a `role`. + class Binding + include Google::Apis::Core::Hashable + + # Represents a textual expression in the Common Expression Language (CEL) + # syntax. CEL is a C-like expression language. The syntax and semantics of CEL + # are documented at https://github.com/google/cel-spec. + # Example (Comparison): + # title: "Summary size limit" + # description: "Determines if a summary is less than 100 chars" + # expression: "document.summary.size() < 100" + # Example (Equality): + # title: "Requestor is owner" + # description: "Determines if requestor is the document owner" + # expression: "document.owner == request.auth.claims.email" + # Example (Logic): + # title: "Public documents" + # description: "Determine whether the document should be publicly visible" + # expression: "document.type != 'private' && document.type != 'internal'" + # Example (Data Manipulation): + # title: "Notification string" + # description: "Create a notification string with a timestamp." + # expression: "'New message received at ' + string(document.create_time)" + # The exact variables and functions that may be referenced within an expression + # are determined by the service that evaluates it. See the service + # documentation for additional information. + # Corresponds to the JSON property `condition` + # @return [Google::Apis::NetworkmanagementV1beta1::Expr] + attr_accessor :condition + + # Specifies the identities requesting access for a Cloud Platform resource. + # `members` can have the following values: + # * `allUsers`: A special identifier that represents anyone who is + # on the internet; with or without a Google account. + # * `allAuthenticatedUsers`: A special identifier that represents anyone + # who is authenticated with a Google account or a service account. + # * `user:`emailid``: An email address that represents a specific Google + # account. For example, `alice@example.com` . + # * `serviceAccount:`emailid``: An email address that represents a service + # account. For example, `my-other-app@appspot.gserviceaccount.com`. + # * `group:`emailid``: An email address that represents a Google group. + # For example, `admins@example.com`. + # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique + # identifier) representing a user that has been recently deleted. For + # example, `alice@example.com?uid=123456789012345678901`. If the user is + # recovered, this value reverts to `user:`emailid`` and the recovered user + # retains the role in the binding. + # * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus + # unique identifier) representing a service account that has been recently + # deleted. For example, + # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. + # If the service account is undeleted, this value reverts to + # `serviceAccount:`emailid`` and the undeleted service account retains the + # role in the binding. + # * `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique + # identifier) representing a Google group that has been recently + # deleted. For example, `admins@example.com?uid=123456789012345678901`. If + # the group is recovered, this value reverts to `group:`emailid`` and the + # recovered group retains the role in the binding. + # * `domain:`domain``: The G Suite domain (primary) that represents all the + # users of that domain. For example, `google.com` or `example.com`. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Role that is assigned to `members`. + # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @condition = args[:condition] if args.key?(:condition) + @members = args[:members] if args.key?(:members) + @role = args[:role] if args.key?(:role) + end + end + + # The request message for Operations.CancelOperation. + class CancelOperationRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # A Connectivity Test for a network reachability analysis. + class ConnectivityTest + include Google::Apis::Core::Hashable + + # Output only. The time the test was created. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # The user-supplied description of the Connectivity Test. + # Maximum of 512 characters. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Source or destination of the Connectivity Test. + # Corresponds to the JSON property `destination` + # @return [Google::Apis::NetworkmanagementV1beta1::Endpoint] + attr_accessor :destination + + # Output only. The display name of a Connectivity Test. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # Resource labels to represent user-provided metadata. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Required. Unique name of the resource using the form: + # `projects/`project_id`/tests/`test_id`` + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # IP Protocol of the test. When not provided, "TCP" is assumed. + # Corresponds to the JSON property `protocol` + # @return [String] + attr_accessor :protocol + + # The details of reachability state from the latest run. + # Corresponds to the JSON property `reachabilityDetails` + # @return [Google::Apis::NetworkmanagementV1beta1::ReachabilityDetails] + attr_accessor :reachability_details + + # Other projects that may be relevant for reachability analysis. + # This is applicable to scenarios where a test can cross project boundaries. + # Corresponds to the JSON property `relatedProjects` + # @return [Array] + attr_accessor :related_projects + + # Source or destination of the Connectivity Test. + # Corresponds to the JSON property `source` + # @return [Google::Apis::NetworkmanagementV1beta1::Endpoint] + attr_accessor :source + + # Output only. The time the test's configuration was updated. + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @description = args[:description] if args.key?(:description) + @destination = args[:destination] if args.key?(:destination) + @display_name = args[:display_name] if args.key?(:display_name) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @protocol = args[:protocol] if args.key?(:protocol) + @reachability_details = args[:reachability_details] if args.key?(:reachability_details) + @related_projects = args[:related_projects] if args.key?(:related_projects) + @source = args[:source] if args.key?(:source) + @update_time = args[:update_time] if args.key?(:update_time) + end + end + + # Details of the final state "deliver" and associated resource. + class DeliverInfo + include Google::Apis::Core::Hashable + + # URI of the resource that the packet is delivered to. + # Corresponds to the JSON property `resourceUri` + # @return [String] + attr_accessor :resource_uri + + # Target type where the packet is delivered to. + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource_uri = args[:resource_uri] if args.key?(:resource_uri) + @target = args[:target] if args.key?(:target) + end + end + + # Details of the final state "drop" and associated resource. + class DropInfo + include Google::Apis::Core::Hashable + + # Cause that the packet is dropped. + # Corresponds to the JSON property `cause` + # @return [String] + attr_accessor :cause + + # URI of the resource that caused the drop. + # Corresponds to the JSON property `resourceUri` + # @return [String] + attr_accessor :resource_uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cause = args[:cause] if args.key?(:cause) + @resource_uri = args[:resource_uri] if args.key?(:resource_uri) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated + # empty messages in your APIs. A typical example is to use it as the request + # or the response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for `Empty` is empty JSON object ````. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Source or destination of the Connectivity Test. + class Endpoint + include Google::Apis::Core::Hashable + + # A Compute Engine instance URI. + # Corresponds to the JSON property `instance` + # @return [String] + attr_accessor :instance + + # The IP address of the endpoint, which can be an external or internal IP. + # An IPv6 address is only allowed when the test's destination is a + # [global load balancer VIP](/load-balancing/docs/load-balancing-overview). + # Corresponds to the JSON property `ipAddress` + # @return [String] + attr_accessor :ip_address + + # A Compute Engine network URI. + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # Type of the network where the endpoint is located. + # Applicable only to source endpoint, as destination network type can be + # inferred from the source. + # Corresponds to the JSON property `networkType` + # @return [String] + attr_accessor :network_type + + # The IP protocol port of the endpoint. + # Only applicable when protocol is TCP or UDP. + # Corresponds to the JSON property `port` + # @return [Fixnum] + attr_accessor :port + + # Project ID where the endpoint is located. + # The Project ID can be derived from the URI if you provide a VM instance or + # network URI. + # The following are two cases where you must provide the project ID: + # 1. Only the IP address is specified, and the IP address is within a GCP + # project. + # 2. When you are using Shared VPC and the IP address that you provide is + # from the service project. In this case, the network that the IP address + # resides in is defined in the host project. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instance = args[:instance] if args.key?(:instance) + @ip_address = args[:ip_address] if args.key?(:ip_address) + @network = args[:network] if args.key?(:network) + @network_type = args[:network_type] if args.key?(:network_type) + @port = args[:port] if args.key?(:port) + @project_id = args[:project_id] if args.key?(:project_id) + end + end + + # For display only. The specification of the endpoints for the test. + # EndpointInfo is derived from source and destination Endpoint and validated + # by the backend data plane model. + class EndpointInfo + include Google::Apis::Core::Hashable + + # Destination IP address. + # Corresponds to the JSON property `destinationIp` + # @return [String] + attr_accessor :destination_ip + + # URI of the network where this packet is sent to. + # Corresponds to the JSON property `destinationNetworkUri` + # @return [String] + attr_accessor :destination_network_uri + + # Destination port. Only valid when protocol is TCP or UDP. + # Corresponds to the JSON property `destinationPort` + # @return [Fixnum] + attr_accessor :destination_port + + # IP protocol in string format, for example: "TCP", "UDP", "ICMP". + # Corresponds to the JSON property `protocol` + # @return [String] + attr_accessor :protocol + + # Source IP address. + # Corresponds to the JSON property `sourceIp` + # @return [String] + attr_accessor :source_ip + + # URI of the network where this packet originates from. + # Corresponds to the JSON property `sourceNetworkUri` + # @return [String] + attr_accessor :source_network_uri + + # Source port. Only valid when protocol is TCP or UDP. + # Corresponds to the JSON property `sourcePort` + # @return [Fixnum] + attr_accessor :source_port + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @destination_ip = args[:destination_ip] if args.key?(:destination_ip) + @destination_network_uri = args[:destination_network_uri] if args.key?(:destination_network_uri) + @destination_port = args[:destination_port] if args.key?(:destination_port) + @protocol = args[:protocol] if args.key?(:protocol) + @source_ip = args[:source_ip] if args.key?(:source_ip) + @source_network_uri = args[:source_network_uri] if args.key?(:source_network_uri) + @source_port = args[:source_port] if args.key?(:source_port) + end + end + + # Represents a textual expression in the Common Expression Language (CEL) + # syntax. CEL is a C-like expression language. The syntax and semantics of CEL + # are documented at https://github.com/google/cel-spec. + # Example (Comparison): + # title: "Summary size limit" + # description: "Determines if a summary is less than 100 chars" + # expression: "document.summary.size() < 100" + # Example (Equality): + # title: "Requestor is owner" + # description: "Determines if requestor is the document owner" + # expression: "document.owner == request.auth.claims.email" + # Example (Logic): + # title: "Public documents" + # description: "Determine whether the document should be publicly visible" + # expression: "document.type != 'private' && document.type != 'internal'" + # Example (Data Manipulation): + # title: "Notification string" + # description: "Create a notification string with a timestamp." + # expression: "'New message received at ' + string(document.create_time)" + # The exact variables and functions that may be referenced within an expression + # are determined by the service that evaluates it. See the service + # documentation for additional information. + class Expr + include Google::Apis::Core::Hashable + + # Optional. Description of the expression. This is a longer text which + # describes the expression, e.g. when hovered over it in a UI. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Textual representation of an expression in Common Expression Language + # syntax. + # Corresponds to the JSON property `expression` + # @return [String] + attr_accessor :expression + + # Optional. String indicating the location of the expression for error + # reporting, e.g. a file name and a position in the file. + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + # Optional. Title for the expression, i.e. a short string describing + # its purpose. This can be used e.g. in UIs which allow to enter the + # expression. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @expression = args[:expression] if args.key?(:expression) + @location = args[:location] if args.key?(:location) + @title = args[:title] if args.key?(:title) + end + end + + # For display only. Metadata associated with a Compute Engine firewall rule. + class FirewallInfo + include Google::Apis::Core::Hashable + + # Possible values: ALLOW, DENY + # Corresponds to the JSON property `action` + # @return [String] + attr_accessor :action + + # Possible values: INGRESS, EGRESS + # Corresponds to the JSON property `direction` + # @return [String] + attr_accessor :direction + + # Name of a Compute Engine firewall rule. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # URI of a Compute Engine network. + # Corresponds to the JSON property `networkUri` + # @return [String] + attr_accessor :network_uri + + # Priority of the firewall rule. + # Corresponds to the JSON property `priority` + # @return [Fixnum] + attr_accessor :priority + + # Target service accounts of the firewall rule. + # Corresponds to the JSON property `targetServiceAccounts` + # @return [Array] + attr_accessor :target_service_accounts + + # Target tags of the firewall rule. + # Corresponds to the JSON property `targetTags` + # @return [Array] + attr_accessor :target_tags + + # URI of a Compute Engine firewall rule. + # Implied default rule does not have URI. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @action = args[:action] if args.key?(:action) + @direction = args[:direction] if args.key?(:direction) + @display_name = args[:display_name] if args.key?(:display_name) + @network_uri = args[:network_uri] if args.key?(:network_uri) + @priority = args[:priority] if args.key?(:priority) + @target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts) + @target_tags = args[:target_tags] if args.key?(:target_tags) + @uri = args[:uri] if args.key?(:uri) + end + end + + # Details of the final state "forward" and associated resource. + class ForwardInfo + include Google::Apis::Core::Hashable + + # URI of the resource that the packet is forwarded to. + # Corresponds to the JSON property `resourceUri` + # @return [String] + attr_accessor :resource_uri + + # Target type where this packet is forwarded to. + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @resource_uri = args[:resource_uri] if args.key?(:resource_uri) + @target = args[:target] if args.key?(:target) + end + end + + # For display only. Metadata associated with a Compute Engine forwarding rule. + class ForwardingRuleInfo + include Google::Apis::Core::Hashable + + # Name of a Compute Engine forwarding rule. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # Port range defined in the forwarding rule that matches the test. + # Corresponds to the JSON property `matchedPortRange` + # @return [String] + attr_accessor :matched_port_range + + # Protocol defined in the forwarding rule that matches the test. + # Corresponds to the JSON property `matchedProtocol` + # @return [String] + attr_accessor :matched_protocol + + # Network URI. Only valid for Internal Load Balancer. + # Corresponds to the JSON property `networkUri` + # @return [String] + attr_accessor :network_uri + + # Target type of the forwarding rule. + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # URI of a Compute Engine forwarding rule. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + # VIP of the forwarding rule. + # Corresponds to the JSON property `vip` + # @return [String] + attr_accessor :vip + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @matched_port_range = args[:matched_port_range] if args.key?(:matched_port_range) + @matched_protocol = args[:matched_protocol] if args.key?(:matched_protocol) + @network_uri = args[:network_uri] if args.key?(:network_uri) + @target = args[:target] if args.key?(:target) + @uri = args[:uri] if args.key?(:uri) + @vip = args[:vip] if args.key?(:vip) + end + end + + # For display only. Metadata associated with a Compute Engine instance. + class InstanceInfo + include Google::Apis::Core::Hashable + + # Name of a Compute Engine instance. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # External IP address of the network interface. + # Corresponds to the JSON property `externalIp` + # @return [String] + attr_accessor :external_ip + + # Name of the network interface of a Compute Engine instance. + # Corresponds to the JSON property `interface` + # @return [String] + attr_accessor :interface + + # Internal IP address of the network interface. + # Corresponds to the JSON property `internalIp` + # @return [String] + attr_accessor :internal_ip + + # Network tags configured on the instance. + # Corresponds to the JSON property `networkTags` + # @return [Array] + attr_accessor :network_tags + + # URI of a Compute Engine network. + # Corresponds to the JSON property `networkUri` + # @return [String] + attr_accessor :network_uri + + # Service account authorized for the instance. + # Corresponds to the JSON property `serviceAccount` + # @return [String] + attr_accessor :service_account + + # URI of a Compute Engine instance. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @external_ip = args[:external_ip] if args.key?(:external_ip) + @interface = args[:interface] if args.key?(:interface) + @internal_ip = args[:internal_ip] if args.key?(:internal_ip) + @network_tags = args[:network_tags] if args.key?(:network_tags) + @network_uri = args[:network_uri] if args.key?(:network_uri) + @service_account = args[:service_account] if args.key?(:service_account) + @uri = args[:uri] if args.key?(:uri) + end + end + + # Response for the `ListConnectivityTests` method. + class ListConnectivityTestsResponse + include Google::Apis::Core::Hashable + + # Page token to fetch the next set of Connectivity Tests. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # List of Connectivity Tests. + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + # Locations that could not be reached (when querying all locations with `-`). + # Corresponds to the JSON property `unreachable` + # @return [Array] + attr_accessor :unreachable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @resources = args[:resources] if args.key?(:resources) + @unreachable = args[:unreachable] if args.key?(:unreachable) + end + end + + # The response message for Locations.ListLocations. + class ListLocationsResponse + include Google::Apis::Core::Hashable + + # A list of locations that matches the specified filter in the request. + # Corresponds to the JSON property `locations` + # @return [Array] + attr_accessor :locations + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @locations = args[:locations] if args.key?(:locations) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for Operations.ListOperations. + class ListOperationsResponse + include Google::Apis::Core::Hashable + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of operations that matches the specified filter in the request. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + + # For display only. Metadata associated with a specific load balancer backend. + class LoadBalancerBackend + include Google::Apis::Core::Hashable + + # Name of a Compute Engine instance or network endpoint. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # A list of firewall rule URIs allowing probes from health check IP ranges. + # Corresponds to the JSON property `healthCheckAllowingFirewallRules` + # @return [Array] + attr_accessor :health_check_allowing_firewall_rules + + # A list of firewall rule URIs blocking probes from health check IP ranges. + # Corresponds to the JSON property `healthCheckBlockingFirewallRules` + # @return [Array] + attr_accessor :health_check_blocking_firewall_rules + + # State of the health check firewall configuration. + # Corresponds to the JSON property `healthCheckFirewallState` + # @return [String] + attr_accessor :health_check_firewall_state + + # URI of a Compute Engine instance or network endpoint. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @health_check_allowing_firewall_rules = args[:health_check_allowing_firewall_rules] if args.key?(:health_check_allowing_firewall_rules) + @health_check_blocking_firewall_rules = args[:health_check_blocking_firewall_rules] if args.key?(:health_check_blocking_firewall_rules) + @health_check_firewall_state = args[:health_check_firewall_state] if args.key?(:health_check_firewall_state) + @uri = args[:uri] if args.key?(:uri) + end + end + + # For display only. Metadata associated with a load balancer. + class LoadBalancerInfo + include Google::Apis::Core::Hashable + + # Type of load balancer's backend configuration. + # Corresponds to the JSON property `backendType` + # @return [String] + attr_accessor :backend_type + + # Backend configuration URI. + # Corresponds to the JSON property `backendUri` + # @return [String] + attr_accessor :backend_uri + + # Information for the loadbalancer backends. + # Corresponds to the JSON property `backends` + # @return [Array] + attr_accessor :backends + + # URI of the health check for the load balancer. + # Corresponds to the JSON property `healthCheckUri` + # @return [String] + attr_accessor :health_check_uri + + # Type of the load balancer. + # Corresponds to the JSON property `loadBalancerType` + # @return [String] + attr_accessor :load_balancer_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @backend_type = args[:backend_type] if args.key?(:backend_type) + @backend_uri = args[:backend_uri] if args.key?(:backend_uri) + @backends = args[:backends] if args.key?(:backends) + @health_check_uri = args[:health_check_uri] if args.key?(:health_check_uri) + @load_balancer_type = args[:load_balancer_type] if args.key?(:load_balancer_type) + end + end + + # A resource that represents Google Cloud Platform location. + class Location + include Google::Apis::Core::Hashable + + # The friendly name for this location, typically a nearby city name. + # For example, "Tokyo". + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # Cross-service attributes for the location. For example + # `"cloud.googleapis.com/region": "us-east1"` + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The canonical id for this location. For example: `"us-east1"`. + # Corresponds to the JSON property `locationId` + # @return [String] + attr_accessor :location_id + + # Service-specific metadata. For example the available capacity at the given + # location. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # Resource name for the location, which may vary between implementations. + # For example: `"projects/example-project/locations/us-east1"` + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @labels = args[:labels] if args.key?(:labels) + @location_id = args[:location_id] if args.key?(:location_id) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + end + end + + # For display only. Metadata associated with a Compute Engine network. + class NetworkInfo + include Google::Apis::Core::Hashable + + # Name of a Compute Engine network. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # The IP range that matches the test. + # Corresponds to the JSON property `matchedIpRange` + # @return [String] + attr_accessor :matched_ip_range + + # URI of a Compute Engine network. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @matched_ip_range = args[:matched_ip_range] if args.key?(:matched_ip_range) + @uri = args[:uri] if args.key?(:uri) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # If the value is `false`, it means the operation is still in progress. + # If `true`, the operation is completed, and either `error` or `response` is + # available. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # The `Status` type defines a logical error model that is suitable for + # different programming environments, including REST APIs and RPC APIs. It is + # used by [gRPC](https://github.com/grpc). Each `Status` message contains + # three pieces of data: error code, error message, and error details. + # You can find out more about this error model and how to work with it in the + # [API Design Guide](https://cloud.google.com/apis/design/errors). + # Corresponds to the JSON property `error` + # @return [Google::Apis::NetworkmanagementV1beta1::Status] + attr_accessor :error + + # Service-specific metadata associated with the operation. It typically + # contains progress information and common metadata such as create time. + # Some services might not provide such metadata. Any method that returns a + # long-running operation should document the metadata type, if any. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # The server-assigned name, which is only unique within the same service that + # originally returns it. If you use the default HTTP mapping, the + # `name` should be a resource name ending with `operations/`unique_id``. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The normal response of the operation in case of success. If the original + # method returns no data on success, such as `Delete`, the response is + # `google.protobuf.Empty`. If the original method is standard + # `Get`/`Create`/`Update`, the response should be the resource. For other + # methods, the response should have the type `XxxResponse`, where `Xxx` + # is the original method name. For example, if the original method name + # is `TakeSnapshot()`, the inferred response type is + # `TakeSnapshotResponse`. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # Metadata describing an Operation + class OperationMetadata + include Google::Apis::Core::Hashable + + # API version. + # Corresponds to the JSON property `apiVersion` + # @return [String] + attr_accessor :api_version + + # Specifies if cancellation was requested for the operation. + # Corresponds to the JSON property `cancelRequested` + # @return [Boolean] + attr_accessor :cancel_requested + alias_method :cancel_requested?, :cancel_requested + + # The time the operation was created. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # The time the operation finished running. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Human-readable status of the operation, if any. + # Corresponds to the JSON property `statusDetail` + # @return [String] + attr_accessor :status_detail + + # Target of the operation - for example + # projects/project-1/connectivityTests/test-1 + # Corresponds to the JSON property `target` + # @return [String] + attr_accessor :target + + # Name of the verb executed by the operation. + # Corresponds to the JSON property `verb` + # @return [String] + attr_accessor :verb + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @api_version = args[:api_version] if args.key?(:api_version) + @cancel_requested = args[:cancel_requested] if args.key?(:cancel_requested) + @create_time = args[:create_time] if args.key?(:create_time) + @end_time = args[:end_time] if args.key?(:end_time) + @status_detail = args[:status_detail] if args.key?(:status_detail) + @target = args[:target] if args.key?(:target) + @verb = args[:verb] if args.key?(:verb) + end + end + + # An Identity and Access Management (IAM) policy, which specifies access + # controls for Google Cloud resources. + # A `Policy` is a collection of `bindings`. A `binding` binds one or more + # `members` to a single `role`. Members can be user accounts, service accounts, + # Google groups, and domains (such as G Suite). A `role` is a named list of + # permissions; each `role` can be an IAM predefined role or a user-created + # custom role. + # Optionally, a `binding` can specify a `condition`, which is a logical + # expression that allows access to a resource only if the expression evaluates + # to `true`. A condition can add constraints based on attributes of the + # request, the resource, or both. + # **JSON example:** + # ` + # "bindings": [ + # ` + # "role": "roles/resourcemanager.organizationAdmin", + # "members": [ + # "user:mike@example.com", + # "group:admins@example.com", + # "domain:google.com", + # "serviceAccount:my-project-id@appspot.gserviceaccount.com" + # ] + # `, + # ` + # "role": "roles/resourcemanager.organizationViewer", + # "members": ["user:eve@example.com"], + # "condition": ` + # "title": "expirable access", + # "description": "Does not grant access after Sep 2020", + # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z') + # ", + # ` + # ` + # ], + # "etag": "BwWWja0YfJA=", + # "version": 3 + # ` + # **YAML example:** + # bindings: + # - members: + # - user:mike@example.com + # - group:admins@example.com + # - domain:google.com + # - serviceAccount:my-project-id@appspot.gserviceaccount.com + # role: roles/resourcemanager.organizationAdmin + # - members: + # - user:eve@example.com + # role: roles/resourcemanager.organizationViewer + # condition: + # title: expirable access + # description: Does not grant access after Sep 2020 + # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') + # - etag: BwWWja0YfJA= + # - version: 3 + # For a description of IAM and its features, see the + # [IAM documentation](https://cloud.google.com/iam/docs/). + class Policy + include Google::Apis::Core::Hashable + + # Specifies cloud audit logging configuration for this policy. + # Corresponds to the JSON property `auditConfigs` + # @return [Array] + attr_accessor :audit_configs + + # Associates a list of `members` to a `role`. Optionally, may specify a + # `condition` that determines how and when the `bindings` are applied. Each + # of the `bindings` must contain at least one member. + # Corresponds to the JSON property `bindings` + # @return [Array] + attr_accessor :bindings + + # `etag` is used for optimistic concurrency control as a way to help + # prevent simultaneous updates of a policy from overwriting each other. + # It is strongly suggested that systems make use of the `etag` in the + # read-modify-write cycle to perform policy updates in order to avoid race + # conditions: An `etag` is returned in the response to `getIamPolicy`, and + # systems are expected to put that etag in the request to `setIamPolicy` to + # ensure that their change will be applied to the same version of the policy. + # **Important:** If you use IAM Conditions, you must include the `etag` field + # whenever you call `setIamPolicy`. If you omit this field, then IAM allows + # you to overwrite a version `3` policy with a version `1` policy, and all of + # the conditions in the version `3` policy are lost. + # Corresponds to the JSON property `etag` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :etag + + # Specifies the format of the policy. + # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value + # are rejected. + # Any operation that affects conditional role bindings must specify version + # `3`. This requirement applies to the following operations: + # * Getting a policy that includes a conditional role binding + # * Adding a conditional role binding to a policy + # * Changing a conditional role binding in a policy + # * Removing any role binding, with or without a condition, from a policy + # that includes conditions + # **Important:** If you use IAM Conditions, you must include the `etag` field + # whenever you call `setIamPolicy`. If you omit this field, then IAM allows + # you to overwrite a version `3` policy with a version `1` policy, and all of + # the conditions in the version `3` policy are lost. + # If a policy does not include any conditions, operations on that policy may + # specify any valid version or leave the field unset. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_configs = args[:audit_configs] if args.key?(:audit_configs) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + @version = args[:version] if args.key?(:version) + end + end + + # The details of reachability state from the latest run. + class ReachabilityDetails + include Google::Apis::Core::Hashable + + # The `Status` type defines a logical error model that is suitable for + # different programming environments, including REST APIs and RPC APIs. It is + # used by [gRPC](https://github.com/grpc). Each `Status` message contains + # three pieces of data: error code, error message, and error details. + # You can find out more about this error model and how to work with it in the + # [API Design Guide](https://cloud.google.com/apis/design/errors). + # Corresponds to the JSON property `error` + # @return [Google::Apis::NetworkmanagementV1beta1::Status] + attr_accessor :error + + # The overall reachability result of the test. + # Corresponds to the JSON property `result` + # @return [String] + attr_accessor :result + + # Result may contain a list of traces if a test has multiple possible + # paths in the network, such as when destination endpoint is a load balancer + # with multiple backends. + # Corresponds to the JSON property `traces` + # @return [Array] + attr_accessor :traces + + # The time the reachability state was verified. + # Corresponds to the JSON property `verifyTime` + # @return [String] + attr_accessor :verify_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error = args[:error] if args.key?(:error) + @result = args[:result] if args.key?(:result) + @traces = args[:traces] if args.key?(:traces) + @verify_time = args[:verify_time] if args.key?(:verify_time) + end + end + + # Request for the `RerunConnectivityTest` method. + class RerunConnectivityTestRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # For display only. Metadata associated with a Compute Engine route. + class RouteInfo + include Google::Apis::Core::Hashable + + # Destination IP range of the route. + # Corresponds to the JSON property `destIpRange` + # @return [String] + attr_accessor :dest_ip_range + + # Name of a Compute Engine route. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # Instance tags of the route. + # Corresponds to the JSON property `instanceTags` + # @return [Array] + attr_accessor :instance_tags + + # URI of a Compute Engine network. + # Corresponds to the JSON property `networkUri` + # @return [String] + attr_accessor :network_uri + + # Next hop of the route. + # Corresponds to the JSON property `nextHop` + # @return [String] + attr_accessor :next_hop + + # Type of next hop. + # Corresponds to the JSON property `nextHopType` + # @return [String] + attr_accessor :next_hop_type + + # Priority of the route. + # Corresponds to the JSON property `priority` + # @return [Fixnum] + attr_accessor :priority + + # Type of route. + # Corresponds to the JSON property `routeType` + # @return [String] + attr_accessor :route_type + + # URI of a Compute Engine route. + # Dynamic route from cloud router does not have a URI. + # Advertised route from Google Cloud VPC to on-premises network also does + # not have a URI. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dest_ip_range = args[:dest_ip_range] if args.key?(:dest_ip_range) + @display_name = args[:display_name] if args.key?(:display_name) + @instance_tags = args[:instance_tags] if args.key?(:instance_tags) + @network_uri = args[:network_uri] if args.key?(:network_uri) + @next_hop = args[:next_hop] if args.key?(:next_hop) + @next_hop_type = args[:next_hop_type] if args.key?(:next_hop_type) + @priority = args[:priority] if args.key?(:priority) + @route_type = args[:route_type] if args.key?(:route_type) + @uri = args[:uri] if args.key?(:uri) + end + end + + # Request message for `SetIamPolicy` method. + class SetIamPolicyRequest + include Google::Apis::Core::Hashable + + # An Identity and Access Management (IAM) policy, which specifies access + # controls for Google Cloud resources. + # A `Policy` is a collection of `bindings`. A `binding` binds one or more + # `members` to a single `role`. Members can be user accounts, service accounts, + # Google groups, and domains (such as G Suite). A `role` is a named list of + # permissions; each `role` can be an IAM predefined role or a user-created + # custom role. + # Optionally, a `binding` can specify a `condition`, which is a logical + # expression that allows access to a resource only if the expression evaluates + # to `true`. A condition can add constraints based on attributes of the + # request, the resource, or both. + # **JSON example:** + # ` + # "bindings": [ + # ` + # "role": "roles/resourcemanager.organizationAdmin", + # "members": [ + # "user:mike@example.com", + # "group:admins@example.com", + # "domain:google.com", + # "serviceAccount:my-project-id@appspot.gserviceaccount.com" + # ] + # `, + # ` + # "role": "roles/resourcemanager.organizationViewer", + # "members": ["user:eve@example.com"], + # "condition": ` + # "title": "expirable access", + # "description": "Does not grant access after Sep 2020", + # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z') + # ", + # ` + # ` + # ], + # "etag": "BwWWja0YfJA=", + # "version": 3 + # ` + # **YAML example:** + # bindings: + # - members: + # - user:mike@example.com + # - group:admins@example.com + # - domain:google.com + # - serviceAccount:my-project-id@appspot.gserviceaccount.com + # role: roles/resourcemanager.organizationAdmin + # - members: + # - user:eve@example.com + # role: roles/resourcemanager.organizationViewer + # condition: + # title: expirable access + # description: Does not grant access after Sep 2020 + # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') + # - etag: BwWWja0YfJA= + # - version: 3 + # For a description of IAM and its features, see the + # [IAM documentation](https://cloud.google.com/iam/docs/). + # Corresponds to the JSON property `policy` + # @return [Google::Apis::NetworkmanagementV1beta1::Policy] + attr_accessor :policy + + # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only + # the fields in the mask will be modified. If no mask is provided, the + # following default mask is used: + # paths: "bindings, etag" + # This field is only used by Cloud IAM. + # Corresponds to the JSON property `updateMask` + # @return [String] + attr_accessor :update_mask + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @policy = args[:policy] if args.key?(:policy) + @update_mask = args[:update_mask] if args.key?(:update_mask) + end + end + + # The `Status` type defines a logical error model that is suitable for + # different programming environments, including REST APIs and RPC APIs. It is + # used by [gRPC](https://github.com/grpc). Each `Status` message contains + # three pieces of data: error code, error message, and error details. + # You can find out more about this error model and how to work with it in the + # [API Design Guide](https://cloud.google.com/apis/design/errors). + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # A developer-facing error message, which should be in English. Any + # user-facing error message should be localized and sent in the + # google.rpc.Status.details field, or localized by the client. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # A simulated forwarding path is composed of multiple steps. + # Each step has a well-defined state and an associated configuration. + class Step + include Google::Apis::Core::Hashable + + # Details of the final state "abort" and associated resource. + # Corresponds to the JSON property `abort` + # @return [Google::Apis::NetworkmanagementV1beta1::AbortInfo] + attr_accessor :abort + + # This is a step that leads to the final state Drop. + # Corresponds to the JSON property `causesDrop` + # @return [Boolean] + attr_accessor :causes_drop + alias_method :causes_drop?, :causes_drop + + # Details of the final state "deliver" and associated resource. + # Corresponds to the JSON property `deliver` + # @return [Google::Apis::NetworkmanagementV1beta1::DeliverInfo] + attr_accessor :deliver + + # A description of the step. Usually this is a summary of the state. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Details of the final state "drop" and associated resource. + # Corresponds to the JSON property `drop` + # @return [Google::Apis::NetworkmanagementV1beta1::DropInfo] + attr_accessor :drop + + # For display only. The specification of the endpoints for the test. + # EndpointInfo is derived from source and destination Endpoint and validated + # by the backend data plane model. + # Corresponds to the JSON property `endpoint` + # @return [Google::Apis::NetworkmanagementV1beta1::EndpointInfo] + attr_accessor :endpoint + + # For display only. Metadata associated with a Compute Engine firewall rule. + # Corresponds to the JSON property `firewall` + # @return [Google::Apis::NetworkmanagementV1beta1::FirewallInfo] + attr_accessor :firewall + + # Details of the final state "forward" and associated resource. + # Corresponds to the JSON property `forward` + # @return [Google::Apis::NetworkmanagementV1beta1::ForwardInfo] + attr_accessor :forward + + # For display only. Metadata associated with a Compute Engine forwarding rule. + # Corresponds to the JSON property `forwardingRule` + # @return [Google::Apis::NetworkmanagementV1beta1::ForwardingRuleInfo] + attr_accessor :forwarding_rule + + # For display only. Metadata associated with a Compute Engine instance. + # Corresponds to the JSON property `instance` + # @return [Google::Apis::NetworkmanagementV1beta1::InstanceInfo] + attr_accessor :instance + + # For display only. Metadata associated with a load balancer. + # Corresponds to the JSON property `loadBalancer` + # @return [Google::Apis::NetworkmanagementV1beta1::LoadBalancerInfo] + attr_accessor :load_balancer + + # For display only. Metadata associated with a Compute Engine network. + # Corresponds to the JSON property `network` + # @return [Google::Apis::NetworkmanagementV1beta1::NetworkInfo] + attr_accessor :network + + # Project ID that contains the configuration this step is validating. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # For display only. Metadata associated with a Compute Engine route. + # Corresponds to the JSON property `route` + # @return [Google::Apis::NetworkmanagementV1beta1::RouteInfo] + attr_accessor :route + + # Each step is in one of the pre-defined states. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # For display only. Metadata associated with a Compute Engine VPN gateway. + # Corresponds to the JSON property `vpnGateway` + # @return [Google::Apis::NetworkmanagementV1beta1::VpnGatewayInfo] + attr_accessor :vpn_gateway + + # For display only. Metadata associated with a Compute Engine VPN tunnel. + # Corresponds to the JSON property `vpnTunnel` + # @return [Google::Apis::NetworkmanagementV1beta1::VpnTunnelInfo] + attr_accessor :vpn_tunnel + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @abort = args[:abort] if args.key?(:abort) + @causes_drop = args[:causes_drop] if args.key?(:causes_drop) + @deliver = args[:deliver] if args.key?(:deliver) + @description = args[:description] if args.key?(:description) + @drop = args[:drop] if args.key?(:drop) + @endpoint = args[:endpoint] if args.key?(:endpoint) + @firewall = args[:firewall] if args.key?(:firewall) + @forward = args[:forward] if args.key?(:forward) + @forwarding_rule = args[:forwarding_rule] if args.key?(:forwarding_rule) + @instance = args[:instance] if args.key?(:instance) + @load_balancer = args[:load_balancer] if args.key?(:load_balancer) + @network = args[:network] if args.key?(:network) + @project_id = args[:project_id] if args.key?(:project_id) + @route = args[:route] if args.key?(:route) + @state = args[:state] if args.key?(:state) + @vpn_gateway = args[:vpn_gateway] if args.key?(:vpn_gateway) + @vpn_tunnel = args[:vpn_tunnel] if args.key?(:vpn_tunnel) + end + end + + # Request message for `TestIamPermissions` method. + class TestIamPermissionsRequest + include Google::Apis::Core::Hashable + + # The set of permissions to check for the `resource`. Permissions with + # wildcards (such as '*' or 'storage.*') are not allowed. For more + # information see + # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # Response message for `TestIamPermissions` method. + class TestIamPermissionsResponse + include Google::Apis::Core::Hashable + + # A subset of `TestPermissionsRequest.permissions` that the caller is + # allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # Trace represents one simulated packet forwarding path. + #
    + #
  • Each trace contains multiple ordered steps.
  • + #
  • Each step is in a particular state and has an associated + # configuration.
  • State is categorized as a final or non-final + # state.
  • Each final state has a reason associated with it.
  • + #
  • Each trace must end with a final state (the last step).
  • + #
+ #

+      # |---------------------Trace----------------------|
+      # Step1(State) Step2(State) ---  StepN(State(final))
+      # 
+ class Trace + include Google::Apis::Core::Hashable + + # For display only. The specification of the endpoints for the test. + # EndpointInfo is derived from source and destination Endpoint and validated + # by the backend data plane model. + # Corresponds to the JSON property `endpointInfo` + # @return [Google::Apis::NetworkmanagementV1beta1::EndpointInfo] + attr_accessor :endpoint_info + + # A trace of a test contains multiple steps from the initial state to the + # final state (delivered, dropped, forwarded, or aborted). + # The steps are ordered by the processing sequence within the simulated + # network state machine. It is critical to preserve the order of the steps + # and avoid reordering or sorting them. + # Corresponds to the JSON property `steps` + # @return [Array] + attr_accessor :steps + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @endpoint_info = args[:endpoint_info] if args.key?(:endpoint_info) + @steps = args[:steps] if args.key?(:steps) + end + end + + # For display only. Metadata associated with a Compute Engine VPN gateway. + class VpnGatewayInfo + include Google::Apis::Core::Hashable + + # Name of a VPN gateway. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # IP address of the VPN gateway. + # Corresponds to the JSON property `ipAddress` + # @return [String] + attr_accessor :ip_address + + # URI of a Compute Engine network where the VPN gateway is configured. + # Corresponds to the JSON property `networkUri` + # @return [String] + attr_accessor :network_uri + + # Name of a GCP region where this VPN gateway is configured. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # URI of a VPN gateway. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + # A VPN tunnel that is associated with this VPN gateway. + # There may be multiple VPN tunnels configured on a VPN gateway, and only + # the one relevant to the test is displayed. + # Corresponds to the JSON property `vpnTunnelUri` + # @return [String] + attr_accessor :vpn_tunnel_uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @ip_address = args[:ip_address] if args.key?(:ip_address) + @network_uri = args[:network_uri] if args.key?(:network_uri) + @region = args[:region] if args.key?(:region) + @uri = args[:uri] if args.key?(:uri) + @vpn_tunnel_uri = args[:vpn_tunnel_uri] if args.key?(:vpn_tunnel_uri) + end + end + + # For display only. Metadata associated with a Compute Engine VPN tunnel. + class VpnTunnelInfo + include Google::Apis::Core::Hashable + + # Name of a VPN tunnel. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # URI of a Compute Engine network where the VPN tunnel is configured. + # Corresponds to the JSON property `networkUri` + # @return [String] + attr_accessor :network_uri + + # Name of a GCP region where this VPN tunnel is configured. + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + + # URI of a VPN gateway at remote end of the tunnel. + # Corresponds to the JSON property `remoteGateway` + # @return [String] + attr_accessor :remote_gateway + + # Remote VPN gateway's IP address. + # Corresponds to the JSON property `remoteGatewayIp` + # @return [String] + attr_accessor :remote_gateway_ip + + # Type of the routing policy. + # Corresponds to the JSON property `routingType` + # @return [String] + attr_accessor :routing_type + + # URI of the VPN gateway at local end of the tunnel. + # Corresponds to the JSON property `sourceGateway` + # @return [String] + attr_accessor :source_gateway + + # Local VPN gateway's IP address. + # Corresponds to the JSON property `sourceGatewayIp` + # @return [String] + attr_accessor :source_gateway_ip + + # URI of a VPN tunnel. + # Corresponds to the JSON property `uri` + # @return [String] + attr_accessor :uri + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @network_uri = args[:network_uri] if args.key?(:network_uri) + @region = args[:region] if args.key?(:region) + @remote_gateway = args[:remote_gateway] if args.key?(:remote_gateway) + @remote_gateway_ip = args[:remote_gateway_ip] if args.key?(:remote_gateway_ip) + @routing_type = args[:routing_type] if args.key?(:routing_type) + @source_gateway = args[:source_gateway] if args.key?(:source_gateway) + @source_gateway_ip = args[:source_gateway_ip] if args.key?(:source_gateway_ip) + @uri = args[:uri] if args.key?(:uri) + end + end + end + end +end diff --git a/generated/google/apis/networkmanagement_v1beta1/representations.rb b/generated/google/apis/networkmanagement_v1beta1/representations.rb new file mode 100644 index 000000000..e4f01e9f1 --- /dev/null +++ b/generated/google/apis/networkmanagement_v1beta1/representations.rb @@ -0,0 +1,661 @@ +# Copyright 2015 Google Inc. +# +# 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. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module NetworkmanagementV1beta1 + + class AbortInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditLogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Binding + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CancelOperationRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ConnectivityTest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DeliverInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DropInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Endpoint + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class EndpointInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Expr + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FirewallInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ForwardInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ForwardingRuleInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstanceInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListConnectivityTestsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListLocationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListOperationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LoadBalancerBackend + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LoadBalancerInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Location + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NetworkInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Policy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReachabilityDetails + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RerunConnectivityTestRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RouteInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SetIamPolicyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Step + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestIamPermissionsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestIamPermissionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Trace + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class VpnGatewayInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class VpnTunnelInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AbortInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cause, as: 'cause' + property :resource_uri, as: 'resourceUri' + end + end + + class AuditConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::NetworkmanagementV1beta1::AuditLogConfig, decorator: Google::Apis::NetworkmanagementV1beta1::AuditLogConfig::Representation + + property :service, as: 'service' + end + end + + class AuditLogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :exempted_members, as: 'exemptedMembers' + property :log_type, as: 'logType' + end + end + + class Binding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :condition, as: 'condition', class: Google::Apis::NetworkmanagementV1beta1::Expr, decorator: Google::Apis::NetworkmanagementV1beta1::Expr::Representation + + collection :members, as: 'members' + property :role, as: 'role' + end + end + + class CancelOperationRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class ConnectivityTest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :description, as: 'description' + property :destination, as: 'destination', class: Google::Apis::NetworkmanagementV1beta1::Endpoint, decorator: Google::Apis::NetworkmanagementV1beta1::Endpoint::Representation + + property :display_name, as: 'displayName' + hash :labels, as: 'labels' + property :name, as: 'name' + property :protocol, as: 'protocol' + property :reachability_details, as: 'reachabilityDetails', class: Google::Apis::NetworkmanagementV1beta1::ReachabilityDetails, decorator: Google::Apis::NetworkmanagementV1beta1::ReachabilityDetails::Representation + + collection :related_projects, as: 'relatedProjects' + property :source, as: 'source', class: Google::Apis::NetworkmanagementV1beta1::Endpoint, decorator: Google::Apis::NetworkmanagementV1beta1::Endpoint::Representation + + property :update_time, as: 'updateTime' + end + end + + class DeliverInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :resource_uri, as: 'resourceUri' + property :target, as: 'target' + end + end + + class DropInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cause, as: 'cause' + property :resource_uri, as: 'resourceUri' + end + end + + class Empty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class Endpoint + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :instance, as: 'instance' + property :ip_address, as: 'ipAddress' + property :network, as: 'network' + property :network_type, as: 'networkType' + property :port, as: 'port' + property :project_id, as: 'projectId' + end + end + + class EndpointInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :destination_ip, as: 'destinationIp' + property :destination_network_uri, as: 'destinationNetworkUri' + property :destination_port, as: 'destinationPort' + property :protocol, as: 'protocol' + property :source_ip, as: 'sourceIp' + property :source_network_uri, as: 'sourceNetworkUri' + property :source_port, as: 'sourcePort' + end + end + + class Expr + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :description, as: 'description' + property :expression, as: 'expression' + property :location, as: 'location' + property :title, as: 'title' + end + end + + class FirewallInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :action, as: 'action' + property :direction, as: 'direction' + property :display_name, as: 'displayName' + property :network_uri, as: 'networkUri' + property :priority, as: 'priority' + collection :target_service_accounts, as: 'targetServiceAccounts' + collection :target_tags, as: 'targetTags' + property :uri, as: 'uri' + end + end + + class ForwardInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :resource_uri, as: 'resourceUri' + property :target, as: 'target' + end + end + + class ForwardingRuleInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + property :matched_port_range, as: 'matchedPortRange' + property :matched_protocol, as: 'matchedProtocol' + property :network_uri, as: 'networkUri' + property :target, as: 'target' + property :uri, as: 'uri' + property :vip, as: 'vip' + end + end + + class InstanceInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + property :external_ip, as: 'externalIp' + property :interface, as: 'interface' + property :internal_ip, as: 'internalIp' + collection :network_tags, as: 'networkTags' + property :network_uri, as: 'networkUri' + property :service_account, as: 'serviceAccount' + property :uri, as: 'uri' + end + end + + class ListConnectivityTestsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :resources, as: 'resources', class: Google::Apis::NetworkmanagementV1beta1::ConnectivityTest, decorator: Google::Apis::NetworkmanagementV1beta1::ConnectivityTest::Representation + + collection :unreachable, as: 'unreachable' + end + end + + class ListLocationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :locations, as: 'locations', class: Google::Apis::NetworkmanagementV1beta1::Location, decorator: Google::Apis::NetworkmanagementV1beta1::Location::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListOperationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::NetworkmanagementV1beta1::Operation, decorator: Google::Apis::NetworkmanagementV1beta1::Operation::Representation + + end + end + + class LoadBalancerBackend + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + collection :health_check_allowing_firewall_rules, as: 'healthCheckAllowingFirewallRules' + collection :health_check_blocking_firewall_rules, as: 'healthCheckBlockingFirewallRules' + property :health_check_firewall_state, as: 'healthCheckFirewallState' + property :uri, as: 'uri' + end + end + + class LoadBalancerInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :backend_type, as: 'backendType' + property :backend_uri, as: 'backendUri' + collection :backends, as: 'backends', class: Google::Apis::NetworkmanagementV1beta1::LoadBalancerBackend, decorator: Google::Apis::NetworkmanagementV1beta1::LoadBalancerBackend::Representation + + property :health_check_uri, as: 'healthCheckUri' + property :load_balancer_type, as: 'loadBalancerType' + end + end + + class Location + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + hash :labels, as: 'labels' + property :location_id, as: 'locationId' + hash :metadata, as: 'metadata' + property :name, as: 'name' + end + end + + class NetworkInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + property :matched_ip_range, as: 'matchedIpRange' + property :uri, as: 'uri' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::NetworkmanagementV1beta1::Status, decorator: Google::Apis::NetworkmanagementV1beta1::Status::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class OperationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :api_version, as: 'apiVersion' + property :cancel_requested, as: 'cancelRequested' + property :create_time, as: 'createTime' + property :end_time, as: 'endTime' + property :status_detail, as: 'statusDetail' + property :target, as: 'target' + property :verb, as: 'verb' + end + end + + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_configs, as: 'auditConfigs', class: Google::Apis::NetworkmanagementV1beta1::AuditConfig, decorator: Google::Apis::NetworkmanagementV1beta1::AuditConfig::Representation + + collection :bindings, as: 'bindings', class: Google::Apis::NetworkmanagementV1beta1::Binding, decorator: Google::Apis::NetworkmanagementV1beta1::Binding::Representation + + property :etag, :base64 => true, as: 'etag' + property :version, as: 'version' + end + end + + class ReachabilityDetails + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error, as: 'error', class: Google::Apis::NetworkmanagementV1beta1::Status, decorator: Google::Apis::NetworkmanagementV1beta1::Status::Representation + + property :result, as: 'result' + collection :traces, as: 'traces', class: Google::Apis::NetworkmanagementV1beta1::Trace, decorator: Google::Apis::NetworkmanagementV1beta1::Trace::Representation + + property :verify_time, as: 'verifyTime' + end + end + + class RerunConnectivityTestRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class RouteInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dest_ip_range, as: 'destIpRange' + property :display_name, as: 'displayName' + collection :instance_tags, as: 'instanceTags' + property :network_uri, as: 'networkUri' + property :next_hop, as: 'nextHop' + property :next_hop_type, as: 'nextHopType' + property :priority, as: 'priority' + property :route_type, as: 'routeType' + property :uri, as: 'uri' + end + end + + class SetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :policy, as: 'policy', class: Google::Apis::NetworkmanagementV1beta1::Policy, decorator: Google::Apis::NetworkmanagementV1beta1::Policy::Representation + + property :update_mask, as: 'updateMask' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class Step + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :abort, as: 'abort', class: Google::Apis::NetworkmanagementV1beta1::AbortInfo, decorator: Google::Apis::NetworkmanagementV1beta1::AbortInfo::Representation + + property :causes_drop, as: 'causesDrop' + property :deliver, as: 'deliver', class: Google::Apis::NetworkmanagementV1beta1::DeliverInfo, decorator: Google::Apis::NetworkmanagementV1beta1::DeliverInfo::Representation + + property :description, as: 'description' + property :drop, as: 'drop', class: Google::Apis::NetworkmanagementV1beta1::DropInfo, decorator: Google::Apis::NetworkmanagementV1beta1::DropInfo::Representation + + property :endpoint, as: 'endpoint', class: Google::Apis::NetworkmanagementV1beta1::EndpointInfo, decorator: Google::Apis::NetworkmanagementV1beta1::EndpointInfo::Representation + + property :firewall, as: 'firewall', class: Google::Apis::NetworkmanagementV1beta1::FirewallInfo, decorator: Google::Apis::NetworkmanagementV1beta1::FirewallInfo::Representation + + property :forward, as: 'forward', class: Google::Apis::NetworkmanagementV1beta1::ForwardInfo, decorator: Google::Apis::NetworkmanagementV1beta1::ForwardInfo::Representation + + property :forwarding_rule, as: 'forwardingRule', class: Google::Apis::NetworkmanagementV1beta1::ForwardingRuleInfo, decorator: Google::Apis::NetworkmanagementV1beta1::ForwardingRuleInfo::Representation + + property :instance, as: 'instance', class: Google::Apis::NetworkmanagementV1beta1::InstanceInfo, decorator: Google::Apis::NetworkmanagementV1beta1::InstanceInfo::Representation + + property :load_balancer, as: 'loadBalancer', class: Google::Apis::NetworkmanagementV1beta1::LoadBalancerInfo, decorator: Google::Apis::NetworkmanagementV1beta1::LoadBalancerInfo::Representation + + property :network, as: 'network', class: Google::Apis::NetworkmanagementV1beta1::NetworkInfo, decorator: Google::Apis::NetworkmanagementV1beta1::NetworkInfo::Representation + + property :project_id, as: 'projectId' + property :route, as: 'route', class: Google::Apis::NetworkmanagementV1beta1::RouteInfo, decorator: Google::Apis::NetworkmanagementV1beta1::RouteInfo::Representation + + property :state, as: 'state' + property :vpn_gateway, as: 'vpnGateway', class: Google::Apis::NetworkmanagementV1beta1::VpnGatewayInfo, decorator: Google::Apis::NetworkmanagementV1beta1::VpnGatewayInfo::Representation + + property :vpn_tunnel, as: 'vpnTunnel', class: Google::Apis::NetworkmanagementV1beta1::VpnTunnelInfo, decorator: Google::Apis::NetworkmanagementV1beta1::VpnTunnelInfo::Representation + + end + end + + class TestIamPermissionsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class TestIamPermissionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class Trace + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :endpoint_info, as: 'endpointInfo', class: Google::Apis::NetworkmanagementV1beta1::EndpointInfo, decorator: Google::Apis::NetworkmanagementV1beta1::EndpointInfo::Representation + + collection :steps, as: 'steps', class: Google::Apis::NetworkmanagementV1beta1::Step, decorator: Google::Apis::NetworkmanagementV1beta1::Step::Representation + + end + end + + class VpnGatewayInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + property :ip_address, as: 'ipAddress' + property :network_uri, as: 'networkUri' + property :region, as: 'region' + property :uri, as: 'uri' + property :vpn_tunnel_uri, as: 'vpnTunnelUri' + end + end + + class VpnTunnelInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + property :network_uri, as: 'networkUri' + property :region, as: 'region' + property :remote_gateway, as: 'remoteGateway' + property :remote_gateway_ip, as: 'remoteGatewayIp' + property :routing_type, as: 'routingType' + property :source_gateway, as: 'sourceGateway' + property :source_gateway_ip, as: 'sourceGatewayIp' + property :uri, as: 'uri' + end + end + end + end +end diff --git a/generated/google/apis/networkmanagement_v1beta1/service.rb b/generated/google/apis/networkmanagement_v1beta1/service.rb new file mode 100644 index 000000000..af604e1f6 --- /dev/null +++ b/generated/google/apis/networkmanagement_v1beta1/service.rb @@ -0,0 +1,664 @@ +# Copyright 2015 Google Inc. +# +# 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. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module NetworkmanagementV1beta1 + # Network Management API + # + # The Network Management API provides a collection of network performance + # monitoring and diagnostic capabilities. + # + # @example + # require 'google/apis/networkmanagement_v1beta1' + # + # Networkmanagement = Google::Apis::NetworkmanagementV1beta1 # Alias the module + # service = Networkmanagement::NetworkManagementService.new + # + # @see https://cloud.google.com/ + class NetworkManagementService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://networkmanagement.googleapis.com/', '') + @batch_path = 'batch' + end + + # Gets information about a location. + # @param [String] name + # Resource name for the location. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::Location] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::Location] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_location(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::NetworkmanagementV1beta1::Location::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::Location + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists information about the supported locations for this service. + # @param [String] name + # The resource that owns the locations collection, if applicable. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::ListLocationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::ListLocationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_locations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}/locations', options) + command.response_representation = Google::Apis::NetworkmanagementV1beta1::ListLocationsResponse::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::ListLocationsResponse + command.params['name'] = name unless name.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new Connectivity Test. + # After you create a test, the reachability analysis is performed as part + # of the long running operation, which completes when the analysis completes. + # If the endpoint specifications in `ConnectivityTest` are invalid + # (for example, containing non-existent resources in the network, or you + # don't have read permissions to the network configurations of listed + # projects), then the reachability result returns a value of `UNKNOWN`. + # If the endpoint specifications in `ConnectivityTest` are + # incomplete, the reachability result returns a value of + # AMBIGUOUS. For more information, + # see the Connectivity Test documentation. + # @param [String] parent + # Required. The parent resource of the Connectivity Test to create: + # `projects/`project_id`/locations/global` + # @param [Google::Apis::NetworkmanagementV1beta1::ConnectivityTest] connectivity_test_object + # @param [String] test_id + # Required. The logical name of the Connectivity Test in your project + # with the following restrictions: + # * Must contain only lowercase letters, numbers, and hyphens. + # * Must start with a letter. + # * Must be between 1-40 characters. + # * Must end with a number or a letter. + # * Must be unique within the customer project + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_location_global_connectivity_test(parent, connectivity_test_object = nil, test_id: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+parent}/connectivityTests', options) + command.request_representation = Google::Apis::NetworkmanagementV1beta1::ConnectivityTest::Representation + command.request_object = connectivity_test_object + command.response_representation = Google::Apis::NetworkmanagementV1beta1::Operation::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::Operation + command.params['parent'] = parent unless parent.nil? + command.query['testId'] = test_id unless test_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a specific `ConnectivityTest`. + # @param [String] name + # Required. Connectivity Test resource name using the form: + # `projects/`project_id`/connectivityTests/`test_id`` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_location_global_connectivity_test(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::NetworkmanagementV1beta1::Operation::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the details of a specific Connectivity Test. + # @param [String] name + # Required. `ConnectivityTest` resource name using the form: + # `projects/`project_id`/locations/global/connectivityTests/`test_id`` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::ConnectivityTest] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::ConnectivityTest] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_location_global_connectivity_test(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::NetworkmanagementV1beta1::ConnectivityTest::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::ConnectivityTest + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a resource. + # Returns an empty policy if the resource exists and does not have a policy + # set. + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Fixnum] options_requested_policy_version + # Optional. The policy format version to be returned. + # Valid values are 0, 1, and 3. Requests specifying an invalid value will be + # rejected. + # Requests for policies with any conditional bindings must specify version 3. + # Policies without any conditional bindings may specify any valid value or + # leave the field unset. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_location_global_connectivity_test_iam_policy(resource, options_requested_policy_version: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+resource}:getIamPolicy', options) + command.response_representation = Google::Apis::NetworkmanagementV1beta1::Policy::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::Policy + command.params['resource'] = resource unless resource.nil? + command.query['options.requestedPolicyVersion'] = options_requested_policy_version unless options_requested_policy_version.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists all Connectivity Tests owned by a project. + # @param [String] parent + # Required. The parent resource of the Connectivity Tests: + # `projects/`project_id`/locations/global` + # @param [String] filter + # Lists the `ConnectivityTests` that match the filter expression. A filter + # expression filters the resources listed in the response. The expression + # must be of the form ` ` where operators: `<`, `>`, + # `<=`, + # `>=`, + # `!=`, `=`, `:` are supported (colon `:` represents a HAS operator which is + # roughly synonymous with equality). can refer to a proto or JSON + # field, or a synthetic field. Field names can be camelCase or snake_case. + # Examples: + # - Filter by name: + # name = "projects/proj-1/connectivityTests/test-1 + # - Filter by labels: + # - Resources that have a key called `foo` + # labels.foo:* + # - Resources that have a key called `foo` whose value is `bar` + # labels.foo = bar + # @param [String] order_by + # Field to use to sort the list. + # @param [Fixnum] page_size + # Number of `ConnectivityTests` to return. + # @param [String] page_token + # Page token from an earlier query, as returned in `next_page_token`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::ListConnectivityTestsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::ListConnectivityTestsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_location_global_connectivity_tests(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+parent}/connectivityTests', options) + command.response_representation = Google::Apis::NetworkmanagementV1beta1::ListConnectivityTestsResponse::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::ListConnectivityTestsResponse + command.params['parent'] = parent unless parent.nil? + command.query['filter'] = filter unless filter.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the configuration of an existing `ConnectivityTest`. + # After you update a test, the reachability analysis is performed as part + # of the long running operation, which completes when the analysis completes. + # The Reachability state in the test resource is updated with the new result. + # If the endpoint specifications in `ConnectivityTest` are invalid + # (for example, they contain non-existent resources in the network, or the + # user does not have read permissions to the network configurations of + # listed projects), then the reachability result returns a value of + # UNKNOWN. + # If the endpoint specifications in `ConnectivityTest` are incomplete, the + # reachability result returns a value of `AMBIGUOUS`. See the documentation + # in `ConnectivityTest` for for more details. + # @param [String] name + # Required. Unique name of the resource using the form: + # `projects/`project_id`/tests/`test_id`` + # @param [Google::Apis::NetworkmanagementV1beta1::ConnectivityTest] connectivity_test_object + # @param [String] update_mask + # Required. Mask of fields to update. At least one path must be supplied in + # this field. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_project_location_global_connectivity_test(name, connectivity_test_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v1beta1/{+name}', options) + command.request_representation = Google::Apis::NetworkmanagementV1beta1::ConnectivityTest::Representation + command.request_object = connectivity_test_object + command.response_representation = Google::Apis::NetworkmanagementV1beta1::Operation::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Rerun an existing `ConnectivityTest`. + # After the user triggers the rerun, the reachability analysis is performed + # as part of the long running operation, which completes when the analysis + # completes. + # Even though the test configuration remains the same, the reachability + # result may change due to underlying network configuration changes. + # If the endpoint specifications in `ConnectivityTest` become invalid (for + # example, specified resources are deleted in the network, or you lost + # read permissions to the network configurations of listed projects), then + # the reachability result returns a value of `UNKNOWN`. + # @param [String] name + # Required. Connectivity Test resource name using the form: + # `projects/`project_id`/connectivityTests/`test_id`` + # @param [Google::Apis::NetworkmanagementV1beta1::RerunConnectivityTestRequest] rerun_connectivity_test_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def rerun_connectivity_test(name, rerun_connectivity_test_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:rerun', options) + command.request_representation = Google::Apis::NetworkmanagementV1beta1::RerunConnectivityTestRequest::Representation + command.request_object = rerun_connectivity_test_request_object + command.response_representation = Google::Apis::NetworkmanagementV1beta1::Operation::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # Can return Public Errors: NOT_FOUND, INVALID_ARGUMENT and PERMISSION_DENIED + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::NetworkmanagementV1beta1::SetIamPolicyRequest] set_iam_policy_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::Policy] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def set_connectivity_test_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::NetworkmanagementV1beta1::SetIamPolicyRequest::Representation + command.request_object = set_iam_policy_request_object + command.response_representation = Google::Apis::NetworkmanagementV1beta1::Policy::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified resource. + # If the resource does not exist, this will return an empty set of + # permissions, not a NOT_FOUND error. + # Note: This operation is designed to be used for building permission-aware + # UIs and command-line tools, not for authorization checking. This operation + # may "fail open" without warning. + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::NetworkmanagementV1beta1::TestIamPermissionsRequest] test_iam_permissions_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::TestIamPermissionsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def test_connectivity_test_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::NetworkmanagementV1beta1::TestIamPermissionsRequest::Representation + command.request_object = test_iam_permissions_request_object + command.response_representation = Google::Apis::NetworkmanagementV1beta1::TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::TestIamPermissionsResponse + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Starts asynchronous cancellation on a long-running operation. The server + # makes a best effort to cancel the operation, but success is not + # guaranteed. If the server doesn't support this method, it returns + # `google.rpc.Code.UNIMPLEMENTED`. Clients can use + # Operations.GetOperation or + # other methods to check whether the cancellation succeeded or whether the + # operation completed despite cancellation. On successful cancellation, + # the operation is not deleted; instead, it becomes an operation with + # an Operation.error value with a google.rpc.Status.code of 1, + # corresponding to `Code.CANCELLED`. + # @param [String] name + # The name of the operation resource to be cancelled. + # @param [Google::Apis::NetworkmanagementV1beta1::CancelOperationRequest] cancel_operation_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_operation(name, cancel_operation_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1beta1/{+name}:cancel', options) + command.request_representation = Google::Apis::NetworkmanagementV1beta1::CancelOperationRequest::Representation + command.request_object = cancel_operation_request_object + command.response_representation = Google::Apis::NetworkmanagementV1beta1::Empty::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::Empty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a long-running operation. This method indicates that the client is + # no longer interested in the operation result. It does not cancel the + # operation. If the server doesn't support this method, it returns + # `google.rpc.Code.UNIMPLEMENTED`. + # @param [String] name + # The name of the operation resource to be deleted. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::Empty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_location_global_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::NetworkmanagementV1beta1::Empty::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::Empty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the latest state of a long-running operation. Clients can use this + # method to poll the operation result at intervals as recommended by the API + # service. + # @param [String] name + # The name of the operation resource. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_location_global_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}', options) + command.response_representation = Google::Apis::NetworkmanagementV1beta1::Operation::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists operations that match the specified filter in the request. If the + # server doesn't support this method, it returns `UNIMPLEMENTED`. + # NOTE: the `name` binding allows API services to override the binding + # to use different resource name schemes, such as `users/*/operations`. To + # override the binding, API services can add a binding such as + # `"/v1/`name=users/*`/operations"` to their service configuration. + # For backwards compatibility, the default name includes the operations + # collection id, however overriding users must ensure the name binding + # is the parent resource, without the operations collection id. + # @param [String] name + # The name of the operation's parent resource. + # @param [String] filter + # The standard list filter. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::NetworkmanagementV1beta1::ListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::NetworkmanagementV1beta1::ListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_location_global_operations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/{+name}/operations', options) + command.response_representation = Google::Apis::NetworkmanagementV1beta1::ListOperationsResponse::Representation + command.response_class = Google::Apis::NetworkmanagementV1beta1::ListOperationsResponse + command.params['name'] = name unless name.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/osconfig_v1beta.rb b/generated/google/apis/osconfig_v1beta.rb index fa679103d..b6e99204a 100644 --- a/generated/google/apis/osconfig_v1beta.rb +++ b/generated/google/apis/osconfig_v1beta.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/ module OsconfigV1beta VERSION = 'V1beta' - REVISION = '20200207' + REVISION = '20200226' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/remotebuildexecution_v1.rb b/generated/google/apis/remotebuildexecution_v1.rb index 9fd225f28..e13800d38 100644 --- a/generated/google/apis/remotebuildexecution_v1.rb +++ b/generated/google/apis/remotebuildexecution_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/remote-build-execution/docs/ module RemotebuildexecutionV1 VERSION = 'V1' - REVISION = '20200225' + REVISION = '20200303' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/remotebuildexecution_v1alpha.rb b/generated/google/apis/remotebuildexecution_v1alpha.rb index bf9706d38..e1b7f6926 100644 --- a/generated/google/apis/remotebuildexecution_v1alpha.rb +++ b/generated/google/apis/remotebuildexecution_v1alpha.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/remote-build-execution/docs/ module RemotebuildexecutionV1alpha VERSION = 'V1alpha' - REVISION = '20200225' + REVISION = '20200303' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/remotebuildexecution_v2.rb b/generated/google/apis/remotebuildexecution_v2.rb index 1c1a837f9..45a7b3d14 100644 --- a/generated/google/apis/remotebuildexecution_v2.rb +++ b/generated/google/apis/remotebuildexecution_v2.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/remote-build-execution/docs/ module RemotebuildexecutionV2 VERSION = 'V2' - REVISION = '20200225' + REVISION = '20200303' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/testing_v1.rb b/generated/google/apis/testing_v1.rb index a2cb8e49b..8f51d4f1f 100644 --- a/generated/google/apis/testing_v1.rb +++ b/generated/google/apis/testing_v1.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/cloud-test-lab/ module TestingV1 VERSION = 'V1' - REVISION = '20200211' + REVISION = '20200226' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/testing_v1/classes.rb b/generated/google/apis/testing_v1/classes.rb index cfed9ea4a..1669e5475 100644 --- a/generated/google/apis/testing_v1/classes.rb +++ b/generated/google/apis/testing_v1/classes.rb @@ -368,6 +368,11 @@ module Google # @return [Array] attr_accessor :tags + # URL of a thumbnail image of the device. + # Corresponds to the JSON property `thumbnailUrl` + # @return [String] + attr_accessor :thumbnail_url + def initialize(**args) update!(**args) end @@ -388,6 +393,7 @@ module Google @supported_abis = args[:supported_abis] if args.key?(:supported_abis) @supported_version_ids = args[:supported_version_ids] if args.key?(:supported_version_ids) @tags = args[:tags] if args.key?(:tags) + @thumbnail_url = args[:thumbnail_url] if args.key?(:thumbnail_url) end end @@ -1203,7 +1209,7 @@ module Google end # A description of an iOS device tests may be run on. - # Next tag: 11 + # Next tag: 12 class IosModel include Google::Apis::Core::Hashable diff --git a/generated/google/apis/testing_v1/representations.rb b/generated/google/apis/testing_v1/representations.rb index 0812cd9dd..ba8bce01e 100644 --- a/generated/google/apis/testing_v1/representations.rb +++ b/generated/google/apis/testing_v1/representations.rb @@ -508,6 +508,7 @@ module Google collection :supported_abis, as: 'supportedAbis' collection :supported_version_ids, as: 'supportedVersionIds' collection :tags, as: 'tags' + property :thumbnail_url, as: 'thumbnailUrl' end end diff --git a/generated/google/apis/toolresults_v1/classes.rb b/generated/google/apis/toolresults_v1/classes.rb deleted file mode 100644 index 1c4b45e9f..000000000 --- a/generated/google/apis/toolresults_v1/classes.rb +++ /dev/null @@ -1,696 +0,0 @@ -# Copyright 2015 Google Inc. -# -# 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. - -require 'date' -require 'google/apis/core/base_service' -require 'google/apis/core/json_representation' -require 'google/apis/core/hashable' -require 'google/apis/errors' - -module Google - module Apis - module ToolresultsV1 - - # Additional details for an ANR crash. - class Anr - include Google::Apis::Core::Hashable - - # A stacktrace. - # Corresponds to the JSON property `stackTrace` - # @return [Google::Apis::ToolresultsV1::StackTrace] - attr_accessor :stack_trace - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @stack_trace = args[:stack_trace] if args.key?(:stack_trace) - end - end - - # A suggestion to use deep links for a Robo run. - class AvailableDeepLinks - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # A warning that Robo encountered a screen that was mostly blank; this may - # indicate a problem with the app. - class BlankScreen - include Google::Apis::Core::Hashable - - # The screen id of the element - # Corresponds to the JSON property `screenId` - # @return [String] - attr_accessor :screen_id - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @screen_id = args[:screen_id] if args.key?(:screen_id) - end - end - - # Crash dialog was detected during the test execution - class CrashDialogError - include Google::Apis::Core::Hashable - - # The name of the package that caused the dialog. - # Corresponds to the JSON property `crashPackage` - # @return [String] - attr_accessor :crash_package - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @crash_package = args[:crash_package] if args.key?(:crash_package) - end - end - - # Additional details about encountered login screens. - class EncounteredLoginScreen - include Google::Apis::Core::Hashable - - # Number of encountered distinct login screens. - # Corresponds to the JSON property `distinctScreens` - # @return [Fixnum] - attr_accessor :distinct_screens - - # Subset of login screens. - # Corresponds to the JSON property `screenIds` - # @return [Array] - attr_accessor :screen_ids - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @distinct_screens = args[:distinct_screens] if args.key?(:distinct_screens) - @screen_ids = args[:screen_ids] if args.key?(:screen_ids) - end - end - - # Additional details about encountered screens with elements that are not - # Android UI widgets. - class EncounteredNonAndroidUiWidgetScreen - include Google::Apis::Core::Hashable - - # Number of encountered distinct screens with non Android UI widgets. - # Corresponds to the JSON property `distinctScreens` - # @return [Fixnum] - attr_accessor :distinct_screens - - # Subset of screens which contain non Android UI widgets. - # Corresponds to the JSON property `screenIds` - # @return [Array] - attr_accessor :screen_ids - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @distinct_screens = args[:distinct_screens] if args.key?(:distinct_screens) - @screen_ids = args[:screen_ids] if args.key?(:screen_ids) - end - end - - # Failed to install the APK. - class FailedToInstall - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # Additional details for a fatal exception. - class FatalException - include Google::Apis::Core::Hashable - - # A stacktrace. - # Corresponds to the JSON property `stackTrace` - # @return [Google::Apis::ToolresultsV1::StackTrace] - attr_accessor :stack_trace - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @stack_trace = args[:stack_trace] if args.key?(:stack_trace) - end - end - - # Additional details of in-app purchases encountered during the crawl. - class InAppPurchasesFound - include Google::Apis::Core::Hashable - - # The total number of in-app purchases flows explored: how many times the - # robo tries to buy a SKU. - # Corresponds to the JSON property `inAppPurchasesFlowsExplored` - # @return [Fixnum] - attr_accessor :in_app_purchases_flows_explored - - # The total number of in-app purchases flows started. - # Corresponds to the JSON property `inAppPurchasesFlowsStarted` - # @return [Fixnum] - attr_accessor :in_app_purchases_flows_started - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @in_app_purchases_flows_explored = args[:in_app_purchases_flows_explored] if args.key?(:in_app_purchases_flows_explored) - @in_app_purchases_flows_started = args[:in_app_purchases_flows_started] if args.key?(:in_app_purchases_flows_started) - end - end - - # A warning that Robo did not crawl potentially important parts of the app. - class InsufficientCoverage - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # Additional details for an iOS app crash. - class IosAppCrashed - include Google::Apis::Core::Hashable - - # A stacktrace. - # Corresponds to the JSON property `stackTrace` - # @return [Google::Apis::ToolresultsV1::StackTrace] - attr_accessor :stack_trace - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @stack_trace = args[:stack_trace] if args.key?(:stack_trace) - end - end - - # Failed to find the launcher activity of an app. - class LauncherActivityNotFound - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # Additional details for a native crash. - class NativeCrash - include Google::Apis::Core::Hashable - - # A stacktrace. - # Corresponds to the JSON property `stackTrace` - # @return [Google::Apis::ToolresultsV1::StackTrace] - attr_accessor :stack_trace - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @stack_trace = args[:stack_trace] if args.key?(:stack_trace) - end - end - - # A non-sdk API and examples of it being called along with other metadata - # See - # https://developer.android.com/distribute/best-practices/develop/restrictions- - # non-sdk-interfaces - class NonSdkApi - include Google::Apis::Core::Hashable - - # The signature of the Non-SDK API - # Corresponds to the JSON property `apiSignature` - # @return [String] - attr_accessor :api_signature - - # Example stack traces of this API being called. - # Corresponds to the JSON property `exampleStackTraces` - # @return [Array] - attr_accessor :example_stack_traces - - # Optional debugging insights for non-SDK API violations. - # Corresponds to the JSON property `insights` - # @return [Array] - attr_accessor :insights - - # The total number of times this API was observed to have been called. - # Corresponds to the JSON property `invocationCount` - # @return [Fixnum] - attr_accessor :invocation_count - - # Which list this API appears on - # Corresponds to the JSON property `list` - # @return [String] - attr_accessor :list - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @api_signature = args[:api_signature] if args.key?(:api_signature) - @example_stack_traces = args[:example_stack_traces] if args.key?(:example_stack_traces) - @insights = args[:insights] if args.key?(:insights) - @invocation_count = args[:invocation_count] if args.key?(:invocation_count) - @list = args[:list] if args.key?(:list) - end - end - - # Non-SDK API insights (to address debugging solutions). - class NonSdkApiInsight - include Google::Apis::Core::Hashable - - # Optional sample stack traces, for which this insight applies (there - # should be at least one). - # Corresponds to the JSON property `exampleTraceMessages` - # @return [Array] - attr_accessor :example_trace_messages - - # A unique ID, to be used for determining the effectiveness of this - # particular insight in the context of a matcher. (required) - # Corresponds to the JSON property `matcherId` - # @return [String] - attr_accessor :matcher_id - - # This insight indicates that the hidden API usage originates from a - # Google-provided library. Users need not take any action. - # Corresponds to the JSON property `pendingGoogleUpdateInsight` - # @return [Google::Apis::ToolresultsV1::PendingGoogleUpdateInsight] - attr_accessor :pending_google_update_insight - - # This insight is a recommendation to upgrade a given library to the specified - # version, in order to avoid dependencies on non-SDK APIs. - # Corresponds to the JSON property `upgradeInsight` - # @return [Google::Apis::ToolresultsV1::UpgradeInsight] - attr_accessor :upgrade_insight - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @example_trace_messages = args[:example_trace_messages] if args.key?(:example_trace_messages) - @matcher_id = args[:matcher_id] if args.key?(:matcher_id) - @pending_google_update_insight = args[:pending_google_update_insight] if args.key?(:pending_google_update_insight) - @upgrade_insight = args[:upgrade_insight] if args.key?(:upgrade_insight) - end - end - - # Additional details for a non-sdk API usage violation. - class NonSdkApiUsageViolation - include Google::Apis::Core::Hashable - - # Signatures of a subset of those hidden API's. - # Corresponds to the JSON property `apiSignatures` - # @return [Array] - attr_accessor :api_signatures - - # Total number of unique hidden API's accessed. - # Corresponds to the JSON property `uniqueApis` - # @return [Fixnum] - attr_accessor :unique_apis - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @api_signatures = args[:api_signatures] if args.key?(:api_signatures) - @unique_apis = args[:unique_apis] if args.key?(:unique_apis) - end - end - - # Contains a summary and examples of non-sdk API usage violations. - class NonSdkApiUsageViolationReport - include Google::Apis::Core::Hashable - - # Examples of the detected API usages. - # Corresponds to the JSON property `exampleApis` - # @return [Array] - attr_accessor :example_apis - - # Minimum API level required for the application to run. - # Corresponds to the JSON property `minSdkVersion` - # @return [Fixnum] - attr_accessor :min_sdk_version - - # Specifies the API Level on which the application is designed to run. - # Corresponds to the JSON property `targetSdkVersion` - # @return [Fixnum] - attr_accessor :target_sdk_version - - # Total number of unique Non-SDK API's accessed. - # Corresponds to the JSON property `uniqueApis` - # @return [Fixnum] - attr_accessor :unique_apis - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @example_apis = args[:example_apis] if args.key?(:example_apis) - @min_sdk_version = args[:min_sdk_version] if args.key?(:min_sdk_version) - @target_sdk_version = args[:target_sdk_version] if args.key?(:target_sdk_version) - @unique_apis = args[:unique_apis] if args.key?(:unique_apis) - end - end - - # A warning that Robo encountered a screen that has overlapping clickable - # elements; this may indicate a potential UI issue. - class OverlappingUiElements - include Google::Apis::Core::Hashable - - # Resource names of the overlapping screen elements - # Corresponds to the JSON property `resourceName` - # @return [Array] - attr_accessor :resource_name - - # The screen id of the elements - # Corresponds to the JSON property `screenId` - # @return [String] - attr_accessor :screen_id - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @resource_name = args[:resource_name] if args.key?(:resource_name) - @screen_id = args[:screen_id] if args.key?(:screen_id) - end - end - - # This insight indicates that the hidden API usage originates from a - # Google-provided library. Users need not take any action. - class PendingGoogleUpdateInsight - include Google::Apis::Core::Hashable - - # The name of the Google-provided library with the non-SDK API dependency. - # Corresponds to the JSON property `nameOfGoogleLibrary` - # @return [String] - attr_accessor :name_of_google_library - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @name_of_google_library = args[:name_of_google_library] if args.key?(:name_of_google_library) - end - end - - # A notification that Robo signed in with Google. - class PerformedGoogleLogin - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # A notification that Robo performed some monkey actions. - class PerformedMonkeyActions - include Google::Apis::Core::Hashable - - # The total number of monkey actions performed during the crawl. - # Corresponds to the JSON property `totalActions` - # @return [Fixnum] - attr_accessor :total_actions - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @total_actions = args[:total_actions] if args.key?(:total_actions) - end - end - - # Execution stats for a user-provided Robo script. - class RoboScriptExecution - include Google::Apis::Core::Hashable - - # The number of Robo script actions executed successfully. - # Corresponds to the JSON property `successfulActions` - # @return [Fixnum] - attr_accessor :successful_actions - - # The total number of actions in the Robo script. - # Corresponds to the JSON property `totalActions` - # @return [Fixnum] - attr_accessor :total_actions - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @successful_actions = args[:successful_actions] if args.key?(:successful_actions) - @total_actions = args[:total_actions] if args.key?(:total_actions) - end - end - - # A stacktrace. - class StackTrace - include Google::Apis::Core::Hashable - - # The stack trace message. - # Required - # Corresponds to the JSON property `exception` - # @return [String] - attr_accessor :exception - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @exception = args[:exception] if args.key?(:exception) - end - end - - # User provided intent failed to resolve to an activity. - class StartActivityNotFound - include Google::Apis::Core::Hashable - - # - # Corresponds to the JSON property `action` - # @return [String] - attr_accessor :action - - # - # Corresponds to the JSON property `uri` - # @return [String] - attr_accessor :uri - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @action = args[:action] if args.key?(:action) - @uri = args[:uri] if args.key?(:uri) - end - end - - # A warning that the screen hierarchy is deeper than the recommended threshold. - class UiElementTooDeep - include Google::Apis::Core::Hashable - - # The depth of the screen element - # Corresponds to the JSON property `depth` - # @return [Fixnum] - attr_accessor :depth - - # The screen id of the element - # Corresponds to the JSON property `screenId` - # @return [String] - attr_accessor :screen_id - - # The screen state id of the element - # Corresponds to the JSON property `screenStateId` - # @return [String] - attr_accessor :screen_state_id - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @depth = args[:depth] if args.key?(:depth) - @screen_id = args[:screen_id] if args.key?(:screen_id) - @screen_state_id = args[:screen_state_id] if args.key?(:screen_state_id) - end - end - - # Default unspecified warning. - class UnspecifiedWarning - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # Additional details of an unused robodirective. - class UnusedRoboDirective - include Google::Apis::Core::Hashable - - # The name of the resource that was unused. - # Corresponds to the JSON property `resourceName` - # @return [String] - attr_accessor :resource_name - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @resource_name = args[:resource_name] if args.key?(:resource_name) - end - end - - # This insight is a recommendation to upgrade a given library to the specified - # version, in order to avoid dependencies on non-SDK APIs. - class UpgradeInsight - include Google::Apis::Core::Hashable - - # The name of the package to be upgraded. - # Corresponds to the JSON property `packageName` - # @return [String] - attr_accessor :package_name - - # The suggested version to upgrade to. - # Optional: In case we are not sure which version solves this problem - # Corresponds to the JSON property `upgradeToVersion` - # @return [String] - attr_accessor :upgrade_to_version - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @package_name = args[:package_name] if args.key?(:package_name) - @upgrade_to_version = args[:upgrade_to_version] if args.key?(:upgrade_to_version) - end - end - - # Additional details of a used Robo directive. - class UsedRoboDirective - include Google::Apis::Core::Hashable - - # The name of the resource that was used. - # Corresponds to the JSON property `resourceName` - # @return [String] - attr_accessor :resource_name - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @resource_name = args[:resource_name] if args.key?(:resource_name) - end - end - - # Additional details of a used Robo directive with an ignore action. - # Note: This is a different scenario than unused directive. - class UsedRoboIgnoreDirective - include Google::Apis::Core::Hashable - - # The name of the resource that was ignored. - # Corresponds to the JSON property `resourceName` - # @return [String] - attr_accessor :resource_name - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @resource_name = args[:resource_name] if args.key?(:resource_name) - end - end - end - end -end diff --git a/generated/google/apis/toolresults_v1/representations.rb b/generated/google/apis/toolresults_v1/representations.rb deleted file mode 100644 index 593d8a2b2..000000000 --- a/generated/google/apis/toolresults_v1/representations.rb +++ /dev/null @@ -1,438 +0,0 @@ -# Copyright 2015 Google Inc. -# -# 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. - -require 'date' -require 'google/apis/core/base_service' -require 'google/apis/core/json_representation' -require 'google/apis/core/hashable' -require 'google/apis/errors' - -module Google - module Apis - module ToolresultsV1 - - class Anr - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class AvailableDeepLinks - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class BlankScreen - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class CrashDialogError - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class EncounteredLoginScreen - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class EncounteredNonAndroidUiWidgetScreen - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class FailedToInstall - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class FatalException - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class InAppPurchasesFound - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class InsufficientCoverage - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class IosAppCrashed - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class LauncherActivityNotFound - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class NativeCrash - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class NonSdkApi - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class NonSdkApiInsight - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class NonSdkApiUsageViolation - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class NonSdkApiUsageViolationReport - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class OverlappingUiElements - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class PendingGoogleUpdateInsight - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class PerformedGoogleLogin - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class PerformedMonkeyActions - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class RoboScriptExecution - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class StackTrace - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class StartActivityNotFound - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class UiElementTooDeep - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class UnspecifiedWarning - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class UnusedRoboDirective - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class UpgradeInsight - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class UsedRoboDirective - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class UsedRoboIgnoreDirective - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class Anr - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :stack_trace, as: 'stackTrace', class: Google::Apis::ToolresultsV1::StackTrace, decorator: Google::Apis::ToolresultsV1::StackTrace::Representation - - end - end - - class AvailableDeepLinks - # @private - class Representation < Google::Apis::Core::JsonRepresentation - end - end - - class BlankScreen - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :screen_id, as: 'screenId' - end - end - - class CrashDialogError - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :crash_package, as: 'crashPackage' - end - end - - class EncounteredLoginScreen - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :distinct_screens, as: 'distinctScreens' - collection :screen_ids, as: 'screenIds' - end - end - - class EncounteredNonAndroidUiWidgetScreen - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :distinct_screens, as: 'distinctScreens' - collection :screen_ids, as: 'screenIds' - end - end - - class FailedToInstall - # @private - class Representation < Google::Apis::Core::JsonRepresentation - end - end - - class FatalException - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :stack_trace, as: 'stackTrace', class: Google::Apis::ToolresultsV1::StackTrace, decorator: Google::Apis::ToolresultsV1::StackTrace::Representation - - end - end - - class InAppPurchasesFound - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :in_app_purchases_flows_explored, as: 'inAppPurchasesFlowsExplored' - property :in_app_purchases_flows_started, as: 'inAppPurchasesFlowsStarted' - end - end - - class InsufficientCoverage - # @private - class Representation < Google::Apis::Core::JsonRepresentation - end - end - - class IosAppCrashed - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :stack_trace, as: 'stackTrace', class: Google::Apis::ToolresultsV1::StackTrace, decorator: Google::Apis::ToolresultsV1::StackTrace::Representation - - end - end - - class LauncherActivityNotFound - # @private - class Representation < Google::Apis::Core::JsonRepresentation - end - end - - class NativeCrash - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :stack_trace, as: 'stackTrace', class: Google::Apis::ToolresultsV1::StackTrace, decorator: Google::Apis::ToolresultsV1::StackTrace::Representation - - end - end - - class NonSdkApi - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :api_signature, as: 'apiSignature' - collection :example_stack_traces, as: 'exampleStackTraces' - collection :insights, as: 'insights', class: Google::Apis::ToolresultsV1::NonSdkApiInsight, decorator: Google::Apis::ToolresultsV1::NonSdkApiInsight::Representation - - property :invocation_count, as: 'invocationCount' - property :list, as: 'list' - end - end - - class NonSdkApiInsight - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :example_trace_messages, as: 'exampleTraceMessages' - property :matcher_id, as: 'matcherId' - property :pending_google_update_insight, as: 'pendingGoogleUpdateInsight', class: Google::Apis::ToolresultsV1::PendingGoogleUpdateInsight, decorator: Google::Apis::ToolresultsV1::PendingGoogleUpdateInsight::Representation - - property :upgrade_insight, as: 'upgradeInsight', class: Google::Apis::ToolresultsV1::UpgradeInsight, decorator: Google::Apis::ToolresultsV1::UpgradeInsight::Representation - - end - end - - class NonSdkApiUsageViolation - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :api_signatures, as: 'apiSignatures' - property :unique_apis, as: 'uniqueApis' - end - end - - class NonSdkApiUsageViolationReport - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :example_apis, as: 'exampleApis', class: Google::Apis::ToolresultsV1::NonSdkApi, decorator: Google::Apis::ToolresultsV1::NonSdkApi::Representation - - property :min_sdk_version, as: 'minSdkVersion' - property :target_sdk_version, as: 'targetSdkVersion' - property :unique_apis, as: 'uniqueApis' - end - end - - class OverlappingUiElements - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :resource_name, as: 'resourceName' - property :screen_id, as: 'screenId' - end - end - - class PendingGoogleUpdateInsight - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :name_of_google_library, as: 'nameOfGoogleLibrary' - end - end - - class PerformedGoogleLogin - # @private - class Representation < Google::Apis::Core::JsonRepresentation - end - end - - class PerformedMonkeyActions - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :total_actions, as: 'totalActions' - end - end - - class RoboScriptExecution - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :successful_actions, as: 'successfulActions' - property :total_actions, as: 'totalActions' - end - end - - class StackTrace - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :exception, as: 'exception' - end - end - - class StartActivityNotFound - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :action, as: 'action' - property :uri, as: 'uri' - end - end - - class UiElementTooDeep - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :depth, as: 'depth' - property :screen_id, as: 'screenId' - property :screen_state_id, as: 'screenStateId' - end - end - - class UnspecifiedWarning - # @private - class Representation < Google::Apis::Core::JsonRepresentation - end - end - - class UnusedRoboDirective - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :resource_name, as: 'resourceName' - end - end - - class UpgradeInsight - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :package_name, as: 'packageName' - property :upgrade_to_version, as: 'upgradeToVersion' - end - end - - class UsedRoboDirective - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :resource_name, as: 'resourceName' - end - end - - class UsedRoboIgnoreDirective - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :resource_name, as: 'resourceName' - end - end - end - end -end diff --git a/generated/google/apis/toolresults_v1/service.rb b/generated/google/apis/toolresults_v1/service.rb deleted file mode 100644 index 2a037d890..000000000 --- a/generated/google/apis/toolresults_v1/service.rb +++ /dev/null @@ -1,59 +0,0 @@ -# Copyright 2015 Google Inc. -# -# 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. - -require 'google/apis/core/base_service' -require 'google/apis/core/json_representation' -require 'google/apis/core/hashable' -require 'google/apis/errors' - -module Google - module Apis - module ToolresultsV1 - # Cloud Tool Results API - # - # API to publish and access results from developer tools. - # - # @example - # require 'google/apis/toolresults_v1' - # - # Toolresults = Google::Apis::ToolresultsV1 # Alias the module - # service = Toolresults::ToolResultsService.new - # - # @see https://firebase.google.com/docs/test-lab/ - class ToolResultsService < Google::Apis::Core::BaseService - # @return [String] - # API key. Your API key identifies your project and provides you with API access, - # quota, and reports. Required unless you provide an OAuth 2.0 token. - attr_accessor :key - - # @return [String] - # Available to use for quota purposes for server-side applications. Can be any - # arbitrary string assigned to a user, but should not exceed 40 characters. - attr_accessor :quota_user - - def initialize - super('https://www.googleapis.com/', '') - @batch_path = 'batch' - end - - protected - - def apply_command_defaults(command) - command.query['key'] = key unless key.nil? - command.query['quotaUser'] = quota_user unless quota_user.nil? - end - end - end - end -end