// Copyright 2024 Google LLC. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. // Code generated file. DO NOT EDIT. // Package dns provides access to the Cloud DNS API. // // For product documentation, see: https://cloud.google.com/dns/docs // // # Library status // // These client libraries are officially supported by Google. However, this // library is considered complete and is in maintenance mode. This means // that we will address critical bugs and security issues but will not add // any new features. // // When possible, we recommend using our newer // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) // that are still actively being worked and iterated on. // // # Creating a client // // Usage example: // // import "google.golang.org/api/dns/v1beta2" // ... // ctx := context.Background() // dnsService, err := dns.NewService(ctx) // // In this example, Google Application Default Credentials are used for // authentication. For information on how to create and obtain Application // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. // // # Other authentication options // // By default, all available scopes (see "Constants") are used to authenticate. // To restrict scopes, use [google.golang.org/api/option.WithScopes]: // // dnsService, err := dns.NewService(ctx, option.WithScopes(dns.NdevClouddnsReadwriteScope)) // // To use an API key for authentication (note: some APIs do not support API // keys), use [google.golang.org/api/option.WithAPIKey]: // // dnsService, err := dns.NewService(ctx, option.WithAPIKey("AIza...")) // // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth // flow, use [google.golang.org/api/option.WithTokenSource]: // // config := &oauth2.Config{...} // // ... // token, err := config.Exchange(ctx, ...) // dnsService, err := dns.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) // // See [google.golang.org/api/option.ClientOption] for details on options. package dns // import "google.golang.org/api/dns/v1beta2" import ( "bytes" "context" "encoding/json" "errors" "fmt" "io" "net/http" "net/url" "strconv" "strings" googleapi "google.golang.org/api/googleapi" internal "google.golang.org/api/internal" gensupport "google.golang.org/api/internal/gensupport" option "google.golang.org/api/option" internaloption "google.golang.org/api/option/internaloption" htransport "google.golang.org/api/transport/http" ) // 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 _ = internaloption.WithDefaultEndpoint var _ = internal.Version const apiId = "dns:v1beta2" const apiName = "dns" const apiVersion = "v1beta2" const basePath = "https://dns.googleapis.com/" const basePathTemplate = "https://dns.UNIVERSE_DOMAIN/" const mtlsBasePath = "https://dns.mtls.googleapis.com/" // OAuth2 scopes used by this API. const ( // See, edit, configure, and delete your Google Cloud data and see the email // address for your Google Account. CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" // View your data across Google Cloud services and see the email address of // your Google Account CloudPlatformReadOnlyScope = "https://www.googleapis.com/auth/cloud-platform.read-only" // View your DNS records hosted by Google Cloud DNS NdevClouddnsReadonlyScope = "https://www.googleapis.com/auth/ndev.clouddns.readonly" // View and manage your DNS records hosted by Google Cloud DNS NdevClouddnsReadwriteScope = "https://www.googleapis.com/auth/ndev.clouddns.readwrite" ) // NewService creates a new Service. func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { scopesOption := internaloption.WithDefaultScopes( "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/cloud-platform.read-only", "https://www.googleapis.com/auth/ndev.clouddns.readonly", "https://www.googleapis.com/auth/ndev.clouddns.readwrite", ) // NOTE: prepend, so we don't override user-specified scopes. opts = append([]option.ClientOption{scopesOption}, opts...) opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate)) opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) opts = append(opts, internaloption.EnableNewAuthLibrary()) client, endpoint, err := htransport.NewClient(ctx, opts...) if err != nil { return nil, err } s, err := New(client) if err != nil { return nil, err } if endpoint != "" { s.BasePath = endpoint } return s, nil } // New creates a new Service. It uses the provided http.Client for requests. // // Deprecated: please use NewService instead. // To provide a custom HTTP client, use option.WithHTTPClient. // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. func New(client *http.Client) (*Service, error) { if client == nil { return nil, errors.New("client is nil") } s := &Service{client: client, BasePath: basePath} s.Changes = NewChangesService(s) s.DnsKeys = NewDnsKeysService(s) s.ManagedZoneOperations = NewManagedZoneOperationsService(s) s.ManagedZones = NewManagedZonesService(s) s.Policies = NewPoliciesService(s) s.Projects = NewProjectsService(s) s.ResourceRecordSets = NewResourceRecordSetsService(s) s.ResponsePolicies = NewResponsePoliciesService(s) s.ResponsePolicyRules = NewResponsePolicyRulesService(s) return s, nil } type Service struct { client *http.Client BasePath string // API endpoint base URL UserAgent string // optional additional User-Agent fragment Changes *ChangesService DnsKeys *DnsKeysService ManagedZoneOperations *ManagedZoneOperationsService ManagedZones *ManagedZonesService Policies *PoliciesService Projects *ProjectsService ResourceRecordSets *ResourceRecordSetsService ResponsePolicies *ResponsePoliciesService ResponsePolicyRules *ResponsePolicyRulesService } func (s *Service) userAgent() string { if s.UserAgent == "" { return googleapi.UserAgent } return googleapi.UserAgent + " " + s.UserAgent } func NewChangesService(s *Service) *ChangesService { rs := &ChangesService{s: s} return rs } type ChangesService struct { s *Service } func NewDnsKeysService(s *Service) *DnsKeysService { rs := &DnsKeysService{s: s} return rs } type DnsKeysService struct { s *Service } func NewManagedZoneOperationsService(s *Service) *ManagedZoneOperationsService { rs := &ManagedZoneOperationsService{s: s} return rs } type ManagedZoneOperationsService struct { s *Service } func NewManagedZonesService(s *Service) *ManagedZonesService { rs := &ManagedZonesService{s: s} return rs } type ManagedZonesService struct { s *Service } func NewPoliciesService(s *Service) *PoliciesService { rs := &PoliciesService{s: s} return rs } type PoliciesService struct { s *Service } func NewProjectsService(s *Service) *ProjectsService { rs := &ProjectsService{s: s} return rs } type ProjectsService struct { s *Service } func NewResourceRecordSetsService(s *Service) *ResourceRecordSetsService { rs := &ResourceRecordSetsService{s: s} return rs } type ResourceRecordSetsService struct { s *Service } func NewResponsePoliciesService(s *Service) *ResponsePoliciesService { rs := &ResponsePoliciesService{s: s} return rs } type ResponsePoliciesService struct { s *Service } func NewResponsePolicyRulesService(s *Service) *ResponsePolicyRulesService { rs := &ResponsePolicyRulesService{s: s} return rs } type ResponsePolicyRulesService struct { s *Service } // Change: A Change represents a set of ResourceRecordSet additions and // deletions applied atomically to a ManagedZone. ResourceRecordSets within a // ManagedZone are modified by creating a new Change element in the Changes // collection. In turn the Changes collection also records the past // modifications to the ResourceRecordSets in a ManagedZone. The current state // of the ManagedZone is the sum effect of applying all Change elements in the // Changes collection in sequence. type Change struct { // Additions: Which ResourceRecordSets to add? Additions []*ResourceRecordSet `json:"additions,omitempty"` // Deletions: Which ResourceRecordSets to remove? Must match existing data // exactly. Deletions []*ResourceRecordSet `json:"deletions,omitempty"` // Id: Unique identifier for the resource; defined by the server (output only). Id string `json:"id,omitempty"` // IsServing: If the DNS queries for the zone will be served. IsServing bool `json:"isServing,omitempty"` Kind string `json:"kind,omitempty"` // StartTime: The time that this operation was started by the server (output // only). This is in RFC3339 text format. StartTime string `json:"startTime,omitempty"` // Status: Status of the operation (output only). A status of "done" means that // the request to update the authoritative servers has been sent, but the // servers might not be updated yet. // // Possible values: // "pending" // "done" Status string `json:"status,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Additions") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Additions") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Change) MarshalJSON() ([]byte, error) { type NoMethod Change return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ChangesListResponse: The response to a request to enumerate Changes to a // ResourceRecordSets collection. type ChangesListResponse struct { // Changes: The requested changes. Changes []*Change `json:"changes,omitempty"` Header *ResponseHeader `json:"header,omitempty"` // Kind: Type of resource. Kind string `json:"kind,omitempty"` // NextPageToken: The presence of this field indicates that there exist more // results following your last page of results in pagination order. To fetch // them, make another list request using this value as your pagination token. // This lets you retrieve the complete contents of even very large collections // one page at a time. However, if the contents of the collection change // between the first and last paginated list request, the set of all elements // returned are an inconsistent view of the collection. You cannot retrieve a // "snapshot" of collections larger than the maximum page size. 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. "Changes") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Changes") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ChangesListResponse) MarshalJSON() ([]byte, error) { type NoMethod ChangesListResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // DnsKey: A DNSSEC key pair. type DnsKey struct { // Algorithm: String mnemonic specifying the DNSSEC algorithm of this key. // Immutable after creation time. // // Possible values: // "rsasha1" // "rsasha256" // "rsasha512" // "ecdsap256sha256" // "ecdsap384sha384" Algorithm string `json:"algorithm,omitempty"` // CreationTime: The time that this resource was created in the control plane. // This is in RFC3339 text format. Output only. CreationTime string `json:"creationTime,omitempty"` // Description: A mutable string of at most 1024 characters associated with // this resource for the user's convenience. Has no effect on the resource's // function. Description string `json:"description,omitempty"` // Digests: Cryptographic hashes of the DNSKEY resource record associated with // this DnsKey. These digests are needed to construct a DS record that points // at this DNS key. Output only. Digests []*DnsKeyDigest `json:"digests,omitempty"` // Id: Unique identifier for the resource; defined by the server (output only). Id string `json:"id,omitempty"` // IsActive: Active keys are used to sign subsequent changes to the // ManagedZone. Inactive keys are still present as DNSKEY Resource Records for // the use of resolvers validating existing signatures. IsActive bool `json:"isActive,omitempty"` // KeyLength: Length of the key in bits. Specified at creation time, and then // immutable. KeyLength int64 `json:"keyLength,omitempty"` // KeyTag: The key tag is a non-cryptographic hash of the a DNSKEY resource // record associated with this DnsKey. The key tag can be used to identify a // DNSKEY more quickly (but it is not a unique identifier). In particular, the // key tag is used in a parent zone's DS record to point at the DNSKEY in this // child ManagedZone. The key tag is a number in the range [0, 65535] and the // algorithm to calculate it is specified in RFC4034 Appendix B. Output only. KeyTag int64 `json:"keyTag,omitempty"` Kind string `json:"kind,omitempty"` // PublicKey: Base64 encoded public half of this key. Output only. PublicKey string `json:"publicKey,omitempty"` // Type: One of "KEY_SIGNING" or "ZONE_SIGNING". Keys of type KEY_SIGNING have // the Secure Entry Point flag set and, when active, are used to sign only // resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag // is cleared, and this key is used to sign only resource record sets of other // types. Immutable after creation time. // // Possible values: // "keySigning" // "zoneSigning" Type string `json:"type,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Algorithm") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Algorithm") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *DnsKey) MarshalJSON() ([]byte, error) { type NoMethod DnsKey return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type DnsKeyDigest struct { // Digest: The base-16 encoded bytes of this digest. Suitable for use in a DS // resource record. Digest string `json:"digest,omitempty"` // Type: Specifies the algorithm used to calculate this digest. // // Possible values: // "sha1" // "sha256" // "sha384" Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Digest") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Digest") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *DnsKeyDigest) MarshalJSON() ([]byte, error) { type NoMethod DnsKeyDigest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // DnsKeySpec: Parameters for DnsKey key generation. Used for generating // initial keys for a new ManagedZone and as default when adding a new DnsKey. type DnsKeySpec struct { // Algorithm: String mnemonic specifying the DNSSEC algorithm of this key. // // Possible values: // "rsasha1" // "rsasha256" // "rsasha512" // "ecdsap256sha256" // "ecdsap384sha384" Algorithm string `json:"algorithm,omitempty"` // KeyLength: Length of the keys in bits. KeyLength int64 `json:"keyLength,omitempty"` // KeyType: Specifies whether this is a key signing key (KSK) or a zone signing // key (ZSK). Key signing keys have the Secure Entry Point flag set and, when // active, are only used to sign resource record sets of type DNSKEY. Zone // signing keys do not have the Secure Entry Point flag set and are used to // sign all other types of resource record sets. // // Possible values: // "keySigning" // "zoneSigning" KeyType string `json:"keyType,omitempty"` Kind string `json:"kind,omitempty"` // ForceSendFields is a list of field names (e.g. "Algorithm") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Algorithm") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *DnsKeySpec) MarshalJSON() ([]byte, error) { type NoMethod DnsKeySpec return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // DnsKeysListResponse: The response to a request to enumerate DnsKeys in a // ManagedZone. type DnsKeysListResponse struct { // DnsKeys: The requested resources. DnsKeys []*DnsKey `json:"dnsKeys,omitempty"` Header *ResponseHeader `json:"header,omitempty"` // Kind: Type of resource. Kind string `json:"kind,omitempty"` // NextPageToken: The presence of this field indicates that there exist more // results following your last page of results in pagination order. To fetch // them, make another list request using this value as your pagination token. // In this way you can retrieve the complete contents of even very large // collections one page at a time. However, if the contents of the collection // change between the first and last paginated list request, the set of all // elements returned are an inconsistent view of the collection. There is no // way to retrieve a "snapshot" of collections larger than the maximum page // size. 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. "DnsKeys") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "DnsKeys") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *DnsKeysListResponse) MarshalJSON() ([]byte, error) { type NoMethod DnsKeysListResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Expr: Represents a textual expression in the Common Expression Language // (CEL) syntax. CEL is a C-like expression language. The syntax and semantics // of CEL are documented at https://github.com/google/cel-spec. Example // (Comparison): title: "Summary size limit" description: "Determines if a // summary is less than 100 chars" expression: "document.summary.size() < 100" // Example (Equality): title: "Requestor is owner" description: "Determines if // requestor is the document owner" expression: "document.owner == // request.auth.claims.email" Example (Logic): title: "Public documents" // description: "Determine whether the document should be publicly visible" // expression: "document.type != 'private' && document.type != 'internal'" // Example (Data Manipulation): title: "Notification string" description: // "Create a notification string with a timestamp." expression: "'New message // received at ' + string(document.create_time)" The exact variables and // functions that may be referenced within an expression are determined by the // service that evaluates it. See the service documentation for additional // information. type Expr struct { // Description: 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. Expression string `json:"expression,omitempty"` // Location: 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: 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Expr) MarshalJSON() ([]byte, error) { type NoMethod Expr return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleIamV1AuditConfig: Specifies the audit configuration for a service. The // configuration determines which permission types are logged, and what // identities, if any, are exempted from logging. An AuditConfig must have one // or more AuditLogConfigs. If there are AuditConfigs for both `allServices` // and a specific service, the union of the two AuditConfigs is used for that // service: the log_types specified in each AuditConfig are enabled, and the // exempted_members in each AuditLogConfig are exempted. Example Policy with // multiple AuditConfigs: { "audit_configs": [ { "service": "allServices", // "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ // "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" }, { "log_type": // "ADMIN_READ" } ] }, { "service": "sampleservice.googleapis.com", // "audit_log_configs": [ { "log_type": "DATA_READ" }, { "log_type": // "DATA_WRITE", "exempted_members": [ "user:aliya@example.com" ] } ] } ] } For // sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ // logging. It also exempts `jose@example.com` from DATA_READ logging, and // `aliya@example.com` from DATA_WRITE logging. type GoogleIamV1AuditConfig struct { // AuditLogConfigs: The configuration for logging of each type of permission. AuditLogConfigs []*GoogleIamV1AuditLogConfig `json:"auditLogConfigs,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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleIamV1AuditConfig) MarshalJSON() ([]byte, error) { type NoMethod GoogleIamV1AuditConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleIamV1AuditLogConfig: Provides the configuration for logging a type of // permissions. Example: { "audit_log_configs": [ { "log_type": "DATA_READ", // "exempted_members": [ "user:jose@example.com" ] }, { "log_type": // "DATA_WRITE" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while // exempting jose@example.com from DATA_READ logging. type GoogleIamV1AuditLogConfig 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleIamV1AuditLogConfig) MarshalJSON() ([]byte, error) { type NoMethod GoogleIamV1AuditLogConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleIamV1Binding: Associates `members`, or principals, with a `role`. type GoogleIamV1Binding struct { // Condition: The condition that is associated with this binding. If the // condition evaluates to `true`, then this binding applies to the current // request. If the condition evaluates to `false`, then this binding does not // apply to the current request. However, a different role binding might grant // the same role to one or more of the principals in this binding. To learn // which resources support conditions in their IAM policies, see the IAM // documentation // (https://cloud.google.com/iam/help/conditions/resource-policies). Condition *Expr `json:"condition,omitempty"` // Members: Specifies the principals requesting access for a Google Cloud // 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. Does not include identities that come from external identity // providers (IdPs) through identity federation. * `user:{emailid}`: An email // address that represents a specific Google account. For example, // `alice@example.com` . * `serviceAccount:{emailid}`: An email address that // represents a Google service account. For example, // `my-other-app@appspot.gserviceaccount.com`. * // `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An // identifier for a Kubernetes service account // (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). // For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * // `group:{emailid}`: An email address that represents a Google group. For // example, `admins@example.com`. * `domain:{domain}`: The G Suite domain // (primary) that represents all the users of that domain. For example, // `google.com` or `example.com`. * // `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/sub // ject/{subject_attribute_value}`: A single identity in a workforce identity // pool. * // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ // group/{group_id}`: All workforce identities in a group. * // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ // attribute.{attribute_name}/{attribute_value}`: All workforce identities with // a specific attribute value. * // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ // *`: All identities in a workforce identity pool. * // `principal://iam.googleapis.com/projects/{project_number}/locations/global/wo // rkloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single // identity in a workload identity pool. * // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global // /workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool // group. * // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global // /workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value} // `: All identities in a workload identity pool with a certain attribute. * // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global // /workloadIdentityPools/{pool_id}/*`: All identities in a workload identity // pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus // unique identifier) representing a user that has been recently deleted. For // example, `alice@example.com?uid=123456789012345678901`. If the user is // recovered, this value reverts to `user:{emailid}` and the recovered user // retains the role in the binding. * // `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus // unique identifier) representing a service account that has been recently // deleted. For example, // `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the // service account is undeleted, this value reverts to // `serviceAccount:{emailid}` and the undeleted service account retains the // role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email // address (plus unique identifier) representing a Google group that has been // recently deleted. For example, // `admins@example.com?uid=123456789012345678901`. If the group is recovered, // this value reverts to `group:{emailid}` and the recovered group retains the // role in the binding. * // `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool // _id}/subject/{subject_attribute_value}`: Deleted single identity in a // workforce identity pool. For example, // `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-po // ol-id/subject/my-subject-attribute-value`. Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. For // example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview // of the IAM roles and permissions, see the IAM documentation // (https://cloud.google.com/iam/docs/roles-overview). For a list of the // available pre-defined roles, see here // (https://cloud.google.com/iam/docs/understanding-roles). 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleIamV1Binding) MarshalJSON() ([]byte, error) { type NoMethod GoogleIamV1Binding return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleIamV1GetIamPolicyRequest: Request message for `GetIamPolicy` method. type GoogleIamV1GetIamPolicyRequest struct { // Options: OPTIONAL: A `GetPolicyOptions` object for specifying options to // `GetIamPolicy`. Options *GoogleIamV1GetPolicyOptions `json:"options,omitempty"` // ForceSendFields is a list of field names (e.g. "Options") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Options") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleIamV1GetIamPolicyRequest) MarshalJSON() ([]byte, error) { type NoMethod GoogleIamV1GetIamPolicyRequest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleIamV1GetPolicyOptions: Encapsulates settings provided to GetIamPolicy. type GoogleIamV1GetPolicyOptions struct { // RequestedPolicyVersion: Optional. The maximum policy version that will be // used to format the policy. Valid values are 0, 1, and 3. Requests specifying // an invalid value will be rejected. Requests for policies with any // conditional role bindings must specify version 3. Policies with no // conditional role bindings may specify any valid value or leave the field // unset. The policy in the response might use the policy version that you // specified, or it might use a lower policy version. For example, if you // specify version 3, but the policy has no conditional role bindings, the // response uses version 1. To learn which resources support conditions in // their IAM policies, see the IAM documentation // (https://cloud.google.com/iam/help/conditions/resource-policies). RequestedPolicyVersion int64 `json:"requestedPolicyVersion,omitempty"` // ForceSendFields is a list of field names (e.g. "RequestedPolicyVersion") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "RequestedPolicyVersion") to // include in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleIamV1GetPolicyOptions) MarshalJSON() ([]byte, error) { type NoMethod GoogleIamV1GetPolicyOptions return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleIamV1Policy: An Identity and Access Management (IAM) policy, which // specifies access controls for Google Cloud resources. A `Policy` is a // collection of `bindings`. A `binding` binds one or more `members`, or // principals, to a single `role`. Principals can be user accounts, service // accounts, Google groups, and domains (such as G Suite). A `role` is a named // list of permissions; each `role` can be an IAM predefined role or a // user-created custom role. For some types of Google Cloud resources, a // `binding` can also specify a `condition`, which is a logical expression that // allows access to a resource only if the expression evaluates to `true`. A // condition can add constraints based on attributes of the request, the // resource, or both. To learn which resources support conditions in their IAM // policies, see the IAM documentation // (https://cloud.google.com/iam/help/conditions/resource-policies). **JSON // example:** ``` { "bindings": [ { "role": // "roles/resourcemanager.organizationAdmin", "members": [ // "user:mike@example.com", "group:admins@example.com", "domain:google.com", // "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": // "roles/resourcemanager.organizationViewer", "members": [ // "user:eve@example.com" ], "condition": { "title": "expirable access", // "description": "Does not grant access after Sep 2020", "expression": // "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": // "BwWWja0YfJA=", "version": 3 } ``` **YAML example:** ``` bindings: - // members: - user:mike@example.com - group:admins@example.com - // domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com // role: roles/resourcemanager.organizationAdmin - members: - // user:eve@example.com role: roles/resourcemanager.organizationViewer // condition: title: expirable access description: Does not grant access after // Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') // etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, // see the IAM documentation (https://cloud.google.com/iam/docs/). type GoogleIamV1Policy struct { // AuditConfigs: Specifies cloud audit logging configuration for this policy. AuditConfigs []*GoogleIamV1AuditConfig `json:"auditConfigs,omitempty"` // Bindings: Associates a list of `members`, or principals, with a `role`. // Optionally, may specify a `condition` that determines how and when the // `bindings` are applied. Each of the `bindings` must contain at least one // principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; // up to 250 of these principals can be Google groups. Each occurrence of a // principal counts towards these limits. For example, if the `bindings` grant // 50 different roles to `user:alice@example.com`, and not to any other // principal, then you can add another 1,450 principals to the `bindings` in // the `Policy`. Bindings []*GoogleIamV1Binding `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. // **Important:** If you use IAM Conditions, you must include the `etag` field // whenever you call `setIamPolicy`. If you omit this field, then IAM allows // you to overwrite a version `3` policy with a version `1` policy, and all of // the conditions in the version `3` policy are lost. Etag string `json:"etag,omitempty"` // Version: Specifies the format of the policy. Valid values are `0`, `1`, and // `3`. Requests that specify an invalid value are rejected. Any operation that // affects conditional role bindings must specify version `3`. This requirement // applies to the following operations: * Getting a policy that includes a // conditional role binding * Adding a conditional role binding to a policy * // Changing a conditional role binding in a policy * Removing any role binding, // with or without a condition, from a policy that includes conditions // **Important:** If you use IAM Conditions, you must include the `etag` field // whenever you call `setIamPolicy`. If you omit this field, then IAM allows // you to overwrite a version `3` policy with a version `1` policy, and all of // the conditions in the version `3` policy are lost. If a policy does not // include any conditions, operations on that policy may specify any valid // version or leave the field unset. To learn which resources support // conditions in their IAM policies, see the IAM documentation // (https://cloud.google.com/iam/help/conditions/resource-policies). 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleIamV1Policy) MarshalJSON() ([]byte, error) { type NoMethod GoogleIamV1Policy return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleIamV1SetIamPolicyRequest: Request message for `SetIamPolicy` method. type GoogleIamV1SetIamPolicyRequest 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 Google Cloud services (such as Projects) might reject // them. Policy *GoogleIamV1Policy `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" 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 or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleIamV1SetIamPolicyRequest) MarshalJSON() ([]byte, error) { type NoMethod GoogleIamV1SetIamPolicyRequest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleIamV1TestIamPermissionsRequest: Request message for // `TestIamPermissions` method. type GoogleIamV1TestIamPermissionsRequest 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleIamV1TestIamPermissionsRequest) MarshalJSON() ([]byte, error) { type NoMethod GoogleIamV1TestIamPermissionsRequest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleIamV1TestIamPermissionsResponse: Response message for // `TestIamPermissions` method. type GoogleIamV1TestIamPermissionsResponse 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleIamV1TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { type NoMethod GoogleIamV1TestIamPermissionsResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ManagedZone: A zone is a subtree of the DNS namespace under one // administrative responsibility. A ManagedZone is a resource that represents a // DNS zone hosted by the Cloud DNS service. type ManagedZone struct { CloudLoggingConfig *ManagedZoneCloudLoggingConfig `json:"cloudLoggingConfig,omitempty"` // CreationTime: The time that this resource was created on the server. This is // in RFC3339 text format. Output only. CreationTime string `json:"creationTime,omitempty"` // Description: A mutable string of at most 1024 characters associated with // this resource for the user's convenience. Has no effect on the managed // zone's function. Description string `json:"description,omitempty"` // DnsName: The DNS name of this managed zone, for instance "example.com.". DnsName string `json:"dnsName,omitempty"` // DnssecConfig: DNSSEC configuration. DnssecConfig *ManagedZoneDnsSecConfig `json:"dnssecConfig,omitempty"` // ForwardingConfig: The presence for this field indicates that outbound // forwarding is enabled for this zone. The value of this field contains the // set of destinations to forward to. ForwardingConfig *ManagedZoneForwardingConfig `json:"forwardingConfig,omitempty"` // Id: Unique identifier for the resource; defined by the server (output only) Id uint64 `json:"id,omitempty,string"` Kind string `json:"kind,omitempty"` // Labels: User labels. Labels map[string]string `json:"labels,omitempty"` // Name: User assigned name for this resource. Must be unique within the // project. The name must be 1-63 characters long, must begin with a letter, // end with a letter or digit, and only contain lowercase letters, digits or // dashes. Name string `json:"name,omitempty"` // NameServerSet: Optionally specifies the NameServerSet for this ManagedZone. // A NameServerSet is a set of DNS name servers that all host the same // ManagedZones. Most users leave this field unset. If you need to use this // field, contact your account team. NameServerSet string `json:"nameServerSet,omitempty"` // NameServers: Delegate your managed_zone to these virtual name servers; // defined by the server (output only) NameServers []string `json:"nameServers,omitempty"` // PeeringConfig: The presence of this field indicates that DNS Peering is // enabled for this zone. The value of this field contains the network to peer // with. PeeringConfig *ManagedZonePeeringConfig `json:"peeringConfig,omitempty"` // PrivateVisibilityConfig: For privately visible zones, the set of Virtual // Private Cloud resources that the zone is visible from. PrivateVisibilityConfig *ManagedZonePrivateVisibilityConfig `json:"privateVisibilityConfig,omitempty"` // ReverseLookupConfig: The presence of this field indicates that this is a // managed reverse lookup zone and Cloud DNS resolves reverse lookup queries // using automatically configured records for VPC resources. This only applies // to networks listed under private_visibility_config. ReverseLookupConfig *ManagedZoneReverseLookupConfig `json:"reverseLookupConfig,omitempty"` // ServiceDirectoryConfig: This field links to the associated service directory // namespace. Do not set this field for public zones or forwarding zones. ServiceDirectoryConfig *ManagedZoneServiceDirectoryConfig `json:"serviceDirectoryConfig,omitempty"` // Visibility: The zone's visibility: public zones are exposed to the Internet, // while private zones are visible only to Virtual Private Cloud resources. // // Possible values: // "public" // "private" Visibility string `json:"visibility,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "CloudLoggingConfig") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "CloudLoggingConfig") to include // in API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZone) MarshalJSON() ([]byte, error) { type NoMethod ManagedZone return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ManagedZoneCloudLoggingConfig: Cloud Logging configurations for publicly // visible zones. type ManagedZoneCloudLoggingConfig struct { // EnableLogging: If set, enable query logging for this ManagedZone. False by // default, making logging opt-in. EnableLogging bool `json:"enableLogging,omitempty"` Kind string `json:"kind,omitempty"` // ForceSendFields is a list of field names (e.g. "EnableLogging") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "EnableLogging") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZoneCloudLoggingConfig) MarshalJSON() ([]byte, error) { type NoMethod ManagedZoneCloudLoggingConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ManagedZoneDnsSecConfig struct { // DefaultKeySpecs: Specifies parameters for generating initial DnsKeys for // this ManagedZone. Can only be changed while the state is OFF. DefaultKeySpecs []*DnsKeySpec `json:"defaultKeySpecs,omitempty"` Kind string `json:"kind,omitempty"` // NonExistence: Specifies the mechanism for authenticated denial-of-existence // responses. Can only be changed while the state is OFF. // // Possible values: // "nsec" // "nsec3" NonExistence string `json:"nonExistence,omitempty"` // State: Specifies whether DNSSEC is enabled, and what mode it is in. // // Possible values: // "off" - DNSSEC is disabled; the zone is not signed. // "on" - DNSSEC is enabled; the zone is signed and fully managed. // "transfer" - DNSSEC is enabled, but in a "transfer" mode. State string `json:"state,omitempty"` // ForceSendFields is a list of field names (e.g. "DefaultKeySpecs") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "DefaultKeySpecs") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZoneDnsSecConfig) MarshalJSON() ([]byte, error) { type NoMethod ManagedZoneDnsSecConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ManagedZoneForwardingConfig struct { Kind string `json:"kind,omitempty"` // TargetNameServers: List of target name servers to forward to. Cloud DNS // selects the best available name server if more than one target is given. TargetNameServers []*ManagedZoneForwardingConfigNameServerTarget `json:"targetNameServers,omitempty"` // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Kind") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZoneForwardingConfig) MarshalJSON() ([]byte, error) { type NoMethod ManagedZoneForwardingConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ManagedZoneForwardingConfigNameServerTarget struct { // ForwardingPath: Forwarding path for this NameServerTarget. If unset or set // to DEFAULT, Cloud DNS makes forwarding decisions based on IP address ranges; // that is, RFC1918 addresses go to the VPC network, non-RFC1918 addresses go // to the internet. When set to PRIVATE, Cloud DNS always sends queries through // the VPC network for this target. // // Possible values: // "default" - Cloud DNS makes forwarding decisions based on address ranges; // that is, RFC1918 addresses forward to the target through the VPC and // non-RFC1918 addresses forward to the target through the internet // "private" - Cloud DNS always forwards to this target through the VPC. ForwardingPath string `json:"forwardingPath,omitempty"` // Ipv4Address: IPv4 address of a target name server. Ipv4Address string `json:"ipv4Address,omitempty"` // Ipv6Address: IPv6 address of a target name server. Does not accept both // fields (ipv4 & ipv6) being populated. Public preview as of November 2022. Ipv6Address string `json:"ipv6Address,omitempty"` Kind string `json:"kind,omitempty"` // ForceSendFields is a list of field names (e.g. "ForwardingPath") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ForwardingPath") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZoneForwardingConfigNameServerTarget) MarshalJSON() ([]byte, error) { type NoMethod ManagedZoneForwardingConfigNameServerTarget return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ManagedZoneOperationsListResponse struct { Header *ResponseHeader `json:"header,omitempty"` // Kind: Type of resource. Kind string `json:"kind,omitempty"` // NextPageToken: The presence of this field indicates that there exist more // results following your last page of results in pagination order. To fetch // them, make another list request using this value as your page token. This // lets you retrieve the complete contents of even very large collections one // page at a time. However, if the contents of the collection change between // the first and last paginated list request, the set of all elements returned // are an inconsistent view of the collection. You cannot retrieve a consistent // snapshot of a collection larger than the maximum page size. NextPageToken string `json:"nextPageToken,omitempty"` // Operations: The operation resources. Operations []*Operation `json:"operations,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Header") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZoneOperationsListResponse) MarshalJSON() ([]byte, error) { type NoMethod ManagedZoneOperationsListResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ManagedZonePeeringConfig struct { Kind string `json:"kind,omitempty"` // TargetNetwork: The network with which to peer. TargetNetwork *ManagedZonePeeringConfigTargetNetwork `json:"targetNetwork,omitempty"` // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Kind") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZonePeeringConfig) MarshalJSON() ([]byte, error) { type NoMethod ManagedZonePeeringConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ManagedZonePeeringConfigTargetNetwork struct { // DeactivateTime: The time at which the zone was deactivated, in RFC 3339 // date-time format. An empty string indicates that the peering connection is // active. The producer network can deactivate a zone. The zone is // automatically deactivated if the producer network that the zone targeted is // deleted. Output only. DeactivateTime string `json:"deactivateTime,omitempty"` Kind string `json:"kind,omitempty"` // NetworkUrl: The fully qualified URL of the VPC network to forward queries // to. This should be formatted like // https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network} NetworkUrl string `json:"networkUrl,omitempty"` // ForceSendFields is a list of field names (e.g. "DeactivateTime") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "DeactivateTime") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZonePeeringConfigTargetNetwork) MarshalJSON() ([]byte, error) { type NoMethod ManagedZonePeeringConfigTargetNetwork return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ManagedZonePrivateVisibilityConfig struct { // GkeClusters: The list of Google Kubernetes Engine clusters that can see this // zone. GkeClusters []*ManagedZonePrivateVisibilityConfigGKECluster `json:"gkeClusters,omitempty"` Kind string `json:"kind,omitempty"` // Networks: The list of VPC networks that can see this zone. Networks []*ManagedZonePrivateVisibilityConfigNetwork `json:"networks,omitempty"` // ForceSendFields is a list of field names (e.g. "GkeClusters") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "GkeClusters") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZonePrivateVisibilityConfig) MarshalJSON() ([]byte, error) { type NoMethod ManagedZonePrivateVisibilityConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ManagedZonePrivateVisibilityConfigGKECluster struct { // GkeClusterName: The resource name of the cluster to bind this ManagedZone // to. This should be specified in the format like: // projects/*/locations/*/clusters/*. This is referenced from GKE // projects.locations.clusters.get API: // https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters/get GkeClusterName string `json:"gkeClusterName,omitempty"` Kind string `json:"kind,omitempty"` // ForceSendFields is a list of field names (e.g. "GkeClusterName") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "GkeClusterName") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZonePrivateVisibilityConfigGKECluster) MarshalJSON() ([]byte, error) { type NoMethod ManagedZonePrivateVisibilityConfigGKECluster return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ManagedZonePrivateVisibilityConfigNetwork struct { Kind string `json:"kind,omitempty"` // NetworkUrl: The fully qualified URL of the VPC network to bind to. Format // this URL like // https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network} NetworkUrl string `json:"networkUrl,omitempty"` // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Kind") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZonePrivateVisibilityConfigNetwork) MarshalJSON() ([]byte, error) { type NoMethod ManagedZonePrivateVisibilityConfigNetwork return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ManagedZoneReverseLookupConfig struct { Kind string `json:"kind,omitempty"` // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Kind") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZoneReverseLookupConfig) MarshalJSON() ([]byte, error) { type NoMethod ManagedZoneReverseLookupConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ManagedZoneServiceDirectoryConfig: Contains information about Service // Directory-backed zones. type ManagedZoneServiceDirectoryConfig struct { Kind string `json:"kind,omitempty"` // Namespace: Contains information about the namespace associated with the // zone. Namespace *ManagedZoneServiceDirectoryConfigNamespace `json:"namespace,omitempty"` // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Kind") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZoneServiceDirectoryConfig) MarshalJSON() ([]byte, error) { type NoMethod ManagedZoneServiceDirectoryConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ManagedZoneServiceDirectoryConfigNamespace struct { // DeletionTime: The time that the namespace backing this zone was deleted; an // empty string if it still exists. This is in RFC3339 text format. Output // only. DeletionTime string `json:"deletionTime,omitempty"` Kind string `json:"kind,omitempty"` // NamespaceUrl: The fully qualified URL of the namespace associated with the // zone. Format must be // https://servicedirectory.googleapis.com/v1/projects/{project}/locations/{location}/namespaces/{namespace} NamespaceUrl string `json:"namespaceUrl,omitempty"` // ForceSendFields is a list of field names (e.g. "DeletionTime") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "DeletionTime") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZoneServiceDirectoryConfigNamespace) MarshalJSON() ([]byte, error) { type NoMethod ManagedZoneServiceDirectoryConfigNamespace return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ManagedZonesListResponse struct { Header *ResponseHeader `json:"header,omitempty"` // Kind: Type of resource. Kind string `json:"kind,omitempty"` // ManagedZones: The managed zone resources. ManagedZones []*ManagedZone `json:"managedZones,omitempty"` // NextPageToken: The presence of this field indicates that there exist more // results following your last page of results in pagination order. To fetch // them, make another list request using this value as your page token. This // lets you the complete contents of even very large collections one page at a // time. However, if the contents of the collection change between the first // and last paginated list request, the set of all elements returned are an // inconsistent view of the collection. You cannot retrieve a consistent // snapshot of a collection larger than the maximum page size. 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. "Header") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ManagedZonesListResponse) MarshalJSON() ([]byte, error) { type NoMethod ManagedZonesListResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Operation: An operation represents a successful mutation performed on a // Cloud DNS resource. Operations provide: - An audit log of server resource // mutations. - A way to recover/retry API calls in the case where the response // is never received by the caller. Use the caller specified // client_operation_id. type Operation struct { // DnsKeyContext: Only populated if the operation targeted a DnsKey (output // only). DnsKeyContext *OperationDnsKeyContext `json:"dnsKeyContext,omitempty"` // Id: Unique identifier for the resource. This is the client_operation_id if // the client specified it when the mutation was initiated, otherwise, it is // generated by the server. The name must be 1-63 characters long and match the // regular expression [-a-z0-9]? (output only) Id string `json:"id,omitempty"` Kind string `json:"kind,omitempty"` // StartTime: The time that this operation was started by the server. This is // in RFC3339 text format (output only). StartTime string `json:"startTime,omitempty"` // Status: Status of the operation. Can be one of the following: "PENDING" or // "DONE" (output only). A status of "DONE" means that the request to update // the authoritative servers has been sent, but the servers might not be // updated yet. // // Possible values: // "pending" // "done" Status string `json:"status,omitempty"` // Type: Type of the operation. Operations include insert, update, and delete // (output only). Type string `json:"type,omitempty"` // User: User who requested the operation, for example: user@example.com. // cloud-dns-system for operations automatically done by the system. (output // only) User string `json:"user,omitempty"` // ZoneContext: Only populated if the operation targeted a ManagedZone (output // only). ZoneContext *OperationManagedZoneContext `json:"zoneContext,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "DnsKeyContext") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "DnsKeyContext") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Operation) MarshalJSON() ([]byte, error) { type NoMethod Operation return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type OperationDnsKeyContext struct { // NewValue: The post-operation DnsKey resource. NewValue *DnsKey `json:"newValue,omitempty"` // OldValue: The pre-operation DnsKey resource. OldValue *DnsKey `json:"oldValue,omitempty"` // ForceSendFields is a list of field names (e.g. "NewValue") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "NewValue") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *OperationDnsKeyContext) MarshalJSON() ([]byte, error) { type NoMethod OperationDnsKeyContext return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type OperationManagedZoneContext struct { // NewValue: The post-operation ManagedZone resource. NewValue *ManagedZone `json:"newValue,omitempty"` // OldValue: The pre-operation ManagedZone resource. OldValue *ManagedZone `json:"oldValue,omitempty"` // ForceSendFields is a list of field names (e.g. "NewValue") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "NewValue") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *OperationManagedZoneContext) MarshalJSON() ([]byte, error) { type NoMethod OperationManagedZoneContext return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type PoliciesListResponse struct { Header *ResponseHeader `json:"header,omitempty"` // Kind: Type of resource. Kind string `json:"kind,omitempty"` // NextPageToken: The presence of this field indicates that there exist more // results following your last page of results in pagination order. To fetch // them, make another list request using this value as your page token. This // lets you the complete contents of even very large collections one page at a // time. However, if the contents of the collection change between the first // and last paginated list request, the set of all elements returned are an // inconsistent view of the collection. You cannot retrieve a consistent // snapshot of a collection larger than the maximum page size. NextPageToken string `json:"nextPageToken,omitempty"` // Policies: The policy resources. Policies []*Policy `json:"policies,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Header") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *PoliciesListResponse) MarshalJSON() ([]byte, error) { type NoMethod PoliciesListResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type PoliciesPatchResponse struct { Header *ResponseHeader `json:"header,omitempty"` Policy *Policy `json:"policy,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Header") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *PoliciesPatchResponse) MarshalJSON() ([]byte, error) { type NoMethod PoliciesPatchResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type PoliciesUpdateResponse struct { Header *ResponseHeader `json:"header,omitempty"` Policy *Policy `json:"policy,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Header") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *PoliciesUpdateResponse) MarshalJSON() ([]byte, error) { type NoMethod PoliciesUpdateResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Policy: A policy is a collection of DNS rules applied to one or more Virtual // Private Cloud resources. type Policy struct { // AlternativeNameServerConfig: Sets an alternative name server for the // associated networks. When specified, all DNS queries are forwarded to a name // server that you choose. Names such as .internal are not available when an // alternative name server is specified. AlternativeNameServerConfig *PolicyAlternativeNameServerConfig `json:"alternativeNameServerConfig,omitempty"` // Description: A mutable string of at most 1024 characters associated with // this resource for the user's convenience. Has no effect on the policy's // function. Description string `json:"description,omitempty"` // EnableInboundForwarding: Allows networks bound to this policy to receive DNS // queries sent by VMs or applications over VPN connections. When enabled, a // virtual IP address is allocated from each of the subnetworks that are bound // to this policy. EnableInboundForwarding bool `json:"enableInboundForwarding,omitempty"` // EnableLogging: Controls whether logging is enabled for the networks bound to // this policy. Defaults to no logging if not set. EnableLogging bool `json:"enableLogging,omitempty"` // Id: Unique identifier for the resource; defined by the server (output only). Id uint64 `json:"id,omitempty,string"` Kind string `json:"kind,omitempty"` // Name: User-assigned name for this policy. Name string `json:"name,omitempty"` // Networks: List of network names specifying networks to which this policy is // applied. Networks []*PolicyNetwork `json:"networks,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. // "AlternativeNameServerConfig") to unconditionally include in API requests. // By default, fields with empty or default values are omitted from API // requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields // for more details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AlternativeNameServerConfig") to // include in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Policy) MarshalJSON() ([]byte, error) { type NoMethod Policy return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type PolicyAlternativeNameServerConfig struct { Kind string `json:"kind,omitempty"` // TargetNameServers: Sets an alternative name server for the associated // networks. When specified, all DNS queries are forwarded to a name server // that you choose. Names such as .internal are not available when an // alternative name server is specified. TargetNameServers []*PolicyAlternativeNameServerConfigTargetNameServer `json:"targetNameServers,omitempty"` // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Kind") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *PolicyAlternativeNameServerConfig) MarshalJSON() ([]byte, error) { type NoMethod PolicyAlternativeNameServerConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type PolicyAlternativeNameServerConfigTargetNameServer struct { // ForwardingPath: Forwarding path for this TargetNameServer. If unset or set // to DEFAULT, Cloud DNS makes forwarding decisions based on address ranges; // that is, RFC1918 addresses go to the VPC network, non-RFC1918 addresses go // to the internet. When set to PRIVATE, Cloud DNS always sends queries through // the VPC network for this target. // // Possible values: // "default" - Cloud DNS makes forwarding decision based on IP address // ranges; that is, RFC1918 addresses forward to the target through the VPC and // non-RFC1918 addresses forward to the target through the internet // "private" - Cloud DNS always forwards to this target through the VPC. ForwardingPath string `json:"forwardingPath,omitempty"` // Ipv4Address: IPv4 address to forward queries to. Ipv4Address string `json:"ipv4Address,omitempty"` // Ipv6Address: IPv6 address to forward to. Does not accept both fields (ipv4 & // ipv6) being populated. Public preview as of November 2022. Ipv6Address string `json:"ipv6Address,omitempty"` Kind string `json:"kind,omitempty"` // ForceSendFields is a list of field names (e.g. "ForwardingPath") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ForwardingPath") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *PolicyAlternativeNameServerConfigTargetNameServer) MarshalJSON() ([]byte, error) { type NoMethod PolicyAlternativeNameServerConfigTargetNameServer return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type PolicyNetwork struct { Kind string `json:"kind,omitempty"` // NetworkUrl: The fully qualified URL of the VPC network to bind to. This // should be formatted like // https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network} NetworkUrl string `json:"networkUrl,omitempty"` // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Kind") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *PolicyNetwork) MarshalJSON() ([]byte, error) { type NoMethod PolicyNetwork return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Project: A project resource. The project is a top level container for // resources including Cloud DNS ManagedZones. Projects can be created only in // the APIs console. Next tag: 7. type Project struct { // Id: User assigned unique identifier for the resource (output only). Id string `json:"id,omitempty"` Kind string `json:"kind,omitempty"` // Number: Unique numeric identifier for the resource; defined by the server // (output only). Number uint64 `json:"number,omitempty,string"` // Quota: Quotas assigned to this project (output only). Quota *Quota `json:"quota,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Id") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Id") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Project) MarshalJSON() ([]byte, error) { type NoMethod Project return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Quota: Limits associated with a Project. type Quota struct { // DnsKeysPerManagedZone: Maximum allowed number of DnsKeys per ManagedZone. DnsKeysPerManagedZone int64 `json:"dnsKeysPerManagedZone,omitempty"` // GkeClustersPerManagedZone: Maximum allowed number of GKE clusters to which a // privately scoped zone can be attached. GkeClustersPerManagedZone int64 `json:"gkeClustersPerManagedZone,omitempty"` // GkeClustersPerPolicy: Maximum allowed number of GKE clusters per policy. GkeClustersPerPolicy int64 `json:"gkeClustersPerPolicy,omitempty"` // GkeClustersPerResponsePolicy: Maximum allowed number of GKE clusters per // response policy. GkeClustersPerResponsePolicy int64 `json:"gkeClustersPerResponsePolicy,omitempty"` // ItemsPerRoutingPolicy: Maximum allowed number of items per routing policy. ItemsPerRoutingPolicy int64 `json:"itemsPerRoutingPolicy,omitempty"` Kind string `json:"kind,omitempty"` // ManagedZones: Maximum allowed number of managed zones in the project. ManagedZones int64 `json:"managedZones,omitempty"` // ManagedZonesPerGkeCluster: Maximum allowed number of managed zones which can // be attached to a GKE cluster. ManagedZonesPerGkeCluster int64 `json:"managedZonesPerGkeCluster,omitempty"` // ManagedZonesPerNetwork: Maximum allowed number of managed zones which can be // attached to a network. ManagedZonesPerNetwork int64 `json:"managedZonesPerNetwork,omitempty"` // NameserversPerDelegation: Maximum number of nameservers per delegation, // meant to prevent abuse NameserversPerDelegation int64 `json:"nameserversPerDelegation,omitempty"` // NetworksPerManagedZone: Maximum allowed number of networks to which a // privately scoped zone can be attached. NetworksPerManagedZone int64 `json:"networksPerManagedZone,omitempty"` // NetworksPerPolicy: Maximum allowed number of networks per policy. NetworksPerPolicy int64 `json:"networksPerPolicy,omitempty"` // NetworksPerResponsePolicy: Maximum allowed number of networks per response // policy. NetworksPerResponsePolicy int64 `json:"networksPerResponsePolicy,omitempty"` // PeeringZonesPerTargetNetwork: Maximum allowed number of consumer peering // zones per target network owned by this producer project PeeringZonesPerTargetNetwork int64 `json:"peeringZonesPerTargetNetwork,omitempty"` // Policies: Maximum allowed number of policies per project. Policies int64 `json:"policies,omitempty"` // ResourceRecordsPerRrset: Maximum allowed number of ResourceRecords per // ResourceRecordSet. ResourceRecordsPerRrset int64 `json:"resourceRecordsPerRrset,omitempty"` // ResponsePolicies: Maximum allowed number of response policies per project. ResponsePolicies int64 `json:"responsePolicies,omitempty"` // ResponsePolicyRulesPerResponsePolicy: Maximum allowed number of rules per // response policy. ResponsePolicyRulesPerResponsePolicy int64 `json:"responsePolicyRulesPerResponsePolicy,omitempty"` // RrsetAdditionsPerChange: Maximum allowed number of ResourceRecordSets to add // per ChangesCreateRequest. RrsetAdditionsPerChange int64 `json:"rrsetAdditionsPerChange,omitempty"` // RrsetDeletionsPerChange: Maximum allowed number of ResourceRecordSets to // delete per ChangesCreateRequest. RrsetDeletionsPerChange int64 `json:"rrsetDeletionsPerChange,omitempty"` // RrsetsPerManagedZone: Maximum allowed number of ResourceRecordSets per zone // in the project. RrsetsPerManagedZone int64 `json:"rrsetsPerManagedZone,omitempty"` // TargetNameServersPerManagedZone: Maximum allowed number of target name // servers per managed forwarding zone. TargetNameServersPerManagedZone int64 `json:"targetNameServersPerManagedZone,omitempty"` // TargetNameServersPerPolicy: Maximum allowed number of alternative target // name servers per policy. TargetNameServersPerPolicy int64 `json:"targetNameServersPerPolicy,omitempty"` // TotalRrdataSizePerChange: Maximum allowed size for total rrdata in one // ChangesCreateRequest in bytes. TotalRrdataSizePerChange int64 `json:"totalRrdataSizePerChange,omitempty"` // WhitelistedKeySpecs: DNSSEC algorithm and key length types that can be used // for DnsKeys. WhitelistedKeySpecs []*DnsKeySpec `json:"whitelistedKeySpecs,omitempty"` // ForceSendFields is a list of field names (e.g. "DnsKeysPerManagedZone") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "DnsKeysPerManagedZone") to // include in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Quota) MarshalJSON() ([]byte, error) { type NoMethod Quota return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RRSetRoutingPolicy: A RRSetRoutingPolicy represents ResourceRecordSet data // that is returned dynamically with the response varying based on configured // properties such as geolocation or by weighted random selection. type RRSetRoutingPolicy struct { Geo *RRSetRoutingPolicyGeoPolicy `json:"geo,omitempty"` GeoPolicy *RRSetRoutingPolicyGeoPolicy `json:"geoPolicy,omitempty"` Kind string `json:"kind,omitempty"` PrimaryBackup *RRSetRoutingPolicyPrimaryBackupPolicy `json:"primaryBackup,omitempty"` Wrr *RRSetRoutingPolicyWrrPolicy `json:"wrr,omitempty"` WrrPolicy *RRSetRoutingPolicyWrrPolicy `json:"wrrPolicy,omitempty"` // ForceSendFields is a list of field names (e.g. "Geo") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Geo") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RRSetRoutingPolicy) MarshalJSON() ([]byte, error) { type NoMethod RRSetRoutingPolicy return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RRSetRoutingPolicyGeoPolicy: Configures a RRSetRoutingPolicy that routes // based on the geo location of the querying user. type RRSetRoutingPolicyGeoPolicy struct { // EnableFencing: Without fencing, if health check fails for all configured // items in the current geo bucket, we failover to the next nearest geo bucket. // With fencing, if health checking is enabled, as long as some targets in the // current geo bucket are healthy, we return only the healthy targets. However, // if all targets are unhealthy, we don't failover to the next nearest bucket; // instead, we return all the items in the current bucket even when all targets // are unhealthy. EnableFencing bool `json:"enableFencing,omitempty"` // Items: The primary geo routing configuration. If there are multiple items // with the same location, an error is returned instead. Items []*RRSetRoutingPolicyGeoPolicyGeoPolicyItem `json:"items,omitempty"` Kind string `json:"kind,omitempty"` // ForceSendFields is a list of field names (e.g. "EnableFencing") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "EnableFencing") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RRSetRoutingPolicyGeoPolicy) MarshalJSON() ([]byte, error) { type NoMethod RRSetRoutingPolicyGeoPolicy return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RRSetRoutingPolicyGeoPolicyGeoPolicyItem: ResourceRecordSet data for one geo // location. type RRSetRoutingPolicyGeoPolicyGeoPolicyItem struct { // HealthCheckedTargets: For A and AAAA types only. Endpoints to return in the // query result only if they are healthy. These can be specified along with // rrdata within this item. HealthCheckedTargets *RRSetRoutingPolicyHealthCheckTargets `json:"healthCheckedTargets,omitempty"` Kind string `json:"kind,omitempty"` // Location: The geo-location granularity is a GCP region. This location string // should correspond to a GCP region. e.g. "us-east1", "southamerica-east1", // "asia-east1", etc. Location string `json:"location,omitempty"` Rrdatas []string `json:"rrdatas,omitempty"` // SignatureRrdatas: DNSSEC generated signatures for all the rrdata within this // item. If health checked targets are provided for DNSSEC enabled zones, // there's a restriction of 1 IP address per item. SignatureRrdatas []string `json:"signatureRrdatas,omitempty"` // ForceSendFields is a list of field names (e.g. "HealthCheckedTargets") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "HealthCheckedTargets") to include // in API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RRSetRoutingPolicyGeoPolicyGeoPolicyItem) MarshalJSON() ([]byte, error) { type NoMethod RRSetRoutingPolicyGeoPolicyGeoPolicyItem return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RRSetRoutingPolicyHealthCheckTargets: HealthCheckTargets describes endpoints // to health-check when responding to Routing Policy queries. Only the healthy // endpoints will be included in the response. Only one of // internal_load_balancer and external_endpoints should be set. type RRSetRoutingPolicyHealthCheckTargets struct { // InternalLoadBalancers: Configuration for internal load balancers to be // health checked. InternalLoadBalancers []*RRSetRoutingPolicyLoadBalancerTarget `json:"internalLoadBalancers,omitempty"` // ForceSendFields is a list of field names (e.g. "InternalLoadBalancers") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "InternalLoadBalancers") to // include in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RRSetRoutingPolicyHealthCheckTargets) MarshalJSON() ([]byte, error) { type NoMethod RRSetRoutingPolicyHealthCheckTargets return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RRSetRoutingPolicyLoadBalancerTarget: The configuration for an individual // load balancer to health check. type RRSetRoutingPolicyLoadBalancerTarget struct { // IpAddress: The frontend IP address of the load balancer to health check. IpAddress string `json:"ipAddress,omitempty"` // IpProtocol: The protocol of the load balancer to health check. // // Possible values: // "undefined" // "tcp" // "udp" IpProtocol string `json:"ipProtocol,omitempty"` Kind string `json:"kind,omitempty"` // LoadBalancerType: The type of load balancer specified by this target. This // value must match the configuration of the load balancer located at the // LoadBalancerTarget's IP address, port, and region. Use the following: - // *regionalL4ilb*: for a regional internal passthrough Network Load Balancer. // - *regionalL7ilb*: for a regional internal Application Load Balancer. - // *globalL7ilb*: for a global internal Application Load Balancer. // // Possible values: // "none" // "globalL7ilb" // "regionalL4ilb" // "regionalL7ilb" LoadBalancerType string `json:"loadBalancerType,omitempty"` // NetworkUrl: The fully qualified URL of the network that the load balancer is // attached to. This should be formatted like // https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network} // . NetworkUrl string `json:"networkUrl,omitempty"` // Port: The configured port of the load balancer. Port string `json:"port,omitempty"` // Project: The project ID in which the load balancer is located. Project string `json:"project,omitempty"` // Region: The region in which the load balancer is located. Region string `json:"region,omitempty"` // ForceSendFields is a list of field names (e.g. "IpAddress") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "IpAddress") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RRSetRoutingPolicyLoadBalancerTarget) MarshalJSON() ([]byte, error) { type NoMethod RRSetRoutingPolicyLoadBalancerTarget return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RRSetRoutingPolicyPrimaryBackupPolicy: Configures a RRSetRoutingPolicy such // that all queries are responded with the primary_targets if they are healthy. // And if all of them are unhealthy, then we fallback to a geo localized // policy. type RRSetRoutingPolicyPrimaryBackupPolicy struct { // BackupGeoTargets: Backup targets provide a regional failover policy for the // otherwise global primary targets. If serving state is set to BACKUP, this // policy essentially becomes a geo routing policy. BackupGeoTargets *RRSetRoutingPolicyGeoPolicy `json:"backupGeoTargets,omitempty"` Kind string `json:"kind,omitempty"` // PrimaryTargets: Endpoints that are health checked before making the routing // decision. Unhealthy endpoints are omitted from the results. If all endpoints // are unhealthy, we serve a response based on the backup_geo_targets. PrimaryTargets *RRSetRoutingPolicyHealthCheckTargets `json:"primaryTargets,omitempty"` // TrickleTraffic: When serving state is PRIMARY, this field provides the // option of sending a small percentage of the traffic to the backup targets. TrickleTraffic float64 `json:"trickleTraffic,omitempty"` // ForceSendFields is a list of field names (e.g. "BackupGeoTargets") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "BackupGeoTargets") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RRSetRoutingPolicyPrimaryBackupPolicy) MarshalJSON() ([]byte, error) { type NoMethod RRSetRoutingPolicyPrimaryBackupPolicy return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } func (s *RRSetRoutingPolicyPrimaryBackupPolicy) UnmarshalJSON(data []byte) error { type NoMethod RRSetRoutingPolicyPrimaryBackupPolicy var s1 struct { TrickleTraffic gensupport.JSONFloat64 `json:"trickleTraffic"` *NoMethod } s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } s.TrickleTraffic = float64(s1.TrickleTraffic) return nil } // RRSetRoutingPolicyWrrPolicy: Configures a RRSetRoutingPolicy that routes in // a weighted round robin fashion. type RRSetRoutingPolicyWrrPolicy struct { Items []*RRSetRoutingPolicyWrrPolicyWrrPolicyItem `json:"items,omitempty"` Kind string `json:"kind,omitempty"` // ForceSendFields is a list of field names (e.g. "Items") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Items") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RRSetRoutingPolicyWrrPolicy) MarshalJSON() ([]byte, error) { type NoMethod RRSetRoutingPolicyWrrPolicy return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RRSetRoutingPolicyWrrPolicyWrrPolicyItem: A routing block which contains the // routing information for one WRR item. type RRSetRoutingPolicyWrrPolicyWrrPolicyItem struct { // HealthCheckedTargets: Endpoints that are health checked before making the // routing decision. The unhealthy endpoints are omitted from the result. If // all endpoints within a bucket are unhealthy, we choose a different bucket // (sampled with respect to its weight) for responding. If DNSSEC is enabled // for this zone, only one of rrdata or health_checked_targets can be set. HealthCheckedTargets *RRSetRoutingPolicyHealthCheckTargets `json:"healthCheckedTargets,omitempty"` Kind string `json:"kind,omitempty"` Rrdatas []string `json:"rrdatas,omitempty"` // SignatureRrdatas: DNSSEC generated signatures for all the rrdata within this // item. Note that if health checked targets are provided for DNSSEC enabled // zones, there's a restriction of 1 IP address per item. SignatureRrdatas []string `json:"signatureRrdatas,omitempty"` // Weight: The weight corresponding to this WrrPolicyItem object. When multiple // WrrPolicyItem objects are configured, the probability of returning an // WrrPolicyItem object's data is proportional to its weight relative to the // sum of weights configured for all items. This weight must be non-negative. Weight float64 `json:"weight,omitempty"` // ForceSendFields is a list of field names (e.g. "HealthCheckedTargets") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "HealthCheckedTargets") to include // in API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RRSetRoutingPolicyWrrPolicyWrrPolicyItem) MarshalJSON() ([]byte, error) { type NoMethod RRSetRoutingPolicyWrrPolicyWrrPolicyItem return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } func (s *RRSetRoutingPolicyWrrPolicyWrrPolicyItem) UnmarshalJSON(data []byte) error { type NoMethod RRSetRoutingPolicyWrrPolicyWrrPolicyItem var s1 struct { Weight gensupport.JSONFloat64 `json:"weight"` *NoMethod } s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } s.Weight = float64(s1.Weight) return nil } // ResourceRecordSet: A unit of data that is returned by the DNS servers. type ResourceRecordSet struct { Kind string `json:"kind,omitempty"` // Name: For example, www.example.com. Name string `json:"name,omitempty"` // RoutingPolicy: Configures dynamic query responses based on either the geo // location of the querying user or a weighted round robin based routing // policy. A valid ResourceRecordSet contains only rrdata (for static // resolution) or a routing_policy (for dynamic resolution). RoutingPolicy *RRSetRoutingPolicy `json:"routingPolicy,omitempty"` // Rrdatas: As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1) -- // see examples. Rrdatas []string `json:"rrdatas,omitempty"` // SignatureRrdatas: As defined in RFC 4034 (section 3.2). SignatureRrdatas []string `json:"signatureRrdatas,omitempty"` // Ttl: Number of seconds that this ResourceRecordSet can be cached by // resolvers. Ttl int64 `json:"ttl,omitempty"` // Type: The identifier of a supported record type. See the list of Supported // DNS record types. Type string `json:"type,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Kind") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResourceRecordSet) MarshalJSON() ([]byte, error) { type NoMethod ResourceRecordSet return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ResourceRecordSetsListResponse struct { Header *ResponseHeader `json:"header,omitempty"` // Kind: Type of resource. Kind string `json:"kind,omitempty"` // NextPageToken: The presence of this field indicates that there exist more // results following your last page of results in pagination order. To fetch // them, make another list request using this value as your pagination token. // This lets you retrieve the complete contents of even larger collections, one // page at a time. However, if the collection changes between paginated list // requests, the set of elements returned is an inconsistent view of the // collection. You cannot retrieve a consistent snapshot of a collection larger // than the maximum page size. NextPageToken string `json:"nextPageToken,omitempty"` // Rrsets: The resource record set resources. Rrsets []*ResourceRecordSet `json:"rrsets,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Header") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResourceRecordSetsListResponse) MarshalJSON() ([]byte, error) { type NoMethod ResourceRecordSetsListResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ResponseHeader: Elements common to every response. type ResponseHeader struct { // OperationId: For mutating operation requests that completed successfully. // This is the client_operation_id if the client specified it, otherwise it is // generated by the server (output only). OperationId string `json:"operationId,omitempty"` // ForceSendFields is a list of field names (e.g. "OperationId") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "OperationId") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResponseHeader) MarshalJSON() ([]byte, error) { type NoMethod ResponseHeader return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ResponsePoliciesListResponse struct { Header *ResponseHeader `json:"header,omitempty"` // NextPageToken: The presence of this field indicates that more results exist // following your last page of results in pagination order. To fetch them, make // another list request by using this value as your page token. This lets you // view the complete contents of even very large collections one page at a // time. However, if the contents of the collection change between the first // and last paginated list request, the set of all elements returned are an // inconsistent view of the collection. You cannot retrieve a consistent // snapshot of a collection larger than the maximum page size. NextPageToken string `json:"nextPageToken,omitempty"` // ResponsePolicies: The Response Policy resources. ResponsePolicies []*ResponsePolicy `json:"responsePolicies,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Header") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResponsePoliciesListResponse) MarshalJSON() ([]byte, error) { type NoMethod ResponsePoliciesListResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ResponsePoliciesPatchResponse struct { Header *ResponseHeader `json:"header,omitempty"` ResponsePolicy *ResponsePolicy `json:"responsePolicy,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Header") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResponsePoliciesPatchResponse) MarshalJSON() ([]byte, error) { type NoMethod ResponsePoliciesPatchResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ResponsePoliciesUpdateResponse struct { Header *ResponseHeader `json:"header,omitempty"` ResponsePolicy *ResponsePolicy `json:"responsePolicy,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Header") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResponsePoliciesUpdateResponse) MarshalJSON() ([]byte, error) { type NoMethod ResponsePoliciesUpdateResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ResponsePolicy: A Response Policy is a collection of selectors that apply to // queries made against one or more Virtual Private Cloud networks. type ResponsePolicy struct { // Description: User-provided description for this Response Policy. Description string `json:"description,omitempty"` // GkeClusters: The list of Google Kubernetes Engine clusters to which this // response policy is applied. GkeClusters []*ResponsePolicyGKECluster `json:"gkeClusters,omitempty"` // Id: Unique identifier for the resource; defined by the server (output only). Id int64 `json:"id,omitempty,string"` Kind string `json:"kind,omitempty"` // Labels: User labels. Labels map[string]string `json:"labels,omitempty"` // Networks: List of network names specifying networks to which this policy is // applied. Networks []*ResponsePolicyNetwork `json:"networks,omitempty"` // ResponsePolicyName: User assigned name for this Response Policy. ResponsePolicyName string `json:"responsePolicyName,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Description") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResponsePolicy) MarshalJSON() ([]byte, error) { type NoMethod ResponsePolicy return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ResponsePolicyGKECluster struct { // GkeClusterName: The resource name of the cluster to bind this response // policy to. This should be specified in the format like: // projects/*/locations/*/clusters/*. This is referenced from GKE // projects.locations.clusters.get API: // https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters/get GkeClusterName string `json:"gkeClusterName,omitempty"` Kind string `json:"kind,omitempty"` // ForceSendFields is a list of field names (e.g. "GkeClusterName") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "GkeClusterName") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResponsePolicyGKECluster) MarshalJSON() ([]byte, error) { type NoMethod ResponsePolicyGKECluster return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ResponsePolicyNetwork struct { Kind string `json:"kind,omitempty"` // NetworkUrl: The fully qualified URL of the VPC network to bind to. This // should be formatted like // https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network} NetworkUrl string `json:"networkUrl,omitempty"` // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Kind") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResponsePolicyNetwork) MarshalJSON() ([]byte, error) { type NoMethod ResponsePolicyNetwork return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ResponsePolicyRule: A Response Policy Rule is a selector that applies its // behavior to queries that match the selector. Selectors are DNS names, which // may be wildcards or exact matches. Each DNS query subject to a Response // Policy matches at most one ResponsePolicyRule, as identified by the dns_name // field with the longest matching suffix. type ResponsePolicyRule struct { // Behavior: Answer this query with a behavior rather than DNS data. // // Possible values: // "behaviorUnspecified" // "bypassResponsePolicy" - Skip a less-specific ResponsePolicyRule and // continue normal query logic. This can be used with a less-specific wildcard // selector to exempt a subset of the wildcard ResponsePolicyRule from the // ResponsePolicy behavior and query the public Internet instead. For instance, // if these rules exist: *.example.com -> LocalData 1.2.3.4 foo.example.com -> // Behavior 'bypassResponsePolicy' Then a query for 'foo.example.com' skips the // wildcard. This additionally functions to facilitate the allowlist feature. // RPZs can be applied to multiple levels in the (eventually org, folder, // project, network) hierarchy. If a rule is applied at a higher level of the // hierarchy, adding a passthru rule at a lower level will supersede that, and // a query from an affected vm to that domain will be exempt from the RPZ and // proceed to normal resolution behavior. Behavior string `json:"behavior,omitempty"` // DnsName: The DNS name (wildcard or exact) to apply this rule to. Must be // unique within the Response Policy Rule. DnsName string `json:"dnsName,omitempty"` Kind string `json:"kind,omitempty"` // LocalData: Answer this query directly with DNS data. These // ResourceRecordSets override any other DNS behavior for the matched name; in // particular they override private zones, the public internet, and GCP // internal DNS. No SOA nor NS types are allowed. LocalData *ResponsePolicyRuleLocalData `json:"localData,omitempty"` // RuleName: An identifier for this rule. Must be unique with the // ResponsePolicy. RuleName string `json:"ruleName,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Behavior") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Behavior") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResponsePolicyRule) MarshalJSON() ([]byte, error) { type NoMethod ResponsePolicyRule return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ResponsePolicyRuleLocalData struct { // LocalDatas: All resource record sets for this selector, one per resource // record type. The name must match the dns_name. LocalDatas []*ResourceRecordSet `json:"localDatas,omitempty"` // ForceSendFields is a list of field names (e.g. "LocalDatas") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "LocalDatas") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResponsePolicyRuleLocalData) MarshalJSON() ([]byte, error) { type NoMethod ResponsePolicyRuleLocalData return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ResponsePolicyRulesListResponse struct { Header *ResponseHeader `json:"header,omitempty"` // NextPageToken: The presence of this field indicates that there exist more // results following your last page of results in pagination order. To fetch // them, make another list request using this value as your page token. This // lets you the complete contents of even very large collections one page at a // time. However, if the contents of the collection change between the first // and last paginated list request, the set of all elements returned are an // inconsistent view of the collection. You cannot retrieve a consistent // snapshot of a collection larger than the maximum page size. NextPageToken string `json:"nextPageToken,omitempty"` // ResponsePolicyRules: The Response Policy Rule resources. ResponsePolicyRules []*ResponsePolicyRule `json:"responsePolicyRules,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Header") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResponsePolicyRulesListResponse) MarshalJSON() ([]byte, error) { type NoMethod ResponsePolicyRulesListResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ResponsePolicyRulesPatchResponse struct { Header *ResponseHeader `json:"header,omitempty"` ResponsePolicyRule *ResponsePolicyRule `json:"responsePolicyRule,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Header") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResponsePolicyRulesPatchResponse) MarshalJSON() ([]byte, error) { type NoMethod ResponsePolicyRulesPatchResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ResponsePolicyRulesUpdateResponse struct { Header *ResponseHeader `json:"header,omitempty"` ResponsePolicyRule *ResponsePolicyRule `json:"responsePolicyRule,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Header") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Header") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResponsePolicyRulesUpdateResponse) MarshalJSON() ([]byte, error) { type NoMethod ResponsePolicyRulesUpdateResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ChangesCreateCall struct { s *Service project string managedZone string change *Change urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Create: Atomically updates the ResourceRecordSet collection. // // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - project: Identifies the project addressed by this request. func (r *ChangesService) Create(project string, managedZone string, change *Change) *ChangesCreateCall { c := &ChangesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone c.change = change return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ChangesCreateCall) ClientOperationId(clientOperationId string) *ChangesCreateCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ChangesCreateCall) Fields(s ...googleapi.Field) *ChangesCreateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ChangesCreateCall) Context(ctx context.Context) *ChangesCreateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ChangesCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ChangesCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.change) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}/changes") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.changes.create" call. // Any non-2xx status code is an error. Response headers are in either // *Change.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 *ChangesCreateCall) Do(opts ...googleapi.CallOption) (*Change, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &Change{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ChangesGetCall struct { s *Service project string managedZone string changeId string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Fetches the representation of an existing Change. // // - changeId: The identifier of the requested change, from a previous // ResourceRecordSetsChangeResponse. // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - project: Identifies the project addressed by this request. func (r *ChangesService) Get(project string, managedZone string, changeId string) *ChangesGetCall { c := &ChangesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone c.changeId = changeId return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ChangesGetCall) ClientOperationId(clientOperationId string) *ChangesGetCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ChangesGetCall) Fields(s ...googleapi.Field) *ChangesGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ChangesGetCall) IfNoneMatch(entityTag string) *ChangesGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ChangesGetCall) Context(ctx context.Context) *ChangesGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ChangesGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ChangesGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}/changes/{changeId}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, "changeId": c.changeId, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.changes.get" call. // Any non-2xx status code is an error. Response headers are in either // *Change.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 *ChangesGetCall) Do(opts ...googleapi.CallOption) (*Change, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &Change{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ChangesListCall struct { s *Service project string managedZone string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Enumerates Changes to a ResourceRecordSet collection. // // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - project: Identifies the project addressed by this request. func (r *ChangesService) List(project string, managedZone string) *ChangesListCall { c := &ChangesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone return c } // MaxResults sets the optional parameter "maxResults": Maximum number of // results to be returned. If unspecified, the server decides how many results // to return. func (c *ChangesListCall) MaxResults(maxResults int64) *ChangesListCall { c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) return c } // PageToken sets the optional parameter "pageToken": A tag returned by a // previous list request that was truncated. Use this parameter to continue a // previous list request. func (c *ChangesListCall) PageToken(pageToken string) *ChangesListCall { c.urlParams_.Set("pageToken", pageToken) return c } // SortBy sets the optional parameter "sortBy": Sorting criterion. The only // supported value is change sequence. // // Possible values: // // "changeSequence" (default) func (c *ChangesListCall) SortBy(sortBy string) *ChangesListCall { c.urlParams_.Set("sortBy", sortBy) return c } // SortOrder sets the optional parameter "sortOrder": Sorting order direction: // 'ascending' or 'descending'. func (c *ChangesListCall) SortOrder(sortOrder string) *ChangesListCall { c.urlParams_.Set("sortOrder", sortOrder) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ChangesListCall) Fields(s ...googleapi.Field) *ChangesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ChangesListCall) IfNoneMatch(entityTag string) *ChangesListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ChangesListCall) Context(ctx context.Context) *ChangesListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ChangesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ChangesListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}/changes") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.changes.list" call. // Any non-2xx status code is an error. Response headers are in either // *ChangesListResponse.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 *ChangesListCall) Do(opts ...googleapi.CallOption) (*ChangesListResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ChangesListResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // 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 *ChangesListCall) Pages(ctx context.Context, f func(*ChangesListResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) 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) } } type DnsKeysGetCall struct { s *Service project string managedZone string dnsKeyId string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Fetches the representation of an existing DnsKey. // // - dnsKeyId: The identifier of the requested DnsKey. // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - project: Identifies the project addressed by this request. func (r *DnsKeysService) Get(project string, managedZone string, dnsKeyId string) *DnsKeysGetCall { c := &DnsKeysGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone c.dnsKeyId = dnsKeyId return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *DnsKeysGetCall) ClientOperationId(clientOperationId string) *DnsKeysGetCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // DigestType sets the optional parameter "digestType": An optional // comma-separated list of digest types to compute and display for key signing // keys. If omitted, the recommended digest type is computed and displayed. func (c *DnsKeysGetCall) DigestType(digestType string) *DnsKeysGetCall { c.urlParams_.Set("digestType", digestType) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *DnsKeysGetCall) Fields(s ...googleapi.Field) *DnsKeysGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *DnsKeysGetCall) IfNoneMatch(entityTag string) *DnsKeysGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *DnsKeysGetCall) Context(ctx context.Context) *DnsKeysGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *DnsKeysGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *DnsKeysGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, "dnsKeyId": c.dnsKeyId, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.dnsKeys.get" call. // Any non-2xx status code is an error. Response headers are in either // *DnsKey.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 *DnsKeysGetCall) Do(opts ...googleapi.CallOption) (*DnsKey, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &DnsKey{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type DnsKeysListCall struct { s *Service project string managedZone string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Enumerates DnsKeys to a ResourceRecordSet collection. // // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - project: Identifies the project addressed by this request. func (r *DnsKeysService) List(project string, managedZone string) *DnsKeysListCall { c := &DnsKeysListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone return c } // DigestType sets the optional parameter "digestType": An optional // comma-separated list of digest types to compute and display for key signing // keys. If omitted, the recommended digest type is computed and displayed. func (c *DnsKeysListCall) DigestType(digestType string) *DnsKeysListCall { c.urlParams_.Set("digestType", digestType) return c } // MaxResults sets the optional parameter "maxResults": Maximum number of // results to be returned. If unspecified, the server decides how many results // to return. func (c *DnsKeysListCall) MaxResults(maxResults int64) *DnsKeysListCall { c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) return c } // PageToken sets the optional parameter "pageToken": A tag returned by a // previous list request that was truncated. Use this parameter to continue a // previous list request. func (c *DnsKeysListCall) PageToken(pageToken string) *DnsKeysListCall { 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 // details. func (c *DnsKeysListCall) Fields(s ...googleapi.Field) *DnsKeysListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *DnsKeysListCall) IfNoneMatch(entityTag string) *DnsKeysListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *DnsKeysListCall) Context(ctx context.Context) *DnsKeysListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *DnsKeysListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *DnsKeysListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}/dnsKeys") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.dnsKeys.list" call. // Any non-2xx status code is an error. Response headers are in either // *DnsKeysListResponse.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 *DnsKeysListCall) Do(opts ...googleapi.CallOption) (*DnsKeysListResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &DnsKeysListResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // 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 *DnsKeysListCall) Pages(ctx context.Context, f func(*DnsKeysListResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) 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) } } type ManagedZoneOperationsGetCall struct { s *Service project string managedZone string operation string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Fetches the representation of an existing Operation. // // - managedZone: Identifies the managed zone addressed by this request. // - operation: Identifies the operation addressed by this request (ID of the // operation). // - project: Identifies the project addressed by this request. func (r *ManagedZoneOperationsService) Get(project string, managedZone string, operation string) *ManagedZoneOperationsGetCall { c := &ManagedZoneOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone c.operation = operation return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ManagedZoneOperationsGetCall) ClientOperationId(clientOperationId string) *ManagedZoneOperationsGetCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ManagedZoneOperationsGetCall) Fields(s ...googleapi.Field) *ManagedZoneOperationsGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ManagedZoneOperationsGetCall) IfNoneMatch(entityTag string) *ManagedZoneOperationsGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ManagedZoneOperationsGetCall) Context(ctx context.Context) *ManagedZoneOperationsGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ManagedZoneOperationsGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ManagedZoneOperationsGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}/operations/{operation}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, "operation": c.operation, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.managedZoneOperations.get" call. // Any non-2xx status code is an error. Response headers are in either // *Operation.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 *ManagedZoneOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &Operation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ManagedZoneOperationsListCall struct { s *Service project string managedZone string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Enumerates Operations for the given ManagedZone. // // - managedZone: Identifies the managed zone addressed by this request. // - project: Identifies the project addressed by this request. func (r *ManagedZoneOperationsService) List(project string, managedZone string) *ManagedZoneOperationsListCall { c := &ManagedZoneOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone return c } // MaxResults sets the optional parameter "maxResults": Maximum number of // results to be returned. If unspecified, the server decides how many results // to return. func (c *ManagedZoneOperationsListCall) MaxResults(maxResults int64) *ManagedZoneOperationsListCall { c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) return c } // PageToken sets the optional parameter "pageToken": A tag returned by a // previous list request that was truncated. Use this parameter to continue a // previous list request. func (c *ManagedZoneOperationsListCall) PageToken(pageToken string) *ManagedZoneOperationsListCall { c.urlParams_.Set("pageToken", pageToken) return c } // SortBy sets the optional parameter "sortBy": Sorting criterion. The only // supported values are START_TIME and ID. // // Possible values: // // "startTime" (default) // "id" func (c *ManagedZoneOperationsListCall) SortBy(sortBy string) *ManagedZoneOperationsListCall { c.urlParams_.Set("sortBy", sortBy) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ManagedZoneOperationsListCall) Fields(s ...googleapi.Field) *ManagedZoneOperationsListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ManagedZoneOperationsListCall) IfNoneMatch(entityTag string) *ManagedZoneOperationsListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ManagedZoneOperationsListCall) Context(ctx context.Context) *ManagedZoneOperationsListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ManagedZoneOperationsListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ManagedZoneOperationsListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}/operations") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.managedZoneOperations.list" call. // Any non-2xx status code is an error. Response headers are in either // *ManagedZoneOperationsListResponse.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 *ManagedZoneOperationsListCall) Do(opts ...googleapi.CallOption) (*ManagedZoneOperationsListResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ManagedZoneOperationsListResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // 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 *ManagedZoneOperationsListCall) Pages(ctx context.Context, f func(*ManagedZoneOperationsListResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) 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) } } type ManagedZonesCreateCall struct { s *Service project string managedzone *ManagedZone urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Create: Creates a new ManagedZone. // // - project: Identifies the project addressed by this request. func (r *ManagedZonesService) Create(project string, managedzone *ManagedZone) *ManagedZonesCreateCall { c := &ManagedZonesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedzone = managedzone return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ManagedZonesCreateCall) ClientOperationId(clientOperationId string) *ManagedZonesCreateCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ManagedZonesCreateCall) Fields(s ...googleapi.Field) *ManagedZonesCreateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ManagedZonesCreateCall) Context(ctx context.Context) *ManagedZonesCreateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ManagedZonesCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ManagedZonesCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.managedzone) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.managedZones.create" call. // Any non-2xx status code is an error. Response headers are in either // *ManagedZone.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 *ManagedZonesCreateCall) Do(opts ...googleapi.CallOption) (*ManagedZone, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ManagedZone{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ManagedZonesDeleteCall struct { s *Service project string managedZone string urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Delete: Deletes a previously created ManagedZone. // // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - project: Identifies the project addressed by this request. func (r *ManagedZonesService) Delete(project string, managedZone string) *ManagedZonesDeleteCall { c := &ManagedZonesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ManagedZonesDeleteCall) ClientOperationId(clientOperationId string) *ManagedZonesDeleteCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ManagedZonesDeleteCall) Fields(s ...googleapi.Field) *ManagedZonesDeleteCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ManagedZonesDeleteCall) Context(ctx context.Context) *ManagedZonesDeleteCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ManagedZonesDeleteCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ManagedZonesDeleteCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("DELETE", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.managedZones.delete" call. func (c *ManagedZonesDeleteCall) Do(opts ...googleapi.CallOption) error { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if err != nil { return err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return gensupport.WrapError(err) } return nil } type ManagedZonesGetCall struct { s *Service project string managedZone string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Fetches the representation of an existing ManagedZone. // // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - project: Identifies the project addressed by this request. func (r *ManagedZonesService) Get(project string, managedZone string) *ManagedZonesGetCall { c := &ManagedZonesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ManagedZonesGetCall) ClientOperationId(clientOperationId string) *ManagedZonesGetCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ManagedZonesGetCall) Fields(s ...googleapi.Field) *ManagedZonesGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ManagedZonesGetCall) IfNoneMatch(entityTag string) *ManagedZonesGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ManagedZonesGetCall) Context(ctx context.Context) *ManagedZonesGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ManagedZonesGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ManagedZonesGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.managedZones.get" call. // Any non-2xx status code is an error. Response headers are in either // *ManagedZone.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 *ManagedZonesGetCall) Do(opts ...googleapi.CallOption) (*ManagedZone, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ManagedZone{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ManagedZonesGetIamPolicyCall struct { s *Service resource string googleiamv1getiampolicyrequest *GoogleIamV1GetIamPolicyRequest urlParams_ gensupport.URLParams 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. // // - resource: REQUIRED: The resource for which the policy is being requested. // See Resource names (https://cloud.google.com/apis/design/resource_names) // for the appropriate value for this field. func (r *ManagedZonesService) GetIamPolicy(resource string, googleiamv1getiampolicyrequest *GoogleIamV1GetIamPolicyRequest) *ManagedZonesGetIamPolicyCall { c := &ManagedZonesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.googleiamv1getiampolicyrequest = googleiamv1getiampolicyrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ManagedZonesGetIamPolicyCall) Fields(s ...googleapi.Field) *ManagedZonesGetIamPolicyCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ManagedZonesGetIamPolicyCall) Context(ctx context.Context) *ManagedZonesGetIamPolicyCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ManagedZonesGetIamPolicyCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ManagedZonesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1getiampolicyrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/{+resource}:getIamPolicy") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } 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 "dns.managedZones.getIamPolicy" call. // Any non-2xx status code is an error. Response headers are in either // *GoogleIamV1Policy.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 *ManagedZonesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &GoogleIamV1Policy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ManagedZonesListCall struct { s *Service project string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Enumerates ManagedZones that have been created but not yet deleted. // // - project: Identifies the project addressed by this request. func (r *ManagedZonesService) List(project string) *ManagedZonesListCall { c := &ManagedZonesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project return c } // DnsName sets the optional parameter "dnsName": Restricts the list to return // only zones with this domain name. func (c *ManagedZonesListCall) DnsName(dnsName string) *ManagedZonesListCall { c.urlParams_.Set("dnsName", dnsName) return c } // MaxResults sets the optional parameter "maxResults": Maximum number of // results to be returned. If unspecified, the server decides how many results // to return. func (c *ManagedZonesListCall) MaxResults(maxResults int64) *ManagedZonesListCall { c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) return c } // PageToken sets the optional parameter "pageToken": A tag returned by a // previous list request that was truncated. Use this parameter to continue a // previous list request. func (c *ManagedZonesListCall) PageToken(pageToken string) *ManagedZonesListCall { 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 // details. func (c *ManagedZonesListCall) Fields(s ...googleapi.Field) *ManagedZonesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ManagedZonesListCall) IfNoneMatch(entityTag string) *ManagedZonesListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ManagedZonesListCall) Context(ctx context.Context) *ManagedZonesListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ManagedZonesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ManagedZonesListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.managedZones.list" call. // Any non-2xx status code is an error. Response headers are in either // *ManagedZonesListResponse.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 *ManagedZonesListCall) Do(opts ...googleapi.CallOption) (*ManagedZonesListResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ManagedZonesListResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // 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 *ManagedZonesListCall) Pages(ctx context.Context, f func(*ManagedZonesListResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) 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) } } type ManagedZonesPatchCall struct { s *Service project string managedZone string managedzone *ManagedZone urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Patch: Applies a partial update to an existing ManagedZone. // // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - project: Identifies the project addressed by this request. func (r *ManagedZonesService) Patch(project string, managedZone string, managedzone *ManagedZone) *ManagedZonesPatchCall { c := &ManagedZonesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone c.managedzone = managedzone return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ManagedZonesPatchCall) ClientOperationId(clientOperationId string) *ManagedZonesPatchCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ManagedZonesPatchCall) Fields(s ...googleapi.Field) *ManagedZonesPatchCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ManagedZonesPatchCall) Context(ctx context.Context) *ManagedZonesPatchCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ManagedZonesPatchCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ManagedZonesPatchCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.managedzone) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("PATCH", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.managedZones.patch" call. // Any non-2xx status code is an error. Response headers are in either // *Operation.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 *ManagedZonesPatchCall) Do(opts ...googleapi.CallOption) (*Operation, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &Operation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ManagedZonesSetIamPolicyCall struct { s *Service resource string googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // SetIamPolicy: Sets the access control policy on the specified resource. // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, // and `PERMISSION_DENIED` errors. // // - resource: REQUIRED: The resource for which the policy is being specified. // See Resource names (https://cloud.google.com/apis/design/resource_names) // for the appropriate value for this field. func (r *ManagedZonesService) SetIamPolicy(resource string, googleiamv1setiampolicyrequest *GoogleIamV1SetIamPolicyRequest) *ManagedZonesSetIamPolicyCall { c := &ManagedZonesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.googleiamv1setiampolicyrequest = googleiamv1setiampolicyrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ManagedZonesSetIamPolicyCall) Fields(s ...googleapi.Field) *ManagedZonesSetIamPolicyCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ManagedZonesSetIamPolicyCall) Context(ctx context.Context) *ManagedZonesSetIamPolicyCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ManagedZonesSetIamPolicyCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ManagedZonesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1setiampolicyrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/{+resource}:setIamPolicy") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } 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 "dns.managedZones.setIamPolicy" call. // Any non-2xx status code is an error. Response headers are in either // *GoogleIamV1Policy.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 *ManagedZonesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1Policy, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &GoogleIamV1Policy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ManagedZonesTestIamPermissionsCall struct { s *Service resource string googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest 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 returns 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. // // - resource: REQUIRED: The resource for which the policy detail is being // requested. See Resource names // (https://cloud.google.com/apis/design/resource_names) for the appropriate // value for this field. func (r *ManagedZonesService) TestIamPermissions(resource string, googleiamv1testiampermissionsrequest *GoogleIamV1TestIamPermissionsRequest) *ManagedZonesTestIamPermissionsCall { c := &ManagedZonesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.googleiamv1testiampermissionsrequest = googleiamv1testiampermissionsrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ManagedZonesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ManagedZonesTestIamPermissionsCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ManagedZonesTestIamPermissionsCall) Context(ctx context.Context) *ManagedZonesTestIamPermissionsCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ManagedZonesTestIamPermissionsCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ManagedZonesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleiamv1testiampermissionsrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/{+resource}:testIamPermissions") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } 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 "dns.managedZones.testIamPermissions" call. // Any non-2xx status code is an error. Response headers are in either // *GoogleIamV1TestIamPermissionsResponse.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 *ManagedZonesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*GoogleIamV1TestIamPermissionsResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &GoogleIamV1TestIamPermissionsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ManagedZonesUpdateCall struct { s *Service project string managedZone string managedzone *ManagedZone urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Update: Updates an existing ManagedZone. // // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - project: Identifies the project addressed by this request. func (r *ManagedZonesService) Update(project string, managedZone string, managedzone *ManagedZone) *ManagedZonesUpdateCall { c := &ManagedZonesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone c.managedzone = managedzone return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ManagedZonesUpdateCall) ClientOperationId(clientOperationId string) *ManagedZonesUpdateCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ManagedZonesUpdateCall) Fields(s ...googleapi.Field) *ManagedZonesUpdateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ManagedZonesUpdateCall) Context(ctx context.Context) *ManagedZonesUpdateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ManagedZonesUpdateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ManagedZonesUpdateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.managedzone) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("PUT", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.managedZones.update" call. // Any non-2xx status code is an error. Response headers are in either // *Operation.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 *ManagedZonesUpdateCall) Do(opts ...googleapi.CallOption) (*Operation, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &Operation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type PoliciesCreateCall struct { s *Service project string policy *Policy urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Create: Creates a new Policy. // // - project: Identifies the project addressed by this request. func (r *PoliciesService) Create(project string, policy *Policy) *PoliciesCreateCall { c := &PoliciesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.policy = policy return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *PoliciesCreateCall) ClientOperationId(clientOperationId string) *PoliciesCreateCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *PoliciesCreateCall) Fields(s ...googleapi.Field) *PoliciesCreateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *PoliciesCreateCall) Context(ctx context.Context) *PoliciesCreateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *PoliciesCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *PoliciesCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.policy) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/policies") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.policies.create" call. // 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 *PoliciesCreateCall) 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &Policy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type PoliciesDeleteCall struct { s *Service project string policy string urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Delete: Deletes a previously created Policy. Fails if the policy is still // being referenced by a network. // // - policy: User given friendly name of the policy addressed by this request. // - project: Identifies the project addressed by this request. func (r *PoliciesService) Delete(project string, policy string) *PoliciesDeleteCall { c := &PoliciesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.policy = policy return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *PoliciesDeleteCall) ClientOperationId(clientOperationId string) *PoliciesDeleteCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *PoliciesDeleteCall) Fields(s ...googleapi.Field) *PoliciesDeleteCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *PoliciesDeleteCall) Context(ctx context.Context) *PoliciesDeleteCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *PoliciesDeleteCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *PoliciesDeleteCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/policies/{policy}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("DELETE", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "policy": c.policy, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.policies.delete" call. func (c *PoliciesDeleteCall) Do(opts ...googleapi.CallOption) error { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if err != nil { return err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return gensupport.WrapError(err) } return nil } type PoliciesGetCall struct { s *Service project string policy string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Fetches the representation of an existing Policy. // // - policy: User given friendly name of the policy addressed by this request. // - project: Identifies the project addressed by this request. func (r *PoliciesService) Get(project string, policy string) *PoliciesGetCall { c := &PoliciesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.policy = policy return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *PoliciesGetCall) ClientOperationId(clientOperationId string) *PoliciesGetCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *PoliciesGetCall) Fields(s ...googleapi.Field) *PoliciesGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *PoliciesGetCall) IfNoneMatch(entityTag string) *PoliciesGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *PoliciesGetCall) Context(ctx context.Context) *PoliciesGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *PoliciesGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *PoliciesGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/policies/{policy}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "policy": c.policy, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.policies.get" call. // 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 *PoliciesGetCall) 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &Policy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type PoliciesListCall struct { s *Service project string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Enumerates all Policies associated with a project. // // - project: Identifies the project addressed by this request. func (r *PoliciesService) List(project string) *PoliciesListCall { c := &PoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project return c } // MaxResults sets the optional parameter "maxResults": Maximum number of // results to be returned. If unspecified, the server decides how many results // to return. func (c *PoliciesListCall) MaxResults(maxResults int64) *PoliciesListCall { c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) return c } // PageToken sets the optional parameter "pageToken": A tag returned by a // previous list request that was truncated. Use this parameter to continue a // previous list request. func (c *PoliciesListCall) PageToken(pageToken string) *PoliciesListCall { 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 // details. func (c *PoliciesListCall) Fields(s ...googleapi.Field) *PoliciesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *PoliciesListCall) IfNoneMatch(entityTag string) *PoliciesListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *PoliciesListCall) Context(ctx context.Context) *PoliciesListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *PoliciesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *PoliciesListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/policies") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.policies.list" call. // Any non-2xx status code is an error. Response headers are in either // *PoliciesListResponse.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 *PoliciesListCall) Do(opts ...googleapi.CallOption) (*PoliciesListResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &PoliciesListResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // 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 *PoliciesListCall) Pages(ctx context.Context, f func(*PoliciesListResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) 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) } } type PoliciesPatchCall struct { s *Service project string policy string policy2 *Policy urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Patch: Applies a partial update to an existing Policy. // // - policy: User given friendly name of the policy addressed by this request. // - project: Identifies the project addressed by this request. func (r *PoliciesService) Patch(project string, policy string, policy2 *Policy) *PoliciesPatchCall { c := &PoliciesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.policy = policy c.policy2 = policy2 return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *PoliciesPatchCall) ClientOperationId(clientOperationId string) *PoliciesPatchCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *PoliciesPatchCall) Fields(s ...googleapi.Field) *PoliciesPatchCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *PoliciesPatchCall) Context(ctx context.Context) *PoliciesPatchCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *PoliciesPatchCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *PoliciesPatchCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.policy2) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/policies/{policy}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("PATCH", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "policy": c.policy, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.policies.patch" call. // Any non-2xx status code is an error. Response headers are in either // *PoliciesPatchResponse.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 *PoliciesPatchCall) Do(opts ...googleapi.CallOption) (*PoliciesPatchResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &PoliciesPatchResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type PoliciesUpdateCall struct { s *Service project string policy string policy2 *Policy urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Update: Updates an existing Policy. // // - policy: User given friendly name of the policy addressed by this request. // - project: Identifies the project addressed by this request. func (r *PoliciesService) Update(project string, policy string, policy2 *Policy) *PoliciesUpdateCall { c := &PoliciesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.policy = policy c.policy2 = policy2 return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *PoliciesUpdateCall) ClientOperationId(clientOperationId string) *PoliciesUpdateCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *PoliciesUpdateCall) Fields(s ...googleapi.Field) *PoliciesUpdateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *PoliciesUpdateCall) Context(ctx context.Context) *PoliciesUpdateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *PoliciesUpdateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *PoliciesUpdateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.policy2) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/policies/{policy}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("PUT", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "policy": c.policy, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.policies.update" call. // Any non-2xx status code is an error. Response headers are in either // *PoliciesUpdateResponse.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 *PoliciesUpdateCall) Do(opts ...googleapi.CallOption) (*PoliciesUpdateResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &PoliciesUpdateResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsGetCall struct { s *Service project string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Fetches the representation of an existing Project. // // - project: Identifies the project addressed by this request. func (r *ProjectsService) Get(project string) *ProjectsGetCall { c := &ProjectsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ProjectsGetCall) ClientOperationId(clientOperationId string) *ProjectsGetCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsGetCall) Fields(s ...googleapi.Field) *ProjectsGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ProjectsGetCall) IfNoneMatch(entityTag string) *ProjectsGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsGetCall) Context(ctx context.Context) *ProjectsGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.projects.get" call. // Any non-2xx status code is an error. Response headers are in either // *Project.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 *ProjectsGetCall) Do(opts ...googleapi.CallOption) (*Project, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &Project{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ResourceRecordSetsCreateCall struct { s *Service project string managedZone string resourcerecordset *ResourceRecordSet urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Create: Creates a new ResourceRecordSet. // // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - project: Identifies the project addressed by this request. func (r *ResourceRecordSetsService) Create(project string, managedZone string, resourcerecordset *ResourceRecordSet) *ResourceRecordSetsCreateCall { c := &ResourceRecordSetsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone c.resourcerecordset = resourcerecordset return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResourceRecordSetsCreateCall) ClientOperationId(clientOperationId string) *ResourceRecordSetsCreateCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResourceRecordSetsCreateCall) Fields(s ...googleapi.Field) *ResourceRecordSetsCreateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ResourceRecordSetsCreateCall) Context(ctx context.Context) *ResourceRecordSetsCreateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResourceRecordSetsCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResourceRecordSetsCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.resourcerecordset) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}/rrsets") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.resourceRecordSets.create" call. // Any non-2xx status code is an error. Response headers are in either // *ResourceRecordSet.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 *ResourceRecordSetsCreateCall) Do(opts ...googleapi.CallOption) (*ResourceRecordSet, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResourceRecordSet{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ResourceRecordSetsDeleteCall struct { s *Service project string managedZone string name string type_ string urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Delete: Deletes a previously created ResourceRecordSet. // // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - name: Fully qualified domain name. // - project: Identifies the project addressed by this request. // - type: RRSet type. func (r *ResourceRecordSetsService) Delete(project string, managedZone string, name string, type_ string) *ResourceRecordSetsDeleteCall { c := &ResourceRecordSetsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone c.name = name c.type_ = type_ return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResourceRecordSetsDeleteCall) ClientOperationId(clientOperationId string) *ResourceRecordSetsDeleteCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResourceRecordSetsDeleteCall) Fields(s ...googleapi.Field) *ResourceRecordSetsDeleteCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ResourceRecordSetsDeleteCall) Context(ctx context.Context) *ResourceRecordSetsDeleteCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResourceRecordSetsDeleteCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResourceRecordSetsDeleteCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}/rrsets/{name}/{type}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("DELETE", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, "name": c.name, "type": c.type_, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.resourceRecordSets.delete" call. func (c *ResourceRecordSetsDeleteCall) Do(opts ...googleapi.CallOption) error { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if err != nil { return err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return gensupport.WrapError(err) } return nil } type ResourceRecordSetsGetCall struct { s *Service project string managedZone string name string type_ string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Fetches the representation of an existing ResourceRecordSet. // // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - name: Fully qualified domain name. // - project: Identifies the project addressed by this request. // - type: RRSet type. func (r *ResourceRecordSetsService) Get(project string, managedZone string, name string, type_ string) *ResourceRecordSetsGetCall { c := &ResourceRecordSetsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone c.name = name c.type_ = type_ return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResourceRecordSetsGetCall) ClientOperationId(clientOperationId string) *ResourceRecordSetsGetCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResourceRecordSetsGetCall) Fields(s ...googleapi.Field) *ResourceRecordSetsGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ResourceRecordSetsGetCall) IfNoneMatch(entityTag string) *ResourceRecordSetsGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ResourceRecordSetsGetCall) Context(ctx context.Context) *ResourceRecordSetsGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResourceRecordSetsGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResourceRecordSetsGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}/rrsets/{name}/{type}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, "name": c.name, "type": c.type_, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.resourceRecordSets.get" call. // Any non-2xx status code is an error. Response headers are in either // *ResourceRecordSet.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 *ResourceRecordSetsGetCall) Do(opts ...googleapi.CallOption) (*ResourceRecordSet, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResourceRecordSet{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ResourceRecordSetsListCall struct { s *Service project string managedZone string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Enumerates ResourceRecordSets that you have created but not yet // deleted. // // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - project: Identifies the project addressed by this request. func (r *ResourceRecordSetsService) List(project string, managedZone string) *ResourceRecordSetsListCall { c := &ResourceRecordSetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone return c } // MaxResults sets the optional parameter "maxResults": Maximum number of // results to be returned. If unspecified, the server decides how many results // to return. func (c *ResourceRecordSetsListCall) MaxResults(maxResults int64) *ResourceRecordSetsListCall { c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) return c } // Name sets the optional parameter "name": Restricts the list to return only // records with this fully qualified domain name. func (c *ResourceRecordSetsListCall) Name(name string) *ResourceRecordSetsListCall { c.urlParams_.Set("name", name) return c } // PageToken sets the optional parameter "pageToken": A tag returned by a // previous list request that was truncated. Use this parameter to continue a // previous list request. func (c *ResourceRecordSetsListCall) PageToken(pageToken string) *ResourceRecordSetsListCall { c.urlParams_.Set("pageToken", pageToken) return c } // Type sets the optional parameter "type": Restricts the list to return only // records of this type. If present, the "name" parameter must also be present. func (c *ResourceRecordSetsListCall) Type(type_ string) *ResourceRecordSetsListCall { c.urlParams_.Set("type", type_) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResourceRecordSetsListCall) Fields(s ...googleapi.Field) *ResourceRecordSetsListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ResourceRecordSetsListCall) IfNoneMatch(entityTag string) *ResourceRecordSetsListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ResourceRecordSetsListCall) Context(ctx context.Context) *ResourceRecordSetsListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResourceRecordSetsListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResourceRecordSetsListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}/rrsets") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.resourceRecordSets.list" call. // Any non-2xx status code is an error. Response headers are in either // *ResourceRecordSetsListResponse.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 *ResourceRecordSetsListCall) Do(opts ...googleapi.CallOption) (*ResourceRecordSetsListResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResourceRecordSetsListResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // 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 *ResourceRecordSetsListCall) Pages(ctx context.Context, f func(*ResourceRecordSetsListResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) 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) } } type ResourceRecordSetsPatchCall struct { s *Service project string managedZone string name string type_ string resourcerecordset *ResourceRecordSet urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Patch: Applies a partial update to an existing ResourceRecordSet. // // - managedZone: Identifies the managed zone addressed by this request. Can be // the managed zone name or ID. // - name: Fully qualified domain name. // - project: Identifies the project addressed by this request. // - type: RRSet type. func (r *ResourceRecordSetsService) Patch(project string, managedZone string, name string, type_ string, resourcerecordset *ResourceRecordSet) *ResourceRecordSetsPatchCall { c := &ResourceRecordSetsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.managedZone = managedZone c.name = name c.type_ = type_ c.resourcerecordset = resourcerecordset return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResourceRecordSetsPatchCall) ClientOperationId(clientOperationId string) *ResourceRecordSetsPatchCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResourceRecordSetsPatchCall) Fields(s ...googleapi.Field) *ResourceRecordSetsPatchCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ResourceRecordSetsPatchCall) Context(ctx context.Context) *ResourceRecordSetsPatchCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResourceRecordSetsPatchCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResourceRecordSetsPatchCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.resourcerecordset) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/managedZones/{managedZone}/rrsets/{name}/{type}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("PATCH", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "managedZone": c.managedZone, "name": c.name, "type": c.type_, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.resourceRecordSets.patch" call. // Any non-2xx status code is an error. Response headers are in either // *ResourceRecordSet.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 *ResourceRecordSetsPatchCall) Do(opts ...googleapi.CallOption) (*ResourceRecordSet, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResourceRecordSet{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ResponsePoliciesCreateCall struct { s *Service project string responsepolicy *ResponsePolicy urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Create: Creates a new Response Policy // // - project: Identifies the project addressed by this request. func (r *ResponsePoliciesService) Create(project string, responsepolicy *ResponsePolicy) *ResponsePoliciesCreateCall { c := &ResponsePoliciesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.responsepolicy = responsepolicy return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResponsePoliciesCreateCall) ClientOperationId(clientOperationId string) *ResponsePoliciesCreateCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResponsePoliciesCreateCall) Fields(s ...googleapi.Field) *ResponsePoliciesCreateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ResponsePoliciesCreateCall) Context(ctx context.Context) *ResponsePoliciesCreateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResponsePoliciesCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResponsePoliciesCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.responsepolicy) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/responsePolicies") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.responsePolicies.create" call. // Any non-2xx status code is an error. Response headers are in either // *ResponsePolicy.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 *ResponsePoliciesCreateCall) Do(opts ...googleapi.CallOption) (*ResponsePolicy, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResponsePolicy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ResponsePoliciesDeleteCall struct { s *Service project string responsePolicy string urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Delete: Deletes a previously created Response Policy. Fails if the response // policy is non-empty or still being referenced by a network. // // - project: Identifies the project addressed by this request. // - responsePolicy: User assigned name of the Response Policy addressed by // this request. func (r *ResponsePoliciesService) Delete(project string, responsePolicy string) *ResponsePoliciesDeleteCall { c := &ResponsePoliciesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.responsePolicy = responsePolicy return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResponsePoliciesDeleteCall) ClientOperationId(clientOperationId string) *ResponsePoliciesDeleteCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResponsePoliciesDeleteCall) Fields(s ...googleapi.Field) *ResponsePoliciesDeleteCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ResponsePoliciesDeleteCall) Context(ctx context.Context) *ResponsePoliciesDeleteCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResponsePoliciesDeleteCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResponsePoliciesDeleteCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/responsePolicies/{responsePolicy}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("DELETE", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "responsePolicy": c.responsePolicy, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.responsePolicies.delete" call. func (c *ResponsePoliciesDeleteCall) Do(opts ...googleapi.CallOption) error { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if err != nil { return err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return gensupport.WrapError(err) } return nil } type ResponsePoliciesGetCall struct { s *Service project string responsePolicy string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Fetches the representation of an existing Response Policy. // // - project: Identifies the project addressed by this request. // - responsePolicy: User assigned name of the Response Policy addressed by // this request. func (r *ResponsePoliciesService) Get(project string, responsePolicy string) *ResponsePoliciesGetCall { c := &ResponsePoliciesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.responsePolicy = responsePolicy return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResponsePoliciesGetCall) ClientOperationId(clientOperationId string) *ResponsePoliciesGetCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResponsePoliciesGetCall) Fields(s ...googleapi.Field) *ResponsePoliciesGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ResponsePoliciesGetCall) IfNoneMatch(entityTag string) *ResponsePoliciesGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ResponsePoliciesGetCall) Context(ctx context.Context) *ResponsePoliciesGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResponsePoliciesGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResponsePoliciesGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/responsePolicies/{responsePolicy}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "responsePolicy": c.responsePolicy, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.responsePolicies.get" call. // Any non-2xx status code is an error. Response headers are in either // *ResponsePolicy.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 *ResponsePoliciesGetCall) Do(opts ...googleapi.CallOption) (*ResponsePolicy, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResponsePolicy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ResponsePoliciesListCall struct { s *Service project string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Enumerates all Response Policies associated with a project. // // - project: Identifies the project addressed by this request. func (r *ResponsePoliciesService) List(project string) *ResponsePoliciesListCall { c := &ResponsePoliciesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project return c } // MaxResults sets the optional parameter "maxResults": Maximum number of // results to be returned. If unspecified, the server decides how many results // to return. func (c *ResponsePoliciesListCall) MaxResults(maxResults int64) *ResponsePoliciesListCall { c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) return c } // PageToken sets the optional parameter "pageToken": A tag returned by a // previous list request that was truncated. Use this parameter to continue a // previous list request. func (c *ResponsePoliciesListCall) PageToken(pageToken string) *ResponsePoliciesListCall { 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 // details. func (c *ResponsePoliciesListCall) Fields(s ...googleapi.Field) *ResponsePoliciesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ResponsePoliciesListCall) IfNoneMatch(entityTag string) *ResponsePoliciesListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ResponsePoliciesListCall) Context(ctx context.Context) *ResponsePoliciesListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResponsePoliciesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResponsePoliciesListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/responsePolicies") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.responsePolicies.list" call. // Any non-2xx status code is an error. Response headers are in either // *ResponsePoliciesListResponse.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 *ResponsePoliciesListCall) Do(opts ...googleapi.CallOption) (*ResponsePoliciesListResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResponsePoliciesListResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // 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 *ResponsePoliciesListCall) Pages(ctx context.Context, f func(*ResponsePoliciesListResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) 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) } } type ResponsePoliciesPatchCall struct { s *Service project string responsePolicy string responsepolicy *ResponsePolicy urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Patch: Applies a partial update to an existing Response Policy. // // - project: Identifies the project addressed by this request. // - responsePolicy: User assigned name of the response policy addressed by // this request. func (r *ResponsePoliciesService) Patch(project string, responsePolicy string, responsepolicy *ResponsePolicy) *ResponsePoliciesPatchCall { c := &ResponsePoliciesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.responsePolicy = responsePolicy c.responsepolicy = responsepolicy return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResponsePoliciesPatchCall) ClientOperationId(clientOperationId string) *ResponsePoliciesPatchCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResponsePoliciesPatchCall) Fields(s ...googleapi.Field) *ResponsePoliciesPatchCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ResponsePoliciesPatchCall) Context(ctx context.Context) *ResponsePoliciesPatchCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResponsePoliciesPatchCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResponsePoliciesPatchCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.responsepolicy) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/responsePolicies/{responsePolicy}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("PATCH", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "responsePolicy": c.responsePolicy, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.responsePolicies.patch" call. // Any non-2xx status code is an error. Response headers are in either // *ResponsePoliciesPatchResponse.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 *ResponsePoliciesPatchCall) Do(opts ...googleapi.CallOption) (*ResponsePoliciesPatchResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResponsePoliciesPatchResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ResponsePoliciesUpdateCall struct { s *Service project string responsePolicy string responsepolicy *ResponsePolicy urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Update: Updates an existing Response Policy. // // - project: Identifies the project addressed by this request. // - responsePolicy: User assigned name of the Response Policy addressed by // this request. func (r *ResponsePoliciesService) Update(project string, responsePolicy string, responsepolicy *ResponsePolicy) *ResponsePoliciesUpdateCall { c := &ResponsePoliciesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.responsePolicy = responsePolicy c.responsepolicy = responsepolicy return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResponsePoliciesUpdateCall) ClientOperationId(clientOperationId string) *ResponsePoliciesUpdateCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResponsePoliciesUpdateCall) Fields(s ...googleapi.Field) *ResponsePoliciesUpdateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ResponsePoliciesUpdateCall) Context(ctx context.Context) *ResponsePoliciesUpdateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResponsePoliciesUpdateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResponsePoliciesUpdateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.responsepolicy) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/responsePolicies/{responsePolicy}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("PUT", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "responsePolicy": c.responsePolicy, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.responsePolicies.update" call. // Any non-2xx status code is an error. Response headers are in either // *ResponsePoliciesUpdateResponse.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 *ResponsePoliciesUpdateCall) Do(opts ...googleapi.CallOption) (*ResponsePoliciesUpdateResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResponsePoliciesUpdateResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ResponsePolicyRulesCreateCall struct { s *Service project string responsePolicy string responsepolicyrule *ResponsePolicyRule urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Create: Creates a new Response Policy Rule. // // - project: Identifies the project addressed by this request. // - responsePolicy: User assigned name of the Response Policy containing the // Response Policy Rule. func (r *ResponsePolicyRulesService) Create(project string, responsePolicy string, responsepolicyrule *ResponsePolicyRule) *ResponsePolicyRulesCreateCall { c := &ResponsePolicyRulesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.responsePolicy = responsePolicy c.responsepolicyrule = responsepolicyrule return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResponsePolicyRulesCreateCall) ClientOperationId(clientOperationId string) *ResponsePolicyRulesCreateCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResponsePolicyRulesCreateCall) Fields(s ...googleapi.Field) *ResponsePolicyRulesCreateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ResponsePolicyRulesCreateCall) Context(ctx context.Context) *ResponsePolicyRulesCreateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResponsePolicyRulesCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResponsePolicyRulesCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.responsepolicyrule) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/responsePolicies/{responsePolicy}/rules") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "responsePolicy": c.responsePolicy, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.responsePolicyRules.create" call. // Any non-2xx status code is an error. Response headers are in either // *ResponsePolicyRule.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 *ResponsePolicyRulesCreateCall) Do(opts ...googleapi.CallOption) (*ResponsePolicyRule, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResponsePolicyRule{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ResponsePolicyRulesDeleteCall struct { s *Service project string responsePolicy string responsePolicyRule string urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Delete: Deletes a previously created Response Policy Rule. // // - project: Identifies the project addressed by this request. // - responsePolicy: User assigned name of the Response Policy containing the // Response Policy Rule. // - responsePolicyRule: User assigned name of the Response Policy Rule // addressed by this request. func (r *ResponsePolicyRulesService) Delete(project string, responsePolicy string, responsePolicyRule string) *ResponsePolicyRulesDeleteCall { c := &ResponsePolicyRulesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.responsePolicy = responsePolicy c.responsePolicyRule = responsePolicyRule return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResponsePolicyRulesDeleteCall) ClientOperationId(clientOperationId string) *ResponsePolicyRulesDeleteCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResponsePolicyRulesDeleteCall) Fields(s ...googleapi.Field) *ResponsePolicyRulesDeleteCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ResponsePolicyRulesDeleteCall) Context(ctx context.Context) *ResponsePolicyRulesDeleteCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResponsePolicyRulesDeleteCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResponsePolicyRulesDeleteCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/responsePolicies/{responsePolicy}/rules/{responsePolicyRule}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("DELETE", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "responsePolicy": c.responsePolicy, "responsePolicyRule": c.responsePolicyRule, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.responsePolicyRules.delete" call. func (c *ResponsePolicyRulesDeleteCall) Do(opts ...googleapi.CallOption) error { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if err != nil { return err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return gensupport.WrapError(err) } return nil } type ResponsePolicyRulesGetCall struct { s *Service project string responsePolicy string responsePolicyRule string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Fetches the representation of an existing Response Policy Rule. // // - project: Identifies the project addressed by this request. // - responsePolicy: User assigned name of the Response Policy containing the // Response Policy Rule. // - responsePolicyRule: User assigned name of the Response Policy Rule // addressed by this request. func (r *ResponsePolicyRulesService) Get(project string, responsePolicy string, responsePolicyRule string) *ResponsePolicyRulesGetCall { c := &ResponsePolicyRulesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.responsePolicy = responsePolicy c.responsePolicyRule = responsePolicyRule return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResponsePolicyRulesGetCall) ClientOperationId(clientOperationId string) *ResponsePolicyRulesGetCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResponsePolicyRulesGetCall) Fields(s ...googleapi.Field) *ResponsePolicyRulesGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ResponsePolicyRulesGetCall) IfNoneMatch(entityTag string) *ResponsePolicyRulesGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ResponsePolicyRulesGetCall) Context(ctx context.Context) *ResponsePolicyRulesGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResponsePolicyRulesGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResponsePolicyRulesGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/responsePolicies/{responsePolicy}/rules/{responsePolicyRule}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "responsePolicy": c.responsePolicy, "responsePolicyRule": c.responsePolicyRule, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.responsePolicyRules.get" call. // Any non-2xx status code is an error. Response headers are in either // *ResponsePolicyRule.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 *ResponsePolicyRulesGetCall) Do(opts ...googleapi.CallOption) (*ResponsePolicyRule, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResponsePolicyRule{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ResponsePolicyRulesListCall struct { s *Service project string responsePolicy string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Enumerates all Response Policy Rules associated with a project. // // - project: Identifies the project addressed by this request. // - responsePolicy: User assigned name of the Response Policy to list. func (r *ResponsePolicyRulesService) List(project string, responsePolicy string) *ResponsePolicyRulesListCall { c := &ResponsePolicyRulesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.responsePolicy = responsePolicy return c } // MaxResults sets the optional parameter "maxResults": Maximum number of // results to be returned. If unspecified, the server decides how many results // to return. func (c *ResponsePolicyRulesListCall) MaxResults(maxResults int64) *ResponsePolicyRulesListCall { c.urlParams_.Set("maxResults", fmt.Sprint(maxResults)) return c } // PageToken sets the optional parameter "pageToken": A tag returned by a // previous list request that was truncated. Use this parameter to continue a // previous list request. func (c *ResponsePolicyRulesListCall) PageToken(pageToken string) *ResponsePolicyRulesListCall { 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 // details. func (c *ResponsePolicyRulesListCall) Fields(s ...googleapi.Field) *ResponsePolicyRulesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an 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. func (c *ResponsePolicyRulesListCall) IfNoneMatch(entityTag string) *ResponsePolicyRulesListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ResponsePolicyRulesListCall) Context(ctx context.Context) *ResponsePolicyRulesListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResponsePolicyRulesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResponsePolicyRulesListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/responsePolicies/{responsePolicy}/rules") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "responsePolicy": c.responsePolicy, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.responsePolicyRules.list" call. // Any non-2xx status code is an error. Response headers are in either // *ResponsePolicyRulesListResponse.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 *ResponsePolicyRulesListCall) Do(opts ...googleapi.CallOption) (*ResponsePolicyRulesListResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResponsePolicyRulesListResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // 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 *ResponsePolicyRulesListCall) Pages(ctx context.Context, f func(*ResponsePolicyRulesListResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) 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) } } type ResponsePolicyRulesPatchCall struct { s *Service project string responsePolicy string responsePolicyRule string responsepolicyrule *ResponsePolicyRule urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Patch: Applies a partial update to an existing Response Policy Rule. // // - project: Identifies the project addressed by this request. // - responsePolicy: User assigned name of the Response Policy containing the // Response Policy Rule. // - responsePolicyRule: User assigned name of the Response Policy Rule // addressed by this request. func (r *ResponsePolicyRulesService) Patch(project string, responsePolicy string, responsePolicyRule string, responsepolicyrule *ResponsePolicyRule) *ResponsePolicyRulesPatchCall { c := &ResponsePolicyRulesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.responsePolicy = responsePolicy c.responsePolicyRule = responsePolicyRule c.responsepolicyrule = responsepolicyrule return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResponsePolicyRulesPatchCall) ClientOperationId(clientOperationId string) *ResponsePolicyRulesPatchCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResponsePolicyRulesPatchCall) Fields(s ...googleapi.Field) *ResponsePolicyRulesPatchCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ResponsePolicyRulesPatchCall) Context(ctx context.Context) *ResponsePolicyRulesPatchCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResponsePolicyRulesPatchCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResponsePolicyRulesPatchCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.responsepolicyrule) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/responsePolicies/{responsePolicy}/rules/{responsePolicyRule}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("PATCH", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "responsePolicy": c.responsePolicy, "responsePolicyRule": c.responsePolicyRule, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.responsePolicyRules.patch" call. // Any non-2xx status code is an error. Response headers are in either // *ResponsePolicyRulesPatchResponse.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 *ResponsePolicyRulesPatchCall) Do(opts ...googleapi.CallOption) (*ResponsePolicyRulesPatchResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResponsePolicyRulesPatchResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ResponsePolicyRulesUpdateCall struct { s *Service project string responsePolicy string responsePolicyRule string responsepolicyrule *ResponsePolicyRule urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Update: Updates an existing Response Policy Rule. // // - project: Identifies the project addressed by this request. // - responsePolicy: User assigned name of the Response Policy containing the // Response Policy Rule. // - responsePolicyRule: User assigned name of the Response Policy Rule // addressed by this request. func (r *ResponsePolicyRulesService) Update(project string, responsePolicy string, responsePolicyRule string, responsepolicyrule *ResponsePolicyRule) *ResponsePolicyRulesUpdateCall { c := &ResponsePolicyRulesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.project = project c.responsePolicy = responsePolicy c.responsePolicyRule = responsePolicyRule c.responsepolicyrule = responsepolicyrule return c } // ClientOperationId sets the optional parameter "clientOperationId": For // mutating operation requests only. An optional identifier specified by the // client. Must be unique for operation resources in the Operations collection. func (c *ResponsePolicyRulesUpdateCall) ClientOperationId(clientOperationId string) *ResponsePolicyRulesUpdateCall { c.urlParams_.Set("clientOperationId", clientOperationId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ResponsePolicyRulesUpdateCall) Fields(s ...googleapi.Field) *ResponsePolicyRulesUpdateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ResponsePolicyRulesUpdateCall) Context(ctx context.Context) *ResponsePolicyRulesUpdateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ResponsePolicyRulesUpdateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ResponsePolicyRulesUpdateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.responsepolicyrule) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "dns/v1beta2/projects/{project}/responsePolicies/{responsePolicy}/rules/{responsePolicyRule}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("PUT", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "project": c.project, "responsePolicy": c.responsePolicy, "responsePolicyRule": c.responsePolicyRule, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "dns.responsePolicyRules.update" call. // Any non-2xx status code is an error. Response headers are in either // *ResponsePolicyRulesUpdateResponse.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 *ResponsePolicyRulesUpdateCall) Do(opts ...googleapi.CallOption) (*ResponsePolicyRulesUpdateResponse, 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, gensupport.WrapError(&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, gensupport.WrapError(err) } ret := &ResponsePolicyRulesUpdateResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil }