1package iothub 2 3// Copyright (c) Microsoft Corporation. All rights reserved. 4// Licensed under the MIT License. See License.txt in the project root for license information. 5// 6// Code generated by Microsoft (R) AutoRest Code Generator. 7// Changes may cause incorrect behavior and will be lost if the code is regenerated. 8 9import ( 10 "context" 11 "encoding/json" 12 "github.com/Azure/go-autorest/autorest" 13 "github.com/Azure/go-autorest/autorest/azure" 14 "github.com/Azure/go-autorest/autorest/date" 15 "github.com/Azure/go-autorest/autorest/to" 16 "github.com/Azure/go-autorest/tracing" 17 "net/http" 18) 19 20// The package's fully qualified name. 21const fqdn = "github.com/Azure/azure-sdk-for-go/services/provisioningservices/mgmt/2017-11-15/iothub" 22 23// AsyncOperationResult result of a long running operation. 24type AsyncOperationResult struct { 25 autorest.Response `json:"-"` 26 // Status - current status of a long running operation. 27 Status *string `json:"status,omitempty"` 28 // Error - Error message containing code, description and details 29 Error *ErrorMesssage `json:"error,omitempty"` 30} 31 32// CertificateBodyDescription the JSON-serialized X509 Certificate. 33type CertificateBodyDescription struct { 34 // Certificate - Base-64 representation of the X509 leaf certificate .cer file or just .pem file content. 35 Certificate *string `json:"certificate,omitempty"` 36} 37 38// CertificateListDescription the JSON-serialized array of Certificate objects. 39type CertificateListDescription struct { 40 autorest.Response `json:"-"` 41 // Value - The array of Certificate objects. 42 Value *[]CertificateResponse `json:"value,omitempty"` 43} 44 45// CertificateProperties the description of an X509 CA Certificate. 46type CertificateProperties struct { 47 // Subject - READ-ONLY; The certificate's subject name. 48 Subject *string `json:"subject,omitempty"` 49 // Expiry - READ-ONLY; The certificate's expiration date and time. 50 Expiry *date.TimeRFC1123 `json:"expiry,omitempty"` 51 // Thumbprint - READ-ONLY; The certificate's thumbprint. 52 Thumbprint *string `json:"thumbprint,omitempty"` 53 // IsVerified - READ-ONLY; Determines whether certificate has been verified. 54 IsVerified *bool `json:"isVerified,omitempty"` 55 // Created - READ-ONLY; The certificate's creation date and time. 56 Created *date.TimeRFC1123 `json:"created,omitempty"` 57 // Updated - READ-ONLY; The certificate's last update date and time. 58 Updated *date.TimeRFC1123 `json:"updated,omitempty"` 59} 60 61// MarshalJSON is the custom marshaler for CertificateProperties. 62func (cp CertificateProperties) MarshalJSON() ([]byte, error) { 63 objectMap := make(map[string]interface{}) 64 return json.Marshal(objectMap) 65} 66 67// CertificateResponse the X509 Certificate. 68type CertificateResponse struct { 69 autorest.Response `json:"-"` 70 // Properties - properties of a certificate 71 Properties *CertificateProperties `json:"properties,omitempty"` 72 // ID - READ-ONLY; The resource identifier. 73 ID *string `json:"id,omitempty"` 74 // Name - READ-ONLY; The name of the certificate. 75 Name *string `json:"name,omitempty"` 76 // Etag - READ-ONLY; The entity tag. 77 Etag *string `json:"etag,omitempty"` 78 // Type - READ-ONLY; The resource type. 79 Type *string `json:"type,omitempty"` 80} 81 82// MarshalJSON is the custom marshaler for CertificateResponse. 83func (cr CertificateResponse) MarshalJSON() ([]byte, error) { 84 objectMap := make(map[string]interface{}) 85 if cr.Properties != nil { 86 objectMap["properties"] = cr.Properties 87 } 88 return json.Marshal(objectMap) 89} 90 91// DefinitionDescription description of the IoT hub. 92type DefinitionDescription struct { 93 // ApplyAllocationPolicy - Flag for applying allocationPolicy or not for a given IoT hub. 94 ApplyAllocationPolicy *bool `json:"applyAllocationPolicy,omitempty"` 95 // AllocationWeight - Weight to apply for a given IoT hub. 96 AllocationWeight *int32 `json:"allocationWeight,omitempty"` 97 // Name - READ-ONLY; Host name of the IoT hub. 98 Name *string `json:"name,omitempty"` 99 // ConnectionString - Connection string of the IoT hub. 100 ConnectionString *string `json:"connectionString,omitempty"` 101 // Location - ARM region of the IoT hub. 102 Location *string `json:"location,omitempty"` 103} 104 105// MarshalJSON is the custom marshaler for DefinitionDescription. 106func (dd DefinitionDescription) MarshalJSON() ([]byte, error) { 107 objectMap := make(map[string]interface{}) 108 if dd.ApplyAllocationPolicy != nil { 109 objectMap["applyAllocationPolicy"] = dd.ApplyAllocationPolicy 110 } 111 if dd.AllocationWeight != nil { 112 objectMap["allocationWeight"] = dd.AllocationWeight 113 } 114 if dd.ConnectionString != nil { 115 objectMap["connectionString"] = dd.ConnectionString 116 } 117 if dd.Location != nil { 118 objectMap["location"] = dd.Location 119 } 120 return json.Marshal(objectMap) 121} 122 123// ErrorDetails error details. 124type ErrorDetails struct { 125 // Code - READ-ONLY; The error code. 126 Code *string `json:"Code,omitempty"` 127 // HTTPStatusCode - READ-ONLY; The HTTP status code. 128 HTTPStatusCode *string `json:"HttpStatusCode,omitempty"` 129 // Message - READ-ONLY; The error message. 130 Message *string `json:"Message,omitempty"` 131 // Details - READ-ONLY; The error details. 132 Details *string `json:"Details,omitempty"` 133} 134 135// MarshalJSON is the custom marshaler for ErrorDetails. 136func (ed ErrorDetails) MarshalJSON() ([]byte, error) { 137 objectMap := make(map[string]interface{}) 138 return json.Marshal(objectMap) 139} 140 141// ErrorMesssage error response containing message and code. 142type ErrorMesssage struct { 143 // Code - standard error code 144 Code *string `json:"code,omitempty"` 145 // Message - standard error description 146 Message *string `json:"message,omitempty"` 147 // Details - detailed summary of error 148 Details *string `json:"details,omitempty"` 149} 150 151// IotDpsPropertiesDescription the service specific properties of a provisioning service, including keys, 152// linked iot hubs, current state, and system generated properties such as hostname and idScope 153type IotDpsPropertiesDescription struct { 154 // State - Current state of the provisioning service. Possible values include: 'Activating', 'Active', 'Deleting', 'Deleted', 'ActivationFailed', 'DeletionFailed', 'Transitioning', 'Suspending', 'Suspended', 'Resuming', 'FailingOver', 'FailoverFailed' 155 State State `json:"state,omitempty"` 156 // ProvisioningState - The ARM provisioning state of the provisioning service. 157 ProvisioningState *string `json:"provisioningState,omitempty"` 158 // IotHubs - List of IoT hubs associated with this provisioning service. 159 IotHubs *[]DefinitionDescription `json:"iotHubs,omitempty"` 160 // AllocationPolicy - Allocation policy to be used by this provisioning service. Possible values include: 'Hashed', 'GeoLatency', 'Static' 161 AllocationPolicy AllocationPolicy `json:"allocationPolicy,omitempty"` 162 // ServiceOperationsHostName - READ-ONLY; Service endpoint for provisioning service. 163 ServiceOperationsHostName *string `json:"serviceOperationsHostName,omitempty"` 164 // DeviceProvisioningHostName - READ-ONLY; Device endpoint for this provisioning service. 165 DeviceProvisioningHostName *string `json:"deviceProvisioningHostName,omitempty"` 166 // IDScope - READ-ONLY; Unique identifier of this provisioning service. 167 IDScope *string `json:"idScope,omitempty"` 168 // AuthorizationPolicies - List of authorization keys for a provisioning service. 169 AuthorizationPolicies *[]SharedAccessSignatureAuthorizationRuleAccessRightsDescription `json:"authorizationPolicies,omitempty"` 170} 171 172// MarshalJSON is the custom marshaler for IotDpsPropertiesDescription. 173func (idpd IotDpsPropertiesDescription) MarshalJSON() ([]byte, error) { 174 objectMap := make(map[string]interface{}) 175 if idpd.State != "" { 176 objectMap["state"] = idpd.State 177 } 178 if idpd.ProvisioningState != nil { 179 objectMap["provisioningState"] = idpd.ProvisioningState 180 } 181 if idpd.IotHubs != nil { 182 objectMap["iotHubs"] = idpd.IotHubs 183 } 184 if idpd.AllocationPolicy != "" { 185 objectMap["allocationPolicy"] = idpd.AllocationPolicy 186 } 187 if idpd.AuthorizationPolicies != nil { 188 objectMap["authorizationPolicies"] = idpd.AuthorizationPolicies 189 } 190 return json.Marshal(objectMap) 191} 192 193// IotDpsResourceCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a 194// long-running operation. 195type IotDpsResourceCreateOrUpdateFuture struct { 196 azure.FutureAPI 197 // Result returns the result of the asynchronous operation. 198 // If the operation has not completed it will return an error. 199 Result func(IotDpsResourceClient) (ProvisioningServiceDescription, error) 200} 201 202// UnmarshalJSON is the custom unmarshaller for CreateFuture. 203func (future *IotDpsResourceCreateOrUpdateFuture) UnmarshalJSON(body []byte) error { 204 var azFuture azure.Future 205 if err := json.Unmarshal(body, &azFuture); err != nil { 206 return err 207 } 208 future.FutureAPI = &azFuture 209 future.Result = future.result 210 return nil 211} 212 213// result is the default implementation for IotDpsResourceCreateOrUpdateFuture.Result. 214func (future *IotDpsResourceCreateOrUpdateFuture) result(client IotDpsResourceClient) (psd ProvisioningServiceDescription, err error) { 215 var done bool 216 done, err = future.DoneWithContext(context.Background(), client) 217 if err != nil { 218 err = autorest.NewErrorWithError(err, "iothub.IotDpsResourceCreateOrUpdateFuture", "Result", future.Response(), "Polling failure") 219 return 220 } 221 if !done { 222 psd.Response.Response = future.Response() 223 err = azure.NewAsyncOpIncompleteError("iothub.IotDpsResourceCreateOrUpdateFuture") 224 return 225 } 226 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 227 if psd.Response.Response, err = future.GetResult(sender); err == nil && psd.Response.Response.StatusCode != http.StatusNoContent { 228 psd, err = client.CreateOrUpdateResponder(psd.Response.Response) 229 if err != nil { 230 err = autorest.NewErrorWithError(err, "iothub.IotDpsResourceCreateOrUpdateFuture", "Result", psd.Response.Response, "Failure responding to request") 231 } 232 } 233 return 234} 235 236// IotDpsResourceDeleteFuture an abstraction for monitoring and retrieving the results of a long-running 237// operation. 238type IotDpsResourceDeleteFuture struct { 239 azure.FutureAPI 240 // Result returns the result of the asynchronous operation. 241 // If the operation has not completed it will return an error. 242 Result func(IotDpsResourceClient) (autorest.Response, error) 243} 244 245// UnmarshalJSON is the custom unmarshaller for CreateFuture. 246func (future *IotDpsResourceDeleteFuture) UnmarshalJSON(body []byte) error { 247 var azFuture azure.Future 248 if err := json.Unmarshal(body, &azFuture); err != nil { 249 return err 250 } 251 future.FutureAPI = &azFuture 252 future.Result = future.result 253 return nil 254} 255 256// result is the default implementation for IotDpsResourceDeleteFuture.Result. 257func (future *IotDpsResourceDeleteFuture) result(client IotDpsResourceClient) (ar autorest.Response, err error) { 258 var done bool 259 done, err = future.DoneWithContext(context.Background(), client) 260 if err != nil { 261 err = autorest.NewErrorWithError(err, "iothub.IotDpsResourceDeleteFuture", "Result", future.Response(), "Polling failure") 262 return 263 } 264 if !done { 265 ar.Response = future.Response() 266 err = azure.NewAsyncOpIncompleteError("iothub.IotDpsResourceDeleteFuture") 267 return 268 } 269 ar.Response = future.Response() 270 return 271} 272 273// IotDpsResourceUpdateFuture an abstraction for monitoring and retrieving the results of a long-running 274// operation. 275type IotDpsResourceUpdateFuture struct { 276 azure.FutureAPI 277 // Result returns the result of the asynchronous operation. 278 // If the operation has not completed it will return an error. 279 Result func(IotDpsResourceClient) (ProvisioningServiceDescription, error) 280} 281 282// UnmarshalJSON is the custom unmarshaller for CreateFuture. 283func (future *IotDpsResourceUpdateFuture) UnmarshalJSON(body []byte) error { 284 var azFuture azure.Future 285 if err := json.Unmarshal(body, &azFuture); err != nil { 286 return err 287 } 288 future.FutureAPI = &azFuture 289 future.Result = future.result 290 return nil 291} 292 293// result is the default implementation for IotDpsResourceUpdateFuture.Result. 294func (future *IotDpsResourceUpdateFuture) result(client IotDpsResourceClient) (psd ProvisioningServiceDescription, err error) { 295 var done bool 296 done, err = future.DoneWithContext(context.Background(), client) 297 if err != nil { 298 err = autorest.NewErrorWithError(err, "iothub.IotDpsResourceUpdateFuture", "Result", future.Response(), "Polling failure") 299 return 300 } 301 if !done { 302 psd.Response.Response = future.Response() 303 err = azure.NewAsyncOpIncompleteError("iothub.IotDpsResourceUpdateFuture") 304 return 305 } 306 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 307 if psd.Response.Response, err = future.GetResult(sender); err == nil && psd.Response.Response.StatusCode != http.StatusNoContent { 308 psd, err = client.UpdateResponder(psd.Response.Response) 309 if err != nil { 310 err = autorest.NewErrorWithError(err, "iothub.IotDpsResourceUpdateFuture", "Result", psd.Response.Response, "Failure responding to request") 311 } 312 } 313 return 314} 315 316// IotDpsSkuDefinition available SKUs of tier and units. 317type IotDpsSkuDefinition struct { 318 // Name - SKU name. Possible values include: 'S1' 319 Name IotDpsSku `json:"name,omitempty"` 320} 321 322// IotDpsSkuDefinitionListResult list of available SKUs. 323type IotDpsSkuDefinitionListResult struct { 324 autorest.Response `json:"-"` 325 // Value - The list of SKUs 326 Value *[]IotDpsSkuDefinition `json:"value,omitempty"` 327 // NextLink - READ-ONLY; The next link. 328 NextLink *string `json:"nextLink,omitempty"` 329} 330 331// MarshalJSON is the custom marshaler for IotDpsSkuDefinitionListResult. 332func (idsdlr IotDpsSkuDefinitionListResult) MarshalJSON() ([]byte, error) { 333 objectMap := make(map[string]interface{}) 334 if idsdlr.Value != nil { 335 objectMap["value"] = idsdlr.Value 336 } 337 return json.Marshal(objectMap) 338} 339 340// IotDpsSkuDefinitionListResultIterator provides access to a complete listing of IotDpsSkuDefinition 341// values. 342type IotDpsSkuDefinitionListResultIterator struct { 343 i int 344 page IotDpsSkuDefinitionListResultPage 345} 346 347// NextWithContext advances to the next value. If there was an error making 348// the request the iterator does not advance and the error is returned. 349func (iter *IotDpsSkuDefinitionListResultIterator) NextWithContext(ctx context.Context) (err error) { 350 if tracing.IsEnabled() { 351 ctx = tracing.StartSpan(ctx, fqdn+"/IotDpsSkuDefinitionListResultIterator.NextWithContext") 352 defer func() { 353 sc := -1 354 if iter.Response().Response.Response != nil { 355 sc = iter.Response().Response.Response.StatusCode 356 } 357 tracing.EndSpan(ctx, sc, err) 358 }() 359 } 360 iter.i++ 361 if iter.i < len(iter.page.Values()) { 362 return nil 363 } 364 err = iter.page.NextWithContext(ctx) 365 if err != nil { 366 iter.i-- 367 return err 368 } 369 iter.i = 0 370 return nil 371} 372 373// Next advances to the next value. If there was an error making 374// the request the iterator does not advance and the error is returned. 375// Deprecated: Use NextWithContext() instead. 376func (iter *IotDpsSkuDefinitionListResultIterator) Next() error { 377 return iter.NextWithContext(context.Background()) 378} 379 380// NotDone returns true if the enumeration should be started or is not yet complete. 381func (iter IotDpsSkuDefinitionListResultIterator) NotDone() bool { 382 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 383} 384 385// Response returns the raw server response from the last page request. 386func (iter IotDpsSkuDefinitionListResultIterator) Response() IotDpsSkuDefinitionListResult { 387 return iter.page.Response() 388} 389 390// Value returns the current value or a zero-initialized value if the 391// iterator has advanced beyond the end of the collection. 392func (iter IotDpsSkuDefinitionListResultIterator) Value() IotDpsSkuDefinition { 393 if !iter.page.NotDone() { 394 return IotDpsSkuDefinition{} 395 } 396 return iter.page.Values()[iter.i] 397} 398 399// Creates a new instance of the IotDpsSkuDefinitionListResultIterator type. 400func NewIotDpsSkuDefinitionListResultIterator(page IotDpsSkuDefinitionListResultPage) IotDpsSkuDefinitionListResultIterator { 401 return IotDpsSkuDefinitionListResultIterator{page: page} 402} 403 404// IsEmpty returns true if the ListResult contains no values. 405func (idsdlr IotDpsSkuDefinitionListResult) IsEmpty() bool { 406 return idsdlr.Value == nil || len(*idsdlr.Value) == 0 407} 408 409// hasNextLink returns true if the NextLink is not empty. 410func (idsdlr IotDpsSkuDefinitionListResult) hasNextLink() bool { 411 return idsdlr.NextLink != nil && len(*idsdlr.NextLink) != 0 412} 413 414// iotDpsSkuDefinitionListResultPreparer prepares a request to retrieve the next set of results. 415// It returns nil if no more results exist. 416func (idsdlr IotDpsSkuDefinitionListResult) iotDpsSkuDefinitionListResultPreparer(ctx context.Context) (*http.Request, error) { 417 if !idsdlr.hasNextLink() { 418 return nil, nil 419 } 420 return autorest.Prepare((&http.Request{}).WithContext(ctx), 421 autorest.AsJSON(), 422 autorest.AsGet(), 423 autorest.WithBaseURL(to.String(idsdlr.NextLink))) 424} 425 426// IotDpsSkuDefinitionListResultPage contains a page of IotDpsSkuDefinition values. 427type IotDpsSkuDefinitionListResultPage struct { 428 fn func(context.Context, IotDpsSkuDefinitionListResult) (IotDpsSkuDefinitionListResult, error) 429 idsdlr IotDpsSkuDefinitionListResult 430} 431 432// NextWithContext advances to the next page of values. If there was an error making 433// the request the page does not advance and the error is returned. 434func (page *IotDpsSkuDefinitionListResultPage) NextWithContext(ctx context.Context) (err error) { 435 if tracing.IsEnabled() { 436 ctx = tracing.StartSpan(ctx, fqdn+"/IotDpsSkuDefinitionListResultPage.NextWithContext") 437 defer func() { 438 sc := -1 439 if page.Response().Response.Response != nil { 440 sc = page.Response().Response.Response.StatusCode 441 } 442 tracing.EndSpan(ctx, sc, err) 443 }() 444 } 445 for { 446 next, err := page.fn(ctx, page.idsdlr) 447 if err != nil { 448 return err 449 } 450 page.idsdlr = next 451 if !next.hasNextLink() || !next.IsEmpty() { 452 break 453 } 454 } 455 return nil 456} 457 458// Next advances to the next page of values. If there was an error making 459// the request the page does not advance and the error is returned. 460// Deprecated: Use NextWithContext() instead. 461func (page *IotDpsSkuDefinitionListResultPage) Next() error { 462 return page.NextWithContext(context.Background()) 463} 464 465// NotDone returns true if the page enumeration should be started or is not yet complete. 466func (page IotDpsSkuDefinitionListResultPage) NotDone() bool { 467 return !page.idsdlr.IsEmpty() 468} 469 470// Response returns the raw server response from the last page request. 471func (page IotDpsSkuDefinitionListResultPage) Response() IotDpsSkuDefinitionListResult { 472 return page.idsdlr 473} 474 475// Values returns the slice of values for the current page or nil if there are no values. 476func (page IotDpsSkuDefinitionListResultPage) Values() []IotDpsSkuDefinition { 477 if page.idsdlr.IsEmpty() { 478 return nil 479 } 480 return *page.idsdlr.Value 481} 482 483// Creates a new instance of the IotDpsSkuDefinitionListResultPage type. 484func NewIotDpsSkuDefinitionListResultPage(cur IotDpsSkuDefinitionListResult, getNextPage func(context.Context, IotDpsSkuDefinitionListResult) (IotDpsSkuDefinitionListResult, error)) IotDpsSkuDefinitionListResultPage { 485 return IotDpsSkuDefinitionListResultPage{ 486 fn: getNextPage, 487 idsdlr: cur, 488 } 489} 490 491// IotDpsSkuInfo list of possible provisioning service SKUs. 492type IotDpsSkuInfo struct { 493 // Name - Sku name. Possible values include: 'S1' 494 Name IotDpsSku `json:"name,omitempty"` 495 // Tier - READ-ONLY; Pricing tier name of the provisioning service. 496 Tier *string `json:"tier,omitempty"` 497 // Capacity - The number of units to provision 498 Capacity *int64 `json:"capacity,omitempty"` 499} 500 501// MarshalJSON is the custom marshaler for IotDpsSkuInfo. 502func (idsi IotDpsSkuInfo) MarshalJSON() ([]byte, error) { 503 objectMap := make(map[string]interface{}) 504 if idsi.Name != "" { 505 objectMap["name"] = idsi.Name 506 } 507 if idsi.Capacity != nil { 508 objectMap["capacity"] = idsi.Capacity 509 } 510 return json.Marshal(objectMap) 511} 512 513// NameAvailabilityInfo description of name availability. 514type NameAvailabilityInfo struct { 515 autorest.Response `json:"-"` 516 // NameAvailable - specifies if a name is available or not 517 NameAvailable *bool `json:"nameAvailable,omitempty"` 518 // Reason - specifies the reason a name is unavailable. Possible values include: 'Invalid', 'AlreadyExists' 519 Reason NameUnavailabilityReason `json:"reason,omitempty"` 520 // Message - message containing a detailed reason name is unavailable 521 Message *string `json:"message,omitempty"` 522} 523 524// Operation ioT Hub REST API operation. 525type Operation struct { 526 // Name - READ-ONLY; Operation name: {provider}/{resource}/{read | write | action | delete} 527 Name *string `json:"name,omitempty"` 528 // Display - The object that represents the operation. 529 Display *OperationDisplay `json:"display,omitempty"` 530} 531 532// MarshalJSON is the custom marshaler for Operation. 533func (o Operation) MarshalJSON() ([]byte, error) { 534 objectMap := make(map[string]interface{}) 535 if o.Display != nil { 536 objectMap["display"] = o.Display 537 } 538 return json.Marshal(objectMap) 539} 540 541// OperationDisplay the object that represents the operation. 542type OperationDisplay struct { 543 // Provider - READ-ONLY; Service provider: Microsoft Devices. 544 Provider *string `json:"provider,omitempty"` 545 // Resource - READ-ONLY; Resource Type: ProvisioningServices. 546 Resource *string `json:"resource,omitempty"` 547 // Operation - READ-ONLY; Name of the operation. 548 Operation *string `json:"operation,omitempty"` 549} 550 551// MarshalJSON is the custom marshaler for OperationDisplay. 552func (o OperationDisplay) MarshalJSON() ([]byte, error) { 553 objectMap := make(map[string]interface{}) 554 return json.Marshal(objectMap) 555} 556 557// OperationInputs input values for operation results call. 558type OperationInputs struct { 559 // Name - The name of the Provisioning Service to check. 560 Name *string `json:"name,omitempty"` 561} 562 563// OperationListResult result of the request to list IoT Hub operations. It contains a list of operations 564// and a URL link to get the next set of results. 565type OperationListResult struct { 566 autorest.Response `json:"-"` 567 // Value - READ-ONLY; List of IoT Hub operations supported by the Microsoft.Devices resource provider. 568 Value *[]Operation `json:"value,omitempty"` 569 // NextLink - READ-ONLY; URL to get the next set of operation list results if there are any. 570 NextLink *string `json:"nextLink,omitempty"` 571} 572 573// MarshalJSON is the custom marshaler for OperationListResult. 574func (olr OperationListResult) MarshalJSON() ([]byte, error) { 575 objectMap := make(map[string]interface{}) 576 return json.Marshal(objectMap) 577} 578 579// OperationListResultIterator provides access to a complete listing of Operation values. 580type OperationListResultIterator struct { 581 i int 582 page OperationListResultPage 583} 584 585// NextWithContext advances to the next value. If there was an error making 586// the request the iterator does not advance and the error is returned. 587func (iter *OperationListResultIterator) NextWithContext(ctx context.Context) (err error) { 588 if tracing.IsEnabled() { 589 ctx = tracing.StartSpan(ctx, fqdn+"/OperationListResultIterator.NextWithContext") 590 defer func() { 591 sc := -1 592 if iter.Response().Response.Response != nil { 593 sc = iter.Response().Response.Response.StatusCode 594 } 595 tracing.EndSpan(ctx, sc, err) 596 }() 597 } 598 iter.i++ 599 if iter.i < len(iter.page.Values()) { 600 return nil 601 } 602 err = iter.page.NextWithContext(ctx) 603 if err != nil { 604 iter.i-- 605 return err 606 } 607 iter.i = 0 608 return nil 609} 610 611// Next advances to the next value. If there was an error making 612// the request the iterator does not advance and the error is returned. 613// Deprecated: Use NextWithContext() instead. 614func (iter *OperationListResultIterator) Next() error { 615 return iter.NextWithContext(context.Background()) 616} 617 618// NotDone returns true if the enumeration should be started or is not yet complete. 619func (iter OperationListResultIterator) NotDone() bool { 620 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 621} 622 623// Response returns the raw server response from the last page request. 624func (iter OperationListResultIterator) Response() OperationListResult { 625 return iter.page.Response() 626} 627 628// Value returns the current value or a zero-initialized value if the 629// iterator has advanced beyond the end of the collection. 630func (iter OperationListResultIterator) Value() Operation { 631 if !iter.page.NotDone() { 632 return Operation{} 633 } 634 return iter.page.Values()[iter.i] 635} 636 637// Creates a new instance of the OperationListResultIterator type. 638func NewOperationListResultIterator(page OperationListResultPage) OperationListResultIterator { 639 return OperationListResultIterator{page: page} 640} 641 642// IsEmpty returns true if the ListResult contains no values. 643func (olr OperationListResult) IsEmpty() bool { 644 return olr.Value == nil || len(*olr.Value) == 0 645} 646 647// hasNextLink returns true if the NextLink is not empty. 648func (olr OperationListResult) hasNextLink() bool { 649 return olr.NextLink != nil && len(*olr.NextLink) != 0 650} 651 652// operationListResultPreparer prepares a request to retrieve the next set of results. 653// It returns nil if no more results exist. 654func (olr OperationListResult) operationListResultPreparer(ctx context.Context) (*http.Request, error) { 655 if !olr.hasNextLink() { 656 return nil, nil 657 } 658 return autorest.Prepare((&http.Request{}).WithContext(ctx), 659 autorest.AsJSON(), 660 autorest.AsGet(), 661 autorest.WithBaseURL(to.String(olr.NextLink))) 662} 663 664// OperationListResultPage contains a page of Operation values. 665type OperationListResultPage struct { 666 fn func(context.Context, OperationListResult) (OperationListResult, error) 667 olr OperationListResult 668} 669 670// NextWithContext advances to the next page of values. If there was an error making 671// the request the page does not advance and the error is returned. 672func (page *OperationListResultPage) NextWithContext(ctx context.Context) (err error) { 673 if tracing.IsEnabled() { 674 ctx = tracing.StartSpan(ctx, fqdn+"/OperationListResultPage.NextWithContext") 675 defer func() { 676 sc := -1 677 if page.Response().Response.Response != nil { 678 sc = page.Response().Response.Response.StatusCode 679 } 680 tracing.EndSpan(ctx, sc, err) 681 }() 682 } 683 for { 684 next, err := page.fn(ctx, page.olr) 685 if err != nil { 686 return err 687 } 688 page.olr = next 689 if !next.hasNextLink() || !next.IsEmpty() { 690 break 691 } 692 } 693 return nil 694} 695 696// Next advances to the next page of values. If there was an error making 697// the request the page does not advance and the error is returned. 698// Deprecated: Use NextWithContext() instead. 699func (page *OperationListResultPage) Next() error { 700 return page.NextWithContext(context.Background()) 701} 702 703// NotDone returns true if the page enumeration should be started or is not yet complete. 704func (page OperationListResultPage) NotDone() bool { 705 return !page.olr.IsEmpty() 706} 707 708// Response returns the raw server response from the last page request. 709func (page OperationListResultPage) Response() OperationListResult { 710 return page.olr 711} 712 713// Values returns the slice of values for the current page or nil if there are no values. 714func (page OperationListResultPage) Values() []Operation { 715 if page.olr.IsEmpty() { 716 return nil 717 } 718 return *page.olr.Value 719} 720 721// Creates a new instance of the OperationListResultPage type. 722func NewOperationListResultPage(cur OperationListResult, getNextPage func(context.Context, OperationListResult) (OperationListResult, error)) OperationListResultPage { 723 return OperationListResultPage{ 724 fn: getNextPage, 725 olr: cur, 726 } 727} 728 729// ProvisioningServiceDescription the description of the provisioning service. 730type ProvisioningServiceDescription struct { 731 autorest.Response `json:"-"` 732 // Etag - The Etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal ETag convention. 733 Etag *string `json:"etag,omitempty"` 734 // Properties - Service specific properties for a provisioning service 735 Properties *IotDpsPropertiesDescription `json:"properties,omitempty"` 736 // Sku - SKU info for a provisioning service. 737 Sku *IotDpsSkuInfo `json:"sku,omitempty"` 738 // ID - READ-ONLY; The resource identifier. 739 ID *string `json:"id,omitempty"` 740 // Name - READ-ONLY; The resource name. 741 Name *string `json:"name,omitempty"` 742 // Type - READ-ONLY; The resource type. 743 Type *string `json:"type,omitempty"` 744 // Location - The resource location. 745 Location *string `json:"location,omitempty"` 746 // Tags - The resource tags. 747 Tags map[string]*string `json:"tags"` 748} 749 750// MarshalJSON is the custom marshaler for ProvisioningServiceDescription. 751func (psd ProvisioningServiceDescription) MarshalJSON() ([]byte, error) { 752 objectMap := make(map[string]interface{}) 753 if psd.Etag != nil { 754 objectMap["etag"] = psd.Etag 755 } 756 if psd.Properties != nil { 757 objectMap["properties"] = psd.Properties 758 } 759 if psd.Sku != nil { 760 objectMap["sku"] = psd.Sku 761 } 762 if psd.Location != nil { 763 objectMap["location"] = psd.Location 764 } 765 if psd.Tags != nil { 766 objectMap["tags"] = psd.Tags 767 } 768 return json.Marshal(objectMap) 769} 770 771// ProvisioningServiceDescriptionListResult list of provisioning service descriptions. 772type ProvisioningServiceDescriptionListResult struct { 773 autorest.Response `json:"-"` 774 // Value - List of provisioning service descriptions. 775 Value *[]ProvisioningServiceDescription `json:"value,omitempty"` 776 // NextLink - READ-ONLY; the next link 777 NextLink *string `json:"nextLink,omitempty"` 778} 779 780// MarshalJSON is the custom marshaler for ProvisioningServiceDescriptionListResult. 781func (psdlr ProvisioningServiceDescriptionListResult) MarshalJSON() ([]byte, error) { 782 objectMap := make(map[string]interface{}) 783 if psdlr.Value != nil { 784 objectMap["value"] = psdlr.Value 785 } 786 return json.Marshal(objectMap) 787} 788 789// ProvisioningServiceDescriptionListResultIterator provides access to a complete listing of 790// ProvisioningServiceDescription values. 791type ProvisioningServiceDescriptionListResultIterator struct { 792 i int 793 page ProvisioningServiceDescriptionListResultPage 794} 795 796// NextWithContext advances to the next value. If there was an error making 797// the request the iterator does not advance and the error is returned. 798func (iter *ProvisioningServiceDescriptionListResultIterator) NextWithContext(ctx context.Context) (err error) { 799 if tracing.IsEnabled() { 800 ctx = tracing.StartSpan(ctx, fqdn+"/ProvisioningServiceDescriptionListResultIterator.NextWithContext") 801 defer func() { 802 sc := -1 803 if iter.Response().Response.Response != nil { 804 sc = iter.Response().Response.Response.StatusCode 805 } 806 tracing.EndSpan(ctx, sc, err) 807 }() 808 } 809 iter.i++ 810 if iter.i < len(iter.page.Values()) { 811 return nil 812 } 813 err = iter.page.NextWithContext(ctx) 814 if err != nil { 815 iter.i-- 816 return err 817 } 818 iter.i = 0 819 return nil 820} 821 822// Next advances to the next value. If there was an error making 823// the request the iterator does not advance and the error is returned. 824// Deprecated: Use NextWithContext() instead. 825func (iter *ProvisioningServiceDescriptionListResultIterator) Next() error { 826 return iter.NextWithContext(context.Background()) 827} 828 829// NotDone returns true if the enumeration should be started or is not yet complete. 830func (iter ProvisioningServiceDescriptionListResultIterator) NotDone() bool { 831 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 832} 833 834// Response returns the raw server response from the last page request. 835func (iter ProvisioningServiceDescriptionListResultIterator) Response() ProvisioningServiceDescriptionListResult { 836 return iter.page.Response() 837} 838 839// Value returns the current value or a zero-initialized value if the 840// iterator has advanced beyond the end of the collection. 841func (iter ProvisioningServiceDescriptionListResultIterator) Value() ProvisioningServiceDescription { 842 if !iter.page.NotDone() { 843 return ProvisioningServiceDescription{} 844 } 845 return iter.page.Values()[iter.i] 846} 847 848// Creates a new instance of the ProvisioningServiceDescriptionListResultIterator type. 849func NewProvisioningServiceDescriptionListResultIterator(page ProvisioningServiceDescriptionListResultPage) ProvisioningServiceDescriptionListResultIterator { 850 return ProvisioningServiceDescriptionListResultIterator{page: page} 851} 852 853// IsEmpty returns true if the ListResult contains no values. 854func (psdlr ProvisioningServiceDescriptionListResult) IsEmpty() bool { 855 return psdlr.Value == nil || len(*psdlr.Value) == 0 856} 857 858// hasNextLink returns true if the NextLink is not empty. 859func (psdlr ProvisioningServiceDescriptionListResult) hasNextLink() bool { 860 return psdlr.NextLink != nil && len(*psdlr.NextLink) != 0 861} 862 863// provisioningServiceDescriptionListResultPreparer prepares a request to retrieve the next set of results. 864// It returns nil if no more results exist. 865func (psdlr ProvisioningServiceDescriptionListResult) provisioningServiceDescriptionListResultPreparer(ctx context.Context) (*http.Request, error) { 866 if !psdlr.hasNextLink() { 867 return nil, nil 868 } 869 return autorest.Prepare((&http.Request{}).WithContext(ctx), 870 autorest.AsJSON(), 871 autorest.AsGet(), 872 autorest.WithBaseURL(to.String(psdlr.NextLink))) 873} 874 875// ProvisioningServiceDescriptionListResultPage contains a page of ProvisioningServiceDescription values. 876type ProvisioningServiceDescriptionListResultPage struct { 877 fn func(context.Context, ProvisioningServiceDescriptionListResult) (ProvisioningServiceDescriptionListResult, error) 878 psdlr ProvisioningServiceDescriptionListResult 879} 880 881// NextWithContext advances to the next page of values. If there was an error making 882// the request the page does not advance and the error is returned. 883func (page *ProvisioningServiceDescriptionListResultPage) NextWithContext(ctx context.Context) (err error) { 884 if tracing.IsEnabled() { 885 ctx = tracing.StartSpan(ctx, fqdn+"/ProvisioningServiceDescriptionListResultPage.NextWithContext") 886 defer func() { 887 sc := -1 888 if page.Response().Response.Response != nil { 889 sc = page.Response().Response.Response.StatusCode 890 } 891 tracing.EndSpan(ctx, sc, err) 892 }() 893 } 894 for { 895 next, err := page.fn(ctx, page.psdlr) 896 if err != nil { 897 return err 898 } 899 page.psdlr = next 900 if !next.hasNextLink() || !next.IsEmpty() { 901 break 902 } 903 } 904 return nil 905} 906 907// Next advances to the next page of values. If there was an error making 908// the request the page does not advance and the error is returned. 909// Deprecated: Use NextWithContext() instead. 910func (page *ProvisioningServiceDescriptionListResultPage) Next() error { 911 return page.NextWithContext(context.Background()) 912} 913 914// NotDone returns true if the page enumeration should be started or is not yet complete. 915func (page ProvisioningServiceDescriptionListResultPage) NotDone() bool { 916 return !page.psdlr.IsEmpty() 917} 918 919// Response returns the raw server response from the last page request. 920func (page ProvisioningServiceDescriptionListResultPage) Response() ProvisioningServiceDescriptionListResult { 921 return page.psdlr 922} 923 924// Values returns the slice of values for the current page or nil if there are no values. 925func (page ProvisioningServiceDescriptionListResultPage) Values() []ProvisioningServiceDescription { 926 if page.psdlr.IsEmpty() { 927 return nil 928 } 929 return *page.psdlr.Value 930} 931 932// Creates a new instance of the ProvisioningServiceDescriptionListResultPage type. 933func NewProvisioningServiceDescriptionListResultPage(cur ProvisioningServiceDescriptionListResult, getNextPage func(context.Context, ProvisioningServiceDescriptionListResult) (ProvisioningServiceDescriptionListResult, error)) ProvisioningServiceDescriptionListResultPage { 934 return ProvisioningServiceDescriptionListResultPage{ 935 fn: getNextPage, 936 psdlr: cur, 937 } 938} 939 940// Resource the common properties of an Azure resource. 941type Resource struct { 942 // ID - READ-ONLY; The resource identifier. 943 ID *string `json:"id,omitempty"` 944 // Name - READ-ONLY; The resource name. 945 Name *string `json:"name,omitempty"` 946 // Type - READ-ONLY; The resource type. 947 Type *string `json:"type,omitempty"` 948 // Location - The resource location. 949 Location *string `json:"location,omitempty"` 950 // Tags - The resource tags. 951 Tags map[string]*string `json:"tags"` 952} 953 954// MarshalJSON is the custom marshaler for Resource. 955func (r Resource) MarshalJSON() ([]byte, error) { 956 objectMap := make(map[string]interface{}) 957 if r.Location != nil { 958 objectMap["location"] = r.Location 959 } 960 if r.Tags != nil { 961 objectMap["tags"] = r.Tags 962 } 963 return json.Marshal(objectMap) 964} 965 966// SharedAccessSignatureAuthorizationRuleAccessRightsDescription description of the shared access key. 967type SharedAccessSignatureAuthorizationRuleAccessRightsDescription struct { 968 autorest.Response `json:"-"` 969 // KeyName - Name of the key. 970 KeyName *string `json:"keyName,omitempty"` 971 // PrimaryKey - Primary SAS key value. 972 PrimaryKey *string `json:"primaryKey,omitempty"` 973 // SecondaryKey - Secondary SAS key value. 974 SecondaryKey *string `json:"secondaryKey,omitempty"` 975 // Rights - Rights that this key has. Possible values include: 'ServiceConfig', 'EnrollmentRead', 'EnrollmentWrite', 'DeviceConnect', 'RegistrationStatusRead', 'RegistrationStatusWrite' 976 Rights AccessRightsDescription `json:"rights,omitempty"` 977} 978 979// SharedAccessSignatureAuthorizationRuleListResult list of shared access keys. 980type SharedAccessSignatureAuthorizationRuleListResult struct { 981 autorest.Response `json:"-"` 982 // Value - The list of shared access policies. 983 Value *[]SharedAccessSignatureAuthorizationRuleAccessRightsDescription `json:"value,omitempty"` 984 // NextLink - READ-ONLY; The next link. 985 NextLink *string `json:"nextLink,omitempty"` 986} 987 988// MarshalJSON is the custom marshaler for SharedAccessSignatureAuthorizationRuleListResult. 989func (sasarlr SharedAccessSignatureAuthorizationRuleListResult) MarshalJSON() ([]byte, error) { 990 objectMap := make(map[string]interface{}) 991 if sasarlr.Value != nil { 992 objectMap["value"] = sasarlr.Value 993 } 994 return json.Marshal(objectMap) 995} 996 997// SharedAccessSignatureAuthorizationRuleListResultIterator provides access to a complete listing of 998// SharedAccessSignatureAuthorizationRuleAccessRightsDescription values. 999type SharedAccessSignatureAuthorizationRuleListResultIterator struct { 1000 i int 1001 page SharedAccessSignatureAuthorizationRuleListResultPage 1002} 1003 1004// NextWithContext advances to the next value. If there was an error making 1005// the request the iterator does not advance and the error is returned. 1006func (iter *SharedAccessSignatureAuthorizationRuleListResultIterator) NextWithContext(ctx context.Context) (err error) { 1007 if tracing.IsEnabled() { 1008 ctx = tracing.StartSpan(ctx, fqdn+"/SharedAccessSignatureAuthorizationRuleListResultIterator.NextWithContext") 1009 defer func() { 1010 sc := -1 1011 if iter.Response().Response.Response != nil { 1012 sc = iter.Response().Response.Response.StatusCode 1013 } 1014 tracing.EndSpan(ctx, sc, err) 1015 }() 1016 } 1017 iter.i++ 1018 if iter.i < len(iter.page.Values()) { 1019 return nil 1020 } 1021 err = iter.page.NextWithContext(ctx) 1022 if err != nil { 1023 iter.i-- 1024 return err 1025 } 1026 iter.i = 0 1027 return nil 1028} 1029 1030// Next advances to the next value. If there was an error making 1031// the request the iterator does not advance and the error is returned. 1032// Deprecated: Use NextWithContext() instead. 1033func (iter *SharedAccessSignatureAuthorizationRuleListResultIterator) Next() error { 1034 return iter.NextWithContext(context.Background()) 1035} 1036 1037// NotDone returns true if the enumeration should be started or is not yet complete. 1038func (iter SharedAccessSignatureAuthorizationRuleListResultIterator) NotDone() bool { 1039 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 1040} 1041 1042// Response returns the raw server response from the last page request. 1043func (iter SharedAccessSignatureAuthorizationRuleListResultIterator) Response() SharedAccessSignatureAuthorizationRuleListResult { 1044 return iter.page.Response() 1045} 1046 1047// Value returns the current value or a zero-initialized value if the 1048// iterator has advanced beyond the end of the collection. 1049func (iter SharedAccessSignatureAuthorizationRuleListResultIterator) Value() SharedAccessSignatureAuthorizationRuleAccessRightsDescription { 1050 if !iter.page.NotDone() { 1051 return SharedAccessSignatureAuthorizationRuleAccessRightsDescription{} 1052 } 1053 return iter.page.Values()[iter.i] 1054} 1055 1056// Creates a new instance of the SharedAccessSignatureAuthorizationRuleListResultIterator type. 1057func NewSharedAccessSignatureAuthorizationRuleListResultIterator(page SharedAccessSignatureAuthorizationRuleListResultPage) SharedAccessSignatureAuthorizationRuleListResultIterator { 1058 return SharedAccessSignatureAuthorizationRuleListResultIterator{page: page} 1059} 1060 1061// IsEmpty returns true if the ListResult contains no values. 1062func (sasarlr SharedAccessSignatureAuthorizationRuleListResult) IsEmpty() bool { 1063 return sasarlr.Value == nil || len(*sasarlr.Value) == 0 1064} 1065 1066// hasNextLink returns true if the NextLink is not empty. 1067func (sasarlr SharedAccessSignatureAuthorizationRuleListResult) hasNextLink() bool { 1068 return sasarlr.NextLink != nil && len(*sasarlr.NextLink) != 0 1069} 1070 1071// sharedAccessSignatureAuthorizationRuleListResultPreparer prepares a request to retrieve the next set of results. 1072// It returns nil if no more results exist. 1073func (sasarlr SharedAccessSignatureAuthorizationRuleListResult) sharedAccessSignatureAuthorizationRuleListResultPreparer(ctx context.Context) (*http.Request, error) { 1074 if !sasarlr.hasNextLink() { 1075 return nil, nil 1076 } 1077 return autorest.Prepare((&http.Request{}).WithContext(ctx), 1078 autorest.AsJSON(), 1079 autorest.AsGet(), 1080 autorest.WithBaseURL(to.String(sasarlr.NextLink))) 1081} 1082 1083// SharedAccessSignatureAuthorizationRuleListResultPage contains a page of 1084// SharedAccessSignatureAuthorizationRuleAccessRightsDescription values. 1085type SharedAccessSignatureAuthorizationRuleListResultPage struct { 1086 fn func(context.Context, SharedAccessSignatureAuthorizationRuleListResult) (SharedAccessSignatureAuthorizationRuleListResult, error) 1087 sasarlr SharedAccessSignatureAuthorizationRuleListResult 1088} 1089 1090// NextWithContext advances to the next page of values. If there was an error making 1091// the request the page does not advance and the error is returned. 1092func (page *SharedAccessSignatureAuthorizationRuleListResultPage) NextWithContext(ctx context.Context) (err error) { 1093 if tracing.IsEnabled() { 1094 ctx = tracing.StartSpan(ctx, fqdn+"/SharedAccessSignatureAuthorizationRuleListResultPage.NextWithContext") 1095 defer func() { 1096 sc := -1 1097 if page.Response().Response.Response != nil { 1098 sc = page.Response().Response.Response.StatusCode 1099 } 1100 tracing.EndSpan(ctx, sc, err) 1101 }() 1102 } 1103 for { 1104 next, err := page.fn(ctx, page.sasarlr) 1105 if err != nil { 1106 return err 1107 } 1108 page.sasarlr = next 1109 if !next.hasNextLink() || !next.IsEmpty() { 1110 break 1111 } 1112 } 1113 return nil 1114} 1115 1116// Next advances to the next page of values. If there was an error making 1117// the request the page does not advance and the error is returned. 1118// Deprecated: Use NextWithContext() instead. 1119func (page *SharedAccessSignatureAuthorizationRuleListResultPage) Next() error { 1120 return page.NextWithContext(context.Background()) 1121} 1122 1123// NotDone returns true if the page enumeration should be started or is not yet complete. 1124func (page SharedAccessSignatureAuthorizationRuleListResultPage) NotDone() bool { 1125 return !page.sasarlr.IsEmpty() 1126} 1127 1128// Response returns the raw server response from the last page request. 1129func (page SharedAccessSignatureAuthorizationRuleListResultPage) Response() SharedAccessSignatureAuthorizationRuleListResult { 1130 return page.sasarlr 1131} 1132 1133// Values returns the slice of values for the current page or nil if there are no values. 1134func (page SharedAccessSignatureAuthorizationRuleListResultPage) Values() []SharedAccessSignatureAuthorizationRuleAccessRightsDescription { 1135 if page.sasarlr.IsEmpty() { 1136 return nil 1137 } 1138 return *page.sasarlr.Value 1139} 1140 1141// Creates a new instance of the SharedAccessSignatureAuthorizationRuleListResultPage type. 1142func NewSharedAccessSignatureAuthorizationRuleListResultPage(cur SharedAccessSignatureAuthorizationRuleListResult, getNextPage func(context.Context, SharedAccessSignatureAuthorizationRuleListResult) (SharedAccessSignatureAuthorizationRuleListResult, error)) SharedAccessSignatureAuthorizationRuleListResultPage { 1143 return SharedAccessSignatureAuthorizationRuleListResultPage{ 1144 fn: getNextPage, 1145 sasarlr: cur, 1146 } 1147} 1148 1149// TagsResource a container holding only the Tags for a resource, allowing the user to update the tags on a 1150// Provisioning Service instance. 1151type TagsResource struct { 1152 // Tags - Resource tags 1153 Tags map[string]*string `json:"tags"` 1154} 1155 1156// MarshalJSON is the custom marshaler for TagsResource. 1157func (tr TagsResource) MarshalJSON() ([]byte, error) { 1158 objectMap := make(map[string]interface{}) 1159 if tr.Tags != nil { 1160 objectMap["tags"] = tr.Tags 1161 } 1162 return json.Marshal(objectMap) 1163} 1164 1165// VerificationCodeRequest the JSON-serialized leaf certificate 1166type VerificationCodeRequest struct { 1167 // Certificate - base-64 representation of X509 certificate .cer file or just .pem file content. 1168 Certificate *string `json:"certificate,omitempty"` 1169} 1170 1171// VerificationCodeResponse description of the response of the verification code. 1172type VerificationCodeResponse struct { 1173 autorest.Response `json:"-"` 1174 // Name - READ-ONLY; Name of certificate. 1175 Name *string `json:"name,omitempty"` 1176 // Etag - READ-ONLY; Request etag. 1177 Etag *string `json:"etag,omitempty"` 1178 // ID - READ-ONLY; The resource identifier. 1179 ID *string `json:"id,omitempty"` 1180 // Type - READ-ONLY; The resource type. 1181 Type *string `json:"type,omitempty"` 1182 Properties *VerificationCodeResponseProperties `json:"properties,omitempty"` 1183} 1184 1185// MarshalJSON is the custom marshaler for VerificationCodeResponse. 1186func (vcr VerificationCodeResponse) MarshalJSON() ([]byte, error) { 1187 objectMap := make(map[string]interface{}) 1188 if vcr.Properties != nil { 1189 objectMap["properties"] = vcr.Properties 1190 } 1191 return json.Marshal(objectMap) 1192} 1193 1194// VerificationCodeResponseProperties ... 1195type VerificationCodeResponseProperties struct { 1196 // VerificationCode - Verification code. 1197 VerificationCode *string `json:"verificationCode,omitempty"` 1198 // Subject - Certificate subject. 1199 Subject *string `json:"subject,omitempty"` 1200 // Expiry - Code expiry. 1201 Expiry *string `json:"expiry,omitempty"` 1202 // Thumbprint - Certificate thumbprint. 1203 Thumbprint *string `json:"thumbprint,omitempty"` 1204 // IsVerified - Indicate if the certificate is verified by owner of private key. 1205 IsVerified *bool `json:"isVerified,omitempty"` 1206 // Created - Certificate created time. 1207 Created *string `json:"created,omitempty"` 1208 // Updated - Certificate updated time. 1209 Updated *string `json:"updated,omitempty"` 1210} 1211