1// Copyright 2019 Google LLC. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5// Code generated file. DO NOT EDIT. 6 7// Package containeranalysis provides access to the Container Analysis API. 8// 9// For product documentation, see: https://cloud.google.com/container-analysis/api/reference/rest/ 10// 11// Creating a client 12// 13// Usage example: 14// 15// import "google.golang.org/api/containeranalysis/v1beta1" 16// ... 17// ctx := context.Background() 18// containeranalysisService, err := containeranalysis.NewService(ctx) 19// 20// In this example, Google Application Default Credentials are used for authentication. 21// 22// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. 23// 24// Other authentication options 25// 26// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey: 27// 28// containeranalysisService, err := containeranalysis.NewService(ctx, option.WithAPIKey("AIza...")) 29// 30// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource: 31// 32// config := &oauth2.Config{...} 33// // ... 34// token, err := config.Exchange(ctx, ...) 35// containeranalysisService, err := containeranalysis.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) 36// 37// See https://godoc.org/google.golang.org/api/option/ for details on options. 38package containeranalysis // import "google.golang.org/api/containeranalysis/v1beta1" 39 40import ( 41 "bytes" 42 "context" 43 "encoding/json" 44 "errors" 45 "fmt" 46 "io" 47 "net/http" 48 "net/url" 49 "strconv" 50 "strings" 51 52 gensupport "google.golang.org/api/gensupport" 53 googleapi "google.golang.org/api/googleapi" 54 option "google.golang.org/api/option" 55 htransport "google.golang.org/api/transport/http" 56) 57 58// Always reference these packages, just in case the auto-generated code 59// below doesn't. 60var _ = bytes.NewBuffer 61var _ = strconv.Itoa 62var _ = fmt.Sprintf 63var _ = json.NewDecoder 64var _ = io.Copy 65var _ = url.Parse 66var _ = gensupport.MarshalJSON 67var _ = googleapi.Version 68var _ = errors.New 69var _ = strings.Replace 70var _ = context.Canceled 71 72const apiId = "containeranalysis:v1beta1" 73const apiName = "containeranalysis" 74const apiVersion = "v1beta1" 75const basePath = "https://containeranalysis.googleapis.com/" 76 77// OAuth2 scopes used by this API. 78const ( 79 // View and manage your data across Google Cloud Platform services 80 CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" 81) 82 83// NewService creates a new Service. 84func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { 85 scopesOption := option.WithScopes( 86 "https://www.googleapis.com/auth/cloud-platform", 87 ) 88 // NOTE: prepend, so we don't override user-specified scopes. 89 opts = append([]option.ClientOption{scopesOption}, opts...) 90 client, endpoint, err := htransport.NewClient(ctx, opts...) 91 if err != nil { 92 return nil, err 93 } 94 s, err := New(client) 95 if err != nil { 96 return nil, err 97 } 98 if endpoint != "" { 99 s.BasePath = endpoint 100 } 101 return s, nil 102} 103 104// New creates a new Service. It uses the provided http.Client for requests. 105// 106// Deprecated: please use NewService instead. 107// To provide a custom HTTP client, use option.WithHTTPClient. 108// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. 109func New(client *http.Client) (*Service, error) { 110 if client == nil { 111 return nil, errors.New("client is nil") 112 } 113 s := &Service{client: client, BasePath: basePath} 114 s.Projects = NewProjectsService(s) 115 return s, nil 116} 117 118type Service struct { 119 client *http.Client 120 BasePath string // API endpoint base URL 121 UserAgent string // optional additional User-Agent fragment 122 123 Projects *ProjectsService 124} 125 126func (s *Service) userAgent() string { 127 if s.UserAgent == "" { 128 return googleapi.UserAgent 129 } 130 return googleapi.UserAgent + " " + s.UserAgent 131} 132 133func NewProjectsService(s *Service) *ProjectsService { 134 rs := &ProjectsService{s: s} 135 rs.Notes = NewProjectsNotesService(s) 136 rs.Occurrences = NewProjectsOccurrencesService(s) 137 rs.ScanConfigs = NewProjectsScanConfigsService(s) 138 return rs 139} 140 141type ProjectsService struct { 142 s *Service 143 144 Notes *ProjectsNotesService 145 146 Occurrences *ProjectsOccurrencesService 147 148 ScanConfigs *ProjectsScanConfigsService 149} 150 151func NewProjectsNotesService(s *Service) *ProjectsNotesService { 152 rs := &ProjectsNotesService{s: s} 153 rs.Occurrences = NewProjectsNotesOccurrencesService(s) 154 return rs 155} 156 157type ProjectsNotesService struct { 158 s *Service 159 160 Occurrences *ProjectsNotesOccurrencesService 161} 162 163func NewProjectsNotesOccurrencesService(s *Service) *ProjectsNotesOccurrencesService { 164 rs := &ProjectsNotesOccurrencesService{s: s} 165 return rs 166} 167 168type ProjectsNotesOccurrencesService struct { 169 s *Service 170} 171 172func NewProjectsOccurrencesService(s *Service) *ProjectsOccurrencesService { 173 rs := &ProjectsOccurrencesService{s: s} 174 return rs 175} 176 177type ProjectsOccurrencesService struct { 178 s *Service 179} 180 181func NewProjectsScanConfigsService(s *Service) *ProjectsScanConfigsService { 182 rs := &ProjectsScanConfigsService{s: s} 183 return rs 184} 185 186type ProjectsScanConfigsService struct { 187 s *Service 188} 189 190// AliasContext: An alias to a repo revision. 191type AliasContext struct { 192 // Kind: The alias kind. 193 // 194 // Possible values: 195 // "KIND_UNSPECIFIED" - Unknown. 196 // "FIXED" - Git tag. 197 // "MOVABLE" - Git branch. 198 // "OTHER" - Used to specify non-standard aliases. For example, if a 199 // Git repo has a 200 // ref named "refs/foo/bar". 201 Kind string `json:"kind,omitempty"` 202 203 // Name: The alias name. 204 Name string `json:"name,omitempty"` 205 206 // ForceSendFields is a list of field names (e.g. "Kind") to 207 // unconditionally include in API requests. By default, fields with 208 // empty values are omitted from API requests. However, any non-pointer, 209 // non-interface field appearing in ForceSendFields will be sent to the 210 // server regardless of whether the field is empty or not. This may be 211 // used to include empty fields in Patch requests. 212 ForceSendFields []string `json:"-"` 213 214 // NullFields is a list of field names (e.g. "Kind") to include in API 215 // requests with the JSON null value. By default, fields with empty 216 // values are omitted from API requests. However, any field with an 217 // empty value appearing in NullFields will be sent to the server as 218 // null. It is an error if a field in this list has a non-empty value. 219 // This may be used to include null fields in Patch requests. 220 NullFields []string `json:"-"` 221} 222 223func (s *AliasContext) MarshalJSON() ([]byte, error) { 224 type NoMethod AliasContext 225 raw := NoMethod(*s) 226 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 227} 228 229// Artifact: Artifact describes a build product. 230type Artifact struct { 231 // Checksum: Hash or checksum value of a binary, or Docker Registry 2.0 232 // digest of a 233 // container. 234 Checksum string `json:"checksum,omitempty"` 235 236 // Id: Artifact ID, if any; for container images, this will be a URL by 237 // digest 238 // like `gcr.io/projectID/imagename@sha256:123456`. 239 Id string `json:"id,omitempty"` 240 241 // Names: Related artifact names. This may be the path to a binary or 242 // jar file, or in 243 // the case of a container build, the name used to push the container 244 // image to 245 // Google Container Registry, as presented to `docker push`. Note that 246 // a 247 // single Artifact ID can have multiple names, for example if two tags 248 // are 249 // applied to one image. 250 Names []string `json:"names,omitempty"` 251 252 // ForceSendFields is a list of field names (e.g. "Checksum") to 253 // unconditionally include in API requests. By default, fields with 254 // empty values are omitted from API requests. However, any non-pointer, 255 // non-interface field appearing in ForceSendFields will be sent to the 256 // server regardless of whether the field is empty or not. This may be 257 // used to include empty fields in Patch requests. 258 ForceSendFields []string `json:"-"` 259 260 // NullFields is a list of field names (e.g. "Checksum") to include in 261 // API requests with the JSON null value. By default, fields with empty 262 // values are omitted from API requests. However, any field with an 263 // empty value appearing in NullFields will be sent to the server as 264 // null. It is an error if a field in this list has a non-empty value. 265 // This may be used to include null fields in Patch requests. 266 NullFields []string `json:"-"` 267} 268 269func (s *Artifact) MarshalJSON() ([]byte, error) { 270 type NoMethod Artifact 271 raw := NoMethod(*s) 272 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 273} 274 275// Attestation: Occurrence that represents a single "attestation". The 276// authenticity of an 277// attestation can be verified using the attached signature. If the 278// verifier 279// trusts the public key of the signer, then verifying the signature 280// is 281// sufficient to establish trust. In this circumstance, the authority to 282// which 283// this attestation is attached is primarily useful for look-up (how to 284// find 285// this attestation if you already know the authority and artifact to 286// be 287// verified) and intent (which authority was this attestation intended 288// to sign 289// for). 290type Attestation struct { 291 GenericSignedAttestation *GenericSignedAttestation `json:"genericSignedAttestation,omitempty"` 292 293 // PgpSignedAttestation: A PGP signed attestation. 294 PgpSignedAttestation *PgpSignedAttestation `json:"pgpSignedAttestation,omitempty"` 295 296 // ForceSendFields is a list of field names (e.g. 297 // "GenericSignedAttestation") to unconditionally include in API 298 // requests. By default, fields with empty values are omitted from API 299 // requests. However, any non-pointer, non-interface field appearing in 300 // ForceSendFields will be sent to the server regardless of whether the 301 // field is empty or not. This may be used to include empty fields in 302 // Patch requests. 303 ForceSendFields []string `json:"-"` 304 305 // NullFields is a list of field names (e.g. "GenericSignedAttestation") 306 // to include in API requests with the JSON null value. By default, 307 // fields with empty values are omitted from API requests. However, any 308 // field with an empty value appearing in NullFields will be sent to the 309 // server as null. It is an error if a field in this list has a 310 // non-empty value. This may be used to include null fields in Patch 311 // requests. 312 NullFields []string `json:"-"` 313} 314 315func (s *Attestation) MarshalJSON() ([]byte, error) { 316 type NoMethod Attestation 317 raw := NoMethod(*s) 318 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 319} 320 321// AuditConfig: Specifies the audit configuration for a service. 322// The configuration determines which permission types are logged, and 323// what 324// identities, if any, are exempted from logging. 325// An AuditConfig must have one or more AuditLogConfigs. 326// 327// If there are AuditConfigs for both `allServices` and a specific 328// service, 329// the union of the two AuditConfigs is used for that service: the 330// log_types 331// specified in each AuditConfig are enabled, and the exempted_members 332// in each 333// AuditLogConfig are exempted. 334// 335// Example Policy with multiple AuditConfigs: 336// 337// { 338// "audit_configs": [ 339// { 340// "service": "allServices" 341// "audit_log_configs": [ 342// { 343// "log_type": "DATA_READ", 344// "exempted_members": [ 345// "user:foo@gmail.com" 346// ] 347// }, 348// { 349// "log_type": "DATA_WRITE", 350// }, 351// { 352// "log_type": "ADMIN_READ", 353// } 354// ] 355// }, 356// { 357// "service": "fooservice.googleapis.com" 358// "audit_log_configs": [ 359// { 360// "log_type": "DATA_READ", 361// }, 362// { 363// "log_type": "DATA_WRITE", 364// "exempted_members": [ 365// "user:bar@gmail.com" 366// ] 367// } 368// ] 369// } 370// ] 371// } 372// 373// For fooservice, this policy enables DATA_READ, DATA_WRITE and 374// ADMIN_READ 375// logging. It also exempts foo@gmail.com from DATA_READ logging, 376// and 377// bar@gmail.com from DATA_WRITE logging. 378type AuditConfig struct { 379 // AuditLogConfigs: The configuration for logging of each type of 380 // permission. 381 AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"` 382 383 // Service: Specifies a service that will be enabled for audit 384 // logging. 385 // For example, `storage.googleapis.com`, 386 // `cloudsql.googleapis.com`. 387 // `allServices` is a special value that covers all services. 388 Service string `json:"service,omitempty"` 389 390 // ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to 391 // unconditionally include in API requests. By default, fields with 392 // empty values are omitted from API requests. However, any non-pointer, 393 // non-interface field appearing in ForceSendFields will be sent to the 394 // server regardless of whether the field is empty or not. This may be 395 // used to include empty fields in Patch requests. 396 ForceSendFields []string `json:"-"` 397 398 // NullFields is a list of field names (e.g. "AuditLogConfigs") to 399 // include in API requests with the JSON null value. By default, fields 400 // with empty values are omitted from API requests. However, any field 401 // with an empty value appearing in NullFields will be sent to the 402 // server as null. It is an error if a field in this list has a 403 // non-empty value. This may be used to include null fields in Patch 404 // requests. 405 NullFields []string `json:"-"` 406} 407 408func (s *AuditConfig) MarshalJSON() ([]byte, error) { 409 type NoMethod AuditConfig 410 raw := NoMethod(*s) 411 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 412} 413 414// AuditLogConfig: Provides the configuration for logging a type of 415// permissions. 416// Example: 417// 418// { 419// "audit_log_configs": [ 420// { 421// "log_type": "DATA_READ", 422// "exempted_members": [ 423// "user:foo@gmail.com" 424// ] 425// }, 426// { 427// "log_type": "DATA_WRITE", 428// } 429// ] 430// } 431// 432// This enables 'DATA_READ' and 'DATA_WRITE' logging, while 433// exempting 434// foo@gmail.com from DATA_READ logging. 435type AuditLogConfig struct { 436 // ExemptedMembers: Specifies the identities that do not cause logging 437 // for this type of 438 // permission. 439 // Follows the same format of Binding.members. 440 ExemptedMembers []string `json:"exemptedMembers,omitempty"` 441 442 // LogType: The log type that this config enables. 443 // 444 // Possible values: 445 // "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this. 446 // "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy 447 // "DATA_WRITE" - Data writes. Example: CloudSQL Users create 448 // "DATA_READ" - Data reads. Example: CloudSQL Users list 449 LogType string `json:"logType,omitempty"` 450 451 // ForceSendFields is a list of field names (e.g. "ExemptedMembers") to 452 // unconditionally include in API requests. By default, fields with 453 // empty values are omitted from API requests. However, any non-pointer, 454 // non-interface field appearing in ForceSendFields will be sent to the 455 // server regardless of whether the field is empty or not. This may be 456 // used to include empty fields in Patch requests. 457 ForceSendFields []string `json:"-"` 458 459 // NullFields is a list of field names (e.g. "ExemptedMembers") to 460 // include in API requests with the JSON null value. By default, fields 461 // with empty values are omitted from API requests. However, any field 462 // with an empty value appearing in NullFields will be sent to the 463 // server as null. It is an error if a field in this list has a 464 // non-empty value. This may be used to include null fields in Patch 465 // requests. 466 NullFields []string `json:"-"` 467} 468 469func (s *AuditLogConfig) MarshalJSON() ([]byte, error) { 470 type NoMethod AuditLogConfig 471 raw := NoMethod(*s) 472 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 473} 474 475// Authority: Note kind that represents a logical attestation "role" or 476// "authority". For 477// example, an organization might have one `Authority` for "QA" and one 478// for 479// "build". This note is intended to act strictly as a grouping 480// mechanism for 481// the attached occurrences (Attestations). This grouping mechanism 482// also 483// provides a security boundary, since IAM ACLs gate the ability for a 484// principle 485// to attach an occurrence to a given note. It also provides a single 486// point of 487// lookup to find all attached attestation occurrences, even if they 488// don't all 489// live in the same project. 490type Authority struct { 491 // Hint: Hint hints at the purpose of the attestation authority. 492 Hint *Hint `json:"hint,omitempty"` 493 494 // ForceSendFields is a list of field names (e.g. "Hint") to 495 // unconditionally include in API requests. By default, fields with 496 // empty values are omitted from API requests. However, any non-pointer, 497 // non-interface field appearing in ForceSendFields will be sent to the 498 // server regardless of whether the field is empty or not. This may be 499 // used to include empty fields in Patch requests. 500 ForceSendFields []string `json:"-"` 501 502 // NullFields is a list of field names (e.g. "Hint") to include in API 503 // requests with the JSON null value. By default, fields with empty 504 // values are omitted from API requests. However, any field with an 505 // empty value appearing in NullFields will be sent to the server as 506 // null. It is an error if a field in this list has a non-empty value. 507 // This may be used to include null fields in Patch requests. 508 NullFields []string `json:"-"` 509} 510 511func (s *Authority) MarshalJSON() ([]byte, error) { 512 type NoMethod Authority 513 raw := NoMethod(*s) 514 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 515} 516 517// Basis: Basis describes the base image portion (Note) of the 518// DockerImage 519// relationship. Linked occurrences are derived from this or 520// an 521// equivalent image via: 522// FROM <Basis.resource_url> 523// Or an equivalent reference, e.g. a tag of the resource_url. 524type Basis struct { 525 // Fingerprint: Required. Immutable. The fingerprint of the base image. 526 Fingerprint *Fingerprint `json:"fingerprint,omitempty"` 527 528 // ResourceUrl: Required. Immutable. The resource_url for the resource 529 // representing the 530 // basis of associated occurrence images. 531 ResourceUrl string `json:"resourceUrl,omitempty"` 532 533 // ForceSendFields is a list of field names (e.g. "Fingerprint") to 534 // unconditionally include in API requests. By default, fields with 535 // empty values are omitted from API requests. However, any non-pointer, 536 // non-interface field appearing in ForceSendFields will be sent to the 537 // server regardless of whether the field is empty or not. This may be 538 // used to include empty fields in Patch requests. 539 ForceSendFields []string `json:"-"` 540 541 // NullFields is a list of field names (e.g. "Fingerprint") to include 542 // in API requests with the JSON null value. By default, fields with 543 // empty values are omitted from API requests. However, any field with 544 // an empty value appearing in NullFields will be sent to the server as 545 // null. It is an error if a field in this list has a non-empty value. 546 // This may be used to include null fields in Patch requests. 547 NullFields []string `json:"-"` 548} 549 550func (s *Basis) MarshalJSON() ([]byte, error) { 551 type NoMethod Basis 552 raw := NoMethod(*s) 553 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 554} 555 556// BatchCreateNotesRequest: Request to create notes in batch. 557type BatchCreateNotesRequest struct { 558 // Notes: The notes to create. Max allowed length is 1000. 559 Notes map[string]Note `json:"notes,omitempty"` 560 561 // ForceSendFields is a list of field names (e.g. "Notes") to 562 // unconditionally include in API requests. By default, fields with 563 // empty values are omitted from API requests. However, any non-pointer, 564 // non-interface field appearing in ForceSendFields will be sent to the 565 // server regardless of whether the field is empty or not. This may be 566 // used to include empty fields in Patch requests. 567 ForceSendFields []string `json:"-"` 568 569 // NullFields is a list of field names (e.g. "Notes") to include in API 570 // requests with the JSON null value. By default, fields with empty 571 // values are omitted from API requests. However, any field with an 572 // empty value appearing in NullFields will be sent to the server as 573 // null. It is an error if a field in this list has a non-empty value. 574 // This may be used to include null fields in Patch requests. 575 NullFields []string `json:"-"` 576} 577 578func (s *BatchCreateNotesRequest) MarshalJSON() ([]byte, error) { 579 type NoMethod BatchCreateNotesRequest 580 raw := NoMethod(*s) 581 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 582} 583 584// BatchCreateNotesResponse: Response for creating notes in batch. 585type BatchCreateNotesResponse struct { 586 // Notes: The notes that were created. 587 Notes []*Note `json:"notes,omitempty"` 588 589 // ServerResponse contains the HTTP response code and headers from the 590 // server. 591 googleapi.ServerResponse `json:"-"` 592 593 // ForceSendFields is a list of field names (e.g. "Notes") to 594 // unconditionally include in API requests. By default, fields with 595 // empty values are omitted from API requests. However, any non-pointer, 596 // non-interface field appearing in ForceSendFields will be sent to the 597 // server regardless of whether the field is empty or not. This may be 598 // used to include empty fields in Patch requests. 599 ForceSendFields []string `json:"-"` 600 601 // NullFields is a list of field names (e.g. "Notes") to include in API 602 // requests with the JSON null value. By default, fields with empty 603 // values are omitted from API requests. However, any field with an 604 // empty value appearing in NullFields will be sent to the server as 605 // null. It is an error if a field in this list has a non-empty value. 606 // This may be used to include null fields in Patch requests. 607 NullFields []string `json:"-"` 608} 609 610func (s *BatchCreateNotesResponse) MarshalJSON() ([]byte, error) { 611 type NoMethod BatchCreateNotesResponse 612 raw := NoMethod(*s) 613 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 614} 615 616// BatchCreateOccurrencesRequest: Request to create occurrences in 617// batch. 618type BatchCreateOccurrencesRequest struct { 619 // Occurrences: The occurrences to create. Max allowed length is 1000. 620 Occurrences []*Occurrence `json:"occurrences,omitempty"` 621 622 // ForceSendFields is a list of field names (e.g. "Occurrences") to 623 // unconditionally include in API requests. By default, fields with 624 // empty values are omitted from API requests. However, any non-pointer, 625 // non-interface field appearing in ForceSendFields will be sent to the 626 // server regardless of whether the field is empty or not. This may be 627 // used to include empty fields in Patch requests. 628 ForceSendFields []string `json:"-"` 629 630 // NullFields is a list of field names (e.g. "Occurrences") to include 631 // in API requests with the JSON null value. By default, fields with 632 // empty values are omitted from API requests. However, any field with 633 // an empty value appearing in NullFields will be sent to the server as 634 // null. It is an error if a field in this list has a non-empty value. 635 // This may be used to include null fields in Patch requests. 636 NullFields []string `json:"-"` 637} 638 639func (s *BatchCreateOccurrencesRequest) MarshalJSON() ([]byte, error) { 640 type NoMethod BatchCreateOccurrencesRequest 641 raw := NoMethod(*s) 642 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 643} 644 645// BatchCreateOccurrencesResponse: Response for creating occurrences in 646// batch. 647type BatchCreateOccurrencesResponse struct { 648 // Occurrences: The occurrences that were created. 649 Occurrences []*Occurrence `json:"occurrences,omitempty"` 650 651 // ServerResponse contains the HTTP response code and headers from the 652 // server. 653 googleapi.ServerResponse `json:"-"` 654 655 // ForceSendFields is a list of field names (e.g. "Occurrences") to 656 // unconditionally include in API requests. By default, fields with 657 // empty values are omitted from API requests. However, any non-pointer, 658 // non-interface field appearing in ForceSendFields will be sent to the 659 // server regardless of whether the field is empty or not. This may be 660 // used to include empty fields in Patch requests. 661 ForceSendFields []string `json:"-"` 662 663 // NullFields is a list of field names (e.g. "Occurrences") to include 664 // in API requests with the JSON null value. By default, fields with 665 // empty values are omitted from API requests. However, any field with 666 // an empty value appearing in NullFields will be sent to the server as 667 // null. It is an error if a field in this list has a non-empty value. 668 // This may be used to include null fields in Patch requests. 669 NullFields []string `json:"-"` 670} 671 672func (s *BatchCreateOccurrencesResponse) MarshalJSON() ([]byte, error) { 673 type NoMethod BatchCreateOccurrencesResponse 674 raw := NoMethod(*s) 675 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 676} 677 678// Binding: Associates `members` with a `role`. 679type Binding struct { 680 // Condition: The condition that is associated with this binding. 681 // NOTE: An unsatisfied condition will not allow user access via 682 // current 683 // binding. Different bindings, including their conditions, are 684 // examined 685 // independently. 686 Condition *Expr `json:"condition,omitempty"` 687 688 // Members: Specifies the identities requesting access for a Cloud 689 // Platform resource. 690 // `members` can have the following values: 691 // 692 // * `allUsers`: A special identifier that represents anyone who is 693 // on the internet; with or without a Google account. 694 // 695 // * `allAuthenticatedUsers`: A special identifier that represents 696 // anyone 697 // who is authenticated with a Google account or a service 698 // account. 699 // 700 // * `user:{emailid}`: An email address that represents a specific 701 // Google 702 // account. For example, `alice@gmail.com` . 703 // 704 // 705 // * `serviceAccount:{emailid}`: An email address that represents a 706 // service 707 // account. For example, 708 // `my-other-app@appspot.gserviceaccount.com`. 709 // 710 // * `group:{emailid}`: An email address that represents a Google 711 // group. 712 // For example, `admins@example.com`. 713 // 714 // 715 // * `domain:{domain}`: The G Suite domain (primary) that represents all 716 // the 717 // users of that domain. For example, `google.com` or 718 // `example.com`. 719 // 720 // 721 Members []string `json:"members,omitempty"` 722 723 // Role: Role that is assigned to `members`. 724 // For example, `roles/viewer`, `roles/editor`, or `roles/owner`. 725 Role string `json:"role,omitempty"` 726 727 // ForceSendFields is a list of field names (e.g. "Condition") to 728 // unconditionally include in API requests. By default, fields with 729 // empty values are omitted from API requests. However, any non-pointer, 730 // non-interface field appearing in ForceSendFields will be sent to the 731 // server regardless of whether the field is empty or not. This may be 732 // used to include empty fields in Patch requests. 733 ForceSendFields []string `json:"-"` 734 735 // NullFields is a list of field names (e.g. "Condition") to include in 736 // API requests with the JSON null value. By default, fields with empty 737 // values are omitted from API requests. However, any field with an 738 // empty value appearing in NullFields will be sent to the server as 739 // null. It is an error if a field in this list has a non-empty value. 740 // This may be used to include null fields in Patch requests. 741 NullFields []string `json:"-"` 742} 743 744func (s *Binding) MarshalJSON() ([]byte, error) { 745 type NoMethod Binding 746 raw := NoMethod(*s) 747 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 748} 749 750// Build: Note holding the version of the provider's builder and the 751// signature of the 752// provenance message in the build details occurrence. 753type Build struct { 754 // BuilderVersion: Required. Immutable. Version of the builder which 755 // produced this build. 756 BuilderVersion string `json:"builderVersion,omitempty"` 757 758 // Signature: Signature of the build in occurrences pointing to this 759 // build note 760 // containing build details. 761 Signature *BuildSignature `json:"signature,omitempty"` 762 763 // ForceSendFields is a list of field names (e.g. "BuilderVersion") to 764 // unconditionally include in API requests. By default, fields with 765 // empty values are omitted from API requests. However, any non-pointer, 766 // non-interface field appearing in ForceSendFields will be sent to the 767 // server regardless of whether the field is empty or not. This may be 768 // used to include empty fields in Patch requests. 769 ForceSendFields []string `json:"-"` 770 771 // NullFields is a list of field names (e.g. "BuilderVersion") to 772 // include in API requests with the JSON null value. By default, fields 773 // with empty values are omitted from API requests. However, any field 774 // with an empty value appearing in NullFields will be sent to the 775 // server as null. It is an error if a field in this list has a 776 // non-empty value. This may be used to include null fields in Patch 777 // requests. 778 NullFields []string `json:"-"` 779} 780 781func (s *Build) MarshalJSON() ([]byte, error) { 782 type NoMethod Build 783 raw := NoMethod(*s) 784 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 785} 786 787// BuildProvenance: Provenance of a build. Contains all information 788// needed to verify the full 789// details about the build from source to completion. 790type BuildProvenance struct { 791 // BuildOptions: Special options applied to this build. This is a 792 // catch-all field where 793 // build providers can enter any desired additional details. 794 BuildOptions map[string]string `json:"buildOptions,omitempty"` 795 796 // BuilderVersion: Version string of the builder at the time this build 797 // was executed. 798 BuilderVersion string `json:"builderVersion,omitempty"` 799 800 // BuiltArtifacts: Output of the build. 801 BuiltArtifacts []*Artifact `json:"builtArtifacts,omitempty"` 802 803 // Commands: Commands requested by the build. 804 Commands []*Command `json:"commands,omitempty"` 805 806 // CreateTime: Time at which the build was created. 807 CreateTime string `json:"createTime,omitempty"` 808 809 // Creator: E-mail address of the user who initiated this build. Note 810 // that this was the 811 // user's e-mail address at the time the build was initiated; this 812 // address may 813 // not represent the same end-user for all time. 814 Creator string `json:"creator,omitempty"` 815 816 // EndTime: Time at which execution of the build was finished. 817 EndTime string `json:"endTime,omitempty"` 818 819 // Id: Required. Unique identifier of the build. 820 Id string `json:"id,omitempty"` 821 822 // LogsUri: URI where any logs for this provenance were written. 823 LogsUri string `json:"logsUri,omitempty"` 824 825 // ProjectId: ID of the project. 826 ProjectId string `json:"projectId,omitempty"` 827 828 // SourceProvenance: Details of the Source input to the build. 829 SourceProvenance *Source `json:"sourceProvenance,omitempty"` 830 831 // StartTime: Time at which execution of the build was started. 832 StartTime string `json:"startTime,omitempty"` 833 834 // TriggerId: Trigger identifier if the build was triggered 835 // automatically; empty if not. 836 TriggerId string `json:"triggerId,omitempty"` 837 838 // ForceSendFields is a list of field names (e.g. "BuildOptions") to 839 // unconditionally include in API requests. By default, fields with 840 // empty values are omitted from API requests. However, any non-pointer, 841 // non-interface field appearing in ForceSendFields will be sent to the 842 // server regardless of whether the field is empty or not. This may be 843 // used to include empty fields in Patch requests. 844 ForceSendFields []string `json:"-"` 845 846 // NullFields is a list of field names (e.g. "BuildOptions") to include 847 // in API requests with the JSON null value. By default, fields with 848 // empty values are omitted from API requests. However, any field with 849 // an empty value appearing in NullFields will be sent to the server as 850 // null. It is an error if a field in this list has a non-empty value. 851 // This may be used to include null fields in Patch requests. 852 NullFields []string `json:"-"` 853} 854 855func (s *BuildProvenance) MarshalJSON() ([]byte, error) { 856 type NoMethod BuildProvenance 857 raw := NoMethod(*s) 858 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 859} 860 861// BuildSignature: Message encapsulating the signature of the verified 862// build. 863type BuildSignature struct { 864 // KeyId: An ID for the key used to sign. This could be either an ID for 865 // the key 866 // stored in `public_key` (such as the ID or fingerprint for a PGP key, 867 // or the 868 // CN for a cert), or a reference to an external key (such as a 869 // reference to a 870 // key in Cloud Key Management Service). 871 KeyId string `json:"keyId,omitempty"` 872 873 // KeyType: The type of the key, either stored in `public_key` or 874 // referenced in 875 // `key_id`. 876 // 877 // Possible values: 878 // "KEY_TYPE_UNSPECIFIED" - `KeyType` is not set. 879 // "PGP_ASCII_ARMORED" - `PGP ASCII Armored` public key. 880 // "PKIX_PEM" - `PKIX PEM` public key. 881 KeyType string `json:"keyType,omitempty"` 882 883 // PublicKey: Public key of the builder which can be used to verify that 884 // the related 885 // findings are valid and unchanged. If `key_type` is empty, this 886 // defaults 887 // to PEM encoded public keys. 888 // 889 // This field may be empty if `key_id` references an external key. 890 // 891 // For Cloud Build based signatures, this is a PEM encoded public 892 // key. To verify the Cloud Build signature, place the contents of 893 // this field into a file (public.pem). The signature field is 894 // base64-decoded 895 // into its binary representation in signature.bin, and the provenance 896 // bytes 897 // from `BuildDetails` are base64-decoded into a binary representation 898 // in 899 // signed.bin. OpenSSL can then verify the signature: 900 // `openssl sha256 -verify public.pem -signature signature.bin 901 // signed.bin` 902 PublicKey string `json:"publicKey,omitempty"` 903 904 // Signature: Required. Signature of the related `BuildProvenance`. In 905 // JSON, this is 906 // base-64 encoded. 907 Signature string `json:"signature,omitempty"` 908 909 // ForceSendFields is a list of field names (e.g. "KeyId") to 910 // unconditionally include in API requests. By default, fields with 911 // empty values are omitted from API requests. However, any non-pointer, 912 // non-interface field appearing in ForceSendFields will be sent to the 913 // server regardless of whether the field is empty or not. This may be 914 // used to include empty fields in Patch requests. 915 ForceSendFields []string `json:"-"` 916 917 // NullFields is a list of field names (e.g. "KeyId") to include in API 918 // requests with the JSON null value. By default, fields with empty 919 // values are omitted from API requests. However, any field with an 920 // empty value appearing in NullFields will be sent to the server as 921 // null. It is an error if a field in this list has a non-empty value. 922 // This may be used to include null fields in Patch requests. 923 NullFields []string `json:"-"` 924} 925 926func (s *BuildSignature) MarshalJSON() ([]byte, error) { 927 type NoMethod BuildSignature 928 raw := NoMethod(*s) 929 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 930} 931 932// CVSSv3: Common Vulnerability Scoring System version 3. 933// For details, see https://www.first.org/cvss/specification-document 934type CVSSv3 struct { 935 // Possible values: 936 // "ATTACK_COMPLEXITY_UNSPECIFIED" 937 // "ATTACK_COMPLEXITY_LOW" 938 // "ATTACK_COMPLEXITY_HIGH" 939 AttackComplexity string `json:"attackComplexity,omitempty"` 940 941 // AttackVector: Base Metrics 942 // Represents the intrinsic characteristics of a vulnerability that 943 // are 944 // constant over time and across user environments. 945 // 946 // Possible values: 947 // "ATTACK_VECTOR_UNSPECIFIED" 948 // "ATTACK_VECTOR_NETWORK" 949 // "ATTACK_VECTOR_ADJACENT" 950 // "ATTACK_VECTOR_LOCAL" 951 // "ATTACK_VECTOR_PHYSICAL" 952 AttackVector string `json:"attackVector,omitempty"` 953 954 // Possible values: 955 // "IMPACT_UNSPECIFIED" 956 // "IMPACT_HIGH" 957 // "IMPACT_LOW" 958 // "IMPACT_NONE" 959 AvailabilityImpact string `json:"availabilityImpact,omitempty"` 960 961 // BaseScore: The base score is a function of the base metric scores. 962 BaseScore float64 `json:"baseScore,omitempty"` 963 964 // Possible values: 965 // "IMPACT_UNSPECIFIED" 966 // "IMPACT_HIGH" 967 // "IMPACT_LOW" 968 // "IMPACT_NONE" 969 ConfidentialityImpact string `json:"confidentialityImpact,omitempty"` 970 971 ExploitabilityScore float64 `json:"exploitabilityScore,omitempty"` 972 973 ImpactScore float64 `json:"impactScore,omitempty"` 974 975 // Possible values: 976 // "IMPACT_UNSPECIFIED" 977 // "IMPACT_HIGH" 978 // "IMPACT_LOW" 979 // "IMPACT_NONE" 980 IntegrityImpact string `json:"integrityImpact,omitempty"` 981 982 // Possible values: 983 // "PRIVILEGES_REQUIRED_UNSPECIFIED" 984 // "PRIVILEGES_REQUIRED_NONE" 985 // "PRIVILEGES_REQUIRED_LOW" 986 // "PRIVILEGES_REQUIRED_HIGH" 987 PrivilegesRequired string `json:"privilegesRequired,omitempty"` 988 989 // Possible values: 990 // "SCOPE_UNSPECIFIED" 991 // "SCOPE_UNCHANGED" 992 // "SCOPE_CHANGED" 993 Scope string `json:"scope,omitempty"` 994 995 // Possible values: 996 // "USER_INTERACTION_UNSPECIFIED" 997 // "USER_INTERACTION_NONE" 998 // "USER_INTERACTION_REQUIRED" 999 UserInteraction string `json:"userInteraction,omitempty"` 1000 1001 // ForceSendFields is a list of field names (e.g. "AttackComplexity") to 1002 // unconditionally include in API requests. By default, fields with 1003 // empty values are omitted from API requests. However, any non-pointer, 1004 // non-interface field appearing in ForceSendFields will be sent to the 1005 // server regardless of whether the field is empty or not. This may be 1006 // used to include empty fields in Patch requests. 1007 ForceSendFields []string `json:"-"` 1008 1009 // NullFields is a list of field names (e.g. "AttackComplexity") to 1010 // include in API requests with the JSON null value. By default, fields 1011 // with empty values are omitted from API requests. However, any field 1012 // with an empty value appearing in NullFields will be sent to the 1013 // server as null. It is an error if a field in this list has a 1014 // non-empty value. This may be used to include null fields in Patch 1015 // requests. 1016 NullFields []string `json:"-"` 1017} 1018 1019func (s *CVSSv3) MarshalJSON() ([]byte, error) { 1020 type NoMethod CVSSv3 1021 raw := NoMethod(*s) 1022 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1023} 1024 1025func (s *CVSSv3) UnmarshalJSON(data []byte) error { 1026 type NoMethod CVSSv3 1027 var s1 struct { 1028 BaseScore gensupport.JSONFloat64 `json:"baseScore"` 1029 ExploitabilityScore gensupport.JSONFloat64 `json:"exploitabilityScore"` 1030 ImpactScore gensupport.JSONFloat64 `json:"impactScore"` 1031 *NoMethod 1032 } 1033 s1.NoMethod = (*NoMethod)(s) 1034 if err := json.Unmarshal(data, &s1); err != nil { 1035 return err 1036 } 1037 s.BaseScore = float64(s1.BaseScore) 1038 s.ExploitabilityScore = float64(s1.ExploitabilityScore) 1039 s.ImpactScore = float64(s1.ImpactScore) 1040 return nil 1041} 1042 1043// CloudRepoSourceContext: A CloudRepoSourceContext denotes a particular 1044// revision in a Google Cloud 1045// Source Repo. 1046type CloudRepoSourceContext struct { 1047 // AliasContext: An alias, which may be a branch or tag. 1048 AliasContext *AliasContext `json:"aliasContext,omitempty"` 1049 1050 // RepoId: The ID of the repo. 1051 RepoId *RepoId `json:"repoId,omitempty"` 1052 1053 // RevisionId: A revision ID. 1054 RevisionId string `json:"revisionId,omitempty"` 1055 1056 // ForceSendFields is a list of field names (e.g. "AliasContext") to 1057 // unconditionally include in API requests. By default, fields with 1058 // empty values are omitted from API requests. However, any non-pointer, 1059 // non-interface field appearing in ForceSendFields will be sent to the 1060 // server regardless of whether the field is empty or not. This may be 1061 // used to include empty fields in Patch requests. 1062 ForceSendFields []string `json:"-"` 1063 1064 // NullFields is a list of field names (e.g. "AliasContext") to include 1065 // in API requests with the JSON null value. By default, fields with 1066 // empty values are omitted from API requests. However, any field with 1067 // an empty value appearing in NullFields will be sent to the server as 1068 // null. It is an error if a field in this list has a non-empty value. 1069 // This may be used to include null fields in Patch requests. 1070 NullFields []string `json:"-"` 1071} 1072 1073func (s *CloudRepoSourceContext) MarshalJSON() ([]byte, error) { 1074 type NoMethod CloudRepoSourceContext 1075 raw := NoMethod(*s) 1076 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1077} 1078 1079// Command: Command describes a step performed as part of the build 1080// pipeline. 1081type Command struct { 1082 // Args: Command-line arguments used when executing this command. 1083 Args []string `json:"args,omitempty"` 1084 1085 // Dir: Working directory (relative to project source root) used when 1086 // running this 1087 // command. 1088 Dir string `json:"dir,omitempty"` 1089 1090 // Env: Environment variables set before running this command. 1091 Env []string `json:"env,omitempty"` 1092 1093 // Id: Optional unique identifier for this command, used in wait_for to 1094 // reference 1095 // this command as a dependency. 1096 Id string `json:"id,omitempty"` 1097 1098 // Name: Required. Name of the command, as presented on the command 1099 // line, or if the 1100 // command is packaged as a Docker container, as presented to `docker 1101 // pull`. 1102 Name string `json:"name,omitempty"` 1103 1104 // WaitFor: The ID(s) of the command(s) that this command depends on. 1105 WaitFor []string `json:"waitFor,omitempty"` 1106 1107 // ForceSendFields is a list of field names (e.g. "Args") to 1108 // unconditionally include in API requests. By default, fields with 1109 // empty values are omitted from API requests. However, any non-pointer, 1110 // non-interface field appearing in ForceSendFields will be sent to the 1111 // server regardless of whether the field is empty or not. This may be 1112 // used to include empty fields in Patch requests. 1113 ForceSendFields []string `json:"-"` 1114 1115 // NullFields is a list of field names (e.g. "Args") to include in API 1116 // requests with the JSON null value. By default, fields with empty 1117 // values are omitted from API requests. However, any field with an 1118 // empty value appearing in NullFields will be sent to the server as 1119 // null. It is an error if a field in this list has a non-empty value. 1120 // This may be used to include null fields in Patch requests. 1121 NullFields []string `json:"-"` 1122} 1123 1124func (s *Command) MarshalJSON() ([]byte, error) { 1125 type NoMethod Command 1126 raw := NoMethod(*s) 1127 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1128} 1129 1130// Deployable: An artifact that can be deployed in some runtime. 1131type Deployable struct { 1132 // ResourceUri: Required. Resource URI for the artifact being deployed. 1133 ResourceUri []string `json:"resourceUri,omitempty"` 1134 1135 // ForceSendFields is a list of field names (e.g. "ResourceUri") to 1136 // unconditionally include in API requests. By default, fields with 1137 // empty values are omitted from API requests. However, any non-pointer, 1138 // non-interface field appearing in ForceSendFields will be sent to the 1139 // server regardless of whether the field is empty or not. This may be 1140 // used to include empty fields in Patch requests. 1141 ForceSendFields []string `json:"-"` 1142 1143 // NullFields is a list of field names (e.g. "ResourceUri") to include 1144 // in API requests with the JSON null value. By default, fields with 1145 // empty values are omitted from API requests. However, any field with 1146 // an empty value appearing in NullFields will be sent to the server as 1147 // null. It is an error if a field in this list has a non-empty value. 1148 // This may be used to include null fields in Patch requests. 1149 NullFields []string `json:"-"` 1150} 1151 1152func (s *Deployable) MarshalJSON() ([]byte, error) { 1153 type NoMethod Deployable 1154 raw := NoMethod(*s) 1155 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1156} 1157 1158// Deployment: The period during which some deployable was active in a 1159// runtime. 1160type Deployment struct { 1161 // Address: Address of the runtime element hosting this deployment. 1162 Address string `json:"address,omitempty"` 1163 1164 // Config: Configuration used to create this deployment. 1165 Config string `json:"config,omitempty"` 1166 1167 // DeployTime: Required. Beginning of the lifetime of this deployment. 1168 DeployTime string `json:"deployTime,omitempty"` 1169 1170 // Platform: Platform hosting this deployment. 1171 // 1172 // Possible values: 1173 // "PLATFORM_UNSPECIFIED" - Unknown. 1174 // "GKE" - Google Container Engine. 1175 // "FLEX" - Google App Engine: Flexible Environment. 1176 // "CUSTOM" - Custom user-defined platform. 1177 Platform string `json:"platform,omitempty"` 1178 1179 // ResourceUri: Output only. Resource URI for the artifact being 1180 // deployed taken from 1181 // the deployable field with the same name. 1182 ResourceUri []string `json:"resourceUri,omitempty"` 1183 1184 // UndeployTime: End of the lifetime of this deployment. 1185 UndeployTime string `json:"undeployTime,omitempty"` 1186 1187 // UserEmail: Identity of the user that triggered this deployment. 1188 UserEmail string `json:"userEmail,omitempty"` 1189 1190 // ForceSendFields is a list of field names (e.g. "Address") to 1191 // unconditionally include in API requests. By default, fields with 1192 // empty values are omitted from API requests. However, any non-pointer, 1193 // non-interface field appearing in ForceSendFields will be sent to the 1194 // server regardless of whether the field is empty or not. This may be 1195 // used to include empty fields in Patch requests. 1196 ForceSendFields []string `json:"-"` 1197 1198 // NullFields is a list of field names (e.g. "Address") to include in 1199 // API requests with the JSON null value. By default, fields with empty 1200 // values are omitted from API requests. However, any field with an 1201 // empty value appearing in NullFields will be sent to the server as 1202 // null. It is an error if a field in this list has a non-empty value. 1203 // This may be used to include null fields in Patch requests. 1204 NullFields []string `json:"-"` 1205} 1206 1207func (s *Deployment) MarshalJSON() ([]byte, error) { 1208 type NoMethod Deployment 1209 raw := NoMethod(*s) 1210 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1211} 1212 1213// Derived: Derived describes the derived image portion (Occurrence) of 1214// the DockerImage 1215// relationship. This image would be produced from a Dockerfile with 1216// FROM 1217// <DockerImage.Basis in attached Note>. 1218type Derived struct { 1219 // BaseResourceUrl: Output only. This contains the base image URL for 1220 // the derived image 1221 // occurrence. 1222 BaseResourceUrl string `json:"baseResourceUrl,omitempty"` 1223 1224 // Distance: Output only. The number of layers by which this image 1225 // differs from the 1226 // associated image basis. 1227 Distance int64 `json:"distance,omitempty"` 1228 1229 // Fingerprint: Required. The fingerprint of the derived image. 1230 Fingerprint *Fingerprint `json:"fingerprint,omitempty"` 1231 1232 // LayerInfo: This contains layer-specific metadata, if populated it has 1233 // length 1234 // "distance" and is ordered with [distance] being the layer 1235 // immediately 1236 // following the base image and [1] being the final layer. 1237 LayerInfo []*Layer `json:"layerInfo,omitempty"` 1238 1239 // ForceSendFields is a list of field names (e.g. "BaseResourceUrl") to 1240 // unconditionally include in API requests. By default, fields with 1241 // empty values are omitted from API requests. However, any non-pointer, 1242 // non-interface field appearing in ForceSendFields will be sent to the 1243 // server regardless of whether the field is empty or not. This may be 1244 // used to include empty fields in Patch requests. 1245 ForceSendFields []string `json:"-"` 1246 1247 // NullFields is a list of field names (e.g. "BaseResourceUrl") to 1248 // include in API requests with the JSON null value. By default, fields 1249 // with empty values are omitted from API requests. However, any field 1250 // with an empty value appearing in NullFields will be sent to the 1251 // server as null. It is an error if a field in this list has a 1252 // non-empty value. This may be used to include null fields in Patch 1253 // requests. 1254 NullFields []string `json:"-"` 1255} 1256 1257func (s *Derived) MarshalJSON() ([]byte, error) { 1258 type NoMethod Derived 1259 raw := NoMethod(*s) 1260 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1261} 1262 1263// Detail: Identifies all appearances of this vulnerability in the 1264// package for a 1265// specific distro/location. For example: glibc 1266// in 1267// cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2 1268type Detail struct { 1269 // CpeUri: Required. The CPE URI in 1270 // [cpe format](https://cpe.mitre.org/specification/) in which 1271 // the 1272 // vulnerability manifests. Examples include distro or storage location 1273 // for 1274 // vulnerable jar. 1275 CpeUri string `json:"cpeUri,omitempty"` 1276 1277 // Description: A vendor-specific description of this note. 1278 Description string `json:"description,omitempty"` 1279 1280 // FixedLocation: The fix for this specific package version. 1281 FixedLocation *VulnerabilityLocation `json:"fixedLocation,omitempty"` 1282 1283 // IsObsolete: Whether this detail is obsolete. Occurrences are expected 1284 // not to point to 1285 // obsolete details. 1286 IsObsolete bool `json:"isObsolete,omitempty"` 1287 1288 // MaxAffectedVersion: Deprecated, do not use. Use fixed_location 1289 // instead. 1290 // 1291 // The max version of the package in which the vulnerability exists. 1292 MaxAffectedVersion *Version `json:"maxAffectedVersion,omitempty"` 1293 1294 // MinAffectedVersion: The min version of the package in which the 1295 // vulnerability exists. 1296 MinAffectedVersion *Version `json:"minAffectedVersion,omitempty"` 1297 1298 // Package: Required. The name of the package where the vulnerability 1299 // was found. 1300 Package string `json:"package,omitempty"` 1301 1302 // PackageType: The type of package; whether native or non native(ruby 1303 // gems, node.js 1304 // packages etc). 1305 PackageType string `json:"packageType,omitempty"` 1306 1307 // SeverityName: The severity (eg: distro assigned severity) for this 1308 // vulnerability. 1309 SeverityName string `json:"severityName,omitempty"` 1310 1311 // ForceSendFields is a list of field names (e.g. "CpeUri") to 1312 // unconditionally include in API requests. By default, fields with 1313 // empty values are omitted from API requests. However, any non-pointer, 1314 // non-interface field appearing in ForceSendFields will be sent to the 1315 // server regardless of whether the field is empty or not. This may be 1316 // used to include empty fields in Patch requests. 1317 ForceSendFields []string `json:"-"` 1318 1319 // NullFields is a list of field names (e.g. "CpeUri") to include in API 1320 // requests with the JSON null value. By default, fields with empty 1321 // values are omitted from API requests. However, any field with an 1322 // empty value appearing in NullFields will be sent to the server as 1323 // null. It is an error if a field in this list has a non-empty value. 1324 // This may be used to include null fields in Patch requests. 1325 NullFields []string `json:"-"` 1326} 1327 1328func (s *Detail) MarshalJSON() ([]byte, error) { 1329 type NoMethod Detail 1330 raw := NoMethod(*s) 1331 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1332} 1333 1334// Details: Details of an attestation occurrence. 1335type Details struct { 1336 // Attestation: Required. Attestation for the resource. 1337 Attestation *Attestation `json:"attestation,omitempty"` 1338 1339 // ForceSendFields is a list of field names (e.g. "Attestation") to 1340 // unconditionally include in API requests. By default, fields with 1341 // empty values are omitted from API requests. However, any non-pointer, 1342 // non-interface field appearing in ForceSendFields will be sent to the 1343 // server regardless of whether the field is empty or not. This may be 1344 // used to include empty fields in Patch requests. 1345 ForceSendFields []string `json:"-"` 1346 1347 // NullFields is a list of field names (e.g. "Attestation") to include 1348 // in API requests with the JSON null value. By default, fields with 1349 // empty values are omitted from API requests. However, any field with 1350 // an empty value appearing in NullFields will be sent to the server as 1351 // null. It is an error if a field in this list has a non-empty value. 1352 // This may be used to include null fields in Patch requests. 1353 NullFields []string `json:"-"` 1354} 1355 1356func (s *Details) MarshalJSON() ([]byte, error) { 1357 type NoMethod Details 1358 raw := NoMethod(*s) 1359 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1360} 1361 1362// Discovered: Provides information about the analysis status of a 1363// discovered resource. 1364type Discovered struct { 1365 // AnalysisStatus: The status of discovery for the resource. 1366 // 1367 // Possible values: 1368 // "ANALYSIS_STATUS_UNSPECIFIED" - Unknown. 1369 // "PENDING" - Resource is known but no action has been taken yet. 1370 // "SCANNING" - Resource is being analyzed. 1371 // "FINISHED_SUCCESS" - Analysis has finished successfully. 1372 // "FINISHED_FAILED" - Analysis has finished unsuccessfully, the 1373 // analysis itself is in a bad 1374 // state. 1375 // "FINISHED_UNSUPPORTED" - The resource is known not to be supported 1376 AnalysisStatus string `json:"analysisStatus,omitempty"` 1377 1378 // AnalysisStatusError: When an error is encountered this will contain a 1379 // LocalizedMessage under 1380 // details to show to the user. The LocalizedMessage is output only 1381 // and 1382 // populated by the API. 1383 AnalysisStatusError *Status `json:"analysisStatusError,omitempty"` 1384 1385 // ContinuousAnalysis: Whether the resource is continuously analyzed. 1386 // 1387 // Possible values: 1388 // "CONTINUOUS_ANALYSIS_UNSPECIFIED" - Unknown. 1389 // "ACTIVE" - The resource is continuously analyzed. 1390 // "INACTIVE" - The resource is ignored for continuous analysis. 1391 ContinuousAnalysis string `json:"continuousAnalysis,omitempty"` 1392 1393 // LastAnalysisTime: The last time continuous analysis was done for this 1394 // resource. 1395 // Deprecated, do not use. 1396 LastAnalysisTime string `json:"lastAnalysisTime,omitempty"` 1397 1398 // ForceSendFields is a list of field names (e.g. "AnalysisStatus") to 1399 // unconditionally include in API requests. By default, fields with 1400 // empty values are omitted from API requests. However, any non-pointer, 1401 // non-interface field appearing in ForceSendFields will be sent to the 1402 // server regardless of whether the field is empty or not. This may be 1403 // used to include empty fields in Patch requests. 1404 ForceSendFields []string `json:"-"` 1405 1406 // NullFields is a list of field names (e.g. "AnalysisStatus") to 1407 // include in API requests with the JSON null value. By default, fields 1408 // with empty values are omitted from API requests. However, any field 1409 // with an empty value appearing in NullFields will be sent to the 1410 // server as null. It is an error if a field in this list has a 1411 // non-empty value. This may be used to include null fields in Patch 1412 // requests. 1413 NullFields []string `json:"-"` 1414} 1415 1416func (s *Discovered) MarshalJSON() ([]byte, error) { 1417 type NoMethod Discovered 1418 raw := NoMethod(*s) 1419 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1420} 1421 1422// Discovery: A note that indicates a type of analysis a provider would 1423// perform. This note 1424// exists in a provider's project. A `Discovery` occurrence is created 1425// in a 1426// consumer's project at the start of analysis. 1427type Discovery struct { 1428 // AnalysisKind: Required. Immutable. The kind of analysis that is 1429 // handled by this 1430 // discovery. 1431 // 1432 // Possible values: 1433 // "NOTE_KIND_UNSPECIFIED" - Unknown. 1434 // "VULNERABILITY" - The note and occurrence represent a package 1435 // vulnerability. 1436 // "BUILD" - The note and occurrence assert build provenance. 1437 // "IMAGE" - This represents an image basis relationship. 1438 // "PACKAGE" - This represents a package installed via a package 1439 // manager. 1440 // "DEPLOYMENT" - The note and occurrence track deployment events. 1441 // "DISCOVERY" - The note and occurrence track the initial discovery 1442 // status of a resource. 1443 // "ATTESTATION" - This represents a logical "role" that can attest to 1444 // artifacts. 1445 AnalysisKind string `json:"analysisKind,omitempty"` 1446 1447 // ForceSendFields is a list of field names (e.g. "AnalysisKind") to 1448 // unconditionally include in API requests. By default, fields with 1449 // empty values are omitted from API requests. However, any non-pointer, 1450 // non-interface field appearing in ForceSendFields will be sent to the 1451 // server regardless of whether the field is empty or not. This may be 1452 // used to include empty fields in Patch requests. 1453 ForceSendFields []string `json:"-"` 1454 1455 // NullFields is a list of field names (e.g. "AnalysisKind") to include 1456 // in API requests with the JSON null value. By default, fields with 1457 // empty values are omitted from API requests. However, any field with 1458 // an empty value appearing in NullFields will be sent to the server as 1459 // null. It is an error if a field in this list has a non-empty value. 1460 // This may be used to include null fields in Patch requests. 1461 NullFields []string `json:"-"` 1462} 1463 1464func (s *Discovery) MarshalJSON() ([]byte, error) { 1465 type NoMethod Discovery 1466 raw := NoMethod(*s) 1467 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1468} 1469 1470// Distribution: This represents a particular channel of distribution 1471// for a given package. 1472// E.g., Debian's jessie-backports dpkg mirror. 1473type Distribution struct { 1474 // Architecture: The CPU architecture for which packages in this 1475 // distribution channel were 1476 // built. 1477 // 1478 // Possible values: 1479 // "ARCHITECTURE_UNSPECIFIED" - Unknown architecture. 1480 // "X86" - X86 architecture. 1481 // "X64" - X64 architecture. 1482 Architecture string `json:"architecture,omitempty"` 1483 1484 // CpeUri: Required. The cpe_uri in [CPE 1485 // format](https://cpe.mitre.org/specification/) 1486 // denoting the package manager version distributing a package. 1487 CpeUri string `json:"cpeUri,omitempty"` 1488 1489 // Description: The distribution channel-specific description of this 1490 // package. 1491 Description string `json:"description,omitempty"` 1492 1493 // LatestVersion: The latest available version of this package in this 1494 // distribution channel. 1495 LatestVersion *Version `json:"latestVersion,omitempty"` 1496 1497 // Maintainer: A freeform string denoting the maintainer of this 1498 // package. 1499 Maintainer string `json:"maintainer,omitempty"` 1500 1501 // Url: The distribution channel-specific homepage for this package. 1502 Url string `json:"url,omitempty"` 1503 1504 // ForceSendFields is a list of field names (e.g. "Architecture") to 1505 // unconditionally include in API requests. By default, fields with 1506 // empty values are omitted from API requests. However, any non-pointer, 1507 // non-interface field appearing in ForceSendFields will be sent to the 1508 // server regardless of whether the field is empty or not. This may be 1509 // used to include empty fields in Patch requests. 1510 ForceSendFields []string `json:"-"` 1511 1512 // NullFields is a list of field names (e.g. "Architecture") to include 1513 // in API requests with the JSON null value. By default, fields with 1514 // empty values are omitted from API requests. However, any field with 1515 // an empty value appearing in NullFields will be sent to the server as 1516 // null. It is an error if a field in this list has a non-empty value. 1517 // This may be used to include null fields in Patch requests. 1518 NullFields []string `json:"-"` 1519} 1520 1521func (s *Distribution) MarshalJSON() ([]byte, error) { 1522 type NoMethod Distribution 1523 raw := NoMethod(*s) 1524 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1525} 1526 1527// Empty: A generic empty message that you can re-use to avoid defining 1528// duplicated 1529// empty messages in your APIs. A typical example is to use it as the 1530// request 1531// or the response type of an API method. For instance: 1532// 1533// service Foo { 1534// rpc Bar(google.protobuf.Empty) returns 1535// (google.protobuf.Empty); 1536// } 1537// 1538// The JSON representation for `Empty` is empty JSON object `{}`. 1539type Empty struct { 1540 // ServerResponse contains the HTTP response code and headers from the 1541 // server. 1542 googleapi.ServerResponse `json:"-"` 1543} 1544 1545// Expr: Represents an expression text. Example: 1546// 1547// title: "User account presence" 1548// description: "Determines whether the request has a user account" 1549// expression: "size(request.user) > 0" 1550type Expr struct { 1551 // Description: An optional description of the expression. This is a 1552 // longer text which 1553 // describes the expression, e.g. when hovered over it in a UI. 1554 Description string `json:"description,omitempty"` 1555 1556 // Expression: Textual representation of an expression in 1557 // Common Expression Language syntax. 1558 // 1559 // The application context of the containing message determines 1560 // which 1561 // well-known feature set of CEL is supported. 1562 Expression string `json:"expression,omitempty"` 1563 1564 // Location: An optional string indicating the location of the 1565 // expression for error 1566 // reporting, e.g. a file name and a position in the file. 1567 Location string `json:"location,omitempty"` 1568 1569 // Title: An optional title for the expression, i.e. a short string 1570 // describing 1571 // its purpose. This can be used e.g. in UIs which allow to enter 1572 // the 1573 // expression. 1574 Title string `json:"title,omitempty"` 1575 1576 // ForceSendFields is a list of field names (e.g. "Description") to 1577 // unconditionally include in API requests. By default, fields with 1578 // empty values are omitted from API requests. However, any non-pointer, 1579 // non-interface field appearing in ForceSendFields will be sent to the 1580 // server regardless of whether the field is empty or not. This may be 1581 // used to include empty fields in Patch requests. 1582 ForceSendFields []string `json:"-"` 1583 1584 // NullFields is a list of field names (e.g. "Description") to include 1585 // in API requests with the JSON null value. By default, fields with 1586 // empty values are omitted from API requests. However, any field with 1587 // an empty value appearing in NullFields will be sent to the server as 1588 // null. It is an error if a field in this list has a non-empty value. 1589 // This may be used to include null fields in Patch requests. 1590 NullFields []string `json:"-"` 1591} 1592 1593func (s *Expr) MarshalJSON() ([]byte, error) { 1594 type NoMethod Expr 1595 raw := NoMethod(*s) 1596 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1597} 1598 1599// FileHashes: Container message for hashes of byte content of files, 1600// used in source 1601// messages to verify integrity of source input to the build. 1602type FileHashes struct { 1603 // FileHash: Required. Collection of file hashes. 1604 FileHash []*Hash `json:"fileHash,omitempty"` 1605 1606 // ForceSendFields is a list of field names (e.g. "FileHash") to 1607 // unconditionally include in API requests. By default, fields with 1608 // empty values are omitted from API requests. However, any non-pointer, 1609 // non-interface field appearing in ForceSendFields will be sent to the 1610 // server regardless of whether the field is empty or not. This may be 1611 // used to include empty fields in Patch requests. 1612 ForceSendFields []string `json:"-"` 1613 1614 // NullFields is a list of field names (e.g. "FileHash") to include in 1615 // API requests with the JSON null value. By default, fields with empty 1616 // values are omitted from API requests. However, any field with an 1617 // empty value appearing in NullFields will be sent to the server as 1618 // null. It is an error if a field in this list has a non-empty value. 1619 // This may be used to include null fields in Patch requests. 1620 NullFields []string `json:"-"` 1621} 1622 1623func (s *FileHashes) MarshalJSON() ([]byte, error) { 1624 type NoMethod FileHashes 1625 raw := NoMethod(*s) 1626 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1627} 1628 1629// Fingerprint: A set of properties that uniquely identify a given 1630// Docker image. 1631type Fingerprint struct { 1632 // V1Name: Required. The layer ID of the final layer in the Docker 1633 // image's v1 1634 // representation. 1635 V1Name string `json:"v1Name,omitempty"` 1636 1637 // V2Blob: Required. The ordered list of v2 blobs that represent a given 1638 // image. 1639 V2Blob []string `json:"v2Blob,omitempty"` 1640 1641 // V2Name: Output only. The name of the image's v2 blobs computed via: 1642 // [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + 1643 // v2_name[N+1]) 1644 // Only the name of the final blob is kept. 1645 V2Name string `json:"v2Name,omitempty"` 1646 1647 // ForceSendFields is a list of field names (e.g. "V1Name") to 1648 // unconditionally include in API requests. By default, fields with 1649 // empty values are omitted from API requests. However, any non-pointer, 1650 // non-interface field appearing in ForceSendFields will be sent to the 1651 // server regardless of whether the field is empty or not. This may be 1652 // used to include empty fields in Patch requests. 1653 ForceSendFields []string `json:"-"` 1654 1655 // NullFields is a list of field names (e.g. "V1Name") to include in API 1656 // requests with the JSON null value. By default, fields with empty 1657 // values are omitted from API requests. However, any field with an 1658 // empty value appearing in NullFields will be sent to the server as 1659 // null. It is an error if a field in this list has a non-empty value. 1660 // This may be used to include null fields in Patch requests. 1661 NullFields []string `json:"-"` 1662} 1663 1664func (s *Fingerprint) MarshalJSON() ([]byte, error) { 1665 type NoMethod Fingerprint 1666 raw := NoMethod(*s) 1667 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1668} 1669 1670// FixableTotalByDigest: Per resource and severity counts of fixable and 1671// total vulnerabilities. 1672type FixableTotalByDigest struct { 1673 // FixableCount: The number of fixable vulnerabilities associated with 1674 // this resource. 1675 FixableCount int64 `json:"fixableCount,omitempty,string"` 1676 1677 // Resource: The affected resource. 1678 Resource *Resource `json:"resource,omitempty"` 1679 1680 // Severity: The severity for this count. SEVERITY_UNSPECIFIED indicates 1681 // total across 1682 // all severities. 1683 // 1684 // Possible values: 1685 // "SEVERITY_UNSPECIFIED" - Unknown. 1686 // "MINIMAL" - Minimal severity. 1687 // "LOW" - Low severity. 1688 // "MEDIUM" - Medium severity. 1689 // "HIGH" - High severity. 1690 // "CRITICAL" - Critical severity. 1691 Severity string `json:"severity,omitempty"` 1692 1693 // TotalCount: The total number of vulnerabilities associated with this 1694 // resource. 1695 TotalCount int64 `json:"totalCount,omitempty,string"` 1696 1697 // ForceSendFields is a list of field names (e.g. "FixableCount") to 1698 // unconditionally include in API requests. By default, fields with 1699 // empty values are omitted from API requests. However, any non-pointer, 1700 // non-interface field appearing in ForceSendFields will be sent to the 1701 // server regardless of whether the field is empty or not. This may be 1702 // used to include empty fields in Patch requests. 1703 ForceSendFields []string `json:"-"` 1704 1705 // NullFields is a list of field names (e.g. "FixableCount") to include 1706 // in API requests with the JSON null value. By default, fields with 1707 // empty values are omitted from API requests. However, any field with 1708 // an empty value appearing in NullFields will be sent to the server as 1709 // null. It is an error if a field in this list has a non-empty value. 1710 // This may be used to include null fields in Patch requests. 1711 NullFields []string `json:"-"` 1712} 1713 1714func (s *FixableTotalByDigest) MarshalJSON() ([]byte, error) { 1715 type NoMethod FixableTotalByDigest 1716 raw := NoMethod(*s) 1717 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1718} 1719 1720// GenericSignedAttestation: An attestation wrapper that uses the 1721// Grafeas `Signature` message. 1722// This attestation must define the `serialized_payload` that the 1723// `signatures` 1724// verify and any metadata necessary to interpret that plaintext. 1725// The 1726// signatures should always be over the `serialized_payload` bytestring. 1727type GenericSignedAttestation struct { 1728 // ContentType: Type (for example schema) of the attestation payload 1729 // that was signed. 1730 // The verifier must ensure that the provided type is one that the 1731 // verifier 1732 // supports, and that the attestation payload is a valid instantiation 1733 // of that 1734 // type (for example by validating a JSON schema). 1735 // 1736 // Possible values: 1737 // "CONTENT_TYPE_UNSPECIFIED" - `ContentType` is not set. 1738 // "SIMPLE_SIGNING_JSON" - Atomic format attestation signature. 1739 // See 1740 // https://github.com/containers/image/blob/8a5d2f82a6e3263290c8e0276 1741 // c3e0f64e77723e7/docs/atomic-signature.md 1742 // The payload extracted in `plaintext` is a JSON blob conforming to 1743 // the 1744 // linked schema. 1745 ContentType string `json:"contentType,omitempty"` 1746 1747 // SerializedPayload: The serialized payload that is verified by one or 1748 // more `signatures`. 1749 // The encoding and semantic meaning of this payload must match what is 1750 // set in 1751 // `content_type`. 1752 SerializedPayload string `json:"serializedPayload,omitempty"` 1753 1754 // Signatures: One or more signatures over `serialized_payload`. 1755 // Verifier implementations 1756 // should consider this attestation message verified if at least 1757 // one 1758 // `signature` verifies `serialized_payload`. See `Signature` in 1759 // common.proto 1760 // for more details on signature structure and verification. 1761 Signatures []*Signature `json:"signatures,omitempty"` 1762 1763 // ForceSendFields is a list of field names (e.g. "ContentType") to 1764 // unconditionally include in API requests. By default, fields with 1765 // empty values are omitted from API requests. However, any non-pointer, 1766 // non-interface field appearing in ForceSendFields will be sent to the 1767 // server regardless of whether the field is empty or not. This may be 1768 // used to include empty fields in Patch requests. 1769 ForceSendFields []string `json:"-"` 1770 1771 // NullFields is a list of field names (e.g. "ContentType") to include 1772 // in API requests with the JSON null value. By default, fields with 1773 // empty values are omitted from API requests. However, any field with 1774 // an empty value appearing in NullFields will be sent to the server as 1775 // null. It is an error if a field in this list has a non-empty value. 1776 // This may be used to include null fields in Patch requests. 1777 NullFields []string `json:"-"` 1778} 1779 1780func (s *GenericSignedAttestation) MarshalJSON() ([]byte, error) { 1781 type NoMethod GenericSignedAttestation 1782 raw := NoMethod(*s) 1783 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1784} 1785 1786// GerritSourceContext: A SourceContext referring to a Gerrit project. 1787type GerritSourceContext struct { 1788 // AliasContext: An alias, which may be a branch or tag. 1789 AliasContext *AliasContext `json:"aliasContext,omitempty"` 1790 1791 // GerritProject: The full project name within the host. Projects may be 1792 // nested, so 1793 // "project/subproject" is a valid project name. The "repo name" is 1794 // the 1795 // hostURI/project. 1796 GerritProject string `json:"gerritProject,omitempty"` 1797 1798 // HostUri: The URI of a running Gerrit instance. 1799 HostUri string `json:"hostUri,omitempty"` 1800 1801 // RevisionId: A revision (commit) ID. 1802 RevisionId string `json:"revisionId,omitempty"` 1803 1804 // ForceSendFields is a list of field names (e.g. "AliasContext") to 1805 // unconditionally include in API requests. By default, fields with 1806 // empty values are omitted from API requests. However, any non-pointer, 1807 // non-interface field appearing in ForceSendFields will be sent to the 1808 // server regardless of whether the field is empty or not. This may be 1809 // used to include empty fields in Patch requests. 1810 ForceSendFields []string `json:"-"` 1811 1812 // NullFields is a list of field names (e.g. "AliasContext") to include 1813 // in API requests with the JSON null value. By default, fields with 1814 // empty values are omitted from API requests. However, any field with 1815 // an empty value appearing in NullFields will be sent to the server as 1816 // null. It is an error if a field in this list has a non-empty value. 1817 // This may be used to include null fields in Patch requests. 1818 NullFields []string `json:"-"` 1819} 1820 1821func (s *GerritSourceContext) MarshalJSON() ([]byte, error) { 1822 type NoMethod GerritSourceContext 1823 raw := NoMethod(*s) 1824 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1825} 1826 1827// GetIamPolicyRequest: Request message for `GetIamPolicy` method. 1828type GetIamPolicyRequest struct { 1829} 1830 1831// GitSourceContext: A GitSourceContext denotes a particular revision in 1832// a third party Git 1833// repository (e.g., GitHub). 1834type GitSourceContext struct { 1835 // RevisionId: Git commit hash. 1836 RevisionId string `json:"revisionId,omitempty"` 1837 1838 // Url: Git repository URL. 1839 Url string `json:"url,omitempty"` 1840 1841 // ForceSendFields is a list of field names (e.g. "RevisionId") to 1842 // unconditionally include in API requests. By default, fields with 1843 // empty values are omitted from API requests. However, any non-pointer, 1844 // non-interface field appearing in ForceSendFields will be sent to the 1845 // server regardless of whether the field is empty or not. This may be 1846 // used to include empty fields in Patch requests. 1847 ForceSendFields []string `json:"-"` 1848 1849 // NullFields is a list of field names (e.g. "RevisionId") to include in 1850 // API requests with the JSON null value. By default, fields with empty 1851 // values are omitted from API requests. However, any field with an 1852 // empty value appearing in NullFields will be sent to the server as 1853 // null. It is an error if a field in this list has a non-empty value. 1854 // This may be used to include null fields in Patch requests. 1855 NullFields []string `json:"-"` 1856} 1857 1858func (s *GitSourceContext) MarshalJSON() ([]byte, error) { 1859 type NoMethod GitSourceContext 1860 raw := NoMethod(*s) 1861 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1862} 1863 1864// GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata: Metadata 1865// for all operations used and required for all operations 1866// that created by Container Analysis Providers 1867type GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata struct { 1868 // CreateTime: Output only. The time this operation was created. 1869 CreateTime string `json:"createTime,omitempty"` 1870 1871 // EndTime: Output only. The time that this operation was marked 1872 // completed or failed. 1873 EndTime string `json:"endTime,omitempty"` 1874 1875 // ForceSendFields is a list of field names (e.g. "CreateTime") to 1876 // unconditionally include in API requests. By default, fields with 1877 // empty values are omitted from API requests. However, any non-pointer, 1878 // non-interface field appearing in ForceSendFields will be sent to the 1879 // server regardless of whether the field is empty or not. This may be 1880 // used to include empty fields in Patch requests. 1881 ForceSendFields []string `json:"-"` 1882 1883 // NullFields is a list of field names (e.g. "CreateTime") to include in 1884 // API requests with the JSON null value. By default, fields with empty 1885 // values are omitted from API requests. However, any field with an 1886 // empty value appearing in NullFields will be sent to the server as 1887 // null. It is an error if a field in this list has a non-empty value. 1888 // This may be used to include null fields in Patch requests. 1889 NullFields []string `json:"-"` 1890} 1891 1892func (s *GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata) MarshalJSON() ([]byte, error) { 1893 type NoMethod GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata 1894 raw := NoMethod(*s) 1895 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1896} 1897 1898// GrafeasV1beta1BuildDetails: Details of a build occurrence. 1899type GrafeasV1beta1BuildDetails struct { 1900 // Provenance: Required. The actual provenance for the build. 1901 Provenance *BuildProvenance `json:"provenance,omitempty"` 1902 1903 // ProvenanceBytes: Serialized JSON representation of the provenance, 1904 // used in generating the 1905 // build signature in the corresponding build note. After verifying 1906 // the 1907 // signature, `provenance_bytes` can be unmarshalled and compared to 1908 // the 1909 // provenance to confirm that it is unchanged. A base64-encoded 1910 // string 1911 // representation of the provenance bytes is used for the signature in 1912 // order 1913 // to interoperate with openssl which expects this format for 1914 // signature 1915 // verification. 1916 // 1917 // The serialized form is captured both to avoid ambiguity in how 1918 // the 1919 // provenance is marshalled to json as well to prevent incompatibilities 1920 // with 1921 // future changes. 1922 ProvenanceBytes string `json:"provenanceBytes,omitempty"` 1923 1924 // ForceSendFields is a list of field names (e.g. "Provenance") to 1925 // unconditionally include in API requests. By default, fields with 1926 // empty values are omitted from API requests. However, any non-pointer, 1927 // non-interface field appearing in ForceSendFields will be sent to the 1928 // server regardless of whether the field is empty or not. This may be 1929 // used to include empty fields in Patch requests. 1930 ForceSendFields []string `json:"-"` 1931 1932 // NullFields is a list of field names (e.g. "Provenance") to include in 1933 // API requests with the JSON null value. By default, fields with empty 1934 // values are omitted from API requests. However, any field with an 1935 // empty value appearing in NullFields will be sent to the server as 1936 // null. It is an error if a field in this list has a non-empty value. 1937 // This may be used to include null fields in Patch requests. 1938 NullFields []string `json:"-"` 1939} 1940 1941func (s *GrafeasV1beta1BuildDetails) MarshalJSON() ([]byte, error) { 1942 type NoMethod GrafeasV1beta1BuildDetails 1943 raw := NoMethod(*s) 1944 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1945} 1946 1947// GrafeasV1beta1DeploymentDetails: Details of a deployment occurrence. 1948type GrafeasV1beta1DeploymentDetails struct { 1949 // Deployment: Required. Deployment history for the resource. 1950 Deployment *Deployment `json:"deployment,omitempty"` 1951 1952 // ForceSendFields is a list of field names (e.g. "Deployment") to 1953 // unconditionally include in API requests. By default, fields with 1954 // empty values are omitted from API requests. However, any non-pointer, 1955 // non-interface field appearing in ForceSendFields will be sent to the 1956 // server regardless of whether the field is empty or not. This may be 1957 // used to include empty fields in Patch requests. 1958 ForceSendFields []string `json:"-"` 1959 1960 // NullFields is a list of field names (e.g. "Deployment") to include in 1961 // API requests with the JSON null value. By default, fields with empty 1962 // values are omitted from API requests. However, any field with an 1963 // empty value appearing in NullFields will be sent to the server as 1964 // null. It is an error if a field in this list has a non-empty value. 1965 // This may be used to include null fields in Patch requests. 1966 NullFields []string `json:"-"` 1967} 1968 1969func (s *GrafeasV1beta1DeploymentDetails) MarshalJSON() ([]byte, error) { 1970 type NoMethod GrafeasV1beta1DeploymentDetails 1971 raw := NoMethod(*s) 1972 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1973} 1974 1975// GrafeasV1beta1DiscoveryDetails: Details of a discovery occurrence. 1976type GrafeasV1beta1DiscoveryDetails struct { 1977 // Discovered: Required. Analysis status for the discovered resource. 1978 Discovered *Discovered `json:"discovered,omitempty"` 1979 1980 // ForceSendFields is a list of field names (e.g. "Discovered") to 1981 // unconditionally include in API requests. By default, fields with 1982 // empty values are omitted from API requests. However, any non-pointer, 1983 // non-interface field appearing in ForceSendFields will be sent to the 1984 // server regardless of whether the field is empty or not. This may be 1985 // used to include empty fields in Patch requests. 1986 ForceSendFields []string `json:"-"` 1987 1988 // NullFields is a list of field names (e.g. "Discovered") to include in 1989 // API requests with the JSON null value. By default, fields with empty 1990 // values are omitted from API requests. However, any field with an 1991 // empty value appearing in NullFields will be sent to the server as 1992 // null. It is an error if a field in this list has a non-empty value. 1993 // This may be used to include null fields in Patch requests. 1994 NullFields []string `json:"-"` 1995} 1996 1997func (s *GrafeasV1beta1DiscoveryDetails) MarshalJSON() ([]byte, error) { 1998 type NoMethod GrafeasV1beta1DiscoveryDetails 1999 raw := NoMethod(*s) 2000 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2001} 2002 2003// GrafeasV1beta1ImageDetails: Details of an image occurrence. 2004type GrafeasV1beta1ImageDetails struct { 2005 // DerivedImage: Required. Immutable. The child image derived from the 2006 // base image. 2007 DerivedImage *Derived `json:"derivedImage,omitempty"` 2008 2009 // ForceSendFields is a list of field names (e.g. "DerivedImage") to 2010 // unconditionally include in API requests. By default, fields with 2011 // empty values are omitted from API requests. However, any non-pointer, 2012 // non-interface field appearing in ForceSendFields will be sent to the 2013 // server regardless of whether the field is empty or not. This may be 2014 // used to include empty fields in Patch requests. 2015 ForceSendFields []string `json:"-"` 2016 2017 // NullFields is a list of field names (e.g. "DerivedImage") to include 2018 // in API requests with the JSON null value. By default, fields with 2019 // empty values are omitted from API requests. However, any field with 2020 // an empty value appearing in NullFields will be sent to the server as 2021 // null. It is an error if a field in this list has a non-empty value. 2022 // This may be used to include null fields in Patch requests. 2023 NullFields []string `json:"-"` 2024} 2025 2026func (s *GrafeasV1beta1ImageDetails) MarshalJSON() ([]byte, error) { 2027 type NoMethod GrafeasV1beta1ImageDetails 2028 raw := NoMethod(*s) 2029 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2030} 2031 2032// GrafeasV1beta1PackageDetails: Details of a package occurrence. 2033type GrafeasV1beta1PackageDetails struct { 2034 // Installation: Required. Where the package was installed. 2035 Installation *Installation `json:"installation,omitempty"` 2036 2037 // ForceSendFields is a list of field names (e.g. "Installation") to 2038 // unconditionally include in API requests. By default, fields with 2039 // empty values are omitted from API requests. However, any non-pointer, 2040 // non-interface field appearing in ForceSendFields will be sent to the 2041 // server regardless of whether the field is empty or not. This may be 2042 // used to include empty fields in Patch requests. 2043 ForceSendFields []string `json:"-"` 2044 2045 // NullFields is a list of field names (e.g. "Installation") to include 2046 // in API requests with the JSON null value. By default, fields with 2047 // empty values are omitted from API requests. However, any field with 2048 // an empty value appearing in NullFields will be sent to the server as 2049 // null. It is an error if a field in this list has a non-empty value. 2050 // This may be used to include null fields in Patch requests. 2051 NullFields []string `json:"-"` 2052} 2053 2054func (s *GrafeasV1beta1PackageDetails) MarshalJSON() ([]byte, error) { 2055 type NoMethod GrafeasV1beta1PackageDetails 2056 raw := NoMethod(*s) 2057 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2058} 2059 2060// GrafeasV1beta1VulnerabilityDetails: Details of a vulnerability 2061// Occurrence. 2062type GrafeasV1beta1VulnerabilityDetails struct { 2063 // CvssScore: Output only. The CVSS score of this vulnerability. CVSS 2064 // score is on a 2065 // scale of 0-10 where 0 indicates low severity and 10 indicates 2066 // high 2067 // severity. 2068 CvssScore float64 `json:"cvssScore,omitempty"` 2069 2070 // EffectiveSeverity: The distro assigned severity for this 2071 // vulnerability when it is 2072 // available, and note provider assigned severity when distro has not 2073 // yet 2074 // assigned a severity for this vulnerability. 2075 // 2076 // Possible values: 2077 // "SEVERITY_UNSPECIFIED" - Unknown. 2078 // "MINIMAL" - Minimal severity. 2079 // "LOW" - Low severity. 2080 // "MEDIUM" - Medium severity. 2081 // "HIGH" - High severity. 2082 // "CRITICAL" - Critical severity. 2083 EffectiveSeverity string `json:"effectiveSeverity,omitempty"` 2084 2085 // LongDescription: Output only. A detailed description of this 2086 // vulnerability. 2087 LongDescription string `json:"longDescription,omitempty"` 2088 2089 // PackageIssue: Required. The set of affected locations and their fixes 2090 // (if available) 2091 // within the associated resource. 2092 PackageIssue []*PackageIssue `json:"packageIssue,omitempty"` 2093 2094 // RelatedUrls: Output only. URLs related to this vulnerability. 2095 RelatedUrls []*RelatedUrl `json:"relatedUrls,omitempty"` 2096 2097 // Severity: Output only. The note provider assigned Severity of the 2098 // vulnerability. 2099 // 2100 // Possible values: 2101 // "SEVERITY_UNSPECIFIED" - Unknown. 2102 // "MINIMAL" - Minimal severity. 2103 // "LOW" - Low severity. 2104 // "MEDIUM" - Medium severity. 2105 // "HIGH" - High severity. 2106 // "CRITICAL" - Critical severity. 2107 Severity string `json:"severity,omitempty"` 2108 2109 // ShortDescription: Output only. A one sentence description of this 2110 // vulnerability. 2111 ShortDescription string `json:"shortDescription,omitempty"` 2112 2113 // Type: The type of package; whether native or non native(ruby gems, 2114 // node.js 2115 // packages etc) 2116 Type string `json:"type,omitempty"` 2117 2118 // ForceSendFields is a list of field names (e.g. "CvssScore") to 2119 // unconditionally include in API requests. By default, fields with 2120 // empty values are omitted from API requests. However, any non-pointer, 2121 // non-interface field appearing in ForceSendFields will be sent to the 2122 // server regardless of whether the field is empty or not. This may be 2123 // used to include empty fields in Patch requests. 2124 ForceSendFields []string `json:"-"` 2125 2126 // NullFields is a list of field names (e.g. "CvssScore") to include in 2127 // API requests with the JSON null value. By default, fields with empty 2128 // values are omitted from API requests. However, any field with an 2129 // empty value appearing in NullFields will be sent to the server as 2130 // null. It is an error if a field in this list has a non-empty value. 2131 // This may be used to include null fields in Patch requests. 2132 NullFields []string `json:"-"` 2133} 2134 2135func (s *GrafeasV1beta1VulnerabilityDetails) MarshalJSON() ([]byte, error) { 2136 type NoMethod GrafeasV1beta1VulnerabilityDetails 2137 raw := NoMethod(*s) 2138 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2139} 2140 2141func (s *GrafeasV1beta1VulnerabilityDetails) UnmarshalJSON(data []byte) error { 2142 type NoMethod GrafeasV1beta1VulnerabilityDetails 2143 var s1 struct { 2144 CvssScore gensupport.JSONFloat64 `json:"cvssScore"` 2145 *NoMethod 2146 } 2147 s1.NoMethod = (*NoMethod)(s) 2148 if err := json.Unmarshal(data, &s1); err != nil { 2149 return err 2150 } 2151 s.CvssScore = float64(s1.CvssScore) 2152 return nil 2153} 2154 2155// Hash: Container message for hash values. 2156type Hash struct { 2157 // Type: Required. The type of hash that was performed. 2158 // 2159 // Possible values: 2160 // "HASH_TYPE_UNSPECIFIED" - Unknown. 2161 // "SHA256" - A SHA-256 hash. 2162 Type string `json:"type,omitempty"` 2163 2164 // Value: Required. The hash value. 2165 Value string `json:"value,omitempty"` 2166 2167 // ForceSendFields is a list of field names (e.g. "Type") to 2168 // unconditionally include in API requests. By default, fields with 2169 // empty values are omitted from API requests. However, any non-pointer, 2170 // non-interface field appearing in ForceSendFields will be sent to the 2171 // server regardless of whether the field is empty or not. This may be 2172 // used to include empty fields in Patch requests. 2173 ForceSendFields []string `json:"-"` 2174 2175 // NullFields is a list of field names (e.g. "Type") to include in API 2176 // requests with the JSON null value. By default, fields with empty 2177 // values are omitted from API requests. However, any field with an 2178 // empty value appearing in NullFields will be sent to the server as 2179 // null. It is an error if a field in this list has a non-empty value. 2180 // This may be used to include null fields in Patch requests. 2181 NullFields []string `json:"-"` 2182} 2183 2184func (s *Hash) MarshalJSON() ([]byte, error) { 2185 type NoMethod Hash 2186 raw := NoMethod(*s) 2187 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2188} 2189 2190// Hint: This submessage provides human-readable hints about the purpose 2191// of the 2192// authority. Because the name of a note acts as its resource reference, 2193// it is 2194// important to disambiguate the canonical name of the Note (which might 2195// be a 2196// UUID for security purposes) from "readable" names more suitable for 2197// debug 2198// output. Note that these hints should not be used to look up 2199// authorities in 2200// security sensitive contexts, such as when looking up attestations 2201// to 2202// verify. 2203type Hint struct { 2204 // HumanReadableName: Required. The human readable name of this 2205 // attestation authority, for 2206 // example "qa". 2207 HumanReadableName string `json:"humanReadableName,omitempty"` 2208 2209 // ForceSendFields is a list of field names (e.g. "HumanReadableName") 2210 // to unconditionally include in API requests. By default, fields with 2211 // empty values are omitted from API requests. However, any non-pointer, 2212 // non-interface field appearing in ForceSendFields will be sent to the 2213 // server regardless of whether the field is empty or not. This may be 2214 // used to include empty fields in Patch requests. 2215 ForceSendFields []string `json:"-"` 2216 2217 // NullFields is a list of field names (e.g. "HumanReadableName") to 2218 // include in API requests with the JSON null value. By default, fields 2219 // with empty values are omitted from API requests. However, any field 2220 // with an empty value appearing in NullFields will be sent to the 2221 // server as null. It is an error if a field in this list has a 2222 // non-empty value. This may be used to include null fields in Patch 2223 // requests. 2224 NullFields []string `json:"-"` 2225} 2226 2227func (s *Hint) MarshalJSON() ([]byte, error) { 2228 type NoMethod Hint 2229 raw := NoMethod(*s) 2230 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2231} 2232 2233// Installation: This represents how a particular software package may 2234// be installed on a 2235// system. 2236type Installation struct { 2237 // Location: Required. All of the places within the filesystem versions 2238 // of this package 2239 // have been found. 2240 Location []*Location `json:"location,omitempty"` 2241 2242 // Name: Output only. The name of the installed package. 2243 Name string `json:"name,omitempty"` 2244 2245 // ForceSendFields is a list of field names (e.g. "Location") to 2246 // unconditionally include in API requests. By default, fields with 2247 // empty values are omitted from API requests. However, any non-pointer, 2248 // non-interface field appearing in ForceSendFields will be sent to the 2249 // server regardless of whether the field is empty or not. This may be 2250 // used to include empty fields in Patch requests. 2251 ForceSendFields []string `json:"-"` 2252 2253 // NullFields is a list of field names (e.g. "Location") to include in 2254 // API requests with the JSON null value. By default, fields with empty 2255 // values are omitted from API requests. However, any field with an 2256 // empty value appearing in NullFields will be sent to the server as 2257 // null. It is an error if a field in this list has a non-empty value. 2258 // This may be used to include null fields in Patch requests. 2259 NullFields []string `json:"-"` 2260} 2261 2262func (s *Installation) MarshalJSON() ([]byte, error) { 2263 type NoMethod Installation 2264 raw := NoMethod(*s) 2265 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2266} 2267 2268type KnowledgeBase struct { 2269 // Name: The KB name (generally of the form KB[0-9]+ i.e. KB123456). 2270 Name string `json:"name,omitempty"` 2271 2272 // Url: A link to the KB in the Windows update catalog 2273 // - 2274 // https://www.catalog.update.microsoft.com/ 2275 Url string `json:"url,omitempty"` 2276 2277 // ForceSendFields is a list of field names (e.g. "Name") to 2278 // unconditionally include in API requests. By default, fields with 2279 // empty values are omitted from API requests. However, any non-pointer, 2280 // non-interface field appearing in ForceSendFields will be sent to the 2281 // server regardless of whether the field is empty or not. This may be 2282 // used to include empty fields in Patch requests. 2283 ForceSendFields []string `json:"-"` 2284 2285 // NullFields is a list of field names (e.g. "Name") to include in API 2286 // requests with the JSON null value. By default, fields with empty 2287 // values are omitted from API requests. However, any field with an 2288 // empty value appearing in NullFields will be sent to the server as 2289 // null. It is an error if a field in this list has a non-empty value. 2290 // This may be used to include null fields in Patch requests. 2291 NullFields []string `json:"-"` 2292} 2293 2294func (s *KnowledgeBase) MarshalJSON() ([]byte, error) { 2295 type NoMethod KnowledgeBase 2296 raw := NoMethod(*s) 2297 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2298} 2299 2300// Layer: Layer holds metadata specific to a layer of a Docker image. 2301type Layer struct { 2302 // Arguments: The recovered arguments to the Dockerfile directive. 2303 Arguments string `json:"arguments,omitempty"` 2304 2305 // Directive: Required. The recovered Dockerfile directive used to 2306 // construct this layer. 2307 // 2308 // Possible values: 2309 // "DIRECTIVE_UNSPECIFIED" - Default value for unsupported/missing 2310 // directive. 2311 // "MAINTAINER" - https://docs.docker.com/engine/reference/builder/ 2312 // "RUN" - https://docs.docker.com/engine/reference/builder/ 2313 // "CMD" - https://docs.docker.com/engine/reference/builder/ 2314 // "LABEL" - https://docs.docker.com/engine/reference/builder/ 2315 // "EXPOSE" - https://docs.docker.com/engine/reference/builder/ 2316 // "ENV" - https://docs.docker.com/engine/reference/builder/ 2317 // "ADD" - https://docs.docker.com/engine/reference/builder/ 2318 // "COPY" - https://docs.docker.com/engine/reference/builder/ 2319 // "ENTRYPOINT" - https://docs.docker.com/engine/reference/builder/ 2320 // "VOLUME" - https://docs.docker.com/engine/reference/builder/ 2321 // "USER" - https://docs.docker.com/engine/reference/builder/ 2322 // "WORKDIR" - https://docs.docker.com/engine/reference/builder/ 2323 // "ARG" - https://docs.docker.com/engine/reference/builder/ 2324 // "ONBUILD" - https://docs.docker.com/engine/reference/builder/ 2325 // "STOPSIGNAL" - https://docs.docker.com/engine/reference/builder/ 2326 // "HEALTHCHECK" - https://docs.docker.com/engine/reference/builder/ 2327 // "SHELL" - https://docs.docker.com/engine/reference/builder/ 2328 Directive string `json:"directive,omitempty"` 2329 2330 // ForceSendFields is a list of field names (e.g. "Arguments") to 2331 // unconditionally include in API requests. By default, fields with 2332 // empty values are omitted from API requests. However, any non-pointer, 2333 // non-interface field appearing in ForceSendFields will be sent to the 2334 // server regardless of whether the field is empty or not. This may be 2335 // used to include empty fields in Patch requests. 2336 ForceSendFields []string `json:"-"` 2337 2338 // NullFields is a list of field names (e.g. "Arguments") to include in 2339 // API requests with the JSON null value. By default, fields with empty 2340 // values are omitted from API requests. However, any field with an 2341 // empty value appearing in NullFields will be sent to the server as 2342 // null. It is an error if a field in this list has a non-empty value. 2343 // This may be used to include null fields in Patch requests. 2344 NullFields []string `json:"-"` 2345} 2346 2347func (s *Layer) MarshalJSON() ([]byte, error) { 2348 type NoMethod Layer 2349 raw := NoMethod(*s) 2350 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2351} 2352 2353// ListNoteOccurrencesResponse: Response for listing occurrences for a 2354// note. 2355type ListNoteOccurrencesResponse struct { 2356 // NextPageToken: Token to provide to skip to a particular spot in the 2357 // list. 2358 NextPageToken string `json:"nextPageToken,omitempty"` 2359 2360 // Occurrences: The occurrences attached to the specified note. 2361 Occurrences []*Occurrence `json:"occurrences,omitempty"` 2362 2363 // ServerResponse contains the HTTP response code and headers from the 2364 // server. 2365 googleapi.ServerResponse `json:"-"` 2366 2367 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 2368 // unconditionally include in API requests. By default, fields with 2369 // empty values are omitted from API requests. However, any non-pointer, 2370 // non-interface field appearing in ForceSendFields will be sent to the 2371 // server regardless of whether the field is empty or not. This may be 2372 // used to include empty fields in Patch requests. 2373 ForceSendFields []string `json:"-"` 2374 2375 // NullFields is a list of field names (e.g. "NextPageToken") to include 2376 // in API requests with the JSON null value. By default, fields with 2377 // empty values are omitted from API requests. However, any field with 2378 // an empty value appearing in NullFields will be sent to the server as 2379 // null. It is an error if a field in this list has a non-empty value. 2380 // This may be used to include null fields in Patch requests. 2381 NullFields []string `json:"-"` 2382} 2383 2384func (s *ListNoteOccurrencesResponse) MarshalJSON() ([]byte, error) { 2385 type NoMethod ListNoteOccurrencesResponse 2386 raw := NoMethod(*s) 2387 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2388} 2389 2390// ListNotesResponse: Response for listing notes. 2391type ListNotesResponse struct { 2392 // NextPageToken: The next pagination token in the list response. It 2393 // should be used as 2394 // `page_token` for the following request. An empty value means no 2395 // more 2396 // results. 2397 NextPageToken string `json:"nextPageToken,omitempty"` 2398 2399 // Notes: The notes requested. 2400 Notes []*Note `json:"notes,omitempty"` 2401 2402 // ServerResponse contains the HTTP response code and headers from the 2403 // server. 2404 googleapi.ServerResponse `json:"-"` 2405 2406 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 2407 // unconditionally include in API requests. By default, fields with 2408 // empty values are omitted from API requests. However, any non-pointer, 2409 // non-interface field appearing in ForceSendFields will be sent to the 2410 // server regardless of whether the field is empty or not. This may be 2411 // used to include empty fields in Patch requests. 2412 ForceSendFields []string `json:"-"` 2413 2414 // NullFields is a list of field names (e.g. "NextPageToken") to include 2415 // in API requests with the JSON null value. By default, fields with 2416 // empty values are omitted from API requests. However, any field with 2417 // an empty value appearing in NullFields will be sent to the server as 2418 // null. It is an error if a field in this list has a non-empty value. 2419 // This may be used to include null fields in Patch requests. 2420 NullFields []string `json:"-"` 2421} 2422 2423func (s *ListNotesResponse) MarshalJSON() ([]byte, error) { 2424 type NoMethod ListNotesResponse 2425 raw := NoMethod(*s) 2426 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2427} 2428 2429// ListOccurrencesResponse: Response for listing occurrences. 2430type ListOccurrencesResponse struct { 2431 // NextPageToken: The next pagination token in the list response. It 2432 // should be used as 2433 // `page_token` for the following request. An empty value means no 2434 // more 2435 // results. 2436 NextPageToken string `json:"nextPageToken,omitempty"` 2437 2438 // Occurrences: The occurrences requested. 2439 Occurrences []*Occurrence `json:"occurrences,omitempty"` 2440 2441 // ServerResponse contains the HTTP response code and headers from the 2442 // server. 2443 googleapi.ServerResponse `json:"-"` 2444 2445 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 2446 // unconditionally include in API requests. By default, fields with 2447 // empty values are omitted from API requests. However, any non-pointer, 2448 // non-interface field appearing in ForceSendFields will be sent to the 2449 // server regardless of whether the field is empty or not. This may be 2450 // used to include empty fields in Patch requests. 2451 ForceSendFields []string `json:"-"` 2452 2453 // NullFields is a list of field names (e.g. "NextPageToken") to include 2454 // in API requests with the JSON null value. By default, fields with 2455 // empty values are omitted from API requests. However, any field with 2456 // an empty value appearing in NullFields will be sent to the server as 2457 // null. It is an error if a field in this list has a non-empty value. 2458 // This may be used to include null fields in Patch requests. 2459 NullFields []string `json:"-"` 2460} 2461 2462func (s *ListOccurrencesResponse) MarshalJSON() ([]byte, error) { 2463 type NoMethod ListOccurrencesResponse 2464 raw := NoMethod(*s) 2465 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2466} 2467 2468// ListScanConfigsResponse: Response for listing scan configurations. 2469type ListScanConfigsResponse struct { 2470 // NextPageToken: The next pagination token in the list response. It 2471 // should be used as 2472 // `page_token` for the following request. An empty value means no 2473 // more 2474 // results. 2475 NextPageToken string `json:"nextPageToken,omitempty"` 2476 2477 // ScanConfigs: The scan configurations requested. 2478 ScanConfigs []*ScanConfig `json:"scanConfigs,omitempty"` 2479 2480 // ServerResponse contains the HTTP response code and headers from the 2481 // server. 2482 googleapi.ServerResponse `json:"-"` 2483 2484 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 2485 // unconditionally include in API requests. By default, fields with 2486 // empty values are omitted from API requests. However, any non-pointer, 2487 // non-interface field appearing in ForceSendFields will be sent to the 2488 // server regardless of whether the field is empty or not. This may be 2489 // used to include empty fields in Patch requests. 2490 ForceSendFields []string `json:"-"` 2491 2492 // NullFields is a list of field names (e.g. "NextPageToken") to include 2493 // in API requests with the JSON null value. By default, fields with 2494 // empty values are omitted from API requests. However, any field with 2495 // an empty value appearing in NullFields will be sent to the server as 2496 // null. It is an error if a field in this list has a non-empty value. 2497 // This may be used to include null fields in Patch requests. 2498 NullFields []string `json:"-"` 2499} 2500 2501func (s *ListScanConfigsResponse) MarshalJSON() ([]byte, error) { 2502 type NoMethod ListScanConfigsResponse 2503 raw := NoMethod(*s) 2504 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2505} 2506 2507// Location: An occurrence of a particular package installation found 2508// within a system's 2509// filesystem. E.g., glibc was found in `/var/lib/dpkg/status`. 2510type Location struct { 2511 // CpeUri: Required. The CPE URI in [CPE 2512 // format](https://cpe.mitre.org/specification/) 2513 // denoting the package manager version distributing a package. 2514 CpeUri string `json:"cpeUri,omitempty"` 2515 2516 // Path: The path from which we gathered that this package/version is 2517 // installed. 2518 Path string `json:"path,omitempty"` 2519 2520 // Version: The version installed at this location. 2521 Version *Version `json:"version,omitempty"` 2522 2523 // ForceSendFields is a list of field names (e.g. "CpeUri") to 2524 // unconditionally include in API requests. By default, fields with 2525 // empty values are omitted from API requests. However, any non-pointer, 2526 // non-interface field appearing in ForceSendFields will be sent to the 2527 // server regardless of whether the field is empty or not. This may be 2528 // used to include empty fields in Patch requests. 2529 ForceSendFields []string `json:"-"` 2530 2531 // NullFields is a list of field names (e.g. "CpeUri") to include in API 2532 // requests with the JSON null value. By default, fields with empty 2533 // values are omitted from API requests. However, any field with an 2534 // empty value appearing in NullFields will be sent to the server as 2535 // null. It is an error if a field in this list has a non-empty value. 2536 // This may be used to include null fields in Patch requests. 2537 NullFields []string `json:"-"` 2538} 2539 2540func (s *Location) MarshalJSON() ([]byte, error) { 2541 type NoMethod Location 2542 raw := NoMethod(*s) 2543 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2544} 2545 2546// Note: A type of analysis that can be done for a resource. 2547type Note struct { 2548 // AttestationAuthority: A note describing an attestation role. 2549 AttestationAuthority *Authority `json:"attestationAuthority,omitempty"` 2550 2551 // BaseImage: A note describing a base image. 2552 BaseImage *Basis `json:"baseImage,omitempty"` 2553 2554 // Build: A note describing build provenance for a verifiable build. 2555 Build *Build `json:"build,omitempty"` 2556 2557 // CreateTime: Output only. The time this note was created. This field 2558 // can be used as a 2559 // filter in list requests. 2560 CreateTime string `json:"createTime,omitempty"` 2561 2562 // Deployable: A note describing something that can be deployed. 2563 Deployable *Deployable `json:"deployable,omitempty"` 2564 2565 // Discovery: A note describing the initial analysis of a resource. 2566 Discovery *Discovery `json:"discovery,omitempty"` 2567 2568 // ExpirationTime: Time of expiration for this note. Empty if note does 2569 // not expire. 2570 ExpirationTime string `json:"expirationTime,omitempty"` 2571 2572 // Kind: Output only. The type of analysis. This field can be used as a 2573 // filter in 2574 // list requests. 2575 // 2576 // Possible values: 2577 // "NOTE_KIND_UNSPECIFIED" - Unknown. 2578 // "VULNERABILITY" - The note and occurrence represent a package 2579 // vulnerability. 2580 // "BUILD" - The note and occurrence assert build provenance. 2581 // "IMAGE" - This represents an image basis relationship. 2582 // "PACKAGE" - This represents a package installed via a package 2583 // manager. 2584 // "DEPLOYMENT" - The note and occurrence track deployment events. 2585 // "DISCOVERY" - The note and occurrence track the initial discovery 2586 // status of a resource. 2587 // "ATTESTATION" - This represents a logical "role" that can attest to 2588 // artifacts. 2589 Kind string `json:"kind,omitempty"` 2590 2591 // LongDescription: A detailed description of this note. 2592 LongDescription string `json:"longDescription,omitempty"` 2593 2594 // Name: Output only. The name of the note in the form 2595 // of 2596 // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. 2597 Name string `json:"name,omitempty"` 2598 2599 // Package: A note describing a package hosted by various package 2600 // managers. 2601 Package *Package `json:"package,omitempty"` 2602 2603 // RelatedNoteNames: Other notes related to this note. 2604 RelatedNoteNames []string `json:"relatedNoteNames,omitempty"` 2605 2606 // RelatedUrl: URLs associated with this note. 2607 RelatedUrl []*RelatedUrl `json:"relatedUrl,omitempty"` 2608 2609 // ShortDescription: A one sentence description of this note. 2610 ShortDescription string `json:"shortDescription,omitempty"` 2611 2612 // UpdateTime: Output only. The time this note was last updated. This 2613 // field can be used as 2614 // a filter in list requests. 2615 UpdateTime string `json:"updateTime,omitempty"` 2616 2617 // Vulnerability: A note describing a package vulnerability. 2618 Vulnerability *Vulnerability `json:"vulnerability,omitempty"` 2619 2620 // ServerResponse contains the HTTP response code and headers from the 2621 // server. 2622 googleapi.ServerResponse `json:"-"` 2623 2624 // ForceSendFields is a list of field names (e.g. 2625 // "AttestationAuthority") to unconditionally include in API requests. 2626 // By default, fields with empty values are omitted from API requests. 2627 // However, any non-pointer, non-interface field appearing in 2628 // ForceSendFields will be sent to the server regardless of whether the 2629 // field is empty or not. This may be used to include empty fields in 2630 // Patch requests. 2631 ForceSendFields []string `json:"-"` 2632 2633 // NullFields is a list of field names (e.g. "AttestationAuthority") to 2634 // include in API requests with the JSON null value. By default, fields 2635 // with empty values are omitted from API requests. However, any field 2636 // with an empty value appearing in NullFields will be sent to the 2637 // server as null. It is an error if a field in this list has a 2638 // non-empty value. This may be used to include null fields in Patch 2639 // requests. 2640 NullFields []string `json:"-"` 2641} 2642 2643func (s *Note) MarshalJSON() ([]byte, error) { 2644 type NoMethod Note 2645 raw := NoMethod(*s) 2646 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2647} 2648 2649// Occurrence: An instance of an analysis type that has been found on a 2650// resource. 2651type Occurrence struct { 2652 // Attestation: Describes an attestation of an artifact. 2653 Attestation *Details `json:"attestation,omitempty"` 2654 2655 // Build: Describes a verifiable build. 2656 Build *GrafeasV1beta1BuildDetails `json:"build,omitempty"` 2657 2658 // CreateTime: Output only. The time this occurrence was created. 2659 CreateTime string `json:"createTime,omitempty"` 2660 2661 // Deployment: Describes the deployment of an artifact on a runtime. 2662 Deployment *GrafeasV1beta1DeploymentDetails `json:"deployment,omitempty"` 2663 2664 // DerivedImage: Describes how this resource derives from the basis in 2665 // the associated 2666 // note. 2667 DerivedImage *GrafeasV1beta1ImageDetails `json:"derivedImage,omitempty"` 2668 2669 // Discovered: Describes when a resource was discovered. 2670 Discovered *GrafeasV1beta1DiscoveryDetails `json:"discovered,omitempty"` 2671 2672 // Installation: Describes the installation of a package on the linked 2673 // resource. 2674 Installation *GrafeasV1beta1PackageDetails `json:"installation,omitempty"` 2675 2676 // Kind: Output only. This explicitly denotes which of the occurrence 2677 // details are 2678 // specified. This field can be used as a filter in list requests. 2679 // 2680 // Possible values: 2681 // "NOTE_KIND_UNSPECIFIED" - Unknown. 2682 // "VULNERABILITY" - The note and occurrence represent a package 2683 // vulnerability. 2684 // "BUILD" - The note and occurrence assert build provenance. 2685 // "IMAGE" - This represents an image basis relationship. 2686 // "PACKAGE" - This represents a package installed via a package 2687 // manager. 2688 // "DEPLOYMENT" - The note and occurrence track deployment events. 2689 // "DISCOVERY" - The note and occurrence track the initial discovery 2690 // status of a resource. 2691 // "ATTESTATION" - This represents a logical "role" that can attest to 2692 // artifacts. 2693 Kind string `json:"kind,omitempty"` 2694 2695 // Name: Output only. The name of the occurrence in the form 2696 // of 2697 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. 2698 Name string `json:"name,omitempty"` 2699 2700 // NoteName: Required. Immutable. The analysis note associated with this 2701 // occurrence, in 2702 // the form of `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. This field can 2703 // be 2704 // used as a filter in list requests. 2705 NoteName string `json:"noteName,omitempty"` 2706 2707 // Remediation: A description of actions that can be taken to remedy the 2708 // note. 2709 Remediation string `json:"remediation,omitempty"` 2710 2711 // Resource: Required. Immutable. The resource for which the occurrence 2712 // applies. 2713 Resource *Resource `json:"resource,omitempty"` 2714 2715 // UpdateTime: Output only. The time this occurrence was last updated. 2716 UpdateTime string `json:"updateTime,omitempty"` 2717 2718 // Vulnerability: Describes a security vulnerability. 2719 Vulnerability *GrafeasV1beta1VulnerabilityDetails `json:"vulnerability,omitempty"` 2720 2721 // ServerResponse contains the HTTP response code and headers from the 2722 // server. 2723 googleapi.ServerResponse `json:"-"` 2724 2725 // ForceSendFields is a list of field names (e.g. "Attestation") to 2726 // unconditionally include in API requests. By default, fields with 2727 // empty values are omitted from API requests. However, any non-pointer, 2728 // non-interface field appearing in ForceSendFields will be sent to the 2729 // server regardless of whether the field is empty or not. This may be 2730 // used to include empty fields in Patch requests. 2731 ForceSendFields []string `json:"-"` 2732 2733 // NullFields is a list of field names (e.g. "Attestation") to include 2734 // in API requests with the JSON null value. By default, fields with 2735 // empty values are omitted from API requests. However, any field with 2736 // an empty value appearing in NullFields will be sent to the server as 2737 // null. It is an error if a field in this list has a non-empty value. 2738 // This may be used to include null fields in Patch requests. 2739 NullFields []string `json:"-"` 2740} 2741 2742func (s *Occurrence) MarshalJSON() ([]byte, error) { 2743 type NoMethod Occurrence 2744 raw := NoMethod(*s) 2745 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2746} 2747 2748// Package: This represents a particular package that is distributed 2749// over various 2750// channels. E.g., glibc (aka libc6) is distributed by many, at 2751// various 2752// versions. 2753type Package struct { 2754 // Distribution: The various channels by which a package is distributed. 2755 Distribution []*Distribution `json:"distribution,omitempty"` 2756 2757 // Name: Required. Immutable. The name of the package. 2758 Name string `json:"name,omitempty"` 2759 2760 // ForceSendFields is a list of field names (e.g. "Distribution") to 2761 // unconditionally include in API requests. By default, fields with 2762 // empty values are omitted from API requests. However, any non-pointer, 2763 // non-interface field appearing in ForceSendFields will be sent to the 2764 // server regardless of whether the field is empty or not. This may be 2765 // used to include empty fields in Patch requests. 2766 ForceSendFields []string `json:"-"` 2767 2768 // NullFields is a list of field names (e.g. "Distribution") to include 2769 // in API requests with the JSON null value. By default, fields with 2770 // empty values are omitted from API requests. However, any field with 2771 // an empty value appearing in NullFields will be sent to the server as 2772 // null. It is an error if a field in this list has a non-empty value. 2773 // This may be used to include null fields in Patch requests. 2774 NullFields []string `json:"-"` 2775} 2776 2777func (s *Package) MarshalJSON() ([]byte, error) { 2778 type NoMethod Package 2779 raw := NoMethod(*s) 2780 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2781} 2782 2783// PackageIssue: This message wraps a location affected by a 2784// vulnerability and its 2785// associated fix (if one is available). 2786type PackageIssue struct { 2787 // AffectedLocation: Required. The location of the vulnerability. 2788 AffectedLocation *VulnerabilityLocation `json:"affectedLocation,omitempty"` 2789 2790 // FixedLocation: The location of the available fix for vulnerability. 2791 FixedLocation *VulnerabilityLocation `json:"fixedLocation,omitempty"` 2792 2793 // SeverityName: Deprecated, use Details.effective_severity instead 2794 // The severity (e.g., distro assigned severity) for this vulnerability. 2795 SeverityName string `json:"severityName,omitempty"` 2796 2797 // ForceSendFields is a list of field names (e.g. "AffectedLocation") to 2798 // unconditionally include in API requests. By default, fields with 2799 // empty values are omitted from API requests. However, any non-pointer, 2800 // non-interface field appearing in ForceSendFields will be sent to the 2801 // server regardless of whether the field is empty or not. This may be 2802 // used to include empty fields in Patch requests. 2803 ForceSendFields []string `json:"-"` 2804 2805 // NullFields is a list of field names (e.g. "AffectedLocation") to 2806 // include in API requests with the JSON null value. By default, fields 2807 // with empty values are omitted from API requests. However, any field 2808 // with an empty value appearing in NullFields will be sent to the 2809 // server as null. It is an error if a field in this list has a 2810 // non-empty value. This may be used to include null fields in Patch 2811 // requests. 2812 NullFields []string `json:"-"` 2813} 2814 2815func (s *PackageIssue) MarshalJSON() ([]byte, error) { 2816 type NoMethod PackageIssue 2817 raw := NoMethod(*s) 2818 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2819} 2820 2821// PgpSignedAttestation: An attestation wrapper with a PGP-compatible 2822// signature. This message only 2823// supports `ATTACHED` signatures, where the payload that is signed is 2824// included 2825// alongside the signature itself in the same file. 2826type PgpSignedAttestation struct { 2827 // ContentType: Type (for example schema) of the attestation payload 2828 // that was signed. 2829 // The verifier must ensure that the provided type is one that the 2830 // verifier 2831 // supports, and that the attestation payload is a valid instantiation 2832 // of that 2833 // type (for example by validating a JSON schema). 2834 // 2835 // Possible values: 2836 // "CONTENT_TYPE_UNSPECIFIED" - `ContentType` is not set. 2837 // "SIMPLE_SIGNING_JSON" - Atomic format attestation signature. 2838 // See 2839 // https://github.com/containers/image/blob/8a5d2f82a6e3263290c8e0276 2840 // c3e0f64e77723e7/docs/atomic-signature.md 2841 // The payload extracted from `signature` is a JSON blob conforming to 2842 // the 2843 // linked schema. 2844 ContentType string `json:"contentType,omitempty"` 2845 2846 // PgpKeyId: The cryptographic fingerprint of the key used to generate 2847 // the signature, 2848 // as output by, e.g. `gpg --list-keys`. This should be the version 4, 2849 // full 2850 // 160-bit fingerprint, expressed as a 40 character hexidecimal string. 2851 // See 2852 // https://tools.ietf.org/html/rfc4880#section-12.2 for 2853 // details. 2854 // Implementations may choose to acknowledge "LONG", "SHORT", or 2855 // other 2856 // abbreviated key IDs, but only the full fingerprint is guaranteed to 2857 // work. 2858 // In gpg, the full fingerprint can be retrieved from the `fpr` 2859 // field 2860 // returned when calling --list-keys with --with-colons. For 2861 // example: 2862 // ``` 2863 // gpg --with-colons --with-fingerprint --force-v4-certs \ 2864 // --list-keys 2865 // attester@example.com 2866 // tru::1:1513631572:0:3:1:5 2867 // pub:...<SNIP>... 2868 // fpr::: 2869 // ::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB: 2870 // ``` 2871 // Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`. 2872 PgpKeyId string `json:"pgpKeyId,omitempty"` 2873 2874 // Signature: Required. The raw content of the signature, as output by 2875 // GNU Privacy Guard 2876 // (GPG) or equivalent. Since this message only supports attached 2877 // signatures, 2878 // the payload that was signed must be attached. While the signature 2879 // format 2880 // supported is dependent on the verification implementation, currently 2881 // only 2882 // ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather 2883 // than 2884 // `--clearsign` to gpg) are supported. Concretely, `gpg --sign 2885 // --armor 2886 // --output=signature.gpg payload.json` will create the signature 2887 // content 2888 // expected in this field in `signature.gpg` for the 2889 // `payload.json` 2890 // attestation payload. 2891 Signature string `json:"signature,omitempty"` 2892 2893 // ForceSendFields is a list of field names (e.g. "ContentType") to 2894 // unconditionally include in API requests. By default, fields with 2895 // empty values are omitted from API requests. However, any non-pointer, 2896 // non-interface field appearing in ForceSendFields will be sent to the 2897 // server regardless of whether the field is empty or not. This may be 2898 // used to include empty fields in Patch requests. 2899 ForceSendFields []string `json:"-"` 2900 2901 // NullFields is a list of field names (e.g. "ContentType") to include 2902 // in API requests with the JSON null value. By default, fields with 2903 // empty values are omitted from API requests. However, any field with 2904 // an empty value appearing in NullFields will be sent to the server as 2905 // null. It is an error if a field in this list has a non-empty value. 2906 // This may be used to include null fields in Patch requests. 2907 NullFields []string `json:"-"` 2908} 2909 2910func (s *PgpSignedAttestation) MarshalJSON() ([]byte, error) { 2911 type NoMethod PgpSignedAttestation 2912 raw := NoMethod(*s) 2913 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2914} 2915 2916// Policy: Defines an Identity and Access Management (IAM) policy. It is 2917// used to 2918// specify access control policies for Cloud Platform resources. 2919// 2920// 2921// A `Policy` consists of a list of `bindings`. A `binding` binds a list 2922// of 2923// `members` to a `role`, where the members can be user accounts, Google 2924// groups, 2925// Google domains, and service accounts. A `role` is a named list of 2926// permissions 2927// defined by IAM. 2928// 2929// **JSON Example** 2930// 2931// { 2932// "bindings": [ 2933// { 2934// "role": "roles/owner", 2935// "members": [ 2936// "user:mike@example.com", 2937// "group:admins@example.com", 2938// "domain:google.com", 2939// 2940// "serviceAccount:my-other-app@appspot.gserviceaccount.com" 2941// ] 2942// }, 2943// { 2944// "role": "roles/viewer", 2945// "members": ["user:sean@example.com"] 2946// } 2947// ] 2948// } 2949// 2950// **YAML Example** 2951// 2952// bindings: 2953// - members: 2954// - user:mike@example.com 2955// - group:admins@example.com 2956// - domain:google.com 2957// - serviceAccount:my-other-app@appspot.gserviceaccount.com 2958// role: roles/owner 2959// - members: 2960// - user:sean@example.com 2961// role: roles/viewer 2962// 2963// 2964// For a description of IAM and its features, see the 2965// [IAM developer's guide](https://cloud.google.com/iam/docs). 2966type Policy struct { 2967 // AuditConfigs: Specifies cloud audit logging configuration for this 2968 // policy. 2969 AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"` 2970 2971 // Bindings: Associates a list of `members` to a `role`. 2972 // `bindings` with no members will result in an error. 2973 Bindings []*Binding `json:"bindings,omitempty"` 2974 2975 // Etag: `etag` is used for optimistic concurrency control as a way to 2976 // help 2977 // prevent simultaneous updates of a policy from overwriting each 2978 // other. 2979 // It is strongly suggested that systems make use of the `etag` in 2980 // the 2981 // read-modify-write cycle to perform policy updates in order to avoid 2982 // race 2983 // conditions: An `etag` is returned in the response to `getIamPolicy`, 2984 // and 2985 // systems are expected to put that etag in the request to 2986 // `setIamPolicy` to 2987 // ensure that their change will be applied to the same version of the 2988 // policy. 2989 // 2990 // If no `etag` is provided in the call to `setIamPolicy`, then the 2991 // existing 2992 // policy is overwritten blindly. 2993 Etag string `json:"etag,omitempty"` 2994 2995 // Version: Deprecated. 2996 Version int64 `json:"version,omitempty"` 2997 2998 // ServerResponse contains the HTTP response code and headers from the 2999 // server. 3000 googleapi.ServerResponse `json:"-"` 3001 3002 // ForceSendFields is a list of field names (e.g. "AuditConfigs") to 3003 // unconditionally include in API requests. By default, fields with 3004 // empty values are omitted from API requests. However, any non-pointer, 3005 // non-interface field appearing in ForceSendFields will be sent to the 3006 // server regardless of whether the field is empty or not. This may be 3007 // used to include empty fields in Patch requests. 3008 ForceSendFields []string `json:"-"` 3009 3010 // NullFields is a list of field names (e.g. "AuditConfigs") to include 3011 // in API requests with the JSON null value. By default, fields with 3012 // empty values are omitted from API requests. However, any field with 3013 // an empty value appearing in NullFields will be sent to the server as 3014 // null. It is an error if a field in this list has a non-empty value. 3015 // This may be used to include null fields in Patch requests. 3016 NullFields []string `json:"-"` 3017} 3018 3019func (s *Policy) MarshalJSON() ([]byte, error) { 3020 type NoMethod Policy 3021 raw := NoMethod(*s) 3022 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3023} 3024 3025// ProjectRepoId: Selects a repo using a Google Cloud Platform project 3026// ID (e.g., 3027// winged-cargo-31) and a repo name within that project. 3028type ProjectRepoId struct { 3029 // ProjectId: The ID of the project. 3030 ProjectId string `json:"projectId,omitempty"` 3031 3032 // RepoName: The name of the repo. Leave empty for the default repo. 3033 RepoName string `json:"repoName,omitempty"` 3034 3035 // ForceSendFields is a list of field names (e.g. "ProjectId") to 3036 // unconditionally include in API requests. By default, fields with 3037 // empty values are omitted from API requests. However, any non-pointer, 3038 // non-interface field appearing in ForceSendFields will be sent to the 3039 // server regardless of whether the field is empty or not. This may be 3040 // used to include empty fields in Patch requests. 3041 ForceSendFields []string `json:"-"` 3042 3043 // NullFields is a list of field names (e.g. "ProjectId") to include in 3044 // API requests with the JSON null value. By default, fields with empty 3045 // values are omitted from API requests. However, any field with an 3046 // empty value appearing in NullFields will be sent to the server as 3047 // null. It is an error if a field in this list has a non-empty value. 3048 // This may be used to include null fields in Patch requests. 3049 NullFields []string `json:"-"` 3050} 3051 3052func (s *ProjectRepoId) MarshalJSON() ([]byte, error) { 3053 type NoMethod ProjectRepoId 3054 raw := NoMethod(*s) 3055 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3056} 3057 3058// RelatedUrl: Metadata for any related URL information. 3059type RelatedUrl struct { 3060 // Label: Label to describe usage of the URL. 3061 Label string `json:"label,omitempty"` 3062 3063 // Url: Specific URL associated with the resource. 3064 Url string `json:"url,omitempty"` 3065 3066 // ForceSendFields is a list of field names (e.g. "Label") to 3067 // unconditionally include in API requests. By default, fields with 3068 // empty values are omitted from API requests. However, any non-pointer, 3069 // non-interface field appearing in ForceSendFields will be sent to the 3070 // server regardless of whether the field is empty or not. This may be 3071 // used to include empty fields in Patch requests. 3072 ForceSendFields []string `json:"-"` 3073 3074 // NullFields is a list of field names (e.g. "Label") to include in API 3075 // requests with the JSON null value. By default, fields with empty 3076 // values are omitted from API requests. However, any field with an 3077 // empty value appearing in NullFields will be sent to the server as 3078 // null. It is an error if a field in this list has a non-empty value. 3079 // This may be used to include null fields in Patch requests. 3080 NullFields []string `json:"-"` 3081} 3082 3083func (s *RelatedUrl) MarshalJSON() ([]byte, error) { 3084 type NoMethod RelatedUrl 3085 raw := NoMethod(*s) 3086 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3087} 3088 3089// RepoId: A unique identifier for a Cloud Repo. 3090type RepoId struct { 3091 // ProjectRepoId: A combination of a project ID and a repo name. 3092 ProjectRepoId *ProjectRepoId `json:"projectRepoId,omitempty"` 3093 3094 // Uid: A server-assigned, globally unique identifier. 3095 Uid string `json:"uid,omitempty"` 3096 3097 // ForceSendFields is a list of field names (e.g. "ProjectRepoId") to 3098 // unconditionally include in API requests. By default, fields with 3099 // empty values are omitted from API requests. However, any non-pointer, 3100 // non-interface field appearing in ForceSendFields will be sent to the 3101 // server regardless of whether the field is empty or not. This may be 3102 // used to include empty fields in Patch requests. 3103 ForceSendFields []string `json:"-"` 3104 3105 // NullFields is a list of field names (e.g. "ProjectRepoId") to include 3106 // in API requests with the JSON null value. By default, fields with 3107 // empty values are omitted from API requests. However, any field with 3108 // an empty value appearing in NullFields will be sent to the server as 3109 // null. It is an error if a field in this list has a non-empty value. 3110 // This may be used to include null fields in Patch requests. 3111 NullFields []string `json:"-"` 3112} 3113 3114func (s *RepoId) MarshalJSON() ([]byte, error) { 3115 type NoMethod RepoId 3116 raw := NoMethod(*s) 3117 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3118} 3119 3120// Resource: An entity that can have metadata. For example, a Docker 3121// image. 3122type Resource struct { 3123 // ContentHash: Deprecated, do not use. Use uri instead. 3124 // 3125 // The hash of the resource content. For example, the Docker digest. 3126 ContentHash *Hash `json:"contentHash,omitempty"` 3127 3128 // Name: Deprecated, do not use. Use uri instead. 3129 // 3130 // The name of the resource. For example, the name of a Docker image 3131 // - 3132 // "Debian". 3133 Name string `json:"name,omitempty"` 3134 3135 // Uri: Required. The unique URI of the resource. For 3136 // example, 3137 // `https://gcr.io/project/image@sha256:foo` for a Docker image. 3138 Uri string `json:"uri,omitempty"` 3139 3140 // ForceSendFields is a list of field names (e.g. "ContentHash") to 3141 // unconditionally include in API requests. By default, fields with 3142 // empty values are omitted from API requests. However, any non-pointer, 3143 // non-interface field appearing in ForceSendFields will be sent to the 3144 // server regardless of whether the field is empty or not. This may be 3145 // used to include empty fields in Patch requests. 3146 ForceSendFields []string `json:"-"` 3147 3148 // NullFields is a list of field names (e.g. "ContentHash") to include 3149 // in API requests with the JSON null value. By default, fields with 3150 // empty values are omitted from API requests. However, any field with 3151 // an empty value appearing in NullFields will be sent to the server as 3152 // null. It is an error if a field in this list has a non-empty value. 3153 // This may be used to include null fields in Patch requests. 3154 NullFields []string `json:"-"` 3155} 3156 3157func (s *Resource) MarshalJSON() ([]byte, error) { 3158 type NoMethod Resource 3159 raw := NoMethod(*s) 3160 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3161} 3162 3163// ScanConfig: A scan configuration specifies whether Cloud components 3164// in a project have a 3165// particular type of analysis being run. For example, it can configure 3166// whether 3167// vulnerability scanning is being done on Docker images or not. 3168type ScanConfig struct { 3169 // CreateTime: Output only. The time this scan config was created. 3170 CreateTime string `json:"createTime,omitempty"` 3171 3172 // Description: Output only. A human-readable description of what the 3173 // scan configuration 3174 // does. 3175 Description string `json:"description,omitempty"` 3176 3177 // Enabled: Whether the scan is enabled. 3178 Enabled bool `json:"enabled,omitempty"` 3179 3180 // Name: Output only. The name of the scan configuration in the form 3181 // of 3182 // `projects/[PROJECT_ID]/scanConfigs/[SCAN_CONFIG_ID]`. 3183 Name string `json:"name,omitempty"` 3184 3185 // UpdateTime: Output only. The time this scan config was last updated. 3186 UpdateTime string `json:"updateTime,omitempty"` 3187 3188 // ServerResponse contains the HTTP response code and headers from the 3189 // server. 3190 googleapi.ServerResponse `json:"-"` 3191 3192 // ForceSendFields is a list of field names (e.g. "CreateTime") to 3193 // unconditionally include in API requests. By default, fields with 3194 // empty values are omitted from API requests. However, any non-pointer, 3195 // non-interface field appearing in ForceSendFields will be sent to the 3196 // server regardless of whether the field is empty or not. This may be 3197 // used to include empty fields in Patch requests. 3198 ForceSendFields []string `json:"-"` 3199 3200 // NullFields is a list of field names (e.g. "CreateTime") to include in 3201 // API requests with the JSON null value. By default, fields with empty 3202 // values are omitted from API requests. However, any field with an 3203 // empty value appearing in NullFields will be sent to the server as 3204 // null. It is an error if a field in this list has a non-empty value. 3205 // This may be used to include null fields in Patch requests. 3206 NullFields []string `json:"-"` 3207} 3208 3209func (s *ScanConfig) MarshalJSON() ([]byte, error) { 3210 type NoMethod ScanConfig 3211 raw := NoMethod(*s) 3212 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3213} 3214 3215// SetIamPolicyRequest: Request message for `SetIamPolicy` method. 3216type SetIamPolicyRequest struct { 3217 // Policy: REQUIRED: The complete policy to be applied to the 3218 // `resource`. The size of 3219 // the policy is limited to a few 10s of KB. An empty policy is a 3220 // valid policy but certain Cloud Platform services (such as 3221 // Projects) 3222 // might reject them. 3223 Policy *Policy `json:"policy,omitempty"` 3224 3225 // UpdateMask: OPTIONAL: A FieldMask specifying which fields of the 3226 // policy to modify. Only 3227 // the fields in the mask will be modified. If no mask is provided, 3228 // the 3229 // following default mask is used: 3230 // paths: "bindings, etag" 3231 // This field is only used by Cloud IAM. 3232 UpdateMask string `json:"updateMask,omitempty"` 3233 3234 // ForceSendFields is a list of field names (e.g. "Policy") to 3235 // unconditionally include in API requests. By default, fields with 3236 // empty values are omitted from API requests. However, any non-pointer, 3237 // non-interface field appearing in ForceSendFields will be sent to the 3238 // server regardless of whether the field is empty or not. This may be 3239 // used to include empty fields in Patch requests. 3240 ForceSendFields []string `json:"-"` 3241 3242 // NullFields is a list of field names (e.g. "Policy") to include in API 3243 // requests with the JSON null value. By default, fields with empty 3244 // values are omitted from API requests. However, any field with an 3245 // empty value appearing in NullFields will be sent to the server as 3246 // null. It is an error if a field in this list has a non-empty value. 3247 // This may be used to include null fields in Patch requests. 3248 NullFields []string `json:"-"` 3249} 3250 3251func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) { 3252 type NoMethod SetIamPolicyRequest 3253 raw := NoMethod(*s) 3254 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3255} 3256 3257// Signature: Verifiers (e.g. Kritis implementations) MUST verify 3258// signatures 3259// with respect to the trust anchors defined in policy (e.g. a Kritis 3260// policy). 3261// Typically this means that the verifier has been configured with a map 3262// from 3263// `public_key_id` to public key material (and any required parameters, 3264// e.g. 3265// signing algorithm). 3266// 3267// In particular, verification implementations MUST NOT treat the 3268// signature 3269// `public_key_id` as anything more than a key lookup hint. The 3270// `public_key_id` 3271// DOES NOT validate or authenticate a public key; it only provides a 3272// mechanism 3273// for quickly selecting a public key ALREADY CONFIGURED on the verifier 3274// through 3275// a trusted channel. Verification implementations MUST reject 3276// signatures in any 3277// of the following circumstances: 3278// * The `public_key_id` is not recognized by the verifier. 3279// * The public key that `public_key_id` refers to does not verify 3280// the 3281// signature with respect to the payload. 3282// 3283// The `signature` contents SHOULD NOT be "attached" (where the payload 3284// is 3285// included with the serialized `signature` bytes). Verifiers MUST 3286// ignore any 3287// "attached" payload and only verify signatures with respect to 3288// explicitly 3289// provided payload (e.g. a `payload` field on the proto message that 3290// holds 3291// this Signature, or the canonical serialization of the proto message 3292// that 3293// holds this signature). 3294type Signature struct { 3295 // PublicKeyId: The identifier for the public key that verifies this 3296 // signature. 3297 // * The `public_key_id` is required. 3298 // * The `public_key_id` MUST be an RFC3986 conformant URI. 3299 // * When possible, the `public_key_id` SHOULD be an immutable 3300 // reference, 3301 // such as a cryptographic digest. 3302 // 3303 // Examples of valid `public_key_id`s: 3304 // 3305 // OpenPGP V4 public key fingerprint: 3306 // * "openpgp4fpr:74FAF3B861BDA0870C7B6DEF607E48D2A663AEEA" 3307 // See https://www.iana.org/assignments/uri-schemes/prov/openpgp4fpr for 3308 // more 3309 // details on this scheme. 3310 // 3311 // RFC6920 digest-named SubjectPublicKeyInfo (digest of the 3312 // DER 3313 // serialization): 3314 // * "ni:///sha-256;cD9o9Cq6LG3jD0iKXqEi_vdjJGecm_iXkbqVoScViaU" 3315 // * 3316 // "nih:///sha-256;703f68f42aba2c6de30f488a5ea122fef76324679c9bf89791ba95 3317 // a1271589a5" 3318 PublicKeyId string `json:"publicKeyId,omitempty"` 3319 3320 // Signature: The content of the signature, an opaque bytestring. 3321 // The payload that this signature verifies MUST be unambiguously 3322 // provided 3323 // with the Signature during verification. A wrapper message might 3324 // provide 3325 // the payload explicitly. Alternatively, a message might have a 3326 // canonical 3327 // serialization that can always be unambiguously computed to derive 3328 // the 3329 // payload. 3330 Signature string `json:"signature,omitempty"` 3331 3332 // ForceSendFields is a list of field names (e.g. "PublicKeyId") to 3333 // unconditionally include in API requests. By default, fields with 3334 // empty values are omitted from API requests. However, any non-pointer, 3335 // non-interface field appearing in ForceSendFields will be sent to the 3336 // server regardless of whether the field is empty or not. This may be 3337 // used to include empty fields in Patch requests. 3338 ForceSendFields []string `json:"-"` 3339 3340 // NullFields is a list of field names (e.g. "PublicKeyId") to include 3341 // in API requests with the JSON null value. By default, fields with 3342 // empty values are omitted from API requests. However, any field with 3343 // an empty value appearing in NullFields will be sent to the server as 3344 // null. It is an error if a field in this list has a non-empty value. 3345 // This may be used to include null fields in Patch requests. 3346 NullFields []string `json:"-"` 3347} 3348 3349func (s *Signature) MarshalJSON() ([]byte, error) { 3350 type NoMethod Signature 3351 raw := NoMethod(*s) 3352 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3353} 3354 3355// Source: Source describes the location of the source used for the 3356// build. 3357type Source struct { 3358 // AdditionalContexts: If provided, some of the source code used for the 3359 // build may be found in 3360 // these locations, in the case where the source repository had 3361 // multiple 3362 // remotes or submodules. This list will not include the context 3363 // specified in 3364 // the context field. 3365 AdditionalContexts []*SourceContext `json:"additionalContexts,omitempty"` 3366 3367 // ArtifactStorageSourceUri: If provided, the input binary artifacts for 3368 // the build came from this 3369 // location. 3370 ArtifactStorageSourceUri string `json:"artifactStorageSourceUri,omitempty"` 3371 3372 // Context: If provided, the source code used for the build came from 3373 // this location. 3374 Context *SourceContext `json:"context,omitempty"` 3375 3376 // FileHashes: Hash(es) of the build source, which can be used to verify 3377 // that the original 3378 // source integrity was maintained in the build. 3379 // 3380 // The keys to this map are file paths used as build source and the 3381 // values 3382 // contain the hash values for those files. 3383 // 3384 // If the build source came in a single package such as a gzipped 3385 // tarfile 3386 // (.tar.gz), the FileHash will be for the single path to that file. 3387 FileHashes map[string]FileHashes `json:"fileHashes,omitempty"` 3388 3389 // ForceSendFields is a list of field names (e.g. "AdditionalContexts") 3390 // to unconditionally include in API requests. By default, fields with 3391 // empty values are omitted from API requests. However, any non-pointer, 3392 // non-interface field appearing in ForceSendFields will be sent to the 3393 // server regardless of whether the field is empty or not. This may be 3394 // used to include empty fields in Patch requests. 3395 ForceSendFields []string `json:"-"` 3396 3397 // NullFields is a list of field names (e.g. "AdditionalContexts") to 3398 // include in API requests with the JSON null value. By default, fields 3399 // with empty values are omitted from API requests. However, any field 3400 // with an empty value appearing in NullFields will be sent to the 3401 // server as null. It is an error if a field in this list has a 3402 // non-empty value. This may be used to include null fields in Patch 3403 // requests. 3404 NullFields []string `json:"-"` 3405} 3406 3407func (s *Source) MarshalJSON() ([]byte, error) { 3408 type NoMethod Source 3409 raw := NoMethod(*s) 3410 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3411} 3412 3413// SourceContext: A SourceContext is a reference to a tree of files. A 3414// SourceContext together 3415// with a path point to a unique revision of a single file or directory. 3416type SourceContext struct { 3417 // CloudRepo: A SourceContext referring to a revision in a Google Cloud 3418 // Source Repo. 3419 CloudRepo *CloudRepoSourceContext `json:"cloudRepo,omitempty"` 3420 3421 // Gerrit: A SourceContext referring to a Gerrit project. 3422 Gerrit *GerritSourceContext `json:"gerrit,omitempty"` 3423 3424 // Git: A SourceContext referring to any third party Git repo (e.g., 3425 // GitHub). 3426 Git *GitSourceContext `json:"git,omitempty"` 3427 3428 // Labels: Labels with user defined metadata. 3429 Labels map[string]string `json:"labels,omitempty"` 3430 3431 // ForceSendFields is a list of field names (e.g. "CloudRepo") to 3432 // unconditionally include in API requests. By default, fields with 3433 // empty values are omitted from API requests. However, any non-pointer, 3434 // non-interface field appearing in ForceSendFields will be sent to the 3435 // server regardless of whether the field is empty or not. This may be 3436 // used to include empty fields in Patch requests. 3437 ForceSendFields []string `json:"-"` 3438 3439 // NullFields is a list of field names (e.g. "CloudRepo") to include in 3440 // API requests with the JSON null value. By default, fields with empty 3441 // values are omitted from API requests. However, any field with an 3442 // empty value appearing in NullFields will be sent to the server as 3443 // null. It is an error if a field in this list has a non-empty value. 3444 // This may be used to include null fields in Patch requests. 3445 NullFields []string `json:"-"` 3446} 3447 3448func (s *SourceContext) MarshalJSON() ([]byte, error) { 3449 type NoMethod SourceContext 3450 raw := NoMethod(*s) 3451 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3452} 3453 3454// Status: The `Status` type defines a logical error model that is 3455// suitable for 3456// different programming environments, including REST APIs and RPC APIs. 3457// It is 3458// used by [gRPC](https://github.com/grpc). Each `Status` message 3459// contains 3460// three pieces of data: error code, error message, and error 3461// details. 3462// 3463// You can find out more about this error model and how to work with it 3464// in the 3465// [API Design Guide](https://cloud.google.com/apis/design/errors). 3466type Status struct { 3467 // Code: The status code, which should be an enum value of 3468 // google.rpc.Code. 3469 Code int64 `json:"code,omitempty"` 3470 3471 // Details: A list of messages that carry the error details. There is a 3472 // common set of 3473 // message types for APIs to use. 3474 Details []googleapi.RawMessage `json:"details,omitempty"` 3475 3476 // Message: A developer-facing error message, which should be in 3477 // English. Any 3478 // user-facing error message should be localized and sent in 3479 // the 3480 // google.rpc.Status.details field, or localized by the client. 3481 Message string `json:"message,omitempty"` 3482 3483 // ForceSendFields is a list of field names (e.g. "Code") to 3484 // unconditionally include in API requests. By default, fields with 3485 // empty values are omitted from API requests. However, any non-pointer, 3486 // non-interface field appearing in ForceSendFields will be sent to the 3487 // server regardless of whether the field is empty or not. This may be 3488 // used to include empty fields in Patch requests. 3489 ForceSendFields []string `json:"-"` 3490 3491 // NullFields is a list of field names (e.g. "Code") to include in API 3492 // requests with the JSON null value. By default, fields with empty 3493 // values are omitted from API requests. However, any field with an 3494 // empty value appearing in NullFields will be sent to the server as 3495 // null. It is an error if a field in this list has a non-empty value. 3496 // This may be used to include null fields in Patch requests. 3497 NullFields []string `json:"-"` 3498} 3499 3500func (s *Status) MarshalJSON() ([]byte, error) { 3501 type NoMethod Status 3502 raw := NoMethod(*s) 3503 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3504} 3505 3506// TestIamPermissionsRequest: Request message for `TestIamPermissions` 3507// method. 3508type TestIamPermissionsRequest struct { 3509 // Permissions: The set of permissions to check for the `resource`. 3510 // Permissions with 3511 // wildcards (such as '*' or 'storage.*') are not allowed. For 3512 // more 3513 // information see 3514 // [IAM 3515 // Overview](https://cloud.google.com/iam/docs/overview#permissions). 3516 Permissions []string `json:"permissions,omitempty"` 3517 3518 // ForceSendFields is a list of field names (e.g. "Permissions") to 3519 // unconditionally include in API requests. By default, fields with 3520 // empty values are omitted from API requests. However, any non-pointer, 3521 // non-interface field appearing in ForceSendFields will be sent to the 3522 // server regardless of whether the field is empty or not. This may be 3523 // used to include empty fields in Patch requests. 3524 ForceSendFields []string `json:"-"` 3525 3526 // NullFields is a list of field names (e.g. "Permissions") to include 3527 // in API requests with the JSON null value. By default, fields with 3528 // empty values are omitted from API requests. However, any field with 3529 // an empty value appearing in NullFields will be sent to the server as 3530 // null. It is an error if a field in this list has a non-empty value. 3531 // This may be used to include null fields in Patch requests. 3532 NullFields []string `json:"-"` 3533} 3534 3535func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) { 3536 type NoMethod TestIamPermissionsRequest 3537 raw := NoMethod(*s) 3538 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3539} 3540 3541// TestIamPermissionsResponse: Response message for `TestIamPermissions` 3542// method. 3543type TestIamPermissionsResponse struct { 3544 // Permissions: A subset of `TestPermissionsRequest.permissions` that 3545 // the caller is 3546 // allowed. 3547 Permissions []string `json:"permissions,omitempty"` 3548 3549 // ServerResponse contains the HTTP response code and headers from the 3550 // server. 3551 googleapi.ServerResponse `json:"-"` 3552 3553 // ForceSendFields is a list of field names (e.g. "Permissions") to 3554 // unconditionally include in API requests. By default, fields with 3555 // empty values are omitted from API requests. However, any non-pointer, 3556 // non-interface field appearing in ForceSendFields will be sent to the 3557 // server regardless of whether the field is empty or not. This may be 3558 // used to include empty fields in Patch requests. 3559 ForceSendFields []string `json:"-"` 3560 3561 // NullFields is a list of field names (e.g. "Permissions") to include 3562 // in API requests with the JSON null value. By default, fields with 3563 // empty values are omitted from API requests. However, any field with 3564 // an empty value appearing in NullFields will be sent to the server as 3565 // null. It is an error if a field in this list has a non-empty value. 3566 // This may be used to include null fields in Patch requests. 3567 NullFields []string `json:"-"` 3568} 3569 3570func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { 3571 type NoMethod TestIamPermissionsResponse 3572 raw := NoMethod(*s) 3573 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3574} 3575 3576// Version: Version contains structured information about the version of 3577// a package. 3578type Version struct { 3579 // Epoch: Used to correct mistakes in the version numbering scheme. 3580 Epoch int64 `json:"epoch,omitempty"` 3581 3582 // Kind: Required. Distinguishes between sentinel MIN/MAX versions and 3583 // normal 3584 // versions. 3585 // 3586 // Possible values: 3587 // "VERSION_KIND_UNSPECIFIED" - Unknown. 3588 // "NORMAL" - A standard package version. 3589 // "MINIMUM" - A special version representing negative infinity. 3590 // "MAXIMUM" - A special version representing positive infinity. 3591 Kind string `json:"kind,omitempty"` 3592 3593 // Name: Required only when version kind is NORMAL. The main part of the 3594 // version 3595 // name. 3596 Name string `json:"name,omitempty"` 3597 3598 // Revision: The iteration of the package build from the above version. 3599 Revision string `json:"revision,omitempty"` 3600 3601 // ForceSendFields is a list of field names (e.g. "Epoch") to 3602 // unconditionally include in API requests. By default, fields with 3603 // empty values are omitted from API requests. However, any non-pointer, 3604 // non-interface field appearing in ForceSendFields will be sent to the 3605 // server regardless of whether the field is empty or not. This may be 3606 // used to include empty fields in Patch requests. 3607 ForceSendFields []string `json:"-"` 3608 3609 // NullFields is a list of field names (e.g. "Epoch") to include in API 3610 // requests with the JSON null value. By default, fields with empty 3611 // values are omitted from API requests. However, any field with an 3612 // empty value appearing in NullFields will be sent to the server as 3613 // null. It is an error if a field in this list has a non-empty value. 3614 // This may be used to include null fields in Patch requests. 3615 NullFields []string `json:"-"` 3616} 3617 3618func (s *Version) MarshalJSON() ([]byte, error) { 3619 type NoMethod Version 3620 raw := NoMethod(*s) 3621 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3622} 3623 3624// Vulnerability: Vulnerability provides metadata about a security 3625// vulnerability in a Note. 3626type Vulnerability struct { 3627 // CvssScore: The CVSS score for this vulnerability. 3628 CvssScore float64 `json:"cvssScore,omitempty"` 3629 3630 // CvssV3: The full description of the CVSSv3. 3631 CvssV3 *CVSSv3 `json:"cvssV3,omitempty"` 3632 3633 // Details: All information about the package to specifically identify 3634 // this 3635 // vulnerability. One entry per (version range and cpe_uri) the 3636 // package 3637 // vulnerability has manifested in. 3638 Details []*Detail `json:"details,omitempty"` 3639 3640 // Severity: Note provider assigned impact of the vulnerability. 3641 // 3642 // Possible values: 3643 // "SEVERITY_UNSPECIFIED" - Unknown. 3644 // "MINIMAL" - Minimal severity. 3645 // "LOW" - Low severity. 3646 // "MEDIUM" - Medium severity. 3647 // "HIGH" - High severity. 3648 // "CRITICAL" - Critical severity. 3649 Severity string `json:"severity,omitempty"` 3650 3651 // WindowsDetails: Windows details get their own format because the 3652 // information format and 3653 // model don't match a normal detail. Specifically Windows updates are 3654 // done as 3655 // patches, thus Windows vulnerabilities really are a missing package, 3656 // rather 3657 // than a package being at an incorrect version. 3658 WindowsDetails []*WindowsDetail `json:"windowsDetails,omitempty"` 3659 3660 // ForceSendFields is a list of field names (e.g. "CvssScore") to 3661 // unconditionally include in API requests. By default, fields with 3662 // empty values are omitted from API requests. However, any non-pointer, 3663 // non-interface field appearing in ForceSendFields will be sent to the 3664 // server regardless of whether the field is empty or not. This may be 3665 // used to include empty fields in Patch requests. 3666 ForceSendFields []string `json:"-"` 3667 3668 // NullFields is a list of field names (e.g. "CvssScore") to include in 3669 // API requests with the JSON null value. By default, fields with empty 3670 // values are omitted from API requests. However, any field with an 3671 // empty value appearing in NullFields will be sent to the server as 3672 // null. It is an error if a field in this list has a non-empty value. 3673 // This may be used to include null fields in Patch requests. 3674 NullFields []string `json:"-"` 3675} 3676 3677func (s *Vulnerability) MarshalJSON() ([]byte, error) { 3678 type NoMethod Vulnerability 3679 raw := NoMethod(*s) 3680 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3681} 3682 3683func (s *Vulnerability) UnmarshalJSON(data []byte) error { 3684 type NoMethod Vulnerability 3685 var s1 struct { 3686 CvssScore gensupport.JSONFloat64 `json:"cvssScore"` 3687 *NoMethod 3688 } 3689 s1.NoMethod = (*NoMethod)(s) 3690 if err := json.Unmarshal(data, &s1); err != nil { 3691 return err 3692 } 3693 s.CvssScore = float64(s1.CvssScore) 3694 return nil 3695} 3696 3697// VulnerabilityLocation: The location of the vulnerability. 3698type VulnerabilityLocation struct { 3699 // CpeUri: Required. The CPE URI in [cpe 3700 // format](https://cpe.mitre.org/specification/) 3701 // format. Examples include distro or storage location for vulnerable 3702 // jar. 3703 CpeUri string `json:"cpeUri,omitempty"` 3704 3705 // Package: Required. The package being described. 3706 Package string `json:"package,omitempty"` 3707 3708 // Version: Required. The version of the package being described. 3709 Version *Version `json:"version,omitempty"` 3710 3711 // ForceSendFields is a list of field names (e.g. "CpeUri") to 3712 // unconditionally include in API requests. By default, fields with 3713 // empty values are omitted from API requests. However, any non-pointer, 3714 // non-interface field appearing in ForceSendFields will be sent to the 3715 // server regardless of whether the field is empty or not. This may be 3716 // used to include empty fields in Patch requests. 3717 ForceSendFields []string `json:"-"` 3718 3719 // NullFields is a list of field names (e.g. "CpeUri") to include in API 3720 // requests with the JSON null value. By default, fields with empty 3721 // values are omitted from API requests. However, any field with an 3722 // empty value appearing in NullFields will be sent to the server as 3723 // null. It is an error if a field in this list has a non-empty value. 3724 // This may be used to include null fields in Patch requests. 3725 NullFields []string `json:"-"` 3726} 3727 3728func (s *VulnerabilityLocation) MarshalJSON() ([]byte, error) { 3729 type NoMethod VulnerabilityLocation 3730 raw := NoMethod(*s) 3731 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3732} 3733 3734// VulnerabilityOccurrencesSummary: A summary of how many vulnerability 3735// occurrences there are per resource and 3736// severity type. 3737type VulnerabilityOccurrencesSummary struct { 3738 // Counts: A listing by resource of the number of fixable and total 3739 // vulnerabilities. 3740 Counts []*FixableTotalByDigest `json:"counts,omitempty"` 3741 3742 // ServerResponse contains the HTTP response code and headers from the 3743 // server. 3744 googleapi.ServerResponse `json:"-"` 3745 3746 // ForceSendFields is a list of field names (e.g. "Counts") to 3747 // unconditionally include in API requests. By default, fields with 3748 // empty values are omitted from API requests. However, any non-pointer, 3749 // non-interface field appearing in ForceSendFields will be sent to the 3750 // server regardless of whether the field is empty or not. This may be 3751 // used to include empty fields in Patch requests. 3752 ForceSendFields []string `json:"-"` 3753 3754 // NullFields is a list of field names (e.g. "Counts") to include in API 3755 // requests with the JSON null value. By default, fields with empty 3756 // values are omitted from API requests. However, any field with an 3757 // empty value appearing in NullFields will be sent to the server as 3758 // null. It is an error if a field in this list has a non-empty value. 3759 // This may be used to include null fields in Patch requests. 3760 NullFields []string `json:"-"` 3761} 3762 3763func (s *VulnerabilityOccurrencesSummary) MarshalJSON() ([]byte, error) { 3764 type NoMethod VulnerabilityOccurrencesSummary 3765 raw := NoMethod(*s) 3766 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3767} 3768 3769type WindowsDetail struct { 3770 // CpeUri: Required. The CPE URI in 3771 // [cpe format](https://cpe.mitre.org/specification/) in which 3772 // the 3773 // vulnerability manifests. Examples include distro or storage location 3774 // for 3775 // vulnerable jar. 3776 CpeUri string `json:"cpeUri,omitempty"` 3777 3778 // Description: The description of the vulnerability. 3779 Description string `json:"description,omitempty"` 3780 3781 // FixingKbs: Required. The names of the KBs which have hotfixes to 3782 // mitigate this 3783 // vulnerability. Note that there may be multiple hotfixes (and 3784 // thus 3785 // multiple KBs) that mitigate a given vulnerability. Currently any 3786 // listed 3787 // kb's presence is considered a fix. 3788 FixingKbs []*KnowledgeBase `json:"fixingKbs,omitempty"` 3789 3790 // Name: Required. The name of the vulnerability. 3791 Name string `json:"name,omitempty"` 3792 3793 // ForceSendFields is a list of field names (e.g. "CpeUri") to 3794 // unconditionally include in API requests. By default, fields with 3795 // empty values are omitted from API requests. However, any non-pointer, 3796 // non-interface field appearing in ForceSendFields will be sent to the 3797 // server regardless of whether the field is empty or not. This may be 3798 // used to include empty fields in Patch requests. 3799 ForceSendFields []string `json:"-"` 3800 3801 // NullFields is a list of field names (e.g. "CpeUri") to include in API 3802 // requests with the JSON null value. By default, fields with empty 3803 // values are omitted from API requests. However, any field with an 3804 // empty value appearing in NullFields will be sent to the server as 3805 // null. It is an error if a field in this list has a non-empty value. 3806 // This may be used to include null fields in Patch requests. 3807 NullFields []string `json:"-"` 3808} 3809 3810func (s *WindowsDetail) MarshalJSON() ([]byte, error) { 3811 type NoMethod WindowsDetail 3812 raw := NoMethod(*s) 3813 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 3814} 3815 3816// method id "containeranalysis.projects.notes.batchCreate": 3817 3818type ProjectsNotesBatchCreateCall struct { 3819 s *Service 3820 parent string 3821 batchcreatenotesrequest *BatchCreateNotesRequest 3822 urlParams_ gensupport.URLParams 3823 ctx_ context.Context 3824 header_ http.Header 3825} 3826 3827// BatchCreate: Creates new notes in batch. 3828func (r *ProjectsNotesService) BatchCreate(parent string, batchcreatenotesrequest *BatchCreateNotesRequest) *ProjectsNotesBatchCreateCall { 3829 c := &ProjectsNotesBatchCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3830 c.parent = parent 3831 c.batchcreatenotesrequest = batchcreatenotesrequest 3832 return c 3833} 3834 3835// Fields allows partial responses to be retrieved. See 3836// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3837// for more information. 3838func (c *ProjectsNotesBatchCreateCall) Fields(s ...googleapi.Field) *ProjectsNotesBatchCreateCall { 3839 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3840 return c 3841} 3842 3843// Context sets the context to be used in this call's Do method. Any 3844// pending HTTP request will be aborted if the provided context is 3845// canceled. 3846func (c *ProjectsNotesBatchCreateCall) Context(ctx context.Context) *ProjectsNotesBatchCreateCall { 3847 c.ctx_ = ctx 3848 return c 3849} 3850 3851// Header returns an http.Header that can be modified by the caller to 3852// add HTTP headers to the request. 3853func (c *ProjectsNotesBatchCreateCall) Header() http.Header { 3854 if c.header_ == nil { 3855 c.header_ = make(http.Header) 3856 } 3857 return c.header_ 3858} 3859 3860func (c *ProjectsNotesBatchCreateCall) doRequest(alt string) (*http.Response, error) { 3861 reqHeaders := make(http.Header) 3862 for k, v := range c.header_ { 3863 reqHeaders[k] = v 3864 } 3865 reqHeaders.Set("User-Agent", c.s.userAgent()) 3866 var body io.Reader = nil 3867 body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchcreatenotesrequest) 3868 if err != nil { 3869 return nil, err 3870 } 3871 reqHeaders.Set("Content-Type", "application/json") 3872 c.urlParams_.Set("alt", alt) 3873 c.urlParams_.Set("prettyPrint", "false") 3874 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/notes:batchCreate") 3875 urls += "?" + c.urlParams_.Encode() 3876 req, err := http.NewRequest("POST", urls, body) 3877 if err != nil { 3878 return nil, err 3879 } 3880 req.Header = reqHeaders 3881 googleapi.Expand(req.URL, map[string]string{ 3882 "parent": c.parent, 3883 }) 3884 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3885} 3886 3887// Do executes the "containeranalysis.projects.notes.batchCreate" call. 3888// Exactly one of *BatchCreateNotesResponse or error will be non-nil. 3889// Any non-2xx status code is an error. Response headers are in either 3890// *BatchCreateNotesResponse.ServerResponse.Header or (if a response was 3891// returned at all) in error.(*googleapi.Error).Header. Use 3892// googleapi.IsNotModified to check whether the returned error was 3893// because http.StatusNotModified was returned. 3894func (c *ProjectsNotesBatchCreateCall) Do(opts ...googleapi.CallOption) (*BatchCreateNotesResponse, error) { 3895 gensupport.SetOptions(c.urlParams_, opts...) 3896 res, err := c.doRequest("json") 3897 if res != nil && res.StatusCode == http.StatusNotModified { 3898 if res.Body != nil { 3899 res.Body.Close() 3900 } 3901 return nil, &googleapi.Error{ 3902 Code: res.StatusCode, 3903 Header: res.Header, 3904 } 3905 } 3906 if err != nil { 3907 return nil, err 3908 } 3909 defer googleapi.CloseBody(res) 3910 if err := googleapi.CheckResponse(res); err != nil { 3911 return nil, err 3912 } 3913 ret := &BatchCreateNotesResponse{ 3914 ServerResponse: googleapi.ServerResponse{ 3915 Header: res.Header, 3916 HTTPStatusCode: res.StatusCode, 3917 }, 3918 } 3919 target := &ret 3920 if err := gensupport.DecodeResponse(target, res); err != nil { 3921 return nil, err 3922 } 3923 return ret, nil 3924 // { 3925 // "description": "Creates new notes in batch.", 3926 // "flatPath": "v1beta1/projects/{projectsId}/notes:batchCreate", 3927 // "httpMethod": "POST", 3928 // "id": "containeranalysis.projects.notes.batchCreate", 3929 // "parameterOrder": [ 3930 // "parent" 3931 // ], 3932 // "parameters": { 3933 // "parent": { 3934 // "description": "The name of the project in the form of `projects/[PROJECT_ID]`, under which\nthe notes are to be created.", 3935 // "location": "path", 3936 // "pattern": "^projects/[^/]+$", 3937 // "required": true, 3938 // "type": "string" 3939 // } 3940 // }, 3941 // "path": "v1beta1/{+parent}/notes:batchCreate", 3942 // "request": { 3943 // "$ref": "BatchCreateNotesRequest" 3944 // }, 3945 // "response": { 3946 // "$ref": "BatchCreateNotesResponse" 3947 // }, 3948 // "scopes": [ 3949 // "https://www.googleapis.com/auth/cloud-platform" 3950 // ] 3951 // } 3952 3953} 3954 3955// method id "containeranalysis.projects.notes.create": 3956 3957type ProjectsNotesCreateCall struct { 3958 s *Service 3959 parent string 3960 note *Note 3961 urlParams_ gensupport.URLParams 3962 ctx_ context.Context 3963 header_ http.Header 3964} 3965 3966// Create: Creates a new note. 3967func (r *ProjectsNotesService) Create(parent string, note *Note) *ProjectsNotesCreateCall { 3968 c := &ProjectsNotesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3969 c.parent = parent 3970 c.note = note 3971 return c 3972} 3973 3974// NoteId sets the optional parameter "noteId": The ID to use for this 3975// note. 3976func (c *ProjectsNotesCreateCall) NoteId(noteId string) *ProjectsNotesCreateCall { 3977 c.urlParams_.Set("noteId", noteId) 3978 return c 3979} 3980 3981// Fields allows partial responses to be retrieved. See 3982// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3983// for more information. 3984func (c *ProjectsNotesCreateCall) Fields(s ...googleapi.Field) *ProjectsNotesCreateCall { 3985 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3986 return c 3987} 3988 3989// Context sets the context to be used in this call's Do method. Any 3990// pending HTTP request will be aborted if the provided context is 3991// canceled. 3992func (c *ProjectsNotesCreateCall) Context(ctx context.Context) *ProjectsNotesCreateCall { 3993 c.ctx_ = ctx 3994 return c 3995} 3996 3997// Header returns an http.Header that can be modified by the caller to 3998// add HTTP headers to the request. 3999func (c *ProjectsNotesCreateCall) Header() http.Header { 4000 if c.header_ == nil { 4001 c.header_ = make(http.Header) 4002 } 4003 return c.header_ 4004} 4005 4006func (c *ProjectsNotesCreateCall) doRequest(alt string) (*http.Response, error) { 4007 reqHeaders := make(http.Header) 4008 for k, v := range c.header_ { 4009 reqHeaders[k] = v 4010 } 4011 reqHeaders.Set("User-Agent", c.s.userAgent()) 4012 var body io.Reader = nil 4013 body, err := googleapi.WithoutDataWrapper.JSONReader(c.note) 4014 if err != nil { 4015 return nil, err 4016 } 4017 reqHeaders.Set("Content-Type", "application/json") 4018 c.urlParams_.Set("alt", alt) 4019 c.urlParams_.Set("prettyPrint", "false") 4020 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/notes") 4021 urls += "?" + c.urlParams_.Encode() 4022 req, err := http.NewRequest("POST", urls, body) 4023 if err != nil { 4024 return nil, err 4025 } 4026 req.Header = reqHeaders 4027 googleapi.Expand(req.URL, map[string]string{ 4028 "parent": c.parent, 4029 }) 4030 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4031} 4032 4033// Do executes the "containeranalysis.projects.notes.create" call. 4034// Exactly one of *Note or error will be non-nil. Any non-2xx status 4035// code is an error. Response headers are in either 4036// *Note.ServerResponse.Header or (if a response was returned at all) in 4037// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 4038// whether the returned error was because http.StatusNotModified was 4039// returned. 4040func (c *ProjectsNotesCreateCall) Do(opts ...googleapi.CallOption) (*Note, error) { 4041 gensupport.SetOptions(c.urlParams_, opts...) 4042 res, err := c.doRequest("json") 4043 if res != nil && res.StatusCode == http.StatusNotModified { 4044 if res.Body != nil { 4045 res.Body.Close() 4046 } 4047 return nil, &googleapi.Error{ 4048 Code: res.StatusCode, 4049 Header: res.Header, 4050 } 4051 } 4052 if err != nil { 4053 return nil, err 4054 } 4055 defer googleapi.CloseBody(res) 4056 if err := googleapi.CheckResponse(res); err != nil { 4057 return nil, err 4058 } 4059 ret := &Note{ 4060 ServerResponse: googleapi.ServerResponse{ 4061 Header: res.Header, 4062 HTTPStatusCode: res.StatusCode, 4063 }, 4064 } 4065 target := &ret 4066 if err := gensupport.DecodeResponse(target, res); err != nil { 4067 return nil, err 4068 } 4069 return ret, nil 4070 // { 4071 // "description": "Creates a new note.", 4072 // "flatPath": "v1beta1/projects/{projectsId}/notes", 4073 // "httpMethod": "POST", 4074 // "id": "containeranalysis.projects.notes.create", 4075 // "parameterOrder": [ 4076 // "parent" 4077 // ], 4078 // "parameters": { 4079 // "noteId": { 4080 // "description": "The ID to use for this note.", 4081 // "location": "query", 4082 // "type": "string" 4083 // }, 4084 // "parent": { 4085 // "description": "The name of the project in the form of `projects/[PROJECT_ID]`, under which\nthe note is to be created.", 4086 // "location": "path", 4087 // "pattern": "^projects/[^/]+$", 4088 // "required": true, 4089 // "type": "string" 4090 // } 4091 // }, 4092 // "path": "v1beta1/{+parent}/notes", 4093 // "request": { 4094 // "$ref": "Note" 4095 // }, 4096 // "response": { 4097 // "$ref": "Note" 4098 // }, 4099 // "scopes": [ 4100 // "https://www.googleapis.com/auth/cloud-platform" 4101 // ] 4102 // } 4103 4104} 4105 4106// method id "containeranalysis.projects.notes.delete": 4107 4108type ProjectsNotesDeleteCall struct { 4109 s *Service 4110 name string 4111 urlParams_ gensupport.URLParams 4112 ctx_ context.Context 4113 header_ http.Header 4114} 4115 4116// Delete: Deletes the specified note. 4117func (r *ProjectsNotesService) Delete(name string) *ProjectsNotesDeleteCall { 4118 c := &ProjectsNotesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4119 c.name = name 4120 return c 4121} 4122 4123// Fields allows partial responses to be retrieved. See 4124// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4125// for more information. 4126func (c *ProjectsNotesDeleteCall) Fields(s ...googleapi.Field) *ProjectsNotesDeleteCall { 4127 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4128 return c 4129} 4130 4131// Context sets the context to be used in this call's Do method. Any 4132// pending HTTP request will be aborted if the provided context is 4133// canceled. 4134func (c *ProjectsNotesDeleteCall) Context(ctx context.Context) *ProjectsNotesDeleteCall { 4135 c.ctx_ = ctx 4136 return c 4137} 4138 4139// Header returns an http.Header that can be modified by the caller to 4140// add HTTP headers to the request. 4141func (c *ProjectsNotesDeleteCall) Header() http.Header { 4142 if c.header_ == nil { 4143 c.header_ = make(http.Header) 4144 } 4145 return c.header_ 4146} 4147 4148func (c *ProjectsNotesDeleteCall) doRequest(alt string) (*http.Response, error) { 4149 reqHeaders := make(http.Header) 4150 for k, v := range c.header_ { 4151 reqHeaders[k] = v 4152 } 4153 reqHeaders.Set("User-Agent", c.s.userAgent()) 4154 var body io.Reader = nil 4155 c.urlParams_.Set("alt", alt) 4156 c.urlParams_.Set("prettyPrint", "false") 4157 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 4158 urls += "?" + c.urlParams_.Encode() 4159 req, err := http.NewRequest("DELETE", urls, body) 4160 if err != nil { 4161 return nil, err 4162 } 4163 req.Header = reqHeaders 4164 googleapi.Expand(req.URL, map[string]string{ 4165 "name": c.name, 4166 }) 4167 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4168} 4169 4170// Do executes the "containeranalysis.projects.notes.delete" call. 4171// Exactly one of *Empty or error will be non-nil. Any non-2xx status 4172// code is an error. Response headers are in either 4173// *Empty.ServerResponse.Header or (if a response was returned at all) 4174// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 4175// check whether the returned error was because http.StatusNotModified 4176// was returned. 4177func (c *ProjectsNotesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 4178 gensupport.SetOptions(c.urlParams_, opts...) 4179 res, err := c.doRequest("json") 4180 if res != nil && res.StatusCode == http.StatusNotModified { 4181 if res.Body != nil { 4182 res.Body.Close() 4183 } 4184 return nil, &googleapi.Error{ 4185 Code: res.StatusCode, 4186 Header: res.Header, 4187 } 4188 } 4189 if err != nil { 4190 return nil, err 4191 } 4192 defer googleapi.CloseBody(res) 4193 if err := googleapi.CheckResponse(res); err != nil { 4194 return nil, err 4195 } 4196 ret := &Empty{ 4197 ServerResponse: googleapi.ServerResponse{ 4198 Header: res.Header, 4199 HTTPStatusCode: res.StatusCode, 4200 }, 4201 } 4202 target := &ret 4203 if err := gensupport.DecodeResponse(target, res); err != nil { 4204 return nil, err 4205 } 4206 return ret, nil 4207 // { 4208 // "description": "Deletes the specified note.", 4209 // "flatPath": "v1beta1/projects/{projectsId}/notes/{notesId}", 4210 // "httpMethod": "DELETE", 4211 // "id": "containeranalysis.projects.notes.delete", 4212 // "parameterOrder": [ 4213 // "name" 4214 // ], 4215 // "parameters": { 4216 // "name": { 4217 // "description": "The name of the note in the form of\n`projects/[PROVIDER_ID]/notes/[NOTE_ID]`.", 4218 // "location": "path", 4219 // "pattern": "^projects/[^/]+/notes/[^/]+$", 4220 // "required": true, 4221 // "type": "string" 4222 // } 4223 // }, 4224 // "path": "v1beta1/{+name}", 4225 // "response": { 4226 // "$ref": "Empty" 4227 // }, 4228 // "scopes": [ 4229 // "https://www.googleapis.com/auth/cloud-platform" 4230 // ] 4231 // } 4232 4233} 4234 4235// method id "containeranalysis.projects.notes.get": 4236 4237type ProjectsNotesGetCall struct { 4238 s *Service 4239 name string 4240 urlParams_ gensupport.URLParams 4241 ifNoneMatch_ string 4242 ctx_ context.Context 4243 header_ http.Header 4244} 4245 4246// Get: Gets the specified note. 4247func (r *ProjectsNotesService) Get(name string) *ProjectsNotesGetCall { 4248 c := &ProjectsNotesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4249 c.name = name 4250 return c 4251} 4252 4253// Fields allows partial responses to be retrieved. See 4254// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4255// for more information. 4256func (c *ProjectsNotesGetCall) Fields(s ...googleapi.Field) *ProjectsNotesGetCall { 4257 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4258 return c 4259} 4260 4261// IfNoneMatch sets the optional parameter which makes the operation 4262// fail if the object's ETag matches the given value. This is useful for 4263// getting updates only after the object has changed since the last 4264// request. Use googleapi.IsNotModified to check whether the response 4265// error from Do is the result of In-None-Match. 4266func (c *ProjectsNotesGetCall) IfNoneMatch(entityTag string) *ProjectsNotesGetCall { 4267 c.ifNoneMatch_ = entityTag 4268 return c 4269} 4270 4271// Context sets the context to be used in this call's Do method. Any 4272// pending HTTP request will be aborted if the provided context is 4273// canceled. 4274func (c *ProjectsNotesGetCall) Context(ctx context.Context) *ProjectsNotesGetCall { 4275 c.ctx_ = ctx 4276 return c 4277} 4278 4279// Header returns an http.Header that can be modified by the caller to 4280// add HTTP headers to the request. 4281func (c *ProjectsNotesGetCall) Header() http.Header { 4282 if c.header_ == nil { 4283 c.header_ = make(http.Header) 4284 } 4285 return c.header_ 4286} 4287 4288func (c *ProjectsNotesGetCall) doRequest(alt string) (*http.Response, error) { 4289 reqHeaders := make(http.Header) 4290 for k, v := range c.header_ { 4291 reqHeaders[k] = v 4292 } 4293 reqHeaders.Set("User-Agent", c.s.userAgent()) 4294 if c.ifNoneMatch_ != "" { 4295 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 4296 } 4297 var body io.Reader = nil 4298 c.urlParams_.Set("alt", alt) 4299 c.urlParams_.Set("prettyPrint", "false") 4300 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 4301 urls += "?" + c.urlParams_.Encode() 4302 req, err := http.NewRequest("GET", urls, body) 4303 if err != nil { 4304 return nil, err 4305 } 4306 req.Header = reqHeaders 4307 googleapi.Expand(req.URL, map[string]string{ 4308 "name": c.name, 4309 }) 4310 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4311} 4312 4313// Do executes the "containeranalysis.projects.notes.get" call. 4314// Exactly one of *Note or error will be non-nil. Any non-2xx status 4315// code is an error. Response headers are in either 4316// *Note.ServerResponse.Header or (if a response was returned at all) in 4317// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 4318// whether the returned error was because http.StatusNotModified was 4319// returned. 4320func (c *ProjectsNotesGetCall) Do(opts ...googleapi.CallOption) (*Note, error) { 4321 gensupport.SetOptions(c.urlParams_, opts...) 4322 res, err := c.doRequest("json") 4323 if res != nil && res.StatusCode == http.StatusNotModified { 4324 if res.Body != nil { 4325 res.Body.Close() 4326 } 4327 return nil, &googleapi.Error{ 4328 Code: res.StatusCode, 4329 Header: res.Header, 4330 } 4331 } 4332 if err != nil { 4333 return nil, err 4334 } 4335 defer googleapi.CloseBody(res) 4336 if err := googleapi.CheckResponse(res); err != nil { 4337 return nil, err 4338 } 4339 ret := &Note{ 4340 ServerResponse: googleapi.ServerResponse{ 4341 Header: res.Header, 4342 HTTPStatusCode: res.StatusCode, 4343 }, 4344 } 4345 target := &ret 4346 if err := gensupport.DecodeResponse(target, res); err != nil { 4347 return nil, err 4348 } 4349 return ret, nil 4350 // { 4351 // "description": "Gets the specified note.", 4352 // "flatPath": "v1beta1/projects/{projectsId}/notes/{notesId}", 4353 // "httpMethod": "GET", 4354 // "id": "containeranalysis.projects.notes.get", 4355 // "parameterOrder": [ 4356 // "name" 4357 // ], 4358 // "parameters": { 4359 // "name": { 4360 // "description": "The name of the note in the form of\n`projects/[PROVIDER_ID]/notes/[NOTE_ID]`.", 4361 // "location": "path", 4362 // "pattern": "^projects/[^/]+/notes/[^/]+$", 4363 // "required": true, 4364 // "type": "string" 4365 // } 4366 // }, 4367 // "path": "v1beta1/{+name}", 4368 // "response": { 4369 // "$ref": "Note" 4370 // }, 4371 // "scopes": [ 4372 // "https://www.googleapis.com/auth/cloud-platform" 4373 // ] 4374 // } 4375 4376} 4377 4378// method id "containeranalysis.projects.notes.getIamPolicy": 4379 4380type ProjectsNotesGetIamPolicyCall struct { 4381 s *Service 4382 resource string 4383 getiampolicyrequest *GetIamPolicyRequest 4384 urlParams_ gensupport.URLParams 4385 ctx_ context.Context 4386 header_ http.Header 4387} 4388 4389// GetIamPolicy: Gets the access control policy for a note or an 4390// occurrence resource. 4391// Requires `containeranalysis.notes.setIamPolicy` 4392// or 4393// `containeranalysis.occurrences.setIamPolicy` permission if the 4394// resource is 4395// a note or occurrence, respectively. 4396// 4397// The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` 4398// for 4399// notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` 4400// for 4401// occurrences. 4402func (r *ProjectsNotesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsNotesGetIamPolicyCall { 4403 c := &ProjectsNotesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4404 c.resource = resource 4405 c.getiampolicyrequest = getiampolicyrequest 4406 return c 4407} 4408 4409// Fields allows partial responses to be retrieved. See 4410// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4411// for more information. 4412func (c *ProjectsNotesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsNotesGetIamPolicyCall { 4413 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4414 return c 4415} 4416 4417// Context sets the context to be used in this call's Do method. Any 4418// pending HTTP request will be aborted if the provided context is 4419// canceled. 4420func (c *ProjectsNotesGetIamPolicyCall) Context(ctx context.Context) *ProjectsNotesGetIamPolicyCall { 4421 c.ctx_ = ctx 4422 return c 4423} 4424 4425// Header returns an http.Header that can be modified by the caller to 4426// add HTTP headers to the request. 4427func (c *ProjectsNotesGetIamPolicyCall) Header() http.Header { 4428 if c.header_ == nil { 4429 c.header_ = make(http.Header) 4430 } 4431 return c.header_ 4432} 4433 4434func (c *ProjectsNotesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 4435 reqHeaders := make(http.Header) 4436 for k, v := range c.header_ { 4437 reqHeaders[k] = v 4438 } 4439 reqHeaders.Set("User-Agent", c.s.userAgent()) 4440 var body io.Reader = nil 4441 body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest) 4442 if err != nil { 4443 return nil, err 4444 } 4445 reqHeaders.Set("Content-Type", "application/json") 4446 c.urlParams_.Set("alt", alt) 4447 c.urlParams_.Set("prettyPrint", "false") 4448 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy") 4449 urls += "?" + c.urlParams_.Encode() 4450 req, err := http.NewRequest("POST", urls, body) 4451 if err != nil { 4452 return nil, err 4453 } 4454 req.Header = reqHeaders 4455 googleapi.Expand(req.URL, map[string]string{ 4456 "resource": c.resource, 4457 }) 4458 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4459} 4460 4461// Do executes the "containeranalysis.projects.notes.getIamPolicy" call. 4462// Exactly one of *Policy or error will be non-nil. Any non-2xx status 4463// code is an error. Response headers are in either 4464// *Policy.ServerResponse.Header or (if a response was returned at all) 4465// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 4466// check whether the returned error was because http.StatusNotModified 4467// was returned. 4468func (c *ProjectsNotesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 4469 gensupport.SetOptions(c.urlParams_, opts...) 4470 res, err := c.doRequest("json") 4471 if res != nil && res.StatusCode == http.StatusNotModified { 4472 if res.Body != nil { 4473 res.Body.Close() 4474 } 4475 return nil, &googleapi.Error{ 4476 Code: res.StatusCode, 4477 Header: res.Header, 4478 } 4479 } 4480 if err != nil { 4481 return nil, err 4482 } 4483 defer googleapi.CloseBody(res) 4484 if err := googleapi.CheckResponse(res); err != nil { 4485 return nil, err 4486 } 4487 ret := &Policy{ 4488 ServerResponse: googleapi.ServerResponse{ 4489 Header: res.Header, 4490 HTTPStatusCode: res.StatusCode, 4491 }, 4492 } 4493 target := &ret 4494 if err := gensupport.DecodeResponse(target, res); err != nil { 4495 return nil, err 4496 } 4497 return ret, nil 4498 // { 4499 // "description": "Gets the access control policy for a note or an occurrence resource.\nRequires `containeranalysis.notes.setIamPolicy` or\n`containeranalysis.occurrences.setIamPolicy` permission if the resource is\na note or occurrence, respectively.\n\nThe resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for\nnotes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for\noccurrences.", 4500 // "flatPath": "v1beta1/projects/{projectsId}/notes/{notesId}:getIamPolicy", 4501 // "httpMethod": "POST", 4502 // "id": "containeranalysis.projects.notes.getIamPolicy", 4503 // "parameterOrder": [ 4504 // "resource" 4505 // ], 4506 // "parameters": { 4507 // "resource": { 4508 // "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", 4509 // "location": "path", 4510 // "pattern": "^projects/[^/]+/notes/[^/]+$", 4511 // "required": true, 4512 // "type": "string" 4513 // } 4514 // }, 4515 // "path": "v1beta1/{+resource}:getIamPolicy", 4516 // "request": { 4517 // "$ref": "GetIamPolicyRequest" 4518 // }, 4519 // "response": { 4520 // "$ref": "Policy" 4521 // }, 4522 // "scopes": [ 4523 // "https://www.googleapis.com/auth/cloud-platform" 4524 // ] 4525 // } 4526 4527} 4528 4529// method id "containeranalysis.projects.notes.list": 4530 4531type ProjectsNotesListCall struct { 4532 s *Service 4533 parent string 4534 urlParams_ gensupport.URLParams 4535 ifNoneMatch_ string 4536 ctx_ context.Context 4537 header_ http.Header 4538} 4539 4540// List: Lists notes for the specified project. 4541func (r *ProjectsNotesService) List(parent string) *ProjectsNotesListCall { 4542 c := &ProjectsNotesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4543 c.parent = parent 4544 return c 4545} 4546 4547// Filter sets the optional parameter "filter": The filter expression. 4548func (c *ProjectsNotesListCall) Filter(filter string) *ProjectsNotesListCall { 4549 c.urlParams_.Set("filter", filter) 4550 return c 4551} 4552 4553// PageSize sets the optional parameter "pageSize": Number of notes to 4554// return in the list. Must be positive. Max allowed page 4555// size is 1000. If not specified, page size defaults to 20. 4556func (c *ProjectsNotesListCall) PageSize(pageSize int64) *ProjectsNotesListCall { 4557 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 4558 return c 4559} 4560 4561// PageToken sets the optional parameter "pageToken": Token to provide 4562// to skip to a particular spot in the list. 4563func (c *ProjectsNotesListCall) PageToken(pageToken string) *ProjectsNotesListCall { 4564 c.urlParams_.Set("pageToken", pageToken) 4565 return c 4566} 4567 4568// Fields allows partial responses to be retrieved. See 4569// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4570// for more information. 4571func (c *ProjectsNotesListCall) Fields(s ...googleapi.Field) *ProjectsNotesListCall { 4572 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4573 return c 4574} 4575 4576// IfNoneMatch sets the optional parameter which makes the operation 4577// fail if the object's ETag matches the given value. This is useful for 4578// getting updates only after the object has changed since the last 4579// request. Use googleapi.IsNotModified to check whether the response 4580// error from Do is the result of In-None-Match. 4581func (c *ProjectsNotesListCall) IfNoneMatch(entityTag string) *ProjectsNotesListCall { 4582 c.ifNoneMatch_ = entityTag 4583 return c 4584} 4585 4586// Context sets the context to be used in this call's Do method. Any 4587// pending HTTP request will be aborted if the provided context is 4588// canceled. 4589func (c *ProjectsNotesListCall) Context(ctx context.Context) *ProjectsNotesListCall { 4590 c.ctx_ = ctx 4591 return c 4592} 4593 4594// Header returns an http.Header that can be modified by the caller to 4595// add HTTP headers to the request. 4596func (c *ProjectsNotesListCall) Header() http.Header { 4597 if c.header_ == nil { 4598 c.header_ = make(http.Header) 4599 } 4600 return c.header_ 4601} 4602 4603func (c *ProjectsNotesListCall) doRequest(alt string) (*http.Response, error) { 4604 reqHeaders := make(http.Header) 4605 for k, v := range c.header_ { 4606 reqHeaders[k] = v 4607 } 4608 reqHeaders.Set("User-Agent", c.s.userAgent()) 4609 if c.ifNoneMatch_ != "" { 4610 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 4611 } 4612 var body io.Reader = nil 4613 c.urlParams_.Set("alt", alt) 4614 c.urlParams_.Set("prettyPrint", "false") 4615 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/notes") 4616 urls += "?" + c.urlParams_.Encode() 4617 req, err := http.NewRequest("GET", urls, body) 4618 if err != nil { 4619 return nil, err 4620 } 4621 req.Header = reqHeaders 4622 googleapi.Expand(req.URL, map[string]string{ 4623 "parent": c.parent, 4624 }) 4625 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4626} 4627 4628// Do executes the "containeranalysis.projects.notes.list" call. 4629// Exactly one of *ListNotesResponse or error will be non-nil. Any 4630// non-2xx status code is an error. Response headers are in either 4631// *ListNotesResponse.ServerResponse.Header or (if a response was 4632// returned at all) in error.(*googleapi.Error).Header. Use 4633// googleapi.IsNotModified to check whether the returned error was 4634// because http.StatusNotModified was returned. 4635func (c *ProjectsNotesListCall) Do(opts ...googleapi.CallOption) (*ListNotesResponse, error) { 4636 gensupport.SetOptions(c.urlParams_, opts...) 4637 res, err := c.doRequest("json") 4638 if res != nil && res.StatusCode == http.StatusNotModified { 4639 if res.Body != nil { 4640 res.Body.Close() 4641 } 4642 return nil, &googleapi.Error{ 4643 Code: res.StatusCode, 4644 Header: res.Header, 4645 } 4646 } 4647 if err != nil { 4648 return nil, err 4649 } 4650 defer googleapi.CloseBody(res) 4651 if err := googleapi.CheckResponse(res); err != nil { 4652 return nil, err 4653 } 4654 ret := &ListNotesResponse{ 4655 ServerResponse: googleapi.ServerResponse{ 4656 Header: res.Header, 4657 HTTPStatusCode: res.StatusCode, 4658 }, 4659 } 4660 target := &ret 4661 if err := gensupport.DecodeResponse(target, res); err != nil { 4662 return nil, err 4663 } 4664 return ret, nil 4665 // { 4666 // "description": "Lists notes for the specified project.", 4667 // "flatPath": "v1beta1/projects/{projectsId}/notes", 4668 // "httpMethod": "GET", 4669 // "id": "containeranalysis.projects.notes.list", 4670 // "parameterOrder": [ 4671 // "parent" 4672 // ], 4673 // "parameters": { 4674 // "filter": { 4675 // "description": "The filter expression.", 4676 // "location": "query", 4677 // "type": "string" 4678 // }, 4679 // "pageSize": { 4680 // "description": "Number of notes to return in the list. Must be positive. Max allowed page\nsize is 1000. If not specified, page size defaults to 20.", 4681 // "format": "int32", 4682 // "location": "query", 4683 // "type": "integer" 4684 // }, 4685 // "pageToken": { 4686 // "description": "Token to provide to skip to a particular spot in the list.", 4687 // "location": "query", 4688 // "type": "string" 4689 // }, 4690 // "parent": { 4691 // "description": "The name of the project to list notes for in the form of\n`projects/[PROJECT_ID]`.", 4692 // "location": "path", 4693 // "pattern": "^projects/[^/]+$", 4694 // "required": true, 4695 // "type": "string" 4696 // } 4697 // }, 4698 // "path": "v1beta1/{+parent}/notes", 4699 // "response": { 4700 // "$ref": "ListNotesResponse" 4701 // }, 4702 // "scopes": [ 4703 // "https://www.googleapis.com/auth/cloud-platform" 4704 // ] 4705 // } 4706 4707} 4708 4709// Pages invokes f for each page of results. 4710// A non-nil error returned from f will halt the iteration. 4711// The provided context supersedes any context provided to the Context method. 4712func (c *ProjectsNotesListCall) Pages(ctx context.Context, f func(*ListNotesResponse) error) error { 4713 c.ctx_ = ctx 4714 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 4715 for { 4716 x, err := c.Do() 4717 if err != nil { 4718 return err 4719 } 4720 if err := f(x); err != nil { 4721 return err 4722 } 4723 if x.NextPageToken == "" { 4724 return nil 4725 } 4726 c.PageToken(x.NextPageToken) 4727 } 4728} 4729 4730// method id "containeranalysis.projects.notes.patch": 4731 4732type ProjectsNotesPatchCall struct { 4733 s *Service 4734 name string 4735 note *Note 4736 urlParams_ gensupport.URLParams 4737 ctx_ context.Context 4738 header_ http.Header 4739} 4740 4741// Patch: Updates the specified note. 4742func (r *ProjectsNotesService) Patch(name string, note *Note) *ProjectsNotesPatchCall { 4743 c := &ProjectsNotesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4744 c.name = name 4745 c.note = note 4746 return c 4747} 4748 4749// UpdateMask sets the optional parameter "updateMask": The fields to 4750// update. 4751func (c *ProjectsNotesPatchCall) UpdateMask(updateMask string) *ProjectsNotesPatchCall { 4752 c.urlParams_.Set("updateMask", updateMask) 4753 return c 4754} 4755 4756// Fields allows partial responses to be retrieved. See 4757// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4758// for more information. 4759func (c *ProjectsNotesPatchCall) Fields(s ...googleapi.Field) *ProjectsNotesPatchCall { 4760 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4761 return c 4762} 4763 4764// Context sets the context to be used in this call's Do method. Any 4765// pending HTTP request will be aborted if the provided context is 4766// canceled. 4767func (c *ProjectsNotesPatchCall) Context(ctx context.Context) *ProjectsNotesPatchCall { 4768 c.ctx_ = ctx 4769 return c 4770} 4771 4772// Header returns an http.Header that can be modified by the caller to 4773// add HTTP headers to the request. 4774func (c *ProjectsNotesPatchCall) Header() http.Header { 4775 if c.header_ == nil { 4776 c.header_ = make(http.Header) 4777 } 4778 return c.header_ 4779} 4780 4781func (c *ProjectsNotesPatchCall) doRequest(alt string) (*http.Response, error) { 4782 reqHeaders := make(http.Header) 4783 for k, v := range c.header_ { 4784 reqHeaders[k] = v 4785 } 4786 reqHeaders.Set("User-Agent", c.s.userAgent()) 4787 var body io.Reader = nil 4788 body, err := googleapi.WithoutDataWrapper.JSONReader(c.note) 4789 if err != nil { 4790 return nil, err 4791 } 4792 reqHeaders.Set("Content-Type", "application/json") 4793 c.urlParams_.Set("alt", alt) 4794 c.urlParams_.Set("prettyPrint", "false") 4795 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 4796 urls += "?" + c.urlParams_.Encode() 4797 req, err := http.NewRequest("PATCH", urls, body) 4798 if err != nil { 4799 return nil, err 4800 } 4801 req.Header = reqHeaders 4802 googleapi.Expand(req.URL, map[string]string{ 4803 "name": c.name, 4804 }) 4805 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4806} 4807 4808// Do executes the "containeranalysis.projects.notes.patch" call. 4809// Exactly one of *Note or error will be non-nil. Any non-2xx status 4810// code is an error. Response headers are in either 4811// *Note.ServerResponse.Header or (if a response was returned at all) in 4812// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 4813// whether the returned error was because http.StatusNotModified was 4814// returned. 4815func (c *ProjectsNotesPatchCall) Do(opts ...googleapi.CallOption) (*Note, error) { 4816 gensupport.SetOptions(c.urlParams_, opts...) 4817 res, err := c.doRequest("json") 4818 if res != nil && res.StatusCode == http.StatusNotModified { 4819 if res.Body != nil { 4820 res.Body.Close() 4821 } 4822 return nil, &googleapi.Error{ 4823 Code: res.StatusCode, 4824 Header: res.Header, 4825 } 4826 } 4827 if err != nil { 4828 return nil, err 4829 } 4830 defer googleapi.CloseBody(res) 4831 if err := googleapi.CheckResponse(res); err != nil { 4832 return nil, err 4833 } 4834 ret := &Note{ 4835 ServerResponse: googleapi.ServerResponse{ 4836 Header: res.Header, 4837 HTTPStatusCode: res.StatusCode, 4838 }, 4839 } 4840 target := &ret 4841 if err := gensupport.DecodeResponse(target, res); err != nil { 4842 return nil, err 4843 } 4844 return ret, nil 4845 // { 4846 // "description": "Updates the specified note.", 4847 // "flatPath": "v1beta1/projects/{projectsId}/notes/{notesId}", 4848 // "httpMethod": "PATCH", 4849 // "id": "containeranalysis.projects.notes.patch", 4850 // "parameterOrder": [ 4851 // "name" 4852 // ], 4853 // "parameters": { 4854 // "name": { 4855 // "description": "The name of the note in the form of\n`projects/[PROVIDER_ID]/notes/[NOTE_ID]`.", 4856 // "location": "path", 4857 // "pattern": "^projects/[^/]+/notes/[^/]+$", 4858 // "required": true, 4859 // "type": "string" 4860 // }, 4861 // "updateMask": { 4862 // "description": "The fields to update.", 4863 // "format": "google-fieldmask", 4864 // "location": "query", 4865 // "type": "string" 4866 // } 4867 // }, 4868 // "path": "v1beta1/{+name}", 4869 // "request": { 4870 // "$ref": "Note" 4871 // }, 4872 // "response": { 4873 // "$ref": "Note" 4874 // }, 4875 // "scopes": [ 4876 // "https://www.googleapis.com/auth/cloud-platform" 4877 // ] 4878 // } 4879 4880} 4881 4882// method id "containeranalysis.projects.notes.setIamPolicy": 4883 4884type ProjectsNotesSetIamPolicyCall struct { 4885 s *Service 4886 resource string 4887 setiampolicyrequest *SetIamPolicyRequest 4888 urlParams_ gensupport.URLParams 4889 ctx_ context.Context 4890 header_ http.Header 4891} 4892 4893// SetIamPolicy: Sets the access control policy on the specified note or 4894// occurrence. 4895// Requires `containeranalysis.notes.setIamPolicy` 4896// or 4897// `containeranalysis.occurrences.setIamPolicy` permission if the 4898// resource is 4899// a note or an occurrence, respectively. 4900// 4901// The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` 4902// for 4903// notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` 4904// for 4905// occurrences. 4906func (r *ProjectsNotesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsNotesSetIamPolicyCall { 4907 c := &ProjectsNotesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 4908 c.resource = resource 4909 c.setiampolicyrequest = setiampolicyrequest 4910 return c 4911} 4912 4913// Fields allows partial responses to be retrieved. See 4914// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 4915// for more information. 4916func (c *ProjectsNotesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsNotesSetIamPolicyCall { 4917 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 4918 return c 4919} 4920 4921// Context sets the context to be used in this call's Do method. Any 4922// pending HTTP request will be aborted if the provided context is 4923// canceled. 4924func (c *ProjectsNotesSetIamPolicyCall) Context(ctx context.Context) *ProjectsNotesSetIamPolicyCall { 4925 c.ctx_ = ctx 4926 return c 4927} 4928 4929// Header returns an http.Header that can be modified by the caller to 4930// add HTTP headers to the request. 4931func (c *ProjectsNotesSetIamPolicyCall) Header() http.Header { 4932 if c.header_ == nil { 4933 c.header_ = make(http.Header) 4934 } 4935 return c.header_ 4936} 4937 4938func (c *ProjectsNotesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 4939 reqHeaders := make(http.Header) 4940 for k, v := range c.header_ { 4941 reqHeaders[k] = v 4942 } 4943 reqHeaders.Set("User-Agent", c.s.userAgent()) 4944 var body io.Reader = nil 4945 body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) 4946 if err != nil { 4947 return nil, err 4948 } 4949 reqHeaders.Set("Content-Type", "application/json") 4950 c.urlParams_.Set("alt", alt) 4951 c.urlParams_.Set("prettyPrint", "false") 4952 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy") 4953 urls += "?" + c.urlParams_.Encode() 4954 req, err := http.NewRequest("POST", urls, body) 4955 if err != nil { 4956 return nil, err 4957 } 4958 req.Header = reqHeaders 4959 googleapi.Expand(req.URL, map[string]string{ 4960 "resource": c.resource, 4961 }) 4962 return gensupport.SendRequest(c.ctx_, c.s.client, req) 4963} 4964 4965// Do executes the "containeranalysis.projects.notes.setIamPolicy" call. 4966// Exactly one of *Policy or error will be non-nil. Any non-2xx status 4967// code is an error. Response headers are in either 4968// *Policy.ServerResponse.Header or (if a response was returned at all) 4969// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 4970// check whether the returned error was because http.StatusNotModified 4971// was returned. 4972func (c *ProjectsNotesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 4973 gensupport.SetOptions(c.urlParams_, opts...) 4974 res, err := c.doRequest("json") 4975 if res != nil && res.StatusCode == http.StatusNotModified { 4976 if res.Body != nil { 4977 res.Body.Close() 4978 } 4979 return nil, &googleapi.Error{ 4980 Code: res.StatusCode, 4981 Header: res.Header, 4982 } 4983 } 4984 if err != nil { 4985 return nil, err 4986 } 4987 defer googleapi.CloseBody(res) 4988 if err := googleapi.CheckResponse(res); err != nil { 4989 return nil, err 4990 } 4991 ret := &Policy{ 4992 ServerResponse: googleapi.ServerResponse{ 4993 Header: res.Header, 4994 HTTPStatusCode: res.StatusCode, 4995 }, 4996 } 4997 target := &ret 4998 if err := gensupport.DecodeResponse(target, res); err != nil { 4999 return nil, err 5000 } 5001 return ret, nil 5002 // { 5003 // "description": "Sets the access control policy on the specified note or occurrence.\nRequires `containeranalysis.notes.setIamPolicy` or\n`containeranalysis.occurrences.setIamPolicy` permission if the resource is\na note or an occurrence, respectively.\n\nThe resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for\nnotes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for\noccurrences.", 5004 // "flatPath": "v1beta1/projects/{projectsId}/notes/{notesId}:setIamPolicy", 5005 // "httpMethod": "POST", 5006 // "id": "containeranalysis.projects.notes.setIamPolicy", 5007 // "parameterOrder": [ 5008 // "resource" 5009 // ], 5010 // "parameters": { 5011 // "resource": { 5012 // "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", 5013 // "location": "path", 5014 // "pattern": "^projects/[^/]+/notes/[^/]+$", 5015 // "required": true, 5016 // "type": "string" 5017 // } 5018 // }, 5019 // "path": "v1beta1/{+resource}:setIamPolicy", 5020 // "request": { 5021 // "$ref": "SetIamPolicyRequest" 5022 // }, 5023 // "response": { 5024 // "$ref": "Policy" 5025 // }, 5026 // "scopes": [ 5027 // "https://www.googleapis.com/auth/cloud-platform" 5028 // ] 5029 // } 5030 5031} 5032 5033// method id "containeranalysis.projects.notes.testIamPermissions": 5034 5035type ProjectsNotesTestIamPermissionsCall struct { 5036 s *Service 5037 resource string 5038 testiampermissionsrequest *TestIamPermissionsRequest 5039 urlParams_ gensupport.URLParams 5040 ctx_ context.Context 5041 header_ http.Header 5042} 5043 5044// TestIamPermissions: Returns the permissions that a caller has on the 5045// specified note or 5046// occurrence. Requires list permission on the project (for 5047// example, 5048// `containeranalysis.notes.list`). 5049// 5050// The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` 5051// for 5052// notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` 5053// for 5054// occurrences. 5055func (r *ProjectsNotesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsNotesTestIamPermissionsCall { 5056 c := &ProjectsNotesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5057 c.resource = resource 5058 c.testiampermissionsrequest = testiampermissionsrequest 5059 return c 5060} 5061 5062// Fields allows partial responses to be retrieved. See 5063// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5064// for more information. 5065func (c *ProjectsNotesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsNotesTestIamPermissionsCall { 5066 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5067 return c 5068} 5069 5070// Context sets the context to be used in this call's Do method. Any 5071// pending HTTP request will be aborted if the provided context is 5072// canceled. 5073func (c *ProjectsNotesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsNotesTestIamPermissionsCall { 5074 c.ctx_ = ctx 5075 return c 5076} 5077 5078// Header returns an http.Header that can be modified by the caller to 5079// add HTTP headers to the request. 5080func (c *ProjectsNotesTestIamPermissionsCall) Header() http.Header { 5081 if c.header_ == nil { 5082 c.header_ = make(http.Header) 5083 } 5084 return c.header_ 5085} 5086 5087func (c *ProjectsNotesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { 5088 reqHeaders := make(http.Header) 5089 for k, v := range c.header_ { 5090 reqHeaders[k] = v 5091 } 5092 reqHeaders.Set("User-Agent", c.s.userAgent()) 5093 var body io.Reader = nil 5094 body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) 5095 if err != nil { 5096 return nil, err 5097 } 5098 reqHeaders.Set("Content-Type", "application/json") 5099 c.urlParams_.Set("alt", alt) 5100 c.urlParams_.Set("prettyPrint", "false") 5101 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions") 5102 urls += "?" + c.urlParams_.Encode() 5103 req, err := http.NewRequest("POST", urls, body) 5104 if err != nil { 5105 return nil, err 5106 } 5107 req.Header = reqHeaders 5108 googleapi.Expand(req.URL, map[string]string{ 5109 "resource": c.resource, 5110 }) 5111 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5112} 5113 5114// Do executes the "containeranalysis.projects.notes.testIamPermissions" call. 5115// Exactly one of *TestIamPermissionsResponse or error will be non-nil. 5116// Any non-2xx status code is an error. Response headers are in either 5117// *TestIamPermissionsResponse.ServerResponse.Header or (if a response 5118// was returned at all) in error.(*googleapi.Error).Header. Use 5119// googleapi.IsNotModified to check whether the returned error was 5120// because http.StatusNotModified was returned. 5121func (c *ProjectsNotesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { 5122 gensupport.SetOptions(c.urlParams_, opts...) 5123 res, err := c.doRequest("json") 5124 if res != nil && res.StatusCode == http.StatusNotModified { 5125 if res.Body != nil { 5126 res.Body.Close() 5127 } 5128 return nil, &googleapi.Error{ 5129 Code: res.StatusCode, 5130 Header: res.Header, 5131 } 5132 } 5133 if err != nil { 5134 return nil, err 5135 } 5136 defer googleapi.CloseBody(res) 5137 if err := googleapi.CheckResponse(res); err != nil { 5138 return nil, err 5139 } 5140 ret := &TestIamPermissionsResponse{ 5141 ServerResponse: googleapi.ServerResponse{ 5142 Header: res.Header, 5143 HTTPStatusCode: res.StatusCode, 5144 }, 5145 } 5146 target := &ret 5147 if err := gensupport.DecodeResponse(target, res); err != nil { 5148 return nil, err 5149 } 5150 return ret, nil 5151 // { 5152 // "description": "Returns the permissions that a caller has on the specified note or\noccurrence. Requires list permission on the project (for example,\n`containeranalysis.notes.list`).\n\nThe resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for\nnotes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for\noccurrences.", 5153 // "flatPath": "v1beta1/projects/{projectsId}/notes/{notesId}:testIamPermissions", 5154 // "httpMethod": "POST", 5155 // "id": "containeranalysis.projects.notes.testIamPermissions", 5156 // "parameterOrder": [ 5157 // "resource" 5158 // ], 5159 // "parameters": { 5160 // "resource": { 5161 // "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", 5162 // "location": "path", 5163 // "pattern": "^projects/[^/]+/notes/[^/]+$", 5164 // "required": true, 5165 // "type": "string" 5166 // } 5167 // }, 5168 // "path": "v1beta1/{+resource}:testIamPermissions", 5169 // "request": { 5170 // "$ref": "TestIamPermissionsRequest" 5171 // }, 5172 // "response": { 5173 // "$ref": "TestIamPermissionsResponse" 5174 // }, 5175 // "scopes": [ 5176 // "https://www.googleapis.com/auth/cloud-platform" 5177 // ] 5178 // } 5179 5180} 5181 5182// method id "containeranalysis.projects.notes.occurrences.list": 5183 5184type ProjectsNotesOccurrencesListCall struct { 5185 s *Service 5186 name string 5187 urlParams_ gensupport.URLParams 5188 ifNoneMatch_ string 5189 ctx_ context.Context 5190 header_ http.Header 5191} 5192 5193// List: Lists occurrences referencing the specified note. Provider 5194// projects can use 5195// this method to get all occurrences across consumer projects 5196// referencing the 5197// specified note. 5198func (r *ProjectsNotesOccurrencesService) List(name string) *ProjectsNotesOccurrencesListCall { 5199 c := &ProjectsNotesOccurrencesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5200 c.name = name 5201 return c 5202} 5203 5204// Filter sets the optional parameter "filter": The filter expression. 5205func (c *ProjectsNotesOccurrencesListCall) Filter(filter string) *ProjectsNotesOccurrencesListCall { 5206 c.urlParams_.Set("filter", filter) 5207 return c 5208} 5209 5210// PageSize sets the optional parameter "pageSize": Number of 5211// occurrences to return in the list. 5212func (c *ProjectsNotesOccurrencesListCall) PageSize(pageSize int64) *ProjectsNotesOccurrencesListCall { 5213 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 5214 return c 5215} 5216 5217// PageToken sets the optional parameter "pageToken": Token to provide 5218// to skip to a particular spot in the list. 5219func (c *ProjectsNotesOccurrencesListCall) PageToken(pageToken string) *ProjectsNotesOccurrencesListCall { 5220 c.urlParams_.Set("pageToken", pageToken) 5221 return c 5222} 5223 5224// Fields allows partial responses to be retrieved. See 5225// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5226// for more information. 5227func (c *ProjectsNotesOccurrencesListCall) Fields(s ...googleapi.Field) *ProjectsNotesOccurrencesListCall { 5228 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5229 return c 5230} 5231 5232// IfNoneMatch sets the optional parameter which makes the operation 5233// fail if the object's ETag matches the given value. This is useful for 5234// getting updates only after the object has changed since the last 5235// request. Use googleapi.IsNotModified to check whether the response 5236// error from Do is the result of In-None-Match. 5237func (c *ProjectsNotesOccurrencesListCall) IfNoneMatch(entityTag string) *ProjectsNotesOccurrencesListCall { 5238 c.ifNoneMatch_ = entityTag 5239 return c 5240} 5241 5242// Context sets the context to be used in this call's Do method. Any 5243// pending HTTP request will be aborted if the provided context is 5244// canceled. 5245func (c *ProjectsNotesOccurrencesListCall) Context(ctx context.Context) *ProjectsNotesOccurrencesListCall { 5246 c.ctx_ = ctx 5247 return c 5248} 5249 5250// Header returns an http.Header that can be modified by the caller to 5251// add HTTP headers to the request. 5252func (c *ProjectsNotesOccurrencesListCall) Header() http.Header { 5253 if c.header_ == nil { 5254 c.header_ = make(http.Header) 5255 } 5256 return c.header_ 5257} 5258 5259func (c *ProjectsNotesOccurrencesListCall) doRequest(alt string) (*http.Response, error) { 5260 reqHeaders := make(http.Header) 5261 for k, v := range c.header_ { 5262 reqHeaders[k] = v 5263 } 5264 reqHeaders.Set("User-Agent", c.s.userAgent()) 5265 if c.ifNoneMatch_ != "" { 5266 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 5267 } 5268 var body io.Reader = nil 5269 c.urlParams_.Set("alt", alt) 5270 c.urlParams_.Set("prettyPrint", "false") 5271 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/occurrences") 5272 urls += "?" + c.urlParams_.Encode() 5273 req, err := http.NewRequest("GET", urls, body) 5274 if err != nil { 5275 return nil, err 5276 } 5277 req.Header = reqHeaders 5278 googleapi.Expand(req.URL, map[string]string{ 5279 "name": c.name, 5280 }) 5281 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5282} 5283 5284// Do executes the "containeranalysis.projects.notes.occurrences.list" call. 5285// Exactly one of *ListNoteOccurrencesResponse or error will be non-nil. 5286// Any non-2xx status code is an error. Response headers are in either 5287// *ListNoteOccurrencesResponse.ServerResponse.Header or (if a response 5288// was returned at all) in error.(*googleapi.Error).Header. Use 5289// googleapi.IsNotModified to check whether the returned error was 5290// because http.StatusNotModified was returned. 5291func (c *ProjectsNotesOccurrencesListCall) Do(opts ...googleapi.CallOption) (*ListNoteOccurrencesResponse, error) { 5292 gensupport.SetOptions(c.urlParams_, opts...) 5293 res, err := c.doRequest("json") 5294 if res != nil && res.StatusCode == http.StatusNotModified { 5295 if res.Body != nil { 5296 res.Body.Close() 5297 } 5298 return nil, &googleapi.Error{ 5299 Code: res.StatusCode, 5300 Header: res.Header, 5301 } 5302 } 5303 if err != nil { 5304 return nil, err 5305 } 5306 defer googleapi.CloseBody(res) 5307 if err := googleapi.CheckResponse(res); err != nil { 5308 return nil, err 5309 } 5310 ret := &ListNoteOccurrencesResponse{ 5311 ServerResponse: googleapi.ServerResponse{ 5312 Header: res.Header, 5313 HTTPStatusCode: res.StatusCode, 5314 }, 5315 } 5316 target := &ret 5317 if err := gensupport.DecodeResponse(target, res); err != nil { 5318 return nil, err 5319 } 5320 return ret, nil 5321 // { 5322 // "description": "Lists occurrences referencing the specified note. Provider projects can use\nthis method to get all occurrences across consumer projects referencing the\nspecified note.", 5323 // "flatPath": "v1beta1/projects/{projectsId}/notes/{notesId}/occurrences", 5324 // "httpMethod": "GET", 5325 // "id": "containeranalysis.projects.notes.occurrences.list", 5326 // "parameterOrder": [ 5327 // "name" 5328 // ], 5329 // "parameters": { 5330 // "filter": { 5331 // "description": "The filter expression.", 5332 // "location": "query", 5333 // "type": "string" 5334 // }, 5335 // "name": { 5336 // "description": "The name of the note to list occurrences for in the form of\n`projects/[PROVIDER_ID]/notes/[NOTE_ID]`.", 5337 // "location": "path", 5338 // "pattern": "^projects/[^/]+/notes/[^/]+$", 5339 // "required": true, 5340 // "type": "string" 5341 // }, 5342 // "pageSize": { 5343 // "description": "Number of occurrences to return in the list.", 5344 // "format": "int32", 5345 // "location": "query", 5346 // "type": "integer" 5347 // }, 5348 // "pageToken": { 5349 // "description": "Token to provide to skip to a particular spot in the list.", 5350 // "location": "query", 5351 // "type": "string" 5352 // } 5353 // }, 5354 // "path": "v1beta1/{+name}/occurrences", 5355 // "response": { 5356 // "$ref": "ListNoteOccurrencesResponse" 5357 // }, 5358 // "scopes": [ 5359 // "https://www.googleapis.com/auth/cloud-platform" 5360 // ] 5361 // } 5362 5363} 5364 5365// Pages invokes f for each page of results. 5366// A non-nil error returned from f will halt the iteration. 5367// The provided context supersedes any context provided to the Context method. 5368func (c *ProjectsNotesOccurrencesListCall) Pages(ctx context.Context, f func(*ListNoteOccurrencesResponse) error) error { 5369 c.ctx_ = ctx 5370 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 5371 for { 5372 x, err := c.Do() 5373 if err != nil { 5374 return err 5375 } 5376 if err := f(x); err != nil { 5377 return err 5378 } 5379 if x.NextPageToken == "" { 5380 return nil 5381 } 5382 c.PageToken(x.NextPageToken) 5383 } 5384} 5385 5386// method id "containeranalysis.projects.occurrences.batchCreate": 5387 5388type ProjectsOccurrencesBatchCreateCall struct { 5389 s *Service 5390 parent string 5391 batchcreateoccurrencesrequest *BatchCreateOccurrencesRequest 5392 urlParams_ gensupport.URLParams 5393 ctx_ context.Context 5394 header_ http.Header 5395} 5396 5397// BatchCreate: Creates new occurrences in batch. 5398func (r *ProjectsOccurrencesService) BatchCreate(parent string, batchcreateoccurrencesrequest *BatchCreateOccurrencesRequest) *ProjectsOccurrencesBatchCreateCall { 5399 c := &ProjectsOccurrencesBatchCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5400 c.parent = parent 5401 c.batchcreateoccurrencesrequest = batchcreateoccurrencesrequest 5402 return c 5403} 5404 5405// Fields allows partial responses to be retrieved. See 5406// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5407// for more information. 5408func (c *ProjectsOccurrencesBatchCreateCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesBatchCreateCall { 5409 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5410 return c 5411} 5412 5413// Context sets the context to be used in this call's Do method. Any 5414// pending HTTP request will be aborted if the provided context is 5415// canceled. 5416func (c *ProjectsOccurrencesBatchCreateCall) Context(ctx context.Context) *ProjectsOccurrencesBatchCreateCall { 5417 c.ctx_ = ctx 5418 return c 5419} 5420 5421// Header returns an http.Header that can be modified by the caller to 5422// add HTTP headers to the request. 5423func (c *ProjectsOccurrencesBatchCreateCall) Header() http.Header { 5424 if c.header_ == nil { 5425 c.header_ = make(http.Header) 5426 } 5427 return c.header_ 5428} 5429 5430func (c *ProjectsOccurrencesBatchCreateCall) doRequest(alt string) (*http.Response, error) { 5431 reqHeaders := make(http.Header) 5432 for k, v := range c.header_ { 5433 reqHeaders[k] = v 5434 } 5435 reqHeaders.Set("User-Agent", c.s.userAgent()) 5436 var body io.Reader = nil 5437 body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchcreateoccurrencesrequest) 5438 if err != nil { 5439 return nil, err 5440 } 5441 reqHeaders.Set("Content-Type", "application/json") 5442 c.urlParams_.Set("alt", alt) 5443 c.urlParams_.Set("prettyPrint", "false") 5444 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences:batchCreate") 5445 urls += "?" + c.urlParams_.Encode() 5446 req, err := http.NewRequest("POST", urls, body) 5447 if err != nil { 5448 return nil, err 5449 } 5450 req.Header = reqHeaders 5451 googleapi.Expand(req.URL, map[string]string{ 5452 "parent": c.parent, 5453 }) 5454 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5455} 5456 5457// Do executes the "containeranalysis.projects.occurrences.batchCreate" call. 5458// Exactly one of *BatchCreateOccurrencesResponse or error will be 5459// non-nil. Any non-2xx status code is an error. Response headers are in 5460// either *BatchCreateOccurrencesResponse.ServerResponse.Header or (if a 5461// response was returned at all) in error.(*googleapi.Error).Header. Use 5462// googleapi.IsNotModified to check whether the returned error was 5463// because http.StatusNotModified was returned. 5464func (c *ProjectsOccurrencesBatchCreateCall) Do(opts ...googleapi.CallOption) (*BatchCreateOccurrencesResponse, error) { 5465 gensupport.SetOptions(c.urlParams_, opts...) 5466 res, err := c.doRequest("json") 5467 if res != nil && res.StatusCode == http.StatusNotModified { 5468 if res.Body != nil { 5469 res.Body.Close() 5470 } 5471 return nil, &googleapi.Error{ 5472 Code: res.StatusCode, 5473 Header: res.Header, 5474 } 5475 } 5476 if err != nil { 5477 return nil, err 5478 } 5479 defer googleapi.CloseBody(res) 5480 if err := googleapi.CheckResponse(res); err != nil { 5481 return nil, err 5482 } 5483 ret := &BatchCreateOccurrencesResponse{ 5484 ServerResponse: googleapi.ServerResponse{ 5485 Header: res.Header, 5486 HTTPStatusCode: res.StatusCode, 5487 }, 5488 } 5489 target := &ret 5490 if err := gensupport.DecodeResponse(target, res); err != nil { 5491 return nil, err 5492 } 5493 return ret, nil 5494 // { 5495 // "description": "Creates new occurrences in batch.", 5496 // "flatPath": "v1beta1/projects/{projectsId}/occurrences:batchCreate", 5497 // "httpMethod": "POST", 5498 // "id": "containeranalysis.projects.occurrences.batchCreate", 5499 // "parameterOrder": [ 5500 // "parent" 5501 // ], 5502 // "parameters": { 5503 // "parent": { 5504 // "description": "The name of the project in the form of `projects/[PROJECT_ID]`, under which\nthe occurrences are to be created.", 5505 // "location": "path", 5506 // "pattern": "^projects/[^/]+$", 5507 // "required": true, 5508 // "type": "string" 5509 // } 5510 // }, 5511 // "path": "v1beta1/{+parent}/occurrences:batchCreate", 5512 // "request": { 5513 // "$ref": "BatchCreateOccurrencesRequest" 5514 // }, 5515 // "response": { 5516 // "$ref": "BatchCreateOccurrencesResponse" 5517 // }, 5518 // "scopes": [ 5519 // "https://www.googleapis.com/auth/cloud-platform" 5520 // ] 5521 // } 5522 5523} 5524 5525// method id "containeranalysis.projects.occurrences.create": 5526 5527type ProjectsOccurrencesCreateCall struct { 5528 s *Service 5529 parent string 5530 occurrence *Occurrence 5531 urlParams_ gensupport.URLParams 5532 ctx_ context.Context 5533 header_ http.Header 5534} 5535 5536// Create: Creates a new occurrence. 5537func (r *ProjectsOccurrencesService) Create(parent string, occurrence *Occurrence) *ProjectsOccurrencesCreateCall { 5538 c := &ProjectsOccurrencesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5539 c.parent = parent 5540 c.occurrence = occurrence 5541 return c 5542} 5543 5544// Fields allows partial responses to be retrieved. See 5545// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5546// for more information. 5547func (c *ProjectsOccurrencesCreateCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesCreateCall { 5548 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5549 return c 5550} 5551 5552// Context sets the context to be used in this call's Do method. Any 5553// pending HTTP request will be aborted if the provided context is 5554// canceled. 5555func (c *ProjectsOccurrencesCreateCall) Context(ctx context.Context) *ProjectsOccurrencesCreateCall { 5556 c.ctx_ = ctx 5557 return c 5558} 5559 5560// Header returns an http.Header that can be modified by the caller to 5561// add HTTP headers to the request. 5562func (c *ProjectsOccurrencesCreateCall) Header() http.Header { 5563 if c.header_ == nil { 5564 c.header_ = make(http.Header) 5565 } 5566 return c.header_ 5567} 5568 5569func (c *ProjectsOccurrencesCreateCall) doRequest(alt string) (*http.Response, error) { 5570 reqHeaders := make(http.Header) 5571 for k, v := range c.header_ { 5572 reqHeaders[k] = v 5573 } 5574 reqHeaders.Set("User-Agent", c.s.userAgent()) 5575 var body io.Reader = nil 5576 body, err := googleapi.WithoutDataWrapper.JSONReader(c.occurrence) 5577 if err != nil { 5578 return nil, err 5579 } 5580 reqHeaders.Set("Content-Type", "application/json") 5581 c.urlParams_.Set("alt", alt) 5582 c.urlParams_.Set("prettyPrint", "false") 5583 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences") 5584 urls += "?" + c.urlParams_.Encode() 5585 req, err := http.NewRequest("POST", urls, body) 5586 if err != nil { 5587 return nil, err 5588 } 5589 req.Header = reqHeaders 5590 googleapi.Expand(req.URL, map[string]string{ 5591 "parent": c.parent, 5592 }) 5593 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5594} 5595 5596// Do executes the "containeranalysis.projects.occurrences.create" call. 5597// Exactly one of *Occurrence or error will be non-nil. Any non-2xx 5598// status code is an error. Response headers are in either 5599// *Occurrence.ServerResponse.Header or (if a response was returned at 5600// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 5601// to check whether the returned error was because 5602// http.StatusNotModified was returned. 5603func (c *ProjectsOccurrencesCreateCall) Do(opts ...googleapi.CallOption) (*Occurrence, error) { 5604 gensupport.SetOptions(c.urlParams_, opts...) 5605 res, err := c.doRequest("json") 5606 if res != nil && res.StatusCode == http.StatusNotModified { 5607 if res.Body != nil { 5608 res.Body.Close() 5609 } 5610 return nil, &googleapi.Error{ 5611 Code: res.StatusCode, 5612 Header: res.Header, 5613 } 5614 } 5615 if err != nil { 5616 return nil, err 5617 } 5618 defer googleapi.CloseBody(res) 5619 if err := googleapi.CheckResponse(res); err != nil { 5620 return nil, err 5621 } 5622 ret := &Occurrence{ 5623 ServerResponse: googleapi.ServerResponse{ 5624 Header: res.Header, 5625 HTTPStatusCode: res.StatusCode, 5626 }, 5627 } 5628 target := &ret 5629 if err := gensupport.DecodeResponse(target, res); err != nil { 5630 return nil, err 5631 } 5632 return ret, nil 5633 // { 5634 // "description": "Creates a new occurrence.", 5635 // "flatPath": "v1beta1/projects/{projectsId}/occurrences", 5636 // "httpMethod": "POST", 5637 // "id": "containeranalysis.projects.occurrences.create", 5638 // "parameterOrder": [ 5639 // "parent" 5640 // ], 5641 // "parameters": { 5642 // "parent": { 5643 // "description": "The name of the project in the form of `projects/[PROJECT_ID]`, under which\nthe occurrence is to be created.", 5644 // "location": "path", 5645 // "pattern": "^projects/[^/]+$", 5646 // "required": true, 5647 // "type": "string" 5648 // } 5649 // }, 5650 // "path": "v1beta1/{+parent}/occurrences", 5651 // "request": { 5652 // "$ref": "Occurrence" 5653 // }, 5654 // "response": { 5655 // "$ref": "Occurrence" 5656 // }, 5657 // "scopes": [ 5658 // "https://www.googleapis.com/auth/cloud-platform" 5659 // ] 5660 // } 5661 5662} 5663 5664// method id "containeranalysis.projects.occurrences.delete": 5665 5666type ProjectsOccurrencesDeleteCall struct { 5667 s *Service 5668 name string 5669 urlParams_ gensupport.URLParams 5670 ctx_ context.Context 5671 header_ http.Header 5672} 5673 5674// Delete: Deletes the specified occurrence. For example, use this 5675// method to delete an 5676// occurrence when the occurrence is no longer applicable for the 5677// given 5678// resource. 5679func (r *ProjectsOccurrencesService) Delete(name string) *ProjectsOccurrencesDeleteCall { 5680 c := &ProjectsOccurrencesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5681 c.name = name 5682 return c 5683} 5684 5685// Fields allows partial responses to be retrieved. See 5686// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5687// for more information. 5688func (c *ProjectsOccurrencesDeleteCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesDeleteCall { 5689 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5690 return c 5691} 5692 5693// Context sets the context to be used in this call's Do method. Any 5694// pending HTTP request will be aborted if the provided context is 5695// canceled. 5696func (c *ProjectsOccurrencesDeleteCall) Context(ctx context.Context) *ProjectsOccurrencesDeleteCall { 5697 c.ctx_ = ctx 5698 return c 5699} 5700 5701// Header returns an http.Header that can be modified by the caller to 5702// add HTTP headers to the request. 5703func (c *ProjectsOccurrencesDeleteCall) Header() http.Header { 5704 if c.header_ == nil { 5705 c.header_ = make(http.Header) 5706 } 5707 return c.header_ 5708} 5709 5710func (c *ProjectsOccurrencesDeleteCall) doRequest(alt string) (*http.Response, error) { 5711 reqHeaders := make(http.Header) 5712 for k, v := range c.header_ { 5713 reqHeaders[k] = v 5714 } 5715 reqHeaders.Set("User-Agent", c.s.userAgent()) 5716 var body io.Reader = nil 5717 c.urlParams_.Set("alt", alt) 5718 c.urlParams_.Set("prettyPrint", "false") 5719 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 5720 urls += "?" + c.urlParams_.Encode() 5721 req, err := http.NewRequest("DELETE", urls, body) 5722 if err != nil { 5723 return nil, err 5724 } 5725 req.Header = reqHeaders 5726 googleapi.Expand(req.URL, map[string]string{ 5727 "name": c.name, 5728 }) 5729 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5730} 5731 5732// Do executes the "containeranalysis.projects.occurrences.delete" call. 5733// Exactly one of *Empty or error will be non-nil. Any non-2xx status 5734// code is an error. Response headers are in either 5735// *Empty.ServerResponse.Header or (if a response was returned at all) 5736// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 5737// check whether the returned error was because http.StatusNotModified 5738// was returned. 5739func (c *ProjectsOccurrencesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 5740 gensupport.SetOptions(c.urlParams_, opts...) 5741 res, err := c.doRequest("json") 5742 if res != nil && res.StatusCode == http.StatusNotModified { 5743 if res.Body != nil { 5744 res.Body.Close() 5745 } 5746 return nil, &googleapi.Error{ 5747 Code: res.StatusCode, 5748 Header: res.Header, 5749 } 5750 } 5751 if err != nil { 5752 return nil, err 5753 } 5754 defer googleapi.CloseBody(res) 5755 if err := googleapi.CheckResponse(res); err != nil { 5756 return nil, err 5757 } 5758 ret := &Empty{ 5759 ServerResponse: googleapi.ServerResponse{ 5760 Header: res.Header, 5761 HTTPStatusCode: res.StatusCode, 5762 }, 5763 } 5764 target := &ret 5765 if err := gensupport.DecodeResponse(target, res); err != nil { 5766 return nil, err 5767 } 5768 return ret, nil 5769 // { 5770 // "description": "Deletes the specified occurrence. For example, use this method to delete an\noccurrence when the occurrence is no longer applicable for the given\nresource.", 5771 // "flatPath": "v1beta1/projects/{projectsId}/occurrences/{occurrencesId}", 5772 // "httpMethod": "DELETE", 5773 // "id": "containeranalysis.projects.occurrences.delete", 5774 // "parameterOrder": [ 5775 // "name" 5776 // ], 5777 // "parameters": { 5778 // "name": { 5779 // "description": "The name of the occurrence in the form of\n`projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.", 5780 // "location": "path", 5781 // "pattern": "^projects/[^/]+/occurrences/[^/]+$", 5782 // "required": true, 5783 // "type": "string" 5784 // } 5785 // }, 5786 // "path": "v1beta1/{+name}", 5787 // "response": { 5788 // "$ref": "Empty" 5789 // }, 5790 // "scopes": [ 5791 // "https://www.googleapis.com/auth/cloud-platform" 5792 // ] 5793 // } 5794 5795} 5796 5797// method id "containeranalysis.projects.occurrences.get": 5798 5799type ProjectsOccurrencesGetCall struct { 5800 s *Service 5801 name string 5802 urlParams_ gensupport.URLParams 5803 ifNoneMatch_ string 5804 ctx_ context.Context 5805 header_ http.Header 5806} 5807 5808// Get: Gets the specified occurrence. 5809func (r *ProjectsOccurrencesService) Get(name string) *ProjectsOccurrencesGetCall { 5810 c := &ProjectsOccurrencesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5811 c.name = name 5812 return c 5813} 5814 5815// Fields allows partial responses to be retrieved. See 5816// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5817// for more information. 5818func (c *ProjectsOccurrencesGetCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesGetCall { 5819 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5820 return c 5821} 5822 5823// IfNoneMatch sets the optional parameter which makes the operation 5824// fail if the object's ETag matches the given value. This is useful for 5825// getting updates only after the object has changed since the last 5826// request. Use googleapi.IsNotModified to check whether the response 5827// error from Do is the result of In-None-Match. 5828func (c *ProjectsOccurrencesGetCall) IfNoneMatch(entityTag string) *ProjectsOccurrencesGetCall { 5829 c.ifNoneMatch_ = entityTag 5830 return c 5831} 5832 5833// Context sets the context to be used in this call's Do method. Any 5834// pending HTTP request will be aborted if the provided context is 5835// canceled. 5836func (c *ProjectsOccurrencesGetCall) Context(ctx context.Context) *ProjectsOccurrencesGetCall { 5837 c.ctx_ = ctx 5838 return c 5839} 5840 5841// Header returns an http.Header that can be modified by the caller to 5842// add HTTP headers to the request. 5843func (c *ProjectsOccurrencesGetCall) Header() http.Header { 5844 if c.header_ == nil { 5845 c.header_ = make(http.Header) 5846 } 5847 return c.header_ 5848} 5849 5850func (c *ProjectsOccurrencesGetCall) doRequest(alt string) (*http.Response, error) { 5851 reqHeaders := make(http.Header) 5852 for k, v := range c.header_ { 5853 reqHeaders[k] = v 5854 } 5855 reqHeaders.Set("User-Agent", c.s.userAgent()) 5856 if c.ifNoneMatch_ != "" { 5857 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 5858 } 5859 var body io.Reader = nil 5860 c.urlParams_.Set("alt", alt) 5861 c.urlParams_.Set("prettyPrint", "false") 5862 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 5863 urls += "?" + c.urlParams_.Encode() 5864 req, err := http.NewRequest("GET", urls, body) 5865 if err != nil { 5866 return nil, err 5867 } 5868 req.Header = reqHeaders 5869 googleapi.Expand(req.URL, map[string]string{ 5870 "name": c.name, 5871 }) 5872 return gensupport.SendRequest(c.ctx_, c.s.client, req) 5873} 5874 5875// Do executes the "containeranalysis.projects.occurrences.get" call. 5876// Exactly one of *Occurrence or error will be non-nil. Any non-2xx 5877// status code is an error. Response headers are in either 5878// *Occurrence.ServerResponse.Header or (if a response was returned at 5879// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 5880// to check whether the returned error was because 5881// http.StatusNotModified was returned. 5882func (c *ProjectsOccurrencesGetCall) Do(opts ...googleapi.CallOption) (*Occurrence, error) { 5883 gensupport.SetOptions(c.urlParams_, opts...) 5884 res, err := c.doRequest("json") 5885 if res != nil && res.StatusCode == http.StatusNotModified { 5886 if res.Body != nil { 5887 res.Body.Close() 5888 } 5889 return nil, &googleapi.Error{ 5890 Code: res.StatusCode, 5891 Header: res.Header, 5892 } 5893 } 5894 if err != nil { 5895 return nil, err 5896 } 5897 defer googleapi.CloseBody(res) 5898 if err := googleapi.CheckResponse(res); err != nil { 5899 return nil, err 5900 } 5901 ret := &Occurrence{ 5902 ServerResponse: googleapi.ServerResponse{ 5903 Header: res.Header, 5904 HTTPStatusCode: res.StatusCode, 5905 }, 5906 } 5907 target := &ret 5908 if err := gensupport.DecodeResponse(target, res); err != nil { 5909 return nil, err 5910 } 5911 return ret, nil 5912 // { 5913 // "description": "Gets the specified occurrence.", 5914 // "flatPath": "v1beta1/projects/{projectsId}/occurrences/{occurrencesId}", 5915 // "httpMethod": "GET", 5916 // "id": "containeranalysis.projects.occurrences.get", 5917 // "parameterOrder": [ 5918 // "name" 5919 // ], 5920 // "parameters": { 5921 // "name": { 5922 // "description": "The name of the occurrence in the form of\n`projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.", 5923 // "location": "path", 5924 // "pattern": "^projects/[^/]+/occurrences/[^/]+$", 5925 // "required": true, 5926 // "type": "string" 5927 // } 5928 // }, 5929 // "path": "v1beta1/{+name}", 5930 // "response": { 5931 // "$ref": "Occurrence" 5932 // }, 5933 // "scopes": [ 5934 // "https://www.googleapis.com/auth/cloud-platform" 5935 // ] 5936 // } 5937 5938} 5939 5940// method id "containeranalysis.projects.occurrences.getIamPolicy": 5941 5942type ProjectsOccurrencesGetIamPolicyCall struct { 5943 s *Service 5944 resource string 5945 getiampolicyrequest *GetIamPolicyRequest 5946 urlParams_ gensupport.URLParams 5947 ctx_ context.Context 5948 header_ http.Header 5949} 5950 5951// GetIamPolicy: Gets the access control policy for a note or an 5952// occurrence resource. 5953// Requires `containeranalysis.notes.setIamPolicy` 5954// or 5955// `containeranalysis.occurrences.setIamPolicy` permission if the 5956// resource is 5957// a note or occurrence, respectively. 5958// 5959// The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` 5960// for 5961// notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` 5962// for 5963// occurrences. 5964func (r *ProjectsOccurrencesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsOccurrencesGetIamPolicyCall { 5965 c := &ProjectsOccurrencesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 5966 c.resource = resource 5967 c.getiampolicyrequest = getiampolicyrequest 5968 return c 5969} 5970 5971// Fields allows partial responses to be retrieved. See 5972// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 5973// for more information. 5974func (c *ProjectsOccurrencesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesGetIamPolicyCall { 5975 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 5976 return c 5977} 5978 5979// Context sets the context to be used in this call's Do method. Any 5980// pending HTTP request will be aborted if the provided context is 5981// canceled. 5982func (c *ProjectsOccurrencesGetIamPolicyCall) Context(ctx context.Context) *ProjectsOccurrencesGetIamPolicyCall { 5983 c.ctx_ = ctx 5984 return c 5985} 5986 5987// Header returns an http.Header that can be modified by the caller to 5988// add HTTP headers to the request. 5989func (c *ProjectsOccurrencesGetIamPolicyCall) Header() http.Header { 5990 if c.header_ == nil { 5991 c.header_ = make(http.Header) 5992 } 5993 return c.header_ 5994} 5995 5996func (c *ProjectsOccurrencesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 5997 reqHeaders := make(http.Header) 5998 for k, v := range c.header_ { 5999 reqHeaders[k] = v 6000 } 6001 reqHeaders.Set("User-Agent", c.s.userAgent()) 6002 var body io.Reader = nil 6003 body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest) 6004 if err != nil { 6005 return nil, err 6006 } 6007 reqHeaders.Set("Content-Type", "application/json") 6008 c.urlParams_.Set("alt", alt) 6009 c.urlParams_.Set("prettyPrint", "false") 6010 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy") 6011 urls += "?" + c.urlParams_.Encode() 6012 req, err := http.NewRequest("POST", urls, body) 6013 if err != nil { 6014 return nil, err 6015 } 6016 req.Header = reqHeaders 6017 googleapi.Expand(req.URL, map[string]string{ 6018 "resource": c.resource, 6019 }) 6020 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6021} 6022 6023// Do executes the "containeranalysis.projects.occurrences.getIamPolicy" call. 6024// Exactly one of *Policy or error will be non-nil. Any non-2xx status 6025// code is an error. Response headers are in either 6026// *Policy.ServerResponse.Header or (if a response was returned at all) 6027// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 6028// check whether the returned error was because http.StatusNotModified 6029// was returned. 6030func (c *ProjectsOccurrencesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 6031 gensupport.SetOptions(c.urlParams_, opts...) 6032 res, err := c.doRequest("json") 6033 if res != nil && res.StatusCode == http.StatusNotModified { 6034 if res.Body != nil { 6035 res.Body.Close() 6036 } 6037 return nil, &googleapi.Error{ 6038 Code: res.StatusCode, 6039 Header: res.Header, 6040 } 6041 } 6042 if err != nil { 6043 return nil, err 6044 } 6045 defer googleapi.CloseBody(res) 6046 if err := googleapi.CheckResponse(res); err != nil { 6047 return nil, err 6048 } 6049 ret := &Policy{ 6050 ServerResponse: googleapi.ServerResponse{ 6051 Header: res.Header, 6052 HTTPStatusCode: res.StatusCode, 6053 }, 6054 } 6055 target := &ret 6056 if err := gensupport.DecodeResponse(target, res); err != nil { 6057 return nil, err 6058 } 6059 return ret, nil 6060 // { 6061 // "description": "Gets the access control policy for a note or an occurrence resource.\nRequires `containeranalysis.notes.setIamPolicy` or\n`containeranalysis.occurrences.setIamPolicy` permission if the resource is\na note or occurrence, respectively.\n\nThe resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for\nnotes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for\noccurrences.", 6062 // "flatPath": "v1beta1/projects/{projectsId}/occurrences/{occurrencesId}:getIamPolicy", 6063 // "httpMethod": "POST", 6064 // "id": "containeranalysis.projects.occurrences.getIamPolicy", 6065 // "parameterOrder": [ 6066 // "resource" 6067 // ], 6068 // "parameters": { 6069 // "resource": { 6070 // "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.", 6071 // "location": "path", 6072 // "pattern": "^projects/[^/]+/occurrences/[^/]+$", 6073 // "required": true, 6074 // "type": "string" 6075 // } 6076 // }, 6077 // "path": "v1beta1/{+resource}:getIamPolicy", 6078 // "request": { 6079 // "$ref": "GetIamPolicyRequest" 6080 // }, 6081 // "response": { 6082 // "$ref": "Policy" 6083 // }, 6084 // "scopes": [ 6085 // "https://www.googleapis.com/auth/cloud-platform" 6086 // ] 6087 // } 6088 6089} 6090 6091// method id "containeranalysis.projects.occurrences.getNotes": 6092 6093type ProjectsOccurrencesGetNotesCall struct { 6094 s *Service 6095 name string 6096 urlParams_ gensupport.URLParams 6097 ifNoneMatch_ string 6098 ctx_ context.Context 6099 header_ http.Header 6100} 6101 6102// GetNotes: Gets the note attached to the specified occurrence. 6103// Consumer projects can 6104// use this method to get a note that belongs to a provider project. 6105func (r *ProjectsOccurrencesService) GetNotes(name string) *ProjectsOccurrencesGetNotesCall { 6106 c := &ProjectsOccurrencesGetNotesCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6107 c.name = name 6108 return c 6109} 6110 6111// Fields allows partial responses to be retrieved. See 6112// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6113// for more information. 6114func (c *ProjectsOccurrencesGetNotesCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesGetNotesCall { 6115 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6116 return c 6117} 6118 6119// IfNoneMatch sets the optional parameter which makes the operation 6120// fail if the object's ETag matches the given value. This is useful for 6121// getting updates only after the object has changed since the last 6122// request. Use googleapi.IsNotModified to check whether the response 6123// error from Do is the result of In-None-Match. 6124func (c *ProjectsOccurrencesGetNotesCall) IfNoneMatch(entityTag string) *ProjectsOccurrencesGetNotesCall { 6125 c.ifNoneMatch_ = entityTag 6126 return c 6127} 6128 6129// Context sets the context to be used in this call's Do method. Any 6130// pending HTTP request will be aborted if the provided context is 6131// canceled. 6132func (c *ProjectsOccurrencesGetNotesCall) Context(ctx context.Context) *ProjectsOccurrencesGetNotesCall { 6133 c.ctx_ = ctx 6134 return c 6135} 6136 6137// Header returns an http.Header that can be modified by the caller to 6138// add HTTP headers to the request. 6139func (c *ProjectsOccurrencesGetNotesCall) Header() http.Header { 6140 if c.header_ == nil { 6141 c.header_ = make(http.Header) 6142 } 6143 return c.header_ 6144} 6145 6146func (c *ProjectsOccurrencesGetNotesCall) doRequest(alt string) (*http.Response, error) { 6147 reqHeaders := make(http.Header) 6148 for k, v := range c.header_ { 6149 reqHeaders[k] = v 6150 } 6151 reqHeaders.Set("User-Agent", c.s.userAgent()) 6152 if c.ifNoneMatch_ != "" { 6153 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6154 } 6155 var body io.Reader = nil 6156 c.urlParams_.Set("alt", alt) 6157 c.urlParams_.Set("prettyPrint", "false") 6158 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/notes") 6159 urls += "?" + c.urlParams_.Encode() 6160 req, err := http.NewRequest("GET", urls, body) 6161 if err != nil { 6162 return nil, err 6163 } 6164 req.Header = reqHeaders 6165 googleapi.Expand(req.URL, map[string]string{ 6166 "name": c.name, 6167 }) 6168 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6169} 6170 6171// Do executes the "containeranalysis.projects.occurrences.getNotes" call. 6172// Exactly one of *Note or error will be non-nil. Any non-2xx status 6173// code is an error. Response headers are in either 6174// *Note.ServerResponse.Header or (if a response was returned at all) in 6175// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 6176// whether the returned error was because http.StatusNotModified was 6177// returned. 6178func (c *ProjectsOccurrencesGetNotesCall) Do(opts ...googleapi.CallOption) (*Note, error) { 6179 gensupport.SetOptions(c.urlParams_, opts...) 6180 res, err := c.doRequest("json") 6181 if res != nil && res.StatusCode == http.StatusNotModified { 6182 if res.Body != nil { 6183 res.Body.Close() 6184 } 6185 return nil, &googleapi.Error{ 6186 Code: res.StatusCode, 6187 Header: res.Header, 6188 } 6189 } 6190 if err != nil { 6191 return nil, err 6192 } 6193 defer googleapi.CloseBody(res) 6194 if err := googleapi.CheckResponse(res); err != nil { 6195 return nil, err 6196 } 6197 ret := &Note{ 6198 ServerResponse: googleapi.ServerResponse{ 6199 Header: res.Header, 6200 HTTPStatusCode: res.StatusCode, 6201 }, 6202 } 6203 target := &ret 6204 if err := gensupport.DecodeResponse(target, res); err != nil { 6205 return nil, err 6206 } 6207 return ret, nil 6208 // { 6209 // "description": "Gets the note attached to the specified occurrence. Consumer projects can\nuse this method to get a note that belongs to a provider project.", 6210 // "flatPath": "v1beta1/projects/{projectsId}/occurrences/{occurrencesId}/notes", 6211 // "httpMethod": "GET", 6212 // "id": "containeranalysis.projects.occurrences.getNotes", 6213 // "parameterOrder": [ 6214 // "name" 6215 // ], 6216 // "parameters": { 6217 // "name": { 6218 // "description": "The name of the occurrence in the form of\n`projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.", 6219 // "location": "path", 6220 // "pattern": "^projects/[^/]+/occurrences/[^/]+$", 6221 // "required": true, 6222 // "type": "string" 6223 // } 6224 // }, 6225 // "path": "v1beta1/{+name}/notes", 6226 // "response": { 6227 // "$ref": "Note" 6228 // }, 6229 // "scopes": [ 6230 // "https://www.googleapis.com/auth/cloud-platform" 6231 // ] 6232 // } 6233 6234} 6235 6236// method id "containeranalysis.projects.occurrences.getVulnerabilitySummary": 6237 6238type ProjectsOccurrencesGetVulnerabilitySummaryCall struct { 6239 s *Service 6240 parent string 6241 urlParams_ gensupport.URLParams 6242 ifNoneMatch_ string 6243 ctx_ context.Context 6244 header_ http.Header 6245} 6246 6247// GetVulnerabilitySummary: Gets a summary of the number and severity of 6248// occurrences. 6249func (r *ProjectsOccurrencesService) GetVulnerabilitySummary(parent string) *ProjectsOccurrencesGetVulnerabilitySummaryCall { 6250 c := &ProjectsOccurrencesGetVulnerabilitySummaryCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6251 c.parent = parent 6252 return c 6253} 6254 6255// Filter sets the optional parameter "filter": The filter expression. 6256func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Filter(filter string) *ProjectsOccurrencesGetVulnerabilitySummaryCall { 6257 c.urlParams_.Set("filter", filter) 6258 return c 6259} 6260 6261// Fields allows partial responses to be retrieved. See 6262// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6263// for more information. 6264func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesGetVulnerabilitySummaryCall { 6265 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6266 return c 6267} 6268 6269// IfNoneMatch sets the optional parameter which makes the operation 6270// fail if the object's ETag matches the given value. This is useful for 6271// getting updates only after the object has changed since the last 6272// request. Use googleapi.IsNotModified to check whether the response 6273// error from Do is the result of In-None-Match. 6274func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) IfNoneMatch(entityTag string) *ProjectsOccurrencesGetVulnerabilitySummaryCall { 6275 c.ifNoneMatch_ = entityTag 6276 return c 6277} 6278 6279// Context sets the context to be used in this call's Do method. Any 6280// pending HTTP request will be aborted if the provided context is 6281// canceled. 6282func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Context(ctx context.Context) *ProjectsOccurrencesGetVulnerabilitySummaryCall { 6283 c.ctx_ = ctx 6284 return c 6285} 6286 6287// Header returns an http.Header that can be modified by the caller to 6288// add HTTP headers to the request. 6289func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Header() http.Header { 6290 if c.header_ == nil { 6291 c.header_ = make(http.Header) 6292 } 6293 return c.header_ 6294} 6295 6296func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) doRequest(alt string) (*http.Response, error) { 6297 reqHeaders := make(http.Header) 6298 for k, v := range c.header_ { 6299 reqHeaders[k] = v 6300 } 6301 reqHeaders.Set("User-Agent", c.s.userAgent()) 6302 if c.ifNoneMatch_ != "" { 6303 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6304 } 6305 var body io.Reader = nil 6306 c.urlParams_.Set("alt", alt) 6307 c.urlParams_.Set("prettyPrint", "false") 6308 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences:vulnerabilitySummary") 6309 urls += "?" + c.urlParams_.Encode() 6310 req, err := http.NewRequest("GET", urls, body) 6311 if err != nil { 6312 return nil, err 6313 } 6314 req.Header = reqHeaders 6315 googleapi.Expand(req.URL, map[string]string{ 6316 "parent": c.parent, 6317 }) 6318 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6319} 6320 6321// Do executes the "containeranalysis.projects.occurrences.getVulnerabilitySummary" call. 6322// Exactly one of *VulnerabilityOccurrencesSummary or error will be 6323// non-nil. Any non-2xx status code is an error. Response headers are in 6324// either *VulnerabilityOccurrencesSummary.ServerResponse.Header or (if 6325// a response was returned at all) in error.(*googleapi.Error).Header. 6326// Use googleapi.IsNotModified to check whether the returned error was 6327// because http.StatusNotModified was returned. 6328func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Do(opts ...googleapi.CallOption) (*VulnerabilityOccurrencesSummary, error) { 6329 gensupport.SetOptions(c.urlParams_, opts...) 6330 res, err := c.doRequest("json") 6331 if res != nil && res.StatusCode == http.StatusNotModified { 6332 if res.Body != nil { 6333 res.Body.Close() 6334 } 6335 return nil, &googleapi.Error{ 6336 Code: res.StatusCode, 6337 Header: res.Header, 6338 } 6339 } 6340 if err != nil { 6341 return nil, err 6342 } 6343 defer googleapi.CloseBody(res) 6344 if err := googleapi.CheckResponse(res); err != nil { 6345 return nil, err 6346 } 6347 ret := &VulnerabilityOccurrencesSummary{ 6348 ServerResponse: googleapi.ServerResponse{ 6349 Header: res.Header, 6350 HTTPStatusCode: res.StatusCode, 6351 }, 6352 } 6353 target := &ret 6354 if err := gensupport.DecodeResponse(target, res); err != nil { 6355 return nil, err 6356 } 6357 return ret, nil 6358 // { 6359 // "description": "Gets a summary of the number and severity of occurrences.", 6360 // "flatPath": "v1beta1/projects/{projectsId}/occurrences:vulnerabilitySummary", 6361 // "httpMethod": "GET", 6362 // "id": "containeranalysis.projects.occurrences.getVulnerabilitySummary", 6363 // "parameterOrder": [ 6364 // "parent" 6365 // ], 6366 // "parameters": { 6367 // "filter": { 6368 // "description": "The filter expression.", 6369 // "location": "query", 6370 // "type": "string" 6371 // }, 6372 // "parent": { 6373 // "description": "The name of the project to get a vulnerability summary for in the form of\n`projects/[PROJECT_ID]`.", 6374 // "location": "path", 6375 // "pattern": "^projects/[^/]+$", 6376 // "required": true, 6377 // "type": "string" 6378 // } 6379 // }, 6380 // "path": "v1beta1/{+parent}/occurrences:vulnerabilitySummary", 6381 // "response": { 6382 // "$ref": "VulnerabilityOccurrencesSummary" 6383 // }, 6384 // "scopes": [ 6385 // "https://www.googleapis.com/auth/cloud-platform" 6386 // ] 6387 // } 6388 6389} 6390 6391// method id "containeranalysis.projects.occurrences.list": 6392 6393type ProjectsOccurrencesListCall struct { 6394 s *Service 6395 parent string 6396 urlParams_ gensupport.URLParams 6397 ifNoneMatch_ string 6398 ctx_ context.Context 6399 header_ http.Header 6400} 6401 6402// List: Lists occurrences for the specified project. 6403func (r *ProjectsOccurrencesService) List(parent string) *ProjectsOccurrencesListCall { 6404 c := &ProjectsOccurrencesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6405 c.parent = parent 6406 return c 6407} 6408 6409// Filter sets the optional parameter "filter": The filter expression. 6410func (c *ProjectsOccurrencesListCall) Filter(filter string) *ProjectsOccurrencesListCall { 6411 c.urlParams_.Set("filter", filter) 6412 return c 6413} 6414 6415// PageSize sets the optional parameter "pageSize": Number of 6416// occurrences to return in the list. Must be positive. Max allowed 6417// page size is 1000. If not specified, page size defaults to 20. 6418func (c *ProjectsOccurrencesListCall) PageSize(pageSize int64) *ProjectsOccurrencesListCall { 6419 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 6420 return c 6421} 6422 6423// PageToken sets the optional parameter "pageToken": Token to provide 6424// to skip to a particular spot in the list. 6425func (c *ProjectsOccurrencesListCall) PageToken(pageToken string) *ProjectsOccurrencesListCall { 6426 c.urlParams_.Set("pageToken", pageToken) 6427 return c 6428} 6429 6430// Fields allows partial responses to be retrieved. See 6431// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6432// for more information. 6433func (c *ProjectsOccurrencesListCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesListCall { 6434 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6435 return c 6436} 6437 6438// IfNoneMatch sets the optional parameter which makes the operation 6439// fail if the object's ETag matches the given value. This is useful for 6440// getting updates only after the object has changed since the last 6441// request. Use googleapi.IsNotModified to check whether the response 6442// error from Do is the result of In-None-Match. 6443func (c *ProjectsOccurrencesListCall) IfNoneMatch(entityTag string) *ProjectsOccurrencesListCall { 6444 c.ifNoneMatch_ = entityTag 6445 return c 6446} 6447 6448// Context sets the context to be used in this call's Do method. Any 6449// pending HTTP request will be aborted if the provided context is 6450// canceled. 6451func (c *ProjectsOccurrencesListCall) Context(ctx context.Context) *ProjectsOccurrencesListCall { 6452 c.ctx_ = ctx 6453 return c 6454} 6455 6456// Header returns an http.Header that can be modified by the caller to 6457// add HTTP headers to the request. 6458func (c *ProjectsOccurrencesListCall) Header() http.Header { 6459 if c.header_ == nil { 6460 c.header_ = make(http.Header) 6461 } 6462 return c.header_ 6463} 6464 6465func (c *ProjectsOccurrencesListCall) doRequest(alt string) (*http.Response, error) { 6466 reqHeaders := make(http.Header) 6467 for k, v := range c.header_ { 6468 reqHeaders[k] = v 6469 } 6470 reqHeaders.Set("User-Agent", c.s.userAgent()) 6471 if c.ifNoneMatch_ != "" { 6472 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6473 } 6474 var body io.Reader = nil 6475 c.urlParams_.Set("alt", alt) 6476 c.urlParams_.Set("prettyPrint", "false") 6477 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences") 6478 urls += "?" + c.urlParams_.Encode() 6479 req, err := http.NewRequest("GET", urls, body) 6480 if err != nil { 6481 return nil, err 6482 } 6483 req.Header = reqHeaders 6484 googleapi.Expand(req.URL, map[string]string{ 6485 "parent": c.parent, 6486 }) 6487 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6488} 6489 6490// Do executes the "containeranalysis.projects.occurrences.list" call. 6491// Exactly one of *ListOccurrencesResponse or error will be non-nil. Any 6492// non-2xx status code is an error. Response headers are in either 6493// *ListOccurrencesResponse.ServerResponse.Header or (if a response was 6494// returned at all) in error.(*googleapi.Error).Header. Use 6495// googleapi.IsNotModified to check whether the returned error was 6496// because http.StatusNotModified was returned. 6497func (c *ProjectsOccurrencesListCall) Do(opts ...googleapi.CallOption) (*ListOccurrencesResponse, error) { 6498 gensupport.SetOptions(c.urlParams_, opts...) 6499 res, err := c.doRequest("json") 6500 if res != nil && res.StatusCode == http.StatusNotModified { 6501 if res.Body != nil { 6502 res.Body.Close() 6503 } 6504 return nil, &googleapi.Error{ 6505 Code: res.StatusCode, 6506 Header: res.Header, 6507 } 6508 } 6509 if err != nil { 6510 return nil, err 6511 } 6512 defer googleapi.CloseBody(res) 6513 if err := googleapi.CheckResponse(res); err != nil { 6514 return nil, err 6515 } 6516 ret := &ListOccurrencesResponse{ 6517 ServerResponse: googleapi.ServerResponse{ 6518 Header: res.Header, 6519 HTTPStatusCode: res.StatusCode, 6520 }, 6521 } 6522 target := &ret 6523 if err := gensupport.DecodeResponse(target, res); err != nil { 6524 return nil, err 6525 } 6526 return ret, nil 6527 // { 6528 // "description": "Lists occurrences for the specified project.", 6529 // "flatPath": "v1beta1/projects/{projectsId}/occurrences", 6530 // "httpMethod": "GET", 6531 // "id": "containeranalysis.projects.occurrences.list", 6532 // "parameterOrder": [ 6533 // "parent" 6534 // ], 6535 // "parameters": { 6536 // "filter": { 6537 // "description": "The filter expression.", 6538 // "location": "query", 6539 // "type": "string" 6540 // }, 6541 // "pageSize": { 6542 // "description": "Number of occurrences to return in the list. Must be positive. Max allowed\npage size is 1000. If not specified, page size defaults to 20.", 6543 // "format": "int32", 6544 // "location": "query", 6545 // "type": "integer" 6546 // }, 6547 // "pageToken": { 6548 // "description": "Token to provide to skip to a particular spot in the list.", 6549 // "location": "query", 6550 // "type": "string" 6551 // }, 6552 // "parent": { 6553 // "description": "The name of the project to list occurrences for in the form of\n`projects/[PROJECT_ID]`.", 6554 // "location": "path", 6555 // "pattern": "^projects/[^/]+$", 6556 // "required": true, 6557 // "type": "string" 6558 // } 6559 // }, 6560 // "path": "v1beta1/{+parent}/occurrences", 6561 // "response": { 6562 // "$ref": "ListOccurrencesResponse" 6563 // }, 6564 // "scopes": [ 6565 // "https://www.googleapis.com/auth/cloud-platform" 6566 // ] 6567 // } 6568 6569} 6570 6571// Pages invokes f for each page of results. 6572// A non-nil error returned from f will halt the iteration. 6573// The provided context supersedes any context provided to the Context method. 6574func (c *ProjectsOccurrencesListCall) Pages(ctx context.Context, f func(*ListOccurrencesResponse) error) error { 6575 c.ctx_ = ctx 6576 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 6577 for { 6578 x, err := c.Do() 6579 if err != nil { 6580 return err 6581 } 6582 if err := f(x); err != nil { 6583 return err 6584 } 6585 if x.NextPageToken == "" { 6586 return nil 6587 } 6588 c.PageToken(x.NextPageToken) 6589 } 6590} 6591 6592// method id "containeranalysis.projects.occurrences.patch": 6593 6594type ProjectsOccurrencesPatchCall struct { 6595 s *Service 6596 name string 6597 occurrence *Occurrence 6598 urlParams_ gensupport.URLParams 6599 ctx_ context.Context 6600 header_ http.Header 6601} 6602 6603// Patch: Updates the specified occurrence. 6604func (r *ProjectsOccurrencesService) Patch(name string, occurrence *Occurrence) *ProjectsOccurrencesPatchCall { 6605 c := &ProjectsOccurrencesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6606 c.name = name 6607 c.occurrence = occurrence 6608 return c 6609} 6610 6611// UpdateMask sets the optional parameter "updateMask": The fields to 6612// update. 6613func (c *ProjectsOccurrencesPatchCall) UpdateMask(updateMask string) *ProjectsOccurrencesPatchCall { 6614 c.urlParams_.Set("updateMask", updateMask) 6615 return c 6616} 6617 6618// Fields allows partial responses to be retrieved. See 6619// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6620// for more information. 6621func (c *ProjectsOccurrencesPatchCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesPatchCall { 6622 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6623 return c 6624} 6625 6626// Context sets the context to be used in this call's Do method. Any 6627// pending HTTP request will be aborted if the provided context is 6628// canceled. 6629func (c *ProjectsOccurrencesPatchCall) Context(ctx context.Context) *ProjectsOccurrencesPatchCall { 6630 c.ctx_ = ctx 6631 return c 6632} 6633 6634// Header returns an http.Header that can be modified by the caller to 6635// add HTTP headers to the request. 6636func (c *ProjectsOccurrencesPatchCall) Header() http.Header { 6637 if c.header_ == nil { 6638 c.header_ = make(http.Header) 6639 } 6640 return c.header_ 6641} 6642 6643func (c *ProjectsOccurrencesPatchCall) doRequest(alt string) (*http.Response, error) { 6644 reqHeaders := make(http.Header) 6645 for k, v := range c.header_ { 6646 reqHeaders[k] = v 6647 } 6648 reqHeaders.Set("User-Agent", c.s.userAgent()) 6649 var body io.Reader = nil 6650 body, err := googleapi.WithoutDataWrapper.JSONReader(c.occurrence) 6651 if err != nil { 6652 return nil, err 6653 } 6654 reqHeaders.Set("Content-Type", "application/json") 6655 c.urlParams_.Set("alt", alt) 6656 c.urlParams_.Set("prettyPrint", "false") 6657 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 6658 urls += "?" + c.urlParams_.Encode() 6659 req, err := http.NewRequest("PATCH", urls, body) 6660 if err != nil { 6661 return nil, err 6662 } 6663 req.Header = reqHeaders 6664 googleapi.Expand(req.URL, map[string]string{ 6665 "name": c.name, 6666 }) 6667 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6668} 6669 6670// Do executes the "containeranalysis.projects.occurrences.patch" call. 6671// Exactly one of *Occurrence or error will be non-nil. Any non-2xx 6672// status code is an error. Response headers are in either 6673// *Occurrence.ServerResponse.Header or (if a response was returned at 6674// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 6675// to check whether the returned error was because 6676// http.StatusNotModified was returned. 6677func (c *ProjectsOccurrencesPatchCall) Do(opts ...googleapi.CallOption) (*Occurrence, error) { 6678 gensupport.SetOptions(c.urlParams_, opts...) 6679 res, err := c.doRequest("json") 6680 if res != nil && res.StatusCode == http.StatusNotModified { 6681 if res.Body != nil { 6682 res.Body.Close() 6683 } 6684 return nil, &googleapi.Error{ 6685 Code: res.StatusCode, 6686 Header: res.Header, 6687 } 6688 } 6689 if err != nil { 6690 return nil, err 6691 } 6692 defer googleapi.CloseBody(res) 6693 if err := googleapi.CheckResponse(res); err != nil { 6694 return nil, err 6695 } 6696 ret := &Occurrence{ 6697 ServerResponse: googleapi.ServerResponse{ 6698 Header: res.Header, 6699 HTTPStatusCode: res.StatusCode, 6700 }, 6701 } 6702 target := &ret 6703 if err := gensupport.DecodeResponse(target, res); err != nil { 6704 return nil, err 6705 } 6706 return ret, nil 6707 // { 6708 // "description": "Updates the specified occurrence.", 6709 // "flatPath": "v1beta1/projects/{projectsId}/occurrences/{occurrencesId}", 6710 // "httpMethod": "PATCH", 6711 // "id": "containeranalysis.projects.occurrences.patch", 6712 // "parameterOrder": [ 6713 // "name" 6714 // ], 6715 // "parameters": { 6716 // "name": { 6717 // "description": "The name of the occurrence in the form of\n`projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`.", 6718 // "location": "path", 6719 // "pattern": "^projects/[^/]+/occurrences/[^/]+$", 6720 // "required": true, 6721 // "type": "string" 6722 // }, 6723 // "updateMask": { 6724 // "description": "The fields to update.", 6725 // "format": "google-fieldmask", 6726 // "location": "query", 6727 // "type": "string" 6728 // } 6729 // }, 6730 // "path": "v1beta1/{+name}", 6731 // "request": { 6732 // "$ref": "Occurrence" 6733 // }, 6734 // "response": { 6735 // "$ref": "Occurrence" 6736 // }, 6737 // "scopes": [ 6738 // "https://www.googleapis.com/auth/cloud-platform" 6739 // ] 6740 // } 6741 6742} 6743 6744// method id "containeranalysis.projects.occurrences.setIamPolicy": 6745 6746type ProjectsOccurrencesSetIamPolicyCall struct { 6747 s *Service 6748 resource string 6749 setiampolicyrequest *SetIamPolicyRequest 6750 urlParams_ gensupport.URLParams 6751 ctx_ context.Context 6752 header_ http.Header 6753} 6754 6755// SetIamPolicy: Sets the access control policy on the specified note or 6756// occurrence. 6757// Requires `containeranalysis.notes.setIamPolicy` 6758// or 6759// `containeranalysis.occurrences.setIamPolicy` permission if the 6760// resource is 6761// a note or an occurrence, respectively. 6762// 6763// The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` 6764// for 6765// notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` 6766// for 6767// occurrences. 6768func (r *ProjectsOccurrencesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsOccurrencesSetIamPolicyCall { 6769 c := &ProjectsOccurrencesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6770 c.resource = resource 6771 c.setiampolicyrequest = setiampolicyrequest 6772 return c 6773} 6774 6775// Fields allows partial responses to be retrieved. See 6776// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6777// for more information. 6778func (c *ProjectsOccurrencesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesSetIamPolicyCall { 6779 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6780 return c 6781} 6782 6783// Context sets the context to be used in this call's Do method. Any 6784// pending HTTP request will be aborted if the provided context is 6785// canceled. 6786func (c *ProjectsOccurrencesSetIamPolicyCall) Context(ctx context.Context) *ProjectsOccurrencesSetIamPolicyCall { 6787 c.ctx_ = ctx 6788 return c 6789} 6790 6791// Header returns an http.Header that can be modified by the caller to 6792// add HTTP headers to the request. 6793func (c *ProjectsOccurrencesSetIamPolicyCall) Header() http.Header { 6794 if c.header_ == nil { 6795 c.header_ = make(http.Header) 6796 } 6797 return c.header_ 6798} 6799 6800func (c *ProjectsOccurrencesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 6801 reqHeaders := make(http.Header) 6802 for k, v := range c.header_ { 6803 reqHeaders[k] = v 6804 } 6805 reqHeaders.Set("User-Agent", c.s.userAgent()) 6806 var body io.Reader = nil 6807 body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) 6808 if err != nil { 6809 return nil, err 6810 } 6811 reqHeaders.Set("Content-Type", "application/json") 6812 c.urlParams_.Set("alt", alt) 6813 c.urlParams_.Set("prettyPrint", "false") 6814 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy") 6815 urls += "?" + c.urlParams_.Encode() 6816 req, err := http.NewRequest("POST", urls, body) 6817 if err != nil { 6818 return nil, err 6819 } 6820 req.Header = reqHeaders 6821 googleapi.Expand(req.URL, map[string]string{ 6822 "resource": c.resource, 6823 }) 6824 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6825} 6826 6827// Do executes the "containeranalysis.projects.occurrences.setIamPolicy" call. 6828// Exactly one of *Policy or error will be non-nil. Any non-2xx status 6829// code is an error. Response headers are in either 6830// *Policy.ServerResponse.Header or (if a response was returned at all) 6831// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 6832// check whether the returned error was because http.StatusNotModified 6833// was returned. 6834func (c *ProjectsOccurrencesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 6835 gensupport.SetOptions(c.urlParams_, opts...) 6836 res, err := c.doRequest("json") 6837 if res != nil && res.StatusCode == http.StatusNotModified { 6838 if res.Body != nil { 6839 res.Body.Close() 6840 } 6841 return nil, &googleapi.Error{ 6842 Code: res.StatusCode, 6843 Header: res.Header, 6844 } 6845 } 6846 if err != nil { 6847 return nil, err 6848 } 6849 defer googleapi.CloseBody(res) 6850 if err := googleapi.CheckResponse(res); err != nil { 6851 return nil, err 6852 } 6853 ret := &Policy{ 6854 ServerResponse: googleapi.ServerResponse{ 6855 Header: res.Header, 6856 HTTPStatusCode: res.StatusCode, 6857 }, 6858 } 6859 target := &ret 6860 if err := gensupport.DecodeResponse(target, res); err != nil { 6861 return nil, err 6862 } 6863 return ret, nil 6864 // { 6865 // "description": "Sets the access control policy on the specified note or occurrence.\nRequires `containeranalysis.notes.setIamPolicy` or\n`containeranalysis.occurrences.setIamPolicy` permission if the resource is\na note or an occurrence, respectively.\n\nThe resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for\nnotes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for\noccurrences.", 6866 // "flatPath": "v1beta1/projects/{projectsId}/occurrences/{occurrencesId}:setIamPolicy", 6867 // "httpMethod": "POST", 6868 // "id": "containeranalysis.projects.occurrences.setIamPolicy", 6869 // "parameterOrder": [ 6870 // "resource" 6871 // ], 6872 // "parameters": { 6873 // "resource": { 6874 // "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.", 6875 // "location": "path", 6876 // "pattern": "^projects/[^/]+/occurrences/[^/]+$", 6877 // "required": true, 6878 // "type": "string" 6879 // } 6880 // }, 6881 // "path": "v1beta1/{+resource}:setIamPolicy", 6882 // "request": { 6883 // "$ref": "SetIamPolicyRequest" 6884 // }, 6885 // "response": { 6886 // "$ref": "Policy" 6887 // }, 6888 // "scopes": [ 6889 // "https://www.googleapis.com/auth/cloud-platform" 6890 // ] 6891 // } 6892 6893} 6894 6895// method id "containeranalysis.projects.occurrences.testIamPermissions": 6896 6897type ProjectsOccurrencesTestIamPermissionsCall struct { 6898 s *Service 6899 resource string 6900 testiampermissionsrequest *TestIamPermissionsRequest 6901 urlParams_ gensupport.URLParams 6902 ctx_ context.Context 6903 header_ http.Header 6904} 6905 6906// TestIamPermissions: Returns the permissions that a caller has on the 6907// specified note or 6908// occurrence. Requires list permission on the project (for 6909// example, 6910// `containeranalysis.notes.list`). 6911// 6912// The resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` 6913// for 6914// notes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` 6915// for 6916// occurrences. 6917func (r *ProjectsOccurrencesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsOccurrencesTestIamPermissionsCall { 6918 c := &ProjectsOccurrencesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6919 c.resource = resource 6920 c.testiampermissionsrequest = testiampermissionsrequest 6921 return c 6922} 6923 6924// Fields allows partial responses to be retrieved. See 6925// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 6926// for more information. 6927func (c *ProjectsOccurrencesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesTestIamPermissionsCall { 6928 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6929 return c 6930} 6931 6932// Context sets the context to be used in this call's Do method. Any 6933// pending HTTP request will be aborted if the provided context is 6934// canceled. 6935func (c *ProjectsOccurrencesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsOccurrencesTestIamPermissionsCall { 6936 c.ctx_ = ctx 6937 return c 6938} 6939 6940// Header returns an http.Header that can be modified by the caller to 6941// add HTTP headers to the request. 6942func (c *ProjectsOccurrencesTestIamPermissionsCall) Header() http.Header { 6943 if c.header_ == nil { 6944 c.header_ = make(http.Header) 6945 } 6946 return c.header_ 6947} 6948 6949func (c *ProjectsOccurrencesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { 6950 reqHeaders := make(http.Header) 6951 for k, v := range c.header_ { 6952 reqHeaders[k] = v 6953 } 6954 reqHeaders.Set("User-Agent", c.s.userAgent()) 6955 var body io.Reader = nil 6956 body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) 6957 if err != nil { 6958 return nil, err 6959 } 6960 reqHeaders.Set("Content-Type", "application/json") 6961 c.urlParams_.Set("alt", alt) 6962 c.urlParams_.Set("prettyPrint", "false") 6963 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions") 6964 urls += "?" + c.urlParams_.Encode() 6965 req, err := http.NewRequest("POST", urls, body) 6966 if err != nil { 6967 return nil, err 6968 } 6969 req.Header = reqHeaders 6970 googleapi.Expand(req.URL, map[string]string{ 6971 "resource": c.resource, 6972 }) 6973 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6974} 6975 6976// Do executes the "containeranalysis.projects.occurrences.testIamPermissions" call. 6977// Exactly one of *TestIamPermissionsResponse or error will be non-nil. 6978// Any non-2xx status code is an error. Response headers are in either 6979// *TestIamPermissionsResponse.ServerResponse.Header or (if a response 6980// was returned at all) in error.(*googleapi.Error).Header. Use 6981// googleapi.IsNotModified to check whether the returned error was 6982// because http.StatusNotModified was returned. 6983func (c *ProjectsOccurrencesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { 6984 gensupport.SetOptions(c.urlParams_, opts...) 6985 res, err := c.doRequest("json") 6986 if res != nil && res.StatusCode == http.StatusNotModified { 6987 if res.Body != nil { 6988 res.Body.Close() 6989 } 6990 return nil, &googleapi.Error{ 6991 Code: res.StatusCode, 6992 Header: res.Header, 6993 } 6994 } 6995 if err != nil { 6996 return nil, err 6997 } 6998 defer googleapi.CloseBody(res) 6999 if err := googleapi.CheckResponse(res); err != nil { 7000 return nil, err 7001 } 7002 ret := &TestIamPermissionsResponse{ 7003 ServerResponse: googleapi.ServerResponse{ 7004 Header: res.Header, 7005 HTTPStatusCode: res.StatusCode, 7006 }, 7007 } 7008 target := &ret 7009 if err := gensupport.DecodeResponse(target, res); err != nil { 7010 return nil, err 7011 } 7012 return ret, nil 7013 // { 7014 // "description": "Returns the permissions that a caller has on the specified note or\noccurrence. Requires list permission on the project (for example,\n`containeranalysis.notes.list`).\n\nThe resource takes the format `projects/[PROJECT_ID]/notes/[NOTE_ID]` for\nnotes and `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for\noccurrences.", 7015 // "flatPath": "v1beta1/projects/{projectsId}/occurrences/{occurrencesId}:testIamPermissions", 7016 // "httpMethod": "POST", 7017 // "id": "containeranalysis.projects.occurrences.testIamPermissions", 7018 // "parameterOrder": [ 7019 // "resource" 7020 // ], 7021 // "parameters": { 7022 // "resource": { 7023 // "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.", 7024 // "location": "path", 7025 // "pattern": "^projects/[^/]+/occurrences/[^/]+$", 7026 // "required": true, 7027 // "type": "string" 7028 // } 7029 // }, 7030 // "path": "v1beta1/{+resource}:testIamPermissions", 7031 // "request": { 7032 // "$ref": "TestIamPermissionsRequest" 7033 // }, 7034 // "response": { 7035 // "$ref": "TestIamPermissionsResponse" 7036 // }, 7037 // "scopes": [ 7038 // "https://www.googleapis.com/auth/cloud-platform" 7039 // ] 7040 // } 7041 7042} 7043 7044// method id "containeranalysis.projects.scanConfigs.get": 7045 7046type ProjectsScanConfigsGetCall struct { 7047 s *Service 7048 name string 7049 urlParams_ gensupport.URLParams 7050 ifNoneMatch_ string 7051 ctx_ context.Context 7052 header_ http.Header 7053} 7054 7055// Get: Gets the specified scan configuration. 7056func (r *ProjectsScanConfigsService) Get(name string) *ProjectsScanConfigsGetCall { 7057 c := &ProjectsScanConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7058 c.name = name 7059 return c 7060} 7061 7062// Fields allows partial responses to be retrieved. See 7063// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7064// for more information. 7065func (c *ProjectsScanConfigsGetCall) Fields(s ...googleapi.Field) *ProjectsScanConfigsGetCall { 7066 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7067 return c 7068} 7069 7070// IfNoneMatch sets the optional parameter which makes the operation 7071// fail if the object's ETag matches the given value. This is useful for 7072// getting updates only after the object has changed since the last 7073// request. Use googleapi.IsNotModified to check whether the response 7074// error from Do is the result of In-None-Match. 7075func (c *ProjectsScanConfigsGetCall) IfNoneMatch(entityTag string) *ProjectsScanConfigsGetCall { 7076 c.ifNoneMatch_ = entityTag 7077 return c 7078} 7079 7080// Context sets the context to be used in this call's Do method. Any 7081// pending HTTP request will be aborted if the provided context is 7082// canceled. 7083func (c *ProjectsScanConfigsGetCall) Context(ctx context.Context) *ProjectsScanConfigsGetCall { 7084 c.ctx_ = ctx 7085 return c 7086} 7087 7088// Header returns an http.Header that can be modified by the caller to 7089// add HTTP headers to the request. 7090func (c *ProjectsScanConfigsGetCall) Header() http.Header { 7091 if c.header_ == nil { 7092 c.header_ = make(http.Header) 7093 } 7094 return c.header_ 7095} 7096 7097func (c *ProjectsScanConfigsGetCall) doRequest(alt string) (*http.Response, error) { 7098 reqHeaders := make(http.Header) 7099 for k, v := range c.header_ { 7100 reqHeaders[k] = v 7101 } 7102 reqHeaders.Set("User-Agent", c.s.userAgent()) 7103 if c.ifNoneMatch_ != "" { 7104 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7105 } 7106 var body io.Reader = nil 7107 c.urlParams_.Set("alt", alt) 7108 c.urlParams_.Set("prettyPrint", "false") 7109 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 7110 urls += "?" + c.urlParams_.Encode() 7111 req, err := http.NewRequest("GET", urls, body) 7112 if err != nil { 7113 return nil, err 7114 } 7115 req.Header = reqHeaders 7116 googleapi.Expand(req.URL, map[string]string{ 7117 "name": c.name, 7118 }) 7119 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7120} 7121 7122// Do executes the "containeranalysis.projects.scanConfigs.get" call. 7123// Exactly one of *ScanConfig or error will be non-nil. Any non-2xx 7124// status code is an error. Response headers are in either 7125// *ScanConfig.ServerResponse.Header or (if a response was returned at 7126// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 7127// to check whether the returned error was because 7128// http.StatusNotModified was returned. 7129func (c *ProjectsScanConfigsGetCall) Do(opts ...googleapi.CallOption) (*ScanConfig, error) { 7130 gensupport.SetOptions(c.urlParams_, opts...) 7131 res, err := c.doRequest("json") 7132 if res != nil && res.StatusCode == http.StatusNotModified { 7133 if res.Body != nil { 7134 res.Body.Close() 7135 } 7136 return nil, &googleapi.Error{ 7137 Code: res.StatusCode, 7138 Header: res.Header, 7139 } 7140 } 7141 if err != nil { 7142 return nil, err 7143 } 7144 defer googleapi.CloseBody(res) 7145 if err := googleapi.CheckResponse(res); err != nil { 7146 return nil, err 7147 } 7148 ret := &ScanConfig{ 7149 ServerResponse: googleapi.ServerResponse{ 7150 Header: res.Header, 7151 HTTPStatusCode: res.StatusCode, 7152 }, 7153 } 7154 target := &ret 7155 if err := gensupport.DecodeResponse(target, res); err != nil { 7156 return nil, err 7157 } 7158 return ret, nil 7159 // { 7160 // "description": "Gets the specified scan configuration.", 7161 // "flatPath": "v1beta1/projects/{projectsId}/scanConfigs/{scanConfigsId}", 7162 // "httpMethod": "GET", 7163 // "id": "containeranalysis.projects.scanConfigs.get", 7164 // "parameterOrder": [ 7165 // "name" 7166 // ], 7167 // "parameters": { 7168 // "name": { 7169 // "description": "The name of the scan configuration in the form of\n`projects/[PROJECT_ID]/scanConfigs/[SCAN_CONFIG_ID]`.", 7170 // "location": "path", 7171 // "pattern": "^projects/[^/]+/scanConfigs/[^/]+$", 7172 // "required": true, 7173 // "type": "string" 7174 // } 7175 // }, 7176 // "path": "v1beta1/{+name}", 7177 // "response": { 7178 // "$ref": "ScanConfig" 7179 // }, 7180 // "scopes": [ 7181 // "https://www.googleapis.com/auth/cloud-platform" 7182 // ] 7183 // } 7184 7185} 7186 7187// method id "containeranalysis.projects.scanConfigs.list": 7188 7189type ProjectsScanConfigsListCall struct { 7190 s *Service 7191 parent string 7192 urlParams_ gensupport.URLParams 7193 ifNoneMatch_ string 7194 ctx_ context.Context 7195 header_ http.Header 7196} 7197 7198// List: Lists scan configurations for the specified project. 7199func (r *ProjectsScanConfigsService) List(parent string) *ProjectsScanConfigsListCall { 7200 c := &ProjectsScanConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7201 c.parent = parent 7202 return c 7203} 7204 7205// Filter sets the optional parameter "filter": The filter expression. 7206func (c *ProjectsScanConfigsListCall) Filter(filter string) *ProjectsScanConfigsListCall { 7207 c.urlParams_.Set("filter", filter) 7208 return c 7209} 7210 7211// PageSize sets the optional parameter "pageSize": The number of scan 7212// configs to return in the list. 7213func (c *ProjectsScanConfigsListCall) PageSize(pageSize int64) *ProjectsScanConfigsListCall { 7214 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 7215 return c 7216} 7217 7218// PageToken sets the optional parameter "pageToken": Token to provide 7219// to skip to a particular spot in the list. 7220func (c *ProjectsScanConfigsListCall) PageToken(pageToken string) *ProjectsScanConfigsListCall { 7221 c.urlParams_.Set("pageToken", pageToken) 7222 return c 7223} 7224 7225// Fields allows partial responses to be retrieved. See 7226// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7227// for more information. 7228func (c *ProjectsScanConfigsListCall) Fields(s ...googleapi.Field) *ProjectsScanConfigsListCall { 7229 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7230 return c 7231} 7232 7233// IfNoneMatch sets the optional parameter which makes the operation 7234// fail if the object's ETag matches the given value. This is useful for 7235// getting updates only after the object has changed since the last 7236// request. Use googleapi.IsNotModified to check whether the response 7237// error from Do is the result of In-None-Match. 7238func (c *ProjectsScanConfigsListCall) IfNoneMatch(entityTag string) *ProjectsScanConfigsListCall { 7239 c.ifNoneMatch_ = entityTag 7240 return c 7241} 7242 7243// Context sets the context to be used in this call's Do method. Any 7244// pending HTTP request will be aborted if the provided context is 7245// canceled. 7246func (c *ProjectsScanConfigsListCall) Context(ctx context.Context) *ProjectsScanConfigsListCall { 7247 c.ctx_ = ctx 7248 return c 7249} 7250 7251// Header returns an http.Header that can be modified by the caller to 7252// add HTTP headers to the request. 7253func (c *ProjectsScanConfigsListCall) Header() http.Header { 7254 if c.header_ == nil { 7255 c.header_ = make(http.Header) 7256 } 7257 return c.header_ 7258} 7259 7260func (c *ProjectsScanConfigsListCall) doRequest(alt string) (*http.Response, error) { 7261 reqHeaders := make(http.Header) 7262 for k, v := range c.header_ { 7263 reqHeaders[k] = v 7264 } 7265 reqHeaders.Set("User-Agent", c.s.userAgent()) 7266 if c.ifNoneMatch_ != "" { 7267 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7268 } 7269 var body io.Reader = nil 7270 c.urlParams_.Set("alt", alt) 7271 c.urlParams_.Set("prettyPrint", "false") 7272 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/scanConfigs") 7273 urls += "?" + c.urlParams_.Encode() 7274 req, err := http.NewRequest("GET", urls, body) 7275 if err != nil { 7276 return nil, err 7277 } 7278 req.Header = reqHeaders 7279 googleapi.Expand(req.URL, map[string]string{ 7280 "parent": c.parent, 7281 }) 7282 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7283} 7284 7285// Do executes the "containeranalysis.projects.scanConfigs.list" call. 7286// Exactly one of *ListScanConfigsResponse or error will be non-nil. Any 7287// non-2xx status code is an error. Response headers are in either 7288// *ListScanConfigsResponse.ServerResponse.Header or (if a response was 7289// returned at all) in error.(*googleapi.Error).Header. Use 7290// googleapi.IsNotModified to check whether the returned error was 7291// because http.StatusNotModified was returned. 7292func (c *ProjectsScanConfigsListCall) Do(opts ...googleapi.CallOption) (*ListScanConfigsResponse, error) { 7293 gensupport.SetOptions(c.urlParams_, opts...) 7294 res, err := c.doRequest("json") 7295 if res != nil && res.StatusCode == http.StatusNotModified { 7296 if res.Body != nil { 7297 res.Body.Close() 7298 } 7299 return nil, &googleapi.Error{ 7300 Code: res.StatusCode, 7301 Header: res.Header, 7302 } 7303 } 7304 if err != nil { 7305 return nil, err 7306 } 7307 defer googleapi.CloseBody(res) 7308 if err := googleapi.CheckResponse(res); err != nil { 7309 return nil, err 7310 } 7311 ret := &ListScanConfigsResponse{ 7312 ServerResponse: googleapi.ServerResponse{ 7313 Header: res.Header, 7314 HTTPStatusCode: res.StatusCode, 7315 }, 7316 } 7317 target := &ret 7318 if err := gensupport.DecodeResponse(target, res); err != nil { 7319 return nil, err 7320 } 7321 return ret, nil 7322 // { 7323 // "description": "Lists scan configurations for the specified project.", 7324 // "flatPath": "v1beta1/projects/{projectsId}/scanConfigs", 7325 // "httpMethod": "GET", 7326 // "id": "containeranalysis.projects.scanConfigs.list", 7327 // "parameterOrder": [ 7328 // "parent" 7329 // ], 7330 // "parameters": { 7331 // "filter": { 7332 // "description": "The filter expression.", 7333 // "location": "query", 7334 // "type": "string" 7335 // }, 7336 // "pageSize": { 7337 // "description": "The number of scan configs to return in the list.", 7338 // "format": "int32", 7339 // "location": "query", 7340 // "type": "integer" 7341 // }, 7342 // "pageToken": { 7343 // "description": "Token to provide to skip to a particular spot in the list.", 7344 // "location": "query", 7345 // "type": "string" 7346 // }, 7347 // "parent": { 7348 // "description": "The name of the project to list scan configurations for in the form of\n`projects/[PROJECT_ID]`.", 7349 // "location": "path", 7350 // "pattern": "^projects/[^/]+$", 7351 // "required": true, 7352 // "type": "string" 7353 // } 7354 // }, 7355 // "path": "v1beta1/{+parent}/scanConfigs", 7356 // "response": { 7357 // "$ref": "ListScanConfigsResponse" 7358 // }, 7359 // "scopes": [ 7360 // "https://www.googleapis.com/auth/cloud-platform" 7361 // ] 7362 // } 7363 7364} 7365 7366// Pages invokes f for each page of results. 7367// A non-nil error returned from f will halt the iteration. 7368// The provided context supersedes any context provided to the Context method. 7369func (c *ProjectsScanConfigsListCall) Pages(ctx context.Context, f func(*ListScanConfigsResponse) error) error { 7370 c.ctx_ = ctx 7371 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 7372 for { 7373 x, err := c.Do() 7374 if err != nil { 7375 return err 7376 } 7377 if err := f(x); err != nil { 7378 return err 7379 } 7380 if x.NextPageToken == "" { 7381 return nil 7382 } 7383 c.PageToken(x.NextPageToken) 7384 } 7385} 7386 7387// method id "containeranalysis.projects.scanConfigs.update": 7388 7389type ProjectsScanConfigsUpdateCall struct { 7390 s *Service 7391 name string 7392 scanconfig *ScanConfig 7393 urlParams_ gensupport.URLParams 7394 ctx_ context.Context 7395 header_ http.Header 7396} 7397 7398// Update: Updates the specified scan configuration. 7399func (r *ProjectsScanConfigsService) Update(name string, scanconfig *ScanConfig) *ProjectsScanConfigsUpdateCall { 7400 c := &ProjectsScanConfigsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7401 c.name = name 7402 c.scanconfig = scanconfig 7403 return c 7404} 7405 7406// Fields allows partial responses to be retrieved. See 7407// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 7408// for more information. 7409func (c *ProjectsScanConfigsUpdateCall) Fields(s ...googleapi.Field) *ProjectsScanConfigsUpdateCall { 7410 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7411 return c 7412} 7413 7414// Context sets the context to be used in this call's Do method. Any 7415// pending HTTP request will be aborted if the provided context is 7416// canceled. 7417func (c *ProjectsScanConfigsUpdateCall) Context(ctx context.Context) *ProjectsScanConfigsUpdateCall { 7418 c.ctx_ = ctx 7419 return c 7420} 7421 7422// Header returns an http.Header that can be modified by the caller to 7423// add HTTP headers to the request. 7424func (c *ProjectsScanConfigsUpdateCall) Header() http.Header { 7425 if c.header_ == nil { 7426 c.header_ = make(http.Header) 7427 } 7428 return c.header_ 7429} 7430 7431func (c *ProjectsScanConfigsUpdateCall) doRequest(alt string) (*http.Response, error) { 7432 reqHeaders := make(http.Header) 7433 for k, v := range c.header_ { 7434 reqHeaders[k] = v 7435 } 7436 reqHeaders.Set("User-Agent", c.s.userAgent()) 7437 var body io.Reader = nil 7438 body, err := googleapi.WithoutDataWrapper.JSONReader(c.scanconfig) 7439 if err != nil { 7440 return nil, err 7441 } 7442 reqHeaders.Set("Content-Type", "application/json") 7443 c.urlParams_.Set("alt", alt) 7444 c.urlParams_.Set("prettyPrint", "false") 7445 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 7446 urls += "?" + c.urlParams_.Encode() 7447 req, err := http.NewRequest("PUT", urls, body) 7448 if err != nil { 7449 return nil, err 7450 } 7451 req.Header = reqHeaders 7452 googleapi.Expand(req.URL, map[string]string{ 7453 "name": c.name, 7454 }) 7455 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7456} 7457 7458// Do executes the "containeranalysis.projects.scanConfigs.update" call. 7459// Exactly one of *ScanConfig or error will be non-nil. Any non-2xx 7460// status code is an error. Response headers are in either 7461// *ScanConfig.ServerResponse.Header or (if a response was returned at 7462// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 7463// to check whether the returned error was because 7464// http.StatusNotModified was returned. 7465func (c *ProjectsScanConfigsUpdateCall) Do(opts ...googleapi.CallOption) (*ScanConfig, error) { 7466 gensupport.SetOptions(c.urlParams_, opts...) 7467 res, err := c.doRequest("json") 7468 if res != nil && res.StatusCode == http.StatusNotModified { 7469 if res.Body != nil { 7470 res.Body.Close() 7471 } 7472 return nil, &googleapi.Error{ 7473 Code: res.StatusCode, 7474 Header: res.Header, 7475 } 7476 } 7477 if err != nil { 7478 return nil, err 7479 } 7480 defer googleapi.CloseBody(res) 7481 if err := googleapi.CheckResponse(res); err != nil { 7482 return nil, err 7483 } 7484 ret := &ScanConfig{ 7485 ServerResponse: googleapi.ServerResponse{ 7486 Header: res.Header, 7487 HTTPStatusCode: res.StatusCode, 7488 }, 7489 } 7490 target := &ret 7491 if err := gensupport.DecodeResponse(target, res); err != nil { 7492 return nil, err 7493 } 7494 return ret, nil 7495 // { 7496 // "description": "Updates the specified scan configuration.", 7497 // "flatPath": "v1beta1/projects/{projectsId}/scanConfigs/{scanConfigsId}", 7498 // "httpMethod": "PUT", 7499 // "id": "containeranalysis.projects.scanConfigs.update", 7500 // "parameterOrder": [ 7501 // "name" 7502 // ], 7503 // "parameters": { 7504 // "name": { 7505 // "description": "The name of the scan configuration in the form of\n`projects/[PROJECT_ID]/scanConfigs/[SCAN_CONFIG_ID]`.", 7506 // "location": "path", 7507 // "pattern": "^projects/[^/]+/scanConfigs/[^/]+$", 7508 // "required": true, 7509 // "type": "string" 7510 // } 7511 // }, 7512 // "path": "v1beta1/{+name}", 7513 // "request": { 7514 // "$ref": "ScanConfig" 7515 // }, 7516 // "response": { 7517 // "$ref": "ScanConfig" 7518 // }, 7519 // "scopes": [ 7520 // "https://www.googleapis.com/auth/cloud-platform" 7521 // ] 7522 // } 7523 7524} 7525