mirror of
https://github.com/openshift/installer.git
synced 2026-02-05 06:46:36 +01:00
vendor: Added armdns latest version
Adding latest armdns version to create DNS entries.
This commit is contained in:
6
go.mod
6
go.mod
@@ -7,10 +7,12 @@ require (
|
||||
cloud.google.com/go/storage v1.38.0
|
||||
github.com/AlecAivazis/survey/v2 v2.3.5
|
||||
github.com/Azure/azure-sdk-for-go v68.0.0+incompatible
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0-beta.1
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v4 v4.1.0
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns v1.2.0
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork v1.0.0
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns v1.2.0
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph v0.8.2
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v1.1.1
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/storage/armstorage v1.2.0
|
||||
@@ -125,7 +127,7 @@ require (
|
||||
cloud.google.com/go/compute v1.23.4 // indirect
|
||||
cloud.google.com/go/compute/metadata v0.2.3 // indirect
|
||||
cloud.google.com/go/iam v1.1.6 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal v1.3.0 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v5 v5.2.0 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/containerservice/armcontainerservice/v4 v4.3.0 // indirect
|
||||
github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect
|
||||
|
||||
14
go.sum
14
go.sum
@@ -1168,12 +1168,12 @@ github.com/AlecAivazis/survey/v2 v2.3.5 h1:A8cYupsAZkjaUmhtTYv3sSqc7LO5mp1XDfqe5
|
||||
github.com/AlecAivazis/survey/v2 v2.3.5/go.mod h1:4AuI9b7RjAR+G7v9+C4YSlX/YL3K3cWNXgWXOhllqvI=
|
||||
github.com/Azure/azure-sdk-for-go v68.0.0+incompatible h1:fcYLmCpyNYRnvJbPerq7U0hS+6+I79yEDJBqVNcqUzU=
|
||||
github.com/Azure/azure-sdk-for-go v68.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0-beta.1 h1:ODs3brnqQM99Tq1PffODpAViYv3Bf8zOg464MU7p5ew=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0-beta.1/go.mod h1:3Ug6Qzto9anB6mGlEdgYMDF5zHQ+wwhEaYR4s17PHMw=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0 h1:fb8kj/Dh4CSwgsOzHeZY4Xh68cFVbzXx+ONXGMY//4w=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0/go.mod h1:uReU2sSxZExRPBAg3qKzmAucSi51+SP1OhohieR821Q=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0 h1:BMAjVKJM0U/CYF27gA0ZMmXGkOcvfFtD0oHVZ1TIPRI=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0/go.mod h1:1fXstnBMas5kzG+S3q8UoJcmyU6nUeunJcMDHcRYHhs=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal v1.3.0 h1:sXr+ck84g/ZlZUOZiNELInmMgOsuGwdjjVkEIde0OtY=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal v1.3.0/go.mod h1:okt5dMMTOFjX/aovMlrjvvXoPMBVSPzk9185BT0+eZM=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0 h1:d81/ng9rET2YqdVkVwkb6EXeRrLJIwyGnJcAlAWKwhs=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0/go.mod h1:s4kgfzA0covAXNicZHDMN58jExvcng2mC/DepXiF1EI=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v3 v3.0.1 h1:H3g2mkmu105ON0c/Gqx3Bm+bzoIijLom8LmV9Gjn7X0=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v3 v3.0.1/go.mod h1:EAc3kjhZf9soch7yLID8PeKcE6VfKvQTllSBHYVdXd8=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v4 v4.1.0 h1:Vjq3Uy3JAU1DTxbA+uX6BegIhgO2pyFltbfbmDa9KdI=
|
||||
@@ -1182,12 +1182,18 @@ github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v5 v5.2
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v5 v5.2.0/go.mod h1:c3iwOnL5Xq5K9ZOvxBrfZYD4pBDNTGK5b7ptkHN6SDs=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/containerservice/armcontainerservice/v4 v4.3.0 h1:U73ZEM5QTwb7x/VrXLTi+sb6Aw9DqFJxOpWuj+pDPfk=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/containerservice/armcontainerservice/v4 v4.3.0/go.mod h1:WpiaNrHqgIy+P5gTYbOA/JuMmxq7uq8onUvVBybjIlI=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns v1.2.0 h1:lpOxwrQ919lCZoNCd69rVt8u1eLZuMORrGXqy8sNf3c=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns v1.2.0/go.mod h1:fSvRkb8d26z9dbL40Uf/OO6Vo9iExtZK3D0ulRV+8M0=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/internal v1.1.2 h1:mLY+pNLjCUeKhgnAJWAKhEUQM+RJQo2H1fuGSw1Ky1E=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/internal v1.1.2/go.mod h1:FbdwsQ2EzwvXxOPcMFYO8ogEc9uMMIj3YkmCdXdAFmk=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/internal/v2 v2.0.0 h1:PTFGRSlMKCQelWwxUyYVEUqseBJVemLyqWJjvMyt0do=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/internal/v2 v2.0.0/go.mod h1:LRr2FzBTQlONPPa5HREE5+RjSCTXl7BwOvYOaWTqCaI=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/managementgroups/armmanagementgroups v1.0.0 h1:pPvTJ1dY0sA35JOeFq6TsY2xj6Z85Yo23Pj4wCCvu4o=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/managementgroups/armmanagementgroups v1.0.0/go.mod h1:mLfWfj8v3jfWKsL9G4eoBoXVcsqcIUTapmdKy7uGOp0=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork v1.0.0 h1:nBy98uKOIfun5z6wx6jwWLrULcM0+cjBalBFZlEZ7CA=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork v1.0.0/go.mod h1:243D9iHbcQXoFUtgHJwL7gl2zx1aDuDMjvBZVGr2uW0=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns v1.2.0 h1:9Eih8XcEeQnFD0ntMlUDleKMzfeCeUfa+VbnDCI4AZs=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns v1.2.0/go.mod h1:wGPyTi+aURdqPAGMZDQqnNs9IrShADF8w2WZb6bKeq0=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph v0.8.2 h1:f9lam+D19V0TDn17+aFhrVhWPpfsF5zaGHeqDGJZAVc=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph v0.8.2/go.mod h1:29c9+gYpdWhyC4TPANZBPlgoWllMDhguL2AIByPYQtk=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v1.1.1 h1:7CBQ+Ei8SP2c6ydQTGCCrS35bDxgTMfoP2miAwK++OU=
|
||||
|
||||
23
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/CHANGELOG.md
generated
vendored
23
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/CHANGELOG.md
generated
vendored
@@ -1,5 +1,28 @@
|
||||
# Release History
|
||||
|
||||
## 1.9.0 (2023-11-06)
|
||||
|
||||
### Breaking Changes
|
||||
> These changes affect only code written against previous beta versions of `v1.7.0` and `v1.8.0`
|
||||
* The function `NewTokenCredential` has been removed from the `fake` package. Use a literal `&fake.TokenCredential{}` instead.
|
||||
* The field `TracingNamespace` in `runtime.PipelineOptions` has been replaced by `TracingOptions`.
|
||||
|
||||
### Bugs Fixed
|
||||
|
||||
* Fixed an issue that could cause some allowed HTTP header values to not show up in logs.
|
||||
* Include error text instead of error type in traces when the transport returns an error.
|
||||
* Fixed an issue that could cause an HTTP/2 request to hang when the TCP connection becomes unresponsive.
|
||||
* Block key and SAS authentication for non TLS protected endpoints.
|
||||
* Passing a `nil` credential value will no longer cause a panic. Instead, the authentication is skipped.
|
||||
* Calling `Error` on a zero-value `azcore.ResponseError` will no longer panic.
|
||||
* Fixed an issue in `fake.PagerResponder[T]` that would cause a trailing error to be omitted when iterating over pages.
|
||||
* Context values created by `azcore` will no longer flow across disjoint HTTP requests.
|
||||
|
||||
### Other Changes
|
||||
|
||||
* Skip generating trace info for no-op tracers.
|
||||
* The `clientName` paramater in client constructors has been renamed to `moduleName`.
|
||||
|
||||
## 1.9.0-beta.1 (2023-10-05)
|
||||
|
||||
### Other Changes
|
||||
|
||||
16
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/arm/client.go
generated
vendored
16
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/arm/client.go
generated
vendored
@@ -28,17 +28,11 @@ type Client struct {
|
||||
|
||||
// NewClient creates a new Client instance with the provided values.
|
||||
// This client is intended to be used with Azure Resource Manager endpoints.
|
||||
// - clientName - the fully qualified name of the client ("module/package.Client"); this is used by the telemetry policy and tracing provider.
|
||||
// if module and package are the same value, the "module/" prefix can be omitted.
|
||||
// - moduleVersion - the version of the containing module; used by the telemetry policy
|
||||
// - moduleName - the fully qualified name of the module where the client is defined; used by the telemetry policy and tracing provider.
|
||||
// - moduleVersion - the semantic version of the module; used by the telemetry policy and tracing provider.
|
||||
// - cred - the TokenCredential used to authenticate the request
|
||||
// - options - optional client configurations; pass nil to accept the default values
|
||||
func NewClient(clientName, moduleVersion string, cred azcore.TokenCredential, options *ClientOptions) (*Client, error) {
|
||||
mod, client, err := shared.ExtractModuleName(clientName)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
func NewClient(moduleName, moduleVersion string, cred azcore.TokenCredential, options *ClientOptions) (*Client, error) {
|
||||
if options == nil {
|
||||
options = &ClientOptions{}
|
||||
}
|
||||
@@ -53,12 +47,12 @@ func NewClient(clientName, moduleVersion string, cred azcore.TokenCredential, op
|
||||
if c, ok := options.Cloud.Services[cloud.ResourceManager]; ok {
|
||||
ep = c.Endpoint
|
||||
}
|
||||
pl, err := armruntime.NewPipeline(mod, moduleVersion, cred, runtime.PipelineOptions{}, options)
|
||||
pl, err := armruntime.NewPipeline(moduleName, moduleVersion, cred, runtime.PipelineOptions{}, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
tr := options.TracingProvider.NewTracer(client, moduleVersion)
|
||||
tr := options.TracingProvider.NewTracer(moduleName, moduleVersion)
|
||||
return &Client{ep: ep, pl: pl, tr: tr}, nil
|
||||
}
|
||||
|
||||
|
||||
@@ -126,12 +126,13 @@ func (r *rpRegistrationPolicy) Do(req *azpolicy.Request) (*http.Response, error)
|
||||
u: r.endpoint,
|
||||
subID: subID,
|
||||
}
|
||||
if _, err = rpOps.Register(req.Raw().Context(), rp); err != nil {
|
||||
if _, err = rpOps.Register(&shared.ContextWithDeniedValues{Context: req.Raw().Context()}, rp); err != nil {
|
||||
logRegistrationExit(err)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// RP was registered, however we need to wait for the registration to complete
|
||||
pollCtx, pollCancel := context.WithTimeout(req.Raw().Context(), r.options.PollingDuration)
|
||||
pollCtx, pollCancel := context.WithTimeout(&shared.ContextWithDeniedValues{Context: req.Raw().Context()}, r.options.PollingDuration)
|
||||
var lastRegState string
|
||||
for {
|
||||
// get the current registration state
|
||||
|
||||
@@ -18,12 +18,12 @@ import (
|
||||
// httpTraceNamespacePolicy is a policy that adds the az.namespace attribute to the current Span
|
||||
func httpTraceNamespacePolicy(req *policy.Request) (resp *http.Response, err error) {
|
||||
rawTracer := req.Raw().Context().Value(shared.CtxWithTracingTracer{})
|
||||
if tracer, ok := rawTracer.(tracing.Tracer); ok {
|
||||
if tracer, ok := rawTracer.(tracing.Tracer); ok && tracer.Enabled() {
|
||||
rt, err := resource.ParseResourceType(req.Raw().URL.Path)
|
||||
if err == nil {
|
||||
// add the namespace attribute to the current span
|
||||
span := tracer.SpanFromContext(req.Raw().Context())
|
||||
span.SetAttributes(tracing.Attribute{Key: "az.namespace", Value: rt.Namespace})
|
||||
span.SetAttributes(tracing.Attribute{Key: shared.TracingNamespaceAttrName, Value: rt.Namespace})
|
||||
}
|
||||
}
|
||||
return req.Next()
|
||||
|
||||
28
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/core.go
generated
vendored
28
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/core.go
generated
vendored
@@ -84,7 +84,9 @@ func IsNullValue[T any](v T) bool {
|
||||
return false
|
||||
}
|
||||
|
||||
// ClientOptions contains configuration settings for a client's pipeline.
|
||||
// ClientOptions contains optional settings for a client's pipeline.
|
||||
// Instances can be shared across calls to SDK client constructors when uniform configuration is desired.
|
||||
// Zero-value fields will have their specified default values applied during use.
|
||||
type ClientOptions = policy.ClientOptions
|
||||
|
||||
// Client is a basic HTTP client. It consists of a pipeline and tracing provider.
|
||||
@@ -99,17 +101,11 @@ type Client struct {
|
||||
}
|
||||
|
||||
// NewClient creates a new Client instance with the provided values.
|
||||
// - clientName - the fully qualified name of the client ("module/package.Client"); this is used by the telemetry policy and tracing provider.
|
||||
// if module and package are the same value, the "module/" prefix can be omitted.
|
||||
// - moduleVersion - the semantic version of the containing module; used by the telemetry policy
|
||||
// - moduleName - the fully qualified name of the module where the client is defined; used by the telemetry policy and tracing provider.
|
||||
// - moduleVersion - the semantic version of the module; used by the telemetry policy and tracing provider.
|
||||
// - plOpts - pipeline configuration options; can be the zero-value
|
||||
// - options - optional client configurations; pass nil to accept the default values
|
||||
func NewClient(clientName, moduleVersion string, plOpts runtime.PipelineOptions, options *ClientOptions) (*Client, error) {
|
||||
mod, client, err := shared.ExtractModuleName(clientName)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
func NewClient(moduleName, moduleVersion string, plOpts runtime.PipelineOptions, options *ClientOptions) (*Client, error) {
|
||||
if options == nil {
|
||||
options = &ClientOptions{}
|
||||
}
|
||||
@@ -120,11 +116,11 @@ func NewClient(clientName, moduleVersion string, plOpts runtime.PipelineOptions,
|
||||
}
|
||||
}
|
||||
|
||||
pl := runtime.NewPipeline(mod, moduleVersion, plOpts, options)
|
||||
pl := runtime.NewPipeline(moduleName, moduleVersion, plOpts, options)
|
||||
|
||||
tr := options.TracingProvider.NewTracer(client, moduleVersion)
|
||||
if tr.Enabled() && plOpts.TracingNamespace != "" {
|
||||
tr.SetAttributes(tracing.Attribute{Key: "az.namespace", Value: plOpts.TracingNamespace})
|
||||
tr := options.TracingProvider.NewTracer(moduleName, moduleVersion)
|
||||
if tr.Enabled() && plOpts.Tracing.Namespace != "" {
|
||||
tr.SetAttributes(tracing.Attribute{Key: shared.TracingNamespaceAttrName, Value: plOpts.Tracing.Namespace})
|
||||
}
|
||||
|
||||
return &Client{
|
||||
@@ -132,7 +128,7 @@ func NewClient(clientName, moduleVersion string, plOpts runtime.PipelineOptions,
|
||||
tr: tr,
|
||||
tp: options.TracingProvider,
|
||||
modVer: moduleVersion,
|
||||
namespace: plOpts.TracingNamespace,
|
||||
namespace: plOpts.Tracing.Namespace,
|
||||
}, nil
|
||||
}
|
||||
|
||||
@@ -152,7 +148,7 @@ func (c *Client) Tracer() tracing.Tracer {
|
||||
func (c *Client) WithClientName(clientName string) *Client {
|
||||
tr := c.tp.NewTracer(clientName, c.modVer)
|
||||
if tr.Enabled() && c.namespace != "" {
|
||||
tr.SetAttributes(tracing.Attribute{Key: "az.namespace", Value: c.namespace})
|
||||
tr.SetAttributes(tracing.Attribute{Key: shared.TracingNamespaceAttrName, Value: c.namespace})
|
||||
}
|
||||
return &Client{pl: c.pl, tr: tr, tp: c.tp, modVer: c.modVer, namespace: c.namespace}
|
||||
}
|
||||
|
||||
7
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/doc.go
generated
vendored
7
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/doc.go
generated
vendored
@@ -253,5 +253,12 @@ When resuming a poller, no IO is performed, and zero-value arguments can be used
|
||||
|
||||
Resume tokens are unique per service client and operation. Attempting to resume a poller for LRO BeginB() with a token from LRO
|
||||
BeginA() will result in an error.
|
||||
|
||||
# Fakes
|
||||
|
||||
The fake package contains types used for constructing in-memory fake servers used in unit tests.
|
||||
This allows writing tests to cover various success/error conditions without the need for connecting to a live service.
|
||||
|
||||
Please see https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/samples/fakes for details and examples on how to use fakes.
|
||||
*/
|
||||
package azcore
|
||||
|
||||
20
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported/pipeline.go
generated
vendored
20
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported/pipeline.go
generated
vendored
@@ -8,10 +8,7 @@ package exported
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"net/http"
|
||||
|
||||
"golang.org/x/net/http/httpguts"
|
||||
)
|
||||
|
||||
// Policy represents an extensibility point for the Pipeline that can mutate the specified
|
||||
@@ -75,23 +72,6 @@ func (p Pipeline) Do(req *Request) (*http.Response, error) {
|
||||
if req == nil {
|
||||
return nil, errors.New("request cannot be nil")
|
||||
}
|
||||
// check copied from Transport.roundTrip()
|
||||
for k, vv := range req.Raw().Header {
|
||||
if !httpguts.ValidHeaderFieldName(k) {
|
||||
if req.Raw().Body != nil {
|
||||
req.Raw().Body.Close()
|
||||
}
|
||||
return nil, fmt.Errorf("invalid header field name %q", k)
|
||||
}
|
||||
for _, v := range vv {
|
||||
if !httpguts.ValidHeaderFieldValue(v) {
|
||||
if req.Raw().Body != nil {
|
||||
req.Raw().Body.Close()
|
||||
}
|
||||
return nil, fmt.Errorf("invalid header field value %q for key %v", v, k)
|
||||
}
|
||||
}
|
||||
}
|
||||
req.policies = p.policies
|
||||
return req.Next()
|
||||
}
|
||||
|
||||
48
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported/response_error.go
generated
vendored
48
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported/response_error.go
generated
vendored
@@ -113,33 +113,45 @@ type ResponseError struct {
|
||||
// Error implements the error interface for type ResponseError.
|
||||
// Note that the message contents are not contractual and can change over time.
|
||||
func (e *ResponseError) Error() string {
|
||||
const separator = "--------------------------------------------------------------------------------"
|
||||
// write the request method and URL with response status code
|
||||
msg := &bytes.Buffer{}
|
||||
fmt.Fprintf(msg, "%s %s://%s%s\n", e.RawResponse.Request.Method, e.RawResponse.Request.URL.Scheme, e.RawResponse.Request.URL.Host, e.RawResponse.Request.URL.Path)
|
||||
fmt.Fprintln(msg, "--------------------------------------------------------------------------------")
|
||||
fmt.Fprintf(msg, "RESPONSE %d: %s\n", e.RawResponse.StatusCode, e.RawResponse.Status)
|
||||
if e.RawResponse != nil {
|
||||
if e.RawResponse.Request != nil {
|
||||
fmt.Fprintf(msg, "%s %s://%s%s\n", e.RawResponse.Request.Method, e.RawResponse.Request.URL.Scheme, e.RawResponse.Request.URL.Host, e.RawResponse.Request.URL.Path)
|
||||
} else {
|
||||
fmt.Fprintln(msg, "Request information not available")
|
||||
}
|
||||
fmt.Fprintln(msg, separator)
|
||||
fmt.Fprintf(msg, "RESPONSE %d: %s\n", e.RawResponse.StatusCode, e.RawResponse.Status)
|
||||
} else {
|
||||
fmt.Fprintln(msg, "Missing RawResponse")
|
||||
fmt.Fprintln(msg, separator)
|
||||
}
|
||||
if e.ErrorCode != "" {
|
||||
fmt.Fprintf(msg, "ERROR CODE: %s\n", e.ErrorCode)
|
||||
} else {
|
||||
fmt.Fprintln(msg, "ERROR CODE UNAVAILABLE")
|
||||
}
|
||||
fmt.Fprintln(msg, "--------------------------------------------------------------------------------")
|
||||
body, err := exported.Payload(e.RawResponse, nil)
|
||||
if err != nil {
|
||||
// this really shouldn't fail at this point as the response
|
||||
// body is already cached (it was read in NewResponseError)
|
||||
fmt.Fprintf(msg, "Error reading response body: %v", err)
|
||||
} else if len(body) > 0 {
|
||||
if err := json.Indent(msg, body, "", " "); err != nil {
|
||||
// failed to pretty-print so just dump it verbatim
|
||||
fmt.Fprint(msg, string(body))
|
||||
if e.RawResponse != nil {
|
||||
fmt.Fprintln(msg, separator)
|
||||
body, err := exported.Payload(e.RawResponse, nil)
|
||||
if err != nil {
|
||||
// this really shouldn't fail at this point as the response
|
||||
// body is already cached (it was read in NewResponseError)
|
||||
fmt.Fprintf(msg, "Error reading response body: %v", err)
|
||||
} else if len(body) > 0 {
|
||||
if err := json.Indent(msg, body, "", " "); err != nil {
|
||||
// failed to pretty-print so just dump it verbatim
|
||||
fmt.Fprint(msg, string(body))
|
||||
}
|
||||
// the standard library doesn't have a pretty-printer for XML
|
||||
fmt.Fprintln(msg)
|
||||
} else {
|
||||
fmt.Fprintln(msg, "Response contained no body")
|
||||
}
|
||||
// the standard library doesn't have a pretty-printer for XML
|
||||
fmt.Fprintln(msg)
|
||||
} else {
|
||||
fmt.Fprintln(msg, "Response contained no body")
|
||||
}
|
||||
fmt.Fprintln(msg, "--------------------------------------------------------------------------------")
|
||||
fmt.Fprintln(msg, separator)
|
||||
|
||||
return msg.String()
|
||||
}
|
||||
|
||||
4
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/shared/constants.go
generated
vendored
4
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/shared/constants.go
generated
vendored
@@ -31,10 +31,12 @@ const (
|
||||
|
||||
const BearerTokenPrefix = "Bearer "
|
||||
|
||||
const TracingNamespaceAttrName = "az.namespace"
|
||||
|
||||
const (
|
||||
// Module is the name of the calling module used in telemetry data.
|
||||
Module = "azcore"
|
||||
|
||||
// Version is the semantic version (see http://semver.org) of this module.
|
||||
Version = "v1.9.0-beta.1"
|
||||
Version = "v1.9.0"
|
||||
)
|
||||
|
||||
65
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/shared/shared.go
generated
vendored
65
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/shared/shared.go
generated
vendored
@@ -14,10 +14,11 @@ import (
|
||||
"regexp"
|
||||
"strconv"
|
||||
"time"
|
||||
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/internal/errorinfo"
|
||||
)
|
||||
|
||||
// NOTE: when adding a new context key type, it likely needs to be
|
||||
// added to the deny-list of key types in ContextWithDeniedValues
|
||||
|
||||
// CtxWithHTTPHeaderKey is used as a context key for adding/retrieving http.Header.
|
||||
type CtxWithHTTPHeaderKey struct{}
|
||||
|
||||
@@ -86,49 +87,21 @@ func ValidateModVer(moduleVersion string) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
// ExtractModuleName returns "module", "package.Client" from "module/package.Client" or
|
||||
// "package", "package.Client" from "package.Client" when there's no "module/" prefix.
|
||||
// If clientName is malformed, an error is returned.
|
||||
func ExtractModuleName(clientName string) (string, string, error) {
|
||||
// uses unnamed capturing for "module", "package.Client", and "package"
|
||||
regex, err := regexp.Compile(`^(?:([a-z0-9]+)/)?(([a-z0-9]+)\.(?:[A-Za-z0-9]+))$`)
|
||||
if err != nil {
|
||||
return "", "", err
|
||||
// ContextWithDeniedValues wraps an existing [context.Context], denying access to certain context values.
|
||||
// Pipeline policies that create new requests to be sent down their own pipeline MUST wrap the caller's
|
||||
// context with an instance of this type. This is to prevent context values from flowing across disjoint
|
||||
// requests which can have unintended side-effects.
|
||||
type ContextWithDeniedValues struct {
|
||||
context.Context
|
||||
}
|
||||
|
||||
// Value implements part of the [context.Context] interface.
|
||||
// It acts as a deny-list for certain context keys.
|
||||
func (c *ContextWithDeniedValues) Value(key any) any {
|
||||
switch key.(type) {
|
||||
case CtxAPINameKey, CtxWithCaptureResponse, CtxWithHTTPHeaderKey, CtxWithRetryOptionsKey, CtxWithTracingTracer:
|
||||
return nil
|
||||
default:
|
||||
return c.Context.Value(key)
|
||||
}
|
||||
|
||||
matches := regex.FindStringSubmatch(clientName)
|
||||
if len(matches) < 4 {
|
||||
return "", "", fmt.Errorf("malformed clientName %s", clientName)
|
||||
}
|
||||
|
||||
// the first match is the entire string, the second is "module", the third is
|
||||
// "package.Client" and the fourth is "package".
|
||||
// if there was no "module/" prefix, the second match will be the empty string
|
||||
if matches[1] != "" {
|
||||
return matches[1], matches[2], nil
|
||||
}
|
||||
return matches[3], matches[2], nil
|
||||
}
|
||||
|
||||
// NonRetriableError marks the specified error as non-retriable.
|
||||
func NonRetriableError(err error) error {
|
||||
return &nonRetriableError{err}
|
||||
}
|
||||
|
||||
type nonRetriableError struct {
|
||||
error
|
||||
}
|
||||
|
||||
func (p *nonRetriableError) Error() string {
|
||||
return p.error.Error()
|
||||
}
|
||||
|
||||
func (*nonRetriableError) NonRetriable() {
|
||||
// marker method
|
||||
}
|
||||
|
||||
func (p *nonRetriableError) Unwrap() error {
|
||||
return p.error
|
||||
}
|
||||
|
||||
var _ errorinfo.NonRetriable = (*nonRetriableError)(nil)
|
||||
|
||||
3
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/policy/policy.go
generated
vendored
3
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/policy/policy.go
generated
vendored
@@ -29,7 +29,8 @@ type Transporter = exported.Transporter
|
||||
type Request = exported.Request
|
||||
|
||||
// ClientOptions contains optional settings for a client's pipeline.
|
||||
// All zero-value fields will be initialized with default values.
|
||||
// Instances can be shared across calls to SDK client constructors when uniform configuration is desired.
|
||||
// Zero-value fields will have their specified default values applied during use.
|
||||
type ClientOptions struct {
|
||||
// APIVersion overrides the default version requested of the service.
|
||||
// Set with caution as this package version has not been tested with arbitrary service versions.
|
||||
|
||||
14
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/pager.go
generated
vendored
14
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/pager.go
generated
vendored
@@ -59,8 +59,6 @@ func (p *Pager[T]) More() bool {
|
||||
|
||||
// NextPage advances the pager to the next page.
|
||||
func (p *Pager[T]) NextPage(ctx context.Context) (T, error) {
|
||||
var resp T
|
||||
var err error
|
||||
if p.current != nil {
|
||||
if p.firstPage {
|
||||
// we get here if it's an LRO-pager, we already have the first page
|
||||
@@ -69,16 +67,16 @@ func (p *Pager[T]) NextPage(ctx context.Context) (T, error) {
|
||||
} else if !p.handler.More(*p.current) {
|
||||
return *new(T), errors.New("no more pages")
|
||||
}
|
||||
ctx, endSpan := StartSpan(ctx, fmt.Sprintf("%s.NextPage", shortenTypeName(reflect.TypeOf(*p).Name())), p.tracer, nil)
|
||||
defer endSpan(err)
|
||||
resp, err = p.handler.Fetcher(ctx, p.current)
|
||||
} else {
|
||||
// non-LRO case, first page
|
||||
p.firstPage = false
|
||||
ctx, endSpan := StartSpan(ctx, fmt.Sprintf("%s.NextPage", shortenTypeName(reflect.TypeOf(*p).Name())), p.tracer, nil)
|
||||
defer endSpan(err)
|
||||
resp, err = p.handler.Fetcher(ctx, nil)
|
||||
}
|
||||
|
||||
var err error
|
||||
ctx, endSpan := StartSpan(ctx, fmt.Sprintf("%s.NextPage", shortenTypeName(reflect.TypeOf(*p).Name())), p.tracer, nil)
|
||||
defer func() { endSpan(err) }()
|
||||
|
||||
resp, err := p.handler.Fetcher(ctx, p.current)
|
||||
if err != nil {
|
||||
return *new(T), err
|
||||
}
|
||||
|
||||
10
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/pipeline.go
generated
vendored
10
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/pipeline.go
generated
vendored
@@ -34,8 +34,14 @@ type PipelineOptions struct {
|
||||
// Each policy is executed once per request, and for each retry of that request.
|
||||
PerRetry []policy.Policy
|
||||
|
||||
// TracingNamespace contains the value to use for the az.namespace span attribute.
|
||||
TracingNamespace string
|
||||
// Tracing contains options used to configure distributed tracing.
|
||||
Tracing TracingOptions
|
||||
}
|
||||
|
||||
// TracingOptions contains tracing options for SDK developers.
|
||||
type TracingOptions struct {
|
||||
// Namespace contains the value to use for the az.namespace span attribute.
|
||||
Namespace string
|
||||
}
|
||||
|
||||
// Pipeline represents a primitive for sending HTTP requests and receiving responses.
|
||||
|
||||
26
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_bearer_token.go
generated
vendored
26
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_bearer_token.go
generated
vendored
@@ -12,6 +12,7 @@ import (
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/shared"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/policy"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/internal/errorinfo"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/internal/temporal"
|
||||
)
|
||||
|
||||
@@ -34,7 +35,7 @@ type acquiringResourceState struct {
|
||||
// acquire acquires or updates the resource; only one
|
||||
// thread/goroutine at a time ever calls this function
|
||||
func acquire(state acquiringResourceState) (newResource exported.AccessToken, newExpiration time.Time, err error) {
|
||||
tk, err := state.p.cred.GetToken(state.req.Raw().Context(), state.tro)
|
||||
tk, err := state.p.cred.GetToken(&shared.ContextWithDeniedValues{Context: state.req.Raw().Context()}, state.tro)
|
||||
if err != nil {
|
||||
return exported.AccessToken{}, time.Time{}, err
|
||||
}
|
||||
@@ -72,9 +73,17 @@ func (b *BearerTokenPolicy) authenticateAndAuthorize(req *policy.Request) func(p
|
||||
|
||||
// Do authorizes a request with a bearer token
|
||||
func (b *BearerTokenPolicy) Do(req *policy.Request) (*http.Response, error) {
|
||||
if strings.ToLower(req.Raw().URL.Scheme) != "https" {
|
||||
return nil, shared.NonRetriableError(errors.New("bearer token authentication is not permitted for non TLS protected (https) endpoints"))
|
||||
// skip adding the authorization header if no TokenCredential was provided.
|
||||
// this prevents a panic that might be hard to diagnose and allows testing
|
||||
// against http endpoints that don't require authentication.
|
||||
if b.cred == nil {
|
||||
return req.Next()
|
||||
}
|
||||
|
||||
if err := checkHTTPSForAuth(req); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var err error
|
||||
if b.authzHandler.OnRequest != nil {
|
||||
err = b.authzHandler.OnRequest(req, b.authenticateAndAuthorize(req))
|
||||
@@ -82,7 +91,7 @@ func (b *BearerTokenPolicy) Do(req *policy.Request) (*http.Response, error) {
|
||||
err = b.authenticateAndAuthorize(req)(policy.TokenRequestOptions{Scopes: b.scopes})
|
||||
}
|
||||
if err != nil {
|
||||
return nil, shared.NonRetriableError(err)
|
||||
return nil, errorinfo.NonRetriableError(err)
|
||||
}
|
||||
|
||||
res, err := req.Next()
|
||||
@@ -99,7 +108,14 @@ func (b *BearerTokenPolicy) Do(req *policy.Request) (*http.Response, error) {
|
||||
}
|
||||
}
|
||||
if err != nil {
|
||||
err = shared.NonRetriableError(err)
|
||||
err = errorinfo.NonRetriableError(err)
|
||||
}
|
||||
return res, err
|
||||
}
|
||||
|
||||
func checkHTTPSForAuth(req *policy.Request) error {
|
||||
if strings.ToLower(req.Raw().URL.Scheme) != "https" {
|
||||
return errorinfo.NonRetriableError(errors.New("authenticated requests are not permitted for non TLS protected (https) endpoints"))
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
20
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_http_trace.go
generated
vendored
20
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_http_trace.go
generated
vendored
@@ -8,8 +8,10 @@ package runtime
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"strings"
|
||||
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported"
|
||||
@@ -44,7 +46,7 @@ type httpTracePolicy struct {
|
||||
// Do implements the pipeline.Policy interfaces for the httpTracePolicy type.
|
||||
func (h *httpTracePolicy) Do(req *policy.Request) (resp *http.Response, err error) {
|
||||
rawTracer := req.Raw().Context().Value(shared.CtxWithTracingTracer{})
|
||||
if tracer, ok := rawTracer.(tracing.Tracer); ok {
|
||||
if tracer, ok := rawTracer.(tracing.Tracer); ok && tracer.Enabled() {
|
||||
attributes := []tracing.Attribute{
|
||||
{Key: attrHTTPMethod, Value: req.Raw().Method},
|
||||
{Key: attrHTTPURL, Value: getSanitizedURL(*req.Raw().URL, h.allowedQP)},
|
||||
@@ -74,9 +76,14 @@ func (h *httpTracePolicy) Do(req *policy.Request) (resp *http.Response, err erro
|
||||
span.SetAttributes(tracing.Attribute{Key: attrAZServiceReqID, Value: reqID})
|
||||
}
|
||||
} else if err != nil {
|
||||
// including the output from err.Error() might disclose URL query parameters.
|
||||
// so instead of attempting to sanitize the output, we simply output the error type.
|
||||
span.SetStatus(tracing.SpanStatusError, fmt.Sprintf("%T", err))
|
||||
var urlErr *url.Error
|
||||
if errors.As(err, &urlErr) {
|
||||
// calling *url.Error.Error() will include the unsanitized URL
|
||||
// which we don't want. in addition, we already have the HTTP verb
|
||||
// and sanitized URL in the trace so we aren't losing any info
|
||||
err = urlErr.Err
|
||||
}
|
||||
span.SetStatus(tracing.SpanStatusError, err.Error())
|
||||
}
|
||||
span.End()
|
||||
}()
|
||||
@@ -103,6 +110,10 @@ func StartSpan(ctx context.Context, name string, tracer tracing.Tracer, options
|
||||
if !tracer.Enabled() {
|
||||
return ctx, func(err error) {}
|
||||
}
|
||||
|
||||
// we MUST propagate the active tracer before returning so that the trace policy can access it
|
||||
ctx = context.WithValue(ctx, shared.CtxWithTracingTracer{}, tracer)
|
||||
|
||||
const newSpanKind = tracing.SpanKindInternal
|
||||
if activeSpan := ctx.Value(ctxActiveSpan{}); activeSpan != nil {
|
||||
// per the design guidelines, if a SDK method Foo() calls SDK method Bar(),
|
||||
@@ -118,7 +129,6 @@ func StartSpan(ctx context.Context, name string, tracer tracing.Tracer, options
|
||||
ctx, span := tracer.Start(ctx, name, &tracing.SpanOptions{
|
||||
Kind: newSpanKind,
|
||||
})
|
||||
ctx = context.WithValue(ctx, shared.CtxWithTracingTracer{}, tracer)
|
||||
ctx = context.WithValue(ctx, ctxActiveSpan{}, newSpanKind)
|
||||
return ctx, func(err error) {
|
||||
if err != nil {
|
||||
|
||||
16
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_key_credential.go
generated
vendored
16
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_key_credential.go
generated
vendored
@@ -40,10 +40,18 @@ func NewKeyCredentialPolicy(cred *exported.KeyCredential, header string, options
|
||||
|
||||
// Do implementes the Do method on the [policy.Polilcy] interface.
|
||||
func (k *KeyCredentialPolicy) Do(req *policy.Request) (*http.Response, error) {
|
||||
val := exported.KeyCredentialGet(k.cred)
|
||||
if k.prefix != "" {
|
||||
val = k.prefix + val
|
||||
// skip adding the authorization header if no KeyCredential was provided.
|
||||
// this prevents a panic that might be hard to diagnose and allows testing
|
||||
// against http endpoints that don't require authentication.
|
||||
if k.cred != nil {
|
||||
if err := checkHTTPSForAuth(req); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
val := exported.KeyCredentialGet(k.cred)
|
||||
if k.prefix != "" {
|
||||
val = k.prefix + val
|
||||
}
|
||||
req.Raw().Header.Add(k.header, val)
|
||||
}
|
||||
req.Raw().Header.Add(k.header, val)
|
||||
return req.Next()
|
||||
}
|
||||
|
||||
3
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_logging.go
generated
vendored
3
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_logging.go
generated
vendored
@@ -191,7 +191,8 @@ func (p *logPolicy) writeHeader(b *bytes.Buffer, header http.Header) {
|
||||
}
|
||||
sort.Strings(keys)
|
||||
for _, k := range keys {
|
||||
value := header.Get(k)
|
||||
// don't use Get() as it will canonicalize k which might cause a mismatch
|
||||
value := header[k][0]
|
||||
// redact all header values not in the allow-list
|
||||
if _, ok := p.allowedHeaders[strings.ToLower(k)]; !ok {
|
||||
value = redactedValue
|
||||
|
||||
10
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_sas_credential.go
generated
vendored
10
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_sas_credential.go
generated
vendored
@@ -34,6 +34,14 @@ func NewSASCredentialPolicy(cred *exported.SASCredential, header string, options
|
||||
|
||||
// Do implementes the Do method on the [policy.Polilcy] interface.
|
||||
func (k *SASCredentialPolicy) Do(req *policy.Request) (*http.Response, error) {
|
||||
req.Raw().Header.Add(k.header, exported.SASCredentialGet(k.cred))
|
||||
// skip adding the authorization header if no SASCredential was provided.
|
||||
// this prevents a panic that might be hard to diagnose and allows testing
|
||||
// against http endpoints that don't require authentication.
|
||||
if k.cred != nil {
|
||||
if err := checkHTTPSForAuth(req); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
req.Raw().Header.Add(k.header, exported.SASCredentialGet(k.cred))
|
||||
}
|
||||
return req.Next()
|
||||
}
|
||||
|
||||
4
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_telemetry.go
generated
vendored
4
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/policy_telemetry.go
generated
vendored
@@ -43,6 +43,10 @@ func NewTelemetryPolicy(mod, ver string, o *policy.TelemetryOptions) policy.Poli
|
||||
b.WriteString(o.ApplicationID)
|
||||
b.WriteRune(' ')
|
||||
}
|
||||
// mod might be the fully qualified name. in that case, we just want the package name
|
||||
if i := strings.LastIndex(mod, "/"); i > -1 {
|
||||
mod = mod[i+1:]
|
||||
}
|
||||
b.WriteString(formatTelemetry(mod, ver))
|
||||
b.WriteRune(' ')
|
||||
b.WriteString(platformInfo)
|
||||
|
||||
84
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/request.go
generated
vendored
84
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime/request.go
generated
vendored
@@ -15,11 +15,8 @@ import (
|
||||
"io"
|
||||
"mime/multipart"
|
||||
"net/url"
|
||||
"os"
|
||||
"path"
|
||||
"reflect"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/exported"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/internal/shared"
|
||||
@@ -105,9 +102,6 @@ func MarshalAsByteArray(req *policy.Request, v []byte, format Base64Encoding) er
|
||||
|
||||
// MarshalAsJSON calls json.Marshal() to get the JSON encoding of v then calls SetBody.
|
||||
func MarshalAsJSON(req *policy.Request, v interface{}) error {
|
||||
if omit := os.Getenv("AZURE_SDK_GO_OMIT_READONLY"); omit == "true" {
|
||||
v = cloneWithoutReadOnlyFields(v)
|
||||
}
|
||||
b, err := json.Marshal(v)
|
||||
if err != nil {
|
||||
return fmt.Errorf("error marshalling type %T: %s", v, err)
|
||||
@@ -181,81 +175,3 @@ func SkipBodyDownload(req *policy.Request) {
|
||||
|
||||
// CtxAPINameKey is used as a context key for adding/retrieving the API name.
|
||||
type CtxAPINameKey = shared.CtxAPINameKey
|
||||
|
||||
// returns a clone of the object graph pointed to by v, omitting values of all read-only
|
||||
// fields. if there are no read-only fields in the object graph, no clone is created.
|
||||
func cloneWithoutReadOnlyFields(v interface{}) interface{} {
|
||||
val := reflect.Indirect(reflect.ValueOf(v))
|
||||
if val.Kind() != reflect.Struct {
|
||||
// not a struct, skip
|
||||
return v
|
||||
}
|
||||
// first walk the graph to find any R/O fields.
|
||||
// if there aren't any, skip cloning the graph.
|
||||
if !recursiveFindReadOnlyField(val) {
|
||||
return v
|
||||
}
|
||||
return recursiveCloneWithoutReadOnlyFields(val)
|
||||
}
|
||||
|
||||
// returns true if any field in the object graph of val contains the `azure:"ro"` tag value
|
||||
func recursiveFindReadOnlyField(val reflect.Value) bool {
|
||||
t := val.Type()
|
||||
// iterate over the fields, looking for the "azure" tag.
|
||||
for i := 0; i < t.NumField(); i++ {
|
||||
field := t.Field(i)
|
||||
aztag := field.Tag.Get("azure")
|
||||
if azureTagIsReadOnly(aztag) {
|
||||
return true
|
||||
} else if reflect.Indirect(val.Field(i)).Kind() == reflect.Struct && recursiveFindReadOnlyField(reflect.Indirect(val.Field(i))) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
// clones the object graph of val. all non-R/O properties are copied to the clone
|
||||
func recursiveCloneWithoutReadOnlyFields(val reflect.Value) interface{} {
|
||||
t := val.Type()
|
||||
clone := reflect.New(t)
|
||||
// iterate over the fields, looking for the "azure" tag.
|
||||
for i := 0; i < t.NumField(); i++ {
|
||||
field := t.Field(i)
|
||||
aztag := field.Tag.Get("azure")
|
||||
if azureTagIsReadOnly(aztag) {
|
||||
// omit from payload
|
||||
continue
|
||||
}
|
||||
// clone field will receive the same value as the source field...
|
||||
value := val.Field(i)
|
||||
v := reflect.Indirect(value)
|
||||
if v.IsValid() && v.Type() != reflect.TypeOf(time.Time{}) && v.Kind() == reflect.Struct {
|
||||
// ...unless the source value is a struct, in which case we recurse to clone that struct.
|
||||
// (We can't recursively clone time.Time because it contains unexported fields.)
|
||||
c := recursiveCloneWithoutReadOnlyFields(v)
|
||||
if field.Anonymous {
|
||||
// NOTE: this does not handle the case of embedded fields of unexported struct types.
|
||||
// this should be ok as we don't generate any code like this at present
|
||||
value = reflect.Indirect(reflect.ValueOf(c))
|
||||
} else {
|
||||
value = reflect.ValueOf(c)
|
||||
}
|
||||
}
|
||||
reflect.Indirect(clone).Field(i).Set(value)
|
||||
}
|
||||
return clone.Interface()
|
||||
}
|
||||
|
||||
// returns true if the "azure" tag contains the option "ro"
|
||||
func azureTagIsReadOnly(tag string) bool {
|
||||
if tag == "" {
|
||||
return false
|
||||
}
|
||||
parts := strings.Split(tag, ",")
|
||||
for _, part := range parts {
|
||||
if part == "ro" {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -11,6 +11,8 @@ import (
|
||||
"net"
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
"golang.org/x/net/http2"
|
||||
)
|
||||
|
||||
var defaultHTTPClient *http.Client
|
||||
@@ -24,6 +26,7 @@ func init() {
|
||||
}),
|
||||
ForceAttemptHTTP2: true,
|
||||
MaxIdleConns: 100,
|
||||
MaxIdleConnsPerHost: 10,
|
||||
IdleConnTimeout: 90 * time.Second,
|
||||
TLSHandshakeTimeout: 10 * time.Second,
|
||||
ExpectContinueTimeout: 1 * time.Second,
|
||||
@@ -32,6 +35,13 @@ func init() {
|
||||
Renegotiation: tls.RenegotiateFreelyAsClient,
|
||||
},
|
||||
}
|
||||
// TODO: evaluate removing this once https://github.com/golang/go/issues/59690 has been fixed
|
||||
if http2Transport, err := http2.ConfigureTransports(defaultTransport); err == nil {
|
||||
// if the connection has been idle for 10 seconds, send a ping frame for a health check
|
||||
http2Transport.ReadIdleTimeout = 10 * time.Second
|
||||
// if there's no response to the ping within the timeout, the connection will be closed
|
||||
http2Transport.PingTimeout = 5 * time.Second
|
||||
}
|
||||
defaultHTTPClient = &http.Client{
|
||||
Transport: defaultTransport,
|
||||
}
|
||||
|
||||
10
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/tracing/tracing.go
generated
vendored
10
vendor/github.com/Azure/azure-sdk-for-go/sdk/azcore/tracing/tracing.go
generated
vendored
@@ -31,12 +31,12 @@ type Provider struct {
|
||||
newTracerFn func(name, version string) Tracer
|
||||
}
|
||||
|
||||
// NewTracer creates a new Tracer for the specified name and version.
|
||||
// - name - the name of the tracer object, typically the fully qualified name of the service client
|
||||
// - version - the version of the module in which the service client resides
|
||||
func (p Provider) NewTracer(name, version string) (tracer Tracer) {
|
||||
// NewTracer creates a new Tracer for the specified module name and version.
|
||||
// - module - the fully qualified name of the module
|
||||
// - version - the version of the module
|
||||
func (p Provider) NewTracer(module, version string) (tracer Tracer) {
|
||||
if p.newTracerFn != nil {
|
||||
tracer = p.newTracerFn(name, version)
|
||||
tracer = p.newTracerFn(module, version)
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
30
vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/errorinfo/errorinfo.go
generated
vendored
30
vendor/github.com/Azure/azure-sdk-for-go/sdk/internal/errorinfo/errorinfo.go
generated
vendored
@@ -14,3 +14,33 @@ type NonRetriable interface {
|
||||
error
|
||||
NonRetriable()
|
||||
}
|
||||
|
||||
// NonRetriableError marks the specified error as non-retriable.
|
||||
// This function takes an error as input and returns a new error that is marked as non-retriable.
|
||||
func NonRetriableError(err error) error {
|
||||
return &nonRetriableError{err}
|
||||
}
|
||||
|
||||
// nonRetriableError is a struct that embeds the error interface.
|
||||
// It is used to represent errors that should not be retried.
|
||||
type nonRetriableError struct {
|
||||
error
|
||||
}
|
||||
|
||||
// Error method for nonRetriableError struct.
|
||||
// It returns the error message of the embedded error.
|
||||
func (p *nonRetriableError) Error() string {
|
||||
return p.error.Error()
|
||||
}
|
||||
|
||||
// NonRetriable is a marker method for nonRetriableError struct.
|
||||
// Non-functional and indicates that the error is non-retriable.
|
||||
func (*nonRetriableError) NonRetriable() {
|
||||
// marker method
|
||||
}
|
||||
|
||||
// Unwrap method for nonRetriableError struct.
|
||||
// It returns the original error that was marked as non-retriable.
|
||||
func (p *nonRetriableError) Unwrap() error {
|
||||
return p.error
|
||||
}
|
||||
|
||||
21
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/CHANGELOG.md
generated
vendored
Normal file
21
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/CHANGELOG.md
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
# Release History
|
||||
|
||||
## 1.2.0 (2023-11-24)
|
||||
### Features Added
|
||||
|
||||
- Support for test fakes and OpenTelemetry trace spans.
|
||||
|
||||
|
||||
## 1.1.0 (2023-03-28)
|
||||
### Features Added
|
||||
|
||||
- New struct `ClientFactory` which is a client factory used to create any client in this module
|
||||
|
||||
|
||||
## 1.0.0 (2022-05-17)
|
||||
|
||||
The package of `github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns` is using our [next generation design principles](https://azure.github.io/azure-sdk/general_introduction.html) since version 1.0.0, which contains breaking changes.
|
||||
|
||||
To migrate the existing applications to the latest version, please refer to [Migration Guide](https://aka.ms/azsdk/go/mgmt/migration).
|
||||
|
||||
To learn more, please refer to our documentation [Quick Start](https://aka.ms/azsdk/go/mgmt).
|
||||
21
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/LICENSE.txt
generated
vendored
Normal file
21
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/LICENSE.txt
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
92
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/README.md
generated
vendored
Normal file
92
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/README.md
generated
vendored
Normal file
@@ -0,0 +1,92 @@
|
||||
# Azure DNS Module for Go
|
||||
|
||||
[](https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns)
|
||||
|
||||
The `armdns` module provides operations for working with Azure DNS.
|
||||
|
||||
[Source code](https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/resourcemanager/dns/armdns)
|
||||
|
||||
# Getting started
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- an [Azure subscription](https://azure.microsoft.com/free/)
|
||||
- Go 1.18 or above (You could download and install the latest version of Go from [here](https://go.dev/doc/install). It will replace the existing Go on your machine. If you want to install multiple Go versions on the same machine, you could refer this [doc](https://go.dev/doc/manage-install).)
|
||||
|
||||
## Install the package
|
||||
|
||||
This project uses [Go modules](https://github.com/golang/go/wiki/Modules) for versioning and dependency management.
|
||||
|
||||
Install the Azure DNS module:
|
||||
|
||||
```sh
|
||||
go get github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns
|
||||
```
|
||||
|
||||
## Authorization
|
||||
|
||||
When creating a client, you will need to provide a credential for authenticating with Azure DNS. The `azidentity` module provides facilities for various ways of authenticating with Azure including client/secret, certificate, managed identity, and more.
|
||||
|
||||
```go
|
||||
cred, err := azidentity.NewDefaultAzureCredential(nil)
|
||||
```
|
||||
|
||||
For more information on authentication, please see the documentation for `azidentity` at [pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity).
|
||||
|
||||
## Client Factory
|
||||
|
||||
Azure DNS module consists of one or more clients. We provide a client factory which could be used to create any client in this module.
|
||||
|
||||
```go
|
||||
clientFactory, err := armdns.NewClientFactory(<subscription ID>, cred, nil)
|
||||
```
|
||||
|
||||
You can use `ClientOptions` in package `github.com/Azure/azure-sdk-for-go/sdk/azcore/arm` to set endpoint to connect with public and sovereign clouds as well as Azure Stack. For more information, please see the documentation for `azcore` at [pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azcore](https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azcore).
|
||||
|
||||
```go
|
||||
options := arm.ClientOptions {
|
||||
ClientOptions: azcore.ClientOptions {
|
||||
Cloud: cloud.AzureChina,
|
||||
},
|
||||
}
|
||||
clientFactory, err := armdns.NewClientFactory(<subscription ID>, cred, &options)
|
||||
```
|
||||
|
||||
## Clients
|
||||
|
||||
A client groups a set of related APIs, providing access to its functionality. Create one or more clients to access the APIs you require using client factory.
|
||||
|
||||
```go
|
||||
client := clientFactory.NewRecordSetsClient()
|
||||
```
|
||||
|
||||
## Fakes
|
||||
|
||||
The fake package contains types used for constructing in-memory fake servers used in unit tests.
|
||||
This allows writing tests to cover various success/error conditions without the need for connecting to a live service.
|
||||
|
||||
Please see https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/samples/fakes for details and examples on how to use fakes.
|
||||
|
||||
## Provide Feedback
|
||||
|
||||
If you encounter bugs or have suggestions, please
|
||||
[open an issue](https://github.com/Azure/azure-sdk-for-go/issues) and assign the `DNS` label.
|
||||
|
||||
# Contributing
|
||||
|
||||
This project welcomes contributions and suggestions. Most contributions require
|
||||
you to agree to a Contributor License Agreement (CLA) declaring that you have
|
||||
the right to, and actually do, grant us the rights to use your contribution.
|
||||
For details, visit [https://cla.microsoft.com](https://cla.microsoft.com).
|
||||
|
||||
When you submit a pull request, a CLA-bot will automatically determine whether
|
||||
you need to provide a CLA and decorate the PR appropriately (e.g., label,
|
||||
comment). Simply follow the instructions provided by the bot. You will only
|
||||
need to do this once across all repos using our CLA.
|
||||
|
||||
This project has adopted the
|
||||
[Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
|
||||
For more information, see the
|
||||
[Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/)
|
||||
or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any
|
||||
additional questions or comments.
|
||||
13
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/autorest.md
generated
vendored
Normal file
13
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/autorest.md
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
### AutoRest Configuration
|
||||
|
||||
> see https://aka.ms/autorest
|
||||
|
||||
``` yaml
|
||||
azure-arm: true
|
||||
require:
|
||||
- https://github.com/Azure/azure-rest-api-specs/blob/c767823fdfd9d5e96bad245e3ea4d14d94a716bb/specification/dns/resource-manager/readme.md
|
||||
- https://github.com/Azure/azure-rest-api-specs/blob/c767823fdfd9d5e96bad245e3ea4d14d94a716bb/specification/dns/resource-manager/readme.go.md
|
||||
license-header: MICROSOFT_MIT_NO_VERSION
|
||||
module-version: 1.2.0
|
||||
|
||||
```
|
||||
7
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/build.go
generated
vendored
Normal file
7
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/build.go
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
|
||||
// This file enables 'go generate' to regenerate this specific SDK
|
||||
//go:generate pwsh ../../../../eng/scripts/build.ps1 -skipBuild -cleanGenerated -format -tidy -generate resourcemanager/dns/armdns
|
||||
|
||||
package armdns
|
||||
28
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/ci.yml
generated
vendored
Normal file
28
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/ci.yml
generated
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
# NOTE: Please refer to https://aka.ms/azsdk/engsys/ci-yaml before editing this file.
|
||||
trigger:
|
||||
branches:
|
||||
include:
|
||||
- main
|
||||
- feature/*
|
||||
- hotfix/*
|
||||
- release/*
|
||||
paths:
|
||||
include:
|
||||
- sdk/resourcemanager/dns/armdns/
|
||||
|
||||
pr:
|
||||
branches:
|
||||
include:
|
||||
- main
|
||||
- feature/*
|
||||
- hotfix/*
|
||||
- release/*
|
||||
paths:
|
||||
include:
|
||||
- sdk/resourcemanager/dns/armdns/
|
||||
|
||||
stages:
|
||||
- template: /eng/pipelines/templates/jobs/archetype-sdk-client.yml
|
||||
parameters:
|
||||
IncludeRelease: true
|
||||
ServiceDirectory: 'resourcemanager/dns/armdns'
|
||||
56
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/client_factory.go
generated
vendored
Normal file
56
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/client_factory.go
generated
vendored
Normal file
@@ -0,0 +1,56 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armdns
|
||||
|
||||
import (
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/arm"
|
||||
)
|
||||
|
||||
// ClientFactory is a client factory used to create any client in this module.
|
||||
// Don't use this type directly, use NewClientFactory instead.
|
||||
type ClientFactory struct {
|
||||
subscriptionID string
|
||||
credential azcore.TokenCredential
|
||||
options *arm.ClientOptions
|
||||
}
|
||||
|
||||
// NewClientFactory creates a new instance of ClientFactory with the specified values.
|
||||
// The parameter values will be propagated to any client created from this factory.
|
||||
// - subscriptionID - Specifies the Azure subscription ID, which uniquely identifies the Microsoft Azure subscription.
|
||||
// - credential - used to authorize requests. Usually a credential from azidentity.
|
||||
// - options - pass nil to accept the default values.
|
||||
func NewClientFactory(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ClientFactory, error) {
|
||||
_, err := arm.NewClient(moduleName, moduleVersion, credential, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &ClientFactory{
|
||||
subscriptionID: subscriptionID, credential: credential,
|
||||
options: options.Clone(),
|
||||
}, nil
|
||||
}
|
||||
|
||||
// NewRecordSetsClient creates a new instance of RecordSetsClient.
|
||||
func (c *ClientFactory) NewRecordSetsClient() *RecordSetsClient {
|
||||
subClient, _ := NewRecordSetsClient(c.subscriptionID, c.credential, c.options)
|
||||
return subClient
|
||||
}
|
||||
|
||||
// NewResourceReferenceClient creates a new instance of ResourceReferenceClient.
|
||||
func (c *ClientFactory) NewResourceReferenceClient() *ResourceReferenceClient {
|
||||
subClient, _ := NewResourceReferenceClient(c.subscriptionID, c.credential, c.options)
|
||||
return subClient
|
||||
}
|
||||
|
||||
// NewZonesClient creates a new instance of ZonesClient.
|
||||
func (c *ClientFactory) NewZonesClient() *ZonesClient {
|
||||
subClient, _ := NewZonesClient(c.subscriptionID, c.credential, c.options)
|
||||
return subClient
|
||||
}
|
||||
61
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/constants.go
generated
vendored
Normal file
61
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/constants.go
generated
vendored
Normal file
@@ -0,0 +1,61 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armdns
|
||||
|
||||
const (
|
||||
moduleName = "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns"
|
||||
moduleVersion = "v1.2.0"
|
||||
)
|
||||
|
||||
type RecordType string
|
||||
|
||||
const (
|
||||
RecordTypeA RecordType = "A"
|
||||
RecordTypeAAAA RecordType = "AAAA"
|
||||
RecordTypeCAA RecordType = "CAA"
|
||||
RecordTypeCNAME RecordType = "CNAME"
|
||||
RecordTypeMX RecordType = "MX"
|
||||
RecordTypeNS RecordType = "NS"
|
||||
RecordTypePTR RecordType = "PTR"
|
||||
RecordTypeSOA RecordType = "SOA"
|
||||
RecordTypeSRV RecordType = "SRV"
|
||||
RecordTypeTXT RecordType = "TXT"
|
||||
)
|
||||
|
||||
// PossibleRecordTypeValues returns the possible values for the RecordType const type.
|
||||
func PossibleRecordTypeValues() []RecordType {
|
||||
return []RecordType{
|
||||
RecordTypeA,
|
||||
RecordTypeAAAA,
|
||||
RecordTypeCAA,
|
||||
RecordTypeCNAME,
|
||||
RecordTypeMX,
|
||||
RecordTypeNS,
|
||||
RecordTypePTR,
|
||||
RecordTypeSOA,
|
||||
RecordTypeSRV,
|
||||
RecordTypeTXT,
|
||||
}
|
||||
}
|
||||
|
||||
// ZoneType - The type of this DNS zone (Public or Private).
|
||||
type ZoneType string
|
||||
|
||||
const (
|
||||
ZoneTypePrivate ZoneType = "Private"
|
||||
ZoneTypePublic ZoneType = "Public"
|
||||
)
|
||||
|
||||
// PossibleZoneTypeValues returns the possible values for the ZoneType const type.
|
||||
func PossibleZoneTypeValues() []ZoneType {
|
||||
return []ZoneType{
|
||||
ZoneTypePrivate,
|
||||
ZoneTypePublic,
|
||||
}
|
||||
}
|
||||
311
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/models.go
generated
vendored
Normal file
311
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/models.go
generated
vendored
Normal file
@@ -0,0 +1,311 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armdns
|
||||
|
||||
// ARecord - An A record.
|
||||
type ARecord struct {
|
||||
// The IPv4 address of this A record.
|
||||
IPv4Address *string
|
||||
}
|
||||
|
||||
// AaaaRecord - An AAAA record.
|
||||
type AaaaRecord struct {
|
||||
// The IPv6 address of this AAAA record.
|
||||
IPv6Address *string
|
||||
}
|
||||
|
||||
// CaaRecord - A CAA record.
|
||||
type CaaRecord struct {
|
||||
// The flags for this CAA record as an integer between 0 and 255.
|
||||
Flags *int32
|
||||
|
||||
// The tag for this CAA record.
|
||||
Tag *string
|
||||
|
||||
// The value for this CAA record.
|
||||
Value *string
|
||||
}
|
||||
|
||||
// CnameRecord - A CNAME record.
|
||||
type CnameRecord struct {
|
||||
// The canonical name for this CNAME record.
|
||||
Cname *string
|
||||
}
|
||||
|
||||
// MxRecord - An MX record.
|
||||
type MxRecord struct {
|
||||
// The domain name of the mail host for this MX record.
|
||||
Exchange *string
|
||||
|
||||
// The preference value for this MX record.
|
||||
Preference *int32
|
||||
}
|
||||
|
||||
// NsRecord - An NS record.
|
||||
type NsRecord struct {
|
||||
// The name server name for this NS record.
|
||||
Nsdname *string
|
||||
}
|
||||
|
||||
// PtrRecord - A PTR record.
|
||||
type PtrRecord struct {
|
||||
// The PTR target domain name for this PTR record.
|
||||
Ptrdname *string
|
||||
}
|
||||
|
||||
// RecordSet - Describes a DNS record set (a collection of DNS records with the same name and type).
|
||||
type RecordSet struct {
|
||||
// The etag of the record set.
|
||||
Etag *string
|
||||
|
||||
// The properties of the record set.
|
||||
Properties *RecordSetProperties
|
||||
|
||||
// READ-ONLY; The ID of the record set.
|
||||
ID *string
|
||||
|
||||
// READ-ONLY; The name of the record set.
|
||||
Name *string
|
||||
|
||||
// READ-ONLY; The type of the record set.
|
||||
Type *string
|
||||
}
|
||||
|
||||
// RecordSetListResult - The response to a record set List operation.
|
||||
type RecordSetListResult struct {
|
||||
// Information about the record sets in the response.
|
||||
Value []*RecordSet
|
||||
|
||||
// READ-ONLY; The continuation token for the next page of results.
|
||||
NextLink *string
|
||||
}
|
||||
|
||||
// RecordSetProperties - Represents the properties of the records in the record set.
|
||||
type RecordSetProperties struct {
|
||||
// The list of A records in the record set.
|
||||
ARecords []*ARecord
|
||||
|
||||
// The list of AAAA records in the record set.
|
||||
AaaaRecords []*AaaaRecord
|
||||
|
||||
// The list of CAA records in the record set.
|
||||
CaaRecords []*CaaRecord
|
||||
|
||||
// The CNAME record in the record set.
|
||||
CnameRecord *CnameRecord
|
||||
|
||||
// The metadata attached to the record set.
|
||||
Metadata map[string]*string
|
||||
|
||||
// The list of MX records in the record set.
|
||||
MxRecords []*MxRecord
|
||||
|
||||
// The list of NS records in the record set.
|
||||
NsRecords []*NsRecord
|
||||
|
||||
// The list of PTR records in the record set.
|
||||
PtrRecords []*PtrRecord
|
||||
|
||||
// The SOA record in the record set.
|
||||
SoaRecord *SoaRecord
|
||||
|
||||
// The list of SRV records in the record set.
|
||||
SrvRecords []*SrvRecord
|
||||
|
||||
// The TTL (time-to-live) of the records in the record set.
|
||||
TTL *int64
|
||||
|
||||
// A reference to an azure resource from where the dns resource value is taken.
|
||||
TargetResource *SubResource
|
||||
|
||||
// The list of TXT records in the record set.
|
||||
TxtRecords []*TxtRecord
|
||||
|
||||
// READ-ONLY; Fully qualified domain name of the record set.
|
||||
Fqdn *string
|
||||
|
||||
// READ-ONLY; provisioning State of the record set.
|
||||
ProvisioningState *string
|
||||
}
|
||||
|
||||
// RecordSetUpdateParameters - Parameters supplied to update a record set.
|
||||
type RecordSetUpdateParameters struct {
|
||||
// Specifies information about the record set being updated.
|
||||
RecordSet *RecordSet
|
||||
}
|
||||
|
||||
// Resource - Common properties of an Azure Resource Manager resource
|
||||
type Resource struct {
|
||||
// REQUIRED; Resource location.
|
||||
Location *string
|
||||
|
||||
// Resource tags.
|
||||
Tags map[string]*string
|
||||
|
||||
// READ-ONLY; Resource ID.
|
||||
ID *string
|
||||
|
||||
// READ-ONLY; Resource name.
|
||||
Name *string
|
||||
|
||||
// READ-ONLY; Resource type.
|
||||
Type *string
|
||||
}
|
||||
|
||||
// ResourceReference - Represents a single Azure resource and its referencing DNS records.
|
||||
type ResourceReference struct {
|
||||
// A list of dns Records
|
||||
DNSResources []*SubResource
|
||||
|
||||
// A reference to an azure resource from where the dns resource value is taken.
|
||||
TargetResource *SubResource
|
||||
}
|
||||
|
||||
// ResourceReferenceRequest - Represents the properties of the Dns Resource Reference Request.
|
||||
type ResourceReferenceRequest struct {
|
||||
// The properties of the Resource Reference Request.
|
||||
Properties *ResourceReferenceRequestProperties
|
||||
}
|
||||
|
||||
// ResourceReferenceRequestProperties - Represents the properties of the Dns Resource Reference Request.
|
||||
type ResourceReferenceRequestProperties struct {
|
||||
// A list of references to azure resources for which referencing dns records need to be queried.
|
||||
TargetResources []*SubResource
|
||||
}
|
||||
|
||||
// ResourceReferenceResult - Represents the properties of the Dns Resource Reference Result.
|
||||
type ResourceReferenceResult struct {
|
||||
// The result of dns resource reference request. Returns a list of dns resource references for each of the azure resource
|
||||
// in the request.
|
||||
Properties *ResourceReferenceResultProperties
|
||||
}
|
||||
|
||||
// ResourceReferenceResultProperties - The result of dns resource reference request. Returns a list of dns resource references
|
||||
// for each of the azure resource in the request.
|
||||
type ResourceReferenceResultProperties struct {
|
||||
// The result of dns resource reference request. A list of dns resource references for each of the azure resource in the request
|
||||
DNSResourceReferences []*ResourceReference
|
||||
}
|
||||
|
||||
// SoaRecord - An SOA record.
|
||||
type SoaRecord struct {
|
||||
// The email contact for this SOA record.
|
||||
Email *string
|
||||
|
||||
// The expire time for this SOA record.
|
||||
ExpireTime *int64
|
||||
|
||||
// The domain name of the authoritative name server for this SOA record.
|
||||
Host *string
|
||||
|
||||
// The minimum value for this SOA record. By convention this is used to determine the negative caching duration.
|
||||
MinimumTTL *int64
|
||||
|
||||
// The refresh value for this SOA record.
|
||||
RefreshTime *int64
|
||||
|
||||
// The retry time for this SOA record.
|
||||
RetryTime *int64
|
||||
|
||||
// The serial number for this SOA record.
|
||||
SerialNumber *int64
|
||||
}
|
||||
|
||||
// SrvRecord - An SRV record.
|
||||
type SrvRecord struct {
|
||||
// The port value for this SRV record.
|
||||
Port *int32
|
||||
|
||||
// The priority value for this SRV record.
|
||||
Priority *int32
|
||||
|
||||
// The target domain name for this SRV record.
|
||||
Target *string
|
||||
|
||||
// The weight value for this SRV record.
|
||||
Weight *int32
|
||||
}
|
||||
|
||||
// SubResource - A reference to a another resource
|
||||
type SubResource struct {
|
||||
// Resource Id.
|
||||
ID *string
|
||||
}
|
||||
|
||||
// TxtRecord - A TXT record.
|
||||
type TxtRecord struct {
|
||||
// The text value of this TXT record.
|
||||
Value []*string
|
||||
}
|
||||
|
||||
// Zone - Describes a DNS zone.
|
||||
type Zone struct {
|
||||
// REQUIRED; Resource location.
|
||||
Location *string
|
||||
|
||||
// The etag of the zone.
|
||||
Etag *string
|
||||
|
||||
// The properties of the zone.
|
||||
Properties *ZoneProperties
|
||||
|
||||
// Resource tags.
|
||||
Tags map[string]*string
|
||||
|
||||
// READ-ONLY; Resource ID.
|
||||
ID *string
|
||||
|
||||
// READ-ONLY; Resource name.
|
||||
Name *string
|
||||
|
||||
// READ-ONLY; Resource type.
|
||||
Type *string
|
||||
}
|
||||
|
||||
// ZoneListResult - The response to a Zone List or ListAll operation.
|
||||
type ZoneListResult struct {
|
||||
// Information about the DNS zones.
|
||||
Value []*Zone
|
||||
|
||||
// READ-ONLY; The continuation token for the next page of results.
|
||||
NextLink *string
|
||||
}
|
||||
|
||||
// ZoneProperties - Represents the properties of the zone.
|
||||
type ZoneProperties struct {
|
||||
// A list of references to virtual networks that register hostnames in this DNS zone. This is a only when ZoneType is Private.
|
||||
RegistrationVirtualNetworks []*SubResource
|
||||
|
||||
// A list of references to virtual networks that resolve records in this DNS zone. This is a only when ZoneType is Private.
|
||||
ResolutionVirtualNetworks []*SubResource
|
||||
|
||||
// The type of this DNS zone (Public or Private).
|
||||
ZoneType *ZoneType
|
||||
|
||||
// READ-ONLY; The maximum number of record sets that can be created in this DNS zone. This is a read-only property and any
|
||||
// attempt to set this value will be ignored.
|
||||
MaxNumberOfRecordSets *int64
|
||||
|
||||
// READ-ONLY; The maximum number of records per record set that can be created in this DNS zone. This is a read-only property
|
||||
// and any attempt to set this value will be ignored.
|
||||
MaxNumberOfRecordsPerRecordSet *int64
|
||||
|
||||
// READ-ONLY; The name servers for this DNS zone. This is a read-only property and any attempt to set this value will be ignored.
|
||||
NameServers []*string
|
||||
|
||||
// READ-ONLY; The current number of record sets in this DNS zone. This is a read-only property and any attempt to set this
|
||||
// value will be ignored.
|
||||
NumberOfRecordSets *int64
|
||||
}
|
||||
|
||||
// ZoneUpdate - Describes a request to update a DNS zone.
|
||||
type ZoneUpdate struct {
|
||||
// Resource tags.
|
||||
Tags map[string]*string
|
||||
}
|
||||
907
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/models_serde.go
generated
vendored
Normal file
907
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/models_serde.go
generated
vendored
Normal file
@@ -0,0 +1,907 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armdns
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
|
||||
"reflect"
|
||||
)
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type ARecord.
|
||||
func (a ARecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "ipv4Address", a.IPv4Address)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type ARecord.
|
||||
func (a *ARecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", a, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "ipv4Address":
|
||||
err = unpopulate(val, "IPv4Address", &a.IPv4Address)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", a, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type AaaaRecord.
|
||||
func (a AaaaRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "ipv6Address", a.IPv6Address)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type AaaaRecord.
|
||||
func (a *AaaaRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", a, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "ipv6Address":
|
||||
err = unpopulate(val, "IPv6Address", &a.IPv6Address)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", a, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type CaaRecord.
|
||||
func (c CaaRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "flags", c.Flags)
|
||||
populate(objectMap, "tag", c.Tag)
|
||||
populate(objectMap, "value", c.Value)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type CaaRecord.
|
||||
func (c *CaaRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", c, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "flags":
|
||||
err = unpopulate(val, "Flags", &c.Flags)
|
||||
delete(rawMsg, key)
|
||||
case "tag":
|
||||
err = unpopulate(val, "Tag", &c.Tag)
|
||||
delete(rawMsg, key)
|
||||
case "value":
|
||||
err = unpopulate(val, "Value", &c.Value)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", c, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type CnameRecord.
|
||||
func (c CnameRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "cname", c.Cname)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type CnameRecord.
|
||||
func (c *CnameRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", c, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "cname":
|
||||
err = unpopulate(val, "Cname", &c.Cname)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", c, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type MxRecord.
|
||||
func (m MxRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "exchange", m.Exchange)
|
||||
populate(objectMap, "preference", m.Preference)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type MxRecord.
|
||||
func (m *MxRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", m, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "exchange":
|
||||
err = unpopulate(val, "Exchange", &m.Exchange)
|
||||
delete(rawMsg, key)
|
||||
case "preference":
|
||||
err = unpopulate(val, "Preference", &m.Preference)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", m, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type NsRecord.
|
||||
func (n NsRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "nsdname", n.Nsdname)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type NsRecord.
|
||||
func (n *NsRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", n, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "nsdname":
|
||||
err = unpopulate(val, "Nsdname", &n.Nsdname)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", n, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type PtrRecord.
|
||||
func (p PtrRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "ptrdname", p.Ptrdname)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type PtrRecord.
|
||||
func (p *PtrRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", p, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "ptrdname":
|
||||
err = unpopulate(val, "Ptrdname", &p.Ptrdname)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", p, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type RecordSet.
|
||||
func (r RecordSet) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "etag", r.Etag)
|
||||
populate(objectMap, "id", r.ID)
|
||||
populate(objectMap, "name", r.Name)
|
||||
populate(objectMap, "properties", r.Properties)
|
||||
populate(objectMap, "type", r.Type)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type RecordSet.
|
||||
func (r *RecordSet) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "etag":
|
||||
err = unpopulate(val, "Etag", &r.Etag)
|
||||
delete(rawMsg, key)
|
||||
case "id":
|
||||
err = unpopulate(val, "ID", &r.ID)
|
||||
delete(rawMsg, key)
|
||||
case "name":
|
||||
err = unpopulate(val, "Name", &r.Name)
|
||||
delete(rawMsg, key)
|
||||
case "properties":
|
||||
err = unpopulate(val, "Properties", &r.Properties)
|
||||
delete(rawMsg, key)
|
||||
case "type":
|
||||
err = unpopulate(val, "Type", &r.Type)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type RecordSetListResult.
|
||||
func (r RecordSetListResult) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "nextLink", r.NextLink)
|
||||
populate(objectMap, "value", r.Value)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type RecordSetListResult.
|
||||
func (r *RecordSetListResult) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "nextLink":
|
||||
err = unpopulate(val, "NextLink", &r.NextLink)
|
||||
delete(rawMsg, key)
|
||||
case "value":
|
||||
err = unpopulate(val, "Value", &r.Value)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type RecordSetProperties.
|
||||
func (r RecordSetProperties) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "ARecords", r.ARecords)
|
||||
populate(objectMap, "AAAARecords", r.AaaaRecords)
|
||||
populate(objectMap, "caaRecords", r.CaaRecords)
|
||||
populate(objectMap, "CNAMERecord", r.CnameRecord)
|
||||
populate(objectMap, "fqdn", r.Fqdn)
|
||||
populate(objectMap, "metadata", r.Metadata)
|
||||
populate(objectMap, "MXRecords", r.MxRecords)
|
||||
populate(objectMap, "NSRecords", r.NsRecords)
|
||||
populate(objectMap, "provisioningState", r.ProvisioningState)
|
||||
populate(objectMap, "PTRRecords", r.PtrRecords)
|
||||
populate(objectMap, "SOARecord", r.SoaRecord)
|
||||
populate(objectMap, "SRVRecords", r.SrvRecords)
|
||||
populate(objectMap, "TTL", r.TTL)
|
||||
populate(objectMap, "targetResource", r.TargetResource)
|
||||
populate(objectMap, "TXTRecords", r.TxtRecords)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type RecordSetProperties.
|
||||
func (r *RecordSetProperties) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "ARecords":
|
||||
err = unpopulate(val, "ARecords", &r.ARecords)
|
||||
delete(rawMsg, key)
|
||||
case "AAAARecords":
|
||||
err = unpopulate(val, "AaaaRecords", &r.AaaaRecords)
|
||||
delete(rawMsg, key)
|
||||
case "caaRecords":
|
||||
err = unpopulate(val, "CaaRecords", &r.CaaRecords)
|
||||
delete(rawMsg, key)
|
||||
case "CNAMERecord":
|
||||
err = unpopulate(val, "CnameRecord", &r.CnameRecord)
|
||||
delete(rawMsg, key)
|
||||
case "fqdn":
|
||||
err = unpopulate(val, "Fqdn", &r.Fqdn)
|
||||
delete(rawMsg, key)
|
||||
case "metadata":
|
||||
err = unpopulate(val, "Metadata", &r.Metadata)
|
||||
delete(rawMsg, key)
|
||||
case "MXRecords":
|
||||
err = unpopulate(val, "MxRecords", &r.MxRecords)
|
||||
delete(rawMsg, key)
|
||||
case "NSRecords":
|
||||
err = unpopulate(val, "NsRecords", &r.NsRecords)
|
||||
delete(rawMsg, key)
|
||||
case "provisioningState":
|
||||
err = unpopulate(val, "ProvisioningState", &r.ProvisioningState)
|
||||
delete(rawMsg, key)
|
||||
case "PTRRecords":
|
||||
err = unpopulate(val, "PtrRecords", &r.PtrRecords)
|
||||
delete(rawMsg, key)
|
||||
case "SOARecord":
|
||||
err = unpopulate(val, "SoaRecord", &r.SoaRecord)
|
||||
delete(rawMsg, key)
|
||||
case "SRVRecords":
|
||||
err = unpopulate(val, "SrvRecords", &r.SrvRecords)
|
||||
delete(rawMsg, key)
|
||||
case "TTL":
|
||||
err = unpopulate(val, "TTL", &r.TTL)
|
||||
delete(rawMsg, key)
|
||||
case "targetResource":
|
||||
err = unpopulate(val, "TargetResource", &r.TargetResource)
|
||||
delete(rawMsg, key)
|
||||
case "TXTRecords":
|
||||
err = unpopulate(val, "TxtRecords", &r.TxtRecords)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type RecordSetUpdateParameters.
|
||||
func (r RecordSetUpdateParameters) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "RecordSet", r.RecordSet)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type RecordSetUpdateParameters.
|
||||
func (r *RecordSetUpdateParameters) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "RecordSet":
|
||||
err = unpopulate(val, "RecordSet", &r.RecordSet)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type Resource.
|
||||
func (r Resource) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "id", r.ID)
|
||||
populate(objectMap, "location", r.Location)
|
||||
populate(objectMap, "name", r.Name)
|
||||
populate(objectMap, "tags", r.Tags)
|
||||
populate(objectMap, "type", r.Type)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type Resource.
|
||||
func (r *Resource) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "id":
|
||||
err = unpopulate(val, "ID", &r.ID)
|
||||
delete(rawMsg, key)
|
||||
case "location":
|
||||
err = unpopulate(val, "Location", &r.Location)
|
||||
delete(rawMsg, key)
|
||||
case "name":
|
||||
err = unpopulate(val, "Name", &r.Name)
|
||||
delete(rawMsg, key)
|
||||
case "tags":
|
||||
err = unpopulate(val, "Tags", &r.Tags)
|
||||
delete(rawMsg, key)
|
||||
case "type":
|
||||
err = unpopulate(val, "Type", &r.Type)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type ResourceReference.
|
||||
func (r ResourceReference) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "dnsResources", r.DNSResources)
|
||||
populate(objectMap, "targetResource", r.TargetResource)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type ResourceReference.
|
||||
func (r *ResourceReference) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "dnsResources":
|
||||
err = unpopulate(val, "DNSResources", &r.DNSResources)
|
||||
delete(rawMsg, key)
|
||||
case "targetResource":
|
||||
err = unpopulate(val, "TargetResource", &r.TargetResource)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type ResourceReferenceRequest.
|
||||
func (r ResourceReferenceRequest) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "properties", r.Properties)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type ResourceReferenceRequest.
|
||||
func (r *ResourceReferenceRequest) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "properties":
|
||||
err = unpopulate(val, "Properties", &r.Properties)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type ResourceReferenceRequestProperties.
|
||||
func (r ResourceReferenceRequestProperties) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "targetResources", r.TargetResources)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type ResourceReferenceRequestProperties.
|
||||
func (r *ResourceReferenceRequestProperties) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "targetResources":
|
||||
err = unpopulate(val, "TargetResources", &r.TargetResources)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type ResourceReferenceResult.
|
||||
func (r ResourceReferenceResult) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "properties", r.Properties)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type ResourceReferenceResult.
|
||||
func (r *ResourceReferenceResult) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "properties":
|
||||
err = unpopulate(val, "Properties", &r.Properties)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type ResourceReferenceResultProperties.
|
||||
func (r ResourceReferenceResultProperties) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "dnsResourceReferences", r.DNSResourceReferences)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type ResourceReferenceResultProperties.
|
||||
func (r *ResourceReferenceResultProperties) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "dnsResourceReferences":
|
||||
err = unpopulate(val, "DNSResourceReferences", &r.DNSResourceReferences)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type SoaRecord.
|
||||
func (s SoaRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "email", s.Email)
|
||||
populate(objectMap, "expireTime", s.ExpireTime)
|
||||
populate(objectMap, "host", s.Host)
|
||||
populate(objectMap, "minimumTTL", s.MinimumTTL)
|
||||
populate(objectMap, "refreshTime", s.RefreshTime)
|
||||
populate(objectMap, "retryTime", s.RetryTime)
|
||||
populate(objectMap, "serialNumber", s.SerialNumber)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type SoaRecord.
|
||||
func (s *SoaRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", s, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "email":
|
||||
err = unpopulate(val, "Email", &s.Email)
|
||||
delete(rawMsg, key)
|
||||
case "expireTime":
|
||||
err = unpopulate(val, "ExpireTime", &s.ExpireTime)
|
||||
delete(rawMsg, key)
|
||||
case "host":
|
||||
err = unpopulate(val, "Host", &s.Host)
|
||||
delete(rawMsg, key)
|
||||
case "minimumTTL":
|
||||
err = unpopulate(val, "MinimumTTL", &s.MinimumTTL)
|
||||
delete(rawMsg, key)
|
||||
case "refreshTime":
|
||||
err = unpopulate(val, "RefreshTime", &s.RefreshTime)
|
||||
delete(rawMsg, key)
|
||||
case "retryTime":
|
||||
err = unpopulate(val, "RetryTime", &s.RetryTime)
|
||||
delete(rawMsg, key)
|
||||
case "serialNumber":
|
||||
err = unpopulate(val, "SerialNumber", &s.SerialNumber)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", s, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type SrvRecord.
|
||||
func (s SrvRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "port", s.Port)
|
||||
populate(objectMap, "priority", s.Priority)
|
||||
populate(objectMap, "target", s.Target)
|
||||
populate(objectMap, "weight", s.Weight)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type SrvRecord.
|
||||
func (s *SrvRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", s, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "port":
|
||||
err = unpopulate(val, "Port", &s.Port)
|
||||
delete(rawMsg, key)
|
||||
case "priority":
|
||||
err = unpopulate(val, "Priority", &s.Priority)
|
||||
delete(rawMsg, key)
|
||||
case "target":
|
||||
err = unpopulate(val, "Target", &s.Target)
|
||||
delete(rawMsg, key)
|
||||
case "weight":
|
||||
err = unpopulate(val, "Weight", &s.Weight)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", s, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type SubResource.
|
||||
func (s SubResource) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "id", s.ID)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type SubResource.
|
||||
func (s *SubResource) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", s, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "id":
|
||||
err = unpopulate(val, "ID", &s.ID)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", s, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type TxtRecord.
|
||||
func (t TxtRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "value", t.Value)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type TxtRecord.
|
||||
func (t *TxtRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", t, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "value":
|
||||
err = unpopulate(val, "Value", &t.Value)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", t, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type Zone.
|
||||
func (z Zone) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "etag", z.Etag)
|
||||
populate(objectMap, "id", z.ID)
|
||||
populate(objectMap, "location", z.Location)
|
||||
populate(objectMap, "name", z.Name)
|
||||
populate(objectMap, "properties", z.Properties)
|
||||
populate(objectMap, "tags", z.Tags)
|
||||
populate(objectMap, "type", z.Type)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type Zone.
|
||||
func (z *Zone) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", z, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "etag":
|
||||
err = unpopulate(val, "Etag", &z.Etag)
|
||||
delete(rawMsg, key)
|
||||
case "id":
|
||||
err = unpopulate(val, "ID", &z.ID)
|
||||
delete(rawMsg, key)
|
||||
case "location":
|
||||
err = unpopulate(val, "Location", &z.Location)
|
||||
delete(rawMsg, key)
|
||||
case "name":
|
||||
err = unpopulate(val, "Name", &z.Name)
|
||||
delete(rawMsg, key)
|
||||
case "properties":
|
||||
err = unpopulate(val, "Properties", &z.Properties)
|
||||
delete(rawMsg, key)
|
||||
case "tags":
|
||||
err = unpopulate(val, "Tags", &z.Tags)
|
||||
delete(rawMsg, key)
|
||||
case "type":
|
||||
err = unpopulate(val, "Type", &z.Type)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", z, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type ZoneListResult.
|
||||
func (z ZoneListResult) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "nextLink", z.NextLink)
|
||||
populate(objectMap, "value", z.Value)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type ZoneListResult.
|
||||
func (z *ZoneListResult) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", z, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "nextLink":
|
||||
err = unpopulate(val, "NextLink", &z.NextLink)
|
||||
delete(rawMsg, key)
|
||||
case "value":
|
||||
err = unpopulate(val, "Value", &z.Value)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", z, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type ZoneProperties.
|
||||
func (z ZoneProperties) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "maxNumberOfRecordSets", z.MaxNumberOfRecordSets)
|
||||
populate(objectMap, "maxNumberOfRecordsPerRecordSet", z.MaxNumberOfRecordsPerRecordSet)
|
||||
populate(objectMap, "nameServers", z.NameServers)
|
||||
populate(objectMap, "numberOfRecordSets", z.NumberOfRecordSets)
|
||||
populate(objectMap, "registrationVirtualNetworks", z.RegistrationVirtualNetworks)
|
||||
populate(objectMap, "resolutionVirtualNetworks", z.ResolutionVirtualNetworks)
|
||||
populate(objectMap, "zoneType", z.ZoneType)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type ZoneProperties.
|
||||
func (z *ZoneProperties) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", z, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "maxNumberOfRecordSets":
|
||||
err = unpopulate(val, "MaxNumberOfRecordSets", &z.MaxNumberOfRecordSets)
|
||||
delete(rawMsg, key)
|
||||
case "maxNumberOfRecordsPerRecordSet":
|
||||
err = unpopulate(val, "MaxNumberOfRecordsPerRecordSet", &z.MaxNumberOfRecordsPerRecordSet)
|
||||
delete(rawMsg, key)
|
||||
case "nameServers":
|
||||
err = unpopulate(val, "NameServers", &z.NameServers)
|
||||
delete(rawMsg, key)
|
||||
case "numberOfRecordSets":
|
||||
err = unpopulate(val, "NumberOfRecordSets", &z.NumberOfRecordSets)
|
||||
delete(rawMsg, key)
|
||||
case "registrationVirtualNetworks":
|
||||
err = unpopulate(val, "RegistrationVirtualNetworks", &z.RegistrationVirtualNetworks)
|
||||
delete(rawMsg, key)
|
||||
case "resolutionVirtualNetworks":
|
||||
err = unpopulate(val, "ResolutionVirtualNetworks", &z.ResolutionVirtualNetworks)
|
||||
delete(rawMsg, key)
|
||||
case "zoneType":
|
||||
err = unpopulate(val, "ZoneType", &z.ZoneType)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", z, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type ZoneUpdate.
|
||||
func (z ZoneUpdate) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "tags", z.Tags)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type ZoneUpdate.
|
||||
func (z *ZoneUpdate) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", z, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "tags":
|
||||
err = unpopulate(val, "Tags", &z.Tags)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", z, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func populate(m map[string]any, k string, v any) {
|
||||
if v == nil {
|
||||
return
|
||||
} else if azcore.IsNullValue(v) {
|
||||
m[k] = nil
|
||||
} else if !reflect.ValueOf(v).IsNil() {
|
||||
m[k] = v
|
||||
}
|
||||
}
|
||||
|
||||
func unpopulate(data json.RawMessage, fn string, v any) error {
|
||||
if data == nil {
|
||||
return nil
|
||||
}
|
||||
if err := json.Unmarshal(data, v); err != nil {
|
||||
return fmt.Errorf("struct field %s: %v", fn, err)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
121
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/options.go
generated
vendored
Normal file
121
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/options.go
generated
vendored
Normal file
@@ -0,0 +1,121 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armdns
|
||||
|
||||
// RecordSetsClientCreateOrUpdateOptions contains the optional parameters for the RecordSetsClient.CreateOrUpdate method.
|
||||
type RecordSetsClientCreateOrUpdateOptions struct {
|
||||
// The etag of the record set. Omit this value to always overwrite the current record set. Specify the last-seen etag value
|
||||
// to prevent accidentally overwriting any concurrent changes.
|
||||
IfMatch *string
|
||||
|
||||
// Set to '*' to allow a new record set to be created, but to prevent updating an existing record set. Other values will be
|
||||
// ignored.
|
||||
IfNoneMatch *string
|
||||
}
|
||||
|
||||
// RecordSetsClientDeleteOptions contains the optional parameters for the RecordSetsClient.Delete method.
|
||||
type RecordSetsClientDeleteOptions struct {
|
||||
// The etag of the record set. Omit this value to always delete the current record set. Specify the last-seen etag value to
|
||||
// prevent accidentally deleting any concurrent changes.
|
||||
IfMatch *string
|
||||
}
|
||||
|
||||
// RecordSetsClientGetOptions contains the optional parameters for the RecordSetsClient.Get method.
|
||||
type RecordSetsClientGetOptions struct {
|
||||
// placeholder for future optional parameters
|
||||
}
|
||||
|
||||
// RecordSetsClientListAllByDNSZoneOptions contains the optional parameters for the RecordSetsClient.NewListAllByDNSZonePager
|
||||
// method.
|
||||
type RecordSetsClientListAllByDNSZoneOptions struct {
|
||||
// The suffix label of the record set name that has to be used to filter the record set enumerations. If this parameter is
|
||||
// specified, Enumeration will return only records that end with .
|
||||
RecordSetNameSuffix *string
|
||||
|
||||
// The maximum number of record sets to return. If not specified, returns up to 100 record sets.
|
||||
Top *int32
|
||||
}
|
||||
|
||||
// RecordSetsClientListByDNSZoneOptions contains the optional parameters for the RecordSetsClient.NewListByDNSZonePager method.
|
||||
type RecordSetsClientListByDNSZoneOptions struct {
|
||||
// The suffix label of the record set name that has to be used to filter the record set enumerations. If this parameter is
|
||||
// specified, Enumeration will return only records that end with .
|
||||
Recordsetnamesuffix *string
|
||||
|
||||
// The maximum number of record sets to return. If not specified, returns up to 100 record sets.
|
||||
Top *int32
|
||||
}
|
||||
|
||||
// RecordSetsClientListByTypeOptions contains the optional parameters for the RecordSetsClient.NewListByTypePager method.
|
||||
type RecordSetsClientListByTypeOptions struct {
|
||||
// The suffix label of the record set name that has to be used to filter the record set enumerations. If this parameter is
|
||||
// specified, Enumeration will return only records that end with .
|
||||
Recordsetnamesuffix *string
|
||||
|
||||
// The maximum number of record sets to return. If not specified, returns up to 100 record sets.
|
||||
Top *int32
|
||||
}
|
||||
|
||||
// RecordSetsClientUpdateOptions contains the optional parameters for the RecordSetsClient.Update method.
|
||||
type RecordSetsClientUpdateOptions struct {
|
||||
// The etag of the record set. Omit this value to always overwrite the current record set. Specify the last-seen etag value
|
||||
// to prevent accidentally overwriting concurrent changes.
|
||||
IfMatch *string
|
||||
}
|
||||
|
||||
// ResourceReferenceClientGetByTargetResourcesOptions contains the optional parameters for the ResourceReferenceClient.GetByTargetResources
|
||||
// method.
|
||||
type ResourceReferenceClientGetByTargetResourcesOptions struct {
|
||||
// placeholder for future optional parameters
|
||||
}
|
||||
|
||||
// ZonesClientBeginDeleteOptions contains the optional parameters for the ZonesClient.BeginDelete method.
|
||||
type ZonesClientBeginDeleteOptions struct {
|
||||
// The etag of the DNS zone. Omit this value to always delete the current zone. Specify the last-seen etag value to prevent
|
||||
// accidentally deleting any concurrent changes.
|
||||
IfMatch *string
|
||||
|
||||
// Resumes the LRO from the provided token.
|
||||
ResumeToken string
|
||||
}
|
||||
|
||||
// ZonesClientCreateOrUpdateOptions contains the optional parameters for the ZonesClient.CreateOrUpdate method.
|
||||
type ZonesClientCreateOrUpdateOptions struct {
|
||||
// The etag of the DNS zone. Omit this value to always overwrite the current zone. Specify the last-seen etag value to prevent
|
||||
// accidentally overwriting any concurrent changes.
|
||||
IfMatch *string
|
||||
|
||||
// Set to '*' to allow a new DNS zone to be created, but to prevent updating an existing zone. Other values will be ignored.
|
||||
IfNoneMatch *string
|
||||
}
|
||||
|
||||
// ZonesClientGetOptions contains the optional parameters for the ZonesClient.Get method.
|
||||
type ZonesClientGetOptions struct {
|
||||
// placeholder for future optional parameters
|
||||
}
|
||||
|
||||
// ZonesClientListByResourceGroupOptions contains the optional parameters for the ZonesClient.NewListByResourceGroupPager
|
||||
// method.
|
||||
type ZonesClientListByResourceGroupOptions struct {
|
||||
// The maximum number of record sets to return. If not specified, returns up to 100 record sets.
|
||||
Top *int32
|
||||
}
|
||||
|
||||
// ZonesClientListOptions contains the optional parameters for the ZonesClient.NewListPager method.
|
||||
type ZonesClientListOptions struct {
|
||||
// The maximum number of DNS zones to return. If not specified, returns up to 100 zones.
|
||||
Top *int32
|
||||
}
|
||||
|
||||
// ZonesClientUpdateOptions contains the optional parameters for the ZonesClient.Update method.
|
||||
type ZonesClientUpdateOptions struct {
|
||||
// The etag of the DNS zone. Omit this value to always overwrite the current zone. Specify the last-seen etag value to prevent
|
||||
// accidentally overwriting any concurrent changes.
|
||||
IfMatch *string
|
||||
}
|
||||
560
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/recordsets_client.go
generated
vendored
Normal file
560
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/recordsets_client.go
generated
vendored
Normal file
@@ -0,0 +1,560 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armdns
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/arm"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/policy"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"strconv"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// RecordSetsClient contains the methods for the RecordSets group.
|
||||
// Don't use this type directly, use NewRecordSetsClient() instead.
|
||||
type RecordSetsClient struct {
|
||||
internal *arm.Client
|
||||
subscriptionID string
|
||||
}
|
||||
|
||||
// NewRecordSetsClient creates a new instance of RecordSetsClient with the specified values.
|
||||
// - subscriptionID - Specifies the Azure subscription ID, which uniquely identifies the Microsoft Azure subscription.
|
||||
// - credential - used to authorize requests. Usually a credential from azidentity.
|
||||
// - options - pass nil to accept the default values.
|
||||
func NewRecordSetsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*RecordSetsClient, error) {
|
||||
cl, err := arm.NewClient(moduleName, moduleVersion, credential, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
client := &RecordSetsClient{
|
||||
subscriptionID: subscriptionID,
|
||||
internal: cl,
|
||||
}
|
||||
return client, nil
|
||||
}
|
||||
|
||||
// CreateOrUpdate - Creates or updates a record set within a DNS zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - zoneName - The name of the DNS zone (without a terminating dot).
|
||||
// - relativeRecordSetName - The name of the record set, relative to the name of the zone.
|
||||
// - recordType - The type of DNS record in this record set. Record sets of type SOA can be updated but not created (they are
|
||||
// created when the DNS zone is created).
|
||||
// - parameters - Parameters supplied to the CreateOrUpdate operation.
|
||||
// - options - RecordSetsClientCreateOrUpdateOptions contains the optional parameters for the RecordSetsClient.CreateOrUpdate
|
||||
// method.
|
||||
func (client *RecordSetsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, zoneName string, relativeRecordSetName string, recordType RecordType, parameters RecordSet, options *RecordSetsClientCreateOrUpdateOptions) (RecordSetsClientCreateOrUpdateResponse, error) {
|
||||
var err error
|
||||
const operationName = "RecordSetsClient.CreateOrUpdate"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.createOrUpdateCreateRequest(ctx, resourceGroupName, zoneName, relativeRecordSetName, recordType, parameters, options)
|
||||
if err != nil {
|
||||
return RecordSetsClientCreateOrUpdateResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return RecordSetsClientCreateOrUpdateResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return RecordSetsClientCreateOrUpdateResponse{}, err
|
||||
}
|
||||
resp, err := client.createOrUpdateHandleResponse(httpResp)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// createOrUpdateCreateRequest creates the CreateOrUpdate request.
|
||||
func (client *RecordSetsClient) createOrUpdateCreateRequest(ctx context.Context, resourceGroupName string, zoneName string, relativeRecordSetName string, recordType RecordType, parameters RecordSet, options *RecordSetsClientCreateOrUpdateOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if zoneName == "" {
|
||||
return nil, errors.New("parameter zoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{zoneName}", url.PathEscape(zoneName))
|
||||
urlPath = strings.ReplaceAll(urlPath, "{relativeRecordSetName}", relativeRecordSetName)
|
||||
if recordType == "" {
|
||||
return nil, errors.New("parameter recordType cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{recordType}", url.PathEscape(string(recordType)))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
if options != nil && options.IfNoneMatch != nil {
|
||||
req.Raw().Header["If-None-Match"] = []string{*options.IfNoneMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
if err := runtime.MarshalAsJSON(req, parameters); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// createOrUpdateHandleResponse handles the CreateOrUpdate response.
|
||||
func (client *RecordSetsClient) createOrUpdateHandleResponse(resp *http.Response) (RecordSetsClientCreateOrUpdateResponse, error) {
|
||||
result := RecordSetsClientCreateOrUpdateResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.RecordSet); err != nil {
|
||||
return RecordSetsClientCreateOrUpdateResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// Delete - Deletes a record set from a DNS zone. This operation cannot be undone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - zoneName - The name of the DNS zone (without a terminating dot).
|
||||
// - relativeRecordSetName - The name of the record set, relative to the name of the zone.
|
||||
// - recordType - The type of DNS record in this record set. Record sets of type SOA cannot be deleted (they are deleted when
|
||||
// the DNS zone is deleted).
|
||||
// - options - RecordSetsClientDeleteOptions contains the optional parameters for the RecordSetsClient.Delete method.
|
||||
func (client *RecordSetsClient) Delete(ctx context.Context, resourceGroupName string, zoneName string, relativeRecordSetName string, recordType RecordType, options *RecordSetsClientDeleteOptions) (RecordSetsClientDeleteResponse, error) {
|
||||
var err error
|
||||
const operationName = "RecordSetsClient.Delete"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.deleteCreateRequest(ctx, resourceGroupName, zoneName, relativeRecordSetName, recordType, options)
|
||||
if err != nil {
|
||||
return RecordSetsClientDeleteResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return RecordSetsClientDeleteResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusNoContent) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return RecordSetsClientDeleteResponse{}, err
|
||||
}
|
||||
return RecordSetsClientDeleteResponse{}, nil
|
||||
}
|
||||
|
||||
// deleteCreateRequest creates the Delete request.
|
||||
func (client *RecordSetsClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, zoneName string, relativeRecordSetName string, recordType RecordType, options *RecordSetsClientDeleteOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if zoneName == "" {
|
||||
return nil, errors.New("parameter zoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{zoneName}", url.PathEscape(zoneName))
|
||||
urlPath = strings.ReplaceAll(urlPath, "{relativeRecordSetName}", relativeRecordSetName)
|
||||
if recordType == "" {
|
||||
return nil, errors.New("parameter recordType cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{recordType}", url.PathEscape(string(recordType)))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// Get - Gets a record set.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - zoneName - The name of the DNS zone (without a terminating dot).
|
||||
// - relativeRecordSetName - The name of the record set, relative to the name of the zone.
|
||||
// - recordType - The type of DNS record in this record set.
|
||||
// - options - RecordSetsClientGetOptions contains the optional parameters for the RecordSetsClient.Get method.
|
||||
func (client *RecordSetsClient) Get(ctx context.Context, resourceGroupName string, zoneName string, relativeRecordSetName string, recordType RecordType, options *RecordSetsClientGetOptions) (RecordSetsClientGetResponse, error) {
|
||||
var err error
|
||||
const operationName = "RecordSetsClient.Get"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.getCreateRequest(ctx, resourceGroupName, zoneName, relativeRecordSetName, recordType, options)
|
||||
if err != nil {
|
||||
return RecordSetsClientGetResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return RecordSetsClientGetResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return RecordSetsClientGetResponse{}, err
|
||||
}
|
||||
resp, err := client.getHandleResponse(httpResp)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// getCreateRequest creates the Get request.
|
||||
func (client *RecordSetsClient) getCreateRequest(ctx context.Context, resourceGroupName string, zoneName string, relativeRecordSetName string, recordType RecordType, options *RecordSetsClientGetOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if zoneName == "" {
|
||||
return nil, errors.New("parameter zoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{zoneName}", url.PathEscape(zoneName))
|
||||
urlPath = strings.ReplaceAll(urlPath, "{relativeRecordSetName}", relativeRecordSetName)
|
||||
if recordType == "" {
|
||||
return nil, errors.New("parameter recordType cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{recordType}", url.PathEscape(string(recordType)))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// getHandleResponse handles the Get response.
|
||||
func (client *RecordSetsClient) getHandleResponse(resp *http.Response) (RecordSetsClientGetResponse, error) {
|
||||
result := RecordSetsClientGetResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.RecordSet); err != nil {
|
||||
return RecordSetsClientGetResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// NewListAllByDNSZonePager - Lists all record sets in a DNS zone.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - zoneName - The name of the DNS zone (without a terminating dot).
|
||||
// - options - RecordSetsClientListAllByDNSZoneOptions contains the optional parameters for the RecordSetsClient.NewListAllByDNSZonePager
|
||||
// method.
|
||||
func (client *RecordSetsClient) NewListAllByDNSZonePager(resourceGroupName string, zoneName string, options *RecordSetsClientListAllByDNSZoneOptions) *runtime.Pager[RecordSetsClientListAllByDNSZoneResponse] {
|
||||
return runtime.NewPager(runtime.PagingHandler[RecordSetsClientListAllByDNSZoneResponse]{
|
||||
More: func(page RecordSetsClientListAllByDNSZoneResponse) bool {
|
||||
return page.NextLink != nil && len(*page.NextLink) > 0
|
||||
},
|
||||
Fetcher: func(ctx context.Context, page *RecordSetsClientListAllByDNSZoneResponse) (RecordSetsClientListAllByDNSZoneResponse, error) {
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "RecordSetsClient.NewListAllByDNSZonePager")
|
||||
nextLink := ""
|
||||
if page != nil {
|
||||
nextLink = *page.NextLink
|
||||
}
|
||||
resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) {
|
||||
return client.listAllByDNSZoneCreateRequest(ctx, resourceGroupName, zoneName, options)
|
||||
}, nil)
|
||||
if err != nil {
|
||||
return RecordSetsClientListAllByDNSZoneResponse{}, err
|
||||
}
|
||||
return client.listAllByDNSZoneHandleResponse(resp)
|
||||
},
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
|
||||
// listAllByDNSZoneCreateRequest creates the ListAllByDNSZone request.
|
||||
func (client *RecordSetsClient) listAllByDNSZoneCreateRequest(ctx context.Context, resourceGroupName string, zoneName string, options *RecordSetsClientListAllByDNSZoneOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/all"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if zoneName == "" {
|
||||
return nil, errors.New("parameter zoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{zoneName}", url.PathEscape(zoneName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
if options != nil && options.Top != nil {
|
||||
reqQP.Set("$top", strconv.FormatInt(int64(*options.Top), 10))
|
||||
}
|
||||
if options != nil && options.RecordSetNameSuffix != nil {
|
||||
reqQP.Set("$recordsetnamesuffix", *options.RecordSetNameSuffix)
|
||||
}
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// listAllByDNSZoneHandleResponse handles the ListAllByDNSZone response.
|
||||
func (client *RecordSetsClient) listAllByDNSZoneHandleResponse(resp *http.Response) (RecordSetsClientListAllByDNSZoneResponse, error) {
|
||||
result := RecordSetsClientListAllByDNSZoneResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.RecordSetListResult); err != nil {
|
||||
return RecordSetsClientListAllByDNSZoneResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// NewListByDNSZonePager - Lists all record sets in a DNS zone.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - zoneName - The name of the DNS zone (without a terminating dot).
|
||||
// - options - RecordSetsClientListByDNSZoneOptions contains the optional parameters for the RecordSetsClient.NewListByDNSZonePager
|
||||
// method.
|
||||
func (client *RecordSetsClient) NewListByDNSZonePager(resourceGroupName string, zoneName string, options *RecordSetsClientListByDNSZoneOptions) *runtime.Pager[RecordSetsClientListByDNSZoneResponse] {
|
||||
return runtime.NewPager(runtime.PagingHandler[RecordSetsClientListByDNSZoneResponse]{
|
||||
More: func(page RecordSetsClientListByDNSZoneResponse) bool {
|
||||
return page.NextLink != nil && len(*page.NextLink) > 0
|
||||
},
|
||||
Fetcher: func(ctx context.Context, page *RecordSetsClientListByDNSZoneResponse) (RecordSetsClientListByDNSZoneResponse, error) {
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "RecordSetsClient.NewListByDNSZonePager")
|
||||
nextLink := ""
|
||||
if page != nil {
|
||||
nextLink = *page.NextLink
|
||||
}
|
||||
resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) {
|
||||
return client.listByDNSZoneCreateRequest(ctx, resourceGroupName, zoneName, options)
|
||||
}, nil)
|
||||
if err != nil {
|
||||
return RecordSetsClientListByDNSZoneResponse{}, err
|
||||
}
|
||||
return client.listByDNSZoneHandleResponse(resp)
|
||||
},
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
|
||||
// listByDNSZoneCreateRequest creates the ListByDNSZone request.
|
||||
func (client *RecordSetsClient) listByDNSZoneCreateRequest(ctx context.Context, resourceGroupName string, zoneName string, options *RecordSetsClientListByDNSZoneOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/recordsets"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if zoneName == "" {
|
||||
return nil, errors.New("parameter zoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{zoneName}", url.PathEscape(zoneName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
if options != nil && options.Top != nil {
|
||||
reqQP.Set("$top", strconv.FormatInt(int64(*options.Top), 10))
|
||||
}
|
||||
if options != nil && options.Recordsetnamesuffix != nil {
|
||||
reqQP.Set("$recordsetnamesuffix", *options.Recordsetnamesuffix)
|
||||
}
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// listByDNSZoneHandleResponse handles the ListByDNSZone response.
|
||||
func (client *RecordSetsClient) listByDNSZoneHandleResponse(resp *http.Response) (RecordSetsClientListByDNSZoneResponse, error) {
|
||||
result := RecordSetsClientListByDNSZoneResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.RecordSetListResult); err != nil {
|
||||
return RecordSetsClientListByDNSZoneResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// NewListByTypePager - Lists the record sets of a specified type in a DNS zone.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - zoneName - The name of the DNS zone (without a terminating dot).
|
||||
// - recordType - The type of record sets to enumerate.
|
||||
// - options - RecordSetsClientListByTypeOptions contains the optional parameters for the RecordSetsClient.NewListByTypePager
|
||||
// method.
|
||||
func (client *RecordSetsClient) NewListByTypePager(resourceGroupName string, zoneName string, recordType RecordType, options *RecordSetsClientListByTypeOptions) *runtime.Pager[RecordSetsClientListByTypeResponse] {
|
||||
return runtime.NewPager(runtime.PagingHandler[RecordSetsClientListByTypeResponse]{
|
||||
More: func(page RecordSetsClientListByTypeResponse) bool {
|
||||
return page.NextLink != nil && len(*page.NextLink) > 0
|
||||
},
|
||||
Fetcher: func(ctx context.Context, page *RecordSetsClientListByTypeResponse) (RecordSetsClientListByTypeResponse, error) {
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "RecordSetsClient.NewListByTypePager")
|
||||
nextLink := ""
|
||||
if page != nil {
|
||||
nextLink = *page.NextLink
|
||||
}
|
||||
resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) {
|
||||
return client.listByTypeCreateRequest(ctx, resourceGroupName, zoneName, recordType, options)
|
||||
}, nil)
|
||||
if err != nil {
|
||||
return RecordSetsClientListByTypeResponse{}, err
|
||||
}
|
||||
return client.listByTypeHandleResponse(resp)
|
||||
},
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
|
||||
// listByTypeCreateRequest creates the ListByType request.
|
||||
func (client *RecordSetsClient) listByTypeCreateRequest(ctx context.Context, resourceGroupName string, zoneName string, recordType RecordType, options *RecordSetsClientListByTypeOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if zoneName == "" {
|
||||
return nil, errors.New("parameter zoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{zoneName}", url.PathEscape(zoneName))
|
||||
if recordType == "" {
|
||||
return nil, errors.New("parameter recordType cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{recordType}", url.PathEscape(string(recordType)))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
if options != nil && options.Top != nil {
|
||||
reqQP.Set("$top", strconv.FormatInt(int64(*options.Top), 10))
|
||||
}
|
||||
if options != nil && options.Recordsetnamesuffix != nil {
|
||||
reqQP.Set("$recordsetnamesuffix", *options.Recordsetnamesuffix)
|
||||
}
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// listByTypeHandleResponse handles the ListByType response.
|
||||
func (client *RecordSetsClient) listByTypeHandleResponse(resp *http.Response) (RecordSetsClientListByTypeResponse, error) {
|
||||
result := RecordSetsClientListByTypeResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.RecordSetListResult); err != nil {
|
||||
return RecordSetsClientListByTypeResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// Update - Updates a record set within a DNS zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - zoneName - The name of the DNS zone (without a terminating dot).
|
||||
// - relativeRecordSetName - The name of the record set, relative to the name of the zone.
|
||||
// - recordType - The type of DNS record in this record set.
|
||||
// - parameters - Parameters supplied to the Update operation.
|
||||
// - options - RecordSetsClientUpdateOptions contains the optional parameters for the RecordSetsClient.Update method.
|
||||
func (client *RecordSetsClient) Update(ctx context.Context, resourceGroupName string, zoneName string, relativeRecordSetName string, recordType RecordType, parameters RecordSet, options *RecordSetsClientUpdateOptions) (RecordSetsClientUpdateResponse, error) {
|
||||
var err error
|
||||
const operationName = "RecordSetsClient.Update"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.updateCreateRequest(ctx, resourceGroupName, zoneName, relativeRecordSetName, recordType, parameters, options)
|
||||
if err != nil {
|
||||
return RecordSetsClientUpdateResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return RecordSetsClientUpdateResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return RecordSetsClientUpdateResponse{}, err
|
||||
}
|
||||
resp, err := client.updateHandleResponse(httpResp)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// updateCreateRequest creates the Update request.
|
||||
func (client *RecordSetsClient) updateCreateRequest(ctx context.Context, resourceGroupName string, zoneName string, relativeRecordSetName string, recordType RecordType, parameters RecordSet, options *RecordSetsClientUpdateOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}/{recordType}/{relativeRecordSetName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if zoneName == "" {
|
||||
return nil, errors.New("parameter zoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{zoneName}", url.PathEscape(zoneName))
|
||||
urlPath = strings.ReplaceAll(urlPath, "{relativeRecordSetName}", relativeRecordSetName)
|
||||
if recordType == "" {
|
||||
return nil, errors.New("parameter recordType cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{recordType}", url.PathEscape(string(recordType)))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
if err := runtime.MarshalAsJSON(req, parameters); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// updateHandleResponse handles the Update response.
|
||||
func (client *RecordSetsClient) updateHandleResponse(resp *http.Response) (RecordSetsClientUpdateResponse, error) {
|
||||
result := RecordSetsClientUpdateResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.RecordSet); err != nil {
|
||||
return RecordSetsClientUpdateResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
103
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/resourcereference_client.go
generated
vendored
Normal file
103
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/resourcereference_client.go
generated
vendored
Normal file
@@ -0,0 +1,103 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armdns
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/arm"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/policy"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// ResourceReferenceClient contains the methods for the DNSResourceReference group.
|
||||
// Don't use this type directly, use NewResourceReferenceClient() instead.
|
||||
type ResourceReferenceClient struct {
|
||||
internal *arm.Client
|
||||
subscriptionID string
|
||||
}
|
||||
|
||||
// NewResourceReferenceClient creates a new instance of ResourceReferenceClient with the specified values.
|
||||
// - subscriptionID - Specifies the Azure subscription ID, which uniquely identifies the Microsoft Azure subscription.
|
||||
// - credential - used to authorize requests. Usually a credential from azidentity.
|
||||
// - options - pass nil to accept the default values.
|
||||
func NewResourceReferenceClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ResourceReferenceClient, error) {
|
||||
cl, err := arm.NewClient(moduleName, moduleVersion, credential, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
client := &ResourceReferenceClient{
|
||||
subscriptionID: subscriptionID,
|
||||
internal: cl,
|
||||
}
|
||||
return client, nil
|
||||
}
|
||||
|
||||
// GetByTargetResources - Returns the DNS records specified by the referencing targetResourceIds.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - parameters - Properties for dns resource reference request.
|
||||
// - options - ResourceReferenceClientGetByTargetResourcesOptions contains the optional parameters for the ResourceReferenceClient.GetByTargetResources
|
||||
// method.
|
||||
func (client *ResourceReferenceClient) GetByTargetResources(ctx context.Context, parameters ResourceReferenceRequest, options *ResourceReferenceClientGetByTargetResourcesOptions) (ResourceReferenceClientGetByTargetResourcesResponse, error) {
|
||||
var err error
|
||||
const operationName = "ResourceReferenceClient.GetByTargetResources"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.getByTargetResourcesCreateRequest(ctx, parameters, options)
|
||||
if err != nil {
|
||||
return ResourceReferenceClientGetByTargetResourcesResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return ResourceReferenceClientGetByTargetResourcesResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return ResourceReferenceClientGetByTargetResourcesResponse{}, err
|
||||
}
|
||||
resp, err := client.getByTargetResourcesHandleResponse(httpResp)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// getByTargetResourcesCreateRequest creates the GetByTargetResources request.
|
||||
func (client *ResourceReferenceClient) getByTargetResourcesCreateRequest(ctx context.Context, parameters ResourceReferenceRequest, options *ResourceReferenceClientGetByTargetResourcesOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/providers/Microsoft.Network/getDnsResourceReference"
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
if err := runtime.MarshalAsJSON(req, parameters); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// getByTargetResourcesHandleResponse handles the GetByTargetResources response.
|
||||
func (client *ResourceReferenceClient) getByTargetResourcesHandleResponse(resp *http.Response) (ResourceReferenceClientGetByTargetResourcesResponse, error) {
|
||||
result := ResourceReferenceClientGetByTargetResourcesResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.ResourceReferenceResult); err != nil {
|
||||
return ResourceReferenceClientGetByTargetResourcesResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
91
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/response_types.go
generated
vendored
Normal file
91
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/response_types.go
generated
vendored
Normal file
@@ -0,0 +1,91 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armdns
|
||||
|
||||
// RecordSetsClientCreateOrUpdateResponse contains the response from method RecordSetsClient.CreateOrUpdate.
|
||||
type RecordSetsClientCreateOrUpdateResponse struct {
|
||||
// Describes a DNS record set (a collection of DNS records with the same name and type).
|
||||
RecordSet
|
||||
}
|
||||
|
||||
// RecordSetsClientDeleteResponse contains the response from method RecordSetsClient.Delete.
|
||||
type RecordSetsClientDeleteResponse struct {
|
||||
// placeholder for future response values
|
||||
}
|
||||
|
||||
// RecordSetsClientGetResponse contains the response from method RecordSetsClient.Get.
|
||||
type RecordSetsClientGetResponse struct {
|
||||
// Describes a DNS record set (a collection of DNS records with the same name and type).
|
||||
RecordSet
|
||||
}
|
||||
|
||||
// RecordSetsClientListAllByDNSZoneResponse contains the response from method RecordSetsClient.NewListAllByDNSZonePager.
|
||||
type RecordSetsClientListAllByDNSZoneResponse struct {
|
||||
// The response to a record set List operation.
|
||||
RecordSetListResult
|
||||
}
|
||||
|
||||
// RecordSetsClientListByDNSZoneResponse contains the response from method RecordSetsClient.NewListByDNSZonePager.
|
||||
type RecordSetsClientListByDNSZoneResponse struct {
|
||||
// The response to a record set List operation.
|
||||
RecordSetListResult
|
||||
}
|
||||
|
||||
// RecordSetsClientListByTypeResponse contains the response from method RecordSetsClient.NewListByTypePager.
|
||||
type RecordSetsClientListByTypeResponse struct {
|
||||
// The response to a record set List operation.
|
||||
RecordSetListResult
|
||||
}
|
||||
|
||||
// RecordSetsClientUpdateResponse contains the response from method RecordSetsClient.Update.
|
||||
type RecordSetsClientUpdateResponse struct {
|
||||
// Describes a DNS record set (a collection of DNS records with the same name and type).
|
||||
RecordSet
|
||||
}
|
||||
|
||||
// ResourceReferenceClientGetByTargetResourcesResponse contains the response from method ResourceReferenceClient.GetByTargetResources.
|
||||
type ResourceReferenceClientGetByTargetResourcesResponse struct {
|
||||
// Represents the properties of the Dns Resource Reference Result.
|
||||
ResourceReferenceResult
|
||||
}
|
||||
|
||||
// ZonesClientCreateOrUpdateResponse contains the response from method ZonesClient.CreateOrUpdate.
|
||||
type ZonesClientCreateOrUpdateResponse struct {
|
||||
// Describes a DNS zone.
|
||||
Zone
|
||||
}
|
||||
|
||||
// ZonesClientDeleteResponse contains the response from method ZonesClient.BeginDelete.
|
||||
type ZonesClientDeleteResponse struct {
|
||||
// placeholder for future response values
|
||||
}
|
||||
|
||||
// ZonesClientGetResponse contains the response from method ZonesClient.Get.
|
||||
type ZonesClientGetResponse struct {
|
||||
// Describes a DNS zone.
|
||||
Zone
|
||||
}
|
||||
|
||||
// ZonesClientListByResourceGroupResponse contains the response from method ZonesClient.NewListByResourceGroupPager.
|
||||
type ZonesClientListByResourceGroupResponse struct {
|
||||
// The response to a Zone List or ListAll operation.
|
||||
ZoneListResult
|
||||
}
|
||||
|
||||
// ZonesClientListResponse contains the response from method ZonesClient.NewListPager.
|
||||
type ZonesClientListResponse struct {
|
||||
// The response to a Zone List or ListAll operation.
|
||||
ZoneListResult
|
||||
}
|
||||
|
||||
// ZonesClientUpdateResponse contains the response from method ZonesClient.Update.
|
||||
type ZonesClientUpdateResponse struct {
|
||||
// Describes a DNS zone.
|
||||
Zone
|
||||
}
|
||||
452
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/zones_client.go
generated
vendored
Normal file
452
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns/zones_client.go
generated
vendored
Normal file
@@ -0,0 +1,452 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armdns
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/arm"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/policy"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"strconv"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// ZonesClient contains the methods for the Zones group.
|
||||
// Don't use this type directly, use NewZonesClient() instead.
|
||||
type ZonesClient struct {
|
||||
internal *arm.Client
|
||||
subscriptionID string
|
||||
}
|
||||
|
||||
// NewZonesClient creates a new instance of ZonesClient with the specified values.
|
||||
// - subscriptionID - Specifies the Azure subscription ID, which uniquely identifies the Microsoft Azure subscription.
|
||||
// - credential - used to authorize requests. Usually a credential from azidentity.
|
||||
// - options - pass nil to accept the default values.
|
||||
func NewZonesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ZonesClient, error) {
|
||||
cl, err := arm.NewClient(moduleName, moduleVersion, credential, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
client := &ZonesClient{
|
||||
subscriptionID: subscriptionID,
|
||||
internal: cl,
|
||||
}
|
||||
return client, nil
|
||||
}
|
||||
|
||||
// CreateOrUpdate - Creates or updates a DNS zone. Does not modify DNS records within the zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - zoneName - The name of the DNS zone (without a terminating dot).
|
||||
// - parameters - Parameters supplied to the CreateOrUpdate operation.
|
||||
// - options - ZonesClientCreateOrUpdateOptions contains the optional parameters for the ZonesClient.CreateOrUpdate method.
|
||||
func (client *ZonesClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, zoneName string, parameters Zone, options *ZonesClientCreateOrUpdateOptions) (ZonesClientCreateOrUpdateResponse, error) {
|
||||
var err error
|
||||
const operationName = "ZonesClient.CreateOrUpdate"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.createOrUpdateCreateRequest(ctx, resourceGroupName, zoneName, parameters, options)
|
||||
if err != nil {
|
||||
return ZonesClientCreateOrUpdateResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return ZonesClientCreateOrUpdateResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return ZonesClientCreateOrUpdateResponse{}, err
|
||||
}
|
||||
resp, err := client.createOrUpdateHandleResponse(httpResp)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// createOrUpdateCreateRequest creates the CreateOrUpdate request.
|
||||
func (client *ZonesClient) createOrUpdateCreateRequest(ctx context.Context, resourceGroupName string, zoneName string, parameters Zone, options *ZonesClientCreateOrUpdateOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if zoneName == "" {
|
||||
return nil, errors.New("parameter zoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{zoneName}", url.PathEscape(zoneName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
if options != nil && options.IfNoneMatch != nil {
|
||||
req.Raw().Header["If-None-Match"] = []string{*options.IfNoneMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
if err := runtime.MarshalAsJSON(req, parameters); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// createOrUpdateHandleResponse handles the CreateOrUpdate response.
|
||||
func (client *ZonesClient) createOrUpdateHandleResponse(resp *http.Response) (ZonesClientCreateOrUpdateResponse, error) {
|
||||
result := ZonesClientCreateOrUpdateResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.Zone); err != nil {
|
||||
return ZonesClientCreateOrUpdateResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// BeginDelete - Deletes a DNS zone. WARNING: All DNS records in the zone will also be deleted. This operation cannot be undone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - zoneName - The name of the DNS zone (without a terminating dot).
|
||||
// - options - ZonesClientBeginDeleteOptions contains the optional parameters for the ZonesClient.BeginDelete method.
|
||||
func (client *ZonesClient) BeginDelete(ctx context.Context, resourceGroupName string, zoneName string, options *ZonesClientBeginDeleteOptions) (*runtime.Poller[ZonesClientDeleteResponse], error) {
|
||||
if options == nil || options.ResumeToken == "" {
|
||||
resp, err := client.deleteOperation(ctx, resourceGroupName, zoneName, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[ZonesClientDeleteResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
return poller, err
|
||||
} else {
|
||||
return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[ZonesClientDeleteResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// Delete - Deletes a DNS zone. WARNING: All DNS records in the zone will also be deleted. This operation cannot be undone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
func (client *ZonesClient) deleteOperation(ctx context.Context, resourceGroupName string, zoneName string, options *ZonesClientBeginDeleteOptions) (*http.Response, error) {
|
||||
var err error
|
||||
const operationName = "ZonesClient.BeginDelete"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.deleteCreateRequest(ctx, resourceGroupName, zoneName, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted, http.StatusNoContent) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return nil, err
|
||||
}
|
||||
return httpResp, nil
|
||||
}
|
||||
|
||||
// deleteCreateRequest creates the Delete request.
|
||||
func (client *ZonesClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, zoneName string, options *ZonesClientBeginDeleteOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if zoneName == "" {
|
||||
return nil, errors.New("parameter zoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{zoneName}", url.PathEscape(zoneName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// Get - Gets a DNS zone. Retrieves the zone properties, but not the record sets within the zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - zoneName - The name of the DNS zone (without a terminating dot).
|
||||
// - options - ZonesClientGetOptions contains the optional parameters for the ZonesClient.Get method.
|
||||
func (client *ZonesClient) Get(ctx context.Context, resourceGroupName string, zoneName string, options *ZonesClientGetOptions) (ZonesClientGetResponse, error) {
|
||||
var err error
|
||||
const operationName = "ZonesClient.Get"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.getCreateRequest(ctx, resourceGroupName, zoneName, options)
|
||||
if err != nil {
|
||||
return ZonesClientGetResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return ZonesClientGetResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return ZonesClientGetResponse{}, err
|
||||
}
|
||||
resp, err := client.getHandleResponse(httpResp)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// getCreateRequest creates the Get request.
|
||||
func (client *ZonesClient) getCreateRequest(ctx context.Context, resourceGroupName string, zoneName string, options *ZonesClientGetOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if zoneName == "" {
|
||||
return nil, errors.New("parameter zoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{zoneName}", url.PathEscape(zoneName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// getHandleResponse handles the Get response.
|
||||
func (client *ZonesClient) getHandleResponse(resp *http.Response) (ZonesClientGetResponse, error) {
|
||||
result := ZonesClientGetResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.Zone); err != nil {
|
||||
return ZonesClientGetResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// NewListPager - Lists the DNS zones in all resource groups in a subscription.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - options - ZonesClientListOptions contains the optional parameters for the ZonesClient.NewListPager method.
|
||||
func (client *ZonesClient) NewListPager(options *ZonesClientListOptions) *runtime.Pager[ZonesClientListResponse] {
|
||||
return runtime.NewPager(runtime.PagingHandler[ZonesClientListResponse]{
|
||||
More: func(page ZonesClientListResponse) bool {
|
||||
return page.NextLink != nil && len(*page.NextLink) > 0
|
||||
},
|
||||
Fetcher: func(ctx context.Context, page *ZonesClientListResponse) (ZonesClientListResponse, error) {
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "ZonesClient.NewListPager")
|
||||
nextLink := ""
|
||||
if page != nil {
|
||||
nextLink = *page.NextLink
|
||||
}
|
||||
resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) {
|
||||
return client.listCreateRequest(ctx, options)
|
||||
}, nil)
|
||||
if err != nil {
|
||||
return ZonesClientListResponse{}, err
|
||||
}
|
||||
return client.listHandleResponse(resp)
|
||||
},
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
|
||||
// listCreateRequest creates the List request.
|
||||
func (client *ZonesClient) listCreateRequest(ctx context.Context, options *ZonesClientListOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/providers/Microsoft.Network/dnszones"
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
if options != nil && options.Top != nil {
|
||||
reqQP.Set("$top", strconv.FormatInt(int64(*options.Top), 10))
|
||||
}
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// listHandleResponse handles the List response.
|
||||
func (client *ZonesClient) listHandleResponse(resp *http.Response) (ZonesClientListResponse, error) {
|
||||
result := ZonesClientListResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.ZoneListResult); err != nil {
|
||||
return ZonesClientListResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// NewListByResourceGroupPager - Lists the DNS zones within a resource group.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - options - ZonesClientListByResourceGroupOptions contains the optional parameters for the ZonesClient.NewListByResourceGroupPager
|
||||
// method.
|
||||
func (client *ZonesClient) NewListByResourceGroupPager(resourceGroupName string, options *ZonesClientListByResourceGroupOptions) *runtime.Pager[ZonesClientListByResourceGroupResponse] {
|
||||
return runtime.NewPager(runtime.PagingHandler[ZonesClientListByResourceGroupResponse]{
|
||||
More: func(page ZonesClientListByResourceGroupResponse) bool {
|
||||
return page.NextLink != nil && len(*page.NextLink) > 0
|
||||
},
|
||||
Fetcher: func(ctx context.Context, page *ZonesClientListByResourceGroupResponse) (ZonesClientListByResourceGroupResponse, error) {
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "ZonesClient.NewListByResourceGroupPager")
|
||||
nextLink := ""
|
||||
if page != nil {
|
||||
nextLink = *page.NextLink
|
||||
}
|
||||
resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) {
|
||||
return client.listByResourceGroupCreateRequest(ctx, resourceGroupName, options)
|
||||
}, nil)
|
||||
if err != nil {
|
||||
return ZonesClientListByResourceGroupResponse{}, err
|
||||
}
|
||||
return client.listByResourceGroupHandleResponse(resp)
|
||||
},
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
|
||||
// listByResourceGroupCreateRequest creates the ListByResourceGroup request.
|
||||
func (client *ZonesClient) listByResourceGroupCreateRequest(ctx context.Context, resourceGroupName string, options *ZonesClientListByResourceGroupOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
if options != nil && options.Top != nil {
|
||||
reqQP.Set("$top", strconv.FormatInt(int64(*options.Top), 10))
|
||||
}
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// listByResourceGroupHandleResponse handles the ListByResourceGroup response.
|
||||
func (client *ZonesClient) listByResourceGroupHandleResponse(resp *http.Response) (ZonesClientListByResourceGroupResponse, error) {
|
||||
result := ZonesClientListByResourceGroupResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.ZoneListResult); err != nil {
|
||||
return ZonesClientListByResourceGroupResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// Update - Updates a DNS zone. Does not modify DNS records within the zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2018-05-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - zoneName - The name of the DNS zone (without a terminating dot).
|
||||
// - parameters - Parameters supplied to the Update operation.
|
||||
// - options - ZonesClientUpdateOptions contains the optional parameters for the ZonesClient.Update method.
|
||||
func (client *ZonesClient) Update(ctx context.Context, resourceGroupName string, zoneName string, parameters ZoneUpdate, options *ZonesClientUpdateOptions) (ZonesClientUpdateResponse, error) {
|
||||
var err error
|
||||
const operationName = "ZonesClient.Update"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.updateCreateRequest(ctx, resourceGroupName, zoneName, parameters, options)
|
||||
if err != nil {
|
||||
return ZonesClientUpdateResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return ZonesClientUpdateResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return ZonesClientUpdateResponse{}, err
|
||||
}
|
||||
resp, err := client.updateHandleResponse(httpResp)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// updateCreateRequest creates the Update request.
|
||||
func (client *ZonesClient) updateCreateRequest(ctx context.Context, resourceGroupName string, zoneName string, parameters ZoneUpdate, options *ZonesClientUpdateOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/dnsZones/{zoneName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if zoneName == "" {
|
||||
return nil, errors.New("parameter zoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{zoneName}", url.PathEscape(zoneName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2018-05-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
if err := runtime.MarshalAsJSON(req, parameters); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// updateHandleResponse handles the Update response.
|
||||
func (client *ZonesClient) updateHandleResponse(resp *http.Response) (ZonesClientUpdateResponse, error) {
|
||||
result := ZonesClientUpdateResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.Zone); err != nil {
|
||||
return ZonesClientUpdateResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
20
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/CHANGELOG.md
generated
vendored
Normal file
20
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/CHANGELOG.md
generated
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
# Release History
|
||||
|
||||
## 1.2.0 (2023-11-24)
|
||||
### Features Added
|
||||
|
||||
- Support for test fakes and OpenTelemetry trace spans.
|
||||
|
||||
|
||||
## 1.1.0 (2023-03-27)
|
||||
### Features Added
|
||||
|
||||
- New struct `ClientFactory` which is a client factory used to create any client in this module
|
||||
|
||||
## 1.0.0 (2022-05-18)
|
||||
|
||||
The package of `github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns` is using our [next generation design principles](https://azure.github.io/azure-sdk/general_introduction.html) since version 1.0.0, which contains breaking changes.
|
||||
|
||||
To migrate the existing applications to the latest version, please refer to [Migration Guide](https://aka.ms/azsdk/go/mgmt/migration).
|
||||
|
||||
To learn more, please refer to our documentation [Quick Start](https://aka.ms/azsdk/go/mgmt).
|
||||
21
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/LICENSE.txt
generated
vendored
Normal file
21
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/LICENSE.txt
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
98
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/README.md
generated
vendored
Normal file
98
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/README.md
generated
vendored
Normal file
@@ -0,0 +1,98 @@
|
||||
# Azure Private DNS Module for Go
|
||||
|
||||
[](https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns)
|
||||
|
||||
The `armprivatedns` module provides operations for working with Azure Private DNS.
|
||||
|
||||
[Source code](https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/resourcemanager/privatedns/armprivatedns)
|
||||
|
||||
# Getting started
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- an [Azure subscription](https://azure.microsoft.com/free/)
|
||||
- Go 1.18 or above (You could download and install the latest version of Go from [here](https://go.dev/doc/install). It will replace the existing Go on your machine. If you want to install multiple Go versions on the same machine, you could refer this [doc](https://go.dev/doc/manage-install).)
|
||||
|
||||
## Install the package
|
||||
|
||||
This project uses [Go modules](https://github.com/golang/go/wiki/Modules) for versioning and dependency management.
|
||||
|
||||
Install the Azure Private DNS module:
|
||||
|
||||
```sh
|
||||
go get github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns
|
||||
```
|
||||
|
||||
## Authorization
|
||||
|
||||
When creating a client, you will need to provide a credential for authenticating with Azure Private DNS. The `azidentity` module provides facilities for various ways of authenticating with Azure including client/secret, certificate, managed identity, and more.
|
||||
|
||||
```go
|
||||
cred, err := azidentity.NewDefaultAzureCredential(nil)
|
||||
```
|
||||
|
||||
For more information on authentication, please see the documentation for `azidentity` at [pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity).
|
||||
|
||||
## Client Factory
|
||||
|
||||
Azure Private DNS module consists of one or more clients. We provide a client factory which could be used to create any client in this module.
|
||||
|
||||
```go
|
||||
clientFactory, err := armprivatedns.NewClientFactory(<subscription ID>, cred, nil)
|
||||
```
|
||||
|
||||
You can use `ClientOptions` in package `github.com/Azure/azure-sdk-for-go/sdk/azcore/arm` to set endpoint to connect with public and sovereign clouds as well as Azure Stack. For more information, please see the documentation for `azcore` at [pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azcore](https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azcore).
|
||||
|
||||
```go
|
||||
options := arm.ClientOptions {
|
||||
ClientOptions: azcore.ClientOptions {
|
||||
Cloud: cloud.AzureChina,
|
||||
},
|
||||
}
|
||||
clientFactory, err := armprivatedns.NewClientFactory(<subscription ID>, cred, &options)
|
||||
```
|
||||
|
||||
## Clients
|
||||
|
||||
A client groups a set of related APIs, providing access to its functionality. Create one or more clients to access the APIs you require using client factory.
|
||||
|
||||
```go
|
||||
client := clientFactory.NewPrivateZonesClient()
|
||||
```
|
||||
|
||||
## Fakes
|
||||
|
||||
The fake package contains types used for constructing in-memory fake servers used in unit tests.
|
||||
This allows writing tests to cover various success/error conditions without the need for connecting to a live service.
|
||||
|
||||
Please see https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/samples/fakes for details and examples on how to use fakes.
|
||||
|
||||
## More sample code
|
||||
|
||||
- [Private Zone](https://aka.ms/azsdk/go/mgmt/samples?path=sdk/resourcemanager/privatedns/privatezone)
|
||||
- [Record Sets](https://aka.ms/azsdk/go/mgmt/samples?path=sdk/resourcemanager/privatedns/record_sets)
|
||||
- [Virtual Network Link](https://aka.ms/azsdk/go/mgmt/samples?path=sdk/resourcemanager/privatedns/virtualnetworklink)
|
||||
|
||||
## Provide Feedback
|
||||
|
||||
If you encounter bugs or have suggestions, please
|
||||
[open an issue](https://github.com/Azure/azure-sdk-for-go/issues) and assign the `Private DNS` label.
|
||||
|
||||
# Contributing
|
||||
|
||||
This project welcomes contributions and suggestions. Most contributions require
|
||||
you to agree to a Contributor License Agreement (CLA) declaring that you have
|
||||
the right to, and actually do, grant us the rights to use your contribution.
|
||||
For details, visit [https://cla.microsoft.com](https://cla.microsoft.com).
|
||||
|
||||
When you submit a pull request, a CLA-bot will automatically determine whether
|
||||
you need to provide a CLA and decorate the PR appropriately (e.g., label,
|
||||
comment). Simply follow the instructions provided by the bot. You will only
|
||||
need to do this once across all repos using our CLA.
|
||||
|
||||
This project has adopted the
|
||||
[Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
|
||||
For more information, see the
|
||||
[Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/)
|
||||
or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any
|
||||
additional questions or comments.
|
||||
6
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/assets.json
generated
vendored
Normal file
6
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/assets.json
generated
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"AssetsRepo": "Azure/azure-sdk-assets",
|
||||
"AssetsRepoPrefixPath": "go",
|
||||
"TagPrefix": "go/resourcemanager/privatedns/armprivatedns",
|
||||
"Tag": "go/resourcemanager/privatedns/armprivatedns_329737d335"
|
||||
}
|
||||
12
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/autorest.md
generated
vendored
Normal file
12
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/autorest.md
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
### AutoRest Configuration
|
||||
|
||||
> see https://aka.ms/autorest
|
||||
|
||||
``` yaml
|
||||
azure-arm: true
|
||||
require:
|
||||
- https://github.com/Azure/azure-rest-api-specs/blob/d55b8005f05b040b852c15e74a0f3e36494a15e1/specification/privatedns/resource-manager/readme.md
|
||||
- https://github.com/Azure/azure-rest-api-specs/blob/d55b8005f05b040b852c15e74a0f3e36494a15e1/specification/privatedns/resource-manager/readme.go.md
|
||||
license-header: MICROSOFT_MIT_NO_VERSION
|
||||
module-version: 1.2.0
|
||||
```
|
||||
7
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/build.go
generated
vendored
Normal file
7
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/build.go
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
|
||||
// This file enables 'go generate' to regenerate this specific SDK
|
||||
//go:generate pwsh ../../../../eng/scripts/build.ps1 -skipBuild -cleanGenerated -format -tidy -generate resourcemanager/privatedns/armprivatedns
|
||||
|
||||
package armprivatedns
|
||||
28
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/ci.yml
generated
vendored
Normal file
28
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/ci.yml
generated
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
# NOTE: Please refer to https://aka.ms/azsdk/engsys/ci-yaml before editing this file.
|
||||
trigger:
|
||||
branches:
|
||||
include:
|
||||
- main
|
||||
- feature/*
|
||||
- hotfix/*
|
||||
- release/*
|
||||
paths:
|
||||
include:
|
||||
- sdk/resourcemanager/privatedns/armprivatedns/
|
||||
|
||||
pr:
|
||||
branches:
|
||||
include:
|
||||
- main
|
||||
- feature/*
|
||||
- hotfix/*
|
||||
- release/*
|
||||
paths:
|
||||
include:
|
||||
- sdk/resourcemanager/privatedns/armprivatedns/
|
||||
|
||||
stages:
|
||||
- template: /eng/pipelines/templates/jobs/archetype-sdk-client.yml
|
||||
parameters:
|
||||
IncludeRelease: true
|
||||
ServiceDirectory: 'resourcemanager/privatedns/armprivatedns'
|
||||
57
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/client_factory.go
generated
vendored
Normal file
57
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/client_factory.go
generated
vendored
Normal file
@@ -0,0 +1,57 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armprivatedns
|
||||
|
||||
import (
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/arm"
|
||||
)
|
||||
|
||||
// ClientFactory is a client factory used to create any client in this module.
|
||||
// Don't use this type directly, use NewClientFactory instead.
|
||||
type ClientFactory struct {
|
||||
subscriptionID string
|
||||
credential azcore.TokenCredential
|
||||
options *arm.ClientOptions
|
||||
}
|
||||
|
||||
// NewClientFactory creates a new instance of ClientFactory with the specified values.
|
||||
// The parameter values will be propagated to any client created from this factory.
|
||||
// - subscriptionID - Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID
|
||||
// forms part of the URI for every service call.
|
||||
// - credential - used to authorize requests. Usually a credential from azidentity.
|
||||
// - options - pass nil to accept the default values.
|
||||
func NewClientFactory(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ClientFactory, error) {
|
||||
_, err := arm.NewClient(moduleName, moduleVersion, credential, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &ClientFactory{
|
||||
subscriptionID: subscriptionID, credential: credential,
|
||||
options: options.Clone(),
|
||||
}, nil
|
||||
}
|
||||
|
||||
// NewPrivateZonesClient creates a new instance of PrivateZonesClient.
|
||||
func (c *ClientFactory) NewPrivateZonesClient() *PrivateZonesClient {
|
||||
subClient, _ := NewPrivateZonesClient(c.subscriptionID, c.credential, c.options)
|
||||
return subClient
|
||||
}
|
||||
|
||||
// NewRecordSetsClient creates a new instance of RecordSetsClient.
|
||||
func (c *ClientFactory) NewRecordSetsClient() *RecordSetsClient {
|
||||
subClient, _ := NewRecordSetsClient(c.subscriptionID, c.credential, c.options)
|
||||
return subClient
|
||||
}
|
||||
|
||||
// NewVirtualNetworkLinksClient creates a new instance of VirtualNetworkLinksClient.
|
||||
func (c *ClientFactory) NewVirtualNetworkLinksClient() *VirtualNetworkLinksClient {
|
||||
subClient, _ := NewVirtualNetworkLinksClient(c.subscriptionID, c.credential, c.options)
|
||||
return subClient
|
||||
}
|
||||
83
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/constants.go
generated
vendored
Normal file
83
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/constants.go
generated
vendored
Normal file
@@ -0,0 +1,83 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armprivatedns
|
||||
|
||||
const (
|
||||
moduleName = "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns"
|
||||
moduleVersion = "v1.2.0"
|
||||
)
|
||||
|
||||
// ProvisioningState - The provisioning state of the resource. This is a read-only property and any attempt to set this value
|
||||
// will be ignored.
|
||||
type ProvisioningState string
|
||||
|
||||
const (
|
||||
ProvisioningStateCanceled ProvisioningState = "Canceled"
|
||||
ProvisioningStateCreating ProvisioningState = "Creating"
|
||||
ProvisioningStateDeleting ProvisioningState = "Deleting"
|
||||
ProvisioningStateFailed ProvisioningState = "Failed"
|
||||
ProvisioningStateSucceeded ProvisioningState = "Succeeded"
|
||||
ProvisioningStateUpdating ProvisioningState = "Updating"
|
||||
)
|
||||
|
||||
// PossibleProvisioningStateValues returns the possible values for the ProvisioningState const type.
|
||||
func PossibleProvisioningStateValues() []ProvisioningState {
|
||||
return []ProvisioningState{
|
||||
ProvisioningStateCanceled,
|
||||
ProvisioningStateCreating,
|
||||
ProvisioningStateDeleting,
|
||||
ProvisioningStateFailed,
|
||||
ProvisioningStateSucceeded,
|
||||
ProvisioningStateUpdating,
|
||||
}
|
||||
}
|
||||
|
||||
type RecordType string
|
||||
|
||||
const (
|
||||
RecordTypeA RecordType = "A"
|
||||
RecordTypeAAAA RecordType = "AAAA"
|
||||
RecordTypeCNAME RecordType = "CNAME"
|
||||
RecordTypeMX RecordType = "MX"
|
||||
RecordTypePTR RecordType = "PTR"
|
||||
RecordTypeSOA RecordType = "SOA"
|
||||
RecordTypeSRV RecordType = "SRV"
|
||||
RecordTypeTXT RecordType = "TXT"
|
||||
)
|
||||
|
||||
// PossibleRecordTypeValues returns the possible values for the RecordType const type.
|
||||
func PossibleRecordTypeValues() []RecordType {
|
||||
return []RecordType{
|
||||
RecordTypeA,
|
||||
RecordTypeAAAA,
|
||||
RecordTypeCNAME,
|
||||
RecordTypeMX,
|
||||
RecordTypePTR,
|
||||
RecordTypeSOA,
|
||||
RecordTypeSRV,
|
||||
RecordTypeTXT,
|
||||
}
|
||||
}
|
||||
|
||||
// VirtualNetworkLinkState - The status of the virtual network link to the Private DNS zone. Possible values are 'InProgress'
|
||||
// and 'Done'. This is a read-only property and any attempt to set this value will be ignored.
|
||||
type VirtualNetworkLinkState string
|
||||
|
||||
const (
|
||||
VirtualNetworkLinkStateCompleted VirtualNetworkLinkState = "Completed"
|
||||
VirtualNetworkLinkStateInProgress VirtualNetworkLinkState = "InProgress"
|
||||
)
|
||||
|
||||
// PossibleVirtualNetworkLinkStateValues returns the possible values for the VirtualNetworkLinkState const type.
|
||||
func PossibleVirtualNetworkLinkStateValues() []VirtualNetworkLinkState {
|
||||
return []VirtualNetworkLinkState{
|
||||
VirtualNetworkLinkStateCompleted,
|
||||
VirtualNetworkLinkStateInProgress,
|
||||
}
|
||||
}
|
||||
318
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/models.go
generated
vendored
Normal file
318
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/models.go
generated
vendored
Normal file
@@ -0,0 +1,318 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armprivatedns
|
||||
|
||||
// ARecord - An A record.
|
||||
type ARecord struct {
|
||||
// The IPv4 address of this A record.
|
||||
IPv4Address *string
|
||||
}
|
||||
|
||||
// AaaaRecord - An AAAA record.
|
||||
type AaaaRecord struct {
|
||||
// The IPv6 address of this AAAA record.
|
||||
IPv6Address *string
|
||||
}
|
||||
|
||||
// CnameRecord - A CNAME record.
|
||||
type CnameRecord struct {
|
||||
// The canonical name for this CNAME record.
|
||||
Cname *string
|
||||
}
|
||||
|
||||
// MxRecord - An MX record.
|
||||
type MxRecord struct {
|
||||
// The domain name of the mail host for this MX record.
|
||||
Exchange *string
|
||||
|
||||
// The preference value for this MX record.
|
||||
Preference *int32
|
||||
}
|
||||
|
||||
// PrivateZone - Describes a Private DNS zone.
|
||||
type PrivateZone struct {
|
||||
// The ETag of the zone.
|
||||
Etag *string
|
||||
|
||||
// The Azure Region where the resource lives
|
||||
Location *string
|
||||
|
||||
// Properties of the Private DNS zone.
|
||||
Properties *PrivateZoneProperties
|
||||
|
||||
// Resource tags.
|
||||
Tags map[string]*string
|
||||
|
||||
// READ-ONLY; Fully qualified resource Id for the resource. Example - '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateDnsZoneName}'.
|
||||
ID *string
|
||||
|
||||
// READ-ONLY; The name of the resource
|
||||
Name *string
|
||||
|
||||
// READ-ONLY; The type of the resource. Example - 'Microsoft.Network/privateDnsZones'.
|
||||
Type *string
|
||||
}
|
||||
|
||||
// PrivateZoneListResult - The response to a Private DNS zone list operation.
|
||||
type PrivateZoneListResult struct {
|
||||
// Information about the Private DNS zones.
|
||||
Value []*PrivateZone
|
||||
|
||||
// READ-ONLY; The continuation token for the next page of results.
|
||||
NextLink *string
|
||||
}
|
||||
|
||||
// PrivateZoneProperties - Represents the properties of the Private DNS zone.
|
||||
type PrivateZoneProperties struct {
|
||||
// READ-ONLY; Private zone internal Id
|
||||
InternalID *string
|
||||
|
||||
// READ-ONLY; The maximum number of record sets that can be created in this Private DNS zone. This is a read-only property
|
||||
// and any attempt to set this value will be ignored.
|
||||
MaxNumberOfRecordSets *int64
|
||||
|
||||
// READ-ONLY; The maximum number of virtual networks that can be linked to this Private DNS zone. This is a read-only property
|
||||
// and any attempt to set this value will be ignored.
|
||||
MaxNumberOfVirtualNetworkLinks *int64
|
||||
|
||||
// READ-ONLY; The maximum number of virtual networks that can be linked to this Private DNS zone with registration enabled.
|
||||
// This is a read-only property and any attempt to set this value will be ignored.
|
||||
MaxNumberOfVirtualNetworkLinksWithRegistration *int64
|
||||
|
||||
// READ-ONLY; The current number of record sets in this Private DNS zone. This is a read-only property and any attempt to
|
||||
// set this value will be ignored.
|
||||
NumberOfRecordSets *int64
|
||||
|
||||
// READ-ONLY; The current number of virtual networks that are linked to this Private DNS zone. This is a read-only property
|
||||
// and any attempt to set this value will be ignored.
|
||||
NumberOfVirtualNetworkLinks *int64
|
||||
|
||||
// READ-ONLY; The current number of virtual networks that are linked to this Private DNS zone with registration enabled. This
|
||||
// is a read-only property and any attempt to set this value will be ignored.
|
||||
NumberOfVirtualNetworkLinksWithRegistration *int64
|
||||
|
||||
// READ-ONLY; The provisioning state of the resource. This is a read-only property and any attempt to set this value will
|
||||
// be ignored.
|
||||
ProvisioningState *ProvisioningState
|
||||
}
|
||||
|
||||
// ProxyResource - The resource model definition for an ARM proxy resource.
|
||||
type ProxyResource struct {
|
||||
// READ-ONLY; Fully qualified resource Id for the resource. Example - '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateDnsZoneName}'.
|
||||
ID *string
|
||||
|
||||
// READ-ONLY; The name of the resource
|
||||
Name *string
|
||||
|
||||
// READ-ONLY; The type of the resource. Example - 'Microsoft.Network/privateDnsZones'.
|
||||
Type *string
|
||||
}
|
||||
|
||||
// PtrRecord - A PTR record.
|
||||
type PtrRecord struct {
|
||||
// The PTR target domain name for this PTR record.
|
||||
Ptrdname *string
|
||||
}
|
||||
|
||||
// RecordSet - Describes a DNS record set (a collection of DNS records with the same name and type) in a Private DNS zone.
|
||||
type RecordSet struct {
|
||||
// The ETag of the record set.
|
||||
Etag *string
|
||||
|
||||
// The properties of the record set.
|
||||
Properties *RecordSetProperties
|
||||
|
||||
// READ-ONLY; Fully qualified resource Id for the resource. Example - '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateDnsZoneName}'.
|
||||
ID *string
|
||||
|
||||
// READ-ONLY; The name of the resource
|
||||
Name *string
|
||||
|
||||
// READ-ONLY; The type of the resource. Example - 'Microsoft.Network/privateDnsZones'.
|
||||
Type *string
|
||||
}
|
||||
|
||||
// RecordSetListResult - The response to a record set list operation.
|
||||
type RecordSetListResult struct {
|
||||
// Information about the record sets in the response.
|
||||
Value []*RecordSet
|
||||
|
||||
// READ-ONLY; The continuation token for the next page of results.
|
||||
NextLink *string
|
||||
}
|
||||
|
||||
// RecordSetProperties - Represents the properties of the records in the record set.
|
||||
type RecordSetProperties struct {
|
||||
// The list of A records in the record set.
|
||||
ARecords []*ARecord
|
||||
|
||||
// The list of AAAA records in the record set.
|
||||
AaaaRecords []*AaaaRecord
|
||||
|
||||
// The CNAME record in the record set.
|
||||
CnameRecord *CnameRecord
|
||||
|
||||
// The metadata attached to the record set.
|
||||
Metadata map[string]*string
|
||||
|
||||
// The list of MX records in the record set.
|
||||
MxRecords []*MxRecord
|
||||
|
||||
// The list of PTR records in the record set.
|
||||
PtrRecords []*PtrRecord
|
||||
|
||||
// The SOA record in the record set.
|
||||
SoaRecord *SoaRecord
|
||||
|
||||
// The list of SRV records in the record set.
|
||||
SrvRecords []*SrvRecord
|
||||
|
||||
// The TTL (time-to-live) of the records in the record set.
|
||||
TTL *int64
|
||||
|
||||
// The list of TXT records in the record set.
|
||||
TxtRecords []*TxtRecord
|
||||
|
||||
// READ-ONLY; Fully qualified domain name of the record set.
|
||||
Fqdn *string
|
||||
|
||||
// READ-ONLY; Is the record set auto-registered in the Private DNS zone through a virtual network link?
|
||||
IsAutoRegistered *bool
|
||||
}
|
||||
|
||||
// Resource - The core properties of ARM resources
|
||||
type Resource struct {
|
||||
// READ-ONLY; Fully qualified resource Id for the resource. Example - '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateDnsZoneName}'.
|
||||
ID *string
|
||||
|
||||
// READ-ONLY; The name of the resource
|
||||
Name *string
|
||||
|
||||
// READ-ONLY; The type of the resource. Example - 'Microsoft.Network/privateDnsZones'.
|
||||
Type *string
|
||||
}
|
||||
|
||||
// SoaRecord - An SOA record.
|
||||
type SoaRecord struct {
|
||||
// The email contact for this SOA record.
|
||||
Email *string
|
||||
|
||||
// The expire time for this SOA record.
|
||||
ExpireTime *int64
|
||||
|
||||
// The domain name of the authoritative name server for this SOA record.
|
||||
Host *string
|
||||
|
||||
// The minimum value for this SOA record. By convention this is used to determine the negative caching duration.
|
||||
MinimumTTL *int64
|
||||
|
||||
// The refresh value for this SOA record.
|
||||
RefreshTime *int64
|
||||
|
||||
// The retry time for this SOA record.
|
||||
RetryTime *int64
|
||||
|
||||
// The serial number for this SOA record.
|
||||
SerialNumber *int64
|
||||
}
|
||||
|
||||
// SrvRecord - An SRV record.
|
||||
type SrvRecord struct {
|
||||
// The port value for this SRV record.
|
||||
Port *int32
|
||||
|
||||
// The priority value for this SRV record.
|
||||
Priority *int32
|
||||
|
||||
// The target domain name for this SRV record.
|
||||
Target *string
|
||||
|
||||
// The weight value for this SRV record.
|
||||
Weight *int32
|
||||
}
|
||||
|
||||
// SubResource - Reference to another subresource.
|
||||
type SubResource struct {
|
||||
// Resource ID.
|
||||
ID *string
|
||||
}
|
||||
|
||||
// TrackedResource - The resource model definition for a ARM tracked top level resource
|
||||
type TrackedResource struct {
|
||||
// The Azure Region where the resource lives
|
||||
Location *string
|
||||
|
||||
// Resource tags.
|
||||
Tags map[string]*string
|
||||
|
||||
// READ-ONLY; Fully qualified resource Id for the resource. Example - '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateDnsZoneName}'.
|
||||
ID *string
|
||||
|
||||
// READ-ONLY; The name of the resource
|
||||
Name *string
|
||||
|
||||
// READ-ONLY; The type of the resource. Example - 'Microsoft.Network/privateDnsZones'.
|
||||
Type *string
|
||||
}
|
||||
|
||||
// TxtRecord - A TXT record.
|
||||
type TxtRecord struct {
|
||||
// The text value of this TXT record.
|
||||
Value []*string
|
||||
}
|
||||
|
||||
// VirtualNetworkLink - Describes a link to virtual network for a Private DNS zone.
|
||||
type VirtualNetworkLink struct {
|
||||
// The ETag of the virtual network link.
|
||||
Etag *string
|
||||
|
||||
// The Azure Region where the resource lives
|
||||
Location *string
|
||||
|
||||
// Properties of the virtual network link to the Private DNS zone.
|
||||
Properties *VirtualNetworkLinkProperties
|
||||
|
||||
// Resource tags.
|
||||
Tags map[string]*string
|
||||
|
||||
// READ-ONLY; Fully qualified resource Id for the resource. Example - '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateDnsZoneName}'.
|
||||
ID *string
|
||||
|
||||
// READ-ONLY; The name of the resource
|
||||
Name *string
|
||||
|
||||
// READ-ONLY; The type of the resource. Example - 'Microsoft.Network/privateDnsZones'.
|
||||
Type *string
|
||||
}
|
||||
|
||||
// VirtualNetworkLinkListResult - The response to a list virtual network link to Private DNS zone operation.
|
||||
type VirtualNetworkLinkListResult struct {
|
||||
// Information about the virtual network links to the Private DNS zones.
|
||||
Value []*VirtualNetworkLink
|
||||
|
||||
// READ-ONLY; The continuation token for the next page of results.
|
||||
NextLink *string
|
||||
}
|
||||
|
||||
// VirtualNetworkLinkProperties - Represents the properties of the Private DNS zone.
|
||||
type VirtualNetworkLinkProperties struct {
|
||||
// Is auto-registration of virtual machine records in the virtual network in the Private DNS zone enabled?
|
||||
RegistrationEnabled *bool
|
||||
|
||||
// The reference of the virtual network.
|
||||
VirtualNetwork *SubResource
|
||||
|
||||
// READ-ONLY; The provisioning state of the resource. This is a read-only property and any attempt to set this value will
|
||||
// be ignored.
|
||||
ProvisioningState *ProvisioningState
|
||||
|
||||
// READ-ONLY; The status of the virtual network link to the Private DNS zone. Possible values are 'InProgress' and 'Done'.
|
||||
// This is a read-only property and any attempt to set this value will be ignored.
|
||||
VirtualNetworkLinkState *VirtualNetworkLinkState
|
||||
}
|
||||
835
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/models_serde.go
generated
vendored
Normal file
835
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/models_serde.go
generated
vendored
Normal file
@@ -0,0 +1,835 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armprivatedns
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
|
||||
"reflect"
|
||||
)
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type ARecord.
|
||||
func (a ARecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "ipv4Address", a.IPv4Address)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type ARecord.
|
||||
func (a *ARecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", a, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "ipv4Address":
|
||||
err = unpopulate(val, "IPv4Address", &a.IPv4Address)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", a, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type AaaaRecord.
|
||||
func (a AaaaRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "ipv6Address", a.IPv6Address)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type AaaaRecord.
|
||||
func (a *AaaaRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", a, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "ipv6Address":
|
||||
err = unpopulate(val, "IPv6Address", &a.IPv6Address)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", a, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type CnameRecord.
|
||||
func (c CnameRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "cname", c.Cname)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type CnameRecord.
|
||||
func (c *CnameRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", c, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "cname":
|
||||
err = unpopulate(val, "Cname", &c.Cname)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", c, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type MxRecord.
|
||||
func (m MxRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "exchange", m.Exchange)
|
||||
populate(objectMap, "preference", m.Preference)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type MxRecord.
|
||||
func (m *MxRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", m, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "exchange":
|
||||
err = unpopulate(val, "Exchange", &m.Exchange)
|
||||
delete(rawMsg, key)
|
||||
case "preference":
|
||||
err = unpopulate(val, "Preference", &m.Preference)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", m, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type PrivateZone.
|
||||
func (p PrivateZone) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "etag", p.Etag)
|
||||
populate(objectMap, "id", p.ID)
|
||||
populate(objectMap, "location", p.Location)
|
||||
populate(objectMap, "name", p.Name)
|
||||
populate(objectMap, "properties", p.Properties)
|
||||
populate(objectMap, "tags", p.Tags)
|
||||
populate(objectMap, "type", p.Type)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateZone.
|
||||
func (p *PrivateZone) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", p, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "etag":
|
||||
err = unpopulate(val, "Etag", &p.Etag)
|
||||
delete(rawMsg, key)
|
||||
case "id":
|
||||
err = unpopulate(val, "ID", &p.ID)
|
||||
delete(rawMsg, key)
|
||||
case "location":
|
||||
err = unpopulate(val, "Location", &p.Location)
|
||||
delete(rawMsg, key)
|
||||
case "name":
|
||||
err = unpopulate(val, "Name", &p.Name)
|
||||
delete(rawMsg, key)
|
||||
case "properties":
|
||||
err = unpopulate(val, "Properties", &p.Properties)
|
||||
delete(rawMsg, key)
|
||||
case "tags":
|
||||
err = unpopulate(val, "Tags", &p.Tags)
|
||||
delete(rawMsg, key)
|
||||
case "type":
|
||||
err = unpopulate(val, "Type", &p.Type)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", p, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type PrivateZoneListResult.
|
||||
func (p PrivateZoneListResult) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "nextLink", p.NextLink)
|
||||
populate(objectMap, "value", p.Value)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateZoneListResult.
|
||||
func (p *PrivateZoneListResult) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", p, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "nextLink":
|
||||
err = unpopulate(val, "NextLink", &p.NextLink)
|
||||
delete(rawMsg, key)
|
||||
case "value":
|
||||
err = unpopulate(val, "Value", &p.Value)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", p, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type PrivateZoneProperties.
|
||||
func (p PrivateZoneProperties) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "internalId", p.InternalID)
|
||||
populate(objectMap, "maxNumberOfRecordSets", p.MaxNumberOfRecordSets)
|
||||
populate(objectMap, "maxNumberOfVirtualNetworkLinks", p.MaxNumberOfVirtualNetworkLinks)
|
||||
populate(objectMap, "maxNumberOfVirtualNetworkLinksWithRegistration", p.MaxNumberOfVirtualNetworkLinksWithRegistration)
|
||||
populate(objectMap, "numberOfRecordSets", p.NumberOfRecordSets)
|
||||
populate(objectMap, "numberOfVirtualNetworkLinks", p.NumberOfVirtualNetworkLinks)
|
||||
populate(objectMap, "numberOfVirtualNetworkLinksWithRegistration", p.NumberOfVirtualNetworkLinksWithRegistration)
|
||||
populate(objectMap, "provisioningState", p.ProvisioningState)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateZoneProperties.
|
||||
func (p *PrivateZoneProperties) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", p, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "internalId":
|
||||
err = unpopulate(val, "InternalID", &p.InternalID)
|
||||
delete(rawMsg, key)
|
||||
case "maxNumberOfRecordSets":
|
||||
err = unpopulate(val, "MaxNumberOfRecordSets", &p.MaxNumberOfRecordSets)
|
||||
delete(rawMsg, key)
|
||||
case "maxNumberOfVirtualNetworkLinks":
|
||||
err = unpopulate(val, "MaxNumberOfVirtualNetworkLinks", &p.MaxNumberOfVirtualNetworkLinks)
|
||||
delete(rawMsg, key)
|
||||
case "maxNumberOfVirtualNetworkLinksWithRegistration":
|
||||
err = unpopulate(val, "MaxNumberOfVirtualNetworkLinksWithRegistration", &p.MaxNumberOfVirtualNetworkLinksWithRegistration)
|
||||
delete(rawMsg, key)
|
||||
case "numberOfRecordSets":
|
||||
err = unpopulate(val, "NumberOfRecordSets", &p.NumberOfRecordSets)
|
||||
delete(rawMsg, key)
|
||||
case "numberOfVirtualNetworkLinks":
|
||||
err = unpopulate(val, "NumberOfVirtualNetworkLinks", &p.NumberOfVirtualNetworkLinks)
|
||||
delete(rawMsg, key)
|
||||
case "numberOfVirtualNetworkLinksWithRegistration":
|
||||
err = unpopulate(val, "NumberOfVirtualNetworkLinksWithRegistration", &p.NumberOfVirtualNetworkLinksWithRegistration)
|
||||
delete(rawMsg, key)
|
||||
case "provisioningState":
|
||||
err = unpopulate(val, "ProvisioningState", &p.ProvisioningState)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", p, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type ProxyResource.
|
||||
func (p ProxyResource) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "id", p.ID)
|
||||
populate(objectMap, "name", p.Name)
|
||||
populate(objectMap, "type", p.Type)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type ProxyResource.
|
||||
func (p *ProxyResource) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", p, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "id":
|
||||
err = unpopulate(val, "ID", &p.ID)
|
||||
delete(rawMsg, key)
|
||||
case "name":
|
||||
err = unpopulate(val, "Name", &p.Name)
|
||||
delete(rawMsg, key)
|
||||
case "type":
|
||||
err = unpopulate(val, "Type", &p.Type)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", p, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type PtrRecord.
|
||||
func (p PtrRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "ptrdname", p.Ptrdname)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type PtrRecord.
|
||||
func (p *PtrRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", p, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "ptrdname":
|
||||
err = unpopulate(val, "Ptrdname", &p.Ptrdname)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", p, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type RecordSet.
|
||||
func (r RecordSet) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "etag", r.Etag)
|
||||
populate(objectMap, "id", r.ID)
|
||||
populate(objectMap, "name", r.Name)
|
||||
populate(objectMap, "properties", r.Properties)
|
||||
populate(objectMap, "type", r.Type)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type RecordSet.
|
||||
func (r *RecordSet) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "etag":
|
||||
err = unpopulate(val, "Etag", &r.Etag)
|
||||
delete(rawMsg, key)
|
||||
case "id":
|
||||
err = unpopulate(val, "ID", &r.ID)
|
||||
delete(rawMsg, key)
|
||||
case "name":
|
||||
err = unpopulate(val, "Name", &r.Name)
|
||||
delete(rawMsg, key)
|
||||
case "properties":
|
||||
err = unpopulate(val, "Properties", &r.Properties)
|
||||
delete(rawMsg, key)
|
||||
case "type":
|
||||
err = unpopulate(val, "Type", &r.Type)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type RecordSetListResult.
|
||||
func (r RecordSetListResult) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "nextLink", r.NextLink)
|
||||
populate(objectMap, "value", r.Value)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type RecordSetListResult.
|
||||
func (r *RecordSetListResult) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "nextLink":
|
||||
err = unpopulate(val, "NextLink", &r.NextLink)
|
||||
delete(rawMsg, key)
|
||||
case "value":
|
||||
err = unpopulate(val, "Value", &r.Value)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type RecordSetProperties.
|
||||
func (r RecordSetProperties) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "aRecords", r.ARecords)
|
||||
populate(objectMap, "aaaaRecords", r.AaaaRecords)
|
||||
populate(objectMap, "cnameRecord", r.CnameRecord)
|
||||
populate(objectMap, "fqdn", r.Fqdn)
|
||||
populate(objectMap, "isAutoRegistered", r.IsAutoRegistered)
|
||||
populate(objectMap, "metadata", r.Metadata)
|
||||
populate(objectMap, "mxRecords", r.MxRecords)
|
||||
populate(objectMap, "ptrRecords", r.PtrRecords)
|
||||
populate(objectMap, "soaRecord", r.SoaRecord)
|
||||
populate(objectMap, "srvRecords", r.SrvRecords)
|
||||
populate(objectMap, "ttl", r.TTL)
|
||||
populate(objectMap, "txtRecords", r.TxtRecords)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type RecordSetProperties.
|
||||
func (r *RecordSetProperties) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "aRecords":
|
||||
err = unpopulate(val, "ARecords", &r.ARecords)
|
||||
delete(rawMsg, key)
|
||||
case "aaaaRecords":
|
||||
err = unpopulate(val, "AaaaRecords", &r.AaaaRecords)
|
||||
delete(rawMsg, key)
|
||||
case "cnameRecord":
|
||||
err = unpopulate(val, "CnameRecord", &r.CnameRecord)
|
||||
delete(rawMsg, key)
|
||||
case "fqdn":
|
||||
err = unpopulate(val, "Fqdn", &r.Fqdn)
|
||||
delete(rawMsg, key)
|
||||
case "isAutoRegistered":
|
||||
err = unpopulate(val, "IsAutoRegistered", &r.IsAutoRegistered)
|
||||
delete(rawMsg, key)
|
||||
case "metadata":
|
||||
err = unpopulate(val, "Metadata", &r.Metadata)
|
||||
delete(rawMsg, key)
|
||||
case "mxRecords":
|
||||
err = unpopulate(val, "MxRecords", &r.MxRecords)
|
||||
delete(rawMsg, key)
|
||||
case "ptrRecords":
|
||||
err = unpopulate(val, "PtrRecords", &r.PtrRecords)
|
||||
delete(rawMsg, key)
|
||||
case "soaRecord":
|
||||
err = unpopulate(val, "SoaRecord", &r.SoaRecord)
|
||||
delete(rawMsg, key)
|
||||
case "srvRecords":
|
||||
err = unpopulate(val, "SrvRecords", &r.SrvRecords)
|
||||
delete(rawMsg, key)
|
||||
case "ttl":
|
||||
err = unpopulate(val, "TTL", &r.TTL)
|
||||
delete(rawMsg, key)
|
||||
case "txtRecords":
|
||||
err = unpopulate(val, "TxtRecords", &r.TxtRecords)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type Resource.
|
||||
func (r Resource) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "id", r.ID)
|
||||
populate(objectMap, "name", r.Name)
|
||||
populate(objectMap, "type", r.Type)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type Resource.
|
||||
func (r *Resource) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "id":
|
||||
err = unpopulate(val, "ID", &r.ID)
|
||||
delete(rawMsg, key)
|
||||
case "name":
|
||||
err = unpopulate(val, "Name", &r.Name)
|
||||
delete(rawMsg, key)
|
||||
case "type":
|
||||
err = unpopulate(val, "Type", &r.Type)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", r, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type SoaRecord.
|
||||
func (s SoaRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "email", s.Email)
|
||||
populate(objectMap, "expireTime", s.ExpireTime)
|
||||
populate(objectMap, "host", s.Host)
|
||||
populate(objectMap, "minimumTtl", s.MinimumTTL)
|
||||
populate(objectMap, "refreshTime", s.RefreshTime)
|
||||
populate(objectMap, "retryTime", s.RetryTime)
|
||||
populate(objectMap, "serialNumber", s.SerialNumber)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type SoaRecord.
|
||||
func (s *SoaRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", s, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "email":
|
||||
err = unpopulate(val, "Email", &s.Email)
|
||||
delete(rawMsg, key)
|
||||
case "expireTime":
|
||||
err = unpopulate(val, "ExpireTime", &s.ExpireTime)
|
||||
delete(rawMsg, key)
|
||||
case "host":
|
||||
err = unpopulate(val, "Host", &s.Host)
|
||||
delete(rawMsg, key)
|
||||
case "minimumTtl":
|
||||
err = unpopulate(val, "MinimumTTL", &s.MinimumTTL)
|
||||
delete(rawMsg, key)
|
||||
case "refreshTime":
|
||||
err = unpopulate(val, "RefreshTime", &s.RefreshTime)
|
||||
delete(rawMsg, key)
|
||||
case "retryTime":
|
||||
err = unpopulate(val, "RetryTime", &s.RetryTime)
|
||||
delete(rawMsg, key)
|
||||
case "serialNumber":
|
||||
err = unpopulate(val, "SerialNumber", &s.SerialNumber)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", s, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type SrvRecord.
|
||||
func (s SrvRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "port", s.Port)
|
||||
populate(objectMap, "priority", s.Priority)
|
||||
populate(objectMap, "target", s.Target)
|
||||
populate(objectMap, "weight", s.Weight)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type SrvRecord.
|
||||
func (s *SrvRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", s, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "port":
|
||||
err = unpopulate(val, "Port", &s.Port)
|
||||
delete(rawMsg, key)
|
||||
case "priority":
|
||||
err = unpopulate(val, "Priority", &s.Priority)
|
||||
delete(rawMsg, key)
|
||||
case "target":
|
||||
err = unpopulate(val, "Target", &s.Target)
|
||||
delete(rawMsg, key)
|
||||
case "weight":
|
||||
err = unpopulate(val, "Weight", &s.Weight)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", s, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type SubResource.
|
||||
func (s SubResource) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "id", s.ID)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type SubResource.
|
||||
func (s *SubResource) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", s, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "id":
|
||||
err = unpopulate(val, "ID", &s.ID)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", s, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type TrackedResource.
|
||||
func (t TrackedResource) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "id", t.ID)
|
||||
populate(objectMap, "location", t.Location)
|
||||
populate(objectMap, "name", t.Name)
|
||||
populate(objectMap, "tags", t.Tags)
|
||||
populate(objectMap, "type", t.Type)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type TrackedResource.
|
||||
func (t *TrackedResource) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", t, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "id":
|
||||
err = unpopulate(val, "ID", &t.ID)
|
||||
delete(rawMsg, key)
|
||||
case "location":
|
||||
err = unpopulate(val, "Location", &t.Location)
|
||||
delete(rawMsg, key)
|
||||
case "name":
|
||||
err = unpopulate(val, "Name", &t.Name)
|
||||
delete(rawMsg, key)
|
||||
case "tags":
|
||||
err = unpopulate(val, "Tags", &t.Tags)
|
||||
delete(rawMsg, key)
|
||||
case "type":
|
||||
err = unpopulate(val, "Type", &t.Type)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", t, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type TxtRecord.
|
||||
func (t TxtRecord) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "value", t.Value)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type TxtRecord.
|
||||
func (t *TxtRecord) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", t, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "value":
|
||||
err = unpopulate(val, "Value", &t.Value)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", t, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type VirtualNetworkLink.
|
||||
func (v VirtualNetworkLink) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "etag", v.Etag)
|
||||
populate(objectMap, "id", v.ID)
|
||||
populate(objectMap, "location", v.Location)
|
||||
populate(objectMap, "name", v.Name)
|
||||
populate(objectMap, "properties", v.Properties)
|
||||
populate(objectMap, "tags", v.Tags)
|
||||
populate(objectMap, "type", v.Type)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type VirtualNetworkLink.
|
||||
func (v *VirtualNetworkLink) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", v, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "etag":
|
||||
err = unpopulate(val, "Etag", &v.Etag)
|
||||
delete(rawMsg, key)
|
||||
case "id":
|
||||
err = unpopulate(val, "ID", &v.ID)
|
||||
delete(rawMsg, key)
|
||||
case "location":
|
||||
err = unpopulate(val, "Location", &v.Location)
|
||||
delete(rawMsg, key)
|
||||
case "name":
|
||||
err = unpopulate(val, "Name", &v.Name)
|
||||
delete(rawMsg, key)
|
||||
case "properties":
|
||||
err = unpopulate(val, "Properties", &v.Properties)
|
||||
delete(rawMsg, key)
|
||||
case "tags":
|
||||
err = unpopulate(val, "Tags", &v.Tags)
|
||||
delete(rawMsg, key)
|
||||
case "type":
|
||||
err = unpopulate(val, "Type", &v.Type)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", v, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type VirtualNetworkLinkListResult.
|
||||
func (v VirtualNetworkLinkListResult) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "nextLink", v.NextLink)
|
||||
populate(objectMap, "value", v.Value)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type VirtualNetworkLinkListResult.
|
||||
func (v *VirtualNetworkLinkListResult) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", v, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "nextLink":
|
||||
err = unpopulate(val, "NextLink", &v.NextLink)
|
||||
delete(rawMsg, key)
|
||||
case "value":
|
||||
err = unpopulate(val, "Value", &v.Value)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", v, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// MarshalJSON implements the json.Marshaller interface for type VirtualNetworkLinkProperties.
|
||||
func (v VirtualNetworkLinkProperties) MarshalJSON() ([]byte, error) {
|
||||
objectMap := make(map[string]any)
|
||||
populate(objectMap, "provisioningState", v.ProvisioningState)
|
||||
populate(objectMap, "registrationEnabled", v.RegistrationEnabled)
|
||||
populate(objectMap, "virtualNetwork", v.VirtualNetwork)
|
||||
populate(objectMap, "virtualNetworkLinkState", v.VirtualNetworkLinkState)
|
||||
return json.Marshal(objectMap)
|
||||
}
|
||||
|
||||
// UnmarshalJSON implements the json.Unmarshaller interface for type VirtualNetworkLinkProperties.
|
||||
func (v *VirtualNetworkLinkProperties) UnmarshalJSON(data []byte) error {
|
||||
var rawMsg map[string]json.RawMessage
|
||||
if err := json.Unmarshal(data, &rawMsg); err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", v, err)
|
||||
}
|
||||
for key, val := range rawMsg {
|
||||
var err error
|
||||
switch key {
|
||||
case "provisioningState":
|
||||
err = unpopulate(val, "ProvisioningState", &v.ProvisioningState)
|
||||
delete(rawMsg, key)
|
||||
case "registrationEnabled":
|
||||
err = unpopulate(val, "RegistrationEnabled", &v.RegistrationEnabled)
|
||||
delete(rawMsg, key)
|
||||
case "virtualNetwork":
|
||||
err = unpopulate(val, "VirtualNetwork", &v.VirtualNetwork)
|
||||
delete(rawMsg, key)
|
||||
case "virtualNetworkLinkState":
|
||||
err = unpopulate(val, "VirtualNetworkLinkState", &v.VirtualNetworkLinkState)
|
||||
delete(rawMsg, key)
|
||||
}
|
||||
if err != nil {
|
||||
return fmt.Errorf("unmarshalling type %T: %v", v, err)
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func populate(m map[string]any, k string, v any) {
|
||||
if v == nil {
|
||||
return
|
||||
} else if azcore.IsNullValue(v) {
|
||||
m[k] = nil
|
||||
} else if !reflect.ValueOf(v).IsNil() {
|
||||
m[k] = v
|
||||
}
|
||||
}
|
||||
|
||||
func unpopulate(data json.RawMessage, fn string, v any) error {
|
||||
if data == nil {
|
||||
return nil
|
||||
}
|
||||
if err := json.Unmarshal(data, v); err != nil {
|
||||
return fmt.Errorf("struct field %s: %v", fn, err)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
163
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/options.go
generated
vendored
Normal file
163
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/options.go
generated
vendored
Normal file
@@ -0,0 +1,163 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armprivatedns
|
||||
|
||||
// PrivateZonesClientBeginCreateOrUpdateOptions contains the optional parameters for the PrivateZonesClient.BeginCreateOrUpdate
|
||||
// method.
|
||||
type PrivateZonesClientBeginCreateOrUpdateOptions struct {
|
||||
// The ETag of the Private DNS zone. Omit this value to always overwrite the current zone. Specify the last-seen ETag value
|
||||
// to prevent accidentally overwriting any concurrent changes.
|
||||
IfMatch *string
|
||||
|
||||
// Set to '*' to allow a new Private DNS zone to be created, but to prevent updating an existing zone. Other values will be
|
||||
// ignored.
|
||||
IfNoneMatch *string
|
||||
|
||||
// Resumes the LRO from the provided token.
|
||||
ResumeToken string
|
||||
}
|
||||
|
||||
// PrivateZonesClientBeginDeleteOptions contains the optional parameters for the PrivateZonesClient.BeginDelete method.
|
||||
type PrivateZonesClientBeginDeleteOptions struct {
|
||||
// The ETag of the Private DNS zone. Omit this value to always delete the current zone. Specify the last-seen ETag value to
|
||||
// prevent accidentally deleting any concurrent changes.
|
||||
IfMatch *string
|
||||
|
||||
// Resumes the LRO from the provided token.
|
||||
ResumeToken string
|
||||
}
|
||||
|
||||
// PrivateZonesClientBeginUpdateOptions contains the optional parameters for the PrivateZonesClient.BeginUpdate method.
|
||||
type PrivateZonesClientBeginUpdateOptions struct {
|
||||
// The ETag of the Private DNS zone. Omit this value to always overwrite the current zone. Specify the last-seen ETag value
|
||||
// to prevent accidentally overwriting any concurrent changes.
|
||||
IfMatch *string
|
||||
|
||||
// Resumes the LRO from the provided token.
|
||||
ResumeToken string
|
||||
}
|
||||
|
||||
// PrivateZonesClientGetOptions contains the optional parameters for the PrivateZonesClient.Get method.
|
||||
type PrivateZonesClientGetOptions struct {
|
||||
// placeholder for future optional parameters
|
||||
}
|
||||
|
||||
// PrivateZonesClientListByResourceGroupOptions contains the optional parameters for the PrivateZonesClient.NewListByResourceGroupPager
|
||||
// method.
|
||||
type PrivateZonesClientListByResourceGroupOptions struct {
|
||||
// The maximum number of record sets to return. If not specified, returns up to 100 record sets.
|
||||
Top *int32
|
||||
}
|
||||
|
||||
// PrivateZonesClientListOptions contains the optional parameters for the PrivateZonesClient.NewListPager method.
|
||||
type PrivateZonesClientListOptions struct {
|
||||
// The maximum number of Private DNS zones to return. If not specified, returns up to 100 zones.
|
||||
Top *int32
|
||||
}
|
||||
|
||||
// RecordSetsClientCreateOrUpdateOptions contains the optional parameters for the RecordSetsClient.CreateOrUpdate method.
|
||||
type RecordSetsClientCreateOrUpdateOptions struct {
|
||||
// The ETag of the record set. Omit this value to always overwrite the current record set. Specify the last-seen ETag value
|
||||
// to prevent accidentally overwriting any concurrent changes.
|
||||
IfMatch *string
|
||||
|
||||
// Set to '*' to allow a new record set to be created, but to prevent updating an existing record set. Other values will be
|
||||
// ignored.
|
||||
IfNoneMatch *string
|
||||
}
|
||||
|
||||
// RecordSetsClientDeleteOptions contains the optional parameters for the RecordSetsClient.Delete method.
|
||||
type RecordSetsClientDeleteOptions struct {
|
||||
// The ETag of the record set. Omit this value to always delete the current record set. Specify the last-seen ETag value to
|
||||
// prevent accidentally deleting any concurrent changes.
|
||||
IfMatch *string
|
||||
}
|
||||
|
||||
// RecordSetsClientGetOptions contains the optional parameters for the RecordSetsClient.Get method.
|
||||
type RecordSetsClientGetOptions struct {
|
||||
// placeholder for future optional parameters
|
||||
}
|
||||
|
||||
// RecordSetsClientListByTypeOptions contains the optional parameters for the RecordSetsClient.NewListByTypePager method.
|
||||
type RecordSetsClientListByTypeOptions struct {
|
||||
// The suffix label of the record set name to be used to filter the record set enumeration. If this parameter is specified,
|
||||
// the returned enumeration will only contain records that end with ".".
|
||||
Recordsetnamesuffix *string
|
||||
|
||||
// The maximum number of record sets to return. If not specified, returns up to 100 record sets.
|
||||
Top *int32
|
||||
}
|
||||
|
||||
// RecordSetsClientListOptions contains the optional parameters for the RecordSetsClient.NewListPager method.
|
||||
type RecordSetsClientListOptions struct {
|
||||
// The suffix label of the record set name to be used to filter the record set enumeration. If this parameter is specified,
|
||||
// the returned enumeration will only contain records that end with ".".
|
||||
Recordsetnamesuffix *string
|
||||
|
||||
// The maximum number of record sets to return. If not specified, returns up to 100 record sets.
|
||||
Top *int32
|
||||
}
|
||||
|
||||
// RecordSetsClientUpdateOptions contains the optional parameters for the RecordSetsClient.Update method.
|
||||
type RecordSetsClientUpdateOptions struct {
|
||||
// The ETag of the record set. Omit this value to always overwrite the current record set. Specify the last-seen ETag value
|
||||
// to prevent accidentally overwriting concurrent changes.
|
||||
IfMatch *string
|
||||
}
|
||||
|
||||
// VirtualNetworkLinksClientBeginCreateOrUpdateOptions contains the optional parameters for the VirtualNetworkLinksClient.BeginCreateOrUpdate
|
||||
// method.
|
||||
type VirtualNetworkLinksClientBeginCreateOrUpdateOptions struct {
|
||||
// The ETag of the virtual network link to the Private DNS zone. Omit this value to always overwrite the current virtual network
|
||||
// link. Specify the last-seen ETag value to prevent accidentally overwriting
|
||||
// any concurrent changes.
|
||||
IfMatch *string
|
||||
|
||||
// Set to '*' to allow a new virtual network link to the Private DNS zone to be created, but to prevent updating an existing
|
||||
// link. Other values will be ignored.
|
||||
IfNoneMatch *string
|
||||
|
||||
// Resumes the LRO from the provided token.
|
||||
ResumeToken string
|
||||
}
|
||||
|
||||
// VirtualNetworkLinksClientBeginDeleteOptions contains the optional parameters for the VirtualNetworkLinksClient.BeginDelete
|
||||
// method.
|
||||
type VirtualNetworkLinksClientBeginDeleteOptions struct {
|
||||
// The ETag of the virtual network link to the Private DNS zone. Omit this value to always delete the current zone. Specify
|
||||
// the last-seen ETag value to prevent accidentally deleting any concurrent
|
||||
// changes.
|
||||
IfMatch *string
|
||||
|
||||
// Resumes the LRO from the provided token.
|
||||
ResumeToken string
|
||||
}
|
||||
|
||||
// VirtualNetworkLinksClientBeginUpdateOptions contains the optional parameters for the VirtualNetworkLinksClient.BeginUpdate
|
||||
// method.
|
||||
type VirtualNetworkLinksClientBeginUpdateOptions struct {
|
||||
// The ETag of the virtual network link to the Private DNS zone. Omit this value to always overwrite the current virtual network
|
||||
// link. Specify the last-seen ETag value to prevent accidentally overwriting
|
||||
// any concurrent changes.
|
||||
IfMatch *string
|
||||
|
||||
// Resumes the LRO from the provided token.
|
||||
ResumeToken string
|
||||
}
|
||||
|
||||
// VirtualNetworkLinksClientGetOptions contains the optional parameters for the VirtualNetworkLinksClient.Get method.
|
||||
type VirtualNetworkLinksClientGetOptions struct {
|
||||
// placeholder for future optional parameters
|
||||
}
|
||||
|
||||
// VirtualNetworkLinksClientListOptions contains the optional parameters for the VirtualNetworkLinksClient.NewListPager method.
|
||||
type VirtualNetworkLinksClientListOptions struct {
|
||||
// The maximum number of virtual network links to return. If not specified, returns up to 100 virtual network links.
|
||||
Top *int32
|
||||
}
|
||||
485
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/privatezones_client.go
generated
vendored
Normal file
485
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/privatezones_client.go
generated
vendored
Normal file
@@ -0,0 +1,485 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armprivatedns
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/arm"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/policy"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"strconv"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// PrivateZonesClient contains the methods for the PrivateZones group.
|
||||
// Don't use this type directly, use NewPrivateZonesClient() instead.
|
||||
type PrivateZonesClient struct {
|
||||
internal *arm.Client
|
||||
subscriptionID string
|
||||
}
|
||||
|
||||
// NewPrivateZonesClient creates a new instance of PrivateZonesClient with the specified values.
|
||||
// - subscriptionID - Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID
|
||||
// forms part of the URI for every service call.
|
||||
// - credential - used to authorize requests. Usually a credential from azidentity.
|
||||
// - options - pass nil to accept the default values.
|
||||
func NewPrivateZonesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*PrivateZonesClient, error) {
|
||||
cl, err := arm.NewClient(moduleName, moduleVersion, credential, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
client := &PrivateZonesClient{
|
||||
subscriptionID: subscriptionID,
|
||||
internal: cl,
|
||||
}
|
||||
return client, nil
|
||||
}
|
||||
|
||||
// BeginCreateOrUpdate - Creates or updates a Private DNS zone. Does not modify Links to virtual networks or DNS records within
|
||||
// the zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - parameters - Parameters supplied to the CreateOrUpdate operation.
|
||||
// - options - PrivateZonesClientBeginCreateOrUpdateOptions contains the optional parameters for the PrivateZonesClient.BeginCreateOrUpdate
|
||||
// method.
|
||||
func (client *PrivateZonesClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, privateZoneName string, parameters PrivateZone, options *PrivateZonesClientBeginCreateOrUpdateOptions) (*runtime.Poller[PrivateZonesClientCreateOrUpdateResponse], error) {
|
||||
if options == nil || options.ResumeToken == "" {
|
||||
resp, err := client.createOrUpdate(ctx, resourceGroupName, privateZoneName, parameters, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[PrivateZonesClientCreateOrUpdateResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
return poller, err
|
||||
} else {
|
||||
return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[PrivateZonesClientCreateOrUpdateResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// CreateOrUpdate - Creates or updates a Private DNS zone. Does not modify Links to virtual networks or DNS records within
|
||||
// the zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
func (client *PrivateZonesClient) createOrUpdate(ctx context.Context, resourceGroupName string, privateZoneName string, parameters PrivateZone, options *PrivateZonesClientBeginCreateOrUpdateOptions) (*http.Response, error) {
|
||||
var err error
|
||||
const operationName = "PrivateZonesClient.BeginCreateOrUpdate"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.createOrUpdateCreateRequest(ctx, resourceGroupName, privateZoneName, parameters, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated, http.StatusAccepted) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return nil, err
|
||||
}
|
||||
return httpResp, nil
|
||||
}
|
||||
|
||||
// createOrUpdateCreateRequest creates the CreateOrUpdate request.
|
||||
func (client *PrivateZonesClient) createOrUpdateCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, parameters PrivateZone, options *PrivateZonesClientBeginCreateOrUpdateOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
if options != nil && options.IfNoneMatch != nil {
|
||||
req.Raw().Header["If-None-Match"] = []string{*options.IfNoneMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
if err := runtime.MarshalAsJSON(req, parameters); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// BeginDelete - Deletes a Private DNS zone. WARNING: All DNS records in the zone will also be deleted. This operation cannot
|
||||
// be undone. Private DNS zone cannot be deleted unless all virtual network links to it are
|
||||
// removed.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - options - PrivateZonesClientBeginDeleteOptions contains the optional parameters for the PrivateZonesClient.BeginDelete
|
||||
// method.
|
||||
func (client *PrivateZonesClient) BeginDelete(ctx context.Context, resourceGroupName string, privateZoneName string, options *PrivateZonesClientBeginDeleteOptions) (*runtime.Poller[PrivateZonesClientDeleteResponse], error) {
|
||||
if options == nil || options.ResumeToken == "" {
|
||||
resp, err := client.deleteOperation(ctx, resourceGroupName, privateZoneName, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[PrivateZonesClientDeleteResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
return poller, err
|
||||
} else {
|
||||
return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[PrivateZonesClientDeleteResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// Delete - Deletes a Private DNS zone. WARNING: All DNS records in the zone will also be deleted. This operation cannot be
|
||||
// undone. Private DNS zone cannot be deleted unless all virtual network links to it are
|
||||
// removed.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
func (client *PrivateZonesClient) deleteOperation(ctx context.Context, resourceGroupName string, privateZoneName string, options *PrivateZonesClientBeginDeleteOptions) (*http.Response, error) {
|
||||
var err error
|
||||
const operationName = "PrivateZonesClient.BeginDelete"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.deleteCreateRequest(ctx, resourceGroupName, privateZoneName, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted, http.StatusNoContent) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return nil, err
|
||||
}
|
||||
return httpResp, nil
|
||||
}
|
||||
|
||||
// deleteCreateRequest creates the Delete request.
|
||||
func (client *PrivateZonesClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, options *PrivateZonesClientBeginDeleteOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// Get - Gets a Private DNS zone. Retrieves the zone properties, but not the virtual networks links or the record sets within
|
||||
// the zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - options - PrivateZonesClientGetOptions contains the optional parameters for the PrivateZonesClient.Get method.
|
||||
func (client *PrivateZonesClient) Get(ctx context.Context, resourceGroupName string, privateZoneName string, options *PrivateZonesClientGetOptions) (PrivateZonesClientGetResponse, error) {
|
||||
var err error
|
||||
const operationName = "PrivateZonesClient.Get"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.getCreateRequest(ctx, resourceGroupName, privateZoneName, options)
|
||||
if err != nil {
|
||||
return PrivateZonesClientGetResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return PrivateZonesClientGetResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return PrivateZonesClientGetResponse{}, err
|
||||
}
|
||||
resp, err := client.getHandleResponse(httpResp)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// getCreateRequest creates the Get request.
|
||||
func (client *PrivateZonesClient) getCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, options *PrivateZonesClientGetOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// getHandleResponse handles the Get response.
|
||||
func (client *PrivateZonesClient) getHandleResponse(resp *http.Response) (PrivateZonesClientGetResponse, error) {
|
||||
result := PrivateZonesClientGetResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.PrivateZone); err != nil {
|
||||
return PrivateZonesClientGetResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// NewListPager - Lists the Private DNS zones in all resource groups in a subscription.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - options - PrivateZonesClientListOptions contains the optional parameters for the PrivateZonesClient.NewListPager method.
|
||||
func (client *PrivateZonesClient) NewListPager(options *PrivateZonesClientListOptions) *runtime.Pager[PrivateZonesClientListResponse] {
|
||||
return runtime.NewPager(runtime.PagingHandler[PrivateZonesClientListResponse]{
|
||||
More: func(page PrivateZonesClientListResponse) bool {
|
||||
return page.NextLink != nil && len(*page.NextLink) > 0
|
||||
},
|
||||
Fetcher: func(ctx context.Context, page *PrivateZonesClientListResponse) (PrivateZonesClientListResponse, error) {
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "PrivateZonesClient.NewListPager")
|
||||
nextLink := ""
|
||||
if page != nil {
|
||||
nextLink = *page.NextLink
|
||||
}
|
||||
resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) {
|
||||
return client.listCreateRequest(ctx, options)
|
||||
}, nil)
|
||||
if err != nil {
|
||||
return PrivateZonesClientListResponse{}, err
|
||||
}
|
||||
return client.listHandleResponse(resp)
|
||||
},
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
|
||||
// listCreateRequest creates the List request.
|
||||
func (client *PrivateZonesClient) listCreateRequest(ctx context.Context, options *PrivateZonesClientListOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateDnsZones"
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
if options != nil && options.Top != nil {
|
||||
reqQP.Set("$top", strconv.FormatInt(int64(*options.Top), 10))
|
||||
}
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// listHandleResponse handles the List response.
|
||||
func (client *PrivateZonesClient) listHandleResponse(resp *http.Response) (PrivateZonesClientListResponse, error) {
|
||||
result := PrivateZonesClientListResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.PrivateZoneListResult); err != nil {
|
||||
return PrivateZonesClientListResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// NewListByResourceGroupPager - Lists the Private DNS zones within a resource group.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - options - PrivateZonesClientListByResourceGroupOptions contains the optional parameters for the PrivateZonesClient.NewListByResourceGroupPager
|
||||
// method.
|
||||
func (client *PrivateZonesClient) NewListByResourceGroupPager(resourceGroupName string, options *PrivateZonesClientListByResourceGroupOptions) *runtime.Pager[PrivateZonesClientListByResourceGroupResponse] {
|
||||
return runtime.NewPager(runtime.PagingHandler[PrivateZonesClientListByResourceGroupResponse]{
|
||||
More: func(page PrivateZonesClientListByResourceGroupResponse) bool {
|
||||
return page.NextLink != nil && len(*page.NextLink) > 0
|
||||
},
|
||||
Fetcher: func(ctx context.Context, page *PrivateZonesClientListByResourceGroupResponse) (PrivateZonesClientListByResourceGroupResponse, error) {
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "PrivateZonesClient.NewListByResourceGroupPager")
|
||||
nextLink := ""
|
||||
if page != nil {
|
||||
nextLink = *page.NextLink
|
||||
}
|
||||
resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) {
|
||||
return client.listByResourceGroupCreateRequest(ctx, resourceGroupName, options)
|
||||
}, nil)
|
||||
if err != nil {
|
||||
return PrivateZonesClientListByResourceGroupResponse{}, err
|
||||
}
|
||||
return client.listByResourceGroupHandleResponse(resp)
|
||||
},
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
|
||||
// listByResourceGroupCreateRequest creates the ListByResourceGroup request.
|
||||
func (client *PrivateZonesClient) listByResourceGroupCreateRequest(ctx context.Context, resourceGroupName string, options *PrivateZonesClientListByResourceGroupOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
if options != nil && options.Top != nil {
|
||||
reqQP.Set("$top", strconv.FormatInt(int64(*options.Top), 10))
|
||||
}
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// listByResourceGroupHandleResponse handles the ListByResourceGroup response.
|
||||
func (client *PrivateZonesClient) listByResourceGroupHandleResponse(resp *http.Response) (PrivateZonesClientListByResourceGroupResponse, error) {
|
||||
result := PrivateZonesClientListByResourceGroupResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.PrivateZoneListResult); err != nil {
|
||||
return PrivateZonesClientListByResourceGroupResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// BeginUpdate - Updates a Private DNS zone. Does not modify virtual network links or DNS records within the zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - parameters - Parameters supplied to the Update operation.
|
||||
// - options - PrivateZonesClientBeginUpdateOptions contains the optional parameters for the PrivateZonesClient.BeginUpdate
|
||||
// method.
|
||||
func (client *PrivateZonesClient) BeginUpdate(ctx context.Context, resourceGroupName string, privateZoneName string, parameters PrivateZone, options *PrivateZonesClientBeginUpdateOptions) (*runtime.Poller[PrivateZonesClientUpdateResponse], error) {
|
||||
if options == nil || options.ResumeToken == "" {
|
||||
resp, err := client.update(ctx, resourceGroupName, privateZoneName, parameters, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[PrivateZonesClientUpdateResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
return poller, err
|
||||
} else {
|
||||
return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[PrivateZonesClientUpdateResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// Update - Updates a Private DNS zone. Does not modify virtual network links or DNS records within the zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
func (client *PrivateZonesClient) update(ctx context.Context, resourceGroupName string, privateZoneName string, parameters PrivateZone, options *PrivateZonesClientBeginUpdateOptions) (*http.Response, error) {
|
||||
var err error
|
||||
const operationName = "PrivateZonesClient.BeginUpdate"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.updateCreateRequest(ctx, resourceGroupName, privateZoneName, parameters, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return nil, err
|
||||
}
|
||||
return httpResp, nil
|
||||
}
|
||||
|
||||
// updateCreateRequest creates the Update request.
|
||||
func (client *PrivateZonesClient) updateCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, parameters PrivateZone, options *PrivateZonesClientBeginUpdateOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
if err := runtime.MarshalAsJSON(req, parameters); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return req, nil
|
||||
}
|
||||
489
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/recordsets_client.go
generated
vendored
Normal file
489
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/recordsets_client.go
generated
vendored
Normal file
@@ -0,0 +1,489 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armprivatedns
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/arm"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/policy"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"strconv"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// RecordSetsClient contains the methods for the RecordSets group.
|
||||
// Don't use this type directly, use NewRecordSetsClient() instead.
|
||||
type RecordSetsClient struct {
|
||||
internal *arm.Client
|
||||
subscriptionID string
|
||||
}
|
||||
|
||||
// NewRecordSetsClient creates a new instance of RecordSetsClient with the specified values.
|
||||
// - subscriptionID - Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID
|
||||
// forms part of the URI for every service call.
|
||||
// - credential - used to authorize requests. Usually a credential from azidentity.
|
||||
// - options - pass nil to accept the default values.
|
||||
func NewRecordSetsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*RecordSetsClient, error) {
|
||||
cl, err := arm.NewClient(moduleName, moduleVersion, credential, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
client := &RecordSetsClient{
|
||||
subscriptionID: subscriptionID,
|
||||
internal: cl,
|
||||
}
|
||||
return client, nil
|
||||
}
|
||||
|
||||
// CreateOrUpdate - Creates or updates a record set within a Private DNS zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - recordType - The type of DNS record in this record set. Record sets of type SOA can be updated but not created (they are
|
||||
// created when the Private DNS zone is created).
|
||||
// - relativeRecordSetName - The name of the record set, relative to the name of the zone.
|
||||
// - parameters - Parameters supplied to the CreateOrUpdate operation.
|
||||
// - options - RecordSetsClientCreateOrUpdateOptions contains the optional parameters for the RecordSetsClient.CreateOrUpdate
|
||||
// method.
|
||||
func (client *RecordSetsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, privateZoneName string, recordType RecordType, relativeRecordSetName string, parameters RecordSet, options *RecordSetsClientCreateOrUpdateOptions) (RecordSetsClientCreateOrUpdateResponse, error) {
|
||||
var err error
|
||||
const operationName = "RecordSetsClient.CreateOrUpdate"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.createOrUpdateCreateRequest(ctx, resourceGroupName, privateZoneName, recordType, relativeRecordSetName, parameters, options)
|
||||
if err != nil {
|
||||
return RecordSetsClientCreateOrUpdateResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return RecordSetsClientCreateOrUpdateResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return RecordSetsClientCreateOrUpdateResponse{}, err
|
||||
}
|
||||
resp, err := client.createOrUpdateHandleResponse(httpResp)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// createOrUpdateCreateRequest creates the CreateOrUpdate request.
|
||||
func (client *RecordSetsClient) createOrUpdateCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, recordType RecordType, relativeRecordSetName string, parameters RecordSet, options *RecordSetsClientCreateOrUpdateOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/{recordType}/{relativeRecordSetName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if recordType == "" {
|
||||
return nil, errors.New("parameter recordType cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{recordType}", url.PathEscape(string(recordType)))
|
||||
urlPath = strings.ReplaceAll(urlPath, "{relativeRecordSetName}", relativeRecordSetName)
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
if options != nil && options.IfNoneMatch != nil {
|
||||
req.Raw().Header["If-None-Match"] = []string{*options.IfNoneMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
if err := runtime.MarshalAsJSON(req, parameters); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// createOrUpdateHandleResponse handles the CreateOrUpdate response.
|
||||
func (client *RecordSetsClient) createOrUpdateHandleResponse(resp *http.Response) (RecordSetsClientCreateOrUpdateResponse, error) {
|
||||
result := RecordSetsClientCreateOrUpdateResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.RecordSet); err != nil {
|
||||
return RecordSetsClientCreateOrUpdateResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// Delete - Deletes a record set from a Private DNS zone. This operation cannot be undone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - recordType - The type of DNS record in this record set. Record sets of type SOA cannot be deleted (they are deleted when
|
||||
// the Private DNS zone is deleted).
|
||||
// - relativeRecordSetName - The name of the record set, relative to the name of the zone.
|
||||
// - options - RecordSetsClientDeleteOptions contains the optional parameters for the RecordSetsClient.Delete method.
|
||||
func (client *RecordSetsClient) Delete(ctx context.Context, resourceGroupName string, privateZoneName string, recordType RecordType, relativeRecordSetName string, options *RecordSetsClientDeleteOptions) (RecordSetsClientDeleteResponse, error) {
|
||||
var err error
|
||||
const operationName = "RecordSetsClient.Delete"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.deleteCreateRequest(ctx, resourceGroupName, privateZoneName, recordType, relativeRecordSetName, options)
|
||||
if err != nil {
|
||||
return RecordSetsClientDeleteResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return RecordSetsClientDeleteResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusNoContent) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return RecordSetsClientDeleteResponse{}, err
|
||||
}
|
||||
return RecordSetsClientDeleteResponse{}, nil
|
||||
}
|
||||
|
||||
// deleteCreateRequest creates the Delete request.
|
||||
func (client *RecordSetsClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, recordType RecordType, relativeRecordSetName string, options *RecordSetsClientDeleteOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/{recordType}/{relativeRecordSetName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if recordType == "" {
|
||||
return nil, errors.New("parameter recordType cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{recordType}", url.PathEscape(string(recordType)))
|
||||
urlPath = strings.ReplaceAll(urlPath, "{relativeRecordSetName}", relativeRecordSetName)
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// Get - Gets a record set.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - recordType - The type of DNS record in this record set.
|
||||
// - relativeRecordSetName - The name of the record set, relative to the name of the zone.
|
||||
// - options - RecordSetsClientGetOptions contains the optional parameters for the RecordSetsClient.Get method.
|
||||
func (client *RecordSetsClient) Get(ctx context.Context, resourceGroupName string, privateZoneName string, recordType RecordType, relativeRecordSetName string, options *RecordSetsClientGetOptions) (RecordSetsClientGetResponse, error) {
|
||||
var err error
|
||||
const operationName = "RecordSetsClient.Get"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.getCreateRequest(ctx, resourceGroupName, privateZoneName, recordType, relativeRecordSetName, options)
|
||||
if err != nil {
|
||||
return RecordSetsClientGetResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return RecordSetsClientGetResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return RecordSetsClientGetResponse{}, err
|
||||
}
|
||||
resp, err := client.getHandleResponse(httpResp)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// getCreateRequest creates the Get request.
|
||||
func (client *RecordSetsClient) getCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, recordType RecordType, relativeRecordSetName string, options *RecordSetsClientGetOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/{recordType}/{relativeRecordSetName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if recordType == "" {
|
||||
return nil, errors.New("parameter recordType cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{recordType}", url.PathEscape(string(recordType)))
|
||||
urlPath = strings.ReplaceAll(urlPath, "{relativeRecordSetName}", relativeRecordSetName)
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// getHandleResponse handles the Get response.
|
||||
func (client *RecordSetsClient) getHandleResponse(resp *http.Response) (RecordSetsClientGetResponse, error) {
|
||||
result := RecordSetsClientGetResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.RecordSet); err != nil {
|
||||
return RecordSetsClientGetResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// NewListPager - Lists all record sets in a Private DNS zone.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - options - RecordSetsClientListOptions contains the optional parameters for the RecordSetsClient.NewListPager method.
|
||||
func (client *RecordSetsClient) NewListPager(resourceGroupName string, privateZoneName string, options *RecordSetsClientListOptions) *runtime.Pager[RecordSetsClientListResponse] {
|
||||
return runtime.NewPager(runtime.PagingHandler[RecordSetsClientListResponse]{
|
||||
More: func(page RecordSetsClientListResponse) bool {
|
||||
return page.NextLink != nil && len(*page.NextLink) > 0
|
||||
},
|
||||
Fetcher: func(ctx context.Context, page *RecordSetsClientListResponse) (RecordSetsClientListResponse, error) {
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "RecordSetsClient.NewListPager")
|
||||
nextLink := ""
|
||||
if page != nil {
|
||||
nextLink = *page.NextLink
|
||||
}
|
||||
resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) {
|
||||
return client.listCreateRequest(ctx, resourceGroupName, privateZoneName, options)
|
||||
}, nil)
|
||||
if err != nil {
|
||||
return RecordSetsClientListResponse{}, err
|
||||
}
|
||||
return client.listHandleResponse(resp)
|
||||
},
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
|
||||
// listCreateRequest creates the List request.
|
||||
func (client *RecordSetsClient) listCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, options *RecordSetsClientListOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/ALL"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
if options != nil && options.Top != nil {
|
||||
reqQP.Set("$top", strconv.FormatInt(int64(*options.Top), 10))
|
||||
}
|
||||
if options != nil && options.Recordsetnamesuffix != nil {
|
||||
reqQP.Set("$recordsetnamesuffix", *options.Recordsetnamesuffix)
|
||||
}
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// listHandleResponse handles the List response.
|
||||
func (client *RecordSetsClient) listHandleResponse(resp *http.Response) (RecordSetsClientListResponse, error) {
|
||||
result := RecordSetsClientListResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.RecordSetListResult); err != nil {
|
||||
return RecordSetsClientListResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// NewListByTypePager - Lists the record sets of a specified type in a Private DNS zone.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - recordType - The type of record sets to enumerate.
|
||||
// - options - RecordSetsClientListByTypeOptions contains the optional parameters for the RecordSetsClient.NewListByTypePager
|
||||
// method.
|
||||
func (client *RecordSetsClient) NewListByTypePager(resourceGroupName string, privateZoneName string, recordType RecordType, options *RecordSetsClientListByTypeOptions) *runtime.Pager[RecordSetsClientListByTypeResponse] {
|
||||
return runtime.NewPager(runtime.PagingHandler[RecordSetsClientListByTypeResponse]{
|
||||
More: func(page RecordSetsClientListByTypeResponse) bool {
|
||||
return page.NextLink != nil && len(*page.NextLink) > 0
|
||||
},
|
||||
Fetcher: func(ctx context.Context, page *RecordSetsClientListByTypeResponse) (RecordSetsClientListByTypeResponse, error) {
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "RecordSetsClient.NewListByTypePager")
|
||||
nextLink := ""
|
||||
if page != nil {
|
||||
nextLink = *page.NextLink
|
||||
}
|
||||
resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) {
|
||||
return client.listByTypeCreateRequest(ctx, resourceGroupName, privateZoneName, recordType, options)
|
||||
}, nil)
|
||||
if err != nil {
|
||||
return RecordSetsClientListByTypeResponse{}, err
|
||||
}
|
||||
return client.listByTypeHandleResponse(resp)
|
||||
},
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
|
||||
// listByTypeCreateRequest creates the ListByType request.
|
||||
func (client *RecordSetsClient) listByTypeCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, recordType RecordType, options *RecordSetsClientListByTypeOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/{recordType}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if recordType == "" {
|
||||
return nil, errors.New("parameter recordType cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{recordType}", url.PathEscape(string(recordType)))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
if options != nil && options.Top != nil {
|
||||
reqQP.Set("$top", strconv.FormatInt(int64(*options.Top), 10))
|
||||
}
|
||||
if options != nil && options.Recordsetnamesuffix != nil {
|
||||
reqQP.Set("$recordsetnamesuffix", *options.Recordsetnamesuffix)
|
||||
}
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// listByTypeHandleResponse handles the ListByType response.
|
||||
func (client *RecordSetsClient) listByTypeHandleResponse(resp *http.Response) (RecordSetsClientListByTypeResponse, error) {
|
||||
result := RecordSetsClientListByTypeResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.RecordSetListResult); err != nil {
|
||||
return RecordSetsClientListByTypeResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// Update - Updates a record set within a Private DNS zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - recordType - The type of DNS record in this record set.
|
||||
// - relativeRecordSetName - The name of the record set, relative to the name of the zone.
|
||||
// - parameters - Parameters supplied to the Update operation.
|
||||
// - options - RecordSetsClientUpdateOptions contains the optional parameters for the RecordSetsClient.Update method.
|
||||
func (client *RecordSetsClient) Update(ctx context.Context, resourceGroupName string, privateZoneName string, recordType RecordType, relativeRecordSetName string, parameters RecordSet, options *RecordSetsClientUpdateOptions) (RecordSetsClientUpdateResponse, error) {
|
||||
var err error
|
||||
const operationName = "RecordSetsClient.Update"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.updateCreateRequest(ctx, resourceGroupName, privateZoneName, recordType, relativeRecordSetName, parameters, options)
|
||||
if err != nil {
|
||||
return RecordSetsClientUpdateResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return RecordSetsClientUpdateResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return RecordSetsClientUpdateResponse{}, err
|
||||
}
|
||||
resp, err := client.updateHandleResponse(httpResp)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// updateCreateRequest creates the Update request.
|
||||
func (client *RecordSetsClient) updateCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, recordType RecordType, relativeRecordSetName string, parameters RecordSet, options *RecordSetsClientUpdateOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/{recordType}/{relativeRecordSetName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if recordType == "" {
|
||||
return nil, errors.New("parameter recordType cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{recordType}", url.PathEscape(string(recordType)))
|
||||
urlPath = strings.ReplaceAll(urlPath, "{relativeRecordSetName}", relativeRecordSetName)
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
if err := runtime.MarshalAsJSON(req, parameters); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// updateHandleResponse handles the Update response.
|
||||
func (client *RecordSetsClient) updateHandleResponse(resp *http.Response) (RecordSetsClientUpdateResponse, error) {
|
||||
result := RecordSetsClientUpdateResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.RecordSet); err != nil {
|
||||
return RecordSetsClientUpdateResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
108
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/response_types.go
generated
vendored
Normal file
108
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/response_types.go
generated
vendored
Normal file
@@ -0,0 +1,108 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armprivatedns
|
||||
|
||||
// PrivateZonesClientCreateOrUpdateResponse contains the response from method PrivateZonesClient.BeginCreateOrUpdate.
|
||||
type PrivateZonesClientCreateOrUpdateResponse struct {
|
||||
// Describes a Private DNS zone.
|
||||
PrivateZone
|
||||
}
|
||||
|
||||
// PrivateZonesClientDeleteResponse contains the response from method PrivateZonesClient.BeginDelete.
|
||||
type PrivateZonesClientDeleteResponse struct {
|
||||
// placeholder for future response values
|
||||
}
|
||||
|
||||
// PrivateZonesClientGetResponse contains the response from method PrivateZonesClient.Get.
|
||||
type PrivateZonesClientGetResponse struct {
|
||||
// Describes a Private DNS zone.
|
||||
PrivateZone
|
||||
}
|
||||
|
||||
// PrivateZonesClientListByResourceGroupResponse contains the response from method PrivateZonesClient.NewListByResourceGroupPager.
|
||||
type PrivateZonesClientListByResourceGroupResponse struct {
|
||||
// The response to a Private DNS zone list operation.
|
||||
PrivateZoneListResult
|
||||
}
|
||||
|
||||
// PrivateZonesClientListResponse contains the response from method PrivateZonesClient.NewListPager.
|
||||
type PrivateZonesClientListResponse struct {
|
||||
// The response to a Private DNS zone list operation.
|
||||
PrivateZoneListResult
|
||||
}
|
||||
|
||||
// PrivateZonesClientUpdateResponse contains the response from method PrivateZonesClient.BeginUpdate.
|
||||
type PrivateZonesClientUpdateResponse struct {
|
||||
// Describes a Private DNS zone.
|
||||
PrivateZone
|
||||
}
|
||||
|
||||
// RecordSetsClientCreateOrUpdateResponse contains the response from method RecordSetsClient.CreateOrUpdate.
|
||||
type RecordSetsClientCreateOrUpdateResponse struct {
|
||||
// Describes a DNS record set (a collection of DNS records with the same name and type) in a Private DNS zone.
|
||||
RecordSet
|
||||
}
|
||||
|
||||
// RecordSetsClientDeleteResponse contains the response from method RecordSetsClient.Delete.
|
||||
type RecordSetsClientDeleteResponse struct {
|
||||
// placeholder for future response values
|
||||
}
|
||||
|
||||
// RecordSetsClientGetResponse contains the response from method RecordSetsClient.Get.
|
||||
type RecordSetsClientGetResponse struct {
|
||||
// Describes a DNS record set (a collection of DNS records with the same name and type) in a Private DNS zone.
|
||||
RecordSet
|
||||
}
|
||||
|
||||
// RecordSetsClientListByTypeResponse contains the response from method RecordSetsClient.NewListByTypePager.
|
||||
type RecordSetsClientListByTypeResponse struct {
|
||||
// The response to a record set list operation.
|
||||
RecordSetListResult
|
||||
}
|
||||
|
||||
// RecordSetsClientListResponse contains the response from method RecordSetsClient.NewListPager.
|
||||
type RecordSetsClientListResponse struct {
|
||||
// The response to a record set list operation.
|
||||
RecordSetListResult
|
||||
}
|
||||
|
||||
// RecordSetsClientUpdateResponse contains the response from method RecordSetsClient.Update.
|
||||
type RecordSetsClientUpdateResponse struct {
|
||||
// Describes a DNS record set (a collection of DNS records with the same name and type) in a Private DNS zone.
|
||||
RecordSet
|
||||
}
|
||||
|
||||
// VirtualNetworkLinksClientCreateOrUpdateResponse contains the response from method VirtualNetworkLinksClient.BeginCreateOrUpdate.
|
||||
type VirtualNetworkLinksClientCreateOrUpdateResponse struct {
|
||||
// Describes a link to virtual network for a Private DNS zone.
|
||||
VirtualNetworkLink
|
||||
}
|
||||
|
||||
// VirtualNetworkLinksClientDeleteResponse contains the response from method VirtualNetworkLinksClient.BeginDelete.
|
||||
type VirtualNetworkLinksClientDeleteResponse struct {
|
||||
// placeholder for future response values
|
||||
}
|
||||
|
||||
// VirtualNetworkLinksClientGetResponse contains the response from method VirtualNetworkLinksClient.Get.
|
||||
type VirtualNetworkLinksClientGetResponse struct {
|
||||
// Describes a link to virtual network for a Private DNS zone.
|
||||
VirtualNetworkLink
|
||||
}
|
||||
|
||||
// VirtualNetworkLinksClientListResponse contains the response from method VirtualNetworkLinksClient.NewListPager.
|
||||
type VirtualNetworkLinksClientListResponse struct {
|
||||
// The response to a list virtual network link to Private DNS zone operation.
|
||||
VirtualNetworkLinkListResult
|
||||
}
|
||||
|
||||
// VirtualNetworkLinksClientUpdateResponse contains the response from method VirtualNetworkLinksClient.BeginUpdate.
|
||||
type VirtualNetworkLinksClientUpdateResponse struct {
|
||||
// Describes a link to virtual network for a Private DNS zone.
|
||||
VirtualNetworkLink
|
||||
}
|
||||
450
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/virtualnetworklinks_client.go
generated
vendored
Normal file
450
vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns/virtualnetworklinks_client.go
generated
vendored
Normal file
@@ -0,0 +1,450 @@
|
||||
//go:build go1.18
|
||||
// +build go1.18
|
||||
|
||||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT.
|
||||
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
||||
|
||||
package armprivatedns
|
||||
|
||||
import (
|
||||
"context"
|
||||
"errors"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/arm"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/policy"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"strconv"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// VirtualNetworkLinksClient contains the methods for the VirtualNetworkLinks group.
|
||||
// Don't use this type directly, use NewVirtualNetworkLinksClient() instead.
|
||||
type VirtualNetworkLinksClient struct {
|
||||
internal *arm.Client
|
||||
subscriptionID string
|
||||
}
|
||||
|
||||
// NewVirtualNetworkLinksClient creates a new instance of VirtualNetworkLinksClient with the specified values.
|
||||
// - subscriptionID - Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID
|
||||
// forms part of the URI for every service call.
|
||||
// - credential - used to authorize requests. Usually a credential from azidentity.
|
||||
// - options - pass nil to accept the default values.
|
||||
func NewVirtualNetworkLinksClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*VirtualNetworkLinksClient, error) {
|
||||
cl, err := arm.NewClient(moduleName, moduleVersion, credential, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
client := &VirtualNetworkLinksClient{
|
||||
subscriptionID: subscriptionID,
|
||||
internal: cl,
|
||||
}
|
||||
return client, nil
|
||||
}
|
||||
|
||||
// BeginCreateOrUpdate - Creates or updates a virtual network link to the specified Private DNS zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - virtualNetworkLinkName - The name of the virtual network link.
|
||||
// - parameters - Parameters supplied to the CreateOrUpdate operation.
|
||||
// - options - VirtualNetworkLinksClientBeginCreateOrUpdateOptions contains the optional parameters for the VirtualNetworkLinksClient.BeginCreateOrUpdate
|
||||
// method.
|
||||
func (client *VirtualNetworkLinksClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, privateZoneName string, virtualNetworkLinkName string, parameters VirtualNetworkLink, options *VirtualNetworkLinksClientBeginCreateOrUpdateOptions) (*runtime.Poller[VirtualNetworkLinksClientCreateOrUpdateResponse], error) {
|
||||
if options == nil || options.ResumeToken == "" {
|
||||
resp, err := client.createOrUpdate(ctx, resourceGroupName, privateZoneName, virtualNetworkLinkName, parameters, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[VirtualNetworkLinksClientCreateOrUpdateResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
return poller, err
|
||||
} else {
|
||||
return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[VirtualNetworkLinksClientCreateOrUpdateResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// CreateOrUpdate - Creates or updates a virtual network link to the specified Private DNS zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
func (client *VirtualNetworkLinksClient) createOrUpdate(ctx context.Context, resourceGroupName string, privateZoneName string, virtualNetworkLinkName string, parameters VirtualNetworkLink, options *VirtualNetworkLinksClientBeginCreateOrUpdateOptions) (*http.Response, error) {
|
||||
var err error
|
||||
const operationName = "VirtualNetworkLinksClient.BeginCreateOrUpdate"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.createOrUpdateCreateRequest(ctx, resourceGroupName, privateZoneName, virtualNetworkLinkName, parameters, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated, http.StatusAccepted) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return nil, err
|
||||
}
|
||||
return httpResp, nil
|
||||
}
|
||||
|
||||
// createOrUpdateCreateRequest creates the CreateOrUpdate request.
|
||||
func (client *VirtualNetworkLinksClient) createOrUpdateCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, virtualNetworkLinkName string, parameters VirtualNetworkLink, options *VirtualNetworkLinksClientBeginCreateOrUpdateOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/virtualNetworkLinks/{virtualNetworkLinkName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if virtualNetworkLinkName == "" {
|
||||
return nil, errors.New("parameter virtualNetworkLinkName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{virtualNetworkLinkName}", url.PathEscape(virtualNetworkLinkName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
if options != nil && options.IfNoneMatch != nil {
|
||||
req.Raw().Header["If-None-Match"] = []string{*options.IfNoneMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
if err := runtime.MarshalAsJSON(req, parameters); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// BeginDelete - Deletes a virtual network link to the specified Private DNS zone. WARNING: In case of a registration virtual
|
||||
// network, all auto-registered DNS records in the zone for the virtual network will also be
|
||||
// deleted. This operation cannot be undone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - virtualNetworkLinkName - The name of the virtual network link.
|
||||
// - options - VirtualNetworkLinksClientBeginDeleteOptions contains the optional parameters for the VirtualNetworkLinksClient.BeginDelete
|
||||
// method.
|
||||
func (client *VirtualNetworkLinksClient) BeginDelete(ctx context.Context, resourceGroupName string, privateZoneName string, virtualNetworkLinkName string, options *VirtualNetworkLinksClientBeginDeleteOptions) (*runtime.Poller[VirtualNetworkLinksClientDeleteResponse], error) {
|
||||
if options == nil || options.ResumeToken == "" {
|
||||
resp, err := client.deleteOperation(ctx, resourceGroupName, privateZoneName, virtualNetworkLinkName, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[VirtualNetworkLinksClientDeleteResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
return poller, err
|
||||
} else {
|
||||
return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[VirtualNetworkLinksClientDeleteResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// Delete - Deletes a virtual network link to the specified Private DNS zone. WARNING: In case of a registration virtual network,
|
||||
// all auto-registered DNS records in the zone for the virtual network will also be
|
||||
// deleted. This operation cannot be undone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
func (client *VirtualNetworkLinksClient) deleteOperation(ctx context.Context, resourceGroupName string, privateZoneName string, virtualNetworkLinkName string, options *VirtualNetworkLinksClientBeginDeleteOptions) (*http.Response, error) {
|
||||
var err error
|
||||
const operationName = "VirtualNetworkLinksClient.BeginDelete"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.deleteCreateRequest(ctx, resourceGroupName, privateZoneName, virtualNetworkLinkName, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted, http.StatusNoContent) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return nil, err
|
||||
}
|
||||
return httpResp, nil
|
||||
}
|
||||
|
||||
// deleteCreateRequest creates the Delete request.
|
||||
func (client *VirtualNetworkLinksClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, virtualNetworkLinkName string, options *VirtualNetworkLinksClientBeginDeleteOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/virtualNetworkLinks/{virtualNetworkLinkName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if virtualNetworkLinkName == "" {
|
||||
return nil, errors.New("parameter virtualNetworkLinkName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{virtualNetworkLinkName}", url.PathEscape(virtualNetworkLinkName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// Get - Gets a virtual network link to the specified Private DNS zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - virtualNetworkLinkName - The name of the virtual network link.
|
||||
// - options - VirtualNetworkLinksClientGetOptions contains the optional parameters for the VirtualNetworkLinksClient.Get method.
|
||||
func (client *VirtualNetworkLinksClient) Get(ctx context.Context, resourceGroupName string, privateZoneName string, virtualNetworkLinkName string, options *VirtualNetworkLinksClientGetOptions) (VirtualNetworkLinksClientGetResponse, error) {
|
||||
var err error
|
||||
const operationName = "VirtualNetworkLinksClient.Get"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.getCreateRequest(ctx, resourceGroupName, privateZoneName, virtualNetworkLinkName, options)
|
||||
if err != nil {
|
||||
return VirtualNetworkLinksClientGetResponse{}, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return VirtualNetworkLinksClientGetResponse{}, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return VirtualNetworkLinksClientGetResponse{}, err
|
||||
}
|
||||
resp, err := client.getHandleResponse(httpResp)
|
||||
return resp, err
|
||||
}
|
||||
|
||||
// getCreateRequest creates the Get request.
|
||||
func (client *VirtualNetworkLinksClient) getCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, virtualNetworkLinkName string, options *VirtualNetworkLinksClientGetOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/virtualNetworkLinks/{virtualNetworkLinkName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if virtualNetworkLinkName == "" {
|
||||
return nil, errors.New("parameter virtualNetworkLinkName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{virtualNetworkLinkName}", url.PathEscape(virtualNetworkLinkName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// getHandleResponse handles the Get response.
|
||||
func (client *VirtualNetworkLinksClient) getHandleResponse(resp *http.Response) (VirtualNetworkLinksClientGetResponse, error) {
|
||||
result := VirtualNetworkLinksClientGetResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.VirtualNetworkLink); err != nil {
|
||||
return VirtualNetworkLinksClientGetResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// NewListPager - Lists the virtual network links to the specified Private DNS zone.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - options - VirtualNetworkLinksClientListOptions contains the optional parameters for the VirtualNetworkLinksClient.NewListPager
|
||||
// method.
|
||||
func (client *VirtualNetworkLinksClient) NewListPager(resourceGroupName string, privateZoneName string, options *VirtualNetworkLinksClientListOptions) *runtime.Pager[VirtualNetworkLinksClientListResponse] {
|
||||
return runtime.NewPager(runtime.PagingHandler[VirtualNetworkLinksClientListResponse]{
|
||||
More: func(page VirtualNetworkLinksClientListResponse) bool {
|
||||
return page.NextLink != nil && len(*page.NextLink) > 0
|
||||
},
|
||||
Fetcher: func(ctx context.Context, page *VirtualNetworkLinksClientListResponse) (VirtualNetworkLinksClientListResponse, error) {
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "VirtualNetworkLinksClient.NewListPager")
|
||||
nextLink := ""
|
||||
if page != nil {
|
||||
nextLink = *page.NextLink
|
||||
}
|
||||
resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) {
|
||||
return client.listCreateRequest(ctx, resourceGroupName, privateZoneName, options)
|
||||
}, nil)
|
||||
if err != nil {
|
||||
return VirtualNetworkLinksClientListResponse{}, err
|
||||
}
|
||||
return client.listHandleResponse(resp)
|
||||
},
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
|
||||
// listCreateRequest creates the List request.
|
||||
func (client *VirtualNetworkLinksClient) listCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, options *VirtualNetworkLinksClientListOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/virtualNetworkLinks"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
if options != nil && options.Top != nil {
|
||||
reqQP.Set("$top", strconv.FormatInt(int64(*options.Top), 10))
|
||||
}
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
return req, nil
|
||||
}
|
||||
|
||||
// listHandleResponse handles the List response.
|
||||
func (client *VirtualNetworkLinksClient) listHandleResponse(resp *http.Response) (VirtualNetworkLinksClientListResponse, error) {
|
||||
result := VirtualNetworkLinksClientListResponse{}
|
||||
if err := runtime.UnmarshalAsJSON(resp, &result.VirtualNetworkLinkListResult); err != nil {
|
||||
return VirtualNetworkLinksClientListResponse{}, err
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
// BeginUpdate - Updates a virtual network link to the specified Private DNS zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
// - resourceGroupName - The name of the resource group.
|
||||
// - privateZoneName - The name of the Private DNS zone (without a terminating dot).
|
||||
// - virtualNetworkLinkName - The name of the virtual network link.
|
||||
// - parameters - Parameters supplied to the Update operation.
|
||||
// - options - VirtualNetworkLinksClientBeginUpdateOptions contains the optional parameters for the VirtualNetworkLinksClient.BeginUpdate
|
||||
// method.
|
||||
func (client *VirtualNetworkLinksClient) BeginUpdate(ctx context.Context, resourceGroupName string, privateZoneName string, virtualNetworkLinkName string, parameters VirtualNetworkLink, options *VirtualNetworkLinksClientBeginUpdateOptions) (*runtime.Poller[VirtualNetworkLinksClientUpdateResponse], error) {
|
||||
if options == nil || options.ResumeToken == "" {
|
||||
resp, err := client.update(ctx, resourceGroupName, privateZoneName, virtualNetworkLinkName, parameters, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[VirtualNetworkLinksClientUpdateResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
return poller, err
|
||||
} else {
|
||||
return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[VirtualNetworkLinksClientUpdateResponse]{
|
||||
Tracer: client.internal.Tracer(),
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// Update - Updates a virtual network link to the specified Private DNS zone.
|
||||
// If the operation fails it returns an *azcore.ResponseError type.
|
||||
//
|
||||
// Generated from API version 2020-06-01
|
||||
func (client *VirtualNetworkLinksClient) update(ctx context.Context, resourceGroupName string, privateZoneName string, virtualNetworkLinkName string, parameters VirtualNetworkLink, options *VirtualNetworkLinksClientBeginUpdateOptions) (*http.Response, error) {
|
||||
var err error
|
||||
const operationName = "VirtualNetworkLinksClient.BeginUpdate"
|
||||
ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName)
|
||||
ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil)
|
||||
defer func() { endSpan(err) }()
|
||||
req, err := client.updateCreateRequest(ctx, resourceGroupName, privateZoneName, virtualNetworkLinkName, parameters, options)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
httpResp, err := client.internal.Pipeline().Do(req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) {
|
||||
err = runtime.NewResponseError(httpResp)
|
||||
return nil, err
|
||||
}
|
||||
return httpResp, nil
|
||||
}
|
||||
|
||||
// updateCreateRequest creates the Update request.
|
||||
func (client *VirtualNetworkLinksClient) updateCreateRequest(ctx context.Context, resourceGroupName string, privateZoneName string, virtualNetworkLinkName string, parameters VirtualNetworkLink, options *VirtualNetworkLinksClientBeginUpdateOptions) (*policy.Request, error) {
|
||||
urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateDnsZones/{privateZoneName}/virtualNetworkLinks/{virtualNetworkLinkName}"
|
||||
if resourceGroupName == "" {
|
||||
return nil, errors.New("parameter resourceGroupName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName))
|
||||
if privateZoneName == "" {
|
||||
return nil, errors.New("parameter privateZoneName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{privateZoneName}", url.PathEscape(privateZoneName))
|
||||
if virtualNetworkLinkName == "" {
|
||||
return nil, errors.New("parameter virtualNetworkLinkName cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{virtualNetworkLinkName}", url.PathEscape(virtualNetworkLinkName))
|
||||
if client.subscriptionID == "" {
|
||||
return nil, errors.New("parameter client.subscriptionID cannot be empty")
|
||||
}
|
||||
urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID))
|
||||
req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
reqQP := req.Raw().URL.Query()
|
||||
reqQP.Set("api-version", "2020-06-01")
|
||||
req.Raw().URL.RawQuery = reqQP.Encode()
|
||||
if options != nil && options.IfMatch != nil {
|
||||
req.Raw().Header["If-Match"] = []string{*options.IfMatch}
|
||||
}
|
||||
req.Raw().Header["Accept"] = []string{"application/json"}
|
||||
if err := runtime.MarshalAsJSON(req, parameters); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return req, nil
|
||||
}
|
||||
10
vendor/modules.txt
vendored
10
vendor/modules.txt
vendored
@@ -50,7 +50,7 @@ github.com/Azure/azure-sdk-for-go/services/resources/mgmt/2016-06-01/subscriptio
|
||||
github.com/Azure/azure-sdk-for-go/services/resources/mgmt/2018-02-01/resources
|
||||
github.com/Azure/azure-sdk-for-go/services/resources/mgmt/2018-05-01/resources
|
||||
github.com/Azure/azure-sdk-for-go/version
|
||||
# github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0-beta.1
|
||||
# github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.0
|
||||
## explicit; go 1.18
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore/arm
|
||||
@@ -76,7 +76,7 @@ github.com/Azure/azure-sdk-for-go/sdk/azcore/tracing
|
||||
# github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.4.0
|
||||
## explicit; go 1.18
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azidentity
|
||||
# github.com/Azure/azure-sdk-for-go/sdk/internal v1.3.0
|
||||
# github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.0
|
||||
## explicit; go 1.18
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal/diag
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal/errorinfo
|
||||
@@ -94,9 +94,15 @@ github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v5
|
||||
# github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/containerservice/armcontainerservice/v4 v4.3.0
|
||||
## explicit; go 1.18
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/containerservice/armcontainerservice/v4
|
||||
# github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns v1.2.0
|
||||
## explicit; go 1.18
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dns/armdns
|
||||
# github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork v1.0.0
|
||||
## explicit; go 1.18
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork
|
||||
# github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns v1.2.0
|
||||
## explicit; go 1.18
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns
|
||||
# github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph v0.8.2
|
||||
## explicit; go 1.18
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resourcegraph/armresourcegraph
|
||||
|
||||
Reference in New Issue
Block a user