2017-08-05 18:17:15 +00:00
// Package cloudkms provides access to the Google Cloud Key Management Service (KMS) API.
//
// See https://cloud.google.com/kms/
//
// Usage example:
//
// import "google.golang.org/api/cloudkms/v1"
// ...
// cloudkmsService, err := cloudkms.New(oauthHttpClient)
package cloudkms // import "google.golang.org/api/cloudkms/v1"
import (
"bytes"
"encoding/json"
"errors"
"fmt"
context "golang.org/x/net/context"
ctxhttp "golang.org/x/net/context/ctxhttp"
gensupport "google.golang.org/api/gensupport"
googleapi "google.golang.org/api/googleapi"
"io"
"net/http"
"net/url"
"strconv"
"strings"
)
// Always reference these packages, just in case the auto-generated code
// below doesn't.
var _ = bytes . NewBuffer
var _ = strconv . Itoa
var _ = fmt . Sprintf
var _ = json . NewDecoder
var _ = io . Copy
var _ = url . Parse
var _ = gensupport . MarshalJSON
var _ = googleapi . Version
var _ = errors . New
var _ = strings . Replace
var _ = context . Canceled
var _ = ctxhttp . Do
const apiId = "cloudkms:v1"
const apiName = "cloudkms"
const apiVersion = "v1"
const basePath = "https://cloudkms.googleapis.com/"
// OAuth2 scopes used by this API.
const (
// View and manage your data across Google Cloud Platform services
CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
)
func New ( client * http . Client ) ( * Service , error ) {
if client == nil {
return nil , errors . New ( "client is nil" )
}
s := & Service { client : client , BasePath : basePath }
s . Projects = NewProjectsService ( s )
return s , nil
}
type Service struct {
client * http . Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
Projects * ProjectsService
}
func ( s * Service ) userAgent ( ) string {
if s . UserAgent == "" {
return googleapi . UserAgent
}
return googleapi . UserAgent + " " + s . UserAgent
}
func NewProjectsService ( s * Service ) * ProjectsService {
rs := & ProjectsService { s : s }
rs . Locations = NewProjectsLocationsService ( s )
return rs
}
type ProjectsService struct {
s * Service
Locations * ProjectsLocationsService
}
func NewProjectsLocationsService ( s * Service ) * ProjectsLocationsService {
rs := & ProjectsLocationsService { s : s }
rs . KeyRings = NewProjectsLocationsKeyRingsService ( s )
return rs
}
type ProjectsLocationsService struct {
s * Service
KeyRings * ProjectsLocationsKeyRingsService
}
func NewProjectsLocationsKeyRingsService ( s * Service ) * ProjectsLocationsKeyRingsService {
rs := & ProjectsLocationsKeyRingsService { s : s }
rs . CryptoKeys = NewProjectsLocationsKeyRingsCryptoKeysService ( s )
return rs
}
type ProjectsLocationsKeyRingsService struct {
s * Service
CryptoKeys * ProjectsLocationsKeyRingsCryptoKeysService
}
func NewProjectsLocationsKeyRingsCryptoKeysService ( s * Service ) * ProjectsLocationsKeyRingsCryptoKeysService {
rs := & ProjectsLocationsKeyRingsCryptoKeysService { s : s }
rs . CryptoKeyVersions = NewProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService ( s )
return rs
}
type ProjectsLocationsKeyRingsCryptoKeysService struct {
s * Service
CryptoKeyVersions * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService
}
func NewProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService ( s * Service ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService {
rs := & ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService { s : s }
return rs
}
type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService struct {
s * Service
}
// AuditConfig: Specifies the audit configuration for a service.
// The configuration determines which permission types are logged, and
// what
// identities, if any, are exempted from logging.
// An AuditConfig must have one or more AuditLogConfigs.
//
// If there are AuditConfigs for both `allServices` and a specific
// service,
// the union of the two AuditConfigs is used for that service: the
// log_types
// specified in each AuditConfig are enabled, and the exempted_members
// in each
// AuditConfig are exempted.
//
// Example Policy with multiple AuditConfigs:
//
// {
// "audit_configs": [
// {
// "service": "allServices"
// "audit_log_configs": [
// {
// "log_type": "DATA_READ",
// "exempted_members": [
// "user:foo@gmail.com"
// ]
// },
// {
// "log_type": "DATA_WRITE",
// },
// {
// "log_type": "ADMIN_READ",
// }
// ]
// },
// {
// "service": "fooservice.googleapis.com"
// "audit_log_configs": [
// {
// "log_type": "DATA_READ",
// },
// {
// "log_type": "DATA_WRITE",
// "exempted_members": [
// "user:bar@gmail.com"
// ]
// }
// ]
// }
// ]
// }
//
// For fooservice, this policy enables DATA_READ, DATA_WRITE and
// ADMIN_READ
// logging. It also exempts foo@gmail.com from DATA_READ logging,
// and
// bar@gmail.com from DATA_WRITE logging.
type AuditConfig struct {
// AuditLogConfigs: The configuration for logging of each type of
// permission.
// Next ID: 4
AuditLogConfigs [ ] * AuditLogConfig ` json:"auditLogConfigs,omitempty" `
ExemptedMembers [ ] string ` json:"exemptedMembers,omitempty" `
// Service: Specifies a service that will be enabled for audit
// logging.
// For example, `storage.googleapis.com`,
// `cloudsql.googleapis.com`.
// `allServices` is a special value that covers all services.
Service string ` json:"service,omitempty" `
// ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "AuditLogConfigs") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields [ ] string ` json:"-" `
}
func ( s * AuditConfig ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod AuditConfig
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// AuditLogConfig: Provides the configuration for logging a type of
// permissions.
// Example:
//
// {
// "audit_log_configs": [
// {
// "log_type": "DATA_READ",
// "exempted_members": [
// "user:foo@gmail.com"
// ]
// },
// {
// "log_type": "DATA_WRITE",
// }
// ]
// }
//
// This enables 'DATA_READ' and 'DATA_WRITE' logging, while
// exempting
// foo@gmail.com from DATA_READ logging.
type AuditLogConfig struct {
// ExemptedMembers: Specifies the identities that do not cause logging
// for this type of
// permission.
// Follows the same format of Binding.members.
ExemptedMembers [ ] string ` json:"exemptedMembers,omitempty" `
// LogType: The log type that this config enables.
//
// Possible values:
// "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this.
// "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy
// "DATA_WRITE" - Data writes. Example: CloudSQL Users create
// "DATA_READ" - Data reads. Example: CloudSQL Users list
LogType string ` json:"logType,omitempty" `
// ForceSendFields is a list of field names (e.g. "ExemptedMembers") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "ExemptedMembers") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields [ ] string ` json:"-" `
}
func ( s * AuditLogConfig ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod AuditLogConfig
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// Binding: Associates `members` with a `role`.
type Binding struct {
// Condition: The condition that is associated with this binding.
// NOTE: an unsatisfied condition will not allow user access via
// current
// binding. Different bindings, including their conditions, are
// examined
// independently.
// This field is GOOGLE_INTERNAL.
Condition * Expr ` json:"condition,omitempty" `
// Members: Specifies the identities requesting access for a Cloud
// Platform resource.
// `members` can have the following values:
//
// * `allUsers`: A special identifier that represents anyone who is
// on the internet; with or without a Google account.
//
// * `allAuthenticatedUsers`: A special identifier that represents
// anyone
// who is authenticated with a Google account or a service
// account.
//
// * `user:{emailid}`: An email address that represents a specific
// Google
// account. For example, `alice@gmail.com` or `joe@example.com`.
//
//
// * `serviceAccount:{emailid}`: An email address that represents a
// service
// account. For example,
// `my-other-app@appspot.gserviceaccount.com`.
//
// * `group:{emailid}`: An email address that represents a Google
// group.
// For example, `admins@example.com`.
//
//
// * `domain:{domain}`: A Google Apps domain name that represents all
// the
// users of that domain. For example, `google.com` or
// `example.com`.
//
//
Members [ ] string ` json:"members,omitempty" `
// Role: Role that is assigned to `members`.
// For example, `roles/viewer`, `roles/editor`, or
// `roles/owner`.
// Required
Role string ` json:"role,omitempty" `
// ForceSendFields is a list of field names (e.g. "Condition") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "Condition") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * Binding ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod Binding
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// CryptoKey: A CryptoKey represents a logical key that can be used for
// cryptographic
// operations.
//
// A CryptoKey is made up of one or more versions, which
// represent the actual key material used in cryptographic operations.
type CryptoKey struct {
// CreateTime: Output only. The time at which this CryptoKey was
// created.
CreateTime string ` json:"createTime,omitempty" `
2017-12-03 20:01:25 +00:00
// Labels: Labels with user-defined metadata. For more information,
// see
// [Labeling Keys](/kms/docs/labeling-keys).
2017-09-13 12:09:48 +00:00
Labels map [ string ] string ` json:"labels,omitempty" `
2017-08-05 18:17:15 +00:00
// Name: Output only. The resource name for this CryptoKey in the
// format
// `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
Name string ` json:"name,omitempty" `
// NextRotationTime: At next_rotation_time, the Key Management Service
// will automatically:
//
// 1. Create a new version of this CryptoKey.
// 2. Mark the new version as primary.
//
// Key rotations performed manually via
// CreateCryptoKeyVersion and
// UpdateCryptoKeyPrimaryVersion
// do not affect next_rotation_time.
NextRotationTime string ` json:"nextRotationTime,omitempty" `
// Primary: Output only. A copy of the "primary" CryptoKeyVersion that
// will be used
// by Encrypt when this CryptoKey is given
// in EncryptRequest.name.
//
// The CryptoKey's primary version can be updated
// via
// UpdateCryptoKeyPrimaryVersion.
Primary * CryptoKeyVersion ` json:"primary,omitempty" `
// Purpose: The immutable purpose of this CryptoKey. Currently, the only
// acceptable
// purpose is ENCRYPT_DECRYPT.
//
// Possible values:
// "CRYPTO_KEY_PURPOSE_UNSPECIFIED" - Not specified.
// "ENCRYPT_DECRYPT" - CryptoKeys with this purpose may be used
// with
// Encrypt and
// Decrypt.
Purpose string ` json:"purpose,omitempty" `
// RotationPeriod: next_rotation_time will be advanced by this period
// when the service
// automatically rotates a key. Must be at least one day.
//
// If rotation_period is set, next_rotation_time must also be set.
RotationPeriod string ` json:"rotationPeriod,omitempty" `
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi . ServerResponse ` json:"-" `
// ForceSendFields is a list of field names (e.g. "CreateTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "CreateTime") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * CryptoKey ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod CryptoKey
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// CryptoKeyVersion: A CryptoKeyVersion represents an individual
// cryptographic key, and the
// associated key material.
//
// It can be used for cryptographic operations either directly, or via
// its
// parent CryptoKey, in which case the server will choose the
// appropriate
// version for the operation.
2017-09-13 12:09:48 +00:00
//
// For security reasons, the raw cryptographic key material represented
// by a
// CryptoKeyVersion can never be viewed or exported. It can only be used
// to
// encrypt or decrypt data when an authorized user or application
// invokes Cloud
// KMS.
2017-08-05 18:17:15 +00:00
type CryptoKeyVersion struct {
// CreateTime: Output only. The time at which this CryptoKeyVersion was
// created.
CreateTime string ` json:"createTime,omitempty" `
// DestroyEventTime: Output only. The time this CryptoKeyVersion's key
// material was
// destroyed. Only present if state is
// DESTROYED.
DestroyEventTime string ` json:"destroyEventTime,omitempty" `
// DestroyTime: Output only. The time this CryptoKeyVersion's key
// material is scheduled
// for destruction. Only present if state is
// DESTROY_SCHEDULED.
DestroyTime string ` json:"destroyTime,omitempty" `
// Name: Output only. The resource name for this CryptoKeyVersion in the
// format
// `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersio
// ns/*`.
Name string ` json:"name,omitempty" `
// State: The current state of the CryptoKeyVersion.
//
// Possible values:
// "CRYPTO_KEY_VERSION_STATE_UNSPECIFIED" - Not specified.
// "ENABLED" - This version may be used in Encrypt and
// Decrypt requests.
// "DISABLED" - This version may not be used, but the key material is
// still available,
// and the version can be placed back into the ENABLED state.
// "DESTROYED" - This version is destroyed, and the key material is no
// longer stored.
// A version may not leave this state once entered.
// "DESTROY_SCHEDULED" - This version is scheduled for destruction,
// and will be destroyed soon.
// Call
// RestoreCryptoKeyVersion
// to put it back into the DISABLED state.
State string ` json:"state,omitempty" `
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi . ServerResponse ` json:"-" `
// ForceSendFields is a list of field names (e.g. "CreateTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "CreateTime") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * CryptoKeyVersion ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod CryptoKeyVersion
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// DecryptRequest: Request message for KeyManagementService.Decrypt.
type DecryptRequest struct {
// AdditionalAuthenticatedData: Optional data that must match the data
// originally supplied in
// EncryptRequest.additional_authenticated_data.
AdditionalAuthenticatedData string ` json:"additionalAuthenticatedData,omitempty" `
// Ciphertext: Required. The encrypted data originally returned
// in
// EncryptResponse.ciphertext.
Ciphertext string ` json:"ciphertext,omitempty" `
// ForceSendFields is a list of field names (e.g.
// "AdditionalAuthenticatedData") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g.
// "AdditionalAuthenticatedData") to include in API requests with the
// JSON null value. By default, fields with empty values are omitted
// from API requests. However, any field with an empty value appearing
// in NullFields will be sent to the server as null. It is an error if a
// field in this list has a non-empty value. This may be used to include
// null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * DecryptRequest ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod DecryptRequest
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// DecryptResponse: Response message for KeyManagementService.Decrypt.
type DecryptResponse struct {
// Plaintext: The decrypted data originally supplied in
// EncryptRequest.plaintext.
Plaintext string ` json:"plaintext,omitempty" `
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi . ServerResponse ` json:"-" `
// ForceSendFields is a list of field names (e.g. "Plaintext") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "Plaintext") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * DecryptResponse ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod DecryptResponse
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// DestroyCryptoKeyVersionRequest: Request message for
// KeyManagementService.DestroyCryptoKeyVersion.
type DestroyCryptoKeyVersionRequest struct {
}
// EncryptRequest: Request message for KeyManagementService.Encrypt.
type EncryptRequest struct {
// AdditionalAuthenticatedData: Optional data that, if specified, must
// also be provided during decryption
// through DecryptRequest.additional_authenticated_data. Must be
// no
// larger than 64KiB.
AdditionalAuthenticatedData string ` json:"additionalAuthenticatedData,omitempty" `
// Plaintext: Required. The data to encrypt. Must be no larger than
// 64KiB.
Plaintext string ` json:"plaintext,omitempty" `
// ForceSendFields is a list of field names (e.g.
// "AdditionalAuthenticatedData") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g.
// "AdditionalAuthenticatedData") to include in API requests with the
// JSON null value. By default, fields with empty values are omitted
// from API requests. However, any field with an empty value appearing
// in NullFields will be sent to the server as null. It is an error if a
// field in this list has a non-empty value. This may be used to include
// null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * EncryptRequest ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod EncryptRequest
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// EncryptResponse: Response message for KeyManagementService.Encrypt.
type EncryptResponse struct {
// Ciphertext: The encrypted data.
Ciphertext string ` json:"ciphertext,omitempty" `
// Name: The resource name of the CryptoKeyVersion used in encryption.
Name string ` json:"name,omitempty" `
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi . ServerResponse ` json:"-" `
// ForceSendFields is a list of field names (e.g. "Ciphertext") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "Ciphertext") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * EncryptResponse ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod EncryptResponse
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// Expr: Represents an expression text. Example:
//
// title: "User account presence"
// description: "Determines whether the request has a user account"
// expression: "size(request.user) > 0"
type Expr struct {
// Description: An optional description of the expression. This is a
// longer text which
// describes the expression, e.g. when hovered over it in a UI.
Description string ` json:"description,omitempty" `
// Expression: Textual representation of an expression in
// Common Expression Language syntax.
//
// The application context of the containing message determines
// which
// well-known feature set of CEL is supported.
Expression string ` json:"expression,omitempty" `
// Location: An optional string indicating the location of the
// expression for error
// reporting, e.g. a file name and a position in the file.
Location string ` json:"location,omitempty" `
// Title: An optional title for the expression, i.e. a short string
// describing
// its purpose. This can be used e.g. in UIs which allow to enter
// the
// expression.
Title string ` json:"title,omitempty" `
// ForceSendFields is a list of field names (e.g. "Description") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "Description") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * Expr ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod Expr
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// KeyRing: A KeyRing is a toplevel logical grouping of CryptoKeys.
type KeyRing struct {
// CreateTime: Output only. The time at which this KeyRing was created.
CreateTime string ` json:"createTime,omitempty" `
// Name: Output only. The resource name for the KeyRing in the
// format
// `projects/*/locations/*/keyRings/*`.
Name string ` json:"name,omitempty" `
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi . ServerResponse ` json:"-" `
// ForceSendFields is a list of field names (e.g. "CreateTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "CreateTime") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * KeyRing ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod KeyRing
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// ListCryptoKeyVersionsResponse: Response message for
// KeyManagementService.ListCryptoKeyVersions.
type ListCryptoKeyVersionsResponse struct {
// CryptoKeyVersions: The list of CryptoKeyVersions.
CryptoKeyVersions [ ] * CryptoKeyVersion ` json:"cryptoKeyVersions,omitempty" `
// NextPageToken: A token to retrieve next page of results. Pass this
// value in
// ListCryptoKeyVersionsRequest.page_token to retrieve the next page
// of
// results.
NextPageToken string ` json:"nextPageToken,omitempty" `
// TotalSize: The total number of CryptoKeyVersions that matched
// the
// query.
TotalSize int64 ` json:"totalSize,omitempty" `
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi . ServerResponse ` json:"-" `
// ForceSendFields is a list of field names (e.g. "CryptoKeyVersions")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "CryptoKeyVersions") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields [ ] string ` json:"-" `
}
func ( s * ListCryptoKeyVersionsResponse ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod ListCryptoKeyVersionsResponse
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// ListCryptoKeysResponse: Response message for
// KeyManagementService.ListCryptoKeys.
type ListCryptoKeysResponse struct {
// CryptoKeys: The list of CryptoKeys.
CryptoKeys [ ] * CryptoKey ` json:"cryptoKeys,omitempty" `
// NextPageToken: A token to retrieve next page of results. Pass this
// value in
// ListCryptoKeysRequest.page_token to retrieve the next page of
// results.
NextPageToken string ` json:"nextPageToken,omitempty" `
// TotalSize: The total number of CryptoKeys that matched the query.
TotalSize int64 ` json:"totalSize,omitempty" `
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi . ServerResponse ` json:"-" `
// ForceSendFields is a list of field names (e.g. "CryptoKeys") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "CryptoKeys") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * ListCryptoKeysResponse ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod ListCryptoKeysResponse
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// ListKeyRingsResponse: Response message for
// KeyManagementService.ListKeyRings.
type ListKeyRingsResponse struct {
// KeyRings: The list of KeyRings.
KeyRings [ ] * KeyRing ` json:"keyRings,omitempty" `
// NextPageToken: A token to retrieve next page of results. Pass this
// value in
// ListKeyRingsRequest.page_token to retrieve the next page of results.
NextPageToken string ` json:"nextPageToken,omitempty" `
// TotalSize: The total number of KeyRings that matched the query.
TotalSize int64 ` json:"totalSize,omitempty" `
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi . ServerResponse ` json:"-" `
// ForceSendFields is a list of field names (e.g. "KeyRings") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "KeyRings") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * ListKeyRingsResponse ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod ListKeyRingsResponse
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// ListLocationsResponse: The response message for
// Locations.ListLocations.
type ListLocationsResponse struct {
// Locations: A list of locations that matches the specified filter in
// the request.
Locations [ ] * Location ` json:"locations,omitempty" `
// NextPageToken: The standard List next-page token.
NextPageToken string ` json:"nextPageToken,omitempty" `
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi . ServerResponse ` json:"-" `
// ForceSendFields is a list of field names (e.g. "Locations") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "Locations") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * ListLocationsResponse ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod ListLocationsResponse
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// Location: A resource that represents Google Cloud Platform location.
type Location struct {
// Labels: Cross-service attributes for the location. For example
//
// {"cloud.googleapis.com/region": "us-east1"}
Labels map [ string ] string ` json:"labels,omitempty" `
// LocationId: The canonical id for this location. For example:
// "us-east1".
LocationId string ` json:"locationId,omitempty" `
// Metadata: Service-specific metadata. For example the available
// capacity at the given
// location.
Metadata googleapi . RawMessage ` json:"metadata,omitempty" `
// Name: Resource name for the location, which may vary between
// implementations.
// For example: "projects/example-project/locations/us-east1"
Name string ` json:"name,omitempty" `
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi . ServerResponse ` json:"-" `
// ForceSendFields is a list of field names (e.g. "Labels") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "Labels") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * Location ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod Location
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// Policy: Defines an Identity and Access Management (IAM) policy. It is
// used to
// specify access control policies for Cloud Platform resources.
//
//
// A `Policy` consists of a list of `bindings`. A `Binding` binds a list
// of
// `members` to a `role`, where the members can be user accounts, Google
// groups,
// Google domains, and service accounts. A `role` is a named list of
// permissions
// defined by IAM.
//
// **Example**
//
// {
// "bindings": [
// {
// "role": "roles/owner",
// "members": [
// "user:mike@example.com",
// "group:admins@example.com",
// "domain:google.com",
//
// "serviceAccount:my-other-app@appspot.gserviceaccount.com",
// ]
// },
// {
// "role": "roles/viewer",
// "members": ["user:sean@example.com"]
// }
// ]
// }
//
// For a description of IAM and its features, see the
// [IAM developer's guide](https://cloud.google.com/iam).
type Policy struct {
// AuditConfigs: Specifies cloud audit logging configuration for this
// policy.
AuditConfigs [ ] * AuditConfig ` json:"auditConfigs,omitempty" `
// Bindings: Associates a list of `members` to a `role`.
// `bindings` with no members will result in an error.
Bindings [ ] * Binding ` json:"bindings,omitempty" `
// Etag: `etag` is used for optimistic concurrency control as a way to
// help
// prevent simultaneous updates of a policy from overwriting each
// other.
// It is strongly suggested that systems make use of the `etag` in
// the
// read-modify-write cycle to perform policy updates in order to avoid
// race
// conditions: An `etag` is returned in the response to `getIamPolicy`,
// and
// systems are expected to put that etag in the request to
// `setIamPolicy` to
// ensure that their change will be applied to the same version of the
// policy.
//
// If no `etag` is provided in the call to `setIamPolicy`, then the
// existing
// policy is overwritten blindly.
Etag string ` json:"etag,omitempty" `
IamOwned bool ` json:"iamOwned,omitempty" `
// Version: Version of the `Policy`. The default version is 0.
Version int64 ` json:"version,omitempty" `
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi . ServerResponse ` json:"-" `
// ForceSendFields is a list of field names (e.g. "AuditConfigs") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "AuditConfigs") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * Policy ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod Policy
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// RestoreCryptoKeyVersionRequest: Request message for
// KeyManagementService.RestoreCryptoKeyVersion.
type RestoreCryptoKeyVersionRequest struct {
}
// SetIamPolicyRequest: Request message for `SetIamPolicy` method.
type SetIamPolicyRequest struct {
// Policy: REQUIRED: The complete policy to be applied to the
// `resource`. The size of
// the policy is limited to a few 10s of KB. An empty policy is a
// valid policy but certain Cloud Platform services (such as
// Projects)
// might reject them.
Policy * Policy ` json:"policy,omitempty" `
// UpdateMask: OPTIONAL: A FieldMask specifying which fields of the
// policy to modify. Only
// the fields in the mask will be modified. If no mask is provided,
// the
// following default mask is used:
// paths: "bindings, etag"
// This field is only used by Cloud IAM.
UpdateMask string ` json:"updateMask,omitempty" `
// ForceSendFields is a list of field names (e.g. "Policy") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "Policy") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * SetIamPolicyRequest ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod SetIamPolicyRequest
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// TestIamPermissionsRequest: Request message for `TestIamPermissions`
// method.
type TestIamPermissionsRequest struct {
// Permissions: The set of permissions to check for the `resource`.
// Permissions with
// wildcards (such as '*' or 'storage.*') are not allowed. For
// more
// information see
// [IAM
// Overview](https://cloud.google.com/iam/docs/overview#permissions).
Permissions [ ] string ` json:"permissions,omitempty" `
// ForceSendFields is a list of field names (e.g. "Permissions") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "Permissions") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * TestIamPermissionsRequest ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod TestIamPermissionsRequest
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// TestIamPermissionsResponse: Response message for `TestIamPermissions`
// method.
type TestIamPermissionsResponse struct {
// Permissions: A subset of `TestPermissionsRequest.permissions` that
// the caller is
// allowed.
Permissions [ ] string ` json:"permissions,omitempty" `
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi . ServerResponse ` json:"-" `
// ForceSendFields is a list of field names (e.g. "Permissions") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "Permissions") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields [ ] string ` json:"-" `
}
func ( s * TestIamPermissionsResponse ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod TestIamPermissionsResponse
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// UpdateCryptoKeyPrimaryVersionRequest: Request message for
// KeyManagementService.UpdateCryptoKeyPrimaryVersion.
type UpdateCryptoKeyPrimaryVersionRequest struct {
// CryptoKeyVersionId: The id of the child CryptoKeyVersion to use as
// primary.
CryptoKeyVersionId string ` json:"cryptoKeyVersionId,omitempty" `
// ForceSendFields is a list of field names (e.g. "CryptoKeyVersionId")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields [ ] string ` json:"-" `
// NullFields is a list of field names (e.g. "CryptoKeyVersionId") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields [ ] string ` json:"-" `
}
func ( s * UpdateCryptoKeyPrimaryVersionRequest ) MarshalJSON ( ) ( [ ] byte , error ) {
2017-12-03 20:01:25 +00:00
type NoMethod UpdateCryptoKeyPrimaryVersionRequest
raw := NoMethod ( * s )
2017-08-05 18:17:15 +00:00
return gensupport . MarshalJSON ( raw , s . ForceSendFields , s . NullFields )
}
// method id "cloudkms.projects.locations.get":
type ProjectsLocationsGetCall struct {
s * Service
name string
urlParams_ gensupport . URLParams
ifNoneMatch_ string
ctx_ context . Context
header_ http . Header
}
// Get: Get information about a location.
func ( r * ProjectsLocationsService ) Get ( name string ) * ProjectsLocationsGetCall {
c := & ProjectsLocationsGetCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . name = name
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsGetCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsGetCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func ( c * ProjectsLocationsGetCall ) IfNoneMatch ( entityTag string ) * ProjectsLocationsGetCall {
c . ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsGetCall ) Context ( ctx context . Context ) * ProjectsLocationsGetCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsGetCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsGetCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
if c . ifNoneMatch_ != "" {
reqHeaders . Set ( "If-None-Match" , c . ifNoneMatch_ )
}
var body io . Reader = nil
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+name}" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "GET" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"name" : c . name ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.get" call.
// Exactly one of *Location or error will be non-nil. Any non-2xx status
// code is an error. Response headers are in either
// *Location.ServerResponse.Header or (if a response was returned at
// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
// to check whether the returned error was because
// http.StatusNotModified was returned.
func ( c * ProjectsLocationsGetCall ) Do ( opts ... googleapi . CallOption ) ( * Location , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & Location {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Get information about a location.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}",
// "httpMethod": "GET",
// "id": "cloudkms.projects.locations.get",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "name": {
// "description": "Resource name for the location.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+name}",
// "response": {
// "$ref": "Location"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.list":
type ProjectsLocationsListCall struct {
s * Service
name string
urlParams_ gensupport . URLParams
ifNoneMatch_ string
ctx_ context . Context
header_ http . Header
}
// List: Lists information about the supported locations for this
// service.
func ( r * ProjectsLocationsService ) List ( name string ) * ProjectsLocationsListCall {
c := & ProjectsLocationsListCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . name = name
return c
}
// Filter sets the optional parameter "filter": The standard list
// filter.
func ( c * ProjectsLocationsListCall ) Filter ( filter string ) * ProjectsLocationsListCall {
c . urlParams_ . Set ( "filter" , filter )
return c
}
// PageSize sets the optional parameter "pageSize": The standard list
// page size.
func ( c * ProjectsLocationsListCall ) PageSize ( pageSize int64 ) * ProjectsLocationsListCall {
c . urlParams_ . Set ( "pageSize" , fmt . Sprint ( pageSize ) )
return c
}
// PageToken sets the optional parameter "pageToken": The standard list
// page token.
func ( c * ProjectsLocationsListCall ) PageToken ( pageToken string ) * ProjectsLocationsListCall {
c . urlParams_ . Set ( "pageToken" , pageToken )
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsListCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsListCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func ( c * ProjectsLocationsListCall ) IfNoneMatch ( entityTag string ) * ProjectsLocationsListCall {
c . ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsListCall ) Context ( ctx context . Context ) * ProjectsLocationsListCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsListCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsListCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
if c . ifNoneMatch_ != "" {
reqHeaders . Set ( "If-None-Match" , c . ifNoneMatch_ )
}
var body io . Reader = nil
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+name}/locations" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "GET" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"name" : c . name ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.list" call.
// Exactly one of *ListLocationsResponse or error will be non-nil. Any
// non-2xx status code is an error. Response headers are in either
// *ListLocationsResponse.ServerResponse.Header or (if a response was
// returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsListCall ) Do ( opts ... googleapi . CallOption ) ( * ListLocationsResponse , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & ListLocationsResponse {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Lists information about the supported locations for this service.",
// "flatPath": "v1/projects/{projectsId}/locations",
// "httpMethod": "GET",
// "id": "cloudkms.projects.locations.list",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "filter": {
// "description": "The standard list filter.",
// "location": "query",
// "type": "string"
// },
// "name": {
// "description": "The resource that owns the locations collection, if applicable.",
// "location": "path",
// "pattern": "^projects/[^/]+$",
// "required": true,
// "type": "string"
// },
// "pageSize": {
// "description": "The standard list page size.",
// "format": "int32",
// "location": "query",
// "type": "integer"
// },
// "pageToken": {
// "description": "The standard list page token.",
// "location": "query",
// "type": "string"
// }
// },
// "path": "v1/{+name}/locations",
// "response": {
// "$ref": "ListLocationsResponse"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// Pages invokes f for each page of results.
// A non-nil error returned from f will halt the iteration.
// The provided context supersedes any context provided to the Context method.
func ( c * ProjectsLocationsListCall ) Pages ( ctx context . Context , f func ( * ListLocationsResponse ) error ) error {
c . ctx_ = ctx
defer c . PageToken ( c . urlParams_ . Get ( "pageToken" ) ) // reset paging to original point
for {
x , err := c . Do ( )
if err != nil {
return err
}
if err := f ( x ) ; err != nil {
return err
}
if x . NextPageToken == "" {
return nil
}
c . PageToken ( x . NextPageToken )
}
}
// method id "cloudkms.projects.locations.keyRings.create":
type ProjectsLocationsKeyRingsCreateCall struct {
s * Service
parent string
keyring * KeyRing
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// Create: Create a new KeyRing in a given Project and Location.
func ( r * ProjectsLocationsKeyRingsService ) Create ( parent string , keyring * KeyRing ) * ProjectsLocationsKeyRingsCreateCall {
c := & ProjectsLocationsKeyRingsCreateCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . parent = parent
c . keyring = keyring
return c
}
// KeyRingId sets the optional parameter "keyRingId": Required. It must
// be unique within a location and match the regular
// expression `[a-zA-Z0-9_-]{1,63}`
func ( c * ProjectsLocationsKeyRingsCreateCall ) KeyRingId ( keyRingId string ) * ProjectsLocationsKeyRingsCreateCall {
c . urlParams_ . Set ( "keyRingId" , keyRingId )
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCreateCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCreateCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCreateCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCreateCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCreateCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCreateCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . keyring )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+parent}/keyRings" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "POST" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"parent" : c . parent ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.create" call.
// Exactly one of *KeyRing or error will be non-nil. Any non-2xx status
// code is an error. Response headers are in either
// *KeyRing.ServerResponse.Header or (if a response was returned at all)
// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
// check whether the returned error was because http.StatusNotModified
// was returned.
func ( c * ProjectsLocationsKeyRingsCreateCall ) Do ( opts ... googleapi . CallOption ) ( * KeyRing , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & KeyRing {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Create a new KeyRing in a given Project and Location.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings",
// "httpMethod": "POST",
// "id": "cloudkms.projects.locations.keyRings.create",
// "parameterOrder": [
// "parent"
// ],
// "parameters": {
// "keyRingId": {
// "description": "Required. It must be unique within a location and match the regular\nexpression `[a-zA-Z0-9_-]{1,63}`",
// "location": "query",
// "type": "string"
// },
// "parent": {
// "description": "Required. The resource name of the location associated with the\nKeyRings, in the format `projects/*/locations/*`.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+parent}/keyRings",
// "request": {
// "$ref": "KeyRing"
// },
// "response": {
// "$ref": "KeyRing"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.get":
type ProjectsLocationsKeyRingsGetCall struct {
s * Service
name string
urlParams_ gensupport . URLParams
ifNoneMatch_ string
ctx_ context . Context
header_ http . Header
}
// Get: Returns metadata for a given KeyRing.
func ( r * ProjectsLocationsKeyRingsService ) Get ( name string ) * ProjectsLocationsKeyRingsGetCall {
c := & ProjectsLocationsKeyRingsGetCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . name = name
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsGetCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsGetCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func ( c * ProjectsLocationsKeyRingsGetCall ) IfNoneMatch ( entityTag string ) * ProjectsLocationsKeyRingsGetCall {
c . ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsGetCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsGetCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsGetCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsGetCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
if c . ifNoneMatch_ != "" {
reqHeaders . Set ( "If-None-Match" , c . ifNoneMatch_ )
}
var body io . Reader = nil
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+name}" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "GET" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"name" : c . name ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.get" call.
// Exactly one of *KeyRing or error will be non-nil. Any non-2xx status
// code is an error. Response headers are in either
// *KeyRing.ServerResponse.Header or (if a response was returned at all)
// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
// check whether the returned error was because http.StatusNotModified
// was returned.
func ( c * ProjectsLocationsKeyRingsGetCall ) Do ( opts ... googleapi . CallOption ) ( * KeyRing , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & KeyRing {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Returns metadata for a given KeyRing.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}",
// "httpMethod": "GET",
// "id": "cloudkms.projects.locations.keyRings.get",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "name": {
// "description": "The name of the KeyRing to get.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+name}",
// "response": {
// "$ref": "KeyRing"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.getIamPolicy":
type ProjectsLocationsKeyRingsGetIamPolicyCall struct {
s * Service
resource string
urlParams_ gensupport . URLParams
ifNoneMatch_ string
ctx_ context . Context
header_ http . Header
}
// GetIamPolicy: Gets the access control policy for a resource.
// Returns an empty policy if the resource exists and does not have a
// policy
// set.
func ( r * ProjectsLocationsKeyRingsService ) GetIamPolicy ( resource string ) * ProjectsLocationsKeyRingsGetIamPolicyCall {
c := & ProjectsLocationsKeyRingsGetIamPolicyCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . resource = resource
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsGetIamPolicyCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsGetIamPolicyCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func ( c * ProjectsLocationsKeyRingsGetIamPolicyCall ) IfNoneMatch ( entityTag string ) * ProjectsLocationsKeyRingsGetIamPolicyCall {
c . ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsGetIamPolicyCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsGetIamPolicyCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsGetIamPolicyCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsGetIamPolicyCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
if c . ifNoneMatch_ != "" {
reqHeaders . Set ( "If-None-Match" , c . ifNoneMatch_ )
}
var body io . Reader = nil
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+resource}:getIamPolicy" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "GET" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"resource" : c . resource ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.getIamPolicy" call.
// Exactly one of *Policy or error will be non-nil. Any non-2xx status
// code is an error. Response headers are in either
// *Policy.ServerResponse.Header or (if a response was returned at all)
// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
// check whether the returned error was because http.StatusNotModified
// was returned.
func ( c * ProjectsLocationsKeyRingsGetIamPolicyCall ) Do ( opts ... googleapi . CallOption ) ( * Policy , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & Policy {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:getIamPolicy",
// "httpMethod": "GET",
// "id": "cloudkms.projects.locations.keyRings.getIamPolicy",
// "parameterOrder": [
// "resource"
// ],
// "parameters": {
// "resource": {
// "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+resource}:getIamPolicy",
// "response": {
// "$ref": "Policy"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.list":
type ProjectsLocationsKeyRingsListCall struct {
s * Service
parent string
urlParams_ gensupport . URLParams
ifNoneMatch_ string
ctx_ context . Context
header_ http . Header
}
// List: Lists KeyRings.
func ( r * ProjectsLocationsKeyRingsService ) List ( parent string ) * ProjectsLocationsKeyRingsListCall {
c := & ProjectsLocationsKeyRingsListCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . parent = parent
return c
}
// PageSize sets the optional parameter "pageSize": Optional limit on
// the number of KeyRings to include in the
// response. Further KeyRings can subsequently be obtained by
// including the ListKeyRingsResponse.next_page_token in a
// subsequent
// request. If unspecified, the server will pick an appropriate
// default.
func ( c * ProjectsLocationsKeyRingsListCall ) PageSize ( pageSize int64 ) * ProjectsLocationsKeyRingsListCall {
c . urlParams_ . Set ( "pageSize" , fmt . Sprint ( pageSize ) )
return c
}
// PageToken sets the optional parameter "pageToken": Optional
// pagination token, returned earlier
// via
// ListKeyRingsResponse.next_page_token.
func ( c * ProjectsLocationsKeyRingsListCall ) PageToken ( pageToken string ) * ProjectsLocationsKeyRingsListCall {
c . urlParams_ . Set ( "pageToken" , pageToken )
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsListCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsListCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func ( c * ProjectsLocationsKeyRingsListCall ) IfNoneMatch ( entityTag string ) * ProjectsLocationsKeyRingsListCall {
c . ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsListCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsListCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsListCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsListCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
if c . ifNoneMatch_ != "" {
reqHeaders . Set ( "If-None-Match" , c . ifNoneMatch_ )
}
var body io . Reader = nil
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+parent}/keyRings" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "GET" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"parent" : c . parent ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.list" call.
// Exactly one of *ListKeyRingsResponse or error will be non-nil. Any
// non-2xx status code is an error. Response headers are in either
// *ListKeyRingsResponse.ServerResponse.Header or (if a response was
// returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsListCall ) Do ( opts ... googleapi . CallOption ) ( * ListKeyRingsResponse , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & ListKeyRingsResponse {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Lists KeyRings.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings",
// "httpMethod": "GET",
// "id": "cloudkms.projects.locations.keyRings.list",
// "parameterOrder": [
// "parent"
// ],
// "parameters": {
// "pageSize": {
// "description": "Optional limit on the number of KeyRings to include in the\nresponse. Further KeyRings can subsequently be obtained by\nincluding the ListKeyRingsResponse.next_page_token in a subsequent\nrequest. If unspecified, the server will pick an appropriate default.",
// "format": "int32",
// "location": "query",
// "type": "integer"
// },
// "pageToken": {
// "description": "Optional pagination token, returned earlier via\nListKeyRingsResponse.next_page_token.",
// "location": "query",
// "type": "string"
// },
// "parent": {
// "description": "Required. The resource name of the location associated with the\nKeyRings, in the format `projects/*/locations/*`.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+parent}/keyRings",
// "response": {
// "$ref": "ListKeyRingsResponse"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// Pages invokes f for each page of results.
// A non-nil error returned from f will halt the iteration.
// The provided context supersedes any context provided to the Context method.
func ( c * ProjectsLocationsKeyRingsListCall ) Pages ( ctx context . Context , f func ( * ListKeyRingsResponse ) error ) error {
c . ctx_ = ctx
defer c . PageToken ( c . urlParams_ . Get ( "pageToken" ) ) // reset paging to original point
for {
x , err := c . Do ( )
if err != nil {
return err
}
if err := f ( x ) ; err != nil {
return err
}
if x . NextPageToken == "" {
return nil
}
c . PageToken ( x . NextPageToken )
}
}
// method id "cloudkms.projects.locations.keyRings.setIamPolicy":
type ProjectsLocationsKeyRingsSetIamPolicyCall struct {
s * Service
resource string
setiampolicyrequest * SetIamPolicyRequest
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// SetIamPolicy: Sets the access control policy on the specified
// resource. Replaces any
// existing policy.
func ( r * ProjectsLocationsKeyRingsService ) SetIamPolicy ( resource string , setiampolicyrequest * SetIamPolicyRequest ) * ProjectsLocationsKeyRingsSetIamPolicyCall {
c := & ProjectsLocationsKeyRingsSetIamPolicyCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . resource = resource
c . setiampolicyrequest = setiampolicyrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsSetIamPolicyCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsSetIamPolicyCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsSetIamPolicyCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsSetIamPolicyCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsSetIamPolicyCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsSetIamPolicyCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . setiampolicyrequest )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+resource}:setIamPolicy" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "POST" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"resource" : c . resource ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.setIamPolicy" call.
// Exactly one of *Policy or error will be non-nil. Any non-2xx status
// code is an error. Response headers are in either
// *Policy.ServerResponse.Header or (if a response was returned at all)
// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
// check whether the returned error was because http.StatusNotModified
// was returned.
func ( c * ProjectsLocationsKeyRingsSetIamPolicyCall ) Do ( opts ... googleapi . CallOption ) ( * Policy , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & Policy {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:setIamPolicy",
// "httpMethod": "POST",
// "id": "cloudkms.projects.locations.keyRings.setIamPolicy",
// "parameterOrder": [
// "resource"
// ],
// "parameters": {
// "resource": {
// "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+resource}:setIamPolicy",
// "request": {
// "$ref": "SetIamPolicyRequest"
// },
// "response": {
// "$ref": "Policy"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.testIamPermissions":
type ProjectsLocationsKeyRingsTestIamPermissionsCall struct {
s * Service
resource string
testiampermissionsrequest * TestIamPermissionsRequest
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// TestIamPermissions: Returns permissions that a caller has on the
// specified resource.
// If the resource does not exist, this will return an empty set
// of
// permissions, not a NOT_FOUND error.
//
// Note: This operation is designed to be used for building
// permission-aware
// UIs and command-line tools, not for authorization checking. This
// operation
// may "fail open" without warning.
func ( r * ProjectsLocationsKeyRingsService ) TestIamPermissions ( resource string , testiampermissionsrequest * TestIamPermissionsRequest ) * ProjectsLocationsKeyRingsTestIamPermissionsCall {
c := & ProjectsLocationsKeyRingsTestIamPermissionsCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . resource = resource
c . testiampermissionsrequest = testiampermissionsrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsTestIamPermissionsCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsTestIamPermissionsCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsTestIamPermissionsCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsTestIamPermissionsCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsTestIamPermissionsCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsTestIamPermissionsCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . testiampermissionsrequest )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+resource}:testIamPermissions" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "POST" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"resource" : c . resource ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.testIamPermissions" call.
// Exactly one of *TestIamPermissionsResponse or error will be non-nil.
// Any non-2xx status code is an error. Response headers are in either
// *TestIamPermissionsResponse.ServerResponse.Header or (if a response
// was returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsTestIamPermissionsCall ) Do ( opts ... googleapi . CallOption ) ( * TestIamPermissionsResponse , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & TestIamPermissionsResponse {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}:testIamPermissions",
// "httpMethod": "POST",
// "id": "cloudkms.projects.locations.keyRings.testIamPermissions",
// "parameterOrder": [
// "resource"
// ],
// "parameters": {
// "resource": {
// "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+resource}:testIamPermissions",
// "request": {
// "$ref": "TestIamPermissionsRequest"
// },
// "response": {
// "$ref": "TestIamPermissionsResponse"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.create":
type ProjectsLocationsKeyRingsCryptoKeysCreateCall struct {
s * Service
parent string
cryptokey * CryptoKey
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// Create: Create a new CryptoKey within a KeyRing.
//
// CryptoKey.purpose is required.
func ( r * ProjectsLocationsKeyRingsCryptoKeysService ) Create ( parent string , cryptokey * CryptoKey ) * ProjectsLocationsKeyRingsCryptoKeysCreateCall {
c := & ProjectsLocationsKeyRingsCryptoKeysCreateCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . parent = parent
c . cryptokey = cryptokey
return c
}
// CryptoKeyId sets the optional parameter "cryptoKeyId": Required. It
// must be unique within a KeyRing and match the regular
// expression `[a-zA-Z0-9_-]{1,63}`
func ( c * ProjectsLocationsKeyRingsCryptoKeysCreateCall ) CryptoKeyId ( cryptoKeyId string ) * ProjectsLocationsKeyRingsCryptoKeysCreateCall {
c . urlParams_ . Set ( "cryptoKeyId" , cryptoKeyId )
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCreateCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysCreateCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCreateCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysCreateCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCreateCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysCreateCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . cryptokey )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+parent}/cryptoKeys" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "POST" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"parent" : c . parent ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.create" call.
// Exactly one of *CryptoKey or error will be non-nil. Any non-2xx
// status code is an error. Response headers are in either
// *CryptoKey.ServerResponse.Header or (if a response was returned at
// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
// to check whether the returned error was because
// http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCreateCall ) Do ( opts ... googleapi . CallOption ) ( * CryptoKey , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & CryptoKey {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Create a new CryptoKey within a KeyRing.\n\nCryptoKey.purpose is required.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys",
// "httpMethod": "POST",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.create",
// "parameterOrder": [
// "parent"
// ],
// "parameters": {
// "cryptoKeyId": {
// "description": "Required. It must be unique within a KeyRing and match the regular\nexpression `[a-zA-Z0-9_-]{1,63}`",
// "location": "query",
// "type": "string"
// },
// "parent": {
// "description": "Required. The name of the KeyRing associated with the\nCryptoKeys.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+parent}/cryptoKeys",
// "request": {
// "$ref": "CryptoKey"
// },
// "response": {
// "$ref": "CryptoKey"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.decrypt":
type ProjectsLocationsKeyRingsCryptoKeysDecryptCall struct {
s * Service
name string
decryptrequest * DecryptRequest
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// Decrypt: Decrypts data that was protected by Encrypt.
func ( r * ProjectsLocationsKeyRingsCryptoKeysService ) Decrypt ( name string , decryptrequest * DecryptRequest ) * ProjectsLocationsKeyRingsCryptoKeysDecryptCall {
c := & ProjectsLocationsKeyRingsCryptoKeysDecryptCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . name = name
c . decryptrequest = decryptrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysDecryptCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysDecryptCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysDecryptCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysDecryptCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysDecryptCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysDecryptCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . decryptrequest )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+name}:decrypt" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "POST" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"name" : c . name ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.decrypt" call.
// Exactly one of *DecryptResponse or error will be non-nil. Any non-2xx
// status code is an error. Response headers are in either
// *DecryptResponse.ServerResponse.Header or (if a response was returned
// at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysDecryptCall ) Do ( opts ... googleapi . CallOption ) ( * DecryptResponse , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & DecryptResponse {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Decrypts data that was protected by Encrypt.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:decrypt",
// "httpMethod": "POST",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.decrypt",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "name": {
// "description": "Required. The resource name of the CryptoKey to use for decryption.\nThe server will choose the appropriate version.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+name}:decrypt",
// "request": {
// "$ref": "DecryptRequest"
// },
// "response": {
// "$ref": "DecryptResponse"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.encrypt":
type ProjectsLocationsKeyRingsCryptoKeysEncryptCall struct {
s * Service
name string
encryptrequest * EncryptRequest
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// Encrypt: Encrypts data, so that it can only be recovered by a call to
// Decrypt.
func ( r * ProjectsLocationsKeyRingsCryptoKeysService ) Encrypt ( name string , encryptrequest * EncryptRequest ) * ProjectsLocationsKeyRingsCryptoKeysEncryptCall {
c := & ProjectsLocationsKeyRingsCryptoKeysEncryptCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . name = name
c . encryptrequest = encryptrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysEncryptCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysEncryptCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysEncryptCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysEncryptCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysEncryptCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysEncryptCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . encryptrequest )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+name}:encrypt" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "POST" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"name" : c . name ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.encrypt" call.
// Exactly one of *EncryptResponse or error will be non-nil. Any non-2xx
// status code is an error. Response headers are in either
// *EncryptResponse.ServerResponse.Header or (if a response was returned
// at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysEncryptCall ) Do ( opts ... googleapi . CallOption ) ( * EncryptResponse , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & EncryptResponse {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Encrypts data, so that it can only be recovered by a call to Decrypt.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:encrypt",
// "httpMethod": "POST",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.encrypt",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "name": {
// "description": "Required. The resource name of the CryptoKey or CryptoKeyVersion\nto use for encryption.\n\nIf a CryptoKey is specified, the server will use its\nprimary version.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/.+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+name}:encrypt",
// "request": {
// "$ref": "EncryptRequest"
// },
// "response": {
// "$ref": "EncryptResponse"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.get":
type ProjectsLocationsKeyRingsCryptoKeysGetCall struct {
s * Service
name string
urlParams_ gensupport . URLParams
ifNoneMatch_ string
ctx_ context . Context
header_ http . Header
}
// Get: Returns metadata for a given CryptoKey, as well as its
// primary CryptoKeyVersion.
func ( r * ProjectsLocationsKeyRingsCryptoKeysService ) Get ( name string ) * ProjectsLocationsKeyRingsCryptoKeysGetCall {
c := & ProjectsLocationsKeyRingsCryptoKeysGetCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . name = name
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysGetCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysGetCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func ( c * ProjectsLocationsKeyRingsCryptoKeysGetCall ) IfNoneMatch ( entityTag string ) * ProjectsLocationsKeyRingsCryptoKeysGetCall {
c . ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysGetCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysGetCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysGetCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysGetCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
if c . ifNoneMatch_ != "" {
reqHeaders . Set ( "If-None-Match" , c . ifNoneMatch_ )
}
var body io . Reader = nil
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+name}" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "GET" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"name" : c . name ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.get" call.
// Exactly one of *CryptoKey or error will be non-nil. Any non-2xx
// status code is an error. Response headers are in either
// *CryptoKey.ServerResponse.Header or (if a response was returned at
// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
// to check whether the returned error was because
// http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysGetCall ) Do ( opts ... googleapi . CallOption ) ( * CryptoKey , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & CryptoKey {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Returns metadata for a given CryptoKey, as well as its\nprimary CryptoKeyVersion.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}",
// "httpMethod": "GET",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.get",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "name": {
// "description": "The name of the CryptoKey to get.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+name}",
// "response": {
// "$ref": "CryptoKey"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.getIamPolicy":
type ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall struct {
s * Service
resource string
urlParams_ gensupport . URLParams
ifNoneMatch_ string
ctx_ context . Context
header_ http . Header
}
// GetIamPolicy: Gets the access control policy for a resource.
// Returns an empty policy if the resource exists and does not have a
// policy
// set.
func ( r * ProjectsLocationsKeyRingsCryptoKeysService ) GetIamPolicy ( resource string ) * ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall {
c := & ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . resource = resource
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func ( c * ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall ) IfNoneMatch ( entityTag string ) * ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall {
c . ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
if c . ifNoneMatch_ != "" {
reqHeaders . Set ( "If-None-Match" , c . ifNoneMatch_ )
}
var body io . Reader = nil
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+resource}:getIamPolicy" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "GET" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"resource" : c . resource ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.getIamPolicy" call.
// Exactly one of *Policy or error will be non-nil. Any non-2xx status
// code is an error. Response headers are in either
// *Policy.ServerResponse.Header or (if a response was returned at all)
// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
// check whether the returned error was because http.StatusNotModified
// was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall ) Do ( opts ... googleapi . CallOption ) ( * Policy , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & Policy {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:getIamPolicy",
// "httpMethod": "GET",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.getIamPolicy",
// "parameterOrder": [
// "resource"
// ],
// "parameters": {
// "resource": {
// "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+resource}:getIamPolicy",
// "response": {
// "$ref": "Policy"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.list":
type ProjectsLocationsKeyRingsCryptoKeysListCall struct {
s * Service
parent string
urlParams_ gensupport . URLParams
ifNoneMatch_ string
ctx_ context . Context
header_ http . Header
}
// List: Lists CryptoKeys.
func ( r * ProjectsLocationsKeyRingsCryptoKeysService ) List ( parent string ) * ProjectsLocationsKeyRingsCryptoKeysListCall {
c := & ProjectsLocationsKeyRingsCryptoKeysListCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . parent = parent
return c
}
// PageSize sets the optional parameter "pageSize": Optional limit on
// the number of CryptoKeys to include in the
// response. Further CryptoKeys can subsequently be obtained
// by
// including the ListCryptoKeysResponse.next_page_token in a
// subsequent
// request. If unspecified, the server will pick an appropriate
// default.
func ( c * ProjectsLocationsKeyRingsCryptoKeysListCall ) PageSize ( pageSize int64 ) * ProjectsLocationsKeyRingsCryptoKeysListCall {
c . urlParams_ . Set ( "pageSize" , fmt . Sprint ( pageSize ) )
return c
}
// PageToken sets the optional parameter "pageToken": Optional
// pagination token, returned earlier
// via
// ListCryptoKeysResponse.next_page_token.
func ( c * ProjectsLocationsKeyRingsCryptoKeysListCall ) PageToken ( pageToken string ) * ProjectsLocationsKeyRingsCryptoKeysListCall {
c . urlParams_ . Set ( "pageToken" , pageToken )
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysListCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysListCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func ( c * ProjectsLocationsKeyRingsCryptoKeysListCall ) IfNoneMatch ( entityTag string ) * ProjectsLocationsKeyRingsCryptoKeysListCall {
c . ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysListCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysListCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysListCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysListCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
if c . ifNoneMatch_ != "" {
reqHeaders . Set ( "If-None-Match" , c . ifNoneMatch_ )
}
var body io . Reader = nil
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+parent}/cryptoKeys" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "GET" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"parent" : c . parent ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.list" call.
// Exactly one of *ListCryptoKeysResponse or error will be non-nil. Any
// non-2xx status code is an error. Response headers are in either
// *ListCryptoKeysResponse.ServerResponse.Header or (if a response was
// returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysListCall ) Do ( opts ... googleapi . CallOption ) ( * ListCryptoKeysResponse , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & ListCryptoKeysResponse {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Lists CryptoKeys.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys",
// "httpMethod": "GET",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.list",
// "parameterOrder": [
// "parent"
// ],
// "parameters": {
// "pageSize": {
// "description": "Optional limit on the number of CryptoKeys to include in the\nresponse. Further CryptoKeys can subsequently be obtained by\nincluding the ListCryptoKeysResponse.next_page_token in a subsequent\nrequest. If unspecified, the server will pick an appropriate default.",
// "format": "int32",
// "location": "query",
// "type": "integer"
// },
// "pageToken": {
// "description": "Optional pagination token, returned earlier via\nListCryptoKeysResponse.next_page_token.",
// "location": "query",
// "type": "string"
// },
// "parent": {
// "description": "Required. The resource name of the KeyRing to list, in the format\n`projects/*/locations/*/keyRings/*`.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+parent}/cryptoKeys",
// "response": {
// "$ref": "ListCryptoKeysResponse"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// Pages invokes f for each page of results.
// A non-nil error returned from f will halt the iteration.
// The provided context supersedes any context provided to the Context method.
func ( c * ProjectsLocationsKeyRingsCryptoKeysListCall ) Pages ( ctx context . Context , f func ( * ListCryptoKeysResponse ) error ) error {
c . ctx_ = ctx
defer c . PageToken ( c . urlParams_ . Get ( "pageToken" ) ) // reset paging to original point
for {
x , err := c . Do ( )
if err != nil {
return err
}
if err := f ( x ) ; err != nil {
return err
}
if x . NextPageToken == "" {
return nil
}
c . PageToken ( x . NextPageToken )
}
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.patch":
type ProjectsLocationsKeyRingsCryptoKeysPatchCall struct {
s * Service
name string
cryptokey * CryptoKey
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// Patch: Update a CryptoKey.
func ( r * ProjectsLocationsKeyRingsCryptoKeysService ) Patch ( name string , cryptokey * CryptoKey ) * ProjectsLocationsKeyRingsCryptoKeysPatchCall {
c := & ProjectsLocationsKeyRingsCryptoKeysPatchCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . name = name
c . cryptokey = cryptokey
return c
}
// UpdateMask sets the optional parameter "updateMask": Required list of
// fields to be updated in this request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysPatchCall ) UpdateMask ( updateMask string ) * ProjectsLocationsKeyRingsCryptoKeysPatchCall {
c . urlParams_ . Set ( "updateMask" , updateMask )
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysPatchCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysPatchCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysPatchCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysPatchCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysPatchCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysPatchCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . cryptokey )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+name}" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "PATCH" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"name" : c . name ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.patch" call.
// Exactly one of *CryptoKey or error will be non-nil. Any non-2xx
// status code is an error. Response headers are in either
// *CryptoKey.ServerResponse.Header or (if a response was returned at
// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
// to check whether the returned error was because
// http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysPatchCall ) Do ( opts ... googleapi . CallOption ) ( * CryptoKey , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & CryptoKey {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Update a CryptoKey.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}",
// "httpMethod": "PATCH",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.patch",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "name": {
// "description": "Output only. The resource name for this CryptoKey in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$",
// "required": true,
// "type": "string"
// },
// "updateMask": {
// "description": "Required list of fields to be updated in this request.",
// "format": "google-fieldmask",
// "location": "query",
// "type": "string"
// }
// },
// "path": "v1/{+name}",
// "request": {
// "$ref": "CryptoKey"
// },
// "response": {
// "$ref": "CryptoKey"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.setIamPolicy":
type ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall struct {
s * Service
resource string
setiampolicyrequest * SetIamPolicyRequest
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// SetIamPolicy: Sets the access control policy on the specified
// resource. Replaces any
// existing policy.
func ( r * ProjectsLocationsKeyRingsCryptoKeysService ) SetIamPolicy ( resource string , setiampolicyrequest * SetIamPolicyRequest ) * ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall {
c := & ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . resource = resource
c . setiampolicyrequest = setiampolicyrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . setiampolicyrequest )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+resource}:setIamPolicy" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "POST" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"resource" : c . resource ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.setIamPolicy" call.
// Exactly one of *Policy or error will be non-nil. Any non-2xx status
// code is an error. Response headers are in either
// *Policy.ServerResponse.Header or (if a response was returned at all)
// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
// check whether the returned error was because http.StatusNotModified
// was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall ) Do ( opts ... googleapi . CallOption ) ( * Policy , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & Policy {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:setIamPolicy",
// "httpMethod": "POST",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.setIamPolicy",
// "parameterOrder": [
// "resource"
// ],
// "parameters": {
// "resource": {
// "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+resource}:setIamPolicy",
// "request": {
// "$ref": "SetIamPolicyRequest"
// },
// "response": {
// "$ref": "Policy"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.testIamPermissions":
type ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall struct {
s * Service
resource string
testiampermissionsrequest * TestIamPermissionsRequest
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// TestIamPermissions: Returns permissions that a caller has on the
// specified resource.
// If the resource does not exist, this will return an empty set
// of
// permissions, not a NOT_FOUND error.
//
// Note: This operation is designed to be used for building
// permission-aware
// UIs and command-line tools, not for authorization checking. This
// operation
// may "fail open" without warning.
func ( r * ProjectsLocationsKeyRingsCryptoKeysService ) TestIamPermissions ( resource string , testiampermissionsrequest * TestIamPermissionsRequest ) * ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall {
c := & ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . resource = resource
c . testiampermissionsrequest = testiampermissionsrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . testiampermissionsrequest )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+resource}:testIamPermissions" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "POST" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"resource" : c . resource ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.testIamPermissions" call.
// Exactly one of *TestIamPermissionsResponse or error will be non-nil.
// Any non-2xx status code is an error. Response headers are in either
// *TestIamPermissionsResponse.ServerResponse.Header or (if a response
// was returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall ) Do ( opts ... googleapi . CallOption ) ( * TestIamPermissionsResponse , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & TestIamPermissionsResponse {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:testIamPermissions",
// "httpMethod": "POST",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.testIamPermissions",
// "parameterOrder": [
// "resource"
// ],
// "parameters": {
// "resource": {
// "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+resource}:testIamPermissions",
// "request": {
// "$ref": "TestIamPermissionsRequest"
// },
// "response": {
// "$ref": "TestIamPermissionsResponse"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.updatePrimaryVersion":
type ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall struct {
s * Service
name string
updatecryptokeyprimaryversionrequest * UpdateCryptoKeyPrimaryVersionRequest
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// UpdatePrimaryVersion: Update the version of a CryptoKey that will be
// used in Encrypt
func ( r * ProjectsLocationsKeyRingsCryptoKeysService ) UpdatePrimaryVersion ( name string , updatecryptokeyprimaryversionrequest * UpdateCryptoKeyPrimaryVersionRequest ) * ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall {
c := & ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . name = name
c . updatecryptokeyprimaryversionrequest = updatecryptokeyprimaryversionrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . updatecryptokeyprimaryversionrequest )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+name}:updatePrimaryVersion" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "POST" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"name" : c . name ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.updatePrimaryVersion" call.
// Exactly one of *CryptoKey or error will be non-nil. Any non-2xx
// status code is an error. Response headers are in either
// *CryptoKey.ServerResponse.Header or (if a response was returned at
// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
// to check whether the returned error was because
// http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall ) Do ( opts ... googleapi . CallOption ) ( * CryptoKey , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & CryptoKey {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Update the version of a CryptoKey that will be used in Encrypt",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}:updatePrimaryVersion",
// "httpMethod": "POST",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.updatePrimaryVersion",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "name": {
// "description": "The resource name of the CryptoKey to update.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+name}:updatePrimaryVersion",
// "request": {
// "$ref": "UpdateCryptoKeyPrimaryVersionRequest"
// },
// "response": {
// "$ref": "CryptoKey"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.create":
type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall struct {
s * Service
parent string
cryptokeyversion * CryptoKeyVersion
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// Create: Create a new CryptoKeyVersion in a CryptoKey.
//
// The server will assign the next sequential id. If unset,
// state will be set to
// ENABLED.
func ( r * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService ) Create ( parent string , cryptokeyversion * CryptoKeyVersion ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall {
c := & ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . parent = parent
c . cryptokeyversion = cryptokeyversion
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . cryptokeyversion )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+parent}/cryptoKeyVersions" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "POST" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"parent" : c . parent ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.create" call.
// Exactly one of *CryptoKeyVersion or error will be non-nil. Any
// non-2xx status code is an error. Response headers are in either
// *CryptoKeyVersion.ServerResponse.Header or (if a response was
// returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall ) Do ( opts ... googleapi . CallOption ) ( * CryptoKeyVersion , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & CryptoKeyVersion {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Create a new CryptoKeyVersion in a CryptoKey.\n\nThe server will assign the next sequential id. If unset,\nstate will be set to\nENABLED.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions",
// "httpMethod": "POST",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.create",
// "parameterOrder": [
// "parent"
// ],
// "parameters": {
// "parent": {
// "description": "Required. The name of the CryptoKey associated with\nthe CryptoKeyVersions.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+parent}/cryptoKeyVersions",
// "request": {
// "$ref": "CryptoKeyVersion"
// },
// "response": {
// "$ref": "CryptoKeyVersion"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.destroy":
type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall struct {
s * Service
name string
destroycryptokeyversionrequest * DestroyCryptoKeyVersionRequest
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// Destroy: Schedule a CryptoKeyVersion for destruction.
//
// Upon calling this method, CryptoKeyVersion.state will be set
// to
// DESTROY_SCHEDULED
// and destroy_time will be set to a time 24
// hours in the future, at which point the state
// will be changed to
// DESTROYED, and the key
// material will be irrevocably destroyed.
//
// Before the destroy_time is reached,
// RestoreCryptoKeyVersion may be called to reverse the process.
func ( r * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService ) Destroy ( name string , destroycryptokeyversionrequest * DestroyCryptoKeyVersionRequest ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall {
c := & ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . name = name
c . destroycryptokeyversionrequest = destroycryptokeyversionrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . destroycryptokeyversionrequest )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+name}:destroy" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "POST" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"name" : c . name ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.destroy" call.
// Exactly one of *CryptoKeyVersion or error will be non-nil. Any
// non-2xx status code is an error. Response headers are in either
// *CryptoKeyVersion.ServerResponse.Header or (if a response was
// returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall ) Do ( opts ... googleapi . CallOption ) ( * CryptoKeyVersion , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & CryptoKeyVersion {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Schedule a CryptoKeyVersion for destruction.\n\nUpon calling this method, CryptoKeyVersion.state will be set to\nDESTROY_SCHEDULED\nand destroy_time will be set to a time 24\nhours in the future, at which point the state\nwill be changed to\nDESTROYED, and the key\nmaterial will be irrevocably destroyed.\n\nBefore the destroy_time is reached,\nRestoreCryptoKeyVersion may be called to reverse the process.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:destroy",
// "httpMethod": "POST",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.destroy",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "name": {
// "description": "The resource name of the CryptoKeyVersion to destroy.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+name}:destroy",
// "request": {
// "$ref": "DestroyCryptoKeyVersionRequest"
// },
// "response": {
// "$ref": "CryptoKeyVersion"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.get":
type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall struct {
s * Service
name string
urlParams_ gensupport . URLParams
ifNoneMatch_ string
ctx_ context . Context
header_ http . Header
}
// Get: Returns metadata for a given CryptoKeyVersion.
func ( r * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService ) Get ( name string ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall {
c := & ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . name = name
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall ) IfNoneMatch ( entityTag string ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall {
c . ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
if c . ifNoneMatch_ != "" {
reqHeaders . Set ( "If-None-Match" , c . ifNoneMatch_ )
}
var body io . Reader = nil
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+name}" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "GET" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"name" : c . name ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.get" call.
// Exactly one of *CryptoKeyVersion or error will be non-nil. Any
// non-2xx status code is an error. Response headers are in either
// *CryptoKeyVersion.ServerResponse.Header or (if a response was
// returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall ) Do ( opts ... googleapi . CallOption ) ( * CryptoKeyVersion , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & CryptoKeyVersion {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Returns metadata for a given CryptoKeyVersion.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}",
// "httpMethod": "GET",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.get",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "name": {
// "description": "The name of the CryptoKeyVersion to get.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+name}",
// "response": {
// "$ref": "CryptoKeyVersion"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.list":
type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall struct {
s * Service
parent string
urlParams_ gensupport . URLParams
ifNoneMatch_ string
ctx_ context . Context
header_ http . Header
}
// List: Lists CryptoKeyVersions.
func ( r * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService ) List ( parent string ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall {
c := & ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . parent = parent
return c
}
// PageSize sets the optional parameter "pageSize": Optional limit on
// the number of CryptoKeyVersions to
// include in the response. Further CryptoKeyVersions can
// subsequently be obtained by including
// the
// ListCryptoKeyVersionsResponse.next_page_token in a subsequent
// request.
// If unspecified, the server will pick an appropriate default.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall ) PageSize ( pageSize int64 ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall {
c . urlParams_ . Set ( "pageSize" , fmt . Sprint ( pageSize ) )
return c
}
// PageToken sets the optional parameter "pageToken": Optional
// pagination token, returned earlier
// via
// ListCryptoKeyVersionsResponse.next_page_token.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall ) PageToken ( pageToken string ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall {
c . urlParams_ . Set ( "pageToken" , pageToken )
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall ) IfNoneMatch ( entityTag string ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall {
c . ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
if c . ifNoneMatch_ != "" {
reqHeaders . Set ( "If-None-Match" , c . ifNoneMatch_ )
}
var body io . Reader = nil
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+parent}/cryptoKeyVersions" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "GET" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"parent" : c . parent ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.list" call.
// Exactly one of *ListCryptoKeyVersionsResponse or error will be
// non-nil. Any non-2xx status code is an error. Response headers are in
// either *ListCryptoKeyVersionsResponse.ServerResponse.Header or (if a
// response was returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall ) Do ( opts ... googleapi . CallOption ) ( * ListCryptoKeyVersionsResponse , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & ListCryptoKeyVersionsResponse {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Lists CryptoKeyVersions.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions",
// "httpMethod": "GET",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.list",
// "parameterOrder": [
// "parent"
// ],
// "parameters": {
// "pageSize": {
// "description": "Optional limit on the number of CryptoKeyVersions to\ninclude in the response. Further CryptoKeyVersions can\nsubsequently be obtained by including the\nListCryptoKeyVersionsResponse.next_page_token in a subsequent request.\nIf unspecified, the server will pick an appropriate default.",
// "format": "int32",
// "location": "query",
// "type": "integer"
// },
// "pageToken": {
// "description": "Optional pagination token, returned earlier via\nListCryptoKeyVersionsResponse.next_page_token.",
// "location": "query",
// "type": "string"
// },
// "parent": {
// "description": "Required. The resource name of the CryptoKey to list, in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*`.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+parent}/cryptoKeyVersions",
// "response": {
// "$ref": "ListCryptoKeyVersionsResponse"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// Pages invokes f for each page of results.
// A non-nil error returned from f will halt the iteration.
// The provided context supersedes any context provided to the Context method.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall ) Pages ( ctx context . Context , f func ( * ListCryptoKeyVersionsResponse ) error ) error {
c . ctx_ = ctx
defer c . PageToken ( c . urlParams_ . Get ( "pageToken" ) ) // reset paging to original point
for {
x , err := c . Do ( )
if err != nil {
return err
}
if err := f ( x ) ; err != nil {
return err
}
if x . NextPageToken == "" {
return nil
}
c . PageToken ( x . NextPageToken )
}
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.patch":
type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall struct {
s * Service
name string
cryptokeyversion * CryptoKeyVersion
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// Patch: Update a CryptoKeyVersion's metadata.
//
// state may be changed between
// ENABLED and
// DISABLED using this
// method. See DestroyCryptoKeyVersion and RestoreCryptoKeyVersion
// to
// move between other states.
func ( r * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService ) Patch ( name string , cryptokeyversion * CryptoKeyVersion ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall {
c := & ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . name = name
c . cryptokeyversion = cryptokeyversion
return c
}
// UpdateMask sets the optional parameter "updateMask": Required list of
// fields to be updated in this request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall ) UpdateMask ( updateMask string ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall {
c . urlParams_ . Set ( "updateMask" , updateMask )
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . cryptokeyversion )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+name}" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "PATCH" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"name" : c . name ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.patch" call.
// Exactly one of *CryptoKeyVersion or error will be non-nil. Any
// non-2xx status code is an error. Response headers are in either
// *CryptoKeyVersion.ServerResponse.Header or (if a response was
// returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall ) Do ( opts ... googleapi . CallOption ) ( * CryptoKeyVersion , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & CryptoKeyVersion {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Update a CryptoKeyVersion's metadata.\n\nstate may be changed between\nENABLED and\nDISABLED using this\nmethod. See DestroyCryptoKeyVersion and RestoreCryptoKeyVersion to\nmove between other states.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}",
// "httpMethod": "PATCH",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.patch",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "name": {
// "description": "Output only. The resource name for this CryptoKeyVersion in the format\n`projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$",
// "required": true,
// "type": "string"
// },
// "updateMask": {
// "description": "Required list of fields to be updated in this request.",
// "format": "google-fieldmask",
// "location": "query",
// "type": "string"
// }
// },
// "path": "v1/{+name}",
// "request": {
// "$ref": "CryptoKeyVersion"
// },
// "response": {
// "$ref": "CryptoKeyVersion"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}
// method id "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.restore":
type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall struct {
s * Service
name string
restorecryptokeyversionrequest * RestoreCryptoKeyVersionRequest
urlParams_ gensupport . URLParams
ctx_ context . Context
header_ http . Header
}
// Restore: Restore a CryptoKeyVersion in
// the
// DESTROY_SCHEDULED,
// state.
//
// Upon restoration of the CryptoKeyVersion, state
// will be set to DISABLED,
// and destroy_time will be cleared.
func ( r * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService ) Restore ( name string , restorecryptokeyversionrequest * RestoreCryptoKeyVersionRequest ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall {
c := & ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall { s : r . s , urlParams_ : make ( gensupport . URLParams ) }
c . name = name
c . restorecryptokeyversionrequest = restorecryptokeyversionrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall ) Fields ( s ... googleapi . Field ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall {
c . urlParams_ . Set ( "fields" , googleapi . CombineFields ( s ) )
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall ) Context ( ctx context . Context ) * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall {
c . ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall ) Header ( ) http . Header {
if c . header_ == nil {
c . header_ = make ( http . Header )
}
return c . header_
}
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall ) doRequest ( alt string ) ( * http . Response , error ) {
reqHeaders := make ( http . Header )
for k , v := range c . header_ {
reqHeaders [ k ] = v
}
reqHeaders . Set ( "User-Agent" , c . s . userAgent ( ) )
var body io . Reader = nil
body , err := googleapi . WithoutDataWrapper . JSONReader ( c . restorecryptokeyversionrequest )
if err != nil {
return nil , err
}
reqHeaders . Set ( "Content-Type" , "application/json" )
c . urlParams_ . Set ( "alt" , alt )
urls := googleapi . ResolveRelative ( c . s . BasePath , "v1/{+name}:restore" )
urls += "?" + c . urlParams_ . Encode ( )
req , _ := http . NewRequest ( "POST" , urls , body )
req . Header = reqHeaders
googleapi . Expand ( req . URL , map [ string ] string {
"name" : c . name ,
} )
return gensupport . SendRequest ( c . ctx_ , c . s . client , req )
}
// Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.restore" call.
// Exactly one of *CryptoKeyVersion or error will be non-nil. Any
// non-2xx status code is an error. Response headers are in either
// *CryptoKeyVersion.ServerResponse.Header or (if a response was
// returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was
// because http.StatusNotModified was returned.
func ( c * ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall ) Do ( opts ... googleapi . CallOption ) ( * CryptoKeyVersion , error ) {
gensupport . SetOptions ( c . urlParams_ , opts ... )
res , err := c . doRequest ( "json" )
if res != nil && res . StatusCode == http . StatusNotModified {
if res . Body != nil {
res . Body . Close ( )
}
return nil , & googleapi . Error {
Code : res . StatusCode ,
Header : res . Header ,
}
}
if err != nil {
return nil , err
}
defer googleapi . CloseBody ( res )
if err := googleapi . CheckResponse ( res ) ; err != nil {
return nil , err
}
ret := & CryptoKeyVersion {
ServerResponse : googleapi . ServerResponse {
Header : res . Header ,
HTTPStatusCode : res . StatusCode ,
} ,
}
target := & ret
2017-12-03 20:01:25 +00:00
if err := gensupport . DecodeResponse ( target , res ) ; err != nil {
2017-08-05 18:17:15 +00:00
return nil , err
}
return ret , nil
// {
// "description": "Restore a CryptoKeyVersion in the\nDESTROY_SCHEDULED,\nstate.\n\nUpon restoration of the CryptoKeyVersion, state\nwill be set to DISABLED,\nand destroy_time will be cleared.",
// "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/keyRings/{keyRingsId}/cryptoKeys/{cryptoKeysId}/cryptoKeyVersions/{cryptoKeyVersionsId}:restore",
// "httpMethod": "POST",
// "id": "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.restore",
// "parameterOrder": [
// "name"
// ],
// "parameters": {
// "name": {
// "description": "The resource name of the CryptoKeyVersion to restore.",
// "location": "path",
// "pattern": "^projects/[^/]+/locations/[^/]+/keyRings/[^/]+/cryptoKeys/[^/]+/cryptoKeyVersions/[^/]+$",
// "required": true,
// "type": "string"
// }
// },
// "path": "v1/{+name}:restore",
// "request": {
// "$ref": "RestoreCryptoKeyVersionRequest"
// },
// "response": {
// "$ref": "CryptoKeyVersion"
// },
// "scopes": [
// "https://www.googleapis.com/auth/cloud-platform"
// ]
// }
}