1package web 2 3// Copyright (c) Microsoft and contributors. All rights reserved. 4// 5// Licensed under the Apache License, Version 2.0 (the "License"); 6// you may not use this file except in compliance with the License. 7// You may obtain a copy of the License at 8// http://www.apache.org/licenses/LICENSE-2.0 9// 10// Unless required by applicable law or agreed to in writing, software 11// distributed under the License is distributed on an "AS IS" BASIS, 12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13// 14// See the License for the specific language governing permissions and 15// limitations under the License. 16// 17// Code generated by Microsoft (R) AutoRest Code Generator. 18// Changes may cause incorrect behavior and will be lost if the code is regenerated. 19 20import ( 21 "context" 22 "encoding/json" 23 "github.com/Azure/go-autorest/autorest" 24 "github.com/Azure/go-autorest/autorest/azure" 25 "github.com/Azure/go-autorest/autorest/date" 26 "github.com/Azure/go-autorest/autorest/to" 27 "github.com/Azure/go-autorest/tracing" 28 "github.com/satori/go.uuid" 29 "io" 30 "net/http" 31) 32 33// The package's fully qualified name. 34const fqdn = "github.com/Azure/azure-sdk-for-go/services/web/mgmt/2016-09-01/web" 35 36// AccessControlEntryAction enumerates the values for access control entry action. 37type AccessControlEntryAction string 38 39const ( 40 // Deny ... 41 Deny AccessControlEntryAction = "Deny" 42 // Permit ... 43 Permit AccessControlEntryAction = "Permit" 44) 45 46// PossibleAccessControlEntryActionValues returns an array of possible values for the AccessControlEntryAction const type. 47func PossibleAccessControlEntryActionValues() []AccessControlEntryAction { 48 return []AccessControlEntryAction{Deny, Permit} 49} 50 51// AppServicePlanRestrictions enumerates the values for app service plan restrictions. 52type AppServicePlanRestrictions string 53 54const ( 55 // Basic ... 56 Basic AppServicePlanRestrictions = "Basic" 57 // Free ... 58 Free AppServicePlanRestrictions = "Free" 59 // None ... 60 None AppServicePlanRestrictions = "None" 61 // Premium ... 62 Premium AppServicePlanRestrictions = "Premium" 63 // Shared ... 64 Shared AppServicePlanRestrictions = "Shared" 65 // Standard ... 66 Standard AppServicePlanRestrictions = "Standard" 67) 68 69// PossibleAppServicePlanRestrictionsValues returns an array of possible values for the AppServicePlanRestrictions const type. 70func PossibleAppServicePlanRestrictionsValues() []AppServicePlanRestrictions { 71 return []AppServicePlanRestrictions{Basic, Free, None, Premium, Shared, Standard} 72} 73 74// AutoHealActionType enumerates the values for auto heal action type. 75type AutoHealActionType string 76 77const ( 78 // CustomAction ... 79 CustomAction AutoHealActionType = "CustomAction" 80 // LogEvent ... 81 LogEvent AutoHealActionType = "LogEvent" 82 // Recycle ... 83 Recycle AutoHealActionType = "Recycle" 84) 85 86// PossibleAutoHealActionTypeValues returns an array of possible values for the AutoHealActionType const type. 87func PossibleAutoHealActionTypeValues() []AutoHealActionType { 88 return []AutoHealActionType{CustomAction, LogEvent, Recycle} 89} 90 91// AzureResourceType enumerates the values for azure resource type. 92type AzureResourceType string 93 94const ( 95 // TrafficManager ... 96 TrafficManager AzureResourceType = "TrafficManager" 97 // Website ... 98 Website AzureResourceType = "Website" 99) 100 101// PossibleAzureResourceTypeValues returns an array of possible values for the AzureResourceType const type. 102func PossibleAzureResourceTypeValues() []AzureResourceType { 103 return []AzureResourceType{TrafficManager, Website} 104} 105 106// BackupItemStatus enumerates the values for backup item status. 107type BackupItemStatus string 108 109const ( 110 // Created ... 111 Created BackupItemStatus = "Created" 112 // Deleted ... 113 Deleted BackupItemStatus = "Deleted" 114 // DeleteFailed ... 115 DeleteFailed BackupItemStatus = "DeleteFailed" 116 // DeleteInProgress ... 117 DeleteInProgress BackupItemStatus = "DeleteInProgress" 118 // Failed ... 119 Failed BackupItemStatus = "Failed" 120 // InProgress ... 121 InProgress BackupItemStatus = "InProgress" 122 // PartiallySucceeded ... 123 PartiallySucceeded BackupItemStatus = "PartiallySucceeded" 124 // Skipped ... 125 Skipped BackupItemStatus = "Skipped" 126 // Succeeded ... 127 Succeeded BackupItemStatus = "Succeeded" 128 // TimedOut ... 129 TimedOut BackupItemStatus = "TimedOut" 130) 131 132// PossibleBackupItemStatusValues returns an array of possible values for the BackupItemStatus const type. 133func PossibleBackupItemStatusValues() []BackupItemStatus { 134 return []BackupItemStatus{Created, Deleted, DeleteFailed, DeleteInProgress, Failed, InProgress, PartiallySucceeded, Skipped, Succeeded, TimedOut} 135} 136 137// BackupRestoreOperationType enumerates the values for backup restore operation type. 138type BackupRestoreOperationType string 139 140const ( 141 // BackupRestoreOperationTypeClone ... 142 BackupRestoreOperationTypeClone BackupRestoreOperationType = "Clone" 143 // BackupRestoreOperationTypeDefault ... 144 BackupRestoreOperationTypeDefault BackupRestoreOperationType = "Default" 145 // BackupRestoreOperationTypeRelocation ... 146 BackupRestoreOperationTypeRelocation BackupRestoreOperationType = "Relocation" 147 // BackupRestoreOperationTypeSnapshot ... 148 BackupRestoreOperationTypeSnapshot BackupRestoreOperationType = "Snapshot" 149) 150 151// PossibleBackupRestoreOperationTypeValues returns an array of possible values for the BackupRestoreOperationType const type. 152func PossibleBackupRestoreOperationTypeValues() []BackupRestoreOperationType { 153 return []BackupRestoreOperationType{BackupRestoreOperationTypeClone, BackupRestoreOperationTypeDefault, BackupRestoreOperationTypeRelocation, BackupRestoreOperationTypeSnapshot} 154} 155 156// BuiltInAuthenticationProvider enumerates the values for built in authentication provider. 157type BuiltInAuthenticationProvider string 158 159const ( 160 // AzureActiveDirectory ... 161 AzureActiveDirectory BuiltInAuthenticationProvider = "AzureActiveDirectory" 162 // Facebook ... 163 Facebook BuiltInAuthenticationProvider = "Facebook" 164 // Google ... 165 Google BuiltInAuthenticationProvider = "Google" 166 // MicrosoftAccount ... 167 MicrosoftAccount BuiltInAuthenticationProvider = "MicrosoftAccount" 168 // Twitter ... 169 Twitter BuiltInAuthenticationProvider = "Twitter" 170) 171 172// PossibleBuiltInAuthenticationProviderValues returns an array of possible values for the BuiltInAuthenticationProvider const type. 173func PossibleBuiltInAuthenticationProviderValues() []BuiltInAuthenticationProvider { 174 return []BuiltInAuthenticationProvider{AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter} 175} 176 177// CertificateOrderActionType enumerates the values for certificate order action type. 178type CertificateOrderActionType string 179 180const ( 181 // CertificateExpirationWarning ... 182 CertificateExpirationWarning CertificateOrderActionType = "CertificateExpirationWarning" 183 // CertificateExpired ... 184 CertificateExpired CertificateOrderActionType = "CertificateExpired" 185 // CertificateIssued ... 186 CertificateIssued CertificateOrderActionType = "CertificateIssued" 187 // CertificateOrderCanceled ... 188 CertificateOrderCanceled CertificateOrderActionType = "CertificateOrderCanceled" 189 // CertificateOrderCreated ... 190 CertificateOrderCreated CertificateOrderActionType = "CertificateOrderCreated" 191 // CertificateRevoked ... 192 CertificateRevoked CertificateOrderActionType = "CertificateRevoked" 193 // DomainValidationComplete ... 194 DomainValidationComplete CertificateOrderActionType = "DomainValidationComplete" 195 // FraudCleared ... 196 FraudCleared CertificateOrderActionType = "FraudCleared" 197 // FraudDetected ... 198 FraudDetected CertificateOrderActionType = "FraudDetected" 199 // FraudDocumentationRequired ... 200 FraudDocumentationRequired CertificateOrderActionType = "FraudDocumentationRequired" 201 // OrgNameChange ... 202 OrgNameChange CertificateOrderActionType = "OrgNameChange" 203 // OrgValidationComplete ... 204 OrgValidationComplete CertificateOrderActionType = "OrgValidationComplete" 205 // SanDrop ... 206 SanDrop CertificateOrderActionType = "SanDrop" 207 // Unknown ... 208 Unknown CertificateOrderActionType = "Unknown" 209) 210 211// PossibleCertificateOrderActionTypeValues returns an array of possible values for the CertificateOrderActionType const type. 212func PossibleCertificateOrderActionTypeValues() []CertificateOrderActionType { 213 return []CertificateOrderActionType{CertificateExpirationWarning, CertificateExpired, CertificateIssued, CertificateOrderCanceled, CertificateOrderCreated, CertificateRevoked, DomainValidationComplete, FraudCleared, FraudDetected, FraudDocumentationRequired, OrgNameChange, OrgValidationComplete, SanDrop, Unknown} 214} 215 216// CertificateOrderStatus enumerates the values for certificate order status. 217type CertificateOrderStatus string 218 219const ( 220 // Canceled ... 221 Canceled CertificateOrderStatus = "Canceled" 222 // Denied ... 223 Denied CertificateOrderStatus = "Denied" 224 // Expired ... 225 Expired CertificateOrderStatus = "Expired" 226 // Issued ... 227 Issued CertificateOrderStatus = "Issued" 228 // NotSubmitted ... 229 NotSubmitted CertificateOrderStatus = "NotSubmitted" 230 // Pendingissuance ... 231 Pendingissuance CertificateOrderStatus = "Pendingissuance" 232 // PendingRekey ... 233 PendingRekey CertificateOrderStatus = "PendingRekey" 234 // Pendingrevocation ... 235 Pendingrevocation CertificateOrderStatus = "Pendingrevocation" 236 // Revoked ... 237 Revoked CertificateOrderStatus = "Revoked" 238 // Unused ... 239 Unused CertificateOrderStatus = "Unused" 240) 241 242// PossibleCertificateOrderStatusValues returns an array of possible values for the CertificateOrderStatus const type. 243func PossibleCertificateOrderStatusValues() []CertificateOrderStatus { 244 return []CertificateOrderStatus{Canceled, Denied, Expired, Issued, NotSubmitted, Pendingissuance, PendingRekey, Pendingrevocation, Revoked, Unused} 245} 246 247// CertificateProductType enumerates the values for certificate product type. 248type CertificateProductType string 249 250const ( 251 // StandardDomainValidatedSsl ... 252 StandardDomainValidatedSsl CertificateProductType = "StandardDomainValidatedSsl" 253 // StandardDomainValidatedWildCardSsl ... 254 StandardDomainValidatedWildCardSsl CertificateProductType = "StandardDomainValidatedWildCardSsl" 255) 256 257// PossibleCertificateProductTypeValues returns an array of possible values for the CertificateProductType const type. 258func PossibleCertificateProductTypeValues() []CertificateProductType { 259 return []CertificateProductType{StandardDomainValidatedSsl, StandardDomainValidatedWildCardSsl} 260} 261 262// Channels enumerates the values for channels. 263type Channels string 264 265const ( 266 // All ... 267 All Channels = "All" 268 // API ... 269 API Channels = "Api" 270 // Email ... 271 Email Channels = "Email" 272 // Notification ... 273 Notification Channels = "Notification" 274 // Webhook ... 275 Webhook Channels = "Webhook" 276) 277 278// PossibleChannelsValues returns an array of possible values for the Channels const type. 279func PossibleChannelsValues() []Channels { 280 return []Channels{All, API, Email, Notification, Webhook} 281} 282 283// CheckNameResourceTypes enumerates the values for check name resource types. 284type CheckNameResourceTypes string 285 286const ( 287 // CheckNameResourceTypesHostingEnvironment ... 288 CheckNameResourceTypesHostingEnvironment CheckNameResourceTypes = "HostingEnvironment" 289 // CheckNameResourceTypesMicrosoftWebhostingEnvironments ... 290 CheckNameResourceTypesMicrosoftWebhostingEnvironments CheckNameResourceTypes = "Microsoft.Web/hostingEnvironments" 291 // CheckNameResourceTypesMicrosoftWebpublishingUsers ... 292 CheckNameResourceTypesMicrosoftWebpublishingUsers CheckNameResourceTypes = "Microsoft.Web/publishingUsers" 293 // CheckNameResourceTypesMicrosoftWebsites ... 294 CheckNameResourceTypesMicrosoftWebsites CheckNameResourceTypes = "Microsoft.Web/sites" 295 // CheckNameResourceTypesMicrosoftWebsitesslots ... 296 CheckNameResourceTypesMicrosoftWebsitesslots CheckNameResourceTypes = "Microsoft.Web/sites/slots" 297 // CheckNameResourceTypesPublishingUser ... 298 CheckNameResourceTypesPublishingUser CheckNameResourceTypes = "PublishingUser" 299 // CheckNameResourceTypesSite ... 300 CheckNameResourceTypesSite CheckNameResourceTypes = "Site" 301 // CheckNameResourceTypesSlot ... 302 CheckNameResourceTypesSlot CheckNameResourceTypes = "Slot" 303) 304 305// PossibleCheckNameResourceTypesValues returns an array of possible values for the CheckNameResourceTypes const type. 306func PossibleCheckNameResourceTypesValues() []CheckNameResourceTypes { 307 return []CheckNameResourceTypes{CheckNameResourceTypesHostingEnvironment, CheckNameResourceTypesMicrosoftWebhostingEnvironments, CheckNameResourceTypesMicrosoftWebpublishingUsers, CheckNameResourceTypesMicrosoftWebsites, CheckNameResourceTypesMicrosoftWebsitesslots, CheckNameResourceTypesPublishingUser, CheckNameResourceTypesSite, CheckNameResourceTypesSlot} 308} 309 310// CloneAbilityResult enumerates the values for clone ability result. 311type CloneAbilityResult string 312 313const ( 314 // Cloneable ... 315 Cloneable CloneAbilityResult = "Cloneable" 316 // NotCloneable ... 317 NotCloneable CloneAbilityResult = "NotCloneable" 318 // PartiallyCloneable ... 319 PartiallyCloneable CloneAbilityResult = "PartiallyCloneable" 320) 321 322// PossibleCloneAbilityResultValues returns an array of possible values for the CloneAbilityResult const type. 323func PossibleCloneAbilityResultValues() []CloneAbilityResult { 324 return []CloneAbilityResult{Cloneable, NotCloneable, PartiallyCloneable} 325} 326 327// ComputeModeOptions enumerates the values for compute mode options. 328type ComputeModeOptions string 329 330const ( 331 // ComputeModeOptionsDedicated ... 332 ComputeModeOptionsDedicated ComputeModeOptions = "Dedicated" 333 // ComputeModeOptionsDynamic ... 334 ComputeModeOptionsDynamic ComputeModeOptions = "Dynamic" 335 // ComputeModeOptionsShared ... 336 ComputeModeOptionsShared ComputeModeOptions = "Shared" 337) 338 339// PossibleComputeModeOptionsValues returns an array of possible values for the ComputeModeOptions const type. 340func PossibleComputeModeOptionsValues() []ComputeModeOptions { 341 return []ComputeModeOptions{ComputeModeOptionsDedicated, ComputeModeOptionsDynamic, ComputeModeOptionsShared} 342} 343 344// ConnectionStringType enumerates the values for connection string type. 345type ConnectionStringType string 346 347const ( 348 // APIHub ... 349 APIHub ConnectionStringType = "ApiHub" 350 // Custom ... 351 Custom ConnectionStringType = "Custom" 352 // DocDb ... 353 DocDb ConnectionStringType = "DocDb" 354 // EventHub ... 355 EventHub ConnectionStringType = "EventHub" 356 // MySQL ... 357 MySQL ConnectionStringType = "MySql" 358 // NotificationHub ... 359 NotificationHub ConnectionStringType = "NotificationHub" 360 // PostgreSQL ... 361 PostgreSQL ConnectionStringType = "PostgreSQL" 362 // RedisCache ... 363 RedisCache ConnectionStringType = "RedisCache" 364 // ServiceBus ... 365 ServiceBus ConnectionStringType = "ServiceBus" 366 // SQLAzure ... 367 SQLAzure ConnectionStringType = "SQLAzure" 368 // SQLServer ... 369 SQLServer ConnectionStringType = "SQLServer" 370) 371 372// PossibleConnectionStringTypeValues returns an array of possible values for the ConnectionStringType const type. 373func PossibleConnectionStringTypeValues() []ConnectionStringType { 374 return []ConnectionStringType{APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, SQLServer} 375} 376 377// ContinuousWebJobStatus enumerates the values for continuous web job status. 378type ContinuousWebJobStatus string 379 380const ( 381 // Initializing ... 382 Initializing ContinuousWebJobStatus = "Initializing" 383 // PendingRestart ... 384 PendingRestart ContinuousWebJobStatus = "PendingRestart" 385 // Running ... 386 Running ContinuousWebJobStatus = "Running" 387 // Starting ... 388 Starting ContinuousWebJobStatus = "Starting" 389 // Stopped ... 390 Stopped ContinuousWebJobStatus = "Stopped" 391) 392 393// PossibleContinuousWebJobStatusValues returns an array of possible values for the ContinuousWebJobStatus const type. 394func PossibleContinuousWebJobStatusValues() []ContinuousWebJobStatus { 395 return []ContinuousWebJobStatus{Initializing, PendingRestart, Running, Starting, Stopped} 396} 397 398// CustomHostNameDNSRecordType enumerates the values for custom host name dns record type. 399type CustomHostNameDNSRecordType string 400 401const ( 402 // A ... 403 A CustomHostNameDNSRecordType = "A" 404 // CName ... 405 CName CustomHostNameDNSRecordType = "CName" 406) 407 408// PossibleCustomHostNameDNSRecordTypeValues returns an array of possible values for the CustomHostNameDNSRecordType const type. 409func PossibleCustomHostNameDNSRecordTypeValues() []CustomHostNameDNSRecordType { 410 return []CustomHostNameDNSRecordType{A, CName} 411} 412 413// DatabaseType enumerates the values for database type. 414type DatabaseType string 415 416const ( 417 // DatabaseTypeLocalMySQL ... 418 DatabaseTypeLocalMySQL DatabaseType = "LocalMySql" 419 // DatabaseTypeMySQL ... 420 DatabaseTypeMySQL DatabaseType = "MySql" 421 // DatabaseTypePostgreSQL ... 422 DatabaseTypePostgreSQL DatabaseType = "PostgreSql" 423 // DatabaseTypeSQLAzure ... 424 DatabaseTypeSQLAzure DatabaseType = "SqlAzure" 425) 426 427// PossibleDatabaseTypeValues returns an array of possible values for the DatabaseType const type. 428func PossibleDatabaseTypeValues() []DatabaseType { 429 return []DatabaseType{DatabaseTypeLocalMySQL, DatabaseTypeMySQL, DatabaseTypePostgreSQL, DatabaseTypeSQLAzure} 430} 431 432// DNSType enumerates the values for dns type. 433type DNSType string 434 435const ( 436 // AzureDNS ... 437 AzureDNS DNSType = "AzureDns" 438 // DefaultDomainRegistrarDNS ... 439 DefaultDomainRegistrarDNS DNSType = "DefaultDomainRegistrarDns" 440) 441 442// PossibleDNSTypeValues returns an array of possible values for the DNSType const type. 443func PossibleDNSTypeValues() []DNSType { 444 return []DNSType{AzureDNS, DefaultDomainRegistrarDNS} 445} 446 447// DNSVerificationTestResult enumerates the values for dns verification test result. 448type DNSVerificationTestResult string 449 450const ( 451 // DNSVerificationTestResultFailed ... 452 DNSVerificationTestResultFailed DNSVerificationTestResult = "Failed" 453 // DNSVerificationTestResultPassed ... 454 DNSVerificationTestResultPassed DNSVerificationTestResult = "Passed" 455 // DNSVerificationTestResultSkipped ... 456 DNSVerificationTestResultSkipped DNSVerificationTestResult = "Skipped" 457) 458 459// PossibleDNSVerificationTestResultValues returns an array of possible values for the DNSVerificationTestResult const type. 460func PossibleDNSVerificationTestResultValues() []DNSVerificationTestResult { 461 return []DNSVerificationTestResult{DNSVerificationTestResultFailed, DNSVerificationTestResultPassed, DNSVerificationTestResultSkipped} 462} 463 464// DomainStatus enumerates the values for domain status. 465type DomainStatus string 466 467const ( 468 // DomainStatusActive ... 469 DomainStatusActive DomainStatus = "Active" 470 // DomainStatusAwaiting ... 471 DomainStatusAwaiting DomainStatus = "Awaiting" 472 // DomainStatusCancelled ... 473 DomainStatusCancelled DomainStatus = "Cancelled" 474 // DomainStatusConfiscated ... 475 DomainStatusConfiscated DomainStatus = "Confiscated" 476 // DomainStatusDisabled ... 477 DomainStatusDisabled DomainStatus = "Disabled" 478 // DomainStatusExcluded ... 479 DomainStatusExcluded DomainStatus = "Excluded" 480 // DomainStatusExpired ... 481 DomainStatusExpired DomainStatus = "Expired" 482 // DomainStatusFailed ... 483 DomainStatusFailed DomainStatus = "Failed" 484 // DomainStatusHeld ... 485 DomainStatusHeld DomainStatus = "Held" 486 // DomainStatusJSONConverterFailed ... 487 DomainStatusJSONConverterFailed DomainStatus = "JsonConverterFailed" 488 // DomainStatusLocked ... 489 DomainStatusLocked DomainStatus = "Locked" 490 // DomainStatusParked ... 491 DomainStatusParked DomainStatus = "Parked" 492 // DomainStatusPending ... 493 DomainStatusPending DomainStatus = "Pending" 494 // DomainStatusReserved ... 495 DomainStatusReserved DomainStatus = "Reserved" 496 // DomainStatusReverted ... 497 DomainStatusReverted DomainStatus = "Reverted" 498 // DomainStatusSuspended ... 499 DomainStatusSuspended DomainStatus = "Suspended" 500 // DomainStatusTransferred ... 501 DomainStatusTransferred DomainStatus = "Transferred" 502 // DomainStatusUnknown ... 503 DomainStatusUnknown DomainStatus = "Unknown" 504 // DomainStatusUnlocked ... 505 DomainStatusUnlocked DomainStatus = "Unlocked" 506 // DomainStatusUnparked ... 507 DomainStatusUnparked DomainStatus = "Unparked" 508 // DomainStatusUpdated ... 509 DomainStatusUpdated DomainStatus = "Updated" 510) 511 512// PossibleDomainStatusValues returns an array of possible values for the DomainStatus const type. 513func PossibleDomainStatusValues() []DomainStatus { 514 return []DomainStatus{DomainStatusActive, DomainStatusAwaiting, DomainStatusCancelled, DomainStatusConfiscated, DomainStatusDisabled, DomainStatusExcluded, DomainStatusExpired, DomainStatusFailed, DomainStatusHeld, DomainStatusJSONConverterFailed, DomainStatusLocked, DomainStatusParked, DomainStatusPending, DomainStatusReserved, DomainStatusReverted, DomainStatusSuspended, DomainStatusTransferred, DomainStatusUnknown, DomainStatusUnlocked, DomainStatusUnparked, DomainStatusUpdated} 515} 516 517// DomainType enumerates the values for domain type. 518type DomainType string 519 520const ( 521 // Regular ... 522 Regular DomainType = "Regular" 523 // SoftDeleted ... 524 SoftDeleted DomainType = "SoftDeleted" 525) 526 527// PossibleDomainTypeValues returns an array of possible values for the DomainType const type. 528func PossibleDomainTypeValues() []DomainType { 529 return []DomainType{Regular, SoftDeleted} 530} 531 532// FrequencyUnit enumerates the values for frequency unit. 533type FrequencyUnit string 534 535const ( 536 // Day ... 537 Day FrequencyUnit = "Day" 538 // Hour ... 539 Hour FrequencyUnit = "Hour" 540) 541 542// PossibleFrequencyUnitValues returns an array of possible values for the FrequencyUnit const type. 543func PossibleFrequencyUnitValues() []FrequencyUnit { 544 return []FrequencyUnit{Day, Hour} 545} 546 547// HostingEnvironmentStatus enumerates the values for hosting environment status. 548type HostingEnvironmentStatus string 549 550const ( 551 // Deleting ... 552 Deleting HostingEnvironmentStatus = "Deleting" 553 // Preparing ... 554 Preparing HostingEnvironmentStatus = "Preparing" 555 // Ready ... 556 Ready HostingEnvironmentStatus = "Ready" 557 // Scaling ... 558 Scaling HostingEnvironmentStatus = "Scaling" 559) 560 561// PossibleHostingEnvironmentStatusValues returns an array of possible values for the HostingEnvironmentStatus const type. 562func PossibleHostingEnvironmentStatusValues() []HostingEnvironmentStatus { 563 return []HostingEnvironmentStatus{Deleting, Preparing, Ready, Scaling} 564} 565 566// HostNameType enumerates the values for host name type. 567type HostNameType string 568 569const ( 570 // Managed ... 571 Managed HostNameType = "Managed" 572 // Verified ... 573 Verified HostNameType = "Verified" 574) 575 576// PossibleHostNameTypeValues returns an array of possible values for the HostNameType const type. 577func PossibleHostNameTypeValues() []HostNameType { 578 return []HostNameType{Managed, Verified} 579} 580 581// HostType enumerates the values for host type. 582type HostType string 583 584const ( 585 // HostTypeRepository ... 586 HostTypeRepository HostType = "Repository" 587 // HostTypeStandard ... 588 HostTypeStandard HostType = "Standard" 589) 590 591// PossibleHostTypeValues returns an array of possible values for the HostType const type. 592func PossibleHostTypeValues() []HostType { 593 return []HostType{HostTypeRepository, HostTypeStandard} 594} 595 596// InAvailabilityReasonType enumerates the values for in availability reason type. 597type InAvailabilityReasonType string 598 599const ( 600 // AlreadyExists ... 601 AlreadyExists InAvailabilityReasonType = "AlreadyExists" 602 // Invalid ... 603 Invalid InAvailabilityReasonType = "Invalid" 604) 605 606// PossibleInAvailabilityReasonTypeValues returns an array of possible values for the InAvailabilityReasonType const type. 607func PossibleInAvailabilityReasonTypeValues() []InAvailabilityReasonType { 608 return []InAvailabilityReasonType{AlreadyExists, Invalid} 609} 610 611// InternalLoadBalancingMode enumerates the values for internal load balancing mode. 612type InternalLoadBalancingMode string 613 614const ( 615 // InternalLoadBalancingModeNone ... 616 InternalLoadBalancingModeNone InternalLoadBalancingMode = "None" 617 // InternalLoadBalancingModePublishing ... 618 InternalLoadBalancingModePublishing InternalLoadBalancingMode = "Publishing" 619 // InternalLoadBalancingModeWeb ... 620 InternalLoadBalancingModeWeb InternalLoadBalancingMode = "Web" 621) 622 623// PossibleInternalLoadBalancingModeValues returns an array of possible values for the InternalLoadBalancingMode const type. 624func PossibleInternalLoadBalancingModeValues() []InternalLoadBalancingMode { 625 return []InternalLoadBalancingMode{InternalLoadBalancingModeNone, InternalLoadBalancingModePublishing, InternalLoadBalancingModeWeb} 626} 627 628// IssueType enumerates the values for issue type. 629type IssueType string 630 631const ( 632 // AppCrash ... 633 AppCrash IssueType = "AppCrash" 634 // AppDeployment ... 635 AppDeployment IssueType = "AppDeployment" 636 // AseDeployment ... 637 AseDeployment IssueType = "AseDeployment" 638 // Other ... 639 Other IssueType = "Other" 640 // PlatformIssue ... 641 PlatformIssue IssueType = "PlatformIssue" 642 // RuntimeIssueDetected ... 643 RuntimeIssueDetected IssueType = "RuntimeIssueDetected" 644 // ServiceIncident ... 645 ServiceIncident IssueType = "ServiceIncident" 646 // UserIssue ... 647 UserIssue IssueType = "UserIssue" 648) 649 650// PossibleIssueTypeValues returns an array of possible values for the IssueType const type. 651func PossibleIssueTypeValues() []IssueType { 652 return []IssueType{AppCrash, AppDeployment, AseDeployment, Other, PlatformIssue, RuntimeIssueDetected, ServiceIncident, UserIssue} 653} 654 655// JobType enumerates the values for job type. 656type JobType string 657 658const ( 659 // Continuous ... 660 Continuous JobType = "Continuous" 661 // Triggered ... 662 Triggered JobType = "Triggered" 663) 664 665// PossibleJobTypeValues returns an array of possible values for the JobType const type. 666func PossibleJobTypeValues() []JobType { 667 return []JobType{Continuous, Triggered} 668} 669 670// KeyVaultSecretStatus enumerates the values for key vault secret status. 671type KeyVaultSecretStatus string 672 673const ( 674 // KeyVaultSecretStatusAzureServiceUnauthorizedToAccessKeyVault ... 675 KeyVaultSecretStatusAzureServiceUnauthorizedToAccessKeyVault KeyVaultSecretStatus = "AzureServiceUnauthorizedToAccessKeyVault" 676 // KeyVaultSecretStatusCertificateOrderFailed ... 677 KeyVaultSecretStatusCertificateOrderFailed KeyVaultSecretStatus = "CertificateOrderFailed" 678 // KeyVaultSecretStatusExternalPrivateKey ... 679 KeyVaultSecretStatusExternalPrivateKey KeyVaultSecretStatus = "ExternalPrivateKey" 680 // KeyVaultSecretStatusInitialized ... 681 KeyVaultSecretStatusInitialized KeyVaultSecretStatus = "Initialized" 682 // KeyVaultSecretStatusKeyVaultDoesNotExist ... 683 KeyVaultSecretStatusKeyVaultDoesNotExist KeyVaultSecretStatus = "KeyVaultDoesNotExist" 684 // KeyVaultSecretStatusKeyVaultSecretDoesNotExist ... 685 KeyVaultSecretStatusKeyVaultSecretDoesNotExist KeyVaultSecretStatus = "KeyVaultSecretDoesNotExist" 686 // KeyVaultSecretStatusOperationNotPermittedOnKeyVault ... 687 KeyVaultSecretStatusOperationNotPermittedOnKeyVault KeyVaultSecretStatus = "OperationNotPermittedOnKeyVault" 688 // KeyVaultSecretStatusSucceeded ... 689 KeyVaultSecretStatusSucceeded KeyVaultSecretStatus = "Succeeded" 690 // KeyVaultSecretStatusUnknown ... 691 KeyVaultSecretStatusUnknown KeyVaultSecretStatus = "Unknown" 692 // KeyVaultSecretStatusUnknownError ... 693 KeyVaultSecretStatusUnknownError KeyVaultSecretStatus = "UnknownError" 694 // KeyVaultSecretStatusWaitingOnCertificateOrder ... 695 KeyVaultSecretStatusWaitingOnCertificateOrder KeyVaultSecretStatus = "WaitingOnCertificateOrder" 696) 697 698// PossibleKeyVaultSecretStatusValues returns an array of possible values for the KeyVaultSecretStatus const type. 699func PossibleKeyVaultSecretStatusValues() []KeyVaultSecretStatus { 700 return []KeyVaultSecretStatus{KeyVaultSecretStatusAzureServiceUnauthorizedToAccessKeyVault, KeyVaultSecretStatusCertificateOrderFailed, KeyVaultSecretStatusExternalPrivateKey, KeyVaultSecretStatusInitialized, KeyVaultSecretStatusKeyVaultDoesNotExist, KeyVaultSecretStatusKeyVaultSecretDoesNotExist, KeyVaultSecretStatusOperationNotPermittedOnKeyVault, KeyVaultSecretStatusSucceeded, KeyVaultSecretStatusUnknown, KeyVaultSecretStatusUnknownError, KeyVaultSecretStatusWaitingOnCertificateOrder} 701} 702 703// LogLevel enumerates the values for log level. 704type LogLevel string 705 706const ( 707 // Error ... 708 Error LogLevel = "Error" 709 // Information ... 710 Information LogLevel = "Information" 711 // Off ... 712 Off LogLevel = "Off" 713 // Verbose ... 714 Verbose LogLevel = "Verbose" 715 // Warning ... 716 Warning LogLevel = "Warning" 717) 718 719// PossibleLogLevelValues returns an array of possible values for the LogLevel const type. 720func PossibleLogLevelValues() []LogLevel { 721 return []LogLevel{Error, Information, Off, Verbose, Warning} 722} 723 724// ManagedPipelineMode enumerates the values for managed pipeline mode. 725type ManagedPipelineMode string 726 727const ( 728 // Classic ... 729 Classic ManagedPipelineMode = "Classic" 730 // Integrated ... 731 Integrated ManagedPipelineMode = "Integrated" 732) 733 734// PossibleManagedPipelineModeValues returns an array of possible values for the ManagedPipelineMode const type. 735func PossibleManagedPipelineModeValues() []ManagedPipelineMode { 736 return []ManagedPipelineMode{Classic, Integrated} 737} 738 739// ManagedServiceIdentityType enumerates the values for managed service identity type. 740type ManagedServiceIdentityType string 741 742const ( 743 // SystemAssigned ... 744 SystemAssigned ManagedServiceIdentityType = "SystemAssigned" 745) 746 747// PossibleManagedServiceIdentityTypeValues returns an array of possible values for the ManagedServiceIdentityType const type. 748func PossibleManagedServiceIdentityTypeValues() []ManagedServiceIdentityType { 749 return []ManagedServiceIdentityType{SystemAssigned} 750} 751 752// MSDeployLogEntryType enumerates the values for ms deploy log entry type. 753type MSDeployLogEntryType string 754 755const ( 756 // MSDeployLogEntryTypeError ... 757 MSDeployLogEntryTypeError MSDeployLogEntryType = "Error" 758 // MSDeployLogEntryTypeMessage ... 759 MSDeployLogEntryTypeMessage MSDeployLogEntryType = "Message" 760 // MSDeployLogEntryTypeWarning ... 761 MSDeployLogEntryTypeWarning MSDeployLogEntryType = "Warning" 762) 763 764// PossibleMSDeployLogEntryTypeValues returns an array of possible values for the MSDeployLogEntryType const type. 765func PossibleMSDeployLogEntryTypeValues() []MSDeployLogEntryType { 766 return []MSDeployLogEntryType{MSDeployLogEntryTypeError, MSDeployLogEntryTypeMessage, MSDeployLogEntryTypeWarning} 767} 768 769// MSDeployProvisioningState enumerates the values for ms deploy provisioning state. 770type MSDeployProvisioningState string 771 772const ( 773 // MSDeployProvisioningStateAccepted ... 774 MSDeployProvisioningStateAccepted MSDeployProvisioningState = "accepted" 775 // MSDeployProvisioningStateCanceled ... 776 MSDeployProvisioningStateCanceled MSDeployProvisioningState = "canceled" 777 // MSDeployProvisioningStateFailed ... 778 MSDeployProvisioningStateFailed MSDeployProvisioningState = "failed" 779 // MSDeployProvisioningStateRunning ... 780 MSDeployProvisioningStateRunning MSDeployProvisioningState = "running" 781 // MSDeployProvisioningStateSucceeded ... 782 MSDeployProvisioningStateSucceeded MSDeployProvisioningState = "succeeded" 783) 784 785// PossibleMSDeployProvisioningStateValues returns an array of possible values for the MSDeployProvisioningState const type. 786func PossibleMSDeployProvisioningStateValues() []MSDeployProvisioningState { 787 return []MSDeployProvisioningState{MSDeployProvisioningStateAccepted, MSDeployProvisioningStateCanceled, MSDeployProvisioningStateFailed, MSDeployProvisioningStateRunning, MSDeployProvisioningStateSucceeded} 788} 789 790// MySQLMigrationType enumerates the values for my sql migration type. 791type MySQLMigrationType string 792 793const ( 794 // LocalToRemote ... 795 LocalToRemote MySQLMigrationType = "LocalToRemote" 796 // RemoteToLocal ... 797 RemoteToLocal MySQLMigrationType = "RemoteToLocal" 798) 799 800// PossibleMySQLMigrationTypeValues returns an array of possible values for the MySQLMigrationType const type. 801func PossibleMySQLMigrationTypeValues() []MySQLMigrationType { 802 return []MySQLMigrationType{LocalToRemote, RemoteToLocal} 803} 804 805// NotificationLevel enumerates the values for notification level. 806type NotificationLevel string 807 808const ( 809 // NotificationLevelCritical ... 810 NotificationLevelCritical NotificationLevel = "Critical" 811 // NotificationLevelInformation ... 812 NotificationLevelInformation NotificationLevel = "Information" 813 // NotificationLevelNonUrgentSuggestion ... 814 NotificationLevelNonUrgentSuggestion NotificationLevel = "NonUrgentSuggestion" 815 // NotificationLevelWarning ... 816 NotificationLevelWarning NotificationLevel = "Warning" 817) 818 819// PossibleNotificationLevelValues returns an array of possible values for the NotificationLevel const type. 820func PossibleNotificationLevelValues() []NotificationLevel { 821 return []NotificationLevel{NotificationLevelCritical, NotificationLevelInformation, NotificationLevelNonUrgentSuggestion, NotificationLevelWarning} 822} 823 824// OperationStatus enumerates the values for operation status. 825type OperationStatus string 826 827const ( 828 // OperationStatusCreated ... 829 OperationStatusCreated OperationStatus = "Created" 830 // OperationStatusFailed ... 831 OperationStatusFailed OperationStatus = "Failed" 832 // OperationStatusInProgress ... 833 OperationStatusInProgress OperationStatus = "InProgress" 834 // OperationStatusSucceeded ... 835 OperationStatusSucceeded OperationStatus = "Succeeded" 836 // OperationStatusTimedOut ... 837 OperationStatusTimedOut OperationStatus = "TimedOut" 838) 839 840// PossibleOperationStatusValues returns an array of possible values for the OperationStatus const type. 841func PossibleOperationStatusValues() []OperationStatus { 842 return []OperationStatus{OperationStatusCreated, OperationStatusFailed, OperationStatusInProgress, OperationStatusSucceeded, OperationStatusTimedOut} 843} 844 845// ProvisioningState enumerates the values for provisioning state. 846type ProvisioningState string 847 848const ( 849 // ProvisioningStateCanceled ... 850 ProvisioningStateCanceled ProvisioningState = "Canceled" 851 // ProvisioningStateDeleting ... 852 ProvisioningStateDeleting ProvisioningState = "Deleting" 853 // ProvisioningStateFailed ... 854 ProvisioningStateFailed ProvisioningState = "Failed" 855 // ProvisioningStateInProgress ... 856 ProvisioningStateInProgress ProvisioningState = "InProgress" 857 // ProvisioningStateSucceeded ... 858 ProvisioningStateSucceeded ProvisioningState = "Succeeded" 859) 860 861// PossibleProvisioningStateValues returns an array of possible values for the ProvisioningState const type. 862func PossibleProvisioningStateValues() []ProvisioningState { 863 return []ProvisioningState{ProvisioningStateCanceled, ProvisioningStateDeleting, ProvisioningStateFailed, ProvisioningStateInProgress, ProvisioningStateSucceeded} 864} 865 866// PublicCertificateLocation enumerates the values for public certificate location. 867type PublicCertificateLocation string 868 869const ( 870 // PublicCertificateLocationCurrentUserMy ... 871 PublicCertificateLocationCurrentUserMy PublicCertificateLocation = "CurrentUserMy" 872 // PublicCertificateLocationLocalMachineMy ... 873 PublicCertificateLocationLocalMachineMy PublicCertificateLocation = "LocalMachineMy" 874 // PublicCertificateLocationUnknown ... 875 PublicCertificateLocationUnknown PublicCertificateLocation = "Unknown" 876) 877 878// PossiblePublicCertificateLocationValues returns an array of possible values for the PublicCertificateLocation const type. 879func PossiblePublicCertificateLocationValues() []PublicCertificateLocation { 880 return []PublicCertificateLocation{PublicCertificateLocationCurrentUserMy, PublicCertificateLocationLocalMachineMy, PublicCertificateLocationUnknown} 881} 882 883// PublishingProfileFormat enumerates the values for publishing profile format. 884type PublishingProfileFormat string 885 886const ( 887 // FileZilla3 ... 888 FileZilla3 PublishingProfileFormat = "FileZilla3" 889 // Ftp ... 890 Ftp PublishingProfileFormat = "Ftp" 891 // WebDeploy ... 892 WebDeploy PublishingProfileFormat = "WebDeploy" 893) 894 895// PossiblePublishingProfileFormatValues returns an array of possible values for the PublishingProfileFormat const type. 896func PossiblePublishingProfileFormatValues() []PublishingProfileFormat { 897 return []PublishingProfileFormat{FileZilla3, Ftp, WebDeploy} 898} 899 900// RenderingType enumerates the values for rendering type. 901type RenderingType string 902 903const ( 904 // NoGraph ... 905 NoGraph RenderingType = "NoGraph" 906 // Table ... 907 Table RenderingType = "Table" 908 // TimeSeries ... 909 TimeSeries RenderingType = "TimeSeries" 910 // TimeSeriesPerInstance ... 911 TimeSeriesPerInstance RenderingType = "TimeSeriesPerInstance" 912) 913 914// PossibleRenderingTypeValues returns an array of possible values for the RenderingType const type. 915func PossibleRenderingTypeValues() []RenderingType { 916 return []RenderingType{NoGraph, Table, TimeSeries, TimeSeriesPerInstance} 917} 918 919// ResourceScopeType enumerates the values for resource scope type. 920type ResourceScopeType string 921 922const ( 923 // ServerFarm ... 924 ServerFarm ResourceScopeType = "ServerFarm" 925 // Subscription ... 926 Subscription ResourceScopeType = "Subscription" 927 // WebSite ... 928 WebSite ResourceScopeType = "WebSite" 929) 930 931// PossibleResourceScopeTypeValues returns an array of possible values for the ResourceScopeType const type. 932func PossibleResourceScopeTypeValues() []ResourceScopeType { 933 return []ResourceScopeType{ServerFarm, Subscription, WebSite} 934} 935 936// RouteType enumerates the values for route type. 937type RouteType string 938 939const ( 940 // DEFAULT ... 941 DEFAULT RouteType = "DEFAULT" 942 // INHERITED ... 943 INHERITED RouteType = "INHERITED" 944 // STATIC ... 945 STATIC RouteType = "STATIC" 946) 947 948// PossibleRouteTypeValues returns an array of possible values for the RouteType const type. 949func PossibleRouteTypeValues() []RouteType { 950 return []RouteType{DEFAULT, INHERITED, STATIC} 951} 952 953// ScmType enumerates the values for scm type. 954type ScmType string 955 956const ( 957 // ScmTypeBitbucketGit ... 958 ScmTypeBitbucketGit ScmType = "BitbucketGit" 959 // ScmTypeBitbucketHg ... 960 ScmTypeBitbucketHg ScmType = "BitbucketHg" 961 // ScmTypeCodePlexGit ... 962 ScmTypeCodePlexGit ScmType = "CodePlexGit" 963 // ScmTypeCodePlexHg ... 964 ScmTypeCodePlexHg ScmType = "CodePlexHg" 965 // ScmTypeDropbox ... 966 ScmTypeDropbox ScmType = "Dropbox" 967 // ScmTypeExternalGit ... 968 ScmTypeExternalGit ScmType = "ExternalGit" 969 // ScmTypeExternalHg ... 970 ScmTypeExternalHg ScmType = "ExternalHg" 971 // ScmTypeGitHub ... 972 ScmTypeGitHub ScmType = "GitHub" 973 // ScmTypeLocalGit ... 974 ScmTypeLocalGit ScmType = "LocalGit" 975 // ScmTypeNone ... 976 ScmTypeNone ScmType = "None" 977 // ScmTypeOneDrive ... 978 ScmTypeOneDrive ScmType = "OneDrive" 979 // ScmTypeTfs ... 980 ScmTypeTfs ScmType = "Tfs" 981 // ScmTypeVSO ... 982 ScmTypeVSO ScmType = "VSO" 983) 984 985// PossibleScmTypeValues returns an array of possible values for the ScmType const type. 986func PossibleScmTypeValues() []ScmType { 987 return []ScmType{ScmTypeBitbucketGit, ScmTypeBitbucketHg, ScmTypeCodePlexGit, ScmTypeCodePlexHg, ScmTypeDropbox, ScmTypeExternalGit, ScmTypeExternalHg, ScmTypeGitHub, ScmTypeLocalGit, ScmTypeNone, ScmTypeOneDrive, ScmTypeTfs, ScmTypeVSO} 988} 989 990// SiteAvailabilityState enumerates the values for site availability state. 991type SiteAvailabilityState string 992 993const ( 994 // DisasterRecoveryMode ... 995 DisasterRecoveryMode SiteAvailabilityState = "DisasterRecoveryMode" 996 // Limited ... 997 Limited SiteAvailabilityState = "Limited" 998 // Normal ... 999 Normal SiteAvailabilityState = "Normal" 1000) 1001 1002// PossibleSiteAvailabilityStateValues returns an array of possible values for the SiteAvailabilityState const type. 1003func PossibleSiteAvailabilityStateValues() []SiteAvailabilityState { 1004 return []SiteAvailabilityState{DisasterRecoveryMode, Limited, Normal} 1005} 1006 1007// SiteExtensionType enumerates the values for site extension type. 1008type SiteExtensionType string 1009 1010const ( 1011 // Gallery ... 1012 Gallery SiteExtensionType = "Gallery" 1013 // WebRoot ... 1014 WebRoot SiteExtensionType = "WebRoot" 1015) 1016 1017// PossibleSiteExtensionTypeValues returns an array of possible values for the SiteExtensionType const type. 1018func PossibleSiteExtensionTypeValues() []SiteExtensionType { 1019 return []SiteExtensionType{Gallery, WebRoot} 1020} 1021 1022// SiteLoadBalancing enumerates the values for site load balancing. 1023type SiteLoadBalancing string 1024 1025const ( 1026 // LeastRequests ... 1027 LeastRequests SiteLoadBalancing = "LeastRequests" 1028 // LeastResponseTime ... 1029 LeastResponseTime SiteLoadBalancing = "LeastResponseTime" 1030 // RequestHash ... 1031 RequestHash SiteLoadBalancing = "RequestHash" 1032 // WeightedRoundRobin ... 1033 WeightedRoundRobin SiteLoadBalancing = "WeightedRoundRobin" 1034 // WeightedTotalTraffic ... 1035 WeightedTotalTraffic SiteLoadBalancing = "WeightedTotalTraffic" 1036) 1037 1038// PossibleSiteLoadBalancingValues returns an array of possible values for the SiteLoadBalancing const type. 1039func PossibleSiteLoadBalancingValues() []SiteLoadBalancing { 1040 return []SiteLoadBalancing{LeastRequests, LeastResponseTime, RequestHash, WeightedRoundRobin, WeightedTotalTraffic} 1041} 1042 1043// SkuName enumerates the values for sku name. 1044type SkuName string 1045 1046const ( 1047 // SkuNameBasic ... 1048 SkuNameBasic SkuName = "Basic" 1049 // SkuNameDynamic ... 1050 SkuNameDynamic SkuName = "Dynamic" 1051 // SkuNameFree ... 1052 SkuNameFree SkuName = "Free" 1053 // SkuNameIsolated ... 1054 SkuNameIsolated SkuName = "Isolated" 1055 // SkuNamePremium ... 1056 SkuNamePremium SkuName = "Premium" 1057 // SkuNamePremiumV2 ... 1058 SkuNamePremiumV2 SkuName = "PremiumV2" 1059 // SkuNameShared ... 1060 SkuNameShared SkuName = "Shared" 1061 // SkuNameStandard ... 1062 SkuNameStandard SkuName = "Standard" 1063) 1064 1065// PossibleSkuNameValues returns an array of possible values for the SkuName const type. 1066func PossibleSkuNameValues() []SkuName { 1067 return []SkuName{SkuNameBasic, SkuNameDynamic, SkuNameFree, SkuNameIsolated, SkuNamePremium, SkuNamePremiumV2, SkuNameShared, SkuNameStandard} 1068} 1069 1070// SolutionType enumerates the values for solution type. 1071type SolutionType string 1072 1073const ( 1074 // BestPractices ... 1075 BestPractices SolutionType = "BestPractices" 1076 // DeepInvestigation ... 1077 DeepInvestigation SolutionType = "DeepInvestigation" 1078 // QuickSolution ... 1079 QuickSolution SolutionType = "QuickSolution" 1080) 1081 1082// PossibleSolutionTypeValues returns an array of possible values for the SolutionType const type. 1083func PossibleSolutionTypeValues() []SolutionType { 1084 return []SolutionType{BestPractices, DeepInvestigation, QuickSolution} 1085} 1086 1087// SslState enumerates the values for ssl state. 1088type SslState string 1089 1090const ( 1091 // Disabled ... 1092 Disabled SslState = "Disabled" 1093 // IPBasedEnabled ... 1094 IPBasedEnabled SslState = "IpBasedEnabled" 1095 // SniEnabled ... 1096 SniEnabled SslState = "SniEnabled" 1097) 1098 1099// PossibleSslStateValues returns an array of possible values for the SslState const type. 1100func PossibleSslStateValues() []SslState { 1101 return []SslState{Disabled, IPBasedEnabled, SniEnabled} 1102} 1103 1104// StatusOptions enumerates the values for status options. 1105type StatusOptions string 1106 1107const ( 1108 // StatusOptionsCreating ... 1109 StatusOptionsCreating StatusOptions = "Creating" 1110 // StatusOptionsPending ... 1111 StatusOptionsPending StatusOptions = "Pending" 1112 // StatusOptionsReady ... 1113 StatusOptionsReady StatusOptions = "Ready" 1114) 1115 1116// PossibleStatusOptionsValues returns an array of possible values for the StatusOptions const type. 1117func PossibleStatusOptionsValues() []StatusOptions { 1118 return []StatusOptions{StatusOptionsCreating, StatusOptionsPending, StatusOptionsReady} 1119} 1120 1121// SupportedTLSVersions enumerates the values for supported tls versions. 1122type SupportedTLSVersions string 1123 1124const ( 1125 // OneFullStopOne ... 1126 OneFullStopOne SupportedTLSVersions = "1.1" 1127 // OneFullStopTwo ... 1128 OneFullStopTwo SupportedTLSVersions = "1.2" 1129 // OneFullStopZero ... 1130 OneFullStopZero SupportedTLSVersions = "1.0" 1131) 1132 1133// PossibleSupportedTLSVersionsValues returns an array of possible values for the SupportedTLSVersions const type. 1134func PossibleSupportedTLSVersionsValues() []SupportedTLSVersions { 1135 return []SupportedTLSVersions{OneFullStopOne, OneFullStopTwo, OneFullStopZero} 1136} 1137 1138// TriggeredWebJobStatus enumerates the values for triggered web job status. 1139type TriggeredWebJobStatus string 1140 1141const ( 1142 // TriggeredWebJobStatusError ... 1143 TriggeredWebJobStatusError TriggeredWebJobStatus = "Error" 1144 // TriggeredWebJobStatusFailed ... 1145 TriggeredWebJobStatusFailed TriggeredWebJobStatus = "Failed" 1146 // TriggeredWebJobStatusSuccess ... 1147 TriggeredWebJobStatusSuccess TriggeredWebJobStatus = "Success" 1148) 1149 1150// PossibleTriggeredWebJobStatusValues returns an array of possible values for the TriggeredWebJobStatus const type. 1151func PossibleTriggeredWebJobStatusValues() []TriggeredWebJobStatus { 1152 return []TriggeredWebJobStatus{TriggeredWebJobStatusError, TriggeredWebJobStatusFailed, TriggeredWebJobStatusSuccess} 1153} 1154 1155// UnauthenticatedClientAction enumerates the values for unauthenticated client action. 1156type UnauthenticatedClientAction string 1157 1158const ( 1159 // AllowAnonymous ... 1160 AllowAnonymous UnauthenticatedClientAction = "AllowAnonymous" 1161 // RedirectToLoginPage ... 1162 RedirectToLoginPage UnauthenticatedClientAction = "RedirectToLoginPage" 1163) 1164 1165// PossibleUnauthenticatedClientActionValues returns an array of possible values for the UnauthenticatedClientAction const type. 1166func PossibleUnauthenticatedClientActionValues() []UnauthenticatedClientAction { 1167 return []UnauthenticatedClientAction{AllowAnonymous, RedirectToLoginPage} 1168} 1169 1170// UsageState enumerates the values for usage state. 1171type UsageState string 1172 1173const ( 1174 // UsageStateExceeded ... 1175 UsageStateExceeded UsageState = "Exceeded" 1176 // UsageStateNormal ... 1177 UsageStateNormal UsageState = "Normal" 1178) 1179 1180// PossibleUsageStateValues returns an array of possible values for the UsageState const type. 1181func PossibleUsageStateValues() []UsageState { 1182 return []UsageState{UsageStateExceeded, UsageStateNormal} 1183} 1184 1185// ValidateResourceTypes enumerates the values for validate resource types. 1186type ValidateResourceTypes string 1187 1188const ( 1189 // ValidateResourceTypesServerFarm ... 1190 ValidateResourceTypesServerFarm ValidateResourceTypes = "ServerFarm" 1191 // ValidateResourceTypesSite ... 1192 ValidateResourceTypesSite ValidateResourceTypes = "Site" 1193) 1194 1195// PossibleValidateResourceTypesValues returns an array of possible values for the ValidateResourceTypes const type. 1196func PossibleValidateResourceTypesValues() []ValidateResourceTypes { 1197 return []ValidateResourceTypes{ValidateResourceTypesServerFarm, ValidateResourceTypesSite} 1198} 1199 1200// WorkerSizeOptions enumerates the values for worker size options. 1201type WorkerSizeOptions string 1202 1203const ( 1204 // D1 ... 1205 D1 WorkerSizeOptions = "D1" 1206 // D2 ... 1207 D2 WorkerSizeOptions = "D2" 1208 // D3 ... 1209 D3 WorkerSizeOptions = "D3" 1210 // Default ... 1211 Default WorkerSizeOptions = "Default" 1212 // Large ... 1213 Large WorkerSizeOptions = "Large" 1214 // Medium ... 1215 Medium WorkerSizeOptions = "Medium" 1216 // Small ... 1217 Small WorkerSizeOptions = "Small" 1218) 1219 1220// PossibleWorkerSizeOptionsValues returns an array of possible values for the WorkerSizeOptions const type. 1221func PossibleWorkerSizeOptionsValues() []WorkerSizeOptions { 1222 return []WorkerSizeOptions{D1, D2, D3, Default, Large, Medium, Small} 1223} 1224 1225// AbnormalTimePeriod class representing Abnormal Time Period identified in diagnosis 1226type AbnormalTimePeriod struct { 1227 // StartTime - Start time of the downtime 1228 StartTime *date.Time `json:"startTime,omitempty"` 1229 // EndTime - End time of the downtime 1230 EndTime *date.Time `json:"endTime,omitempty"` 1231 // Events - List of Possible Cause of downtime 1232 Events *[]DetectorAbnormalTimePeriod `json:"events,omitempty"` 1233 // Solutions - List of proposed solutions 1234 Solutions *[]Solution `json:"solutions,omitempty"` 1235} 1236 1237// Address address information for domain registration. 1238type Address struct { 1239 // Address1 - First line of an Address. 1240 Address1 *string `json:"address1,omitempty"` 1241 // Address2 - The second line of the Address. Optional. 1242 Address2 *string `json:"address2,omitempty"` 1243 // City - The city for the address. 1244 City *string `json:"city,omitempty"` 1245 // Country - The country for the address. 1246 Country *string `json:"country,omitempty"` 1247 // PostalCode - The postal code for the address. 1248 PostalCode *string `json:"postalCode,omitempty"` 1249 // State - The state or province for the address. 1250 State *string `json:"state,omitempty"` 1251} 1252 1253// AddressResponse describes main public IP address and any extra virtual IPs. 1254type AddressResponse struct { 1255 autorest.Response `json:"-"` 1256 // ServiceIPAddress - Main public virtual IP. 1257 ServiceIPAddress *string `json:"serviceIpAddress,omitempty"` 1258 // InternalIPAddress - Virtual Network internal IP address of the App Service Environment if it is in internal load-balancing mode. 1259 InternalIPAddress *string `json:"internalIpAddress,omitempty"` 1260 // OutboundIPAddresses - IP addresses appearing on outbound connections. 1261 OutboundIPAddresses *[]string `json:"outboundIpAddresses,omitempty"` 1262 // VipMappings - Additional virtual IPs. 1263 VipMappings *[]VirtualIPMapping `json:"vipMappings,omitempty"` 1264} 1265 1266// AnalysisData class Representing Detector Evidence used for analysis 1267type AnalysisData struct { 1268 // Source - Name of the Detector 1269 Source *string `json:"source,omitempty"` 1270 // DetectorDefinition - Detector Definition 1271 DetectorDefinition *DetectorDefinition `json:"detectorDefinition,omitempty"` 1272 // Metrics - Source Metrics 1273 Metrics *[]DiagnosticMetricSet `json:"metrics,omitempty"` 1274 // Data - Additional Source Data 1275 Data *[][]NameValuePair `json:"data,omitempty"` 1276 // DetectorMetaData - Detector Meta Data 1277 DetectorMetaData *ResponseMetaData `json:"detectorMetaData,omitempty"` 1278} 1279 1280// AnalysisDefinition definition of Analysis 1281type AnalysisDefinition struct { 1282 // AnalysisDefinitionProperties - AnalysisDefinition resource specific properties 1283 *AnalysisDefinitionProperties `json:"properties,omitempty"` 1284 // ID - READ-ONLY; Resource Id. 1285 ID *string `json:"id,omitempty"` 1286 // Name - READ-ONLY; Resource Name. 1287 Name *string `json:"name,omitempty"` 1288 // Kind - Kind of resource. 1289 Kind *string `json:"kind,omitempty"` 1290 // Type - READ-ONLY; Resource type. 1291 Type *string `json:"type,omitempty"` 1292} 1293 1294// MarshalJSON is the custom marshaler for AnalysisDefinition. 1295func (ad AnalysisDefinition) MarshalJSON() ([]byte, error) { 1296 objectMap := make(map[string]interface{}) 1297 if ad.AnalysisDefinitionProperties != nil { 1298 objectMap["properties"] = ad.AnalysisDefinitionProperties 1299 } 1300 if ad.Kind != nil { 1301 objectMap["kind"] = ad.Kind 1302 } 1303 return json.Marshal(objectMap) 1304} 1305 1306// UnmarshalJSON is the custom unmarshaler for AnalysisDefinition struct. 1307func (ad *AnalysisDefinition) UnmarshalJSON(body []byte) error { 1308 var m map[string]*json.RawMessage 1309 err := json.Unmarshal(body, &m) 1310 if err != nil { 1311 return err 1312 } 1313 for k, v := range m { 1314 switch k { 1315 case "properties": 1316 if v != nil { 1317 var analysisDefinitionProperties AnalysisDefinitionProperties 1318 err = json.Unmarshal(*v, &analysisDefinitionProperties) 1319 if err != nil { 1320 return err 1321 } 1322 ad.AnalysisDefinitionProperties = &analysisDefinitionProperties 1323 } 1324 case "id": 1325 if v != nil { 1326 var ID string 1327 err = json.Unmarshal(*v, &ID) 1328 if err != nil { 1329 return err 1330 } 1331 ad.ID = &ID 1332 } 1333 case "name": 1334 if v != nil { 1335 var name string 1336 err = json.Unmarshal(*v, &name) 1337 if err != nil { 1338 return err 1339 } 1340 ad.Name = &name 1341 } 1342 case "kind": 1343 if v != nil { 1344 var kind string 1345 err = json.Unmarshal(*v, &kind) 1346 if err != nil { 1347 return err 1348 } 1349 ad.Kind = &kind 1350 } 1351 case "type": 1352 if v != nil { 1353 var typeVar string 1354 err = json.Unmarshal(*v, &typeVar) 1355 if err != nil { 1356 return err 1357 } 1358 ad.Type = &typeVar 1359 } 1360 } 1361 } 1362 1363 return nil 1364} 1365 1366// AnalysisDefinitionProperties analysisDefinition resource specific properties 1367type AnalysisDefinitionProperties struct { 1368 // Description - READ-ONLY; Description of the Analysis 1369 Description *string `json:"description,omitempty"` 1370} 1371 1372// APIDefinitionInfo information about the formal API definition for the app. 1373type APIDefinitionInfo struct { 1374 // URL - The URL of the API definition. 1375 URL *string `json:"url,omitempty"` 1376} 1377 1378// AppCollection collection of App Service apps. 1379type AppCollection struct { 1380 autorest.Response `json:"-"` 1381 // Value - Collection of resources. 1382 Value *[]Site `json:"value,omitempty"` 1383 // NextLink - READ-ONLY; Link to next page of resources. 1384 NextLink *string `json:"nextLink,omitempty"` 1385} 1386 1387// AppCollectionIterator provides access to a complete listing of Site values. 1388type AppCollectionIterator struct { 1389 i int 1390 page AppCollectionPage 1391} 1392 1393// NextWithContext advances to the next value. If there was an error making 1394// the request the iterator does not advance and the error is returned. 1395func (iter *AppCollectionIterator) NextWithContext(ctx context.Context) (err error) { 1396 if tracing.IsEnabled() { 1397 ctx = tracing.StartSpan(ctx, fqdn+"/AppCollectionIterator.NextWithContext") 1398 defer func() { 1399 sc := -1 1400 if iter.Response().Response.Response != nil { 1401 sc = iter.Response().Response.Response.StatusCode 1402 } 1403 tracing.EndSpan(ctx, sc, err) 1404 }() 1405 } 1406 iter.i++ 1407 if iter.i < len(iter.page.Values()) { 1408 return nil 1409 } 1410 err = iter.page.NextWithContext(ctx) 1411 if err != nil { 1412 iter.i-- 1413 return err 1414 } 1415 iter.i = 0 1416 return nil 1417} 1418 1419// Next advances to the next value. If there was an error making 1420// the request the iterator does not advance and the error is returned. 1421// Deprecated: Use NextWithContext() instead. 1422func (iter *AppCollectionIterator) Next() error { 1423 return iter.NextWithContext(context.Background()) 1424} 1425 1426// NotDone returns true if the enumeration should be started or is not yet complete. 1427func (iter AppCollectionIterator) NotDone() bool { 1428 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 1429} 1430 1431// Response returns the raw server response from the last page request. 1432func (iter AppCollectionIterator) Response() AppCollection { 1433 return iter.page.Response() 1434} 1435 1436// Value returns the current value or a zero-initialized value if the 1437// iterator has advanced beyond the end of the collection. 1438func (iter AppCollectionIterator) Value() Site { 1439 if !iter.page.NotDone() { 1440 return Site{} 1441 } 1442 return iter.page.Values()[iter.i] 1443} 1444 1445// Creates a new instance of the AppCollectionIterator type. 1446func NewAppCollectionIterator(page AppCollectionPage) AppCollectionIterator { 1447 return AppCollectionIterator{page: page} 1448} 1449 1450// IsEmpty returns true if the ListResult contains no values. 1451func (ac AppCollection) IsEmpty() bool { 1452 return ac.Value == nil || len(*ac.Value) == 0 1453} 1454 1455// appCollectionPreparer prepares a request to retrieve the next set of results. 1456// It returns nil if no more results exist. 1457func (ac AppCollection) appCollectionPreparer(ctx context.Context) (*http.Request, error) { 1458 if ac.NextLink == nil || len(to.String(ac.NextLink)) < 1 { 1459 return nil, nil 1460 } 1461 return autorest.Prepare((&http.Request{}).WithContext(ctx), 1462 autorest.AsJSON(), 1463 autorest.AsGet(), 1464 autorest.WithBaseURL(to.String(ac.NextLink))) 1465} 1466 1467// AppCollectionPage contains a page of Site values. 1468type AppCollectionPage struct { 1469 fn func(context.Context, AppCollection) (AppCollection, error) 1470 ac AppCollection 1471} 1472 1473// NextWithContext advances to the next page of values. If there was an error making 1474// the request the page does not advance and the error is returned. 1475func (page *AppCollectionPage) NextWithContext(ctx context.Context) (err error) { 1476 if tracing.IsEnabled() { 1477 ctx = tracing.StartSpan(ctx, fqdn+"/AppCollectionPage.NextWithContext") 1478 defer func() { 1479 sc := -1 1480 if page.Response().Response.Response != nil { 1481 sc = page.Response().Response.Response.StatusCode 1482 } 1483 tracing.EndSpan(ctx, sc, err) 1484 }() 1485 } 1486 next, err := page.fn(ctx, page.ac) 1487 if err != nil { 1488 return err 1489 } 1490 page.ac = next 1491 return nil 1492} 1493 1494// Next advances to the next page of values. If there was an error making 1495// the request the page does not advance and the error is returned. 1496// Deprecated: Use NextWithContext() instead. 1497func (page *AppCollectionPage) Next() error { 1498 return page.NextWithContext(context.Background()) 1499} 1500 1501// NotDone returns true if the page enumeration should be started or is not yet complete. 1502func (page AppCollectionPage) NotDone() bool { 1503 return !page.ac.IsEmpty() 1504} 1505 1506// Response returns the raw server response from the last page request. 1507func (page AppCollectionPage) Response() AppCollection { 1508 return page.ac 1509} 1510 1511// Values returns the slice of values for the current page or nil if there are no values. 1512func (page AppCollectionPage) Values() []Site { 1513 if page.ac.IsEmpty() { 1514 return nil 1515 } 1516 return *page.ac.Value 1517} 1518 1519// Creates a new instance of the AppCollectionPage type. 1520func NewAppCollectionPage(getNextPage func(context.Context, AppCollection) (AppCollection, error)) AppCollectionPage { 1521 return AppCollectionPage{fn: getNextPage} 1522} 1523 1524// AppInstanceCollection collection of app instances. 1525type AppInstanceCollection struct { 1526 autorest.Response `json:"-"` 1527 // Value - Collection of resources. 1528 Value *[]SiteInstance `json:"value,omitempty"` 1529 // NextLink - READ-ONLY; Link to next page of resources. 1530 NextLink *string `json:"nextLink,omitempty"` 1531} 1532 1533// AppInstanceCollectionIterator provides access to a complete listing of SiteInstance values. 1534type AppInstanceCollectionIterator struct { 1535 i int 1536 page AppInstanceCollectionPage 1537} 1538 1539// NextWithContext advances to the next value. If there was an error making 1540// the request the iterator does not advance and the error is returned. 1541func (iter *AppInstanceCollectionIterator) NextWithContext(ctx context.Context) (err error) { 1542 if tracing.IsEnabled() { 1543 ctx = tracing.StartSpan(ctx, fqdn+"/AppInstanceCollectionIterator.NextWithContext") 1544 defer func() { 1545 sc := -1 1546 if iter.Response().Response.Response != nil { 1547 sc = iter.Response().Response.Response.StatusCode 1548 } 1549 tracing.EndSpan(ctx, sc, err) 1550 }() 1551 } 1552 iter.i++ 1553 if iter.i < len(iter.page.Values()) { 1554 return nil 1555 } 1556 err = iter.page.NextWithContext(ctx) 1557 if err != nil { 1558 iter.i-- 1559 return err 1560 } 1561 iter.i = 0 1562 return nil 1563} 1564 1565// Next advances to the next value. If there was an error making 1566// the request the iterator does not advance and the error is returned. 1567// Deprecated: Use NextWithContext() instead. 1568func (iter *AppInstanceCollectionIterator) Next() error { 1569 return iter.NextWithContext(context.Background()) 1570} 1571 1572// NotDone returns true if the enumeration should be started or is not yet complete. 1573func (iter AppInstanceCollectionIterator) NotDone() bool { 1574 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 1575} 1576 1577// Response returns the raw server response from the last page request. 1578func (iter AppInstanceCollectionIterator) Response() AppInstanceCollection { 1579 return iter.page.Response() 1580} 1581 1582// Value returns the current value or a zero-initialized value if the 1583// iterator has advanced beyond the end of the collection. 1584func (iter AppInstanceCollectionIterator) Value() SiteInstance { 1585 if !iter.page.NotDone() { 1586 return SiteInstance{} 1587 } 1588 return iter.page.Values()[iter.i] 1589} 1590 1591// Creates a new instance of the AppInstanceCollectionIterator type. 1592func NewAppInstanceCollectionIterator(page AppInstanceCollectionPage) AppInstanceCollectionIterator { 1593 return AppInstanceCollectionIterator{page: page} 1594} 1595 1596// IsEmpty returns true if the ListResult contains no values. 1597func (aic AppInstanceCollection) IsEmpty() bool { 1598 return aic.Value == nil || len(*aic.Value) == 0 1599} 1600 1601// appInstanceCollectionPreparer prepares a request to retrieve the next set of results. 1602// It returns nil if no more results exist. 1603func (aic AppInstanceCollection) appInstanceCollectionPreparer(ctx context.Context) (*http.Request, error) { 1604 if aic.NextLink == nil || len(to.String(aic.NextLink)) < 1 { 1605 return nil, nil 1606 } 1607 return autorest.Prepare((&http.Request{}).WithContext(ctx), 1608 autorest.AsJSON(), 1609 autorest.AsGet(), 1610 autorest.WithBaseURL(to.String(aic.NextLink))) 1611} 1612 1613// AppInstanceCollectionPage contains a page of SiteInstance values. 1614type AppInstanceCollectionPage struct { 1615 fn func(context.Context, AppInstanceCollection) (AppInstanceCollection, error) 1616 aic AppInstanceCollection 1617} 1618 1619// NextWithContext advances to the next page of values. If there was an error making 1620// the request the page does not advance and the error is returned. 1621func (page *AppInstanceCollectionPage) NextWithContext(ctx context.Context) (err error) { 1622 if tracing.IsEnabled() { 1623 ctx = tracing.StartSpan(ctx, fqdn+"/AppInstanceCollectionPage.NextWithContext") 1624 defer func() { 1625 sc := -1 1626 if page.Response().Response.Response != nil { 1627 sc = page.Response().Response.Response.StatusCode 1628 } 1629 tracing.EndSpan(ctx, sc, err) 1630 }() 1631 } 1632 next, err := page.fn(ctx, page.aic) 1633 if err != nil { 1634 return err 1635 } 1636 page.aic = next 1637 return nil 1638} 1639 1640// Next advances to the next page of values. If there was an error making 1641// the request the page does not advance and the error is returned. 1642// Deprecated: Use NextWithContext() instead. 1643func (page *AppInstanceCollectionPage) Next() error { 1644 return page.NextWithContext(context.Background()) 1645} 1646 1647// NotDone returns true if the page enumeration should be started or is not yet complete. 1648func (page AppInstanceCollectionPage) NotDone() bool { 1649 return !page.aic.IsEmpty() 1650} 1651 1652// Response returns the raw server response from the last page request. 1653func (page AppInstanceCollectionPage) Response() AppInstanceCollection { 1654 return page.aic 1655} 1656 1657// Values returns the slice of values for the current page or nil if there are no values. 1658func (page AppInstanceCollectionPage) Values() []SiteInstance { 1659 if page.aic.IsEmpty() { 1660 return nil 1661 } 1662 return *page.aic.Value 1663} 1664 1665// Creates a new instance of the AppInstanceCollectionPage type. 1666func NewAppInstanceCollectionPage(getNextPage func(context.Context, AppInstanceCollection) (AppInstanceCollection, error)) AppInstanceCollectionPage { 1667 return AppInstanceCollectionPage{fn: getNextPage} 1668} 1669 1670// ApplicationLogsConfig application logs configuration. 1671type ApplicationLogsConfig struct { 1672 // FileSystem - Application logs to file system configuration. 1673 FileSystem *FileSystemApplicationLogsConfig `json:"fileSystem,omitempty"` 1674 // AzureTableStorage - Application logs to azure table storage configuration. 1675 AzureTableStorage *AzureTableStorageApplicationLogsConfig `json:"azureTableStorage,omitempty"` 1676 // AzureBlobStorage - Application logs to blob storage configuration. 1677 AzureBlobStorage *AzureBlobStorageApplicationLogsConfig `json:"azureBlobStorage,omitempty"` 1678} 1679 1680// ApplicationStack application stack. 1681type ApplicationStack struct { 1682 // Name - Application stack name. 1683 Name *string `json:"name,omitempty"` 1684 // Display - Application stack display name. 1685 Display *string `json:"display,omitempty"` 1686 // Dependency - Application stack dependency. 1687 Dependency *string `json:"dependency,omitempty"` 1688 // MajorVersions - List of major versions available. 1689 MajorVersions *[]StackMajorVersion `json:"majorVersions,omitempty"` 1690 // Frameworks - List of frameworks associated with application stack. 1691 Frameworks *[]ApplicationStack `json:"frameworks,omitempty"` 1692} 1693 1694// ApplicationStackCollection collection of Application Stacks 1695type ApplicationStackCollection struct { 1696 autorest.Response `json:"-"` 1697 // Value - Collection of resources. 1698 Value *[]ApplicationStack `json:"value,omitempty"` 1699 // NextLink - READ-ONLY; Link to next page of resources. 1700 NextLink *string `json:"nextLink,omitempty"` 1701} 1702 1703// ApplicationStackCollectionIterator provides access to a complete listing of ApplicationStack values. 1704type ApplicationStackCollectionIterator struct { 1705 i int 1706 page ApplicationStackCollectionPage 1707} 1708 1709// NextWithContext advances to the next value. If there was an error making 1710// the request the iterator does not advance and the error is returned. 1711func (iter *ApplicationStackCollectionIterator) NextWithContext(ctx context.Context) (err error) { 1712 if tracing.IsEnabled() { 1713 ctx = tracing.StartSpan(ctx, fqdn+"/ApplicationStackCollectionIterator.NextWithContext") 1714 defer func() { 1715 sc := -1 1716 if iter.Response().Response.Response != nil { 1717 sc = iter.Response().Response.Response.StatusCode 1718 } 1719 tracing.EndSpan(ctx, sc, err) 1720 }() 1721 } 1722 iter.i++ 1723 if iter.i < len(iter.page.Values()) { 1724 return nil 1725 } 1726 err = iter.page.NextWithContext(ctx) 1727 if err != nil { 1728 iter.i-- 1729 return err 1730 } 1731 iter.i = 0 1732 return nil 1733} 1734 1735// Next advances to the next value. If there was an error making 1736// the request the iterator does not advance and the error is returned. 1737// Deprecated: Use NextWithContext() instead. 1738func (iter *ApplicationStackCollectionIterator) Next() error { 1739 return iter.NextWithContext(context.Background()) 1740} 1741 1742// NotDone returns true if the enumeration should be started or is not yet complete. 1743func (iter ApplicationStackCollectionIterator) NotDone() bool { 1744 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 1745} 1746 1747// Response returns the raw server response from the last page request. 1748func (iter ApplicationStackCollectionIterator) Response() ApplicationStackCollection { 1749 return iter.page.Response() 1750} 1751 1752// Value returns the current value or a zero-initialized value if the 1753// iterator has advanced beyond the end of the collection. 1754func (iter ApplicationStackCollectionIterator) Value() ApplicationStack { 1755 if !iter.page.NotDone() { 1756 return ApplicationStack{} 1757 } 1758 return iter.page.Values()[iter.i] 1759} 1760 1761// Creates a new instance of the ApplicationStackCollectionIterator type. 1762func NewApplicationStackCollectionIterator(page ApplicationStackCollectionPage) ApplicationStackCollectionIterator { 1763 return ApplicationStackCollectionIterator{page: page} 1764} 1765 1766// IsEmpty returns true if the ListResult contains no values. 1767func (asc ApplicationStackCollection) IsEmpty() bool { 1768 return asc.Value == nil || len(*asc.Value) == 0 1769} 1770 1771// applicationStackCollectionPreparer prepares a request to retrieve the next set of results. 1772// It returns nil if no more results exist. 1773func (asc ApplicationStackCollection) applicationStackCollectionPreparer(ctx context.Context) (*http.Request, error) { 1774 if asc.NextLink == nil || len(to.String(asc.NextLink)) < 1 { 1775 return nil, nil 1776 } 1777 return autorest.Prepare((&http.Request{}).WithContext(ctx), 1778 autorest.AsJSON(), 1779 autorest.AsGet(), 1780 autorest.WithBaseURL(to.String(asc.NextLink))) 1781} 1782 1783// ApplicationStackCollectionPage contains a page of ApplicationStack values. 1784type ApplicationStackCollectionPage struct { 1785 fn func(context.Context, ApplicationStackCollection) (ApplicationStackCollection, error) 1786 asc ApplicationStackCollection 1787} 1788 1789// NextWithContext advances to the next page of values. If there was an error making 1790// the request the page does not advance and the error is returned. 1791func (page *ApplicationStackCollectionPage) NextWithContext(ctx context.Context) (err error) { 1792 if tracing.IsEnabled() { 1793 ctx = tracing.StartSpan(ctx, fqdn+"/ApplicationStackCollectionPage.NextWithContext") 1794 defer func() { 1795 sc := -1 1796 if page.Response().Response.Response != nil { 1797 sc = page.Response().Response.Response.StatusCode 1798 } 1799 tracing.EndSpan(ctx, sc, err) 1800 }() 1801 } 1802 next, err := page.fn(ctx, page.asc) 1803 if err != nil { 1804 return err 1805 } 1806 page.asc = next 1807 return nil 1808} 1809 1810// Next advances to the next page of values. If there was an error making 1811// the request the page does not advance and the error is returned. 1812// Deprecated: Use NextWithContext() instead. 1813func (page *ApplicationStackCollectionPage) Next() error { 1814 return page.NextWithContext(context.Background()) 1815} 1816 1817// NotDone returns true if the page enumeration should be started or is not yet complete. 1818func (page ApplicationStackCollectionPage) NotDone() bool { 1819 return !page.asc.IsEmpty() 1820} 1821 1822// Response returns the raw server response from the last page request. 1823func (page ApplicationStackCollectionPage) Response() ApplicationStackCollection { 1824 return page.asc 1825} 1826 1827// Values returns the slice of values for the current page or nil if there are no values. 1828func (page ApplicationStackCollectionPage) Values() []ApplicationStack { 1829 if page.asc.IsEmpty() { 1830 return nil 1831 } 1832 return *page.asc.Value 1833} 1834 1835// Creates a new instance of the ApplicationStackCollectionPage type. 1836func NewApplicationStackCollectionPage(getNextPage func(context.Context, ApplicationStackCollection) (ApplicationStackCollection, error)) ApplicationStackCollectionPage { 1837 return ApplicationStackCollectionPage{fn: getNextPage} 1838} 1839 1840// AppsCreateFunctionFuture an abstraction for monitoring and retrieving the results of a long-running 1841// operation. 1842type AppsCreateFunctionFuture struct { 1843 azure.Future 1844} 1845 1846// Result returns the result of the asynchronous operation. 1847// If the operation has not completed it will return an error. 1848func (future *AppsCreateFunctionFuture) Result(client AppsClient) (fe FunctionEnvelope, err error) { 1849 var done bool 1850 done, err = future.DoneWithContext(context.Background(), client) 1851 if err != nil { 1852 err = autorest.NewErrorWithError(err, "web.AppsCreateFunctionFuture", "Result", future.Response(), "Polling failure") 1853 return 1854 } 1855 if !done { 1856 err = azure.NewAsyncOpIncompleteError("web.AppsCreateFunctionFuture") 1857 return 1858 } 1859 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 1860 if fe.Response.Response, err = future.GetResult(sender); err == nil && fe.Response.Response.StatusCode != http.StatusNoContent { 1861 fe, err = client.CreateFunctionResponder(fe.Response.Response) 1862 if err != nil { 1863 err = autorest.NewErrorWithError(err, "web.AppsCreateFunctionFuture", "Result", fe.Response.Response, "Failure responding to request") 1864 } 1865 } 1866 return 1867} 1868 1869// AppsCreateInstanceFunctionSlotFuture an abstraction for monitoring and retrieving the results of a 1870// long-running operation. 1871type AppsCreateInstanceFunctionSlotFuture struct { 1872 azure.Future 1873} 1874 1875// Result returns the result of the asynchronous operation. 1876// If the operation has not completed it will return an error. 1877func (future *AppsCreateInstanceFunctionSlotFuture) Result(client AppsClient) (fe FunctionEnvelope, err error) { 1878 var done bool 1879 done, err = future.DoneWithContext(context.Background(), client) 1880 if err != nil { 1881 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceFunctionSlotFuture", "Result", future.Response(), "Polling failure") 1882 return 1883 } 1884 if !done { 1885 err = azure.NewAsyncOpIncompleteError("web.AppsCreateInstanceFunctionSlotFuture") 1886 return 1887 } 1888 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 1889 if fe.Response.Response, err = future.GetResult(sender); err == nil && fe.Response.Response.StatusCode != http.StatusNoContent { 1890 fe, err = client.CreateInstanceFunctionSlotResponder(fe.Response.Response) 1891 if err != nil { 1892 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceFunctionSlotFuture", "Result", fe.Response.Response, "Failure responding to request") 1893 } 1894 } 1895 return 1896} 1897 1898// AppsCreateInstanceMSDeployOperationFuture an abstraction for monitoring and retrieving the results of a 1899// long-running operation. 1900type AppsCreateInstanceMSDeployOperationFuture struct { 1901 azure.Future 1902} 1903 1904// Result returns the result of the asynchronous operation. 1905// If the operation has not completed it will return an error. 1906func (future *AppsCreateInstanceMSDeployOperationFuture) Result(client AppsClient) (mds MSDeployStatus, err error) { 1907 var done bool 1908 done, err = future.DoneWithContext(context.Background(), client) 1909 if err != nil { 1910 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceMSDeployOperationFuture", "Result", future.Response(), "Polling failure") 1911 return 1912 } 1913 if !done { 1914 err = azure.NewAsyncOpIncompleteError("web.AppsCreateInstanceMSDeployOperationFuture") 1915 return 1916 } 1917 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 1918 if mds.Response.Response, err = future.GetResult(sender); err == nil && mds.Response.Response.StatusCode != http.StatusNoContent { 1919 mds, err = client.CreateInstanceMSDeployOperationResponder(mds.Response.Response) 1920 if err != nil { 1921 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceMSDeployOperationFuture", "Result", mds.Response.Response, "Failure responding to request") 1922 } 1923 } 1924 return 1925} 1926 1927// AppsCreateInstanceMSDeployOperationSlotFuture an abstraction for monitoring and retrieving the results 1928// of a long-running operation. 1929type AppsCreateInstanceMSDeployOperationSlotFuture struct { 1930 azure.Future 1931} 1932 1933// Result returns the result of the asynchronous operation. 1934// If the operation has not completed it will return an error. 1935func (future *AppsCreateInstanceMSDeployOperationSlotFuture) Result(client AppsClient) (mds MSDeployStatus, err error) { 1936 var done bool 1937 done, err = future.DoneWithContext(context.Background(), client) 1938 if err != nil { 1939 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceMSDeployOperationSlotFuture", "Result", future.Response(), "Polling failure") 1940 return 1941 } 1942 if !done { 1943 err = azure.NewAsyncOpIncompleteError("web.AppsCreateInstanceMSDeployOperationSlotFuture") 1944 return 1945 } 1946 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 1947 if mds.Response.Response, err = future.GetResult(sender); err == nil && mds.Response.Response.StatusCode != http.StatusNoContent { 1948 mds, err = client.CreateInstanceMSDeployOperationSlotResponder(mds.Response.Response) 1949 if err != nil { 1950 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceMSDeployOperationSlotFuture", "Result", mds.Response.Response, "Failure responding to request") 1951 } 1952 } 1953 return 1954} 1955 1956// AppsCreateMSDeployOperationFuture an abstraction for monitoring and retrieving the results of a 1957// long-running operation. 1958type AppsCreateMSDeployOperationFuture struct { 1959 azure.Future 1960} 1961 1962// Result returns the result of the asynchronous operation. 1963// If the operation has not completed it will return an error. 1964func (future *AppsCreateMSDeployOperationFuture) Result(client AppsClient) (mds MSDeployStatus, err error) { 1965 var done bool 1966 done, err = future.DoneWithContext(context.Background(), client) 1967 if err != nil { 1968 err = autorest.NewErrorWithError(err, "web.AppsCreateMSDeployOperationFuture", "Result", future.Response(), "Polling failure") 1969 return 1970 } 1971 if !done { 1972 err = azure.NewAsyncOpIncompleteError("web.AppsCreateMSDeployOperationFuture") 1973 return 1974 } 1975 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 1976 if mds.Response.Response, err = future.GetResult(sender); err == nil && mds.Response.Response.StatusCode != http.StatusNoContent { 1977 mds, err = client.CreateMSDeployOperationResponder(mds.Response.Response) 1978 if err != nil { 1979 err = autorest.NewErrorWithError(err, "web.AppsCreateMSDeployOperationFuture", "Result", mds.Response.Response, "Failure responding to request") 1980 } 1981 } 1982 return 1983} 1984 1985// AppsCreateMSDeployOperationSlotFuture an abstraction for monitoring and retrieving the results of a 1986// long-running operation. 1987type AppsCreateMSDeployOperationSlotFuture struct { 1988 azure.Future 1989} 1990 1991// Result returns the result of the asynchronous operation. 1992// If the operation has not completed it will return an error. 1993func (future *AppsCreateMSDeployOperationSlotFuture) Result(client AppsClient) (mds MSDeployStatus, err error) { 1994 var done bool 1995 done, err = future.DoneWithContext(context.Background(), client) 1996 if err != nil { 1997 err = autorest.NewErrorWithError(err, "web.AppsCreateMSDeployOperationSlotFuture", "Result", future.Response(), "Polling failure") 1998 return 1999 } 2000 if !done { 2001 err = azure.NewAsyncOpIncompleteError("web.AppsCreateMSDeployOperationSlotFuture") 2002 return 2003 } 2004 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2005 if mds.Response.Response, err = future.GetResult(sender); err == nil && mds.Response.Response.StatusCode != http.StatusNoContent { 2006 mds, err = client.CreateMSDeployOperationSlotResponder(mds.Response.Response) 2007 if err != nil { 2008 err = autorest.NewErrorWithError(err, "web.AppsCreateMSDeployOperationSlotFuture", "Result", mds.Response.Response, "Failure responding to request") 2009 } 2010 } 2011 return 2012} 2013 2014// AppsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a long-running 2015// operation. 2016type AppsCreateOrUpdateFuture struct { 2017 azure.Future 2018} 2019 2020// Result returns the result of the asynchronous operation. 2021// If the operation has not completed it will return an error. 2022func (future *AppsCreateOrUpdateFuture) Result(client AppsClient) (s Site, err error) { 2023 var done bool 2024 done, err = future.DoneWithContext(context.Background(), client) 2025 if err != nil { 2026 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure") 2027 return 2028 } 2029 if !done { 2030 err = azure.NewAsyncOpIncompleteError("web.AppsCreateOrUpdateFuture") 2031 return 2032 } 2033 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2034 if s.Response.Response, err = future.GetResult(sender); err == nil && s.Response.Response.StatusCode != http.StatusNoContent { 2035 s, err = client.CreateOrUpdateResponder(s.Response.Response) 2036 if err != nil { 2037 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateFuture", "Result", s.Response.Response, "Failure responding to request") 2038 } 2039 } 2040 return 2041} 2042 2043// AppsCreateOrUpdateSlotFuture an abstraction for monitoring and retrieving the results of a long-running 2044// operation. 2045type AppsCreateOrUpdateSlotFuture struct { 2046 azure.Future 2047} 2048 2049// Result returns the result of the asynchronous operation. 2050// If the operation has not completed it will return an error. 2051func (future *AppsCreateOrUpdateSlotFuture) Result(client AppsClient) (s Site, err error) { 2052 var done bool 2053 done, err = future.DoneWithContext(context.Background(), client) 2054 if err != nil { 2055 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSlotFuture", "Result", future.Response(), "Polling failure") 2056 return 2057 } 2058 if !done { 2059 err = azure.NewAsyncOpIncompleteError("web.AppsCreateOrUpdateSlotFuture") 2060 return 2061 } 2062 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2063 if s.Response.Response, err = future.GetResult(sender); err == nil && s.Response.Response.StatusCode != http.StatusNoContent { 2064 s, err = client.CreateOrUpdateSlotResponder(s.Response.Response) 2065 if err != nil { 2066 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSlotFuture", "Result", s.Response.Response, "Failure responding to request") 2067 } 2068 } 2069 return 2070} 2071 2072// AppsCreateOrUpdateSourceControlFuture an abstraction for monitoring and retrieving the results of a 2073// long-running operation. 2074type AppsCreateOrUpdateSourceControlFuture struct { 2075 azure.Future 2076} 2077 2078// Result returns the result of the asynchronous operation. 2079// If the operation has not completed it will return an error. 2080func (future *AppsCreateOrUpdateSourceControlFuture) Result(client AppsClient) (ssc SiteSourceControl, err error) { 2081 var done bool 2082 done, err = future.DoneWithContext(context.Background(), client) 2083 if err != nil { 2084 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSourceControlFuture", "Result", future.Response(), "Polling failure") 2085 return 2086 } 2087 if !done { 2088 err = azure.NewAsyncOpIncompleteError("web.AppsCreateOrUpdateSourceControlFuture") 2089 return 2090 } 2091 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2092 if ssc.Response.Response, err = future.GetResult(sender); err == nil && ssc.Response.Response.StatusCode != http.StatusNoContent { 2093 ssc, err = client.CreateOrUpdateSourceControlResponder(ssc.Response.Response) 2094 if err != nil { 2095 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSourceControlFuture", "Result", ssc.Response.Response, "Failure responding to request") 2096 } 2097 } 2098 return 2099} 2100 2101// AppsCreateOrUpdateSourceControlSlotFuture an abstraction for monitoring and retrieving the results of a 2102// long-running operation. 2103type AppsCreateOrUpdateSourceControlSlotFuture struct { 2104 azure.Future 2105} 2106 2107// Result returns the result of the asynchronous operation. 2108// If the operation has not completed it will return an error. 2109func (future *AppsCreateOrUpdateSourceControlSlotFuture) Result(client AppsClient) (ssc SiteSourceControl, err error) { 2110 var done bool 2111 done, err = future.DoneWithContext(context.Background(), client) 2112 if err != nil { 2113 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSourceControlSlotFuture", "Result", future.Response(), "Polling failure") 2114 return 2115 } 2116 if !done { 2117 err = azure.NewAsyncOpIncompleteError("web.AppsCreateOrUpdateSourceControlSlotFuture") 2118 return 2119 } 2120 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2121 if ssc.Response.Response, err = future.GetResult(sender); err == nil && ssc.Response.Response.StatusCode != http.StatusNoContent { 2122 ssc, err = client.CreateOrUpdateSourceControlSlotResponder(ssc.Response.Response) 2123 if err != nil { 2124 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSourceControlSlotFuture", "Result", ssc.Response.Response, "Failure responding to request") 2125 } 2126 } 2127 return 2128} 2129 2130// AppServiceCertificate key Vault container for a certificate that is purchased through Azure. 2131type AppServiceCertificate struct { 2132 // KeyVaultID - Key Vault resource Id. 2133 KeyVaultID *string `json:"keyVaultId,omitempty"` 2134 // KeyVaultSecretName - Key Vault secret name. 2135 KeyVaultSecretName *string `json:"keyVaultSecretName,omitempty"` 2136 // ProvisioningState - READ-ONLY; Status of the Key Vault secret. Possible values include: 'KeyVaultSecretStatusInitialized', 'KeyVaultSecretStatusWaitingOnCertificateOrder', 'KeyVaultSecretStatusSucceeded', 'KeyVaultSecretStatusCertificateOrderFailed', 'KeyVaultSecretStatusOperationNotPermittedOnKeyVault', 'KeyVaultSecretStatusAzureServiceUnauthorizedToAccessKeyVault', 'KeyVaultSecretStatusKeyVaultDoesNotExist', 'KeyVaultSecretStatusKeyVaultSecretDoesNotExist', 'KeyVaultSecretStatusUnknownError', 'KeyVaultSecretStatusExternalPrivateKey', 'KeyVaultSecretStatusUnknown' 2137 ProvisioningState KeyVaultSecretStatus `json:"provisioningState,omitempty"` 2138} 2139 2140// AppServiceCertificateCollection collection of certificate order certificates. 2141type AppServiceCertificateCollection struct { 2142 autorest.Response `json:"-"` 2143 // Value - Collection of resources. 2144 Value *[]AppServiceCertificateResource `json:"value,omitempty"` 2145 // NextLink - READ-ONLY; Link to next page of resources. 2146 NextLink *string `json:"nextLink,omitempty"` 2147} 2148 2149// AppServiceCertificateCollectionIterator provides access to a complete listing of 2150// AppServiceCertificateResource values. 2151type AppServiceCertificateCollectionIterator struct { 2152 i int 2153 page AppServiceCertificateCollectionPage 2154} 2155 2156// NextWithContext advances to the next value. If there was an error making 2157// the request the iterator does not advance and the error is returned. 2158func (iter *AppServiceCertificateCollectionIterator) NextWithContext(ctx context.Context) (err error) { 2159 if tracing.IsEnabled() { 2160 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceCertificateCollectionIterator.NextWithContext") 2161 defer func() { 2162 sc := -1 2163 if iter.Response().Response.Response != nil { 2164 sc = iter.Response().Response.Response.StatusCode 2165 } 2166 tracing.EndSpan(ctx, sc, err) 2167 }() 2168 } 2169 iter.i++ 2170 if iter.i < len(iter.page.Values()) { 2171 return nil 2172 } 2173 err = iter.page.NextWithContext(ctx) 2174 if err != nil { 2175 iter.i-- 2176 return err 2177 } 2178 iter.i = 0 2179 return nil 2180} 2181 2182// Next advances to the next value. If there was an error making 2183// the request the iterator does not advance and the error is returned. 2184// Deprecated: Use NextWithContext() instead. 2185func (iter *AppServiceCertificateCollectionIterator) Next() error { 2186 return iter.NextWithContext(context.Background()) 2187} 2188 2189// NotDone returns true if the enumeration should be started or is not yet complete. 2190func (iter AppServiceCertificateCollectionIterator) NotDone() bool { 2191 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 2192} 2193 2194// Response returns the raw server response from the last page request. 2195func (iter AppServiceCertificateCollectionIterator) Response() AppServiceCertificateCollection { 2196 return iter.page.Response() 2197} 2198 2199// Value returns the current value or a zero-initialized value if the 2200// iterator has advanced beyond the end of the collection. 2201func (iter AppServiceCertificateCollectionIterator) Value() AppServiceCertificateResource { 2202 if !iter.page.NotDone() { 2203 return AppServiceCertificateResource{} 2204 } 2205 return iter.page.Values()[iter.i] 2206} 2207 2208// Creates a new instance of the AppServiceCertificateCollectionIterator type. 2209func NewAppServiceCertificateCollectionIterator(page AppServiceCertificateCollectionPage) AppServiceCertificateCollectionIterator { 2210 return AppServiceCertificateCollectionIterator{page: page} 2211} 2212 2213// IsEmpty returns true if the ListResult contains no values. 2214func (ascc AppServiceCertificateCollection) IsEmpty() bool { 2215 return ascc.Value == nil || len(*ascc.Value) == 0 2216} 2217 2218// appServiceCertificateCollectionPreparer prepares a request to retrieve the next set of results. 2219// It returns nil if no more results exist. 2220func (ascc AppServiceCertificateCollection) appServiceCertificateCollectionPreparer(ctx context.Context) (*http.Request, error) { 2221 if ascc.NextLink == nil || len(to.String(ascc.NextLink)) < 1 { 2222 return nil, nil 2223 } 2224 return autorest.Prepare((&http.Request{}).WithContext(ctx), 2225 autorest.AsJSON(), 2226 autorest.AsGet(), 2227 autorest.WithBaseURL(to.String(ascc.NextLink))) 2228} 2229 2230// AppServiceCertificateCollectionPage contains a page of AppServiceCertificateResource values. 2231type AppServiceCertificateCollectionPage struct { 2232 fn func(context.Context, AppServiceCertificateCollection) (AppServiceCertificateCollection, error) 2233 ascc AppServiceCertificateCollection 2234} 2235 2236// NextWithContext advances to the next page of values. If there was an error making 2237// the request the page does not advance and the error is returned. 2238func (page *AppServiceCertificateCollectionPage) NextWithContext(ctx context.Context) (err error) { 2239 if tracing.IsEnabled() { 2240 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceCertificateCollectionPage.NextWithContext") 2241 defer func() { 2242 sc := -1 2243 if page.Response().Response.Response != nil { 2244 sc = page.Response().Response.Response.StatusCode 2245 } 2246 tracing.EndSpan(ctx, sc, err) 2247 }() 2248 } 2249 next, err := page.fn(ctx, page.ascc) 2250 if err != nil { 2251 return err 2252 } 2253 page.ascc = next 2254 return nil 2255} 2256 2257// Next advances to the next page of values. If there was an error making 2258// the request the page does not advance and the error is returned. 2259// Deprecated: Use NextWithContext() instead. 2260func (page *AppServiceCertificateCollectionPage) Next() error { 2261 return page.NextWithContext(context.Background()) 2262} 2263 2264// NotDone returns true if the page enumeration should be started or is not yet complete. 2265func (page AppServiceCertificateCollectionPage) NotDone() bool { 2266 return !page.ascc.IsEmpty() 2267} 2268 2269// Response returns the raw server response from the last page request. 2270func (page AppServiceCertificateCollectionPage) Response() AppServiceCertificateCollection { 2271 return page.ascc 2272} 2273 2274// Values returns the slice of values for the current page or nil if there are no values. 2275func (page AppServiceCertificateCollectionPage) Values() []AppServiceCertificateResource { 2276 if page.ascc.IsEmpty() { 2277 return nil 2278 } 2279 return *page.ascc.Value 2280} 2281 2282// Creates a new instance of the AppServiceCertificateCollectionPage type. 2283func NewAppServiceCertificateCollectionPage(getNextPage func(context.Context, AppServiceCertificateCollection) (AppServiceCertificateCollection, error)) AppServiceCertificateCollectionPage { 2284 return AppServiceCertificateCollectionPage{fn: getNextPage} 2285} 2286 2287// AppServiceCertificateOrder SSL certificate purchase order. 2288type AppServiceCertificateOrder struct { 2289 autorest.Response `json:"-"` 2290 // AppServiceCertificateOrderProperties - AppServiceCertificateOrder resource specific properties 2291 *AppServiceCertificateOrderProperties `json:"properties,omitempty"` 2292 // ID - READ-ONLY; Resource Id. 2293 ID *string `json:"id,omitempty"` 2294 // Name - READ-ONLY; Resource Name. 2295 Name *string `json:"name,omitempty"` 2296 // Kind - Kind of resource. 2297 Kind *string `json:"kind,omitempty"` 2298 // Location - Resource Location. 2299 Location *string `json:"location,omitempty"` 2300 // Type - READ-ONLY; Resource type. 2301 Type *string `json:"type,omitempty"` 2302 // Tags - Resource tags. 2303 Tags map[string]*string `json:"tags"` 2304} 2305 2306// MarshalJSON is the custom marshaler for AppServiceCertificateOrder. 2307func (asco AppServiceCertificateOrder) MarshalJSON() ([]byte, error) { 2308 objectMap := make(map[string]interface{}) 2309 if asco.AppServiceCertificateOrderProperties != nil { 2310 objectMap["properties"] = asco.AppServiceCertificateOrderProperties 2311 } 2312 if asco.Kind != nil { 2313 objectMap["kind"] = asco.Kind 2314 } 2315 if asco.Location != nil { 2316 objectMap["location"] = asco.Location 2317 } 2318 if asco.Tags != nil { 2319 objectMap["tags"] = asco.Tags 2320 } 2321 return json.Marshal(objectMap) 2322} 2323 2324// UnmarshalJSON is the custom unmarshaler for AppServiceCertificateOrder struct. 2325func (asco *AppServiceCertificateOrder) UnmarshalJSON(body []byte) error { 2326 var m map[string]*json.RawMessage 2327 err := json.Unmarshal(body, &m) 2328 if err != nil { 2329 return err 2330 } 2331 for k, v := range m { 2332 switch k { 2333 case "properties": 2334 if v != nil { 2335 var appServiceCertificateOrderProperties AppServiceCertificateOrderProperties 2336 err = json.Unmarshal(*v, &appServiceCertificateOrderProperties) 2337 if err != nil { 2338 return err 2339 } 2340 asco.AppServiceCertificateOrderProperties = &appServiceCertificateOrderProperties 2341 } 2342 case "id": 2343 if v != nil { 2344 var ID string 2345 err = json.Unmarshal(*v, &ID) 2346 if err != nil { 2347 return err 2348 } 2349 asco.ID = &ID 2350 } 2351 case "name": 2352 if v != nil { 2353 var name string 2354 err = json.Unmarshal(*v, &name) 2355 if err != nil { 2356 return err 2357 } 2358 asco.Name = &name 2359 } 2360 case "kind": 2361 if v != nil { 2362 var kind string 2363 err = json.Unmarshal(*v, &kind) 2364 if err != nil { 2365 return err 2366 } 2367 asco.Kind = &kind 2368 } 2369 case "location": 2370 if v != nil { 2371 var location string 2372 err = json.Unmarshal(*v, &location) 2373 if err != nil { 2374 return err 2375 } 2376 asco.Location = &location 2377 } 2378 case "type": 2379 if v != nil { 2380 var typeVar string 2381 err = json.Unmarshal(*v, &typeVar) 2382 if err != nil { 2383 return err 2384 } 2385 asco.Type = &typeVar 2386 } 2387 case "tags": 2388 if v != nil { 2389 var tags map[string]*string 2390 err = json.Unmarshal(*v, &tags) 2391 if err != nil { 2392 return err 2393 } 2394 asco.Tags = tags 2395 } 2396 } 2397 } 2398 2399 return nil 2400} 2401 2402// AppServiceCertificateOrderCollection collection of certificate orders. 2403type AppServiceCertificateOrderCollection struct { 2404 autorest.Response `json:"-"` 2405 // Value - Collection of resources. 2406 Value *[]AppServiceCertificateOrder `json:"value,omitempty"` 2407 // NextLink - READ-ONLY; Link to next page of resources. 2408 NextLink *string `json:"nextLink,omitempty"` 2409} 2410 2411// AppServiceCertificateOrderCollectionIterator provides access to a complete listing of 2412// AppServiceCertificateOrder values. 2413type AppServiceCertificateOrderCollectionIterator struct { 2414 i int 2415 page AppServiceCertificateOrderCollectionPage 2416} 2417 2418// NextWithContext advances to the next value. If there was an error making 2419// the request the iterator does not advance and the error is returned. 2420func (iter *AppServiceCertificateOrderCollectionIterator) NextWithContext(ctx context.Context) (err error) { 2421 if tracing.IsEnabled() { 2422 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceCertificateOrderCollectionIterator.NextWithContext") 2423 defer func() { 2424 sc := -1 2425 if iter.Response().Response.Response != nil { 2426 sc = iter.Response().Response.Response.StatusCode 2427 } 2428 tracing.EndSpan(ctx, sc, err) 2429 }() 2430 } 2431 iter.i++ 2432 if iter.i < len(iter.page.Values()) { 2433 return nil 2434 } 2435 err = iter.page.NextWithContext(ctx) 2436 if err != nil { 2437 iter.i-- 2438 return err 2439 } 2440 iter.i = 0 2441 return nil 2442} 2443 2444// Next advances to the next value. If there was an error making 2445// the request the iterator does not advance and the error is returned. 2446// Deprecated: Use NextWithContext() instead. 2447func (iter *AppServiceCertificateOrderCollectionIterator) Next() error { 2448 return iter.NextWithContext(context.Background()) 2449} 2450 2451// NotDone returns true if the enumeration should be started or is not yet complete. 2452func (iter AppServiceCertificateOrderCollectionIterator) NotDone() bool { 2453 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 2454} 2455 2456// Response returns the raw server response from the last page request. 2457func (iter AppServiceCertificateOrderCollectionIterator) Response() AppServiceCertificateOrderCollection { 2458 return iter.page.Response() 2459} 2460 2461// Value returns the current value or a zero-initialized value if the 2462// iterator has advanced beyond the end of the collection. 2463func (iter AppServiceCertificateOrderCollectionIterator) Value() AppServiceCertificateOrder { 2464 if !iter.page.NotDone() { 2465 return AppServiceCertificateOrder{} 2466 } 2467 return iter.page.Values()[iter.i] 2468} 2469 2470// Creates a new instance of the AppServiceCertificateOrderCollectionIterator type. 2471func NewAppServiceCertificateOrderCollectionIterator(page AppServiceCertificateOrderCollectionPage) AppServiceCertificateOrderCollectionIterator { 2472 return AppServiceCertificateOrderCollectionIterator{page: page} 2473} 2474 2475// IsEmpty returns true if the ListResult contains no values. 2476func (ascoc AppServiceCertificateOrderCollection) IsEmpty() bool { 2477 return ascoc.Value == nil || len(*ascoc.Value) == 0 2478} 2479 2480// appServiceCertificateOrderCollectionPreparer prepares a request to retrieve the next set of results. 2481// It returns nil if no more results exist. 2482func (ascoc AppServiceCertificateOrderCollection) appServiceCertificateOrderCollectionPreparer(ctx context.Context) (*http.Request, error) { 2483 if ascoc.NextLink == nil || len(to.String(ascoc.NextLink)) < 1 { 2484 return nil, nil 2485 } 2486 return autorest.Prepare((&http.Request{}).WithContext(ctx), 2487 autorest.AsJSON(), 2488 autorest.AsGet(), 2489 autorest.WithBaseURL(to.String(ascoc.NextLink))) 2490} 2491 2492// AppServiceCertificateOrderCollectionPage contains a page of AppServiceCertificateOrder values. 2493type AppServiceCertificateOrderCollectionPage struct { 2494 fn func(context.Context, AppServiceCertificateOrderCollection) (AppServiceCertificateOrderCollection, error) 2495 ascoc AppServiceCertificateOrderCollection 2496} 2497 2498// NextWithContext advances to the next page of values. If there was an error making 2499// the request the page does not advance and the error is returned. 2500func (page *AppServiceCertificateOrderCollectionPage) NextWithContext(ctx context.Context) (err error) { 2501 if tracing.IsEnabled() { 2502 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceCertificateOrderCollectionPage.NextWithContext") 2503 defer func() { 2504 sc := -1 2505 if page.Response().Response.Response != nil { 2506 sc = page.Response().Response.Response.StatusCode 2507 } 2508 tracing.EndSpan(ctx, sc, err) 2509 }() 2510 } 2511 next, err := page.fn(ctx, page.ascoc) 2512 if err != nil { 2513 return err 2514 } 2515 page.ascoc = next 2516 return nil 2517} 2518 2519// Next advances to the next page of values. If there was an error making 2520// the request the page does not advance and the error is returned. 2521// Deprecated: Use NextWithContext() instead. 2522func (page *AppServiceCertificateOrderCollectionPage) Next() error { 2523 return page.NextWithContext(context.Background()) 2524} 2525 2526// NotDone returns true if the page enumeration should be started or is not yet complete. 2527func (page AppServiceCertificateOrderCollectionPage) NotDone() bool { 2528 return !page.ascoc.IsEmpty() 2529} 2530 2531// Response returns the raw server response from the last page request. 2532func (page AppServiceCertificateOrderCollectionPage) Response() AppServiceCertificateOrderCollection { 2533 return page.ascoc 2534} 2535 2536// Values returns the slice of values for the current page or nil if there are no values. 2537func (page AppServiceCertificateOrderCollectionPage) Values() []AppServiceCertificateOrder { 2538 if page.ascoc.IsEmpty() { 2539 return nil 2540 } 2541 return *page.ascoc.Value 2542} 2543 2544// Creates a new instance of the AppServiceCertificateOrderCollectionPage type. 2545func NewAppServiceCertificateOrderCollectionPage(getNextPage func(context.Context, AppServiceCertificateOrderCollection) (AppServiceCertificateOrderCollection, error)) AppServiceCertificateOrderCollectionPage { 2546 return AppServiceCertificateOrderCollectionPage{fn: getNextPage} 2547} 2548 2549// AppServiceCertificateOrderPatchResource ARM resource for a certificate order that is purchased through 2550// Azure. 2551type AppServiceCertificateOrderPatchResource struct { 2552 // AppServiceCertificateOrderPatchResourceProperties - AppServiceCertificateOrderPatchResource resource specific properties 2553 *AppServiceCertificateOrderPatchResourceProperties `json:"properties,omitempty"` 2554 // ID - READ-ONLY; Resource Id. 2555 ID *string `json:"id,omitempty"` 2556 // Name - READ-ONLY; Resource Name. 2557 Name *string `json:"name,omitempty"` 2558 // Kind - Kind of resource. 2559 Kind *string `json:"kind,omitempty"` 2560 // Type - READ-ONLY; Resource type. 2561 Type *string `json:"type,omitempty"` 2562} 2563 2564// MarshalJSON is the custom marshaler for AppServiceCertificateOrderPatchResource. 2565func (ascopr AppServiceCertificateOrderPatchResource) MarshalJSON() ([]byte, error) { 2566 objectMap := make(map[string]interface{}) 2567 if ascopr.AppServiceCertificateOrderPatchResourceProperties != nil { 2568 objectMap["properties"] = ascopr.AppServiceCertificateOrderPatchResourceProperties 2569 } 2570 if ascopr.Kind != nil { 2571 objectMap["kind"] = ascopr.Kind 2572 } 2573 return json.Marshal(objectMap) 2574} 2575 2576// UnmarshalJSON is the custom unmarshaler for AppServiceCertificateOrderPatchResource struct. 2577func (ascopr *AppServiceCertificateOrderPatchResource) UnmarshalJSON(body []byte) error { 2578 var m map[string]*json.RawMessage 2579 err := json.Unmarshal(body, &m) 2580 if err != nil { 2581 return err 2582 } 2583 for k, v := range m { 2584 switch k { 2585 case "properties": 2586 if v != nil { 2587 var appServiceCertificateOrderPatchResourceProperties AppServiceCertificateOrderPatchResourceProperties 2588 err = json.Unmarshal(*v, &appServiceCertificateOrderPatchResourceProperties) 2589 if err != nil { 2590 return err 2591 } 2592 ascopr.AppServiceCertificateOrderPatchResourceProperties = &appServiceCertificateOrderPatchResourceProperties 2593 } 2594 case "id": 2595 if v != nil { 2596 var ID string 2597 err = json.Unmarshal(*v, &ID) 2598 if err != nil { 2599 return err 2600 } 2601 ascopr.ID = &ID 2602 } 2603 case "name": 2604 if v != nil { 2605 var name string 2606 err = json.Unmarshal(*v, &name) 2607 if err != nil { 2608 return err 2609 } 2610 ascopr.Name = &name 2611 } 2612 case "kind": 2613 if v != nil { 2614 var kind string 2615 err = json.Unmarshal(*v, &kind) 2616 if err != nil { 2617 return err 2618 } 2619 ascopr.Kind = &kind 2620 } 2621 case "type": 2622 if v != nil { 2623 var typeVar string 2624 err = json.Unmarshal(*v, &typeVar) 2625 if err != nil { 2626 return err 2627 } 2628 ascopr.Type = &typeVar 2629 } 2630 } 2631 } 2632 2633 return nil 2634} 2635 2636// AppServiceCertificateOrderPatchResourceProperties appServiceCertificateOrderPatchResource resource 2637// specific properties 2638type AppServiceCertificateOrderPatchResourceProperties struct { 2639 // Certificates - State of the Key Vault secret. 2640 Certificates map[string]*AppServiceCertificate `json:"certificates"` 2641 // DistinguishedName - Certificate distinguished name. 2642 DistinguishedName *string `json:"distinguishedName,omitempty"` 2643 // DomainVerificationToken - READ-ONLY; Domain verification token. 2644 DomainVerificationToken *string `json:"domainVerificationToken,omitempty"` 2645 // ValidityInYears - Duration in years (must be between 1 and 3). 2646 ValidityInYears *int32 `json:"validityInYears,omitempty"` 2647 // KeySize - Certificate key size. 2648 KeySize *int32 `json:"keySize,omitempty"` 2649 // ProductType - Certificate product type. Possible values include: 'StandardDomainValidatedSsl', 'StandardDomainValidatedWildCardSsl' 2650 ProductType CertificateProductType `json:"productType,omitempty"` 2651 // AutoRenew - <code>true</code> if the certificate should be automatically renewed when it expires; otherwise, <code>false</code>. 2652 AutoRenew *bool `json:"autoRenew,omitempty"` 2653 // ProvisioningState - READ-ONLY; Status of certificate order. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 2654 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 2655 // Status - READ-ONLY; Current order status. Possible values include: 'Pendingissuance', 'Issued', 'Revoked', 'Canceled', 'Denied', 'Pendingrevocation', 'PendingRekey', 'Unused', 'Expired', 'NotSubmitted' 2656 Status CertificateOrderStatus `json:"status,omitempty"` 2657 // SignedCertificate - READ-ONLY; Signed certificate. 2658 SignedCertificate *CertificateDetails `json:"signedCertificate,omitempty"` 2659 // Csr - Last CSR that was created for this order. 2660 Csr *string `json:"csr,omitempty"` 2661 // Intermediate - READ-ONLY; Intermediate certificate. 2662 Intermediate *CertificateDetails `json:"intermediate,omitempty"` 2663 // Root - READ-ONLY; Root certificate. 2664 Root *CertificateDetails `json:"root,omitempty"` 2665 // SerialNumber - READ-ONLY; Current serial number of the certificate. 2666 SerialNumber *string `json:"serialNumber,omitempty"` 2667 // LastCertificateIssuanceTime - READ-ONLY; Certificate last issuance time. 2668 LastCertificateIssuanceTime *date.Time `json:"lastCertificateIssuanceTime,omitempty"` 2669 // ExpirationTime - READ-ONLY; Certificate expiration time. 2670 ExpirationTime *date.Time `json:"expirationTime,omitempty"` 2671 // IsPrivateKeyExternal - READ-ONLY; <code>true</code> if private key is external; otherwise, <code>false</code>. 2672 IsPrivateKeyExternal *bool `json:"isPrivateKeyExternal,omitempty"` 2673 // AppServiceCertificateNotRenewableReasons - READ-ONLY; Reasons why App Service Certificate is not renewable at the current moment. 2674 AppServiceCertificateNotRenewableReasons *[]string `json:"appServiceCertificateNotRenewableReasons,omitempty"` 2675 // NextAutoRenewalTimeStamp - READ-ONLY; Time stamp when the certificate would be auto renewed next 2676 NextAutoRenewalTimeStamp *date.Time `json:"nextAutoRenewalTimeStamp,omitempty"` 2677} 2678 2679// MarshalJSON is the custom marshaler for AppServiceCertificateOrderPatchResourceProperties. 2680func (ascopr AppServiceCertificateOrderPatchResourceProperties) MarshalJSON() ([]byte, error) { 2681 objectMap := make(map[string]interface{}) 2682 if ascopr.Certificates != nil { 2683 objectMap["certificates"] = ascopr.Certificates 2684 } 2685 if ascopr.DistinguishedName != nil { 2686 objectMap["distinguishedName"] = ascopr.DistinguishedName 2687 } 2688 if ascopr.ValidityInYears != nil { 2689 objectMap["validityInYears"] = ascopr.ValidityInYears 2690 } 2691 if ascopr.KeySize != nil { 2692 objectMap["keySize"] = ascopr.KeySize 2693 } 2694 if ascopr.ProductType != "" { 2695 objectMap["productType"] = ascopr.ProductType 2696 } 2697 if ascopr.AutoRenew != nil { 2698 objectMap["autoRenew"] = ascopr.AutoRenew 2699 } 2700 if ascopr.Csr != nil { 2701 objectMap["csr"] = ascopr.Csr 2702 } 2703 return json.Marshal(objectMap) 2704} 2705 2706// AppServiceCertificateOrderProperties appServiceCertificateOrder resource specific properties 2707type AppServiceCertificateOrderProperties struct { 2708 // Certificates - State of the Key Vault secret. 2709 Certificates map[string]*AppServiceCertificate `json:"certificates"` 2710 // DistinguishedName - Certificate distinguished name. 2711 DistinguishedName *string `json:"distinguishedName,omitempty"` 2712 // DomainVerificationToken - READ-ONLY; Domain verification token. 2713 DomainVerificationToken *string `json:"domainVerificationToken,omitempty"` 2714 // ValidityInYears - Duration in years (must be between 1 and 3). 2715 ValidityInYears *int32 `json:"validityInYears,omitempty"` 2716 // KeySize - Certificate key size. 2717 KeySize *int32 `json:"keySize,omitempty"` 2718 // ProductType - Certificate product type. Possible values include: 'StandardDomainValidatedSsl', 'StandardDomainValidatedWildCardSsl' 2719 ProductType CertificateProductType `json:"productType,omitempty"` 2720 // AutoRenew - <code>true</code> if the certificate should be automatically renewed when it expires; otherwise, <code>false</code>. 2721 AutoRenew *bool `json:"autoRenew,omitempty"` 2722 // ProvisioningState - READ-ONLY; Status of certificate order. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 2723 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 2724 // Status - READ-ONLY; Current order status. Possible values include: 'Pendingissuance', 'Issued', 'Revoked', 'Canceled', 'Denied', 'Pendingrevocation', 'PendingRekey', 'Unused', 'Expired', 'NotSubmitted' 2725 Status CertificateOrderStatus `json:"status,omitempty"` 2726 // SignedCertificate - READ-ONLY; Signed certificate. 2727 SignedCertificate *CertificateDetails `json:"signedCertificate,omitempty"` 2728 // Csr - Last CSR that was created for this order. 2729 Csr *string `json:"csr,omitempty"` 2730 // Intermediate - READ-ONLY; Intermediate certificate. 2731 Intermediate *CertificateDetails `json:"intermediate,omitempty"` 2732 // Root - READ-ONLY; Root certificate. 2733 Root *CertificateDetails `json:"root,omitempty"` 2734 // SerialNumber - READ-ONLY; Current serial number of the certificate. 2735 SerialNumber *string `json:"serialNumber,omitempty"` 2736 // LastCertificateIssuanceTime - READ-ONLY; Certificate last issuance time. 2737 LastCertificateIssuanceTime *date.Time `json:"lastCertificateIssuanceTime,omitempty"` 2738 // ExpirationTime - READ-ONLY; Certificate expiration time. 2739 ExpirationTime *date.Time `json:"expirationTime,omitempty"` 2740 // IsPrivateKeyExternal - READ-ONLY; <code>true</code> if private key is external; otherwise, <code>false</code>. 2741 IsPrivateKeyExternal *bool `json:"isPrivateKeyExternal,omitempty"` 2742 // AppServiceCertificateNotRenewableReasons - READ-ONLY; Reasons why App Service Certificate is not renewable at the current moment. 2743 AppServiceCertificateNotRenewableReasons *[]string `json:"appServiceCertificateNotRenewableReasons,omitempty"` 2744 // NextAutoRenewalTimeStamp - READ-ONLY; Time stamp when the certificate would be auto renewed next 2745 NextAutoRenewalTimeStamp *date.Time `json:"nextAutoRenewalTimeStamp,omitempty"` 2746} 2747 2748// MarshalJSON is the custom marshaler for AppServiceCertificateOrderProperties. 2749func (asco AppServiceCertificateOrderProperties) MarshalJSON() ([]byte, error) { 2750 objectMap := make(map[string]interface{}) 2751 if asco.Certificates != nil { 2752 objectMap["certificates"] = asco.Certificates 2753 } 2754 if asco.DistinguishedName != nil { 2755 objectMap["distinguishedName"] = asco.DistinguishedName 2756 } 2757 if asco.ValidityInYears != nil { 2758 objectMap["validityInYears"] = asco.ValidityInYears 2759 } 2760 if asco.KeySize != nil { 2761 objectMap["keySize"] = asco.KeySize 2762 } 2763 if asco.ProductType != "" { 2764 objectMap["productType"] = asco.ProductType 2765 } 2766 if asco.AutoRenew != nil { 2767 objectMap["autoRenew"] = asco.AutoRenew 2768 } 2769 if asco.Csr != nil { 2770 objectMap["csr"] = asco.Csr 2771 } 2772 return json.Marshal(objectMap) 2773} 2774 2775// AppServiceCertificateOrdersCreateOrUpdateCertificateFuture an abstraction for monitoring and retrieving 2776// the results of a long-running operation. 2777type AppServiceCertificateOrdersCreateOrUpdateCertificateFuture struct { 2778 azure.Future 2779} 2780 2781// Result returns the result of the asynchronous operation. 2782// If the operation has not completed it will return an error. 2783func (future *AppServiceCertificateOrdersCreateOrUpdateCertificateFuture) Result(client AppServiceCertificateOrdersClient) (ascr AppServiceCertificateResource, err error) { 2784 var done bool 2785 done, err = future.DoneWithContext(context.Background(), client) 2786 if err != nil { 2787 err = autorest.NewErrorWithError(err, "web.AppServiceCertificateOrdersCreateOrUpdateCertificateFuture", "Result", future.Response(), "Polling failure") 2788 return 2789 } 2790 if !done { 2791 err = azure.NewAsyncOpIncompleteError("web.AppServiceCertificateOrdersCreateOrUpdateCertificateFuture") 2792 return 2793 } 2794 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2795 if ascr.Response.Response, err = future.GetResult(sender); err == nil && ascr.Response.Response.StatusCode != http.StatusNoContent { 2796 ascr, err = client.CreateOrUpdateCertificateResponder(ascr.Response.Response) 2797 if err != nil { 2798 err = autorest.NewErrorWithError(err, "web.AppServiceCertificateOrdersCreateOrUpdateCertificateFuture", "Result", ascr.Response.Response, "Failure responding to request") 2799 } 2800 } 2801 return 2802} 2803 2804// AppServiceCertificateOrdersCreateOrUpdateFuture an abstraction for monitoring and retrieving the results 2805// of a long-running operation. 2806type AppServiceCertificateOrdersCreateOrUpdateFuture struct { 2807 azure.Future 2808} 2809 2810// Result returns the result of the asynchronous operation. 2811// If the operation has not completed it will return an error. 2812func (future *AppServiceCertificateOrdersCreateOrUpdateFuture) Result(client AppServiceCertificateOrdersClient) (asco AppServiceCertificateOrder, err error) { 2813 var done bool 2814 done, err = future.DoneWithContext(context.Background(), client) 2815 if err != nil { 2816 err = autorest.NewErrorWithError(err, "web.AppServiceCertificateOrdersCreateOrUpdateFuture", "Result", future.Response(), "Polling failure") 2817 return 2818 } 2819 if !done { 2820 err = azure.NewAsyncOpIncompleteError("web.AppServiceCertificateOrdersCreateOrUpdateFuture") 2821 return 2822 } 2823 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2824 if asco.Response.Response, err = future.GetResult(sender); err == nil && asco.Response.Response.StatusCode != http.StatusNoContent { 2825 asco, err = client.CreateOrUpdateResponder(asco.Response.Response) 2826 if err != nil { 2827 err = autorest.NewErrorWithError(err, "web.AppServiceCertificateOrdersCreateOrUpdateFuture", "Result", asco.Response.Response, "Failure responding to request") 2828 } 2829 } 2830 return 2831} 2832 2833// AppServiceCertificatePatchResource key Vault container ARM resource for a certificate that is purchased 2834// through Azure. 2835type AppServiceCertificatePatchResource struct { 2836 // AppServiceCertificate - Core resource properties 2837 *AppServiceCertificate `json:"properties,omitempty"` 2838 // ID - READ-ONLY; Resource Id. 2839 ID *string `json:"id,omitempty"` 2840 // Name - READ-ONLY; Resource Name. 2841 Name *string `json:"name,omitempty"` 2842 // Kind - Kind of resource. 2843 Kind *string `json:"kind,omitempty"` 2844 // Type - READ-ONLY; Resource type. 2845 Type *string `json:"type,omitempty"` 2846} 2847 2848// MarshalJSON is the custom marshaler for AppServiceCertificatePatchResource. 2849func (ascpr AppServiceCertificatePatchResource) MarshalJSON() ([]byte, error) { 2850 objectMap := make(map[string]interface{}) 2851 if ascpr.AppServiceCertificate != nil { 2852 objectMap["properties"] = ascpr.AppServiceCertificate 2853 } 2854 if ascpr.Kind != nil { 2855 objectMap["kind"] = ascpr.Kind 2856 } 2857 return json.Marshal(objectMap) 2858} 2859 2860// UnmarshalJSON is the custom unmarshaler for AppServiceCertificatePatchResource struct. 2861func (ascpr *AppServiceCertificatePatchResource) UnmarshalJSON(body []byte) error { 2862 var m map[string]*json.RawMessage 2863 err := json.Unmarshal(body, &m) 2864 if err != nil { 2865 return err 2866 } 2867 for k, v := range m { 2868 switch k { 2869 case "properties": 2870 if v != nil { 2871 var appServiceCertificate AppServiceCertificate 2872 err = json.Unmarshal(*v, &appServiceCertificate) 2873 if err != nil { 2874 return err 2875 } 2876 ascpr.AppServiceCertificate = &appServiceCertificate 2877 } 2878 case "id": 2879 if v != nil { 2880 var ID string 2881 err = json.Unmarshal(*v, &ID) 2882 if err != nil { 2883 return err 2884 } 2885 ascpr.ID = &ID 2886 } 2887 case "name": 2888 if v != nil { 2889 var name string 2890 err = json.Unmarshal(*v, &name) 2891 if err != nil { 2892 return err 2893 } 2894 ascpr.Name = &name 2895 } 2896 case "kind": 2897 if v != nil { 2898 var kind string 2899 err = json.Unmarshal(*v, &kind) 2900 if err != nil { 2901 return err 2902 } 2903 ascpr.Kind = &kind 2904 } 2905 case "type": 2906 if v != nil { 2907 var typeVar string 2908 err = json.Unmarshal(*v, &typeVar) 2909 if err != nil { 2910 return err 2911 } 2912 ascpr.Type = &typeVar 2913 } 2914 } 2915 } 2916 2917 return nil 2918} 2919 2920// AppServiceCertificateResource key Vault container ARM resource for a certificate that is purchased 2921// through Azure. 2922type AppServiceCertificateResource struct { 2923 autorest.Response `json:"-"` 2924 // AppServiceCertificate - Core resource properties 2925 *AppServiceCertificate `json:"properties,omitempty"` 2926 // ID - READ-ONLY; Resource Id. 2927 ID *string `json:"id,omitempty"` 2928 // Name - READ-ONLY; Resource Name. 2929 Name *string `json:"name,omitempty"` 2930 // Kind - Kind of resource. 2931 Kind *string `json:"kind,omitempty"` 2932 // Location - Resource Location. 2933 Location *string `json:"location,omitempty"` 2934 // Type - READ-ONLY; Resource type. 2935 Type *string `json:"type,omitempty"` 2936 // Tags - Resource tags. 2937 Tags map[string]*string `json:"tags"` 2938} 2939 2940// MarshalJSON is the custom marshaler for AppServiceCertificateResource. 2941func (ascr AppServiceCertificateResource) MarshalJSON() ([]byte, error) { 2942 objectMap := make(map[string]interface{}) 2943 if ascr.AppServiceCertificate != nil { 2944 objectMap["properties"] = ascr.AppServiceCertificate 2945 } 2946 if ascr.Kind != nil { 2947 objectMap["kind"] = ascr.Kind 2948 } 2949 if ascr.Location != nil { 2950 objectMap["location"] = ascr.Location 2951 } 2952 if ascr.Tags != nil { 2953 objectMap["tags"] = ascr.Tags 2954 } 2955 return json.Marshal(objectMap) 2956} 2957 2958// UnmarshalJSON is the custom unmarshaler for AppServiceCertificateResource struct. 2959func (ascr *AppServiceCertificateResource) UnmarshalJSON(body []byte) error { 2960 var m map[string]*json.RawMessage 2961 err := json.Unmarshal(body, &m) 2962 if err != nil { 2963 return err 2964 } 2965 for k, v := range m { 2966 switch k { 2967 case "properties": 2968 if v != nil { 2969 var appServiceCertificate AppServiceCertificate 2970 err = json.Unmarshal(*v, &appServiceCertificate) 2971 if err != nil { 2972 return err 2973 } 2974 ascr.AppServiceCertificate = &appServiceCertificate 2975 } 2976 case "id": 2977 if v != nil { 2978 var ID string 2979 err = json.Unmarshal(*v, &ID) 2980 if err != nil { 2981 return err 2982 } 2983 ascr.ID = &ID 2984 } 2985 case "name": 2986 if v != nil { 2987 var name string 2988 err = json.Unmarshal(*v, &name) 2989 if err != nil { 2990 return err 2991 } 2992 ascr.Name = &name 2993 } 2994 case "kind": 2995 if v != nil { 2996 var kind string 2997 err = json.Unmarshal(*v, &kind) 2998 if err != nil { 2999 return err 3000 } 3001 ascr.Kind = &kind 3002 } 3003 case "location": 3004 if v != nil { 3005 var location string 3006 err = json.Unmarshal(*v, &location) 3007 if err != nil { 3008 return err 3009 } 3010 ascr.Location = &location 3011 } 3012 case "type": 3013 if v != nil { 3014 var typeVar string 3015 err = json.Unmarshal(*v, &typeVar) 3016 if err != nil { 3017 return err 3018 } 3019 ascr.Type = &typeVar 3020 } 3021 case "tags": 3022 if v != nil { 3023 var tags map[string]*string 3024 err = json.Unmarshal(*v, &tags) 3025 if err != nil { 3026 return err 3027 } 3028 ascr.Tags = tags 3029 } 3030 } 3031 } 3032 3033 return nil 3034} 3035 3036// AppServiceEnvironment description of an App Service Environment. 3037type AppServiceEnvironment struct { 3038 // Name - Name of the App Service Environment. 3039 Name *string `json:"name,omitempty"` 3040 // Location - Location of the App Service Environment, e.g. "West US". 3041 Location *string `json:"location,omitempty"` 3042 // ProvisioningState - READ-ONLY; Provisioning state of the App Service Environment. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 3043 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 3044 // Status - READ-ONLY; Current status of the App Service Environment. Possible values include: 'Preparing', 'Ready', 'Scaling', 'Deleting' 3045 Status HostingEnvironmentStatus `json:"status,omitempty"` 3046 // VnetName - Name of the Virtual Network for the App Service Environment. 3047 VnetName *string `json:"vnetName,omitempty"` 3048 // VnetResourceGroupName - Resource group of the Virtual Network. 3049 VnetResourceGroupName *string `json:"vnetResourceGroupName,omitempty"` 3050 // VnetSubnetName - Subnet of the Virtual Network. 3051 VnetSubnetName *string `json:"vnetSubnetName,omitempty"` 3052 // VirtualNetwork - Description of the Virtual Network. 3053 VirtualNetwork *VirtualNetworkProfile `json:"virtualNetwork,omitempty"` 3054 // InternalLoadBalancingMode - Specifies which endpoints to serve internally in the Virtual Network for the App Service Environment. Possible values include: 'InternalLoadBalancingModeNone', 'InternalLoadBalancingModeWeb', 'InternalLoadBalancingModePublishing' 3055 InternalLoadBalancingMode InternalLoadBalancingMode `json:"internalLoadBalancingMode,omitempty"` 3056 // MultiSize - Front-end VM size, e.g. "Medium", "Large". 3057 MultiSize *string `json:"multiSize,omitempty"` 3058 // MultiRoleCount - Number of front-end instances. 3059 MultiRoleCount *int32 `json:"multiRoleCount,omitempty"` 3060 // WorkerPools - Description of worker pools with worker size IDs, VM sizes, and number of workers in each pool. 3061 WorkerPools *[]WorkerPool `json:"workerPools,omitempty"` 3062 // IpsslAddressCount - Number of IP SSL addresses reserved for the App Service Environment. 3063 IpsslAddressCount *int32 `json:"ipsslAddressCount,omitempty"` 3064 // DatabaseEdition - READ-ONLY; Edition of the metadata database for the App Service Environment, e.g. "Standard". 3065 DatabaseEdition *string `json:"databaseEdition,omitempty"` 3066 // DatabaseServiceObjective - READ-ONLY; Service objective of the metadata database for the App Service Environment, e.g. "S0". 3067 DatabaseServiceObjective *string `json:"databaseServiceObjective,omitempty"` 3068 // UpgradeDomains - READ-ONLY; Number of upgrade domains of the App Service Environment. 3069 UpgradeDomains *int32 `json:"upgradeDomains,omitempty"` 3070 // SubscriptionID - READ-ONLY; Subscription of the App Service Environment. 3071 SubscriptionID *string `json:"subscriptionId,omitempty"` 3072 // DNSSuffix - DNS suffix of the App Service Environment. 3073 DNSSuffix *string `json:"dnsSuffix,omitempty"` 3074 // LastAction - READ-ONLY; Last deployment action on the App Service Environment. 3075 LastAction *string `json:"lastAction,omitempty"` 3076 // LastActionResult - READ-ONLY; Result of the last deployment action on the App Service Environment. 3077 LastActionResult *string `json:"lastActionResult,omitempty"` 3078 // AllowedMultiSizes - READ-ONLY; List of comma separated strings describing which VM sizes are allowed for front-ends. 3079 AllowedMultiSizes *string `json:"allowedMultiSizes,omitempty"` 3080 // AllowedWorkerSizes - READ-ONLY; List of comma separated strings describing which VM sizes are allowed for workers. 3081 AllowedWorkerSizes *string `json:"allowedWorkerSizes,omitempty"` 3082 // MaximumNumberOfMachines - READ-ONLY; Maximum number of VMs in the App Service Environment. 3083 MaximumNumberOfMachines *int32 `json:"maximumNumberOfMachines,omitempty"` 3084 // VipMappings - READ-ONLY; Description of IP SSL mapping for the App Service Environment. 3085 VipMappings *[]VirtualIPMapping `json:"vipMappings,omitempty"` 3086 // EnvironmentCapacities - READ-ONLY; Current total, used, and available worker capacities. 3087 EnvironmentCapacities *[]StampCapacity `json:"environmentCapacities,omitempty"` 3088 // NetworkAccessControlList - Access control list for controlling traffic to the App Service Environment. 3089 NetworkAccessControlList *[]NetworkAccessControlEntry `json:"networkAccessControlList,omitempty"` 3090 // EnvironmentIsHealthy - READ-ONLY; True/false indicating whether the App Service Environment is healthy. 3091 EnvironmentIsHealthy *bool `json:"environmentIsHealthy,omitempty"` 3092 // EnvironmentStatus - READ-ONLY; Detailed message about with results of the last check of the App Service Environment. 3093 EnvironmentStatus *string `json:"environmentStatus,omitempty"` 3094 // ResourceGroup - READ-ONLY; Resource group of the App Service Environment. 3095 ResourceGroup *string `json:"resourceGroup,omitempty"` 3096 // FrontEndScaleFactor - Scale factor for front-ends. 3097 FrontEndScaleFactor *int32 `json:"frontEndScaleFactor,omitempty"` 3098 // DefaultFrontEndScaleFactor - READ-ONLY; Default Scale Factor for FrontEnds. 3099 DefaultFrontEndScaleFactor *int32 `json:"defaultFrontEndScaleFactor,omitempty"` 3100 // APIManagementAccountID - API Management Account associated with the App Service Environment. 3101 APIManagementAccountID *string `json:"apiManagementAccountId,omitempty"` 3102 // Suspended - <code>true</code> if the App Service Environment is suspended; otherwise, <code>false</code>. The environment can be suspended, e.g. when the management endpoint is no longer available 3103 // (most likely because NSG blocked the incoming traffic). 3104 Suspended *bool `json:"suspended,omitempty"` 3105 // DynamicCacheEnabled - True/false indicating whether the App Service Environment is suspended. The environment can be suspended e.g. when the management endpoint is no longer available 3106 // (most likely because NSG blocked the incoming traffic). 3107 DynamicCacheEnabled *bool `json:"dynamicCacheEnabled,omitempty"` 3108 // ClusterSettings - Custom settings for changing the behavior of the App Service Environment. 3109 ClusterSettings *[]NameValuePair `json:"clusterSettings,omitempty"` 3110 // UserWhitelistedIPRanges - User added ip ranges to whitelist on ASE db 3111 UserWhitelistedIPRanges *[]string `json:"userWhitelistedIpRanges,omitempty"` 3112} 3113 3114// AppServiceEnvironmentCollection collection of App Service Environments. 3115type AppServiceEnvironmentCollection struct { 3116 autorest.Response `json:"-"` 3117 // Value - Collection of resources. 3118 Value *[]AppServiceEnvironmentResource `json:"value,omitempty"` 3119 // NextLink - READ-ONLY; Link to next page of resources. 3120 NextLink *string `json:"nextLink,omitempty"` 3121} 3122 3123// AppServiceEnvironmentCollectionIterator provides access to a complete listing of 3124// AppServiceEnvironmentResource values. 3125type AppServiceEnvironmentCollectionIterator struct { 3126 i int 3127 page AppServiceEnvironmentCollectionPage 3128} 3129 3130// NextWithContext advances to the next value. If there was an error making 3131// the request the iterator does not advance and the error is returned. 3132func (iter *AppServiceEnvironmentCollectionIterator) NextWithContext(ctx context.Context) (err error) { 3133 if tracing.IsEnabled() { 3134 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentCollectionIterator.NextWithContext") 3135 defer func() { 3136 sc := -1 3137 if iter.Response().Response.Response != nil { 3138 sc = iter.Response().Response.Response.StatusCode 3139 } 3140 tracing.EndSpan(ctx, sc, err) 3141 }() 3142 } 3143 iter.i++ 3144 if iter.i < len(iter.page.Values()) { 3145 return nil 3146 } 3147 err = iter.page.NextWithContext(ctx) 3148 if err != nil { 3149 iter.i-- 3150 return err 3151 } 3152 iter.i = 0 3153 return nil 3154} 3155 3156// Next advances to the next value. If there was an error making 3157// the request the iterator does not advance and the error is returned. 3158// Deprecated: Use NextWithContext() instead. 3159func (iter *AppServiceEnvironmentCollectionIterator) Next() error { 3160 return iter.NextWithContext(context.Background()) 3161} 3162 3163// NotDone returns true if the enumeration should be started or is not yet complete. 3164func (iter AppServiceEnvironmentCollectionIterator) NotDone() bool { 3165 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 3166} 3167 3168// Response returns the raw server response from the last page request. 3169func (iter AppServiceEnvironmentCollectionIterator) Response() AppServiceEnvironmentCollection { 3170 return iter.page.Response() 3171} 3172 3173// Value returns the current value or a zero-initialized value if the 3174// iterator has advanced beyond the end of the collection. 3175func (iter AppServiceEnvironmentCollectionIterator) Value() AppServiceEnvironmentResource { 3176 if !iter.page.NotDone() { 3177 return AppServiceEnvironmentResource{} 3178 } 3179 return iter.page.Values()[iter.i] 3180} 3181 3182// Creates a new instance of the AppServiceEnvironmentCollectionIterator type. 3183func NewAppServiceEnvironmentCollectionIterator(page AppServiceEnvironmentCollectionPage) AppServiceEnvironmentCollectionIterator { 3184 return AppServiceEnvironmentCollectionIterator{page: page} 3185} 3186 3187// IsEmpty returns true if the ListResult contains no values. 3188func (asec AppServiceEnvironmentCollection) IsEmpty() bool { 3189 return asec.Value == nil || len(*asec.Value) == 0 3190} 3191 3192// appServiceEnvironmentCollectionPreparer prepares a request to retrieve the next set of results. 3193// It returns nil if no more results exist. 3194func (asec AppServiceEnvironmentCollection) appServiceEnvironmentCollectionPreparer(ctx context.Context) (*http.Request, error) { 3195 if asec.NextLink == nil || len(to.String(asec.NextLink)) < 1 { 3196 return nil, nil 3197 } 3198 return autorest.Prepare((&http.Request{}).WithContext(ctx), 3199 autorest.AsJSON(), 3200 autorest.AsGet(), 3201 autorest.WithBaseURL(to.String(asec.NextLink))) 3202} 3203 3204// AppServiceEnvironmentCollectionPage contains a page of AppServiceEnvironmentResource values. 3205type AppServiceEnvironmentCollectionPage struct { 3206 fn func(context.Context, AppServiceEnvironmentCollection) (AppServiceEnvironmentCollection, error) 3207 asec AppServiceEnvironmentCollection 3208} 3209 3210// NextWithContext advances to the next page of values. If there was an error making 3211// the request the page does not advance and the error is returned. 3212func (page *AppServiceEnvironmentCollectionPage) NextWithContext(ctx context.Context) (err error) { 3213 if tracing.IsEnabled() { 3214 ctx = tracing.StartSpan(ctx, fqdn+"/AppServiceEnvironmentCollectionPage.NextWithContext") 3215 defer func() { 3216 sc := -1 3217 if page.Response().Response.Response != nil { 3218 sc = page.Response().Response.Response.StatusCode 3219 } 3220 tracing.EndSpan(ctx, sc, err) 3221 }() 3222 } 3223 next, err := page.fn(ctx, page.asec) 3224 if err != nil { 3225 return err 3226 } 3227 page.asec = next 3228 return nil 3229} 3230 3231// Next advances to the next page of values. If there was an error making 3232// the request the page does not advance and the error is returned. 3233// Deprecated: Use NextWithContext() instead. 3234func (page *AppServiceEnvironmentCollectionPage) Next() error { 3235 return page.NextWithContext(context.Background()) 3236} 3237 3238// NotDone returns true if the page enumeration should be started or is not yet complete. 3239func (page AppServiceEnvironmentCollectionPage) NotDone() bool { 3240 return !page.asec.IsEmpty() 3241} 3242 3243// Response returns the raw server response from the last page request. 3244func (page AppServiceEnvironmentCollectionPage) Response() AppServiceEnvironmentCollection { 3245 return page.asec 3246} 3247 3248// Values returns the slice of values for the current page or nil if there are no values. 3249func (page AppServiceEnvironmentCollectionPage) Values() []AppServiceEnvironmentResource { 3250 if page.asec.IsEmpty() { 3251 return nil 3252 } 3253 return *page.asec.Value 3254} 3255 3256// Creates a new instance of the AppServiceEnvironmentCollectionPage type. 3257func NewAppServiceEnvironmentCollectionPage(getNextPage func(context.Context, AppServiceEnvironmentCollection) (AppServiceEnvironmentCollection, error)) AppServiceEnvironmentCollectionPage { 3258 return AppServiceEnvironmentCollectionPage{fn: getNextPage} 3259} 3260 3261// AppServiceEnvironmentPatchResource ARM resource for a app service environment. 3262type AppServiceEnvironmentPatchResource struct { 3263 // AppServiceEnvironment - Core resource properties 3264 *AppServiceEnvironment `json:"properties,omitempty"` 3265 // ID - READ-ONLY; Resource Id. 3266 ID *string `json:"id,omitempty"` 3267 // Name - READ-ONLY; Resource Name. 3268 Name *string `json:"name,omitempty"` 3269 // Kind - Kind of resource. 3270 Kind *string `json:"kind,omitempty"` 3271 // Type - READ-ONLY; Resource type. 3272 Type *string `json:"type,omitempty"` 3273} 3274 3275// MarshalJSON is the custom marshaler for AppServiceEnvironmentPatchResource. 3276func (asepr AppServiceEnvironmentPatchResource) MarshalJSON() ([]byte, error) { 3277 objectMap := make(map[string]interface{}) 3278 if asepr.AppServiceEnvironment != nil { 3279 objectMap["properties"] = asepr.AppServiceEnvironment 3280 } 3281 if asepr.Kind != nil { 3282 objectMap["kind"] = asepr.Kind 3283 } 3284 return json.Marshal(objectMap) 3285} 3286 3287// UnmarshalJSON is the custom unmarshaler for AppServiceEnvironmentPatchResource struct. 3288func (asepr *AppServiceEnvironmentPatchResource) UnmarshalJSON(body []byte) error { 3289 var m map[string]*json.RawMessage 3290 err := json.Unmarshal(body, &m) 3291 if err != nil { 3292 return err 3293 } 3294 for k, v := range m { 3295 switch k { 3296 case "properties": 3297 if v != nil { 3298 var appServiceEnvironment AppServiceEnvironment 3299 err = json.Unmarshal(*v, &appServiceEnvironment) 3300 if err != nil { 3301 return err 3302 } 3303 asepr.AppServiceEnvironment = &appServiceEnvironment 3304 } 3305 case "id": 3306 if v != nil { 3307 var ID string 3308 err = json.Unmarshal(*v, &ID) 3309 if err != nil { 3310 return err 3311 } 3312 asepr.ID = &ID 3313 } 3314 case "name": 3315 if v != nil { 3316 var name string 3317 err = json.Unmarshal(*v, &name) 3318 if err != nil { 3319 return err 3320 } 3321 asepr.Name = &name 3322 } 3323 case "kind": 3324 if v != nil { 3325 var kind string 3326 err = json.Unmarshal(*v, &kind) 3327 if err != nil { 3328 return err 3329 } 3330 asepr.Kind = &kind 3331 } 3332 case "type": 3333 if v != nil { 3334 var typeVar string 3335 err = json.Unmarshal(*v, &typeVar) 3336 if err != nil { 3337 return err 3338 } 3339 asepr.Type = &typeVar 3340 } 3341 } 3342 } 3343 3344 return nil 3345} 3346 3347// AppServiceEnvironmentResource app Service Environment ARM resource. 3348type AppServiceEnvironmentResource struct { 3349 autorest.Response `json:"-"` 3350 // AppServiceEnvironment - Core resource properties 3351 *AppServiceEnvironment `json:"properties,omitempty"` 3352 // ID - READ-ONLY; Resource Id. 3353 ID *string `json:"id,omitempty"` 3354 // Name - READ-ONLY; Resource Name. 3355 Name *string `json:"name,omitempty"` 3356 // Kind - Kind of resource. 3357 Kind *string `json:"kind,omitempty"` 3358 // Location - Resource Location. 3359 Location *string `json:"location,omitempty"` 3360 // Type - READ-ONLY; Resource type. 3361 Type *string `json:"type,omitempty"` 3362 // Tags - Resource tags. 3363 Tags map[string]*string `json:"tags"` 3364} 3365 3366// MarshalJSON is the custom marshaler for AppServiceEnvironmentResource. 3367func (aser AppServiceEnvironmentResource) MarshalJSON() ([]byte, error) { 3368 objectMap := make(map[string]interface{}) 3369 if aser.AppServiceEnvironment != nil { 3370 objectMap["properties"] = aser.AppServiceEnvironment 3371 } 3372 if aser.Kind != nil { 3373 objectMap["kind"] = aser.Kind 3374 } 3375 if aser.Location != nil { 3376 objectMap["location"] = aser.Location 3377 } 3378 if aser.Tags != nil { 3379 objectMap["tags"] = aser.Tags 3380 } 3381 return json.Marshal(objectMap) 3382} 3383 3384// UnmarshalJSON is the custom unmarshaler for AppServiceEnvironmentResource struct. 3385func (aser *AppServiceEnvironmentResource) UnmarshalJSON(body []byte) error { 3386 var m map[string]*json.RawMessage 3387 err := json.Unmarshal(body, &m) 3388 if err != nil { 3389 return err 3390 } 3391 for k, v := range m { 3392 switch k { 3393 case "properties": 3394 if v != nil { 3395 var appServiceEnvironment AppServiceEnvironment 3396 err = json.Unmarshal(*v, &appServiceEnvironment) 3397 if err != nil { 3398 return err 3399 } 3400 aser.AppServiceEnvironment = &appServiceEnvironment 3401 } 3402 case "id": 3403 if v != nil { 3404 var ID string 3405 err = json.Unmarshal(*v, &ID) 3406 if err != nil { 3407 return err 3408 } 3409 aser.ID = &ID 3410 } 3411 case "name": 3412 if v != nil { 3413 var name string 3414 err = json.Unmarshal(*v, &name) 3415 if err != nil { 3416 return err 3417 } 3418 aser.Name = &name 3419 } 3420 case "kind": 3421 if v != nil { 3422 var kind string 3423 err = json.Unmarshal(*v, &kind) 3424 if err != nil { 3425 return err 3426 } 3427 aser.Kind = &kind 3428 } 3429 case "location": 3430 if v != nil { 3431 var location string 3432 err = json.Unmarshal(*v, &location) 3433 if err != nil { 3434 return err 3435 } 3436 aser.Location = &location 3437 } 3438 case "type": 3439 if v != nil { 3440 var typeVar string 3441 err = json.Unmarshal(*v, &typeVar) 3442 if err != nil { 3443 return err 3444 } 3445 aser.Type = &typeVar 3446 } 3447 case "tags": 3448 if v != nil { 3449 var tags map[string]*string 3450 err = json.Unmarshal(*v, &tags) 3451 if err != nil { 3452 return err 3453 } 3454 aser.Tags = tags 3455 } 3456 } 3457 } 3458 3459 return nil 3460} 3461 3462// AppServiceEnvironmentsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a 3463// long-running operation. 3464type AppServiceEnvironmentsCreateOrUpdateFuture struct { 3465 azure.Future 3466} 3467 3468// Result returns the result of the asynchronous operation. 3469// If the operation has not completed it will return an error. 3470func (future *AppServiceEnvironmentsCreateOrUpdateFuture) Result(client AppServiceEnvironmentsClient) (aser AppServiceEnvironmentResource, err error) { 3471 var done bool 3472 done, err = future.DoneWithContext(context.Background(), client) 3473 if err != nil { 3474 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure") 3475 return 3476 } 3477 if !done { 3478 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsCreateOrUpdateFuture") 3479 return 3480 } 3481 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3482 if aser.Response.Response, err = future.GetResult(sender); err == nil && aser.Response.Response.StatusCode != http.StatusNoContent { 3483 aser, err = client.CreateOrUpdateResponder(aser.Response.Response) 3484 if err != nil { 3485 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateFuture", "Result", aser.Response.Response, "Failure responding to request") 3486 } 3487 } 3488 return 3489} 3490 3491// AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture an abstraction for monitoring and retrieving the 3492// results of a long-running operation. 3493type AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture struct { 3494 azure.Future 3495} 3496 3497// Result returns the result of the asynchronous operation. 3498// If the operation has not completed it will return an error. 3499func (future *AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture) Result(client AppServiceEnvironmentsClient) (wpr WorkerPoolResource, err error) { 3500 var done bool 3501 done, err = future.DoneWithContext(context.Background(), client) 3502 if err != nil { 3503 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture", "Result", future.Response(), "Polling failure") 3504 return 3505 } 3506 if !done { 3507 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture") 3508 return 3509 } 3510 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3511 if wpr.Response.Response, err = future.GetResult(sender); err == nil && wpr.Response.Response.StatusCode != http.StatusNoContent { 3512 wpr, err = client.CreateOrUpdateMultiRolePoolResponder(wpr.Response.Response) 3513 if err != nil { 3514 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture", "Result", wpr.Response.Response, "Failure responding to request") 3515 } 3516 } 3517 return 3518} 3519 3520// AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture an abstraction for monitoring and retrieving the 3521// results of a long-running operation. 3522type AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture struct { 3523 azure.Future 3524} 3525 3526// Result returns the result of the asynchronous operation. 3527// If the operation has not completed it will return an error. 3528func (future *AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture) Result(client AppServiceEnvironmentsClient) (wpr WorkerPoolResource, err error) { 3529 var done bool 3530 done, err = future.DoneWithContext(context.Background(), client) 3531 if err != nil { 3532 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture", "Result", future.Response(), "Polling failure") 3533 return 3534 } 3535 if !done { 3536 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture") 3537 return 3538 } 3539 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3540 if wpr.Response.Response, err = future.GetResult(sender); err == nil && wpr.Response.Response.StatusCode != http.StatusNoContent { 3541 wpr, err = client.CreateOrUpdateWorkerPoolResponder(wpr.Response.Response) 3542 if err != nil { 3543 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture", "Result", wpr.Response.Response, "Failure responding to request") 3544 } 3545 } 3546 return 3547} 3548 3549// AppServiceEnvironmentsDeleteFuture an abstraction for monitoring and retrieving the results of a 3550// long-running operation. 3551type AppServiceEnvironmentsDeleteFuture struct { 3552 azure.Future 3553} 3554 3555// Result returns the result of the asynchronous operation. 3556// If the operation has not completed it will return an error. 3557func (future *AppServiceEnvironmentsDeleteFuture) Result(client AppServiceEnvironmentsClient) (ar autorest.Response, err error) { 3558 var done bool 3559 done, err = future.DoneWithContext(context.Background(), client) 3560 if err != nil { 3561 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsDeleteFuture", "Result", future.Response(), "Polling failure") 3562 return 3563 } 3564 if !done { 3565 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsDeleteFuture") 3566 return 3567 } 3568 ar.Response = future.Response() 3569 return 3570} 3571 3572// AppServiceEnvironmentsResumeAllFuture an abstraction for monitoring and retrieving the results of a 3573// long-running operation. 3574type AppServiceEnvironmentsResumeAllFuture struct { 3575 azure.Future 3576} 3577 3578// Result returns the result of the asynchronous operation. 3579// If the operation has not completed it will return an error. 3580func (future *AppServiceEnvironmentsResumeAllFuture) Result(client AppServiceEnvironmentsClient) (acp AppCollectionPage, err error) { 3581 var done bool 3582 done, err = future.DoneWithContext(context.Background(), client) 3583 if err != nil { 3584 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeAllFuture", "Result", future.Response(), "Polling failure") 3585 return 3586 } 3587 if !done { 3588 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsResumeAllFuture") 3589 return 3590 } 3591 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3592 if acp.ac.Response.Response, err = future.GetResult(sender); err == nil && acp.ac.Response.Response.StatusCode != http.StatusNoContent { 3593 acp, err = client.ResumeResponder(acp.ac.Response.Response) 3594 if err != nil { 3595 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeAllFuture", "Result", acp.ac.Response.Response, "Failure responding to request") 3596 } 3597 } 3598 return 3599} 3600 3601// AppServiceEnvironmentsResumeFuture an abstraction for monitoring and retrieving the results of a 3602// long-running operation. 3603type AppServiceEnvironmentsResumeFuture struct { 3604 azure.Future 3605} 3606 3607// Result returns the result of the asynchronous operation. 3608// If the operation has not completed it will return an error. 3609func (future *AppServiceEnvironmentsResumeFuture) Result(client AppServiceEnvironmentsClient) (acp AppCollectionPage, err error) { 3610 var done bool 3611 done, err = future.DoneWithContext(context.Background(), client) 3612 if err != nil { 3613 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeFuture", "Result", future.Response(), "Polling failure") 3614 return 3615 } 3616 if !done { 3617 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsResumeFuture") 3618 return 3619 } 3620 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3621 if acp.ac.Response.Response, err = future.GetResult(sender); err == nil && acp.ac.Response.Response.StatusCode != http.StatusNoContent { 3622 acp, err = client.ResumeResponder(acp.ac.Response.Response) 3623 if err != nil { 3624 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeFuture", "Result", acp.ac.Response.Response, "Failure responding to request") 3625 } 3626 } 3627 return 3628} 3629 3630// AppServiceEnvironmentsSuspendAllFuture an abstraction for monitoring and retrieving the results of a 3631// long-running operation. 3632type AppServiceEnvironmentsSuspendAllFuture struct { 3633 azure.Future 3634} 3635 3636// Result returns the result of the asynchronous operation. 3637// If the operation has not completed it will return an error. 3638func (future *AppServiceEnvironmentsSuspendAllFuture) Result(client AppServiceEnvironmentsClient) (acp AppCollectionPage, err error) { 3639 var done bool 3640 done, err = future.DoneWithContext(context.Background(), client) 3641 if err != nil { 3642 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendAllFuture", "Result", future.Response(), "Polling failure") 3643 return 3644 } 3645 if !done { 3646 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsSuspendAllFuture") 3647 return 3648 } 3649 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3650 if acp.ac.Response.Response, err = future.GetResult(sender); err == nil && acp.ac.Response.Response.StatusCode != http.StatusNoContent { 3651 acp, err = client.SuspendResponder(acp.ac.Response.Response) 3652 if err != nil { 3653 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendAllFuture", "Result", acp.ac.Response.Response, "Failure responding to request") 3654 } 3655 } 3656 return 3657} 3658 3659// AppServiceEnvironmentsSuspendFuture an abstraction for monitoring and retrieving the results of a 3660// long-running operation. 3661type AppServiceEnvironmentsSuspendFuture struct { 3662 azure.Future 3663} 3664 3665// Result returns the result of the asynchronous operation. 3666// If the operation has not completed it will return an error. 3667func (future *AppServiceEnvironmentsSuspendFuture) Result(client AppServiceEnvironmentsClient) (acp AppCollectionPage, err error) { 3668 var done bool 3669 done, err = future.DoneWithContext(context.Background(), client) 3670 if err != nil { 3671 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendFuture", "Result", future.Response(), "Polling failure") 3672 return 3673 } 3674 if !done { 3675 err = azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsSuspendFuture") 3676 return 3677 } 3678 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3679 if acp.ac.Response.Response, err = future.GetResult(sender); err == nil && acp.ac.Response.Response.StatusCode != http.StatusNoContent { 3680 acp, err = client.SuspendResponder(acp.ac.Response.Response) 3681 if err != nil { 3682 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendFuture", "Result", acp.ac.Response.Response, "Failure responding to request") 3683 } 3684 } 3685 return 3686} 3687 3688// AppServicePlan app Service plan. 3689type AppServicePlan struct { 3690 autorest.Response `json:"-"` 3691 // AppServicePlanProperties - AppServicePlan resource specific properties 3692 *AppServicePlanProperties `json:"properties,omitempty"` 3693 Sku *SkuDescription `json:"sku,omitempty"` 3694 // ID - READ-ONLY; Resource Id. 3695 ID *string `json:"id,omitempty"` 3696 // Name - READ-ONLY; Resource Name. 3697 Name *string `json:"name,omitempty"` 3698 // Kind - Kind of resource. 3699 Kind *string `json:"kind,omitempty"` 3700 // Location - Resource Location. 3701 Location *string `json:"location,omitempty"` 3702 // Type - READ-ONLY; Resource type. 3703 Type *string `json:"type,omitempty"` 3704 // Tags - Resource tags. 3705 Tags map[string]*string `json:"tags"` 3706} 3707 3708// MarshalJSON is the custom marshaler for AppServicePlan. 3709func (asp AppServicePlan) MarshalJSON() ([]byte, error) { 3710 objectMap := make(map[string]interface{}) 3711 if asp.AppServicePlanProperties != nil { 3712 objectMap["properties"] = asp.AppServicePlanProperties 3713 } 3714 if asp.Sku != nil { 3715 objectMap["sku"] = asp.Sku 3716 } 3717 if asp.Kind != nil { 3718 objectMap["kind"] = asp.Kind 3719 } 3720 if asp.Location != nil { 3721 objectMap["location"] = asp.Location 3722 } 3723 if asp.Tags != nil { 3724 objectMap["tags"] = asp.Tags 3725 } 3726 return json.Marshal(objectMap) 3727} 3728 3729// UnmarshalJSON is the custom unmarshaler for AppServicePlan struct. 3730func (asp *AppServicePlan) UnmarshalJSON(body []byte) error { 3731 var m map[string]*json.RawMessage 3732 err := json.Unmarshal(body, &m) 3733 if err != nil { 3734 return err 3735 } 3736 for k, v := range m { 3737 switch k { 3738 case "properties": 3739 if v != nil { 3740 var appServicePlanProperties AppServicePlanProperties 3741 err = json.Unmarshal(*v, &appServicePlanProperties) 3742 if err != nil { 3743 return err 3744 } 3745 asp.AppServicePlanProperties = &appServicePlanProperties 3746 } 3747 case "sku": 3748 if v != nil { 3749 var sku SkuDescription 3750 err = json.Unmarshal(*v, &sku) 3751 if err != nil { 3752 return err 3753 } 3754 asp.Sku = &sku 3755 } 3756 case "id": 3757 if v != nil { 3758 var ID string 3759 err = json.Unmarshal(*v, &ID) 3760 if err != nil { 3761 return err 3762 } 3763 asp.ID = &ID 3764 } 3765 case "name": 3766 if v != nil { 3767 var name string 3768 err = json.Unmarshal(*v, &name) 3769 if err != nil { 3770 return err 3771 } 3772 asp.Name = &name 3773 } 3774 case "kind": 3775 if v != nil { 3776 var kind string 3777 err = json.Unmarshal(*v, &kind) 3778 if err != nil { 3779 return err 3780 } 3781 asp.Kind = &kind 3782 } 3783 case "location": 3784 if v != nil { 3785 var location string 3786 err = json.Unmarshal(*v, &location) 3787 if err != nil { 3788 return err 3789 } 3790 asp.Location = &location 3791 } 3792 case "type": 3793 if v != nil { 3794 var typeVar string 3795 err = json.Unmarshal(*v, &typeVar) 3796 if err != nil { 3797 return err 3798 } 3799 asp.Type = &typeVar 3800 } 3801 case "tags": 3802 if v != nil { 3803 var tags map[string]*string 3804 err = json.Unmarshal(*v, &tags) 3805 if err != nil { 3806 return err 3807 } 3808 asp.Tags = tags 3809 } 3810 } 3811 } 3812 3813 return nil 3814} 3815 3816// AppServicePlanCollection collection of App Service plans. 3817type AppServicePlanCollection struct { 3818 autorest.Response `json:"-"` 3819 // Value - Collection of resources. 3820 Value *[]AppServicePlan `json:"value,omitempty"` 3821 // NextLink - Link to next page of resources. 3822 NextLink *string `json:"nextLink,omitempty"` 3823} 3824 3825// AppServicePlanCollectionIterator provides access to a complete listing of AppServicePlan values. 3826type AppServicePlanCollectionIterator struct { 3827 i int 3828 page AppServicePlanCollectionPage 3829} 3830 3831// NextWithContext advances to the next value. If there was an error making 3832// the request the iterator does not advance and the error is returned. 3833func (iter *AppServicePlanCollectionIterator) NextWithContext(ctx context.Context) (err error) { 3834 if tracing.IsEnabled() { 3835 ctx = tracing.StartSpan(ctx, fqdn+"/AppServicePlanCollectionIterator.NextWithContext") 3836 defer func() { 3837 sc := -1 3838 if iter.Response().Response.Response != nil { 3839 sc = iter.Response().Response.Response.StatusCode 3840 } 3841 tracing.EndSpan(ctx, sc, err) 3842 }() 3843 } 3844 iter.i++ 3845 if iter.i < len(iter.page.Values()) { 3846 return nil 3847 } 3848 err = iter.page.NextWithContext(ctx) 3849 if err != nil { 3850 iter.i-- 3851 return err 3852 } 3853 iter.i = 0 3854 return nil 3855} 3856 3857// Next advances to the next value. If there was an error making 3858// the request the iterator does not advance and the error is returned. 3859// Deprecated: Use NextWithContext() instead. 3860func (iter *AppServicePlanCollectionIterator) Next() error { 3861 return iter.NextWithContext(context.Background()) 3862} 3863 3864// NotDone returns true if the enumeration should be started or is not yet complete. 3865func (iter AppServicePlanCollectionIterator) NotDone() bool { 3866 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 3867} 3868 3869// Response returns the raw server response from the last page request. 3870func (iter AppServicePlanCollectionIterator) Response() AppServicePlanCollection { 3871 return iter.page.Response() 3872} 3873 3874// Value returns the current value or a zero-initialized value if the 3875// iterator has advanced beyond the end of the collection. 3876func (iter AppServicePlanCollectionIterator) Value() AppServicePlan { 3877 if !iter.page.NotDone() { 3878 return AppServicePlan{} 3879 } 3880 return iter.page.Values()[iter.i] 3881} 3882 3883// Creates a new instance of the AppServicePlanCollectionIterator type. 3884func NewAppServicePlanCollectionIterator(page AppServicePlanCollectionPage) AppServicePlanCollectionIterator { 3885 return AppServicePlanCollectionIterator{page: page} 3886} 3887 3888// IsEmpty returns true if the ListResult contains no values. 3889func (aspc AppServicePlanCollection) IsEmpty() bool { 3890 return aspc.Value == nil || len(*aspc.Value) == 0 3891} 3892 3893// appServicePlanCollectionPreparer prepares a request to retrieve the next set of results. 3894// It returns nil if no more results exist. 3895func (aspc AppServicePlanCollection) appServicePlanCollectionPreparer(ctx context.Context) (*http.Request, error) { 3896 if aspc.NextLink == nil || len(to.String(aspc.NextLink)) < 1 { 3897 return nil, nil 3898 } 3899 return autorest.Prepare((&http.Request{}).WithContext(ctx), 3900 autorest.AsJSON(), 3901 autorest.AsGet(), 3902 autorest.WithBaseURL(to.String(aspc.NextLink))) 3903} 3904 3905// AppServicePlanCollectionPage contains a page of AppServicePlan values. 3906type AppServicePlanCollectionPage struct { 3907 fn func(context.Context, AppServicePlanCollection) (AppServicePlanCollection, error) 3908 aspc AppServicePlanCollection 3909} 3910 3911// NextWithContext advances to the next page of values. If there was an error making 3912// the request the page does not advance and the error is returned. 3913func (page *AppServicePlanCollectionPage) NextWithContext(ctx context.Context) (err error) { 3914 if tracing.IsEnabled() { 3915 ctx = tracing.StartSpan(ctx, fqdn+"/AppServicePlanCollectionPage.NextWithContext") 3916 defer func() { 3917 sc := -1 3918 if page.Response().Response.Response != nil { 3919 sc = page.Response().Response.Response.StatusCode 3920 } 3921 tracing.EndSpan(ctx, sc, err) 3922 }() 3923 } 3924 next, err := page.fn(ctx, page.aspc) 3925 if err != nil { 3926 return err 3927 } 3928 page.aspc = next 3929 return nil 3930} 3931 3932// Next advances to the next page of values. If there was an error making 3933// the request the page does not advance and the error is returned. 3934// Deprecated: Use NextWithContext() instead. 3935func (page *AppServicePlanCollectionPage) Next() error { 3936 return page.NextWithContext(context.Background()) 3937} 3938 3939// NotDone returns true if the page enumeration should be started or is not yet complete. 3940func (page AppServicePlanCollectionPage) NotDone() bool { 3941 return !page.aspc.IsEmpty() 3942} 3943 3944// Response returns the raw server response from the last page request. 3945func (page AppServicePlanCollectionPage) Response() AppServicePlanCollection { 3946 return page.aspc 3947} 3948 3949// Values returns the slice of values for the current page or nil if there are no values. 3950func (page AppServicePlanCollectionPage) Values() []AppServicePlan { 3951 if page.aspc.IsEmpty() { 3952 return nil 3953 } 3954 return *page.aspc.Value 3955} 3956 3957// Creates a new instance of the AppServicePlanCollectionPage type. 3958func NewAppServicePlanCollectionPage(getNextPage func(context.Context, AppServicePlanCollection) (AppServicePlanCollection, error)) AppServicePlanCollectionPage { 3959 return AppServicePlanCollectionPage{fn: getNextPage} 3960} 3961 3962// AppServicePlanPatchResource ARM resource for a app service plan. 3963type AppServicePlanPatchResource struct { 3964 // AppServicePlanPatchResourceProperties - AppServicePlanPatchResource resource specific properties 3965 *AppServicePlanPatchResourceProperties `json:"properties,omitempty"` 3966 // ID - READ-ONLY; Resource Id. 3967 ID *string `json:"id,omitempty"` 3968 // Name - READ-ONLY; Resource Name. 3969 Name *string `json:"name,omitempty"` 3970 // Kind - Kind of resource. 3971 Kind *string `json:"kind,omitempty"` 3972 // Type - READ-ONLY; Resource type. 3973 Type *string `json:"type,omitempty"` 3974} 3975 3976// MarshalJSON is the custom marshaler for AppServicePlanPatchResource. 3977func (asppr AppServicePlanPatchResource) MarshalJSON() ([]byte, error) { 3978 objectMap := make(map[string]interface{}) 3979 if asppr.AppServicePlanPatchResourceProperties != nil { 3980 objectMap["properties"] = asppr.AppServicePlanPatchResourceProperties 3981 } 3982 if asppr.Kind != nil { 3983 objectMap["kind"] = asppr.Kind 3984 } 3985 return json.Marshal(objectMap) 3986} 3987 3988// UnmarshalJSON is the custom unmarshaler for AppServicePlanPatchResource struct. 3989func (asppr *AppServicePlanPatchResource) UnmarshalJSON(body []byte) error { 3990 var m map[string]*json.RawMessage 3991 err := json.Unmarshal(body, &m) 3992 if err != nil { 3993 return err 3994 } 3995 for k, v := range m { 3996 switch k { 3997 case "properties": 3998 if v != nil { 3999 var appServicePlanPatchResourceProperties AppServicePlanPatchResourceProperties 4000 err = json.Unmarshal(*v, &appServicePlanPatchResourceProperties) 4001 if err != nil { 4002 return err 4003 } 4004 asppr.AppServicePlanPatchResourceProperties = &appServicePlanPatchResourceProperties 4005 } 4006 case "id": 4007 if v != nil { 4008 var ID string 4009 err = json.Unmarshal(*v, &ID) 4010 if err != nil { 4011 return err 4012 } 4013 asppr.ID = &ID 4014 } 4015 case "name": 4016 if v != nil { 4017 var name string 4018 err = json.Unmarshal(*v, &name) 4019 if err != nil { 4020 return err 4021 } 4022 asppr.Name = &name 4023 } 4024 case "kind": 4025 if v != nil { 4026 var kind string 4027 err = json.Unmarshal(*v, &kind) 4028 if err != nil { 4029 return err 4030 } 4031 asppr.Kind = &kind 4032 } 4033 case "type": 4034 if v != nil { 4035 var typeVar string 4036 err = json.Unmarshal(*v, &typeVar) 4037 if err != nil { 4038 return err 4039 } 4040 asppr.Type = &typeVar 4041 } 4042 } 4043 } 4044 4045 return nil 4046} 4047 4048// AppServicePlanPatchResourceProperties appServicePlanPatchResource resource specific properties 4049type AppServicePlanPatchResourceProperties struct { 4050 // Name - Name for the App Service plan. 4051 Name *string `json:"name,omitempty"` 4052 // WorkerTierName - Target worker tier assigned to the App Service plan. 4053 WorkerTierName *string `json:"workerTierName,omitempty"` 4054 // Status - READ-ONLY; App Service plan status. Possible values include: 'StatusOptionsReady', 'StatusOptionsPending', 'StatusOptionsCreating' 4055 Status StatusOptions `json:"status,omitempty"` 4056 // Subscription - READ-ONLY; App Service plan subscription. 4057 Subscription *string `json:"subscription,omitempty"` 4058 // AdminSiteName - App Service plan administration site. 4059 AdminSiteName *string `json:"adminSiteName,omitempty"` 4060 // HostingEnvironmentProfile - Specification for the App Service Environment to use for the App Service plan. 4061 HostingEnvironmentProfile *HostingEnvironmentProfile `json:"hostingEnvironmentProfile,omitempty"` 4062 // MaximumNumberOfWorkers - READ-ONLY; Maximum number of instances that can be assigned to this App Service plan. 4063 MaximumNumberOfWorkers *int32 `json:"maximumNumberOfWorkers,omitempty"` 4064 // GeoRegion - READ-ONLY; Geographical location for the App Service plan. 4065 GeoRegion *string `json:"geoRegion,omitempty"` 4066 // PerSiteScaling - If <code>true</code>, apps assigned to this App Service plan can be scaled independently. 4067 // If <code>false</code>, apps assigned to this App Service plan will scale to all instances of the plan. 4068 PerSiteScaling *bool `json:"perSiteScaling,omitempty"` 4069 // NumberOfSites - READ-ONLY; Number of apps assigned to this App Service plan. 4070 NumberOfSites *int32 `json:"numberOfSites,omitempty"` 4071 // IsSpot - If <code>true</code>, this App Service Plan owns spot instances. 4072 IsSpot *bool `json:"isSpot,omitempty"` 4073 // SpotExpirationTime - The time when the server farm expires. Valid only if it is a spot server farm. 4074 SpotExpirationTime *date.Time `json:"spotExpirationTime,omitempty"` 4075 // ResourceGroup - READ-ONLY; Resource group of the App Service plan. 4076 ResourceGroup *string `json:"resourceGroup,omitempty"` 4077 // Reserved - If Linux app service plan <code>true</code>, <code>false</code> otherwise. 4078 Reserved *bool `json:"reserved,omitempty"` 4079 // TargetWorkerCount - Scaling worker count. 4080 TargetWorkerCount *int32 `json:"targetWorkerCount,omitempty"` 4081 // TargetWorkerSizeID - Scaling worker size ID. 4082 TargetWorkerSizeID *int32 `json:"targetWorkerSizeId,omitempty"` 4083 // ProvisioningState - READ-ONLY; Provisioning state of the App Service Environment. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 4084 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 4085} 4086 4087// AppServicePlanProperties appServicePlan resource specific properties 4088type AppServicePlanProperties struct { 4089 // Name - Name for the App Service plan. 4090 Name *string `json:"name,omitempty"` 4091 // WorkerTierName - Target worker tier assigned to the App Service plan. 4092 WorkerTierName *string `json:"workerTierName,omitempty"` 4093 // Status - READ-ONLY; App Service plan status. Possible values include: 'StatusOptionsReady', 'StatusOptionsPending', 'StatusOptionsCreating' 4094 Status StatusOptions `json:"status,omitempty"` 4095 // Subscription - READ-ONLY; App Service plan subscription. 4096 Subscription *string `json:"subscription,omitempty"` 4097 // AdminSiteName - App Service plan administration site. 4098 AdminSiteName *string `json:"adminSiteName,omitempty"` 4099 // HostingEnvironmentProfile - Specification for the App Service Environment to use for the App Service plan. 4100 HostingEnvironmentProfile *HostingEnvironmentProfile `json:"hostingEnvironmentProfile,omitempty"` 4101 // MaximumNumberOfWorkers - READ-ONLY; Maximum number of instances that can be assigned to this App Service plan. 4102 MaximumNumberOfWorkers *int32 `json:"maximumNumberOfWorkers,omitempty"` 4103 // GeoRegion - READ-ONLY; Geographical location for the App Service plan. 4104 GeoRegion *string `json:"geoRegion,omitempty"` 4105 // PerSiteScaling - If <code>true</code>, apps assigned to this App Service plan can be scaled independently. 4106 // If <code>false</code>, apps assigned to this App Service plan will scale to all instances of the plan. 4107 PerSiteScaling *bool `json:"perSiteScaling,omitempty"` 4108 // NumberOfSites - READ-ONLY; Number of apps assigned to this App Service plan. 4109 NumberOfSites *int32 `json:"numberOfSites,omitempty"` 4110 // IsSpot - If <code>true</code>, this App Service Plan owns spot instances. 4111 IsSpot *bool `json:"isSpot,omitempty"` 4112 // SpotExpirationTime - The time when the server farm expires. Valid only if it is a spot server farm. 4113 SpotExpirationTime *date.Time `json:"spotExpirationTime,omitempty"` 4114 // ResourceGroup - READ-ONLY; Resource group of the App Service plan. 4115 ResourceGroup *string `json:"resourceGroup,omitempty"` 4116 // Reserved - If Linux app service plan <code>true</code>, <code>false</code> otherwise. 4117 Reserved *bool `json:"reserved,omitempty"` 4118 // TargetWorkerCount - Scaling worker count. 4119 TargetWorkerCount *int32 `json:"targetWorkerCount,omitempty"` 4120 // TargetWorkerSizeID - Scaling worker size ID. 4121 TargetWorkerSizeID *int32 `json:"targetWorkerSizeId,omitempty"` 4122 // ProvisioningState - READ-ONLY; Provisioning state of the App Service Environment. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 4123 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 4124} 4125 4126// AppServicePlansCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a 4127// long-running operation. 4128type AppServicePlansCreateOrUpdateFuture struct { 4129 azure.Future 4130} 4131 4132// Result returns the result of the asynchronous operation. 4133// If the operation has not completed it will return an error. 4134func (future *AppServicePlansCreateOrUpdateFuture) Result(client AppServicePlansClient) (asp AppServicePlan, err error) { 4135 var done bool 4136 done, err = future.DoneWithContext(context.Background(), client) 4137 if err != nil { 4138 err = autorest.NewErrorWithError(err, "web.AppServicePlansCreateOrUpdateFuture", "Result", future.Response(), "Polling failure") 4139 return 4140 } 4141 if !done { 4142 err = azure.NewAsyncOpIncompleteError("web.AppServicePlansCreateOrUpdateFuture") 4143 return 4144 } 4145 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4146 if asp.Response.Response, err = future.GetResult(sender); err == nil && asp.Response.Response.StatusCode != http.StatusNoContent { 4147 asp, err = client.CreateOrUpdateResponder(asp.Response.Response) 4148 if err != nil { 4149 err = autorest.NewErrorWithError(err, "web.AppServicePlansCreateOrUpdateFuture", "Result", asp.Response.Response, "Failure responding to request") 4150 } 4151 } 4152 return 4153} 4154 4155// AppsInstallSiteExtensionFuture an abstraction for monitoring and retrieving the results of a 4156// long-running operation. 4157type AppsInstallSiteExtensionFuture struct { 4158 azure.Future 4159} 4160 4161// Result returns the result of the asynchronous operation. 4162// If the operation has not completed it will return an error. 4163func (future *AppsInstallSiteExtensionFuture) Result(client AppsClient) (sei SiteExtensionInfo, err error) { 4164 var done bool 4165 done, err = future.DoneWithContext(context.Background(), client) 4166 if err != nil { 4167 err = autorest.NewErrorWithError(err, "web.AppsInstallSiteExtensionFuture", "Result", future.Response(), "Polling failure") 4168 return 4169 } 4170 if !done { 4171 err = azure.NewAsyncOpIncompleteError("web.AppsInstallSiteExtensionFuture") 4172 return 4173 } 4174 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4175 if sei.Response.Response, err = future.GetResult(sender); err == nil && sei.Response.Response.StatusCode != http.StatusNoContent { 4176 sei, err = client.InstallSiteExtensionResponder(sei.Response.Response) 4177 if err != nil { 4178 err = autorest.NewErrorWithError(err, "web.AppsInstallSiteExtensionFuture", "Result", sei.Response.Response, "Failure responding to request") 4179 } 4180 } 4181 return 4182} 4183 4184// AppsInstallSiteExtensionSlotFuture an abstraction for monitoring and retrieving the results of a 4185// long-running operation. 4186type AppsInstallSiteExtensionSlotFuture struct { 4187 azure.Future 4188} 4189 4190// Result returns the result of the asynchronous operation. 4191// If the operation has not completed it will return an error. 4192func (future *AppsInstallSiteExtensionSlotFuture) Result(client AppsClient) (sei SiteExtensionInfo, err error) { 4193 var done bool 4194 done, err = future.DoneWithContext(context.Background(), client) 4195 if err != nil { 4196 err = autorest.NewErrorWithError(err, "web.AppsInstallSiteExtensionSlotFuture", "Result", future.Response(), "Polling failure") 4197 return 4198 } 4199 if !done { 4200 err = azure.NewAsyncOpIncompleteError("web.AppsInstallSiteExtensionSlotFuture") 4201 return 4202 } 4203 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4204 if sei.Response.Response, err = future.GetResult(sender); err == nil && sei.Response.Response.StatusCode != http.StatusNoContent { 4205 sei, err = client.InstallSiteExtensionSlotResponder(sei.Response.Response) 4206 if err != nil { 4207 err = autorest.NewErrorWithError(err, "web.AppsInstallSiteExtensionSlotFuture", "Result", sei.Response.Response, "Failure responding to request") 4208 } 4209 } 4210 return 4211} 4212 4213// AppsListPublishingCredentialsFuture an abstraction for monitoring and retrieving the results of a 4214// long-running operation. 4215type AppsListPublishingCredentialsFuture struct { 4216 azure.Future 4217} 4218 4219// Result returns the result of the asynchronous operation. 4220// If the operation has not completed it will return an error. 4221func (future *AppsListPublishingCredentialsFuture) Result(client AppsClient) (u User, err error) { 4222 var done bool 4223 done, err = future.DoneWithContext(context.Background(), client) 4224 if err != nil { 4225 err = autorest.NewErrorWithError(err, "web.AppsListPublishingCredentialsFuture", "Result", future.Response(), "Polling failure") 4226 return 4227 } 4228 if !done { 4229 err = azure.NewAsyncOpIncompleteError("web.AppsListPublishingCredentialsFuture") 4230 return 4231 } 4232 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4233 if u.Response.Response, err = future.GetResult(sender); err == nil && u.Response.Response.StatusCode != http.StatusNoContent { 4234 u, err = client.ListPublishingCredentialsResponder(u.Response.Response) 4235 if err != nil { 4236 err = autorest.NewErrorWithError(err, "web.AppsListPublishingCredentialsFuture", "Result", u.Response.Response, "Failure responding to request") 4237 } 4238 } 4239 return 4240} 4241 4242// AppsListPublishingCredentialsSlotFuture an abstraction for monitoring and retrieving the results of a 4243// long-running operation. 4244type AppsListPublishingCredentialsSlotFuture struct { 4245 azure.Future 4246} 4247 4248// Result returns the result of the asynchronous operation. 4249// If the operation has not completed it will return an error. 4250func (future *AppsListPublishingCredentialsSlotFuture) Result(client AppsClient) (u User, err error) { 4251 var done bool 4252 done, err = future.DoneWithContext(context.Background(), client) 4253 if err != nil { 4254 err = autorest.NewErrorWithError(err, "web.AppsListPublishingCredentialsSlotFuture", "Result", future.Response(), "Polling failure") 4255 return 4256 } 4257 if !done { 4258 err = azure.NewAsyncOpIncompleteError("web.AppsListPublishingCredentialsSlotFuture") 4259 return 4260 } 4261 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4262 if u.Response.Response, err = future.GetResult(sender); err == nil && u.Response.Response.StatusCode != http.StatusNoContent { 4263 u, err = client.ListPublishingCredentialsSlotResponder(u.Response.Response) 4264 if err != nil { 4265 err = autorest.NewErrorWithError(err, "web.AppsListPublishingCredentialsSlotFuture", "Result", u.Response.Response, "Failure responding to request") 4266 } 4267 } 4268 return 4269} 4270 4271// AppsMigrateMySQLFuture an abstraction for monitoring and retrieving the results of a long-running 4272// operation. 4273type AppsMigrateMySQLFuture struct { 4274 azure.Future 4275} 4276 4277// Result returns the result of the asynchronous operation. 4278// If the operation has not completed it will return an error. 4279func (future *AppsMigrateMySQLFuture) Result(client AppsClient) (o Operation, err error) { 4280 var done bool 4281 done, err = future.DoneWithContext(context.Background(), client) 4282 if err != nil { 4283 err = autorest.NewErrorWithError(err, "web.AppsMigrateMySQLFuture", "Result", future.Response(), "Polling failure") 4284 return 4285 } 4286 if !done { 4287 err = azure.NewAsyncOpIncompleteError("web.AppsMigrateMySQLFuture") 4288 return 4289 } 4290 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4291 if o.Response.Response, err = future.GetResult(sender); err == nil && o.Response.Response.StatusCode != http.StatusNoContent { 4292 o, err = client.MigrateMySQLResponder(o.Response.Response) 4293 if err != nil { 4294 err = autorest.NewErrorWithError(err, "web.AppsMigrateMySQLFuture", "Result", o.Response.Response, "Failure responding to request") 4295 } 4296 } 4297 return 4298} 4299 4300// AppsMigrateStorageFuture an abstraction for monitoring and retrieving the results of a long-running 4301// operation. 4302type AppsMigrateStorageFuture struct { 4303 azure.Future 4304} 4305 4306// Result returns the result of the asynchronous operation. 4307// If the operation has not completed it will return an error. 4308func (future *AppsMigrateStorageFuture) Result(client AppsClient) (smr StorageMigrationResponse, err error) { 4309 var done bool 4310 done, err = future.DoneWithContext(context.Background(), client) 4311 if err != nil { 4312 err = autorest.NewErrorWithError(err, "web.AppsMigrateStorageFuture", "Result", future.Response(), "Polling failure") 4313 return 4314 } 4315 if !done { 4316 err = azure.NewAsyncOpIncompleteError("web.AppsMigrateStorageFuture") 4317 return 4318 } 4319 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4320 if smr.Response.Response, err = future.GetResult(sender); err == nil && smr.Response.Response.StatusCode != http.StatusNoContent { 4321 smr, err = client.MigrateStorageResponder(smr.Response.Response) 4322 if err != nil { 4323 err = autorest.NewErrorWithError(err, "web.AppsMigrateStorageFuture", "Result", smr.Response.Response, "Failure responding to request") 4324 } 4325 } 4326 return 4327} 4328 4329// AppsRecoverFuture an abstraction for monitoring and retrieving the results of a long-running operation. 4330type AppsRecoverFuture struct { 4331 azure.Future 4332} 4333 4334// Result returns the result of the asynchronous operation. 4335// If the operation has not completed it will return an error. 4336func (future *AppsRecoverFuture) Result(client AppsClient) (ar autorest.Response, err error) { 4337 var done bool 4338 done, err = future.DoneWithContext(context.Background(), client) 4339 if err != nil { 4340 err = autorest.NewErrorWithError(err, "web.AppsRecoverFuture", "Result", future.Response(), "Polling failure") 4341 return 4342 } 4343 if !done { 4344 err = azure.NewAsyncOpIncompleteError("web.AppsRecoverFuture") 4345 return 4346 } 4347 ar.Response = future.Response() 4348 return 4349} 4350 4351// AppsRecoverSlotFuture an abstraction for monitoring and retrieving the results of a long-running 4352// operation. 4353type AppsRecoverSlotFuture struct { 4354 azure.Future 4355} 4356 4357// Result returns the result of the asynchronous operation. 4358// If the operation has not completed it will return an error. 4359func (future *AppsRecoverSlotFuture) Result(client AppsClient) (ar autorest.Response, err error) { 4360 var done bool 4361 done, err = future.DoneWithContext(context.Background(), client) 4362 if err != nil { 4363 err = autorest.NewErrorWithError(err, "web.AppsRecoverSlotFuture", "Result", future.Response(), "Polling failure") 4364 return 4365 } 4366 if !done { 4367 err = azure.NewAsyncOpIncompleteError("web.AppsRecoverSlotFuture") 4368 return 4369 } 4370 ar.Response = future.Response() 4371 return 4372} 4373 4374// AppsRestoreFuture an abstraction for monitoring and retrieving the results of a long-running operation. 4375type AppsRestoreFuture struct { 4376 azure.Future 4377} 4378 4379// Result returns the result of the asynchronous operation. 4380// If the operation has not completed it will return an error. 4381func (future *AppsRestoreFuture) Result(client AppsClient) (rr RestoreResponse, err error) { 4382 var done bool 4383 done, err = future.DoneWithContext(context.Background(), client) 4384 if err != nil { 4385 err = autorest.NewErrorWithError(err, "web.AppsRestoreFuture", "Result", future.Response(), "Polling failure") 4386 return 4387 } 4388 if !done { 4389 err = azure.NewAsyncOpIncompleteError("web.AppsRestoreFuture") 4390 return 4391 } 4392 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4393 if rr.Response.Response, err = future.GetResult(sender); err == nil && rr.Response.Response.StatusCode != http.StatusNoContent { 4394 rr, err = client.RestoreResponder(rr.Response.Response) 4395 if err != nil { 4396 err = autorest.NewErrorWithError(err, "web.AppsRestoreFuture", "Result", rr.Response.Response, "Failure responding to request") 4397 } 4398 } 4399 return 4400} 4401 4402// AppsRestoreSlotFuture an abstraction for monitoring and retrieving the results of a long-running 4403// operation. 4404type AppsRestoreSlotFuture struct { 4405 azure.Future 4406} 4407 4408// Result returns the result of the asynchronous operation. 4409// If the operation has not completed it will return an error. 4410func (future *AppsRestoreSlotFuture) Result(client AppsClient) (rr RestoreResponse, err error) { 4411 var done bool 4412 done, err = future.DoneWithContext(context.Background(), client) 4413 if err != nil { 4414 err = autorest.NewErrorWithError(err, "web.AppsRestoreSlotFuture", "Result", future.Response(), "Polling failure") 4415 return 4416 } 4417 if !done { 4418 err = azure.NewAsyncOpIncompleteError("web.AppsRestoreSlotFuture") 4419 return 4420 } 4421 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4422 if rr.Response.Response, err = future.GetResult(sender); err == nil && rr.Response.Response.StatusCode != http.StatusNoContent { 4423 rr, err = client.RestoreSlotResponder(rr.Response.Response) 4424 if err != nil { 4425 err = autorest.NewErrorWithError(err, "web.AppsRestoreSlotFuture", "Result", rr.Response.Response, "Failure responding to request") 4426 } 4427 } 4428 return 4429} 4430 4431// AppsSwapSlotSlotFuture an abstraction for monitoring and retrieving the results of a long-running 4432// operation. 4433type AppsSwapSlotSlotFuture struct { 4434 azure.Future 4435} 4436 4437// Result returns the result of the asynchronous operation. 4438// If the operation has not completed it will return an error. 4439func (future *AppsSwapSlotSlotFuture) Result(client AppsClient) (ar autorest.Response, err error) { 4440 var done bool 4441 done, err = future.DoneWithContext(context.Background(), client) 4442 if err != nil { 4443 err = autorest.NewErrorWithError(err, "web.AppsSwapSlotSlotFuture", "Result", future.Response(), "Polling failure") 4444 return 4445 } 4446 if !done { 4447 err = azure.NewAsyncOpIncompleteError("web.AppsSwapSlotSlotFuture") 4448 return 4449 } 4450 ar.Response = future.Response() 4451 return 4452} 4453 4454// AppsSwapSlotWithProductionFuture an abstraction for monitoring and retrieving the results of a 4455// long-running operation. 4456type AppsSwapSlotWithProductionFuture struct { 4457 azure.Future 4458} 4459 4460// Result returns the result of the asynchronous operation. 4461// If the operation has not completed it will return an error. 4462func (future *AppsSwapSlotWithProductionFuture) Result(client AppsClient) (ar autorest.Response, err error) { 4463 var done bool 4464 done, err = future.DoneWithContext(context.Background(), client) 4465 if err != nil { 4466 err = autorest.NewErrorWithError(err, "web.AppsSwapSlotWithProductionFuture", "Result", future.Response(), "Polling failure") 4467 return 4468 } 4469 if !done { 4470 err = azure.NewAsyncOpIncompleteError("web.AppsSwapSlotWithProductionFuture") 4471 return 4472 } 4473 ar.Response = future.Response() 4474 return 4475} 4476 4477// AutoHealActions actions which to take by the auto-heal module when a rule is triggered. 4478type AutoHealActions struct { 4479 // ActionType - Predefined action to be taken. Possible values include: 'Recycle', 'LogEvent', 'CustomAction' 4480 ActionType AutoHealActionType `json:"actionType,omitempty"` 4481 // CustomAction - Custom action to be taken. 4482 CustomAction *AutoHealCustomAction `json:"customAction,omitempty"` 4483 // MinProcessExecutionTime - Minimum time the process must execute 4484 // before taking the action 4485 MinProcessExecutionTime *string `json:"minProcessExecutionTime,omitempty"` 4486} 4487 4488// AutoHealCustomAction custom action to be executed 4489// when an auto heal rule is triggered. 4490type AutoHealCustomAction struct { 4491 // Exe - Executable to be run. 4492 Exe *string `json:"exe,omitempty"` 4493 // Parameters - Parameters for the executable. 4494 Parameters *string `json:"parameters,omitempty"` 4495} 4496 4497// AutoHealRules rules that can be defined for auto-heal. 4498type AutoHealRules struct { 4499 // Triggers - Conditions that describe when to execute the auto-heal actions. 4500 Triggers *AutoHealTriggers `json:"triggers,omitempty"` 4501 // Actions - Actions to be executed when a rule is triggered. 4502 Actions *AutoHealActions `json:"actions,omitempty"` 4503} 4504 4505// AutoHealTriggers triggers for auto-heal. 4506type AutoHealTriggers struct { 4507 // Requests - A rule based on total requests. 4508 Requests *RequestsBasedTrigger `json:"requests,omitempty"` 4509 // PrivateBytesInKB - A rule based on private bytes. 4510 PrivateBytesInKB *int32 `json:"privateBytesInKB,omitempty"` 4511 // StatusCodes - A rule based on status codes. 4512 StatusCodes *[]StatusCodesBasedTrigger `json:"statusCodes,omitempty"` 4513 // SlowRequests - A rule based on request execution time. 4514 SlowRequests *SlowRequestsBasedTrigger `json:"slowRequests,omitempty"` 4515} 4516 4517// AzureBlobStorageApplicationLogsConfig application logs azure blob storage configuration. 4518type AzureBlobStorageApplicationLogsConfig struct { 4519 // Level - Log level. Possible values include: 'Off', 'Verbose', 'Information', 'Warning', 'Error' 4520 Level LogLevel `json:"level,omitempty"` 4521 // SasURL - SAS url to a azure blob container with read/write/list/delete permissions. 4522 SasURL *string `json:"sasUrl,omitempty"` 4523 // RetentionInDays - Retention in days. 4524 // Remove blobs older than X days. 4525 // 0 or lower means no retention. 4526 RetentionInDays *int32 `json:"retentionInDays,omitempty"` 4527} 4528 4529// AzureBlobStorageHTTPLogsConfig http logs to azure blob storage configuration. 4530type AzureBlobStorageHTTPLogsConfig struct { 4531 // SasURL - SAS url to a azure blob container with read/write/list/delete permissions. 4532 SasURL *string `json:"sasUrl,omitempty"` 4533 // RetentionInDays - Retention in days. 4534 // Remove blobs older than X days. 4535 // 0 or lower means no retention. 4536 RetentionInDays *int32 `json:"retentionInDays,omitempty"` 4537 // Enabled - True if configuration is enabled, false if it is disabled and null if configuration is not set. 4538 Enabled *bool `json:"enabled,omitempty"` 4539} 4540 4541// AzureTableStorageApplicationLogsConfig application logs to Azure table storage configuration. 4542type AzureTableStorageApplicationLogsConfig struct { 4543 // Level - Log level. Possible values include: 'Off', 'Verbose', 'Information', 'Warning', 'Error' 4544 Level LogLevel `json:"level,omitempty"` 4545 // SasURL - SAS URL to an Azure table with add/query/delete permissions. 4546 SasURL *string `json:"sasUrl,omitempty"` 4547} 4548 4549// BackupItem backup description. 4550type BackupItem struct { 4551 autorest.Response `json:"-"` 4552 // BackupItemProperties - BackupItem resource specific properties 4553 *BackupItemProperties `json:"properties,omitempty"` 4554 // ID - READ-ONLY; Resource Id. 4555 ID *string `json:"id,omitempty"` 4556 // Name - READ-ONLY; Resource Name. 4557 Name *string `json:"name,omitempty"` 4558 // Kind - Kind of resource. 4559 Kind *string `json:"kind,omitempty"` 4560 // Type - READ-ONLY; Resource type. 4561 Type *string `json:"type,omitempty"` 4562} 4563 4564// MarshalJSON is the custom marshaler for BackupItem. 4565func (bi BackupItem) MarshalJSON() ([]byte, error) { 4566 objectMap := make(map[string]interface{}) 4567 if bi.BackupItemProperties != nil { 4568 objectMap["properties"] = bi.BackupItemProperties 4569 } 4570 if bi.Kind != nil { 4571 objectMap["kind"] = bi.Kind 4572 } 4573 return json.Marshal(objectMap) 4574} 4575 4576// UnmarshalJSON is the custom unmarshaler for BackupItem struct. 4577func (bi *BackupItem) UnmarshalJSON(body []byte) error { 4578 var m map[string]*json.RawMessage 4579 err := json.Unmarshal(body, &m) 4580 if err != nil { 4581 return err 4582 } 4583 for k, v := range m { 4584 switch k { 4585 case "properties": 4586 if v != nil { 4587 var backupItemProperties BackupItemProperties 4588 err = json.Unmarshal(*v, &backupItemProperties) 4589 if err != nil { 4590 return err 4591 } 4592 bi.BackupItemProperties = &backupItemProperties 4593 } 4594 case "id": 4595 if v != nil { 4596 var ID string 4597 err = json.Unmarshal(*v, &ID) 4598 if err != nil { 4599 return err 4600 } 4601 bi.ID = &ID 4602 } 4603 case "name": 4604 if v != nil { 4605 var name string 4606 err = json.Unmarshal(*v, &name) 4607 if err != nil { 4608 return err 4609 } 4610 bi.Name = &name 4611 } 4612 case "kind": 4613 if v != nil { 4614 var kind string 4615 err = json.Unmarshal(*v, &kind) 4616 if err != nil { 4617 return err 4618 } 4619 bi.Kind = &kind 4620 } 4621 case "type": 4622 if v != nil { 4623 var typeVar string 4624 err = json.Unmarshal(*v, &typeVar) 4625 if err != nil { 4626 return err 4627 } 4628 bi.Type = &typeVar 4629 } 4630 } 4631 } 4632 4633 return nil 4634} 4635 4636// BackupItemCollection collection of backup items. 4637type BackupItemCollection struct { 4638 autorest.Response `json:"-"` 4639 // Value - Collection of resources. 4640 Value *[]BackupItem `json:"value,omitempty"` 4641 // NextLink - READ-ONLY; Link to next page of resources. 4642 NextLink *string `json:"nextLink,omitempty"` 4643} 4644 4645// BackupItemCollectionIterator provides access to a complete listing of BackupItem values. 4646type BackupItemCollectionIterator struct { 4647 i int 4648 page BackupItemCollectionPage 4649} 4650 4651// NextWithContext advances to the next value. If there was an error making 4652// the request the iterator does not advance and the error is returned. 4653func (iter *BackupItemCollectionIterator) NextWithContext(ctx context.Context) (err error) { 4654 if tracing.IsEnabled() { 4655 ctx = tracing.StartSpan(ctx, fqdn+"/BackupItemCollectionIterator.NextWithContext") 4656 defer func() { 4657 sc := -1 4658 if iter.Response().Response.Response != nil { 4659 sc = iter.Response().Response.Response.StatusCode 4660 } 4661 tracing.EndSpan(ctx, sc, err) 4662 }() 4663 } 4664 iter.i++ 4665 if iter.i < len(iter.page.Values()) { 4666 return nil 4667 } 4668 err = iter.page.NextWithContext(ctx) 4669 if err != nil { 4670 iter.i-- 4671 return err 4672 } 4673 iter.i = 0 4674 return nil 4675} 4676 4677// Next advances to the next value. If there was an error making 4678// the request the iterator does not advance and the error is returned. 4679// Deprecated: Use NextWithContext() instead. 4680func (iter *BackupItemCollectionIterator) Next() error { 4681 return iter.NextWithContext(context.Background()) 4682} 4683 4684// NotDone returns true if the enumeration should be started or is not yet complete. 4685func (iter BackupItemCollectionIterator) NotDone() bool { 4686 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 4687} 4688 4689// Response returns the raw server response from the last page request. 4690func (iter BackupItemCollectionIterator) Response() BackupItemCollection { 4691 return iter.page.Response() 4692} 4693 4694// Value returns the current value or a zero-initialized value if the 4695// iterator has advanced beyond the end of the collection. 4696func (iter BackupItemCollectionIterator) Value() BackupItem { 4697 if !iter.page.NotDone() { 4698 return BackupItem{} 4699 } 4700 return iter.page.Values()[iter.i] 4701} 4702 4703// Creates a new instance of the BackupItemCollectionIterator type. 4704func NewBackupItemCollectionIterator(page BackupItemCollectionPage) BackupItemCollectionIterator { 4705 return BackupItemCollectionIterator{page: page} 4706} 4707 4708// IsEmpty returns true if the ListResult contains no values. 4709func (bic BackupItemCollection) IsEmpty() bool { 4710 return bic.Value == nil || len(*bic.Value) == 0 4711} 4712 4713// backupItemCollectionPreparer prepares a request to retrieve the next set of results. 4714// It returns nil if no more results exist. 4715func (bic BackupItemCollection) backupItemCollectionPreparer(ctx context.Context) (*http.Request, error) { 4716 if bic.NextLink == nil || len(to.String(bic.NextLink)) < 1 { 4717 return nil, nil 4718 } 4719 return autorest.Prepare((&http.Request{}).WithContext(ctx), 4720 autorest.AsJSON(), 4721 autorest.AsGet(), 4722 autorest.WithBaseURL(to.String(bic.NextLink))) 4723} 4724 4725// BackupItemCollectionPage contains a page of BackupItem values. 4726type BackupItemCollectionPage struct { 4727 fn func(context.Context, BackupItemCollection) (BackupItemCollection, error) 4728 bic BackupItemCollection 4729} 4730 4731// NextWithContext advances to the next page of values. If there was an error making 4732// the request the page does not advance and the error is returned. 4733func (page *BackupItemCollectionPage) NextWithContext(ctx context.Context) (err error) { 4734 if tracing.IsEnabled() { 4735 ctx = tracing.StartSpan(ctx, fqdn+"/BackupItemCollectionPage.NextWithContext") 4736 defer func() { 4737 sc := -1 4738 if page.Response().Response.Response != nil { 4739 sc = page.Response().Response.Response.StatusCode 4740 } 4741 tracing.EndSpan(ctx, sc, err) 4742 }() 4743 } 4744 next, err := page.fn(ctx, page.bic) 4745 if err != nil { 4746 return err 4747 } 4748 page.bic = next 4749 return nil 4750} 4751 4752// Next advances to the next page of values. If there was an error making 4753// the request the page does not advance and the error is returned. 4754// Deprecated: Use NextWithContext() instead. 4755func (page *BackupItemCollectionPage) Next() error { 4756 return page.NextWithContext(context.Background()) 4757} 4758 4759// NotDone returns true if the page enumeration should be started or is not yet complete. 4760func (page BackupItemCollectionPage) NotDone() bool { 4761 return !page.bic.IsEmpty() 4762} 4763 4764// Response returns the raw server response from the last page request. 4765func (page BackupItemCollectionPage) Response() BackupItemCollection { 4766 return page.bic 4767} 4768 4769// Values returns the slice of values for the current page or nil if there are no values. 4770func (page BackupItemCollectionPage) Values() []BackupItem { 4771 if page.bic.IsEmpty() { 4772 return nil 4773 } 4774 return *page.bic.Value 4775} 4776 4777// Creates a new instance of the BackupItemCollectionPage type. 4778func NewBackupItemCollectionPage(getNextPage func(context.Context, BackupItemCollection) (BackupItemCollection, error)) BackupItemCollectionPage { 4779 return BackupItemCollectionPage{fn: getNextPage} 4780} 4781 4782// BackupItemProperties backupItem resource specific properties 4783type BackupItemProperties struct { 4784 // BackupID - READ-ONLY; Id of the backup. 4785 BackupID *int32 `json:"id,omitempty"` 4786 // StorageAccountURL - READ-ONLY; SAS URL for the storage account container which contains this backup. 4787 StorageAccountURL *string `json:"storageAccountUrl,omitempty"` 4788 // BlobName - READ-ONLY; Name of the blob which contains data for this backup. 4789 BlobName *string `json:"blobName,omitempty"` 4790 // Name - READ-ONLY; Name of this backup. 4791 Name *string `json:"name,omitempty"` 4792 // Status - READ-ONLY; Backup status. Possible values include: 'InProgress', 'Failed', 'Succeeded', 'TimedOut', 'Created', 'Skipped', 'PartiallySucceeded', 'DeleteInProgress', 'DeleteFailed', 'Deleted' 4793 Status BackupItemStatus `json:"status,omitempty"` 4794 // SizeInBytes - READ-ONLY; Size of the backup in bytes. 4795 SizeInBytes *int64 `json:"sizeInBytes,omitempty"` 4796 // Created - READ-ONLY; Timestamp of the backup creation. 4797 Created *date.Time `json:"created,omitempty"` 4798 // Log - READ-ONLY; Details regarding this backup. Might contain an error message. 4799 Log *string `json:"log,omitempty"` 4800 // Databases - READ-ONLY; List of databases included in the backup. 4801 Databases *[]DatabaseBackupSetting `json:"databases,omitempty"` 4802 // Scheduled - READ-ONLY; True if this backup has been created due to a schedule being triggered. 4803 Scheduled *bool `json:"scheduled,omitempty"` 4804 // LastRestoreTimeStamp - READ-ONLY; Timestamp of a last restore operation which used this backup. 4805 LastRestoreTimeStamp *date.Time `json:"lastRestoreTimeStamp,omitempty"` 4806 // FinishedTimeStamp - READ-ONLY; Timestamp when this backup finished. 4807 FinishedTimeStamp *date.Time `json:"finishedTimeStamp,omitempty"` 4808 // CorrelationID - READ-ONLY; Unique correlation identifier. Please use this along with the timestamp while communicating with Azure support. 4809 CorrelationID *string `json:"correlationId,omitempty"` 4810 // WebsiteSizeInBytes - READ-ONLY; Size of the original web app which has been backed up. 4811 WebsiteSizeInBytes *int64 `json:"websiteSizeInBytes,omitempty"` 4812} 4813 4814// BackupRequest description of a backup which will be performed. 4815type BackupRequest struct { 4816 autorest.Response `json:"-"` 4817 // BackupRequestProperties - BackupRequest resource specific properties 4818 *BackupRequestProperties `json:"properties,omitempty"` 4819 // ID - READ-ONLY; Resource Id. 4820 ID *string `json:"id,omitempty"` 4821 // Name - READ-ONLY; Resource Name. 4822 Name *string `json:"name,omitempty"` 4823 // Kind - Kind of resource. 4824 Kind *string `json:"kind,omitempty"` 4825 // Type - READ-ONLY; Resource type. 4826 Type *string `json:"type,omitempty"` 4827} 4828 4829// MarshalJSON is the custom marshaler for BackupRequest. 4830func (br BackupRequest) MarshalJSON() ([]byte, error) { 4831 objectMap := make(map[string]interface{}) 4832 if br.BackupRequestProperties != nil { 4833 objectMap["properties"] = br.BackupRequestProperties 4834 } 4835 if br.Kind != nil { 4836 objectMap["kind"] = br.Kind 4837 } 4838 return json.Marshal(objectMap) 4839} 4840 4841// UnmarshalJSON is the custom unmarshaler for BackupRequest struct. 4842func (br *BackupRequest) UnmarshalJSON(body []byte) error { 4843 var m map[string]*json.RawMessage 4844 err := json.Unmarshal(body, &m) 4845 if err != nil { 4846 return err 4847 } 4848 for k, v := range m { 4849 switch k { 4850 case "properties": 4851 if v != nil { 4852 var backupRequestProperties BackupRequestProperties 4853 err = json.Unmarshal(*v, &backupRequestProperties) 4854 if err != nil { 4855 return err 4856 } 4857 br.BackupRequestProperties = &backupRequestProperties 4858 } 4859 case "id": 4860 if v != nil { 4861 var ID string 4862 err = json.Unmarshal(*v, &ID) 4863 if err != nil { 4864 return err 4865 } 4866 br.ID = &ID 4867 } 4868 case "name": 4869 if v != nil { 4870 var name string 4871 err = json.Unmarshal(*v, &name) 4872 if err != nil { 4873 return err 4874 } 4875 br.Name = &name 4876 } 4877 case "kind": 4878 if v != nil { 4879 var kind string 4880 err = json.Unmarshal(*v, &kind) 4881 if err != nil { 4882 return err 4883 } 4884 br.Kind = &kind 4885 } 4886 case "type": 4887 if v != nil { 4888 var typeVar string 4889 err = json.Unmarshal(*v, &typeVar) 4890 if err != nil { 4891 return err 4892 } 4893 br.Type = &typeVar 4894 } 4895 } 4896 } 4897 4898 return nil 4899} 4900 4901// BackupRequestProperties backupRequest resource specific properties 4902type BackupRequestProperties struct { 4903 // BackupRequestName - Name of the backup. 4904 BackupRequestName *string `json:"name,omitempty"` 4905 // Enabled - True if the backup schedule is enabled (must be included in that case), false if the backup schedule should be disabled. 4906 Enabled *bool `json:"enabled,omitempty"` 4907 // StorageAccountURL - SAS URL to the container. 4908 StorageAccountURL *string `json:"storageAccountUrl,omitempty"` 4909 // BackupSchedule - Schedule for the backup if it is executed periodically. 4910 BackupSchedule *BackupSchedule `json:"backupSchedule,omitempty"` 4911 // Databases - Databases included in the backup. 4912 Databases *[]DatabaseBackupSetting `json:"databases,omitempty"` 4913 // Type - Type of the backup. Possible values include: 'BackupRestoreOperationTypeDefault', 'BackupRestoreOperationTypeClone', 'BackupRestoreOperationTypeRelocation', 'BackupRestoreOperationTypeSnapshot' 4914 Type BackupRestoreOperationType `json:"type,omitempty"` 4915} 4916 4917// BackupSchedule description of a backup schedule. Describes how often should be the backup performed and 4918// what should be the retention policy. 4919type BackupSchedule struct { 4920 // FrequencyInterval - How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and FrequencyUnit should be set to Day) 4921 FrequencyInterval *int32 `json:"frequencyInterval,omitempty"` 4922 // FrequencyUnit - The unit of time for how often the backup should be executed (e.g. for weekly backup, this should be set to Day and FrequencyInterval should be set to 7). Possible values include: 'Day', 'Hour' 4923 FrequencyUnit FrequencyUnit `json:"frequencyUnit,omitempty"` 4924 // KeepAtLeastOneBackup - True if the retention policy should always keep at least one backup in the storage account, regardless how old it is; false otherwise. 4925 KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty"` 4926 // RetentionPeriodInDays - After how many days backups should be deleted. 4927 RetentionPeriodInDays *int32 `json:"retentionPeriodInDays,omitempty"` 4928 // StartTime - When the schedule should start working. 4929 StartTime *date.Time `json:"startTime,omitempty"` 4930 // LastExecutionTime - READ-ONLY; Last time when this schedule was triggered. 4931 LastExecutionTime *date.Time `json:"lastExecutionTime,omitempty"` 4932} 4933 4934// BillingMeter app Service billing entity that contains information about meter which the Azure billing 4935// system utilizes to charge users for services. 4936type BillingMeter struct { 4937 // BillingMeterProperties - BillingMeter resource specific properties 4938 *BillingMeterProperties `json:"properties,omitempty"` 4939 // ID - READ-ONLY; Resource Id. 4940 ID *string `json:"id,omitempty"` 4941 // Name - READ-ONLY; Resource Name. 4942 Name *string `json:"name,omitempty"` 4943 // Kind - Kind of resource. 4944 Kind *string `json:"kind,omitempty"` 4945 // Type - READ-ONLY; Resource type. 4946 Type *string `json:"type,omitempty"` 4947} 4948 4949// MarshalJSON is the custom marshaler for BillingMeter. 4950func (bm BillingMeter) MarshalJSON() ([]byte, error) { 4951 objectMap := make(map[string]interface{}) 4952 if bm.BillingMeterProperties != nil { 4953 objectMap["properties"] = bm.BillingMeterProperties 4954 } 4955 if bm.Kind != nil { 4956 objectMap["kind"] = bm.Kind 4957 } 4958 return json.Marshal(objectMap) 4959} 4960 4961// UnmarshalJSON is the custom unmarshaler for BillingMeter struct. 4962func (bm *BillingMeter) UnmarshalJSON(body []byte) error { 4963 var m map[string]*json.RawMessage 4964 err := json.Unmarshal(body, &m) 4965 if err != nil { 4966 return err 4967 } 4968 for k, v := range m { 4969 switch k { 4970 case "properties": 4971 if v != nil { 4972 var billingMeterProperties BillingMeterProperties 4973 err = json.Unmarshal(*v, &billingMeterProperties) 4974 if err != nil { 4975 return err 4976 } 4977 bm.BillingMeterProperties = &billingMeterProperties 4978 } 4979 case "id": 4980 if v != nil { 4981 var ID string 4982 err = json.Unmarshal(*v, &ID) 4983 if err != nil { 4984 return err 4985 } 4986 bm.ID = &ID 4987 } 4988 case "name": 4989 if v != nil { 4990 var name string 4991 err = json.Unmarshal(*v, &name) 4992 if err != nil { 4993 return err 4994 } 4995 bm.Name = &name 4996 } 4997 case "kind": 4998 if v != nil { 4999 var kind string 5000 err = json.Unmarshal(*v, &kind) 5001 if err != nil { 5002 return err 5003 } 5004 bm.Kind = &kind 5005 } 5006 case "type": 5007 if v != nil { 5008 var typeVar string 5009 err = json.Unmarshal(*v, &typeVar) 5010 if err != nil { 5011 return err 5012 } 5013 bm.Type = &typeVar 5014 } 5015 } 5016 } 5017 5018 return nil 5019} 5020 5021// BillingMeterCollection collection of Billing Meters 5022type BillingMeterCollection struct { 5023 autorest.Response `json:"-"` 5024 // Value - Collection of Billing Meters. 5025 Value *[]BillingMeter `json:"value,omitempty"` 5026 // NextLink - READ-ONLY; Link to next page of resources. 5027 NextLink *string `json:"nextLink,omitempty"` 5028} 5029 5030// BillingMeterCollectionIterator provides access to a complete listing of BillingMeter values. 5031type BillingMeterCollectionIterator struct { 5032 i int 5033 page BillingMeterCollectionPage 5034} 5035 5036// NextWithContext advances to the next value. If there was an error making 5037// the request the iterator does not advance and the error is returned. 5038func (iter *BillingMeterCollectionIterator) NextWithContext(ctx context.Context) (err error) { 5039 if tracing.IsEnabled() { 5040 ctx = tracing.StartSpan(ctx, fqdn+"/BillingMeterCollectionIterator.NextWithContext") 5041 defer func() { 5042 sc := -1 5043 if iter.Response().Response.Response != nil { 5044 sc = iter.Response().Response.Response.StatusCode 5045 } 5046 tracing.EndSpan(ctx, sc, err) 5047 }() 5048 } 5049 iter.i++ 5050 if iter.i < len(iter.page.Values()) { 5051 return nil 5052 } 5053 err = iter.page.NextWithContext(ctx) 5054 if err != nil { 5055 iter.i-- 5056 return err 5057 } 5058 iter.i = 0 5059 return nil 5060} 5061 5062// Next advances to the next value. If there was an error making 5063// the request the iterator does not advance and the error is returned. 5064// Deprecated: Use NextWithContext() instead. 5065func (iter *BillingMeterCollectionIterator) Next() error { 5066 return iter.NextWithContext(context.Background()) 5067} 5068 5069// NotDone returns true if the enumeration should be started or is not yet complete. 5070func (iter BillingMeterCollectionIterator) NotDone() bool { 5071 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 5072} 5073 5074// Response returns the raw server response from the last page request. 5075func (iter BillingMeterCollectionIterator) Response() BillingMeterCollection { 5076 return iter.page.Response() 5077} 5078 5079// Value returns the current value or a zero-initialized value if the 5080// iterator has advanced beyond the end of the collection. 5081func (iter BillingMeterCollectionIterator) Value() BillingMeter { 5082 if !iter.page.NotDone() { 5083 return BillingMeter{} 5084 } 5085 return iter.page.Values()[iter.i] 5086} 5087 5088// Creates a new instance of the BillingMeterCollectionIterator type. 5089func NewBillingMeterCollectionIterator(page BillingMeterCollectionPage) BillingMeterCollectionIterator { 5090 return BillingMeterCollectionIterator{page: page} 5091} 5092 5093// IsEmpty returns true if the ListResult contains no values. 5094func (bmc BillingMeterCollection) IsEmpty() bool { 5095 return bmc.Value == nil || len(*bmc.Value) == 0 5096} 5097 5098// billingMeterCollectionPreparer prepares a request to retrieve the next set of results. 5099// It returns nil if no more results exist. 5100func (bmc BillingMeterCollection) billingMeterCollectionPreparer(ctx context.Context) (*http.Request, error) { 5101 if bmc.NextLink == nil || len(to.String(bmc.NextLink)) < 1 { 5102 return nil, nil 5103 } 5104 return autorest.Prepare((&http.Request{}).WithContext(ctx), 5105 autorest.AsJSON(), 5106 autorest.AsGet(), 5107 autorest.WithBaseURL(to.String(bmc.NextLink))) 5108} 5109 5110// BillingMeterCollectionPage contains a page of BillingMeter values. 5111type BillingMeterCollectionPage struct { 5112 fn func(context.Context, BillingMeterCollection) (BillingMeterCollection, error) 5113 bmc BillingMeterCollection 5114} 5115 5116// NextWithContext advances to the next page of values. If there was an error making 5117// the request the page does not advance and the error is returned. 5118func (page *BillingMeterCollectionPage) NextWithContext(ctx context.Context) (err error) { 5119 if tracing.IsEnabled() { 5120 ctx = tracing.StartSpan(ctx, fqdn+"/BillingMeterCollectionPage.NextWithContext") 5121 defer func() { 5122 sc := -1 5123 if page.Response().Response.Response != nil { 5124 sc = page.Response().Response.Response.StatusCode 5125 } 5126 tracing.EndSpan(ctx, sc, err) 5127 }() 5128 } 5129 next, err := page.fn(ctx, page.bmc) 5130 if err != nil { 5131 return err 5132 } 5133 page.bmc = next 5134 return nil 5135} 5136 5137// Next advances to the next page of values. If there was an error making 5138// the request the page does not advance and the error is returned. 5139// Deprecated: Use NextWithContext() instead. 5140func (page *BillingMeterCollectionPage) Next() error { 5141 return page.NextWithContext(context.Background()) 5142} 5143 5144// NotDone returns true if the page enumeration should be started or is not yet complete. 5145func (page BillingMeterCollectionPage) NotDone() bool { 5146 return !page.bmc.IsEmpty() 5147} 5148 5149// Response returns the raw server response from the last page request. 5150func (page BillingMeterCollectionPage) Response() BillingMeterCollection { 5151 return page.bmc 5152} 5153 5154// Values returns the slice of values for the current page or nil if there are no values. 5155func (page BillingMeterCollectionPage) Values() []BillingMeter { 5156 if page.bmc.IsEmpty() { 5157 return nil 5158 } 5159 return *page.bmc.Value 5160} 5161 5162// Creates a new instance of the BillingMeterCollectionPage type. 5163func NewBillingMeterCollectionPage(getNextPage func(context.Context, BillingMeterCollection) (BillingMeterCollection, error)) BillingMeterCollectionPage { 5164 return BillingMeterCollectionPage{fn: getNextPage} 5165} 5166 5167// BillingMeterProperties billingMeter resource specific properties 5168type BillingMeterProperties struct { 5169 // MeterID - Meter GUID onboarded in Commerce 5170 MeterID *string `json:"meterId,omitempty"` 5171 // BillingLocation - Azure Location of billable resource 5172 BillingLocation *string `json:"billingLocation,omitempty"` 5173 // ShortName - Short Name from App Service Azure pricing Page 5174 ShortName *string `json:"shortName,omitempty"` 5175 // FriendlyName - Friendly name of the meter 5176 FriendlyName *string `json:"friendlyName,omitempty"` 5177 // ResourceType - App Service resource type meter used for 5178 ResourceType *string `json:"resourceType,omitempty"` 5179} 5180 5181// Capability describes the capabilities/features allowed for a specific SKU. 5182type Capability struct { 5183 // Name - Name of the SKU capability. 5184 Name *string `json:"name,omitempty"` 5185 // Value - Value of the SKU capability. 5186 Value *string `json:"value,omitempty"` 5187 // Reason - Reason of the SKU capability. 5188 Reason *string `json:"reason,omitempty"` 5189} 5190 5191// Certificate SSL certificate for an app. 5192type Certificate struct { 5193 autorest.Response `json:"-"` 5194 // CertificateProperties - Certificate resource specific properties 5195 *CertificateProperties `json:"properties,omitempty"` 5196 // ID - READ-ONLY; Resource Id. 5197 ID *string `json:"id,omitempty"` 5198 // Name - READ-ONLY; Resource Name. 5199 Name *string `json:"name,omitempty"` 5200 // Kind - Kind of resource. 5201 Kind *string `json:"kind,omitempty"` 5202 // Location - Resource Location. 5203 Location *string `json:"location,omitempty"` 5204 // Type - READ-ONLY; Resource type. 5205 Type *string `json:"type,omitempty"` 5206 // Tags - Resource tags. 5207 Tags map[string]*string `json:"tags"` 5208} 5209 5210// MarshalJSON is the custom marshaler for Certificate. 5211func (c Certificate) MarshalJSON() ([]byte, error) { 5212 objectMap := make(map[string]interface{}) 5213 if c.CertificateProperties != nil { 5214 objectMap["properties"] = c.CertificateProperties 5215 } 5216 if c.Kind != nil { 5217 objectMap["kind"] = c.Kind 5218 } 5219 if c.Location != nil { 5220 objectMap["location"] = c.Location 5221 } 5222 if c.Tags != nil { 5223 objectMap["tags"] = c.Tags 5224 } 5225 return json.Marshal(objectMap) 5226} 5227 5228// UnmarshalJSON is the custom unmarshaler for Certificate struct. 5229func (c *Certificate) UnmarshalJSON(body []byte) error { 5230 var m map[string]*json.RawMessage 5231 err := json.Unmarshal(body, &m) 5232 if err != nil { 5233 return err 5234 } 5235 for k, v := range m { 5236 switch k { 5237 case "properties": 5238 if v != nil { 5239 var certificateProperties CertificateProperties 5240 err = json.Unmarshal(*v, &certificateProperties) 5241 if err != nil { 5242 return err 5243 } 5244 c.CertificateProperties = &certificateProperties 5245 } 5246 case "id": 5247 if v != nil { 5248 var ID string 5249 err = json.Unmarshal(*v, &ID) 5250 if err != nil { 5251 return err 5252 } 5253 c.ID = &ID 5254 } 5255 case "name": 5256 if v != nil { 5257 var name string 5258 err = json.Unmarshal(*v, &name) 5259 if err != nil { 5260 return err 5261 } 5262 c.Name = &name 5263 } 5264 case "kind": 5265 if v != nil { 5266 var kind string 5267 err = json.Unmarshal(*v, &kind) 5268 if err != nil { 5269 return err 5270 } 5271 c.Kind = &kind 5272 } 5273 case "location": 5274 if v != nil { 5275 var location string 5276 err = json.Unmarshal(*v, &location) 5277 if err != nil { 5278 return err 5279 } 5280 c.Location = &location 5281 } 5282 case "type": 5283 if v != nil { 5284 var typeVar string 5285 err = json.Unmarshal(*v, &typeVar) 5286 if err != nil { 5287 return err 5288 } 5289 c.Type = &typeVar 5290 } 5291 case "tags": 5292 if v != nil { 5293 var tags map[string]*string 5294 err = json.Unmarshal(*v, &tags) 5295 if err != nil { 5296 return err 5297 } 5298 c.Tags = tags 5299 } 5300 } 5301 } 5302 5303 return nil 5304} 5305 5306// CertificateCollection collection of certificates. 5307type CertificateCollection struct { 5308 autorest.Response `json:"-"` 5309 // Value - Collection of resources. 5310 Value *[]Certificate `json:"value,omitempty"` 5311 // NextLink - READ-ONLY; Link to next page of resources. 5312 NextLink *string `json:"nextLink,omitempty"` 5313} 5314 5315// CertificateCollectionIterator provides access to a complete listing of Certificate values. 5316type CertificateCollectionIterator struct { 5317 i int 5318 page CertificateCollectionPage 5319} 5320 5321// NextWithContext advances to the next value. If there was an error making 5322// the request the iterator does not advance and the error is returned. 5323func (iter *CertificateCollectionIterator) NextWithContext(ctx context.Context) (err error) { 5324 if tracing.IsEnabled() { 5325 ctx = tracing.StartSpan(ctx, fqdn+"/CertificateCollectionIterator.NextWithContext") 5326 defer func() { 5327 sc := -1 5328 if iter.Response().Response.Response != nil { 5329 sc = iter.Response().Response.Response.StatusCode 5330 } 5331 tracing.EndSpan(ctx, sc, err) 5332 }() 5333 } 5334 iter.i++ 5335 if iter.i < len(iter.page.Values()) { 5336 return nil 5337 } 5338 err = iter.page.NextWithContext(ctx) 5339 if err != nil { 5340 iter.i-- 5341 return err 5342 } 5343 iter.i = 0 5344 return nil 5345} 5346 5347// Next advances to the next value. If there was an error making 5348// the request the iterator does not advance and the error is returned. 5349// Deprecated: Use NextWithContext() instead. 5350func (iter *CertificateCollectionIterator) Next() error { 5351 return iter.NextWithContext(context.Background()) 5352} 5353 5354// NotDone returns true if the enumeration should be started or is not yet complete. 5355func (iter CertificateCollectionIterator) NotDone() bool { 5356 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 5357} 5358 5359// Response returns the raw server response from the last page request. 5360func (iter CertificateCollectionIterator) Response() CertificateCollection { 5361 return iter.page.Response() 5362} 5363 5364// Value returns the current value or a zero-initialized value if the 5365// iterator has advanced beyond the end of the collection. 5366func (iter CertificateCollectionIterator) Value() Certificate { 5367 if !iter.page.NotDone() { 5368 return Certificate{} 5369 } 5370 return iter.page.Values()[iter.i] 5371} 5372 5373// Creates a new instance of the CertificateCollectionIterator type. 5374func NewCertificateCollectionIterator(page CertificateCollectionPage) CertificateCollectionIterator { 5375 return CertificateCollectionIterator{page: page} 5376} 5377 5378// IsEmpty returns true if the ListResult contains no values. 5379func (cc CertificateCollection) IsEmpty() bool { 5380 return cc.Value == nil || len(*cc.Value) == 0 5381} 5382 5383// certificateCollectionPreparer prepares a request to retrieve the next set of results. 5384// It returns nil if no more results exist. 5385func (cc CertificateCollection) certificateCollectionPreparer(ctx context.Context) (*http.Request, error) { 5386 if cc.NextLink == nil || len(to.String(cc.NextLink)) < 1 { 5387 return nil, nil 5388 } 5389 return autorest.Prepare((&http.Request{}).WithContext(ctx), 5390 autorest.AsJSON(), 5391 autorest.AsGet(), 5392 autorest.WithBaseURL(to.String(cc.NextLink))) 5393} 5394 5395// CertificateCollectionPage contains a page of Certificate values. 5396type CertificateCollectionPage struct { 5397 fn func(context.Context, CertificateCollection) (CertificateCollection, error) 5398 cc CertificateCollection 5399} 5400 5401// NextWithContext advances to the next page of values. If there was an error making 5402// the request the page does not advance and the error is returned. 5403func (page *CertificateCollectionPage) NextWithContext(ctx context.Context) (err error) { 5404 if tracing.IsEnabled() { 5405 ctx = tracing.StartSpan(ctx, fqdn+"/CertificateCollectionPage.NextWithContext") 5406 defer func() { 5407 sc := -1 5408 if page.Response().Response.Response != nil { 5409 sc = page.Response().Response.Response.StatusCode 5410 } 5411 tracing.EndSpan(ctx, sc, err) 5412 }() 5413 } 5414 next, err := page.fn(ctx, page.cc) 5415 if err != nil { 5416 return err 5417 } 5418 page.cc = next 5419 return nil 5420} 5421 5422// Next advances to the next page of values. If there was an error making 5423// the request the page does not advance and the error is returned. 5424// Deprecated: Use NextWithContext() instead. 5425func (page *CertificateCollectionPage) Next() error { 5426 return page.NextWithContext(context.Background()) 5427} 5428 5429// NotDone returns true if the page enumeration should be started or is not yet complete. 5430func (page CertificateCollectionPage) NotDone() bool { 5431 return !page.cc.IsEmpty() 5432} 5433 5434// Response returns the raw server response from the last page request. 5435func (page CertificateCollectionPage) Response() CertificateCollection { 5436 return page.cc 5437} 5438 5439// Values returns the slice of values for the current page or nil if there are no values. 5440func (page CertificateCollectionPage) Values() []Certificate { 5441 if page.cc.IsEmpty() { 5442 return nil 5443 } 5444 return *page.cc.Value 5445} 5446 5447// Creates a new instance of the CertificateCollectionPage type. 5448func NewCertificateCollectionPage(getNextPage func(context.Context, CertificateCollection) (CertificateCollection, error)) CertificateCollectionPage { 5449 return CertificateCollectionPage{fn: getNextPage} 5450} 5451 5452// CertificateDetails SSL certificate details. 5453type CertificateDetails struct { 5454 // Version - READ-ONLY; Certificate Version. 5455 Version *int32 `json:"version,omitempty"` 5456 // SerialNumber - READ-ONLY; Certificate Serial Number. 5457 SerialNumber *string `json:"serialNumber,omitempty"` 5458 // Thumbprint - READ-ONLY; Certificate Thumbprint. 5459 Thumbprint *string `json:"thumbprint,omitempty"` 5460 // Subject - READ-ONLY; Certificate Subject. 5461 Subject *string `json:"subject,omitempty"` 5462 // NotBefore - READ-ONLY; Date Certificate is valid from. 5463 NotBefore *date.Time `json:"notBefore,omitempty"` 5464 // NotAfter - READ-ONLY; Date Certificate is valid to. 5465 NotAfter *date.Time `json:"notAfter,omitempty"` 5466 // SignatureAlgorithm - READ-ONLY; Certificate Signature algorithm. 5467 SignatureAlgorithm *string `json:"signatureAlgorithm,omitempty"` 5468 // Issuer - READ-ONLY; Certificate Issuer. 5469 Issuer *string `json:"issuer,omitempty"` 5470 // RawData - READ-ONLY; Raw certificate data. 5471 RawData *string `json:"rawData,omitempty"` 5472} 5473 5474// CertificateEmail SSL certificate email. 5475type CertificateEmail struct { 5476 // CertificateEmailProperties - CertificateEmail resource specific properties 5477 *CertificateEmailProperties `json:"properties,omitempty"` 5478 // ID - READ-ONLY; Resource Id. 5479 ID *string `json:"id,omitempty"` 5480 // Name - READ-ONLY; Resource Name. 5481 Name *string `json:"name,omitempty"` 5482 // Kind - Kind of resource. 5483 Kind *string `json:"kind,omitempty"` 5484 // Type - READ-ONLY; Resource type. 5485 Type *string `json:"type,omitempty"` 5486} 5487 5488// MarshalJSON is the custom marshaler for CertificateEmail. 5489func (ce CertificateEmail) MarshalJSON() ([]byte, error) { 5490 objectMap := make(map[string]interface{}) 5491 if ce.CertificateEmailProperties != nil { 5492 objectMap["properties"] = ce.CertificateEmailProperties 5493 } 5494 if ce.Kind != nil { 5495 objectMap["kind"] = ce.Kind 5496 } 5497 return json.Marshal(objectMap) 5498} 5499 5500// UnmarshalJSON is the custom unmarshaler for CertificateEmail struct. 5501func (ce *CertificateEmail) UnmarshalJSON(body []byte) error { 5502 var m map[string]*json.RawMessage 5503 err := json.Unmarshal(body, &m) 5504 if err != nil { 5505 return err 5506 } 5507 for k, v := range m { 5508 switch k { 5509 case "properties": 5510 if v != nil { 5511 var certificateEmailProperties CertificateEmailProperties 5512 err = json.Unmarshal(*v, &certificateEmailProperties) 5513 if err != nil { 5514 return err 5515 } 5516 ce.CertificateEmailProperties = &certificateEmailProperties 5517 } 5518 case "id": 5519 if v != nil { 5520 var ID string 5521 err = json.Unmarshal(*v, &ID) 5522 if err != nil { 5523 return err 5524 } 5525 ce.ID = &ID 5526 } 5527 case "name": 5528 if v != nil { 5529 var name string 5530 err = json.Unmarshal(*v, &name) 5531 if err != nil { 5532 return err 5533 } 5534 ce.Name = &name 5535 } 5536 case "kind": 5537 if v != nil { 5538 var kind string 5539 err = json.Unmarshal(*v, &kind) 5540 if err != nil { 5541 return err 5542 } 5543 ce.Kind = &kind 5544 } 5545 case "type": 5546 if v != nil { 5547 var typeVar string 5548 err = json.Unmarshal(*v, &typeVar) 5549 if err != nil { 5550 return err 5551 } 5552 ce.Type = &typeVar 5553 } 5554 } 5555 } 5556 5557 return nil 5558} 5559 5560// CertificateEmailProperties certificateEmail resource specific properties 5561type CertificateEmailProperties struct { 5562 // EmailID - Email id. 5563 EmailID *string `json:"emailId,omitempty"` 5564 // TimeStamp - Time stamp. 5565 TimeStamp *date.Time `json:"timeStamp,omitempty"` 5566} 5567 5568// CertificateOrderAction certificate order action. 5569type CertificateOrderAction struct { 5570 // CertificateOrderActionProperties - CertificateOrderAction resource specific properties 5571 *CertificateOrderActionProperties `json:"properties,omitempty"` 5572 // ID - READ-ONLY; Resource Id. 5573 ID *string `json:"id,omitempty"` 5574 // Name - READ-ONLY; Resource Name. 5575 Name *string `json:"name,omitempty"` 5576 // Kind - Kind of resource. 5577 Kind *string `json:"kind,omitempty"` 5578 // Type - READ-ONLY; Resource type. 5579 Type *string `json:"type,omitempty"` 5580} 5581 5582// MarshalJSON is the custom marshaler for CertificateOrderAction. 5583func (coa CertificateOrderAction) MarshalJSON() ([]byte, error) { 5584 objectMap := make(map[string]interface{}) 5585 if coa.CertificateOrderActionProperties != nil { 5586 objectMap["properties"] = coa.CertificateOrderActionProperties 5587 } 5588 if coa.Kind != nil { 5589 objectMap["kind"] = coa.Kind 5590 } 5591 return json.Marshal(objectMap) 5592} 5593 5594// UnmarshalJSON is the custom unmarshaler for CertificateOrderAction struct. 5595func (coa *CertificateOrderAction) UnmarshalJSON(body []byte) error { 5596 var m map[string]*json.RawMessage 5597 err := json.Unmarshal(body, &m) 5598 if err != nil { 5599 return err 5600 } 5601 for k, v := range m { 5602 switch k { 5603 case "properties": 5604 if v != nil { 5605 var certificateOrderActionProperties CertificateOrderActionProperties 5606 err = json.Unmarshal(*v, &certificateOrderActionProperties) 5607 if err != nil { 5608 return err 5609 } 5610 coa.CertificateOrderActionProperties = &certificateOrderActionProperties 5611 } 5612 case "id": 5613 if v != nil { 5614 var ID string 5615 err = json.Unmarshal(*v, &ID) 5616 if err != nil { 5617 return err 5618 } 5619 coa.ID = &ID 5620 } 5621 case "name": 5622 if v != nil { 5623 var name string 5624 err = json.Unmarshal(*v, &name) 5625 if err != nil { 5626 return err 5627 } 5628 coa.Name = &name 5629 } 5630 case "kind": 5631 if v != nil { 5632 var kind string 5633 err = json.Unmarshal(*v, &kind) 5634 if err != nil { 5635 return err 5636 } 5637 coa.Kind = &kind 5638 } 5639 case "type": 5640 if v != nil { 5641 var typeVar string 5642 err = json.Unmarshal(*v, &typeVar) 5643 if err != nil { 5644 return err 5645 } 5646 coa.Type = &typeVar 5647 } 5648 } 5649 } 5650 5651 return nil 5652} 5653 5654// CertificateOrderActionProperties certificateOrderAction resource specific properties 5655type CertificateOrderActionProperties struct { 5656 // Type - Action type. Possible values include: 'CertificateIssued', 'CertificateOrderCanceled', 'CertificateOrderCreated', 'CertificateRevoked', 'DomainValidationComplete', 'FraudDetected', 'OrgNameChange', 'OrgValidationComplete', 'SanDrop', 'FraudCleared', 'CertificateExpired', 'CertificateExpirationWarning', 'FraudDocumentationRequired', 'Unknown' 5657 Type CertificateOrderActionType `json:"type,omitempty"` 5658 // CreatedAt - Time at which the certificate action was performed. 5659 CreatedAt *date.Time `json:"createdAt,omitempty"` 5660} 5661 5662// CertificatePatchResource ARM resource for a certificate. 5663type CertificatePatchResource struct { 5664 // CertificatePatchResourceProperties - CertificatePatchResource resource specific properties 5665 *CertificatePatchResourceProperties `json:"properties,omitempty"` 5666 // ID - READ-ONLY; Resource Id. 5667 ID *string `json:"id,omitempty"` 5668 // Name - READ-ONLY; Resource Name. 5669 Name *string `json:"name,omitempty"` 5670 // Kind - Kind of resource. 5671 Kind *string `json:"kind,omitempty"` 5672 // Type - READ-ONLY; Resource type. 5673 Type *string `json:"type,omitempty"` 5674} 5675 5676// MarshalJSON is the custom marshaler for CertificatePatchResource. 5677func (cpr CertificatePatchResource) MarshalJSON() ([]byte, error) { 5678 objectMap := make(map[string]interface{}) 5679 if cpr.CertificatePatchResourceProperties != nil { 5680 objectMap["properties"] = cpr.CertificatePatchResourceProperties 5681 } 5682 if cpr.Kind != nil { 5683 objectMap["kind"] = cpr.Kind 5684 } 5685 return json.Marshal(objectMap) 5686} 5687 5688// UnmarshalJSON is the custom unmarshaler for CertificatePatchResource struct. 5689func (cpr *CertificatePatchResource) UnmarshalJSON(body []byte) error { 5690 var m map[string]*json.RawMessage 5691 err := json.Unmarshal(body, &m) 5692 if err != nil { 5693 return err 5694 } 5695 for k, v := range m { 5696 switch k { 5697 case "properties": 5698 if v != nil { 5699 var certificatePatchResourceProperties CertificatePatchResourceProperties 5700 err = json.Unmarshal(*v, &certificatePatchResourceProperties) 5701 if err != nil { 5702 return err 5703 } 5704 cpr.CertificatePatchResourceProperties = &certificatePatchResourceProperties 5705 } 5706 case "id": 5707 if v != nil { 5708 var ID string 5709 err = json.Unmarshal(*v, &ID) 5710 if err != nil { 5711 return err 5712 } 5713 cpr.ID = &ID 5714 } 5715 case "name": 5716 if v != nil { 5717 var name string 5718 err = json.Unmarshal(*v, &name) 5719 if err != nil { 5720 return err 5721 } 5722 cpr.Name = &name 5723 } 5724 case "kind": 5725 if v != nil { 5726 var kind string 5727 err = json.Unmarshal(*v, &kind) 5728 if err != nil { 5729 return err 5730 } 5731 cpr.Kind = &kind 5732 } 5733 case "type": 5734 if v != nil { 5735 var typeVar string 5736 err = json.Unmarshal(*v, &typeVar) 5737 if err != nil { 5738 return err 5739 } 5740 cpr.Type = &typeVar 5741 } 5742 } 5743 } 5744 5745 return nil 5746} 5747 5748// CertificatePatchResourceProperties certificatePatchResource resource specific properties 5749type CertificatePatchResourceProperties struct { 5750 // FriendlyName - READ-ONLY; Friendly name of the certificate. 5751 FriendlyName *string `json:"friendlyName,omitempty"` 5752 // SubjectName - READ-ONLY; Subject name of the certificate. 5753 SubjectName *string `json:"subjectName,omitempty"` 5754 // HostNames - Host names the certificate applies to. 5755 HostNames *[]string `json:"hostNames,omitempty"` 5756 // PfxBlob - Pfx blob. 5757 PfxBlob *[]byte `json:"pfxBlob,omitempty"` 5758 // SiteName - READ-ONLY; App name. 5759 SiteName *string `json:"siteName,omitempty"` 5760 // SelfLink - READ-ONLY; Self link. 5761 SelfLink *string `json:"selfLink,omitempty"` 5762 // Issuer - READ-ONLY; Certificate issuer. 5763 Issuer *string `json:"issuer,omitempty"` 5764 // IssueDate - READ-ONLY; Certificate issue Date. 5765 IssueDate *date.Time `json:"issueDate,omitempty"` 5766 // ExpirationDate - READ-ONLY; Certificate expiration date. 5767 ExpirationDate *date.Time `json:"expirationDate,omitempty"` 5768 // Password - Certificate password. 5769 Password *string `json:"password,omitempty"` 5770 // Thumbprint - READ-ONLY; Certificate thumbprint. 5771 Thumbprint *string `json:"thumbprint,omitempty"` 5772 // Valid - READ-ONLY; Is the certificate valid?. 5773 Valid *bool `json:"valid,omitempty"` 5774 // CerBlob - READ-ONLY; Raw bytes of .cer file 5775 CerBlob *[]byte `json:"cerBlob,omitempty"` 5776 // PublicKeyHash - READ-ONLY; Public key hash. 5777 PublicKeyHash *string `json:"publicKeyHash,omitempty"` 5778 // HostingEnvironmentProfile - READ-ONLY; Specification for the App Service Environment to use for the certificate. 5779 HostingEnvironmentProfile *HostingEnvironmentProfile `json:"hostingEnvironmentProfile,omitempty"` 5780 // KeyVaultID - Key Vault Csm resource Id. 5781 KeyVaultID *string `json:"keyVaultId,omitempty"` 5782 // KeyVaultSecretName - Key Vault secret name. 5783 KeyVaultSecretName *string `json:"keyVaultSecretName,omitempty"` 5784 // KeyVaultSecretStatus - READ-ONLY; Status of the Key Vault secret. Possible values include: 'KeyVaultSecretStatusInitialized', 'KeyVaultSecretStatusWaitingOnCertificateOrder', 'KeyVaultSecretStatusSucceeded', 'KeyVaultSecretStatusCertificateOrderFailed', 'KeyVaultSecretStatusOperationNotPermittedOnKeyVault', 'KeyVaultSecretStatusAzureServiceUnauthorizedToAccessKeyVault', 'KeyVaultSecretStatusKeyVaultDoesNotExist', 'KeyVaultSecretStatusKeyVaultSecretDoesNotExist', 'KeyVaultSecretStatusUnknownError', 'KeyVaultSecretStatusExternalPrivateKey', 'KeyVaultSecretStatusUnknown' 5785 KeyVaultSecretStatus KeyVaultSecretStatus `json:"keyVaultSecretStatus,omitempty"` 5786 // GeoRegion - READ-ONLY; Region of the certificate. 5787 GeoRegion *string `json:"geoRegion,omitempty"` 5788 // ServerFarmID - Resource ID of the associated App Service plan, formatted as: "/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}". 5789 ServerFarmID *string `json:"serverFarmId,omitempty"` 5790} 5791 5792// CertificateProperties certificate resource specific properties 5793type CertificateProperties struct { 5794 // FriendlyName - READ-ONLY; Friendly name of the certificate. 5795 FriendlyName *string `json:"friendlyName,omitempty"` 5796 // SubjectName - READ-ONLY; Subject name of the certificate. 5797 SubjectName *string `json:"subjectName,omitempty"` 5798 // HostNames - Host names the certificate applies to. 5799 HostNames *[]string `json:"hostNames,omitempty"` 5800 // PfxBlob - Pfx blob. 5801 PfxBlob *[]byte `json:"pfxBlob,omitempty"` 5802 // SiteName - READ-ONLY; App name. 5803 SiteName *string `json:"siteName,omitempty"` 5804 // SelfLink - READ-ONLY; Self link. 5805 SelfLink *string `json:"selfLink,omitempty"` 5806 // Issuer - READ-ONLY; Certificate issuer. 5807 Issuer *string `json:"issuer,omitempty"` 5808 // IssueDate - READ-ONLY; Certificate issue Date. 5809 IssueDate *date.Time `json:"issueDate,omitempty"` 5810 // ExpirationDate - READ-ONLY; Certificate expiration date. 5811 ExpirationDate *date.Time `json:"expirationDate,omitempty"` 5812 // Password - Certificate password. 5813 Password *string `json:"password,omitempty"` 5814 // Thumbprint - READ-ONLY; Certificate thumbprint. 5815 Thumbprint *string `json:"thumbprint,omitempty"` 5816 // Valid - READ-ONLY; Is the certificate valid?. 5817 Valid *bool `json:"valid,omitempty"` 5818 // CerBlob - READ-ONLY; Raw bytes of .cer file 5819 CerBlob *[]byte `json:"cerBlob,omitempty"` 5820 // PublicKeyHash - READ-ONLY; Public key hash. 5821 PublicKeyHash *string `json:"publicKeyHash,omitempty"` 5822 // HostingEnvironmentProfile - READ-ONLY; Specification for the App Service Environment to use for the certificate. 5823 HostingEnvironmentProfile *HostingEnvironmentProfile `json:"hostingEnvironmentProfile,omitempty"` 5824 // KeyVaultID - Key Vault Csm resource Id. 5825 KeyVaultID *string `json:"keyVaultId,omitempty"` 5826 // KeyVaultSecretName - Key Vault secret name. 5827 KeyVaultSecretName *string `json:"keyVaultSecretName,omitempty"` 5828 // KeyVaultSecretStatus - READ-ONLY; Status of the Key Vault secret. Possible values include: 'KeyVaultSecretStatusInitialized', 'KeyVaultSecretStatusWaitingOnCertificateOrder', 'KeyVaultSecretStatusSucceeded', 'KeyVaultSecretStatusCertificateOrderFailed', 'KeyVaultSecretStatusOperationNotPermittedOnKeyVault', 'KeyVaultSecretStatusAzureServiceUnauthorizedToAccessKeyVault', 'KeyVaultSecretStatusKeyVaultDoesNotExist', 'KeyVaultSecretStatusKeyVaultSecretDoesNotExist', 'KeyVaultSecretStatusUnknownError', 'KeyVaultSecretStatusExternalPrivateKey', 'KeyVaultSecretStatusUnknown' 5829 KeyVaultSecretStatus KeyVaultSecretStatus `json:"keyVaultSecretStatus,omitempty"` 5830 // GeoRegion - READ-ONLY; Region of the certificate. 5831 GeoRegion *string `json:"geoRegion,omitempty"` 5832 // ServerFarmID - Resource ID of the associated App Service plan, formatted as: "/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}". 5833 ServerFarmID *string `json:"serverFarmId,omitempty"` 5834} 5835 5836// CloningInfo information needed for cloning operation. 5837type CloningInfo struct { 5838 // CorrelationID - Correlation ID of cloning operation. This ID ties multiple cloning operations 5839 // together to use the same snapshot. 5840 CorrelationID *uuid.UUID `json:"correlationId,omitempty"` 5841 // Overwrite - <code>true</code> to overwrite destination app; otherwise, <code>false</code>. 5842 Overwrite *bool `json:"overwrite,omitempty"` 5843 // CloneCustomHostNames - <code>true</code> to clone custom hostnames from source app; otherwise, <code>false</code>. 5844 CloneCustomHostNames *bool `json:"cloneCustomHostNames,omitempty"` 5845 // CloneSourceControl - <code>true</code> to clone source control from source app; otherwise, <code>false</code>. 5846 CloneSourceControl *bool `json:"cloneSourceControl,omitempty"` 5847 // SourceWebAppID - ARM resource ID of the source app. App resource ID is of the form 5848 // /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName} for production slots and 5849 // /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slotName} for other slots. 5850 SourceWebAppID *string `json:"sourceWebAppId,omitempty"` 5851 // HostingEnvironment - App Service Environment. 5852 HostingEnvironment *string `json:"hostingEnvironment,omitempty"` 5853 // AppSettingsOverrides - Application setting overrides for cloned app. If specified, these settings override the settings cloned 5854 // from source app. Otherwise, application settings from source app are retained. 5855 AppSettingsOverrides map[string]*string `json:"appSettingsOverrides"` 5856 // ConfigureLoadBalancing - <code>true</code> to configure load balancing for source and destination app. 5857 ConfigureLoadBalancing *bool `json:"configureLoadBalancing,omitempty"` 5858 // TrafficManagerProfileID - ARM resource ID of the Traffic Manager profile to use, if it exists. Traffic Manager resource ID is of the form 5859 // /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficManagerProfiles/{profileName}. 5860 TrafficManagerProfileID *string `json:"trafficManagerProfileId,omitempty"` 5861 // TrafficManagerProfileName - Name of Traffic Manager profile to create. This is only needed if Traffic Manager profile does not already exist. 5862 TrafficManagerProfileName *string `json:"trafficManagerProfileName,omitempty"` 5863 // IgnoreQuotas - <code>true</code> if quotas should be ignored; otherwise, <code>false</code>. 5864 IgnoreQuotas *bool `json:"ignoreQuotas,omitempty"` 5865} 5866 5867// MarshalJSON is the custom marshaler for CloningInfo. 5868func (ci CloningInfo) MarshalJSON() ([]byte, error) { 5869 objectMap := make(map[string]interface{}) 5870 if ci.CorrelationID != nil { 5871 objectMap["correlationId"] = ci.CorrelationID 5872 } 5873 if ci.Overwrite != nil { 5874 objectMap["overwrite"] = ci.Overwrite 5875 } 5876 if ci.CloneCustomHostNames != nil { 5877 objectMap["cloneCustomHostNames"] = ci.CloneCustomHostNames 5878 } 5879 if ci.CloneSourceControl != nil { 5880 objectMap["cloneSourceControl"] = ci.CloneSourceControl 5881 } 5882 if ci.SourceWebAppID != nil { 5883 objectMap["sourceWebAppId"] = ci.SourceWebAppID 5884 } 5885 if ci.HostingEnvironment != nil { 5886 objectMap["hostingEnvironment"] = ci.HostingEnvironment 5887 } 5888 if ci.AppSettingsOverrides != nil { 5889 objectMap["appSettingsOverrides"] = ci.AppSettingsOverrides 5890 } 5891 if ci.ConfigureLoadBalancing != nil { 5892 objectMap["configureLoadBalancing"] = ci.ConfigureLoadBalancing 5893 } 5894 if ci.TrafficManagerProfileID != nil { 5895 objectMap["trafficManagerProfileId"] = ci.TrafficManagerProfileID 5896 } 5897 if ci.TrafficManagerProfileName != nil { 5898 objectMap["trafficManagerProfileName"] = ci.TrafficManagerProfileName 5899 } 5900 if ci.IgnoreQuotas != nil { 5901 objectMap["ignoreQuotas"] = ci.IgnoreQuotas 5902 } 5903 return json.Marshal(objectMap) 5904} 5905 5906// ConnectionStringDictionary string dictionary resource. 5907type ConnectionStringDictionary struct { 5908 autorest.Response `json:"-"` 5909 // Properties - Connection strings. 5910 Properties map[string]*ConnStringValueTypePair `json:"properties"` 5911 // ID - READ-ONLY; Resource Id. 5912 ID *string `json:"id,omitempty"` 5913 // Name - READ-ONLY; Resource Name. 5914 Name *string `json:"name,omitempty"` 5915 // Kind - Kind of resource. 5916 Kind *string `json:"kind,omitempty"` 5917 // Type - READ-ONLY; Resource type. 5918 Type *string `json:"type,omitempty"` 5919} 5920 5921// MarshalJSON is the custom marshaler for ConnectionStringDictionary. 5922func (csd ConnectionStringDictionary) MarshalJSON() ([]byte, error) { 5923 objectMap := make(map[string]interface{}) 5924 if csd.Properties != nil { 5925 objectMap["properties"] = csd.Properties 5926 } 5927 if csd.Kind != nil { 5928 objectMap["kind"] = csd.Kind 5929 } 5930 return json.Marshal(objectMap) 5931} 5932 5933// ConnStringInfo database connection string information. 5934type ConnStringInfo struct { 5935 // Name - Name of connection string. 5936 Name *string `json:"name,omitempty"` 5937 // ConnectionString - Connection string value. 5938 ConnectionString *string `json:"connectionString,omitempty"` 5939 // Type - Type of database. Possible values include: 'MySQL', 'SQLServer', 'SQLAzure', 'Custom', 'NotificationHub', 'ServiceBus', 'EventHub', 'APIHub', 'DocDb', 'RedisCache', 'PostgreSQL' 5940 Type ConnectionStringType `json:"type,omitempty"` 5941} 5942 5943// ConnStringValueTypePair database connection string value to type pair. 5944type ConnStringValueTypePair struct { 5945 // Value - Value of pair. 5946 Value *string `json:"value,omitempty"` 5947 // Type - Type of database. Possible values include: 'MySQL', 'SQLServer', 'SQLAzure', 'Custom', 'NotificationHub', 'ServiceBus', 'EventHub', 'APIHub', 'DocDb', 'RedisCache', 'PostgreSQL' 5948 Type ConnectionStringType `json:"type,omitempty"` 5949} 5950 5951// Contact contact information for domain registration. If 'Domain Privacy' option is not selected then the 5952// contact information is made publicly available through the Whois 5953// directories as per ICANN requirements. 5954type Contact struct { 5955 // AddressMailing - Mailing address. 5956 AddressMailing *Address `json:"addressMailing,omitempty"` 5957 // Email - Email address. 5958 Email *string `json:"email,omitempty"` 5959 // Fax - Fax number. 5960 Fax *string `json:"fax,omitempty"` 5961 // JobTitle - Job title. 5962 JobTitle *string `json:"jobTitle,omitempty"` 5963 // NameFirst - First name. 5964 NameFirst *string `json:"nameFirst,omitempty"` 5965 // NameLast - Last name. 5966 NameLast *string `json:"nameLast,omitempty"` 5967 // NameMiddle - Middle name. 5968 NameMiddle *string `json:"nameMiddle,omitempty"` 5969 // Organization - Organization contact belongs to. 5970 Organization *string `json:"organization,omitempty"` 5971 // Phone - Phone number. 5972 Phone *string `json:"phone,omitempty"` 5973} 5974 5975// ContinuousWebJob continuous Web Job Information. 5976type ContinuousWebJob struct { 5977 autorest.Response `json:"-"` 5978 // ContinuousWebJobProperties - ContinuousWebJob resource specific properties 5979 *ContinuousWebJobProperties `json:"properties,omitempty"` 5980 // ID - READ-ONLY; Resource Id. 5981 ID *string `json:"id,omitempty"` 5982 // Name - READ-ONLY; Resource Name. 5983 Name *string `json:"name,omitempty"` 5984 // Kind - Kind of resource. 5985 Kind *string `json:"kind,omitempty"` 5986 // Type - READ-ONLY; Resource type. 5987 Type *string `json:"type,omitempty"` 5988} 5989 5990// MarshalJSON is the custom marshaler for ContinuousWebJob. 5991func (cwj ContinuousWebJob) MarshalJSON() ([]byte, error) { 5992 objectMap := make(map[string]interface{}) 5993 if cwj.ContinuousWebJobProperties != nil { 5994 objectMap["properties"] = cwj.ContinuousWebJobProperties 5995 } 5996 if cwj.Kind != nil { 5997 objectMap["kind"] = cwj.Kind 5998 } 5999 return json.Marshal(objectMap) 6000} 6001 6002// UnmarshalJSON is the custom unmarshaler for ContinuousWebJob struct. 6003func (cwj *ContinuousWebJob) UnmarshalJSON(body []byte) error { 6004 var m map[string]*json.RawMessage 6005 err := json.Unmarshal(body, &m) 6006 if err != nil { 6007 return err 6008 } 6009 for k, v := range m { 6010 switch k { 6011 case "properties": 6012 if v != nil { 6013 var continuousWebJobProperties ContinuousWebJobProperties 6014 err = json.Unmarshal(*v, &continuousWebJobProperties) 6015 if err != nil { 6016 return err 6017 } 6018 cwj.ContinuousWebJobProperties = &continuousWebJobProperties 6019 } 6020 case "id": 6021 if v != nil { 6022 var ID string 6023 err = json.Unmarshal(*v, &ID) 6024 if err != nil { 6025 return err 6026 } 6027 cwj.ID = &ID 6028 } 6029 case "name": 6030 if v != nil { 6031 var name string 6032 err = json.Unmarshal(*v, &name) 6033 if err != nil { 6034 return err 6035 } 6036 cwj.Name = &name 6037 } 6038 case "kind": 6039 if v != nil { 6040 var kind string 6041 err = json.Unmarshal(*v, &kind) 6042 if err != nil { 6043 return err 6044 } 6045 cwj.Kind = &kind 6046 } 6047 case "type": 6048 if v != nil { 6049 var typeVar string 6050 err = json.Unmarshal(*v, &typeVar) 6051 if err != nil { 6052 return err 6053 } 6054 cwj.Type = &typeVar 6055 } 6056 } 6057 } 6058 6059 return nil 6060} 6061 6062// ContinuousWebJobCollection collection of Kudu continuous web job information elements. 6063type ContinuousWebJobCollection struct { 6064 autorest.Response `json:"-"` 6065 // Value - Collection of resources. 6066 Value *[]ContinuousWebJob `json:"value,omitempty"` 6067 // NextLink - Link to next page of resources. 6068 NextLink *string `json:"nextLink,omitempty"` 6069} 6070 6071// ContinuousWebJobCollectionIterator provides access to a complete listing of ContinuousWebJob values. 6072type ContinuousWebJobCollectionIterator struct { 6073 i int 6074 page ContinuousWebJobCollectionPage 6075} 6076 6077// NextWithContext advances to the next value. If there was an error making 6078// the request the iterator does not advance and the error is returned. 6079func (iter *ContinuousWebJobCollectionIterator) NextWithContext(ctx context.Context) (err error) { 6080 if tracing.IsEnabled() { 6081 ctx = tracing.StartSpan(ctx, fqdn+"/ContinuousWebJobCollectionIterator.NextWithContext") 6082 defer func() { 6083 sc := -1 6084 if iter.Response().Response.Response != nil { 6085 sc = iter.Response().Response.Response.StatusCode 6086 } 6087 tracing.EndSpan(ctx, sc, err) 6088 }() 6089 } 6090 iter.i++ 6091 if iter.i < len(iter.page.Values()) { 6092 return nil 6093 } 6094 err = iter.page.NextWithContext(ctx) 6095 if err != nil { 6096 iter.i-- 6097 return err 6098 } 6099 iter.i = 0 6100 return nil 6101} 6102 6103// Next advances to the next value. If there was an error making 6104// the request the iterator does not advance and the error is returned. 6105// Deprecated: Use NextWithContext() instead. 6106func (iter *ContinuousWebJobCollectionIterator) Next() error { 6107 return iter.NextWithContext(context.Background()) 6108} 6109 6110// NotDone returns true if the enumeration should be started or is not yet complete. 6111func (iter ContinuousWebJobCollectionIterator) NotDone() bool { 6112 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 6113} 6114 6115// Response returns the raw server response from the last page request. 6116func (iter ContinuousWebJobCollectionIterator) Response() ContinuousWebJobCollection { 6117 return iter.page.Response() 6118} 6119 6120// Value returns the current value or a zero-initialized value if the 6121// iterator has advanced beyond the end of the collection. 6122func (iter ContinuousWebJobCollectionIterator) Value() ContinuousWebJob { 6123 if !iter.page.NotDone() { 6124 return ContinuousWebJob{} 6125 } 6126 return iter.page.Values()[iter.i] 6127} 6128 6129// Creates a new instance of the ContinuousWebJobCollectionIterator type. 6130func NewContinuousWebJobCollectionIterator(page ContinuousWebJobCollectionPage) ContinuousWebJobCollectionIterator { 6131 return ContinuousWebJobCollectionIterator{page: page} 6132} 6133 6134// IsEmpty returns true if the ListResult contains no values. 6135func (cwjc ContinuousWebJobCollection) IsEmpty() bool { 6136 return cwjc.Value == nil || len(*cwjc.Value) == 0 6137} 6138 6139// continuousWebJobCollectionPreparer prepares a request to retrieve the next set of results. 6140// It returns nil if no more results exist. 6141func (cwjc ContinuousWebJobCollection) continuousWebJobCollectionPreparer(ctx context.Context) (*http.Request, error) { 6142 if cwjc.NextLink == nil || len(to.String(cwjc.NextLink)) < 1 { 6143 return nil, nil 6144 } 6145 return autorest.Prepare((&http.Request{}).WithContext(ctx), 6146 autorest.AsJSON(), 6147 autorest.AsGet(), 6148 autorest.WithBaseURL(to.String(cwjc.NextLink))) 6149} 6150 6151// ContinuousWebJobCollectionPage contains a page of ContinuousWebJob values. 6152type ContinuousWebJobCollectionPage struct { 6153 fn func(context.Context, ContinuousWebJobCollection) (ContinuousWebJobCollection, error) 6154 cwjc ContinuousWebJobCollection 6155} 6156 6157// NextWithContext advances to the next page of values. If there was an error making 6158// the request the page does not advance and the error is returned. 6159func (page *ContinuousWebJobCollectionPage) NextWithContext(ctx context.Context) (err error) { 6160 if tracing.IsEnabled() { 6161 ctx = tracing.StartSpan(ctx, fqdn+"/ContinuousWebJobCollectionPage.NextWithContext") 6162 defer func() { 6163 sc := -1 6164 if page.Response().Response.Response != nil { 6165 sc = page.Response().Response.Response.StatusCode 6166 } 6167 tracing.EndSpan(ctx, sc, err) 6168 }() 6169 } 6170 next, err := page.fn(ctx, page.cwjc) 6171 if err != nil { 6172 return err 6173 } 6174 page.cwjc = next 6175 return nil 6176} 6177 6178// Next advances to the next page of values. If there was an error making 6179// the request the page does not advance and the error is returned. 6180// Deprecated: Use NextWithContext() instead. 6181func (page *ContinuousWebJobCollectionPage) Next() error { 6182 return page.NextWithContext(context.Background()) 6183} 6184 6185// NotDone returns true if the page enumeration should be started or is not yet complete. 6186func (page ContinuousWebJobCollectionPage) NotDone() bool { 6187 return !page.cwjc.IsEmpty() 6188} 6189 6190// Response returns the raw server response from the last page request. 6191func (page ContinuousWebJobCollectionPage) Response() ContinuousWebJobCollection { 6192 return page.cwjc 6193} 6194 6195// Values returns the slice of values for the current page or nil if there are no values. 6196func (page ContinuousWebJobCollectionPage) Values() []ContinuousWebJob { 6197 if page.cwjc.IsEmpty() { 6198 return nil 6199 } 6200 return *page.cwjc.Value 6201} 6202 6203// Creates a new instance of the ContinuousWebJobCollectionPage type. 6204func NewContinuousWebJobCollectionPage(getNextPage func(context.Context, ContinuousWebJobCollection) (ContinuousWebJobCollection, error)) ContinuousWebJobCollectionPage { 6205 return ContinuousWebJobCollectionPage{fn: getNextPage} 6206} 6207 6208// ContinuousWebJobProperties continuousWebJob resource specific properties 6209type ContinuousWebJobProperties struct { 6210 // Status - Job status. Possible values include: 'Initializing', 'Starting', 'Running', 'PendingRestart', 'Stopped' 6211 Status ContinuousWebJobStatus `json:"status,omitempty"` 6212 // DetailedStatus - Detailed status. 6213 DetailedStatus *string `json:"detailedStatus,omitempty"` 6214 // LogURL - Log URL. 6215 LogURL *string `json:"logUrl,omitempty"` 6216 // Name - READ-ONLY; Job name. Used as job identifier in ARM resource URI. 6217 Name *string `json:"name,omitempty"` 6218 // RunCommand - Run command. 6219 RunCommand *string `json:"runCommand,omitempty"` 6220 // URL - Job URL. 6221 URL *string `json:"url,omitempty"` 6222 // ExtraInfoURL - Extra Info URL. 6223 ExtraInfoURL *string `json:"extraInfoUrl,omitempty"` 6224 // JobType - Job type. Possible values include: 'Continuous', 'Triggered' 6225 JobType JobType `json:"jobType,omitempty"` 6226 // Error - Error information. 6227 Error *string `json:"error,omitempty"` 6228 // UsingSdk - Using SDK? 6229 UsingSdk *bool `json:"usingSdk,omitempty"` 6230 // Settings - Job settings. 6231 Settings map[string]interface{} `json:"settings"` 6232} 6233 6234// MarshalJSON is the custom marshaler for ContinuousWebJobProperties. 6235func (cwj ContinuousWebJobProperties) MarshalJSON() ([]byte, error) { 6236 objectMap := make(map[string]interface{}) 6237 if cwj.Status != "" { 6238 objectMap["status"] = cwj.Status 6239 } 6240 if cwj.DetailedStatus != nil { 6241 objectMap["detailedStatus"] = cwj.DetailedStatus 6242 } 6243 if cwj.LogURL != nil { 6244 objectMap["logUrl"] = cwj.LogURL 6245 } 6246 if cwj.RunCommand != nil { 6247 objectMap["runCommand"] = cwj.RunCommand 6248 } 6249 if cwj.URL != nil { 6250 objectMap["url"] = cwj.URL 6251 } 6252 if cwj.ExtraInfoURL != nil { 6253 objectMap["extraInfoUrl"] = cwj.ExtraInfoURL 6254 } 6255 if cwj.JobType != "" { 6256 objectMap["jobType"] = cwj.JobType 6257 } 6258 if cwj.Error != nil { 6259 objectMap["error"] = cwj.Error 6260 } 6261 if cwj.UsingSdk != nil { 6262 objectMap["usingSdk"] = cwj.UsingSdk 6263 } 6264 if cwj.Settings != nil { 6265 objectMap["settings"] = cwj.Settings 6266 } 6267 return json.Marshal(objectMap) 6268} 6269 6270// CorsSettings cross-Origin Resource Sharing (CORS) settings for the app. 6271type CorsSettings struct { 6272 // AllowedOrigins - Gets or sets the list of origins that should be allowed to make cross-origin 6273 // calls (for example: http://example.com:12345). Use "*" to allow all. 6274 AllowedOrigins *[]string `json:"allowedOrigins,omitempty"` 6275} 6276 6277// CsmMoveResourceEnvelope object with a list of the resources that need to be moved and the resource group 6278// they should be moved to. 6279type CsmMoveResourceEnvelope struct { 6280 TargetResourceGroup *string `json:"targetResourceGroup,omitempty"` 6281 Resources *[]string `json:"resources,omitempty"` 6282} 6283 6284// CsmOperationCollection collection of Azure resource manager operation metadata. 6285type CsmOperationCollection struct { 6286 autorest.Response `json:"-"` 6287 // Value - Collection of resources. 6288 Value *[]CsmOperationDescription `json:"value,omitempty"` 6289 // NextLink - READ-ONLY; Link to next page of resources. 6290 NextLink *string `json:"nextLink,omitempty"` 6291} 6292 6293// CsmOperationCollectionIterator provides access to a complete listing of CsmOperationDescription values. 6294type CsmOperationCollectionIterator struct { 6295 i int 6296 page CsmOperationCollectionPage 6297} 6298 6299// NextWithContext advances to the next value. If there was an error making 6300// the request the iterator does not advance and the error is returned. 6301func (iter *CsmOperationCollectionIterator) NextWithContext(ctx context.Context) (err error) { 6302 if tracing.IsEnabled() { 6303 ctx = tracing.StartSpan(ctx, fqdn+"/CsmOperationCollectionIterator.NextWithContext") 6304 defer func() { 6305 sc := -1 6306 if iter.Response().Response.Response != nil { 6307 sc = iter.Response().Response.Response.StatusCode 6308 } 6309 tracing.EndSpan(ctx, sc, err) 6310 }() 6311 } 6312 iter.i++ 6313 if iter.i < len(iter.page.Values()) { 6314 return nil 6315 } 6316 err = iter.page.NextWithContext(ctx) 6317 if err != nil { 6318 iter.i-- 6319 return err 6320 } 6321 iter.i = 0 6322 return nil 6323} 6324 6325// Next advances to the next value. If there was an error making 6326// the request the iterator does not advance and the error is returned. 6327// Deprecated: Use NextWithContext() instead. 6328func (iter *CsmOperationCollectionIterator) Next() error { 6329 return iter.NextWithContext(context.Background()) 6330} 6331 6332// NotDone returns true if the enumeration should be started or is not yet complete. 6333func (iter CsmOperationCollectionIterator) NotDone() bool { 6334 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 6335} 6336 6337// Response returns the raw server response from the last page request. 6338func (iter CsmOperationCollectionIterator) Response() CsmOperationCollection { 6339 return iter.page.Response() 6340} 6341 6342// Value returns the current value or a zero-initialized value if the 6343// iterator has advanced beyond the end of the collection. 6344func (iter CsmOperationCollectionIterator) Value() CsmOperationDescription { 6345 if !iter.page.NotDone() { 6346 return CsmOperationDescription{} 6347 } 6348 return iter.page.Values()[iter.i] 6349} 6350 6351// Creates a new instance of the CsmOperationCollectionIterator type. 6352func NewCsmOperationCollectionIterator(page CsmOperationCollectionPage) CsmOperationCollectionIterator { 6353 return CsmOperationCollectionIterator{page: page} 6354} 6355 6356// IsEmpty returns true if the ListResult contains no values. 6357func (coc CsmOperationCollection) IsEmpty() bool { 6358 return coc.Value == nil || len(*coc.Value) == 0 6359} 6360 6361// csmOperationCollectionPreparer prepares a request to retrieve the next set of results. 6362// It returns nil if no more results exist. 6363func (coc CsmOperationCollection) csmOperationCollectionPreparer(ctx context.Context) (*http.Request, error) { 6364 if coc.NextLink == nil || len(to.String(coc.NextLink)) < 1 { 6365 return nil, nil 6366 } 6367 return autorest.Prepare((&http.Request{}).WithContext(ctx), 6368 autorest.AsJSON(), 6369 autorest.AsGet(), 6370 autorest.WithBaseURL(to.String(coc.NextLink))) 6371} 6372 6373// CsmOperationCollectionPage contains a page of CsmOperationDescription values. 6374type CsmOperationCollectionPage struct { 6375 fn func(context.Context, CsmOperationCollection) (CsmOperationCollection, error) 6376 coc CsmOperationCollection 6377} 6378 6379// NextWithContext advances to the next page of values. If there was an error making 6380// the request the page does not advance and the error is returned. 6381func (page *CsmOperationCollectionPage) NextWithContext(ctx context.Context) (err error) { 6382 if tracing.IsEnabled() { 6383 ctx = tracing.StartSpan(ctx, fqdn+"/CsmOperationCollectionPage.NextWithContext") 6384 defer func() { 6385 sc := -1 6386 if page.Response().Response.Response != nil { 6387 sc = page.Response().Response.Response.StatusCode 6388 } 6389 tracing.EndSpan(ctx, sc, err) 6390 }() 6391 } 6392 next, err := page.fn(ctx, page.coc) 6393 if err != nil { 6394 return err 6395 } 6396 page.coc = next 6397 return nil 6398} 6399 6400// Next advances to the next page of values. If there was an error making 6401// the request the page does not advance and the error is returned. 6402// Deprecated: Use NextWithContext() instead. 6403func (page *CsmOperationCollectionPage) Next() error { 6404 return page.NextWithContext(context.Background()) 6405} 6406 6407// NotDone returns true if the page enumeration should be started or is not yet complete. 6408func (page CsmOperationCollectionPage) NotDone() bool { 6409 return !page.coc.IsEmpty() 6410} 6411 6412// Response returns the raw server response from the last page request. 6413func (page CsmOperationCollectionPage) Response() CsmOperationCollection { 6414 return page.coc 6415} 6416 6417// Values returns the slice of values for the current page or nil if there are no values. 6418func (page CsmOperationCollectionPage) Values() []CsmOperationDescription { 6419 if page.coc.IsEmpty() { 6420 return nil 6421 } 6422 return *page.coc.Value 6423} 6424 6425// Creates a new instance of the CsmOperationCollectionPage type. 6426func NewCsmOperationCollectionPage(getNextPage func(context.Context, CsmOperationCollection) (CsmOperationCollection, error)) CsmOperationCollectionPage { 6427 return CsmOperationCollectionPage{fn: getNextPage} 6428} 6429 6430// CsmOperationDescription description of an operation available for Microsoft.Web resource provider. 6431type CsmOperationDescription struct { 6432 Name *string `json:"name,omitempty"` 6433 Display *CsmOperationDisplay `json:"display,omitempty"` 6434 Origin *string `json:"origin,omitempty"` 6435 Properties *CsmOperationDescriptionProperties `json:"properties,omitempty"` 6436} 6437 6438// CsmOperationDescriptionProperties properties available for a Microsoft.Web resource provider operation. 6439type CsmOperationDescriptionProperties struct { 6440 ServiceSpecification *ServiceSpecification `json:"serviceSpecification,omitempty"` 6441} 6442 6443// CsmOperationDisplay meta data about operation used for display in portal. 6444type CsmOperationDisplay struct { 6445 Provider *string `json:"provider,omitempty"` 6446 Resource *string `json:"resource,omitempty"` 6447 Operation *string `json:"operation,omitempty"` 6448 Description *string `json:"description,omitempty"` 6449} 6450 6451// CsmPublishingProfileOptions publishing options for requested profile. 6452type CsmPublishingProfileOptions struct { 6453 // Format - Name of the format. Valid values are: 6454 // FileZilla3 6455 // WebDeploy -- default 6456 // Ftp. Possible values include: 'FileZilla3', 'WebDeploy', 'Ftp' 6457 Format PublishingProfileFormat `json:"format,omitempty"` 6458} 6459 6460// CsmSlotEntity deployment slot parameters. 6461type CsmSlotEntity struct { 6462 // TargetSlot - Destination deployment slot during swap operation. 6463 TargetSlot *string `json:"targetSlot,omitempty"` 6464 // PreserveVnet - <code>true</code> to preserve Virtual Network to the slot during swap; otherwise, <code>false</code>. 6465 PreserveVnet *bool `json:"preserveVnet,omitempty"` 6466} 6467 6468// CsmUsageQuota usage of the quota resource. 6469type CsmUsageQuota struct { 6470 // Unit - Units of measurement for the quota resource. 6471 Unit *string `json:"unit,omitempty"` 6472 // NextResetTime - Next reset time for the resource counter. 6473 NextResetTime *date.Time `json:"nextResetTime,omitempty"` 6474 // CurrentValue - The current value of the resource counter. 6475 CurrentValue *int64 `json:"currentValue,omitempty"` 6476 // Limit - The resource limit. 6477 Limit *int64 `json:"limit,omitempty"` 6478 // Name - Quota name. 6479 Name *LocalizableString `json:"name,omitempty"` 6480} 6481 6482// CsmUsageQuotaCollection collection of CSM usage quotas. 6483type CsmUsageQuotaCollection struct { 6484 autorest.Response `json:"-"` 6485 // Value - Collection of resources. 6486 Value *[]CsmUsageQuota `json:"value,omitempty"` 6487 // NextLink - READ-ONLY; Link to next page of resources. 6488 NextLink *string `json:"nextLink,omitempty"` 6489} 6490 6491// CsmUsageQuotaCollectionIterator provides access to a complete listing of CsmUsageQuota values. 6492type CsmUsageQuotaCollectionIterator struct { 6493 i int 6494 page CsmUsageQuotaCollectionPage 6495} 6496 6497// NextWithContext advances to the next value. If there was an error making 6498// the request the iterator does not advance and the error is returned. 6499func (iter *CsmUsageQuotaCollectionIterator) NextWithContext(ctx context.Context) (err error) { 6500 if tracing.IsEnabled() { 6501 ctx = tracing.StartSpan(ctx, fqdn+"/CsmUsageQuotaCollectionIterator.NextWithContext") 6502 defer func() { 6503 sc := -1 6504 if iter.Response().Response.Response != nil { 6505 sc = iter.Response().Response.Response.StatusCode 6506 } 6507 tracing.EndSpan(ctx, sc, err) 6508 }() 6509 } 6510 iter.i++ 6511 if iter.i < len(iter.page.Values()) { 6512 return nil 6513 } 6514 err = iter.page.NextWithContext(ctx) 6515 if err != nil { 6516 iter.i-- 6517 return err 6518 } 6519 iter.i = 0 6520 return nil 6521} 6522 6523// Next advances to the next value. If there was an error making 6524// the request the iterator does not advance and the error is returned. 6525// Deprecated: Use NextWithContext() instead. 6526func (iter *CsmUsageQuotaCollectionIterator) Next() error { 6527 return iter.NextWithContext(context.Background()) 6528} 6529 6530// NotDone returns true if the enumeration should be started or is not yet complete. 6531func (iter CsmUsageQuotaCollectionIterator) NotDone() bool { 6532 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 6533} 6534 6535// Response returns the raw server response from the last page request. 6536func (iter CsmUsageQuotaCollectionIterator) Response() CsmUsageQuotaCollection { 6537 return iter.page.Response() 6538} 6539 6540// Value returns the current value or a zero-initialized value if the 6541// iterator has advanced beyond the end of the collection. 6542func (iter CsmUsageQuotaCollectionIterator) Value() CsmUsageQuota { 6543 if !iter.page.NotDone() { 6544 return CsmUsageQuota{} 6545 } 6546 return iter.page.Values()[iter.i] 6547} 6548 6549// Creates a new instance of the CsmUsageQuotaCollectionIterator type. 6550func NewCsmUsageQuotaCollectionIterator(page CsmUsageQuotaCollectionPage) CsmUsageQuotaCollectionIterator { 6551 return CsmUsageQuotaCollectionIterator{page: page} 6552} 6553 6554// IsEmpty returns true if the ListResult contains no values. 6555func (cuqc CsmUsageQuotaCollection) IsEmpty() bool { 6556 return cuqc.Value == nil || len(*cuqc.Value) == 0 6557} 6558 6559// csmUsageQuotaCollectionPreparer prepares a request to retrieve the next set of results. 6560// It returns nil if no more results exist. 6561func (cuqc CsmUsageQuotaCollection) csmUsageQuotaCollectionPreparer(ctx context.Context) (*http.Request, error) { 6562 if cuqc.NextLink == nil || len(to.String(cuqc.NextLink)) < 1 { 6563 return nil, nil 6564 } 6565 return autorest.Prepare((&http.Request{}).WithContext(ctx), 6566 autorest.AsJSON(), 6567 autorest.AsGet(), 6568 autorest.WithBaseURL(to.String(cuqc.NextLink))) 6569} 6570 6571// CsmUsageQuotaCollectionPage contains a page of CsmUsageQuota values. 6572type CsmUsageQuotaCollectionPage struct { 6573 fn func(context.Context, CsmUsageQuotaCollection) (CsmUsageQuotaCollection, error) 6574 cuqc CsmUsageQuotaCollection 6575} 6576 6577// NextWithContext advances to the next page of values. If there was an error making 6578// the request the page does not advance and the error is returned. 6579func (page *CsmUsageQuotaCollectionPage) NextWithContext(ctx context.Context) (err error) { 6580 if tracing.IsEnabled() { 6581 ctx = tracing.StartSpan(ctx, fqdn+"/CsmUsageQuotaCollectionPage.NextWithContext") 6582 defer func() { 6583 sc := -1 6584 if page.Response().Response.Response != nil { 6585 sc = page.Response().Response.Response.StatusCode 6586 } 6587 tracing.EndSpan(ctx, sc, err) 6588 }() 6589 } 6590 next, err := page.fn(ctx, page.cuqc) 6591 if err != nil { 6592 return err 6593 } 6594 page.cuqc = next 6595 return nil 6596} 6597 6598// Next advances to the next page of values. If there was an error making 6599// the request the page does not advance and the error is returned. 6600// Deprecated: Use NextWithContext() instead. 6601func (page *CsmUsageQuotaCollectionPage) Next() error { 6602 return page.NextWithContext(context.Background()) 6603} 6604 6605// NotDone returns true if the page enumeration should be started or is not yet complete. 6606func (page CsmUsageQuotaCollectionPage) NotDone() bool { 6607 return !page.cuqc.IsEmpty() 6608} 6609 6610// Response returns the raw server response from the last page request. 6611func (page CsmUsageQuotaCollectionPage) Response() CsmUsageQuotaCollection { 6612 return page.cuqc 6613} 6614 6615// Values returns the slice of values for the current page or nil if there are no values. 6616func (page CsmUsageQuotaCollectionPage) Values() []CsmUsageQuota { 6617 if page.cuqc.IsEmpty() { 6618 return nil 6619 } 6620 return *page.cuqc.Value 6621} 6622 6623// Creates a new instance of the CsmUsageQuotaCollectionPage type. 6624func NewCsmUsageQuotaCollectionPage(getNextPage func(context.Context, CsmUsageQuotaCollection) (CsmUsageQuotaCollection, error)) CsmUsageQuotaCollectionPage { 6625 return CsmUsageQuotaCollectionPage{fn: getNextPage} 6626} 6627 6628// CustomHostnameAnalysisResult custom domain analysis. 6629type CustomHostnameAnalysisResult struct { 6630 autorest.Response `json:"-"` 6631 // CustomHostnameAnalysisResultProperties - CustomHostnameAnalysisResult resource specific properties 6632 *CustomHostnameAnalysisResultProperties `json:"properties,omitempty"` 6633 // ID - READ-ONLY; Resource Id. 6634 ID *string `json:"id,omitempty"` 6635 // Name - READ-ONLY; Resource Name. 6636 Name *string `json:"name,omitempty"` 6637 // Kind - Kind of resource. 6638 Kind *string `json:"kind,omitempty"` 6639 // Type - READ-ONLY; Resource type. 6640 Type *string `json:"type,omitempty"` 6641} 6642 6643// MarshalJSON is the custom marshaler for CustomHostnameAnalysisResult. 6644func (char CustomHostnameAnalysisResult) MarshalJSON() ([]byte, error) { 6645 objectMap := make(map[string]interface{}) 6646 if char.CustomHostnameAnalysisResultProperties != nil { 6647 objectMap["properties"] = char.CustomHostnameAnalysisResultProperties 6648 } 6649 if char.Kind != nil { 6650 objectMap["kind"] = char.Kind 6651 } 6652 return json.Marshal(objectMap) 6653} 6654 6655// UnmarshalJSON is the custom unmarshaler for CustomHostnameAnalysisResult struct. 6656func (char *CustomHostnameAnalysisResult) UnmarshalJSON(body []byte) error { 6657 var m map[string]*json.RawMessage 6658 err := json.Unmarshal(body, &m) 6659 if err != nil { 6660 return err 6661 } 6662 for k, v := range m { 6663 switch k { 6664 case "properties": 6665 if v != nil { 6666 var customHostnameAnalysisResultProperties CustomHostnameAnalysisResultProperties 6667 err = json.Unmarshal(*v, &customHostnameAnalysisResultProperties) 6668 if err != nil { 6669 return err 6670 } 6671 char.CustomHostnameAnalysisResultProperties = &customHostnameAnalysisResultProperties 6672 } 6673 case "id": 6674 if v != nil { 6675 var ID string 6676 err = json.Unmarshal(*v, &ID) 6677 if err != nil { 6678 return err 6679 } 6680 char.ID = &ID 6681 } 6682 case "name": 6683 if v != nil { 6684 var name string 6685 err = json.Unmarshal(*v, &name) 6686 if err != nil { 6687 return err 6688 } 6689 char.Name = &name 6690 } 6691 case "kind": 6692 if v != nil { 6693 var kind string 6694 err = json.Unmarshal(*v, &kind) 6695 if err != nil { 6696 return err 6697 } 6698 char.Kind = &kind 6699 } 6700 case "type": 6701 if v != nil { 6702 var typeVar string 6703 err = json.Unmarshal(*v, &typeVar) 6704 if err != nil { 6705 return err 6706 } 6707 char.Type = &typeVar 6708 } 6709 } 6710 } 6711 6712 return nil 6713} 6714 6715// CustomHostnameAnalysisResultProperties customHostnameAnalysisResult resource specific properties 6716type CustomHostnameAnalysisResultProperties struct { 6717 // IsHostnameAlreadyVerified - READ-ONLY; <code>true</code> if hostname is already verified; otherwise, <code>false</code>. 6718 IsHostnameAlreadyVerified *bool `json:"isHostnameAlreadyVerified,omitempty"` 6719 // CustomDomainVerificationTest - READ-ONLY; DNS verification test result. Possible values include: 'DNSVerificationTestResultPassed', 'DNSVerificationTestResultFailed', 'DNSVerificationTestResultSkipped' 6720 CustomDomainVerificationTest DNSVerificationTestResult `json:"customDomainVerificationTest,omitempty"` 6721 // CustomDomainVerificationFailureInfo - READ-ONLY; Raw failure information if DNS verification fails. 6722 CustomDomainVerificationFailureInfo *ErrorEntity `json:"customDomainVerificationFailureInfo,omitempty"` 6723 // HasConflictOnScaleUnit - READ-ONLY; <code>true</code> if there is a conflict on a scale unit; otherwise, <code>false</code>. 6724 HasConflictOnScaleUnit *bool `json:"hasConflictOnScaleUnit,omitempty"` 6725 // HasConflictAcrossSubscription - READ-ONLY; <code>true</code> if there is a conflict across subscriptions; otherwise, <code>false</code>. 6726 HasConflictAcrossSubscription *bool `json:"hasConflictAcrossSubscription,omitempty"` 6727 // ConflictingAppResourceID - READ-ONLY; Name of the conflicting app on scale unit if it's within the same subscription. 6728 ConflictingAppResourceID *string `json:"conflictingAppResourceId,omitempty"` 6729 // CNameRecords - CName records controller can see for this hostname. 6730 CNameRecords *[]string `json:"cNameRecords,omitempty"` 6731 // TxtRecords - TXT records controller can see for this hostname. 6732 TxtRecords *[]string `json:"txtRecords,omitempty"` 6733 // ARecords - A records controller can see for this hostname. 6734 ARecords *[]string `json:"aRecords,omitempty"` 6735 // AlternateCNameRecords - Alternate CName records controller can see for this hostname. 6736 AlternateCNameRecords *[]string `json:"alternateCNameRecords,omitempty"` 6737 // AlternateTxtRecords - Alternate TXT records controller can see for this hostname. 6738 AlternateTxtRecords *[]string `json:"alternateTxtRecords,omitempty"` 6739} 6740 6741// DatabaseBackupSetting database backup settings. 6742type DatabaseBackupSetting struct { 6743 // DatabaseType - Database type (e.g. SqlAzure / MySql). Possible values include: 'DatabaseTypeSQLAzure', 'DatabaseTypeMySQL', 'DatabaseTypeLocalMySQL', 'DatabaseTypePostgreSQL' 6744 DatabaseType DatabaseType `json:"databaseType,omitempty"` 6745 Name *string `json:"name,omitempty"` 6746 // ConnectionStringName - Contains a connection string name that is linked to the SiteConfig.ConnectionStrings. 6747 // This is used during restore with overwrite connection strings options. 6748 ConnectionStringName *string `json:"connectionStringName,omitempty"` 6749 // ConnectionString - Contains a connection string to a database which is being backed up or restored. If the restore should happen to a new database, the database name inside is the new one. 6750 ConnectionString *string `json:"connectionString,omitempty"` 6751} 6752 6753// DataSource class representing data source used by the detectors 6754type DataSource struct { 6755 // Instructions - Instructions if any for the data source 6756 Instructions *[]string `json:"instructions,omitempty"` 6757 // DataSourceURI - Datasource Uri Links 6758 DataSourceURI *[]NameValuePair `json:"dataSourceUri,omitempty"` 6759} 6760 6761// DataTableResponseColumn column definition 6762type DataTableResponseColumn struct { 6763 // ColumnName - Name of the column 6764 ColumnName *string `json:"columnName,omitempty"` 6765 // DataType - Data type which looks like 'String' or 'Int32'. 6766 DataType *string `json:"dataType,omitempty"` 6767 // ColumnType - Column Type 6768 ColumnType *string `json:"columnType,omitempty"` 6769} 6770 6771// DataTableResponseObject data Table which defines columns and raw row values 6772type DataTableResponseObject struct { 6773 // TableName - Name of the table 6774 TableName *string `json:"tableName,omitempty"` 6775 // Columns - List of columns with data types 6776 Columns *[]DataTableResponseColumn `json:"columns,omitempty"` 6777 // Rows - Raw row values 6778 Rows *[][]string `json:"rows,omitempty"` 6779} 6780 6781// DefaultErrorResponse app Service error response. 6782type DefaultErrorResponse struct { 6783 // Error - READ-ONLY; Error model. 6784 Error *DefaultErrorResponseError `json:"error,omitempty"` 6785} 6786 6787// DefaultErrorResponseError error model. 6788type DefaultErrorResponseError struct { 6789 // Code - READ-ONLY; Standardized string to programmatically identify the error. 6790 Code *string `json:"code,omitempty"` 6791 // Message - READ-ONLY; Detailed error description and debugging information. 6792 Message *string `json:"message,omitempty"` 6793 // Target - READ-ONLY; Detailed error description and debugging information. 6794 Target *string `json:"target,omitempty"` 6795 Details *[]DefaultErrorResponseErrorDetailsItem `json:"details,omitempty"` 6796 // Innererror - READ-ONLY; More information to debug error. 6797 Innererror *string `json:"innererror,omitempty"` 6798} 6799 6800// DefaultErrorResponseErrorDetailsItem detailed errors. 6801type DefaultErrorResponseErrorDetailsItem struct { 6802 // Code - READ-ONLY; Standardized string to programmatically identify the error. 6803 Code *string `json:"code,omitempty"` 6804 // Message - READ-ONLY; Detailed error description and debugging information. 6805 Message *string `json:"message,omitempty"` 6806 // Target - READ-ONLY; Detailed error description and debugging information. 6807 Target *string `json:"target,omitempty"` 6808} 6809 6810// DeletedSite a deleted app. 6811type DeletedSite struct { 6812 // ID - Numeric id for the deleted site 6813 ID *int32 `json:"id,omitempty"` 6814 // DeletedTimestamp - READ-ONLY; Time in UTC when the app was deleted. 6815 DeletedTimestamp *string `json:"deletedTimestamp,omitempty"` 6816 // Subscription - READ-ONLY; Subscription containing the deleted site 6817 Subscription *string `json:"subscription,omitempty"` 6818 // ResourceGroup - READ-ONLY; ResourceGroup that contained the deleted site 6819 ResourceGroup *string `json:"resourceGroup,omitempty"` 6820 // Name - READ-ONLY; Name of the deleted site 6821 Name *string `json:"name,omitempty"` 6822 // Slot - READ-ONLY; Slot of the deleted site 6823 Slot *string `json:"slot,omitempty"` 6824} 6825 6826// DeletedWebAppCollection collection of deleted apps. 6827type DeletedWebAppCollection struct { 6828 autorest.Response `json:"-"` 6829 // Value - Collection of resources. 6830 Value *[]DeletedSite `json:"value,omitempty"` 6831 // NextLink - READ-ONLY; Link to next page of resources. 6832 NextLink *string `json:"nextLink,omitempty"` 6833} 6834 6835// DeletedWebAppCollectionIterator provides access to a complete listing of DeletedSite values. 6836type DeletedWebAppCollectionIterator struct { 6837 i int 6838 page DeletedWebAppCollectionPage 6839} 6840 6841// NextWithContext advances to the next value. If there was an error making 6842// the request the iterator does not advance and the error is returned. 6843func (iter *DeletedWebAppCollectionIterator) NextWithContext(ctx context.Context) (err error) { 6844 if tracing.IsEnabled() { 6845 ctx = tracing.StartSpan(ctx, fqdn+"/DeletedWebAppCollectionIterator.NextWithContext") 6846 defer func() { 6847 sc := -1 6848 if iter.Response().Response.Response != nil { 6849 sc = iter.Response().Response.Response.StatusCode 6850 } 6851 tracing.EndSpan(ctx, sc, err) 6852 }() 6853 } 6854 iter.i++ 6855 if iter.i < len(iter.page.Values()) { 6856 return nil 6857 } 6858 err = iter.page.NextWithContext(ctx) 6859 if err != nil { 6860 iter.i-- 6861 return err 6862 } 6863 iter.i = 0 6864 return nil 6865} 6866 6867// Next advances to the next value. If there was an error making 6868// the request the iterator does not advance and the error is returned. 6869// Deprecated: Use NextWithContext() instead. 6870func (iter *DeletedWebAppCollectionIterator) Next() error { 6871 return iter.NextWithContext(context.Background()) 6872} 6873 6874// NotDone returns true if the enumeration should be started or is not yet complete. 6875func (iter DeletedWebAppCollectionIterator) NotDone() bool { 6876 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 6877} 6878 6879// Response returns the raw server response from the last page request. 6880func (iter DeletedWebAppCollectionIterator) Response() DeletedWebAppCollection { 6881 return iter.page.Response() 6882} 6883 6884// Value returns the current value or a zero-initialized value if the 6885// iterator has advanced beyond the end of the collection. 6886func (iter DeletedWebAppCollectionIterator) Value() DeletedSite { 6887 if !iter.page.NotDone() { 6888 return DeletedSite{} 6889 } 6890 return iter.page.Values()[iter.i] 6891} 6892 6893// Creates a new instance of the DeletedWebAppCollectionIterator type. 6894func NewDeletedWebAppCollectionIterator(page DeletedWebAppCollectionPage) DeletedWebAppCollectionIterator { 6895 return DeletedWebAppCollectionIterator{page: page} 6896} 6897 6898// IsEmpty returns true if the ListResult contains no values. 6899func (dwac DeletedWebAppCollection) IsEmpty() bool { 6900 return dwac.Value == nil || len(*dwac.Value) == 0 6901} 6902 6903// deletedWebAppCollectionPreparer prepares a request to retrieve the next set of results. 6904// It returns nil if no more results exist. 6905func (dwac DeletedWebAppCollection) deletedWebAppCollectionPreparer(ctx context.Context) (*http.Request, error) { 6906 if dwac.NextLink == nil || len(to.String(dwac.NextLink)) < 1 { 6907 return nil, nil 6908 } 6909 return autorest.Prepare((&http.Request{}).WithContext(ctx), 6910 autorest.AsJSON(), 6911 autorest.AsGet(), 6912 autorest.WithBaseURL(to.String(dwac.NextLink))) 6913} 6914 6915// DeletedWebAppCollectionPage contains a page of DeletedSite values. 6916type DeletedWebAppCollectionPage struct { 6917 fn func(context.Context, DeletedWebAppCollection) (DeletedWebAppCollection, error) 6918 dwac DeletedWebAppCollection 6919} 6920 6921// NextWithContext advances to the next page of values. If there was an error making 6922// the request the page does not advance and the error is returned. 6923func (page *DeletedWebAppCollectionPage) NextWithContext(ctx context.Context) (err error) { 6924 if tracing.IsEnabled() { 6925 ctx = tracing.StartSpan(ctx, fqdn+"/DeletedWebAppCollectionPage.NextWithContext") 6926 defer func() { 6927 sc := -1 6928 if page.Response().Response.Response != nil { 6929 sc = page.Response().Response.Response.StatusCode 6930 } 6931 tracing.EndSpan(ctx, sc, err) 6932 }() 6933 } 6934 next, err := page.fn(ctx, page.dwac) 6935 if err != nil { 6936 return err 6937 } 6938 page.dwac = next 6939 return nil 6940} 6941 6942// Next advances to the next page of values. If there was an error making 6943// the request the page does not advance and the error is returned. 6944// Deprecated: Use NextWithContext() instead. 6945func (page *DeletedWebAppCollectionPage) Next() error { 6946 return page.NextWithContext(context.Background()) 6947} 6948 6949// NotDone returns true if the page enumeration should be started or is not yet complete. 6950func (page DeletedWebAppCollectionPage) NotDone() bool { 6951 return !page.dwac.IsEmpty() 6952} 6953 6954// Response returns the raw server response from the last page request. 6955func (page DeletedWebAppCollectionPage) Response() DeletedWebAppCollection { 6956 return page.dwac 6957} 6958 6959// Values returns the slice of values for the current page or nil if there are no values. 6960func (page DeletedWebAppCollectionPage) Values() []DeletedSite { 6961 if page.dwac.IsEmpty() { 6962 return nil 6963 } 6964 return *page.dwac.Value 6965} 6966 6967// Creates a new instance of the DeletedWebAppCollectionPage type. 6968func NewDeletedWebAppCollectionPage(getNextPage func(context.Context, DeletedWebAppCollection) (DeletedWebAppCollection, error)) DeletedWebAppCollectionPage { 6969 return DeletedWebAppCollectionPage{fn: getNextPage} 6970} 6971 6972// Deployment user credentials used for publishing activity. 6973type Deployment struct { 6974 autorest.Response `json:"-"` 6975 // DeploymentProperties - Deployment resource specific properties 6976 *DeploymentProperties `json:"properties,omitempty"` 6977 // ID - READ-ONLY; Resource Id. 6978 ID *string `json:"id,omitempty"` 6979 // Name - READ-ONLY; Resource Name. 6980 Name *string `json:"name,omitempty"` 6981 // Kind - Kind of resource. 6982 Kind *string `json:"kind,omitempty"` 6983 // Type - READ-ONLY; Resource type. 6984 Type *string `json:"type,omitempty"` 6985} 6986 6987// MarshalJSON is the custom marshaler for Deployment. 6988func (d Deployment) MarshalJSON() ([]byte, error) { 6989 objectMap := make(map[string]interface{}) 6990 if d.DeploymentProperties != nil { 6991 objectMap["properties"] = d.DeploymentProperties 6992 } 6993 if d.Kind != nil { 6994 objectMap["kind"] = d.Kind 6995 } 6996 return json.Marshal(objectMap) 6997} 6998 6999// UnmarshalJSON is the custom unmarshaler for Deployment struct. 7000func (d *Deployment) UnmarshalJSON(body []byte) error { 7001 var m map[string]*json.RawMessage 7002 err := json.Unmarshal(body, &m) 7003 if err != nil { 7004 return err 7005 } 7006 for k, v := range m { 7007 switch k { 7008 case "properties": 7009 if v != nil { 7010 var deploymentProperties DeploymentProperties 7011 err = json.Unmarshal(*v, &deploymentProperties) 7012 if err != nil { 7013 return err 7014 } 7015 d.DeploymentProperties = &deploymentProperties 7016 } 7017 case "id": 7018 if v != nil { 7019 var ID string 7020 err = json.Unmarshal(*v, &ID) 7021 if err != nil { 7022 return err 7023 } 7024 d.ID = &ID 7025 } 7026 case "name": 7027 if v != nil { 7028 var name string 7029 err = json.Unmarshal(*v, &name) 7030 if err != nil { 7031 return err 7032 } 7033 d.Name = &name 7034 } 7035 case "kind": 7036 if v != nil { 7037 var kind string 7038 err = json.Unmarshal(*v, &kind) 7039 if err != nil { 7040 return err 7041 } 7042 d.Kind = &kind 7043 } 7044 case "type": 7045 if v != nil { 7046 var typeVar string 7047 err = json.Unmarshal(*v, &typeVar) 7048 if err != nil { 7049 return err 7050 } 7051 d.Type = &typeVar 7052 } 7053 } 7054 } 7055 7056 return nil 7057} 7058 7059// DeploymentCollection collection of app deployments. 7060type DeploymentCollection struct { 7061 autorest.Response `json:"-"` 7062 // Value - Collection of resources. 7063 Value *[]Deployment `json:"value,omitempty"` 7064 // NextLink - READ-ONLY; Link to next page of resources. 7065 NextLink *string `json:"nextLink,omitempty"` 7066} 7067 7068// DeploymentCollectionIterator provides access to a complete listing of Deployment values. 7069type DeploymentCollectionIterator struct { 7070 i int 7071 page DeploymentCollectionPage 7072} 7073 7074// NextWithContext advances to the next value. If there was an error making 7075// the request the iterator does not advance and the error is returned. 7076func (iter *DeploymentCollectionIterator) NextWithContext(ctx context.Context) (err error) { 7077 if tracing.IsEnabled() { 7078 ctx = tracing.StartSpan(ctx, fqdn+"/DeploymentCollectionIterator.NextWithContext") 7079 defer func() { 7080 sc := -1 7081 if iter.Response().Response.Response != nil { 7082 sc = iter.Response().Response.Response.StatusCode 7083 } 7084 tracing.EndSpan(ctx, sc, err) 7085 }() 7086 } 7087 iter.i++ 7088 if iter.i < len(iter.page.Values()) { 7089 return nil 7090 } 7091 err = iter.page.NextWithContext(ctx) 7092 if err != nil { 7093 iter.i-- 7094 return err 7095 } 7096 iter.i = 0 7097 return nil 7098} 7099 7100// Next advances to the next value. If there was an error making 7101// the request the iterator does not advance and the error is returned. 7102// Deprecated: Use NextWithContext() instead. 7103func (iter *DeploymentCollectionIterator) Next() error { 7104 return iter.NextWithContext(context.Background()) 7105} 7106 7107// NotDone returns true if the enumeration should be started or is not yet complete. 7108func (iter DeploymentCollectionIterator) NotDone() bool { 7109 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 7110} 7111 7112// Response returns the raw server response from the last page request. 7113func (iter DeploymentCollectionIterator) Response() DeploymentCollection { 7114 return iter.page.Response() 7115} 7116 7117// Value returns the current value or a zero-initialized value if the 7118// iterator has advanced beyond the end of the collection. 7119func (iter DeploymentCollectionIterator) Value() Deployment { 7120 if !iter.page.NotDone() { 7121 return Deployment{} 7122 } 7123 return iter.page.Values()[iter.i] 7124} 7125 7126// Creates a new instance of the DeploymentCollectionIterator type. 7127func NewDeploymentCollectionIterator(page DeploymentCollectionPage) DeploymentCollectionIterator { 7128 return DeploymentCollectionIterator{page: page} 7129} 7130 7131// IsEmpty returns true if the ListResult contains no values. 7132func (dc DeploymentCollection) IsEmpty() bool { 7133 return dc.Value == nil || len(*dc.Value) == 0 7134} 7135 7136// deploymentCollectionPreparer prepares a request to retrieve the next set of results. 7137// It returns nil if no more results exist. 7138func (dc DeploymentCollection) deploymentCollectionPreparer(ctx context.Context) (*http.Request, error) { 7139 if dc.NextLink == nil || len(to.String(dc.NextLink)) < 1 { 7140 return nil, nil 7141 } 7142 return autorest.Prepare((&http.Request{}).WithContext(ctx), 7143 autorest.AsJSON(), 7144 autorest.AsGet(), 7145 autorest.WithBaseURL(to.String(dc.NextLink))) 7146} 7147 7148// DeploymentCollectionPage contains a page of Deployment values. 7149type DeploymentCollectionPage struct { 7150 fn func(context.Context, DeploymentCollection) (DeploymentCollection, error) 7151 dc DeploymentCollection 7152} 7153 7154// NextWithContext advances to the next page of values. If there was an error making 7155// the request the page does not advance and the error is returned. 7156func (page *DeploymentCollectionPage) NextWithContext(ctx context.Context) (err error) { 7157 if tracing.IsEnabled() { 7158 ctx = tracing.StartSpan(ctx, fqdn+"/DeploymentCollectionPage.NextWithContext") 7159 defer func() { 7160 sc := -1 7161 if page.Response().Response.Response != nil { 7162 sc = page.Response().Response.Response.StatusCode 7163 } 7164 tracing.EndSpan(ctx, sc, err) 7165 }() 7166 } 7167 next, err := page.fn(ctx, page.dc) 7168 if err != nil { 7169 return err 7170 } 7171 page.dc = next 7172 return nil 7173} 7174 7175// Next advances to the next page of values. If there was an error making 7176// the request the page does not advance and the error is returned. 7177// Deprecated: Use NextWithContext() instead. 7178func (page *DeploymentCollectionPage) Next() error { 7179 return page.NextWithContext(context.Background()) 7180} 7181 7182// NotDone returns true if the page enumeration should be started or is not yet complete. 7183func (page DeploymentCollectionPage) NotDone() bool { 7184 return !page.dc.IsEmpty() 7185} 7186 7187// Response returns the raw server response from the last page request. 7188func (page DeploymentCollectionPage) Response() DeploymentCollection { 7189 return page.dc 7190} 7191 7192// Values returns the slice of values for the current page or nil if there are no values. 7193func (page DeploymentCollectionPage) Values() []Deployment { 7194 if page.dc.IsEmpty() { 7195 return nil 7196 } 7197 return *page.dc.Value 7198} 7199 7200// Creates a new instance of the DeploymentCollectionPage type. 7201func NewDeploymentCollectionPage(getNextPage func(context.Context, DeploymentCollection) (DeploymentCollection, error)) DeploymentCollectionPage { 7202 return DeploymentCollectionPage{fn: getNextPage} 7203} 7204 7205// DeploymentLocations list of available locations (regions or App Service Environments) for 7206// deployment of App Service resources. 7207type DeploymentLocations struct { 7208 autorest.Response `json:"-"` 7209 // Locations - Available regions. 7210 Locations *[]GeoRegion `json:"locations,omitempty"` 7211 // HostingEnvironments - Available App Service Environments with full descriptions of the environments. 7212 HostingEnvironments *[]AppServiceEnvironment `json:"hostingEnvironments,omitempty"` 7213 // HostingEnvironmentDeploymentInfos - Available App Service Environments with basic information. 7214 HostingEnvironmentDeploymentInfos *[]HostingEnvironmentDeploymentInfo `json:"hostingEnvironmentDeploymentInfos,omitempty"` 7215} 7216 7217// DeploymentProperties deployment resource specific properties 7218type DeploymentProperties struct { 7219 // ID - Identifier for deployment. 7220 ID *string `json:"id,omitempty"` 7221 // Status - Deployment status. 7222 Status *int32 `json:"status,omitempty"` 7223 // Message - Details about deployment status. 7224 Message *string `json:"message,omitempty"` 7225 // Author - Who authored the deployment. 7226 Author *string `json:"author,omitempty"` 7227 // Deployer - Who performed the deployment. 7228 Deployer *string `json:"deployer,omitempty"` 7229 // AuthorEmail - Author email. 7230 AuthorEmail *string `json:"authorEmail,omitempty"` 7231 // StartTime - Start time. 7232 StartTime *date.Time `json:"startTime,omitempty"` 7233 // EndTime - End time. 7234 EndTime *date.Time `json:"endTime,omitempty"` 7235 // Active - True if deployment is currently active, false if completed and null if not started. 7236 Active *bool `json:"active,omitempty"` 7237 // Details - Details on deployment. 7238 Details *string `json:"details,omitempty"` 7239} 7240 7241// DetectorAbnormalTimePeriod class representing Abnormal Time Period detected. 7242type DetectorAbnormalTimePeriod struct { 7243 // StartTime - Start time of the correlated event 7244 StartTime *date.Time `json:"startTime,omitempty"` 7245 // EndTime - End time of the correlated event 7246 EndTime *date.Time `json:"endTime,omitempty"` 7247 // Message - Message describing the event 7248 Message *string `json:"message,omitempty"` 7249 // Source - Represents the name of the Detector 7250 Source *string `json:"source,omitempty"` 7251 // Priority - Represents the rank of the Detector 7252 Priority *float64 `json:"priority,omitempty"` 7253 // MetaData - Downtime metadata 7254 MetaData *[][]NameValuePair `json:"metaData,omitempty"` 7255 // Type - Represents the type of the Detector. Possible values include: 'ServiceIncident', 'AppDeployment', 'AppCrash', 'RuntimeIssueDetected', 'AseDeployment', 'UserIssue', 'PlatformIssue', 'Other' 7256 Type IssueType `json:"type,omitempty"` 7257 // Solutions - List of proposed solutions 7258 Solutions *[]Solution `json:"solutions,omitempty"` 7259} 7260 7261// DetectorDefinition class representing detector definition 7262type DetectorDefinition struct { 7263 // DetectorDefinitionProperties - DetectorDefinition resource specific properties 7264 *DetectorDefinitionProperties `json:"properties,omitempty"` 7265 // ID - READ-ONLY; Resource Id. 7266 ID *string `json:"id,omitempty"` 7267 // Name - READ-ONLY; Resource Name. 7268 Name *string `json:"name,omitempty"` 7269 // Kind - Kind of resource. 7270 Kind *string `json:"kind,omitempty"` 7271 // Type - READ-ONLY; Resource type. 7272 Type *string `json:"type,omitempty"` 7273} 7274 7275// MarshalJSON is the custom marshaler for DetectorDefinition. 7276func (dd DetectorDefinition) MarshalJSON() ([]byte, error) { 7277 objectMap := make(map[string]interface{}) 7278 if dd.DetectorDefinitionProperties != nil { 7279 objectMap["properties"] = dd.DetectorDefinitionProperties 7280 } 7281 if dd.Kind != nil { 7282 objectMap["kind"] = dd.Kind 7283 } 7284 return json.Marshal(objectMap) 7285} 7286 7287// UnmarshalJSON is the custom unmarshaler for DetectorDefinition struct. 7288func (dd *DetectorDefinition) UnmarshalJSON(body []byte) error { 7289 var m map[string]*json.RawMessage 7290 err := json.Unmarshal(body, &m) 7291 if err != nil { 7292 return err 7293 } 7294 for k, v := range m { 7295 switch k { 7296 case "properties": 7297 if v != nil { 7298 var detectorDefinitionProperties DetectorDefinitionProperties 7299 err = json.Unmarshal(*v, &detectorDefinitionProperties) 7300 if err != nil { 7301 return err 7302 } 7303 dd.DetectorDefinitionProperties = &detectorDefinitionProperties 7304 } 7305 case "id": 7306 if v != nil { 7307 var ID string 7308 err = json.Unmarshal(*v, &ID) 7309 if err != nil { 7310 return err 7311 } 7312 dd.ID = &ID 7313 } 7314 case "name": 7315 if v != nil { 7316 var name string 7317 err = json.Unmarshal(*v, &name) 7318 if err != nil { 7319 return err 7320 } 7321 dd.Name = &name 7322 } 7323 case "kind": 7324 if v != nil { 7325 var kind string 7326 err = json.Unmarshal(*v, &kind) 7327 if err != nil { 7328 return err 7329 } 7330 dd.Kind = &kind 7331 } 7332 case "type": 7333 if v != nil { 7334 var typeVar string 7335 err = json.Unmarshal(*v, &typeVar) 7336 if err != nil { 7337 return err 7338 } 7339 dd.Type = &typeVar 7340 } 7341 } 7342 } 7343 7344 return nil 7345} 7346 7347// DetectorDefinitionProperties detectorDefinition resource specific properties 7348type DetectorDefinitionProperties struct { 7349 // DisplayName - READ-ONLY; Display name of the detector 7350 DisplayName *string `json:"displayName,omitempty"` 7351 // Description - READ-ONLY; Description of the detector 7352 Description *string `json:"description,omitempty"` 7353 // Rank - READ-ONLY; Detector Rank 7354 Rank *float64 `json:"rank,omitempty"` 7355 // IsEnabled - READ-ONLY; Flag representing whether detector is enabled or not. 7356 IsEnabled *bool `json:"isEnabled,omitempty"` 7357} 7358 7359// DetectorInfo definition of Detector 7360type DetectorInfo struct { 7361 // Description - READ-ONLY; Short description of the detector and its purpose 7362 Description *string `json:"description,omitempty"` 7363 // Category - READ-ONLY; Support Category 7364 Category *string `json:"category,omitempty"` 7365 // SubCategory - READ-ONLY; Support Sub Category 7366 SubCategory *string `json:"subCategory,omitempty"` 7367 // SupportTopicID - READ-ONLY; Support Topic Id 7368 SupportTopicID *string `json:"supportTopicId,omitempty"` 7369} 7370 7371// DetectorResponse class representing Response from Detector 7372type DetectorResponse struct { 7373 autorest.Response `json:"-"` 7374 // DetectorResponseProperties - DetectorResponse resource specific properties 7375 *DetectorResponseProperties `json:"properties,omitempty"` 7376 // ID - READ-ONLY; Resource Id. 7377 ID *string `json:"id,omitempty"` 7378 // Name - READ-ONLY; Resource Name. 7379 Name *string `json:"name,omitempty"` 7380 // Kind - Kind of resource. 7381 Kind *string `json:"kind,omitempty"` 7382 // Type - READ-ONLY; Resource type. 7383 Type *string `json:"type,omitempty"` 7384} 7385 7386// MarshalJSON is the custom marshaler for DetectorResponse. 7387func (dr DetectorResponse) MarshalJSON() ([]byte, error) { 7388 objectMap := make(map[string]interface{}) 7389 if dr.DetectorResponseProperties != nil { 7390 objectMap["properties"] = dr.DetectorResponseProperties 7391 } 7392 if dr.Kind != nil { 7393 objectMap["kind"] = dr.Kind 7394 } 7395 return json.Marshal(objectMap) 7396} 7397 7398// UnmarshalJSON is the custom unmarshaler for DetectorResponse struct. 7399func (dr *DetectorResponse) UnmarshalJSON(body []byte) error { 7400 var m map[string]*json.RawMessage 7401 err := json.Unmarshal(body, &m) 7402 if err != nil { 7403 return err 7404 } 7405 for k, v := range m { 7406 switch k { 7407 case "properties": 7408 if v != nil { 7409 var detectorResponseProperties DetectorResponseProperties 7410 err = json.Unmarshal(*v, &detectorResponseProperties) 7411 if err != nil { 7412 return err 7413 } 7414 dr.DetectorResponseProperties = &detectorResponseProperties 7415 } 7416 case "id": 7417 if v != nil { 7418 var ID string 7419 err = json.Unmarshal(*v, &ID) 7420 if err != nil { 7421 return err 7422 } 7423 dr.ID = &ID 7424 } 7425 case "name": 7426 if v != nil { 7427 var name string 7428 err = json.Unmarshal(*v, &name) 7429 if err != nil { 7430 return err 7431 } 7432 dr.Name = &name 7433 } 7434 case "kind": 7435 if v != nil { 7436 var kind string 7437 err = json.Unmarshal(*v, &kind) 7438 if err != nil { 7439 return err 7440 } 7441 dr.Kind = &kind 7442 } 7443 case "type": 7444 if v != nil { 7445 var typeVar string 7446 err = json.Unmarshal(*v, &typeVar) 7447 if err != nil { 7448 return err 7449 } 7450 dr.Type = &typeVar 7451 } 7452 } 7453 } 7454 7455 return nil 7456} 7457 7458// DetectorResponseCollection collection of detector responses 7459type DetectorResponseCollection struct { 7460 autorest.Response `json:"-"` 7461 // Value - Collection of resources. 7462 Value *[]DetectorResponse `json:"value,omitempty"` 7463 // NextLink - READ-ONLY; Link to next page of resources. 7464 NextLink *string `json:"nextLink,omitempty"` 7465} 7466 7467// DetectorResponseCollectionIterator provides access to a complete listing of DetectorResponse values. 7468type DetectorResponseCollectionIterator struct { 7469 i int 7470 page DetectorResponseCollectionPage 7471} 7472 7473// NextWithContext advances to the next value. If there was an error making 7474// the request the iterator does not advance and the error is returned. 7475func (iter *DetectorResponseCollectionIterator) NextWithContext(ctx context.Context) (err error) { 7476 if tracing.IsEnabled() { 7477 ctx = tracing.StartSpan(ctx, fqdn+"/DetectorResponseCollectionIterator.NextWithContext") 7478 defer func() { 7479 sc := -1 7480 if iter.Response().Response.Response != nil { 7481 sc = iter.Response().Response.Response.StatusCode 7482 } 7483 tracing.EndSpan(ctx, sc, err) 7484 }() 7485 } 7486 iter.i++ 7487 if iter.i < len(iter.page.Values()) { 7488 return nil 7489 } 7490 err = iter.page.NextWithContext(ctx) 7491 if err != nil { 7492 iter.i-- 7493 return err 7494 } 7495 iter.i = 0 7496 return nil 7497} 7498 7499// Next advances to the next value. If there was an error making 7500// the request the iterator does not advance and the error is returned. 7501// Deprecated: Use NextWithContext() instead. 7502func (iter *DetectorResponseCollectionIterator) Next() error { 7503 return iter.NextWithContext(context.Background()) 7504} 7505 7506// NotDone returns true if the enumeration should be started or is not yet complete. 7507func (iter DetectorResponseCollectionIterator) NotDone() bool { 7508 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 7509} 7510 7511// Response returns the raw server response from the last page request. 7512func (iter DetectorResponseCollectionIterator) Response() DetectorResponseCollection { 7513 return iter.page.Response() 7514} 7515 7516// Value returns the current value or a zero-initialized value if the 7517// iterator has advanced beyond the end of the collection. 7518func (iter DetectorResponseCollectionIterator) Value() DetectorResponse { 7519 if !iter.page.NotDone() { 7520 return DetectorResponse{} 7521 } 7522 return iter.page.Values()[iter.i] 7523} 7524 7525// Creates a new instance of the DetectorResponseCollectionIterator type. 7526func NewDetectorResponseCollectionIterator(page DetectorResponseCollectionPage) DetectorResponseCollectionIterator { 7527 return DetectorResponseCollectionIterator{page: page} 7528} 7529 7530// IsEmpty returns true if the ListResult contains no values. 7531func (drc DetectorResponseCollection) IsEmpty() bool { 7532 return drc.Value == nil || len(*drc.Value) == 0 7533} 7534 7535// detectorResponseCollectionPreparer prepares a request to retrieve the next set of results. 7536// It returns nil if no more results exist. 7537func (drc DetectorResponseCollection) detectorResponseCollectionPreparer(ctx context.Context) (*http.Request, error) { 7538 if drc.NextLink == nil || len(to.String(drc.NextLink)) < 1 { 7539 return nil, nil 7540 } 7541 return autorest.Prepare((&http.Request{}).WithContext(ctx), 7542 autorest.AsJSON(), 7543 autorest.AsGet(), 7544 autorest.WithBaseURL(to.String(drc.NextLink))) 7545} 7546 7547// DetectorResponseCollectionPage contains a page of DetectorResponse values. 7548type DetectorResponseCollectionPage struct { 7549 fn func(context.Context, DetectorResponseCollection) (DetectorResponseCollection, error) 7550 drc DetectorResponseCollection 7551} 7552 7553// NextWithContext advances to the next page of values. If there was an error making 7554// the request the page does not advance and the error is returned. 7555func (page *DetectorResponseCollectionPage) NextWithContext(ctx context.Context) (err error) { 7556 if tracing.IsEnabled() { 7557 ctx = tracing.StartSpan(ctx, fqdn+"/DetectorResponseCollectionPage.NextWithContext") 7558 defer func() { 7559 sc := -1 7560 if page.Response().Response.Response != nil { 7561 sc = page.Response().Response.Response.StatusCode 7562 } 7563 tracing.EndSpan(ctx, sc, err) 7564 }() 7565 } 7566 next, err := page.fn(ctx, page.drc) 7567 if err != nil { 7568 return err 7569 } 7570 page.drc = next 7571 return nil 7572} 7573 7574// Next advances to the next page of values. If there was an error making 7575// the request the page does not advance and the error is returned. 7576// Deprecated: Use NextWithContext() instead. 7577func (page *DetectorResponseCollectionPage) Next() error { 7578 return page.NextWithContext(context.Background()) 7579} 7580 7581// NotDone returns true if the page enumeration should be started or is not yet complete. 7582func (page DetectorResponseCollectionPage) NotDone() bool { 7583 return !page.drc.IsEmpty() 7584} 7585 7586// Response returns the raw server response from the last page request. 7587func (page DetectorResponseCollectionPage) Response() DetectorResponseCollection { 7588 return page.drc 7589} 7590 7591// Values returns the slice of values for the current page or nil if there are no values. 7592func (page DetectorResponseCollectionPage) Values() []DetectorResponse { 7593 if page.drc.IsEmpty() { 7594 return nil 7595 } 7596 return *page.drc.Value 7597} 7598 7599// Creates a new instance of the DetectorResponseCollectionPage type. 7600func NewDetectorResponseCollectionPage(getNextPage func(context.Context, DetectorResponseCollection) (DetectorResponseCollection, error)) DetectorResponseCollectionPage { 7601 return DetectorResponseCollectionPage{fn: getNextPage} 7602} 7603 7604// DetectorResponseProperties detectorResponse resource specific properties 7605type DetectorResponseProperties struct { 7606 // Metadata - metadata for the detector 7607 Metadata *DetectorInfo `json:"metadata,omitempty"` 7608 // Dataset - Data Set 7609 Dataset *[]DiagnosticData `json:"dataset,omitempty"` 7610} 7611 7612// DiagnosticAnalysis class representing a diagnostic analysis done on an application 7613type DiagnosticAnalysis struct { 7614 autorest.Response `json:"-"` 7615 // DiagnosticAnalysisProperties - DiagnosticAnalysis resource specific properties 7616 *DiagnosticAnalysisProperties `json:"properties,omitempty"` 7617 // ID - READ-ONLY; Resource Id. 7618 ID *string `json:"id,omitempty"` 7619 // Name - READ-ONLY; Resource Name. 7620 Name *string `json:"name,omitempty"` 7621 // Kind - Kind of resource. 7622 Kind *string `json:"kind,omitempty"` 7623 // Type - READ-ONLY; Resource type. 7624 Type *string `json:"type,omitempty"` 7625} 7626 7627// MarshalJSON is the custom marshaler for DiagnosticAnalysis. 7628func (da DiagnosticAnalysis) MarshalJSON() ([]byte, error) { 7629 objectMap := make(map[string]interface{}) 7630 if da.DiagnosticAnalysisProperties != nil { 7631 objectMap["properties"] = da.DiagnosticAnalysisProperties 7632 } 7633 if da.Kind != nil { 7634 objectMap["kind"] = da.Kind 7635 } 7636 return json.Marshal(objectMap) 7637} 7638 7639// UnmarshalJSON is the custom unmarshaler for DiagnosticAnalysis struct. 7640func (da *DiagnosticAnalysis) UnmarshalJSON(body []byte) error { 7641 var m map[string]*json.RawMessage 7642 err := json.Unmarshal(body, &m) 7643 if err != nil { 7644 return err 7645 } 7646 for k, v := range m { 7647 switch k { 7648 case "properties": 7649 if v != nil { 7650 var diagnosticAnalysisProperties DiagnosticAnalysisProperties 7651 err = json.Unmarshal(*v, &diagnosticAnalysisProperties) 7652 if err != nil { 7653 return err 7654 } 7655 da.DiagnosticAnalysisProperties = &diagnosticAnalysisProperties 7656 } 7657 case "id": 7658 if v != nil { 7659 var ID string 7660 err = json.Unmarshal(*v, &ID) 7661 if err != nil { 7662 return err 7663 } 7664 da.ID = &ID 7665 } 7666 case "name": 7667 if v != nil { 7668 var name string 7669 err = json.Unmarshal(*v, &name) 7670 if err != nil { 7671 return err 7672 } 7673 da.Name = &name 7674 } 7675 case "kind": 7676 if v != nil { 7677 var kind string 7678 err = json.Unmarshal(*v, &kind) 7679 if err != nil { 7680 return err 7681 } 7682 da.Kind = &kind 7683 } 7684 case "type": 7685 if v != nil { 7686 var typeVar string 7687 err = json.Unmarshal(*v, &typeVar) 7688 if err != nil { 7689 return err 7690 } 7691 da.Type = &typeVar 7692 } 7693 } 7694 } 7695 7696 return nil 7697} 7698 7699// DiagnosticAnalysisCollection collection of Diagnostic Analyses 7700type DiagnosticAnalysisCollection struct { 7701 autorest.Response `json:"-"` 7702 // Value - Collection of resources. 7703 Value *[]AnalysisDefinition `json:"value,omitempty"` 7704 // NextLink - READ-ONLY; Link to next page of resources. 7705 NextLink *string `json:"nextLink,omitempty"` 7706} 7707 7708// DiagnosticAnalysisCollectionIterator provides access to a complete listing of AnalysisDefinition values. 7709type DiagnosticAnalysisCollectionIterator struct { 7710 i int 7711 page DiagnosticAnalysisCollectionPage 7712} 7713 7714// NextWithContext advances to the next value. If there was an error making 7715// the request the iterator does not advance and the error is returned. 7716func (iter *DiagnosticAnalysisCollectionIterator) NextWithContext(ctx context.Context) (err error) { 7717 if tracing.IsEnabled() { 7718 ctx = tracing.StartSpan(ctx, fqdn+"/DiagnosticAnalysisCollectionIterator.NextWithContext") 7719 defer func() { 7720 sc := -1 7721 if iter.Response().Response.Response != nil { 7722 sc = iter.Response().Response.Response.StatusCode 7723 } 7724 tracing.EndSpan(ctx, sc, err) 7725 }() 7726 } 7727 iter.i++ 7728 if iter.i < len(iter.page.Values()) { 7729 return nil 7730 } 7731 err = iter.page.NextWithContext(ctx) 7732 if err != nil { 7733 iter.i-- 7734 return err 7735 } 7736 iter.i = 0 7737 return nil 7738} 7739 7740// Next advances to the next value. If there was an error making 7741// the request the iterator does not advance and the error is returned. 7742// Deprecated: Use NextWithContext() instead. 7743func (iter *DiagnosticAnalysisCollectionIterator) Next() error { 7744 return iter.NextWithContext(context.Background()) 7745} 7746 7747// NotDone returns true if the enumeration should be started or is not yet complete. 7748func (iter DiagnosticAnalysisCollectionIterator) NotDone() bool { 7749 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 7750} 7751 7752// Response returns the raw server response from the last page request. 7753func (iter DiagnosticAnalysisCollectionIterator) Response() DiagnosticAnalysisCollection { 7754 return iter.page.Response() 7755} 7756 7757// Value returns the current value or a zero-initialized value if the 7758// iterator has advanced beyond the end of the collection. 7759func (iter DiagnosticAnalysisCollectionIterator) Value() AnalysisDefinition { 7760 if !iter.page.NotDone() { 7761 return AnalysisDefinition{} 7762 } 7763 return iter.page.Values()[iter.i] 7764} 7765 7766// Creates a new instance of the DiagnosticAnalysisCollectionIterator type. 7767func NewDiagnosticAnalysisCollectionIterator(page DiagnosticAnalysisCollectionPage) DiagnosticAnalysisCollectionIterator { 7768 return DiagnosticAnalysisCollectionIterator{page: page} 7769} 7770 7771// IsEmpty returns true if the ListResult contains no values. 7772func (dac DiagnosticAnalysisCollection) IsEmpty() bool { 7773 return dac.Value == nil || len(*dac.Value) == 0 7774} 7775 7776// diagnosticAnalysisCollectionPreparer prepares a request to retrieve the next set of results. 7777// It returns nil if no more results exist. 7778func (dac DiagnosticAnalysisCollection) diagnosticAnalysisCollectionPreparer(ctx context.Context) (*http.Request, error) { 7779 if dac.NextLink == nil || len(to.String(dac.NextLink)) < 1 { 7780 return nil, nil 7781 } 7782 return autorest.Prepare((&http.Request{}).WithContext(ctx), 7783 autorest.AsJSON(), 7784 autorest.AsGet(), 7785 autorest.WithBaseURL(to.String(dac.NextLink))) 7786} 7787 7788// DiagnosticAnalysisCollectionPage contains a page of AnalysisDefinition values. 7789type DiagnosticAnalysisCollectionPage struct { 7790 fn func(context.Context, DiagnosticAnalysisCollection) (DiagnosticAnalysisCollection, error) 7791 dac DiagnosticAnalysisCollection 7792} 7793 7794// NextWithContext advances to the next page of values. If there was an error making 7795// the request the page does not advance and the error is returned. 7796func (page *DiagnosticAnalysisCollectionPage) NextWithContext(ctx context.Context) (err error) { 7797 if tracing.IsEnabled() { 7798 ctx = tracing.StartSpan(ctx, fqdn+"/DiagnosticAnalysisCollectionPage.NextWithContext") 7799 defer func() { 7800 sc := -1 7801 if page.Response().Response.Response != nil { 7802 sc = page.Response().Response.Response.StatusCode 7803 } 7804 tracing.EndSpan(ctx, sc, err) 7805 }() 7806 } 7807 next, err := page.fn(ctx, page.dac) 7808 if err != nil { 7809 return err 7810 } 7811 page.dac = next 7812 return nil 7813} 7814 7815// Next advances to the next page of values. If there was an error making 7816// the request the page does not advance and the error is returned. 7817// Deprecated: Use NextWithContext() instead. 7818func (page *DiagnosticAnalysisCollectionPage) Next() error { 7819 return page.NextWithContext(context.Background()) 7820} 7821 7822// NotDone returns true if the page enumeration should be started or is not yet complete. 7823func (page DiagnosticAnalysisCollectionPage) NotDone() bool { 7824 return !page.dac.IsEmpty() 7825} 7826 7827// Response returns the raw server response from the last page request. 7828func (page DiagnosticAnalysisCollectionPage) Response() DiagnosticAnalysisCollection { 7829 return page.dac 7830} 7831 7832// Values returns the slice of values for the current page or nil if there are no values. 7833func (page DiagnosticAnalysisCollectionPage) Values() []AnalysisDefinition { 7834 if page.dac.IsEmpty() { 7835 return nil 7836 } 7837 return *page.dac.Value 7838} 7839 7840// Creates a new instance of the DiagnosticAnalysisCollectionPage type. 7841func NewDiagnosticAnalysisCollectionPage(getNextPage func(context.Context, DiagnosticAnalysisCollection) (DiagnosticAnalysisCollection, error)) DiagnosticAnalysisCollectionPage { 7842 return DiagnosticAnalysisCollectionPage{fn: getNextPage} 7843} 7844 7845// DiagnosticAnalysisProperties diagnosticAnalysis resource specific properties 7846type DiagnosticAnalysisProperties struct { 7847 // StartTime - Start time of the period 7848 StartTime *date.Time `json:"startTime,omitempty"` 7849 // EndTime - End time of the period 7850 EndTime *date.Time `json:"endTime,omitempty"` 7851 // AbnormalTimePeriods - List of time periods. 7852 AbnormalTimePeriods *[]AbnormalTimePeriod `json:"abnormalTimePeriods,omitempty"` 7853 // Payload - Data by each detector 7854 Payload *[]AnalysisData `json:"payload,omitempty"` 7855 // NonCorrelatedDetectors - Data by each detector for detectors that did not corelate 7856 NonCorrelatedDetectors *[]DetectorDefinition `json:"nonCorrelatedDetectors,omitempty"` 7857} 7858 7859// DiagnosticCategory class representing detector definition 7860type DiagnosticCategory struct { 7861 autorest.Response `json:"-"` 7862 // DiagnosticCategoryProperties - DiagnosticCategory resource specific properties 7863 *DiagnosticCategoryProperties `json:"properties,omitempty"` 7864 // ID - READ-ONLY; Resource Id. 7865 ID *string `json:"id,omitempty"` 7866 // Name - READ-ONLY; Resource Name. 7867 Name *string `json:"name,omitempty"` 7868 // Kind - Kind of resource. 7869 Kind *string `json:"kind,omitempty"` 7870 // Type - READ-ONLY; Resource type. 7871 Type *string `json:"type,omitempty"` 7872} 7873 7874// MarshalJSON is the custom marshaler for DiagnosticCategory. 7875func (dc DiagnosticCategory) MarshalJSON() ([]byte, error) { 7876 objectMap := make(map[string]interface{}) 7877 if dc.DiagnosticCategoryProperties != nil { 7878 objectMap["properties"] = dc.DiagnosticCategoryProperties 7879 } 7880 if dc.Kind != nil { 7881 objectMap["kind"] = dc.Kind 7882 } 7883 return json.Marshal(objectMap) 7884} 7885 7886// UnmarshalJSON is the custom unmarshaler for DiagnosticCategory struct. 7887func (dc *DiagnosticCategory) UnmarshalJSON(body []byte) error { 7888 var m map[string]*json.RawMessage 7889 err := json.Unmarshal(body, &m) 7890 if err != nil { 7891 return err 7892 } 7893 for k, v := range m { 7894 switch k { 7895 case "properties": 7896 if v != nil { 7897 var diagnosticCategoryProperties DiagnosticCategoryProperties 7898 err = json.Unmarshal(*v, &diagnosticCategoryProperties) 7899 if err != nil { 7900 return err 7901 } 7902 dc.DiagnosticCategoryProperties = &diagnosticCategoryProperties 7903 } 7904 case "id": 7905 if v != nil { 7906 var ID string 7907 err = json.Unmarshal(*v, &ID) 7908 if err != nil { 7909 return err 7910 } 7911 dc.ID = &ID 7912 } 7913 case "name": 7914 if v != nil { 7915 var name string 7916 err = json.Unmarshal(*v, &name) 7917 if err != nil { 7918 return err 7919 } 7920 dc.Name = &name 7921 } 7922 case "kind": 7923 if v != nil { 7924 var kind string 7925 err = json.Unmarshal(*v, &kind) 7926 if err != nil { 7927 return err 7928 } 7929 dc.Kind = &kind 7930 } 7931 case "type": 7932 if v != nil { 7933 var typeVar string 7934 err = json.Unmarshal(*v, &typeVar) 7935 if err != nil { 7936 return err 7937 } 7938 dc.Type = &typeVar 7939 } 7940 } 7941 } 7942 7943 return nil 7944} 7945 7946// DiagnosticCategoryCollection collection of Diagnostic Categories 7947type DiagnosticCategoryCollection struct { 7948 autorest.Response `json:"-"` 7949 // Value - Collection of resources. 7950 Value *[]DiagnosticCategory `json:"value,omitempty"` 7951 // NextLink - READ-ONLY; Link to next page of resources. 7952 NextLink *string `json:"nextLink,omitempty"` 7953} 7954 7955// DiagnosticCategoryCollectionIterator provides access to a complete listing of DiagnosticCategory values. 7956type DiagnosticCategoryCollectionIterator struct { 7957 i int 7958 page DiagnosticCategoryCollectionPage 7959} 7960 7961// NextWithContext advances to the next value. If there was an error making 7962// the request the iterator does not advance and the error is returned. 7963func (iter *DiagnosticCategoryCollectionIterator) NextWithContext(ctx context.Context) (err error) { 7964 if tracing.IsEnabled() { 7965 ctx = tracing.StartSpan(ctx, fqdn+"/DiagnosticCategoryCollectionIterator.NextWithContext") 7966 defer func() { 7967 sc := -1 7968 if iter.Response().Response.Response != nil { 7969 sc = iter.Response().Response.Response.StatusCode 7970 } 7971 tracing.EndSpan(ctx, sc, err) 7972 }() 7973 } 7974 iter.i++ 7975 if iter.i < len(iter.page.Values()) { 7976 return nil 7977 } 7978 err = iter.page.NextWithContext(ctx) 7979 if err != nil { 7980 iter.i-- 7981 return err 7982 } 7983 iter.i = 0 7984 return nil 7985} 7986 7987// Next advances to the next value. If there was an error making 7988// the request the iterator does not advance and the error is returned. 7989// Deprecated: Use NextWithContext() instead. 7990func (iter *DiagnosticCategoryCollectionIterator) Next() error { 7991 return iter.NextWithContext(context.Background()) 7992} 7993 7994// NotDone returns true if the enumeration should be started or is not yet complete. 7995func (iter DiagnosticCategoryCollectionIterator) NotDone() bool { 7996 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 7997} 7998 7999// Response returns the raw server response from the last page request. 8000func (iter DiagnosticCategoryCollectionIterator) Response() DiagnosticCategoryCollection { 8001 return iter.page.Response() 8002} 8003 8004// Value returns the current value or a zero-initialized value if the 8005// iterator has advanced beyond the end of the collection. 8006func (iter DiagnosticCategoryCollectionIterator) Value() DiagnosticCategory { 8007 if !iter.page.NotDone() { 8008 return DiagnosticCategory{} 8009 } 8010 return iter.page.Values()[iter.i] 8011} 8012 8013// Creates a new instance of the DiagnosticCategoryCollectionIterator type. 8014func NewDiagnosticCategoryCollectionIterator(page DiagnosticCategoryCollectionPage) DiagnosticCategoryCollectionIterator { 8015 return DiagnosticCategoryCollectionIterator{page: page} 8016} 8017 8018// IsEmpty returns true if the ListResult contains no values. 8019func (dcc DiagnosticCategoryCollection) IsEmpty() bool { 8020 return dcc.Value == nil || len(*dcc.Value) == 0 8021} 8022 8023// diagnosticCategoryCollectionPreparer prepares a request to retrieve the next set of results. 8024// It returns nil if no more results exist. 8025func (dcc DiagnosticCategoryCollection) diagnosticCategoryCollectionPreparer(ctx context.Context) (*http.Request, error) { 8026 if dcc.NextLink == nil || len(to.String(dcc.NextLink)) < 1 { 8027 return nil, nil 8028 } 8029 return autorest.Prepare((&http.Request{}).WithContext(ctx), 8030 autorest.AsJSON(), 8031 autorest.AsGet(), 8032 autorest.WithBaseURL(to.String(dcc.NextLink))) 8033} 8034 8035// DiagnosticCategoryCollectionPage contains a page of DiagnosticCategory values. 8036type DiagnosticCategoryCollectionPage struct { 8037 fn func(context.Context, DiagnosticCategoryCollection) (DiagnosticCategoryCollection, error) 8038 dcc DiagnosticCategoryCollection 8039} 8040 8041// NextWithContext advances to the next page of values. If there was an error making 8042// the request the page does not advance and the error is returned. 8043func (page *DiagnosticCategoryCollectionPage) NextWithContext(ctx context.Context) (err error) { 8044 if tracing.IsEnabled() { 8045 ctx = tracing.StartSpan(ctx, fqdn+"/DiagnosticCategoryCollectionPage.NextWithContext") 8046 defer func() { 8047 sc := -1 8048 if page.Response().Response.Response != nil { 8049 sc = page.Response().Response.Response.StatusCode 8050 } 8051 tracing.EndSpan(ctx, sc, err) 8052 }() 8053 } 8054 next, err := page.fn(ctx, page.dcc) 8055 if err != nil { 8056 return err 8057 } 8058 page.dcc = next 8059 return nil 8060} 8061 8062// Next advances to the next page of values. If there was an error making 8063// the request the page does not advance and the error is returned. 8064// Deprecated: Use NextWithContext() instead. 8065func (page *DiagnosticCategoryCollectionPage) Next() error { 8066 return page.NextWithContext(context.Background()) 8067} 8068 8069// NotDone returns true if the page enumeration should be started or is not yet complete. 8070func (page DiagnosticCategoryCollectionPage) NotDone() bool { 8071 return !page.dcc.IsEmpty() 8072} 8073 8074// Response returns the raw server response from the last page request. 8075func (page DiagnosticCategoryCollectionPage) Response() DiagnosticCategoryCollection { 8076 return page.dcc 8077} 8078 8079// Values returns the slice of values for the current page or nil if there are no values. 8080func (page DiagnosticCategoryCollectionPage) Values() []DiagnosticCategory { 8081 if page.dcc.IsEmpty() { 8082 return nil 8083 } 8084 return *page.dcc.Value 8085} 8086 8087// Creates a new instance of the DiagnosticCategoryCollectionPage type. 8088func NewDiagnosticCategoryCollectionPage(getNextPage func(context.Context, DiagnosticCategoryCollection) (DiagnosticCategoryCollection, error)) DiagnosticCategoryCollectionPage { 8089 return DiagnosticCategoryCollectionPage{fn: getNextPage} 8090} 8091 8092// DiagnosticCategoryProperties diagnosticCategory resource specific properties 8093type DiagnosticCategoryProperties struct { 8094 // Description - READ-ONLY; Description of the diagnostic category 8095 Description *string `json:"description,omitempty"` 8096} 8097 8098// DiagnosticData set of data with rendering instructions 8099type DiagnosticData struct { 8100 // Table - Data in table form 8101 Table *DataTableResponseObject `json:"table,omitempty"` 8102 // RenderingProperties - Properties that describe how the table should be rendered 8103 RenderingProperties *Rendering `json:"renderingProperties,omitempty"` 8104} 8105 8106// DiagnosticDetectorCollection collection of Diagnostic Detectors 8107type DiagnosticDetectorCollection struct { 8108 autorest.Response `json:"-"` 8109 // Value - Collection of resources. 8110 Value *[]DetectorDefinition `json:"value,omitempty"` 8111 // NextLink - READ-ONLY; Link to next page of resources. 8112 NextLink *string `json:"nextLink,omitempty"` 8113} 8114 8115// DiagnosticDetectorCollectionIterator provides access to a complete listing of DetectorDefinition values. 8116type DiagnosticDetectorCollectionIterator struct { 8117 i int 8118 page DiagnosticDetectorCollectionPage 8119} 8120 8121// NextWithContext advances to the next value. If there was an error making 8122// the request the iterator does not advance and the error is returned. 8123func (iter *DiagnosticDetectorCollectionIterator) NextWithContext(ctx context.Context) (err error) { 8124 if tracing.IsEnabled() { 8125 ctx = tracing.StartSpan(ctx, fqdn+"/DiagnosticDetectorCollectionIterator.NextWithContext") 8126 defer func() { 8127 sc := -1 8128 if iter.Response().Response.Response != nil { 8129 sc = iter.Response().Response.Response.StatusCode 8130 } 8131 tracing.EndSpan(ctx, sc, err) 8132 }() 8133 } 8134 iter.i++ 8135 if iter.i < len(iter.page.Values()) { 8136 return nil 8137 } 8138 err = iter.page.NextWithContext(ctx) 8139 if err != nil { 8140 iter.i-- 8141 return err 8142 } 8143 iter.i = 0 8144 return nil 8145} 8146 8147// Next advances to the next value. If there was an error making 8148// the request the iterator does not advance and the error is returned. 8149// Deprecated: Use NextWithContext() instead. 8150func (iter *DiagnosticDetectorCollectionIterator) Next() error { 8151 return iter.NextWithContext(context.Background()) 8152} 8153 8154// NotDone returns true if the enumeration should be started or is not yet complete. 8155func (iter DiagnosticDetectorCollectionIterator) NotDone() bool { 8156 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 8157} 8158 8159// Response returns the raw server response from the last page request. 8160func (iter DiagnosticDetectorCollectionIterator) Response() DiagnosticDetectorCollection { 8161 return iter.page.Response() 8162} 8163 8164// Value returns the current value or a zero-initialized value if the 8165// iterator has advanced beyond the end of the collection. 8166func (iter DiagnosticDetectorCollectionIterator) Value() DetectorDefinition { 8167 if !iter.page.NotDone() { 8168 return DetectorDefinition{} 8169 } 8170 return iter.page.Values()[iter.i] 8171} 8172 8173// Creates a new instance of the DiagnosticDetectorCollectionIterator type. 8174func NewDiagnosticDetectorCollectionIterator(page DiagnosticDetectorCollectionPage) DiagnosticDetectorCollectionIterator { 8175 return DiagnosticDetectorCollectionIterator{page: page} 8176} 8177 8178// IsEmpty returns true if the ListResult contains no values. 8179func (ddc DiagnosticDetectorCollection) IsEmpty() bool { 8180 return ddc.Value == nil || len(*ddc.Value) == 0 8181} 8182 8183// diagnosticDetectorCollectionPreparer prepares a request to retrieve the next set of results. 8184// It returns nil if no more results exist. 8185func (ddc DiagnosticDetectorCollection) diagnosticDetectorCollectionPreparer(ctx context.Context) (*http.Request, error) { 8186 if ddc.NextLink == nil || len(to.String(ddc.NextLink)) < 1 { 8187 return nil, nil 8188 } 8189 return autorest.Prepare((&http.Request{}).WithContext(ctx), 8190 autorest.AsJSON(), 8191 autorest.AsGet(), 8192 autorest.WithBaseURL(to.String(ddc.NextLink))) 8193} 8194 8195// DiagnosticDetectorCollectionPage contains a page of DetectorDefinition values. 8196type DiagnosticDetectorCollectionPage struct { 8197 fn func(context.Context, DiagnosticDetectorCollection) (DiagnosticDetectorCollection, error) 8198 ddc DiagnosticDetectorCollection 8199} 8200 8201// NextWithContext advances to the next page of values. If there was an error making 8202// the request the page does not advance and the error is returned. 8203func (page *DiagnosticDetectorCollectionPage) NextWithContext(ctx context.Context) (err error) { 8204 if tracing.IsEnabled() { 8205 ctx = tracing.StartSpan(ctx, fqdn+"/DiagnosticDetectorCollectionPage.NextWithContext") 8206 defer func() { 8207 sc := -1 8208 if page.Response().Response.Response != nil { 8209 sc = page.Response().Response.Response.StatusCode 8210 } 8211 tracing.EndSpan(ctx, sc, err) 8212 }() 8213 } 8214 next, err := page.fn(ctx, page.ddc) 8215 if err != nil { 8216 return err 8217 } 8218 page.ddc = next 8219 return nil 8220} 8221 8222// Next advances to the next page of values. If there was an error making 8223// the request the page does not advance and the error is returned. 8224// Deprecated: Use NextWithContext() instead. 8225func (page *DiagnosticDetectorCollectionPage) Next() error { 8226 return page.NextWithContext(context.Background()) 8227} 8228 8229// NotDone returns true if the page enumeration should be started or is not yet complete. 8230func (page DiagnosticDetectorCollectionPage) NotDone() bool { 8231 return !page.ddc.IsEmpty() 8232} 8233 8234// Response returns the raw server response from the last page request. 8235func (page DiagnosticDetectorCollectionPage) Response() DiagnosticDetectorCollection { 8236 return page.ddc 8237} 8238 8239// Values returns the slice of values for the current page or nil if there are no values. 8240func (page DiagnosticDetectorCollectionPage) Values() []DetectorDefinition { 8241 if page.ddc.IsEmpty() { 8242 return nil 8243 } 8244 return *page.ddc.Value 8245} 8246 8247// Creates a new instance of the DiagnosticDetectorCollectionPage type. 8248func NewDiagnosticDetectorCollectionPage(getNextPage func(context.Context, DiagnosticDetectorCollection) (DiagnosticDetectorCollection, error)) DiagnosticDetectorCollectionPage { 8249 return DiagnosticDetectorCollectionPage{fn: getNextPage} 8250} 8251 8252// DiagnosticDetectorResponse class representing Response from Diagnostic Detectors 8253type DiagnosticDetectorResponse struct { 8254 autorest.Response `json:"-"` 8255 // DiagnosticDetectorResponseProperties - DiagnosticDetectorResponse resource specific properties 8256 *DiagnosticDetectorResponseProperties `json:"properties,omitempty"` 8257 // ID - READ-ONLY; Resource Id. 8258 ID *string `json:"id,omitempty"` 8259 // Name - READ-ONLY; Resource Name. 8260 Name *string `json:"name,omitempty"` 8261 // Kind - Kind of resource. 8262 Kind *string `json:"kind,omitempty"` 8263 // Type - READ-ONLY; Resource type. 8264 Type *string `json:"type,omitempty"` 8265} 8266 8267// MarshalJSON is the custom marshaler for DiagnosticDetectorResponse. 8268func (ddr DiagnosticDetectorResponse) MarshalJSON() ([]byte, error) { 8269 objectMap := make(map[string]interface{}) 8270 if ddr.DiagnosticDetectorResponseProperties != nil { 8271 objectMap["properties"] = ddr.DiagnosticDetectorResponseProperties 8272 } 8273 if ddr.Kind != nil { 8274 objectMap["kind"] = ddr.Kind 8275 } 8276 return json.Marshal(objectMap) 8277} 8278 8279// UnmarshalJSON is the custom unmarshaler for DiagnosticDetectorResponse struct. 8280func (ddr *DiagnosticDetectorResponse) UnmarshalJSON(body []byte) error { 8281 var m map[string]*json.RawMessage 8282 err := json.Unmarshal(body, &m) 8283 if err != nil { 8284 return err 8285 } 8286 for k, v := range m { 8287 switch k { 8288 case "properties": 8289 if v != nil { 8290 var diagnosticDetectorResponseProperties DiagnosticDetectorResponseProperties 8291 err = json.Unmarshal(*v, &diagnosticDetectorResponseProperties) 8292 if err != nil { 8293 return err 8294 } 8295 ddr.DiagnosticDetectorResponseProperties = &diagnosticDetectorResponseProperties 8296 } 8297 case "id": 8298 if v != nil { 8299 var ID string 8300 err = json.Unmarshal(*v, &ID) 8301 if err != nil { 8302 return err 8303 } 8304 ddr.ID = &ID 8305 } 8306 case "name": 8307 if v != nil { 8308 var name string 8309 err = json.Unmarshal(*v, &name) 8310 if err != nil { 8311 return err 8312 } 8313 ddr.Name = &name 8314 } 8315 case "kind": 8316 if v != nil { 8317 var kind string 8318 err = json.Unmarshal(*v, &kind) 8319 if err != nil { 8320 return err 8321 } 8322 ddr.Kind = &kind 8323 } 8324 case "type": 8325 if v != nil { 8326 var typeVar string 8327 err = json.Unmarshal(*v, &typeVar) 8328 if err != nil { 8329 return err 8330 } 8331 ddr.Type = &typeVar 8332 } 8333 } 8334 } 8335 8336 return nil 8337} 8338 8339// DiagnosticDetectorResponseProperties diagnosticDetectorResponse resource specific properties 8340type DiagnosticDetectorResponseProperties struct { 8341 // StartTime - Start time of the period 8342 StartTime *date.Time `json:"startTime,omitempty"` 8343 // EndTime - End time of the period 8344 EndTime *date.Time `json:"endTime,omitempty"` 8345 // IssueDetected - Flag representing Issue was detected. 8346 IssueDetected *bool `json:"issueDetected,omitempty"` 8347 // DetectorDefinition - Detector's definition 8348 DetectorDefinition *DetectorDefinition `json:"detectorDefinition,omitempty"` 8349 // Metrics - Metrics provided by the detector 8350 Metrics *[]DiagnosticMetricSet `json:"metrics,omitempty"` 8351 // AbnormalTimePeriods - List of Correlated events found by the detector 8352 AbnormalTimePeriods *[]DetectorAbnormalTimePeriod `json:"abnormalTimePeriods,omitempty"` 8353 // Data - Additional Data that detector wants to send. 8354 Data *[][]NameValuePair `json:"data,omitempty"` 8355 // ResponseMetaData - Meta Data 8356 ResponseMetaData *ResponseMetaData `json:"responseMetaData,omitempty"` 8357} 8358 8359// DiagnosticMetricSample class representing Diagnostic Metric 8360type DiagnosticMetricSample struct { 8361 // Timestamp - Time at which metric is measured 8362 Timestamp *date.Time `json:"timestamp,omitempty"` 8363 // RoleInstance - Role Instance. Null if this counter is not per instance 8364 // This is returned and should be whichever instance name we desire to be returned 8365 // i.e. CPU and Memory return RDWORKERNAME (LargeDed..._IN_0) 8366 // where RDWORKERNAME is Machine name below and RoleInstance name in parenthesis 8367 RoleInstance *string `json:"roleInstance,omitempty"` 8368 // Total - Total value of the metric. If multiple measurements are made this will have sum of all. 8369 Total *float64 `json:"total,omitempty"` 8370 // Maximum - Maximum of the metric sampled during the time period 8371 Maximum *float64 `json:"maximum,omitempty"` 8372 // Minimum - Minimum of the metric sampled during the time period 8373 Minimum *float64 `json:"minimum,omitempty"` 8374 // IsAggregated - Whether the values are aggregates across all workers or not 8375 IsAggregated *bool `json:"isAggregated,omitempty"` 8376} 8377 8378// DiagnosticMetricSet class representing Diagnostic Metric information 8379type DiagnosticMetricSet struct { 8380 // Name - Name of the metric 8381 Name *string `json:"name,omitempty"` 8382 // Unit - Metric's unit 8383 Unit *string `json:"unit,omitempty"` 8384 // StartTime - Start time of the period 8385 StartTime *date.Time `json:"startTime,omitempty"` 8386 // EndTime - End time of the period 8387 EndTime *date.Time `json:"endTime,omitempty"` 8388 // TimeGrain - Presented time grain. Supported grains at the moment are PT1M, PT1H, P1D 8389 TimeGrain *string `json:"timeGrain,omitempty"` 8390 // Values - Collection of metric values for the selected period based on the {Microsoft.Web.Hosting.Administration.DiagnosticMetricSet.TimeGrain} 8391 Values *[]DiagnosticMetricSample `json:"values,omitempty"` 8392} 8393 8394// Dimension dimension of a resource metric. For e.g. instance specific HTTP requests for a web app, 8395// where instance name is dimension of the metric HTTP request 8396type Dimension struct { 8397 Name *string `json:"name,omitempty"` 8398 DisplayName *string `json:"displayName,omitempty"` 8399 InternalName *string `json:"internalName,omitempty"` 8400 ToBeExportedForShoebox *bool `json:"toBeExportedForShoebox,omitempty"` 8401} 8402 8403// Domain information about a domain. 8404type Domain struct { 8405 autorest.Response `json:"-"` 8406 // DomainProperties - Domain resource specific properties 8407 *DomainProperties `json:"properties,omitempty"` 8408 // ID - READ-ONLY; Resource Id. 8409 ID *string `json:"id,omitempty"` 8410 // Name - READ-ONLY; Resource Name. 8411 Name *string `json:"name,omitempty"` 8412 // Kind - Kind of resource. 8413 Kind *string `json:"kind,omitempty"` 8414 // Location - Resource Location. 8415 Location *string `json:"location,omitempty"` 8416 // Type - READ-ONLY; Resource type. 8417 Type *string `json:"type,omitempty"` 8418 // Tags - Resource tags. 8419 Tags map[string]*string `json:"tags"` 8420} 8421 8422// MarshalJSON is the custom marshaler for Domain. 8423func (d Domain) MarshalJSON() ([]byte, error) { 8424 objectMap := make(map[string]interface{}) 8425 if d.DomainProperties != nil { 8426 objectMap["properties"] = d.DomainProperties 8427 } 8428 if d.Kind != nil { 8429 objectMap["kind"] = d.Kind 8430 } 8431 if d.Location != nil { 8432 objectMap["location"] = d.Location 8433 } 8434 if d.Tags != nil { 8435 objectMap["tags"] = d.Tags 8436 } 8437 return json.Marshal(objectMap) 8438} 8439 8440// UnmarshalJSON is the custom unmarshaler for Domain struct. 8441func (d *Domain) UnmarshalJSON(body []byte) error { 8442 var m map[string]*json.RawMessage 8443 err := json.Unmarshal(body, &m) 8444 if err != nil { 8445 return err 8446 } 8447 for k, v := range m { 8448 switch k { 8449 case "properties": 8450 if v != nil { 8451 var domainProperties DomainProperties 8452 err = json.Unmarshal(*v, &domainProperties) 8453 if err != nil { 8454 return err 8455 } 8456 d.DomainProperties = &domainProperties 8457 } 8458 case "id": 8459 if v != nil { 8460 var ID string 8461 err = json.Unmarshal(*v, &ID) 8462 if err != nil { 8463 return err 8464 } 8465 d.ID = &ID 8466 } 8467 case "name": 8468 if v != nil { 8469 var name string 8470 err = json.Unmarshal(*v, &name) 8471 if err != nil { 8472 return err 8473 } 8474 d.Name = &name 8475 } 8476 case "kind": 8477 if v != nil { 8478 var kind string 8479 err = json.Unmarshal(*v, &kind) 8480 if err != nil { 8481 return err 8482 } 8483 d.Kind = &kind 8484 } 8485 case "location": 8486 if v != nil { 8487 var location string 8488 err = json.Unmarshal(*v, &location) 8489 if err != nil { 8490 return err 8491 } 8492 d.Location = &location 8493 } 8494 case "type": 8495 if v != nil { 8496 var typeVar string 8497 err = json.Unmarshal(*v, &typeVar) 8498 if err != nil { 8499 return err 8500 } 8501 d.Type = &typeVar 8502 } 8503 case "tags": 8504 if v != nil { 8505 var tags map[string]*string 8506 err = json.Unmarshal(*v, &tags) 8507 if err != nil { 8508 return err 8509 } 8510 d.Tags = tags 8511 } 8512 } 8513 } 8514 8515 return nil 8516} 8517 8518// DomainAvailablilityCheckResult domain availability check result. 8519type DomainAvailablilityCheckResult struct { 8520 autorest.Response `json:"-"` 8521 // Name - Name of the domain. 8522 Name *string `json:"name,omitempty"` 8523 // Available - <code>true</code> if domain can be purchased using CreateDomain API; otherwise, <code>false</code>. 8524 Available *bool `json:"available,omitempty"` 8525 // DomainType - Valid values are Regular domain: Azure will charge the full price of domain registration, SoftDeleted: Purchasing this domain will simply restore it and this operation will not cost anything. Possible values include: 'Regular', 'SoftDeleted' 8526 DomainType DomainType `json:"domainType,omitempty"` 8527} 8528 8529// DomainCollection collection of domains. 8530type DomainCollection struct { 8531 autorest.Response `json:"-"` 8532 // Value - Collection of resources. 8533 Value *[]Domain `json:"value,omitempty"` 8534 // NextLink - READ-ONLY; Link to next page of resources. 8535 NextLink *string `json:"nextLink,omitempty"` 8536} 8537 8538// DomainCollectionIterator provides access to a complete listing of Domain values. 8539type DomainCollectionIterator struct { 8540 i int 8541 page DomainCollectionPage 8542} 8543 8544// NextWithContext advances to the next value. If there was an error making 8545// the request the iterator does not advance and the error is returned. 8546func (iter *DomainCollectionIterator) NextWithContext(ctx context.Context) (err error) { 8547 if tracing.IsEnabled() { 8548 ctx = tracing.StartSpan(ctx, fqdn+"/DomainCollectionIterator.NextWithContext") 8549 defer func() { 8550 sc := -1 8551 if iter.Response().Response.Response != nil { 8552 sc = iter.Response().Response.Response.StatusCode 8553 } 8554 tracing.EndSpan(ctx, sc, err) 8555 }() 8556 } 8557 iter.i++ 8558 if iter.i < len(iter.page.Values()) { 8559 return nil 8560 } 8561 err = iter.page.NextWithContext(ctx) 8562 if err != nil { 8563 iter.i-- 8564 return err 8565 } 8566 iter.i = 0 8567 return nil 8568} 8569 8570// Next advances to the next value. If there was an error making 8571// the request the iterator does not advance and the error is returned. 8572// Deprecated: Use NextWithContext() instead. 8573func (iter *DomainCollectionIterator) Next() error { 8574 return iter.NextWithContext(context.Background()) 8575} 8576 8577// NotDone returns true if the enumeration should be started or is not yet complete. 8578func (iter DomainCollectionIterator) NotDone() bool { 8579 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 8580} 8581 8582// Response returns the raw server response from the last page request. 8583func (iter DomainCollectionIterator) Response() DomainCollection { 8584 return iter.page.Response() 8585} 8586 8587// Value returns the current value or a zero-initialized value if the 8588// iterator has advanced beyond the end of the collection. 8589func (iter DomainCollectionIterator) Value() Domain { 8590 if !iter.page.NotDone() { 8591 return Domain{} 8592 } 8593 return iter.page.Values()[iter.i] 8594} 8595 8596// Creates a new instance of the DomainCollectionIterator type. 8597func NewDomainCollectionIterator(page DomainCollectionPage) DomainCollectionIterator { 8598 return DomainCollectionIterator{page: page} 8599} 8600 8601// IsEmpty returns true if the ListResult contains no values. 8602func (dc DomainCollection) IsEmpty() bool { 8603 return dc.Value == nil || len(*dc.Value) == 0 8604} 8605 8606// domainCollectionPreparer prepares a request to retrieve the next set of results. 8607// It returns nil if no more results exist. 8608func (dc DomainCollection) domainCollectionPreparer(ctx context.Context) (*http.Request, error) { 8609 if dc.NextLink == nil || len(to.String(dc.NextLink)) < 1 { 8610 return nil, nil 8611 } 8612 return autorest.Prepare((&http.Request{}).WithContext(ctx), 8613 autorest.AsJSON(), 8614 autorest.AsGet(), 8615 autorest.WithBaseURL(to.String(dc.NextLink))) 8616} 8617 8618// DomainCollectionPage contains a page of Domain values. 8619type DomainCollectionPage struct { 8620 fn func(context.Context, DomainCollection) (DomainCollection, error) 8621 dc DomainCollection 8622} 8623 8624// NextWithContext advances to the next page of values. If there was an error making 8625// the request the page does not advance and the error is returned. 8626func (page *DomainCollectionPage) NextWithContext(ctx context.Context) (err error) { 8627 if tracing.IsEnabled() { 8628 ctx = tracing.StartSpan(ctx, fqdn+"/DomainCollectionPage.NextWithContext") 8629 defer func() { 8630 sc := -1 8631 if page.Response().Response.Response != nil { 8632 sc = page.Response().Response.Response.StatusCode 8633 } 8634 tracing.EndSpan(ctx, sc, err) 8635 }() 8636 } 8637 next, err := page.fn(ctx, page.dc) 8638 if err != nil { 8639 return err 8640 } 8641 page.dc = next 8642 return nil 8643} 8644 8645// Next advances to the next page of values. If there was an error making 8646// the request the page does not advance and the error is returned. 8647// Deprecated: Use NextWithContext() instead. 8648func (page *DomainCollectionPage) Next() error { 8649 return page.NextWithContext(context.Background()) 8650} 8651 8652// NotDone returns true if the page enumeration should be started or is not yet complete. 8653func (page DomainCollectionPage) NotDone() bool { 8654 return !page.dc.IsEmpty() 8655} 8656 8657// Response returns the raw server response from the last page request. 8658func (page DomainCollectionPage) Response() DomainCollection { 8659 return page.dc 8660} 8661 8662// Values returns the slice of values for the current page or nil if there are no values. 8663func (page DomainCollectionPage) Values() []Domain { 8664 if page.dc.IsEmpty() { 8665 return nil 8666 } 8667 return *page.dc.Value 8668} 8669 8670// Creates a new instance of the DomainCollectionPage type. 8671func NewDomainCollectionPage(getNextPage func(context.Context, DomainCollection) (DomainCollection, error)) DomainCollectionPage { 8672 return DomainCollectionPage{fn: getNextPage} 8673} 8674 8675// DomainControlCenterSsoRequest single sign-on request information for domain management. 8676type DomainControlCenterSsoRequest struct { 8677 autorest.Response `json:"-"` 8678 // URL - READ-ONLY; URL where the single sign-on request is to be made. 8679 URL *string `json:"url,omitempty"` 8680 // PostParameterKey - READ-ONLY; Post parameter key. 8681 PostParameterKey *string `json:"postParameterKey,omitempty"` 8682 // PostParameterValue - READ-ONLY; Post parameter value. Client should use 'application/x-www-form-urlencoded' encoding for this value. 8683 PostParameterValue *string `json:"postParameterValue,omitempty"` 8684} 8685 8686// DomainOwnershipIdentifier domain ownership Identifier. 8687type DomainOwnershipIdentifier struct { 8688 autorest.Response `json:"-"` 8689 // DomainOwnershipIdentifierProperties - DomainOwnershipIdentifier resource specific properties 8690 *DomainOwnershipIdentifierProperties `json:"properties,omitempty"` 8691 // ID - READ-ONLY; Resource Id. 8692 ID *string `json:"id,omitempty"` 8693 // Name - READ-ONLY; Resource Name. 8694 Name *string `json:"name,omitempty"` 8695 // Kind - Kind of resource. 8696 Kind *string `json:"kind,omitempty"` 8697 // Type - READ-ONLY; Resource type. 8698 Type *string `json:"type,omitempty"` 8699} 8700 8701// MarshalJSON is the custom marshaler for DomainOwnershipIdentifier. 8702func (doi DomainOwnershipIdentifier) MarshalJSON() ([]byte, error) { 8703 objectMap := make(map[string]interface{}) 8704 if doi.DomainOwnershipIdentifierProperties != nil { 8705 objectMap["properties"] = doi.DomainOwnershipIdentifierProperties 8706 } 8707 if doi.Kind != nil { 8708 objectMap["kind"] = doi.Kind 8709 } 8710 return json.Marshal(objectMap) 8711} 8712 8713// UnmarshalJSON is the custom unmarshaler for DomainOwnershipIdentifier struct. 8714func (doi *DomainOwnershipIdentifier) UnmarshalJSON(body []byte) error { 8715 var m map[string]*json.RawMessage 8716 err := json.Unmarshal(body, &m) 8717 if err != nil { 8718 return err 8719 } 8720 for k, v := range m { 8721 switch k { 8722 case "properties": 8723 if v != nil { 8724 var domainOwnershipIdentifierProperties DomainOwnershipIdentifierProperties 8725 err = json.Unmarshal(*v, &domainOwnershipIdentifierProperties) 8726 if err != nil { 8727 return err 8728 } 8729 doi.DomainOwnershipIdentifierProperties = &domainOwnershipIdentifierProperties 8730 } 8731 case "id": 8732 if v != nil { 8733 var ID string 8734 err = json.Unmarshal(*v, &ID) 8735 if err != nil { 8736 return err 8737 } 8738 doi.ID = &ID 8739 } 8740 case "name": 8741 if v != nil { 8742 var name string 8743 err = json.Unmarshal(*v, &name) 8744 if err != nil { 8745 return err 8746 } 8747 doi.Name = &name 8748 } 8749 case "kind": 8750 if v != nil { 8751 var kind string 8752 err = json.Unmarshal(*v, &kind) 8753 if err != nil { 8754 return err 8755 } 8756 doi.Kind = &kind 8757 } 8758 case "type": 8759 if v != nil { 8760 var typeVar string 8761 err = json.Unmarshal(*v, &typeVar) 8762 if err != nil { 8763 return err 8764 } 8765 doi.Type = &typeVar 8766 } 8767 } 8768 } 8769 8770 return nil 8771} 8772 8773// DomainOwnershipIdentifierCollection collection of domain ownership identifiers. 8774type DomainOwnershipIdentifierCollection struct { 8775 autorest.Response `json:"-"` 8776 // Value - Collection of resources. 8777 Value *[]DomainOwnershipIdentifier `json:"value,omitempty"` 8778 // NextLink - READ-ONLY; Link to next page of resources. 8779 NextLink *string `json:"nextLink,omitempty"` 8780} 8781 8782// DomainOwnershipIdentifierCollectionIterator provides access to a complete listing of 8783// DomainOwnershipIdentifier values. 8784type DomainOwnershipIdentifierCollectionIterator struct { 8785 i int 8786 page DomainOwnershipIdentifierCollectionPage 8787} 8788 8789// NextWithContext advances to the next value. If there was an error making 8790// the request the iterator does not advance and the error is returned. 8791func (iter *DomainOwnershipIdentifierCollectionIterator) NextWithContext(ctx context.Context) (err error) { 8792 if tracing.IsEnabled() { 8793 ctx = tracing.StartSpan(ctx, fqdn+"/DomainOwnershipIdentifierCollectionIterator.NextWithContext") 8794 defer func() { 8795 sc := -1 8796 if iter.Response().Response.Response != nil { 8797 sc = iter.Response().Response.Response.StatusCode 8798 } 8799 tracing.EndSpan(ctx, sc, err) 8800 }() 8801 } 8802 iter.i++ 8803 if iter.i < len(iter.page.Values()) { 8804 return nil 8805 } 8806 err = iter.page.NextWithContext(ctx) 8807 if err != nil { 8808 iter.i-- 8809 return err 8810 } 8811 iter.i = 0 8812 return nil 8813} 8814 8815// Next advances to the next value. If there was an error making 8816// the request the iterator does not advance and the error is returned. 8817// Deprecated: Use NextWithContext() instead. 8818func (iter *DomainOwnershipIdentifierCollectionIterator) Next() error { 8819 return iter.NextWithContext(context.Background()) 8820} 8821 8822// NotDone returns true if the enumeration should be started or is not yet complete. 8823func (iter DomainOwnershipIdentifierCollectionIterator) NotDone() bool { 8824 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 8825} 8826 8827// Response returns the raw server response from the last page request. 8828func (iter DomainOwnershipIdentifierCollectionIterator) Response() DomainOwnershipIdentifierCollection { 8829 return iter.page.Response() 8830} 8831 8832// Value returns the current value or a zero-initialized value if the 8833// iterator has advanced beyond the end of the collection. 8834func (iter DomainOwnershipIdentifierCollectionIterator) Value() DomainOwnershipIdentifier { 8835 if !iter.page.NotDone() { 8836 return DomainOwnershipIdentifier{} 8837 } 8838 return iter.page.Values()[iter.i] 8839} 8840 8841// Creates a new instance of the DomainOwnershipIdentifierCollectionIterator type. 8842func NewDomainOwnershipIdentifierCollectionIterator(page DomainOwnershipIdentifierCollectionPage) DomainOwnershipIdentifierCollectionIterator { 8843 return DomainOwnershipIdentifierCollectionIterator{page: page} 8844} 8845 8846// IsEmpty returns true if the ListResult contains no values. 8847func (doic DomainOwnershipIdentifierCollection) IsEmpty() bool { 8848 return doic.Value == nil || len(*doic.Value) == 0 8849} 8850 8851// domainOwnershipIdentifierCollectionPreparer prepares a request to retrieve the next set of results. 8852// It returns nil if no more results exist. 8853func (doic DomainOwnershipIdentifierCollection) domainOwnershipIdentifierCollectionPreparer(ctx context.Context) (*http.Request, error) { 8854 if doic.NextLink == nil || len(to.String(doic.NextLink)) < 1 { 8855 return nil, nil 8856 } 8857 return autorest.Prepare((&http.Request{}).WithContext(ctx), 8858 autorest.AsJSON(), 8859 autorest.AsGet(), 8860 autorest.WithBaseURL(to.String(doic.NextLink))) 8861} 8862 8863// DomainOwnershipIdentifierCollectionPage contains a page of DomainOwnershipIdentifier values. 8864type DomainOwnershipIdentifierCollectionPage struct { 8865 fn func(context.Context, DomainOwnershipIdentifierCollection) (DomainOwnershipIdentifierCollection, error) 8866 doic DomainOwnershipIdentifierCollection 8867} 8868 8869// NextWithContext advances to the next page of values. If there was an error making 8870// the request the page does not advance and the error is returned. 8871func (page *DomainOwnershipIdentifierCollectionPage) NextWithContext(ctx context.Context) (err error) { 8872 if tracing.IsEnabled() { 8873 ctx = tracing.StartSpan(ctx, fqdn+"/DomainOwnershipIdentifierCollectionPage.NextWithContext") 8874 defer func() { 8875 sc := -1 8876 if page.Response().Response.Response != nil { 8877 sc = page.Response().Response.Response.StatusCode 8878 } 8879 tracing.EndSpan(ctx, sc, err) 8880 }() 8881 } 8882 next, err := page.fn(ctx, page.doic) 8883 if err != nil { 8884 return err 8885 } 8886 page.doic = next 8887 return nil 8888} 8889 8890// Next advances to the next page of values. If there was an error making 8891// the request the page does not advance and the error is returned. 8892// Deprecated: Use NextWithContext() instead. 8893func (page *DomainOwnershipIdentifierCollectionPage) Next() error { 8894 return page.NextWithContext(context.Background()) 8895} 8896 8897// NotDone returns true if the page enumeration should be started or is not yet complete. 8898func (page DomainOwnershipIdentifierCollectionPage) NotDone() bool { 8899 return !page.doic.IsEmpty() 8900} 8901 8902// Response returns the raw server response from the last page request. 8903func (page DomainOwnershipIdentifierCollectionPage) Response() DomainOwnershipIdentifierCollection { 8904 return page.doic 8905} 8906 8907// Values returns the slice of values for the current page or nil if there are no values. 8908func (page DomainOwnershipIdentifierCollectionPage) Values() []DomainOwnershipIdentifier { 8909 if page.doic.IsEmpty() { 8910 return nil 8911 } 8912 return *page.doic.Value 8913} 8914 8915// Creates a new instance of the DomainOwnershipIdentifierCollectionPage type. 8916func NewDomainOwnershipIdentifierCollectionPage(getNextPage func(context.Context, DomainOwnershipIdentifierCollection) (DomainOwnershipIdentifierCollection, error)) DomainOwnershipIdentifierCollectionPage { 8917 return DomainOwnershipIdentifierCollectionPage{fn: getNextPage} 8918} 8919 8920// DomainOwnershipIdentifierProperties domainOwnershipIdentifier resource specific properties 8921type DomainOwnershipIdentifierProperties struct { 8922 // OwnershipID - Ownership Id. 8923 OwnershipID *string `json:"ownershipId,omitempty"` 8924} 8925 8926// DomainPatchResource ARM resource for a domain. 8927type DomainPatchResource struct { 8928 // DomainPatchResourceProperties - DomainPatchResource resource specific properties 8929 *DomainPatchResourceProperties `json:"properties,omitempty"` 8930 // ID - READ-ONLY; Resource Id. 8931 ID *string `json:"id,omitempty"` 8932 // Name - READ-ONLY; Resource Name. 8933 Name *string `json:"name,omitempty"` 8934 // Kind - Kind of resource. 8935 Kind *string `json:"kind,omitempty"` 8936 // Type - READ-ONLY; Resource type. 8937 Type *string `json:"type,omitempty"` 8938} 8939 8940// MarshalJSON is the custom marshaler for DomainPatchResource. 8941func (dpr DomainPatchResource) MarshalJSON() ([]byte, error) { 8942 objectMap := make(map[string]interface{}) 8943 if dpr.DomainPatchResourceProperties != nil { 8944 objectMap["properties"] = dpr.DomainPatchResourceProperties 8945 } 8946 if dpr.Kind != nil { 8947 objectMap["kind"] = dpr.Kind 8948 } 8949 return json.Marshal(objectMap) 8950} 8951 8952// UnmarshalJSON is the custom unmarshaler for DomainPatchResource struct. 8953func (dpr *DomainPatchResource) UnmarshalJSON(body []byte) error { 8954 var m map[string]*json.RawMessage 8955 err := json.Unmarshal(body, &m) 8956 if err != nil { 8957 return err 8958 } 8959 for k, v := range m { 8960 switch k { 8961 case "properties": 8962 if v != nil { 8963 var domainPatchResourceProperties DomainPatchResourceProperties 8964 err = json.Unmarshal(*v, &domainPatchResourceProperties) 8965 if err != nil { 8966 return err 8967 } 8968 dpr.DomainPatchResourceProperties = &domainPatchResourceProperties 8969 } 8970 case "id": 8971 if v != nil { 8972 var ID string 8973 err = json.Unmarshal(*v, &ID) 8974 if err != nil { 8975 return err 8976 } 8977 dpr.ID = &ID 8978 } 8979 case "name": 8980 if v != nil { 8981 var name string 8982 err = json.Unmarshal(*v, &name) 8983 if err != nil { 8984 return err 8985 } 8986 dpr.Name = &name 8987 } 8988 case "kind": 8989 if v != nil { 8990 var kind string 8991 err = json.Unmarshal(*v, &kind) 8992 if err != nil { 8993 return err 8994 } 8995 dpr.Kind = &kind 8996 } 8997 case "type": 8998 if v != nil { 8999 var typeVar string 9000 err = json.Unmarshal(*v, &typeVar) 9001 if err != nil { 9002 return err 9003 } 9004 dpr.Type = &typeVar 9005 } 9006 } 9007 } 9008 9009 return nil 9010} 9011 9012// DomainPatchResourceProperties domainPatchResource resource specific properties 9013type DomainPatchResourceProperties struct { 9014 // ContactAdmin - Administrative contact. 9015 ContactAdmin *Contact `json:"contactAdmin,omitempty"` 9016 // ContactBilling - Billing contact. 9017 ContactBilling *Contact `json:"contactBilling,omitempty"` 9018 // ContactRegistrant - Registrant contact. 9019 ContactRegistrant *Contact `json:"contactRegistrant,omitempty"` 9020 // ContactTech - Technical contact. 9021 ContactTech *Contact `json:"contactTech,omitempty"` 9022 // RegistrationStatus - READ-ONLY; Domain registration status. Possible values include: 'DomainStatusActive', 'DomainStatusAwaiting', 'DomainStatusCancelled', 'DomainStatusConfiscated', 'DomainStatusDisabled', 'DomainStatusExcluded', 'DomainStatusExpired', 'DomainStatusFailed', 'DomainStatusHeld', 'DomainStatusLocked', 'DomainStatusParked', 'DomainStatusPending', 'DomainStatusReserved', 'DomainStatusReverted', 'DomainStatusSuspended', 'DomainStatusTransferred', 'DomainStatusUnknown', 'DomainStatusUnlocked', 'DomainStatusUnparked', 'DomainStatusUpdated', 'DomainStatusJSONConverterFailed' 9023 RegistrationStatus DomainStatus `json:"registrationStatus,omitempty"` 9024 // ProvisioningState - READ-ONLY; Domain provisioning state. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 9025 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 9026 // NameServers - READ-ONLY; Name servers. 9027 NameServers *[]string `json:"nameServers,omitempty"` 9028 // Privacy - <code>true</code> if domain privacy is enabled for this domain; otherwise, <code>false</code>. 9029 Privacy *bool `json:"privacy,omitempty"` 9030 // CreatedTime - READ-ONLY; Domain creation timestamp. 9031 CreatedTime *date.Time `json:"createdTime,omitempty"` 9032 // ExpirationTime - READ-ONLY; Domain expiration timestamp. 9033 ExpirationTime *date.Time `json:"expirationTime,omitempty"` 9034 // LastRenewedTime - READ-ONLY; Timestamp when the domain was renewed last time. 9035 LastRenewedTime *date.Time `json:"lastRenewedTime,omitempty"` 9036 // AutoRenew - <code>true</code> if the domain should be automatically renewed; otherwise, <code>false</code>. 9037 AutoRenew *bool `json:"autoRenew,omitempty"` 9038 // ReadyForDNSRecordManagement - READ-ONLY; <code>true</code> if Azure can assign this domain to App Service apps; otherwise, <code>false</code>. This value will be <code>true</code> if domain registration status is active and 9039 // it is hosted on name servers Azure has programmatic access to. 9040 ReadyForDNSRecordManagement *bool `json:"readyForDnsRecordManagement,omitempty"` 9041 // ManagedHostNames - READ-ONLY; All hostnames derived from the domain and assigned to Azure resources. 9042 ManagedHostNames *[]HostName `json:"managedHostNames,omitempty"` 9043 // Consent - Legal agreement consent. 9044 Consent *DomainPurchaseConsent `json:"consent,omitempty"` 9045 // DomainNotRenewableReasons - READ-ONLY; Reasons why domain is not renewable. 9046 DomainNotRenewableReasons *[]string `json:"domainNotRenewableReasons,omitempty"` 9047 // DNSType - Current DNS type. Possible values include: 'AzureDNS', 'DefaultDomainRegistrarDNS' 9048 DNSType DNSType `json:"dnsType,omitempty"` 9049 // DNSZoneID - Azure DNS Zone to use 9050 DNSZoneID *string `json:"dnsZoneId,omitempty"` 9051 // TargetDNSType - Target DNS type (would be used for migration). Possible values include: 'AzureDNS', 'DefaultDomainRegistrarDNS' 9052 TargetDNSType DNSType `json:"targetDnsType,omitempty"` 9053 AuthCode *string `json:"authCode,omitempty"` 9054} 9055 9056// DomainProperties domain resource specific properties 9057type DomainProperties struct { 9058 // ContactAdmin - Administrative contact. 9059 ContactAdmin *Contact `json:"contactAdmin,omitempty"` 9060 // ContactBilling - Billing contact. 9061 ContactBilling *Contact `json:"contactBilling,omitempty"` 9062 // ContactRegistrant - Registrant contact. 9063 ContactRegistrant *Contact `json:"contactRegistrant,omitempty"` 9064 // ContactTech - Technical contact. 9065 ContactTech *Contact `json:"contactTech,omitempty"` 9066 // RegistrationStatus - READ-ONLY; Domain registration status. Possible values include: 'DomainStatusActive', 'DomainStatusAwaiting', 'DomainStatusCancelled', 'DomainStatusConfiscated', 'DomainStatusDisabled', 'DomainStatusExcluded', 'DomainStatusExpired', 'DomainStatusFailed', 'DomainStatusHeld', 'DomainStatusLocked', 'DomainStatusParked', 'DomainStatusPending', 'DomainStatusReserved', 'DomainStatusReverted', 'DomainStatusSuspended', 'DomainStatusTransferred', 'DomainStatusUnknown', 'DomainStatusUnlocked', 'DomainStatusUnparked', 'DomainStatusUpdated', 'DomainStatusJSONConverterFailed' 9067 RegistrationStatus DomainStatus `json:"registrationStatus,omitempty"` 9068 // ProvisioningState - READ-ONLY; Domain provisioning state. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 9069 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 9070 // NameServers - READ-ONLY; Name servers. 9071 NameServers *[]string `json:"nameServers,omitempty"` 9072 // Privacy - <code>true</code> if domain privacy is enabled for this domain; otherwise, <code>false</code>. 9073 Privacy *bool `json:"privacy,omitempty"` 9074 // CreatedTime - READ-ONLY; Domain creation timestamp. 9075 CreatedTime *date.Time `json:"createdTime,omitempty"` 9076 // ExpirationTime - READ-ONLY; Domain expiration timestamp. 9077 ExpirationTime *date.Time `json:"expirationTime,omitempty"` 9078 // LastRenewedTime - READ-ONLY; Timestamp when the domain was renewed last time. 9079 LastRenewedTime *date.Time `json:"lastRenewedTime,omitempty"` 9080 // AutoRenew - <code>true</code> if the domain should be automatically renewed; otherwise, <code>false</code>. 9081 AutoRenew *bool `json:"autoRenew,omitempty"` 9082 // ReadyForDNSRecordManagement - READ-ONLY; <code>true</code> if Azure can assign this domain to App Service apps; otherwise, <code>false</code>. This value will be <code>true</code> if domain registration status is active and 9083 // it is hosted on name servers Azure has programmatic access to. 9084 ReadyForDNSRecordManagement *bool `json:"readyForDnsRecordManagement,omitempty"` 9085 // ManagedHostNames - READ-ONLY; All hostnames derived from the domain and assigned to Azure resources. 9086 ManagedHostNames *[]HostName `json:"managedHostNames,omitempty"` 9087 // Consent - Legal agreement consent. 9088 Consent *DomainPurchaseConsent `json:"consent,omitempty"` 9089 // DomainNotRenewableReasons - READ-ONLY; Reasons why domain is not renewable. 9090 DomainNotRenewableReasons *[]string `json:"domainNotRenewableReasons,omitempty"` 9091 // DNSType - Current DNS type. Possible values include: 'AzureDNS', 'DefaultDomainRegistrarDNS' 9092 DNSType DNSType `json:"dnsType,omitempty"` 9093 // DNSZoneID - Azure DNS Zone to use 9094 DNSZoneID *string `json:"dnsZoneId,omitempty"` 9095 // TargetDNSType - Target DNS type (would be used for migration). Possible values include: 'AzureDNS', 'DefaultDomainRegistrarDNS' 9096 TargetDNSType DNSType `json:"targetDnsType,omitempty"` 9097 AuthCode *string `json:"authCode,omitempty"` 9098} 9099 9100// DomainPurchaseConsent domain purchase consent object, representing acceptance of applicable legal 9101// agreements. 9102type DomainPurchaseConsent struct { 9103 // AgreementKeys - List of applicable legal agreement keys. This list can be retrieved using ListLegalAgreements API under <code>TopLevelDomain</code> resource. 9104 AgreementKeys *[]string `json:"agreementKeys,omitempty"` 9105 // AgreedBy - Client IP address. 9106 AgreedBy *string `json:"agreedBy,omitempty"` 9107 // AgreedAt - Timestamp when the agreements were accepted. 9108 AgreedAt *date.Time `json:"agreedAt,omitempty"` 9109} 9110 9111// DomainRecommendationSearchParameters domain recommendation search parameters. 9112type DomainRecommendationSearchParameters struct { 9113 // Keywords - Keywords to be used for generating domain recommendations. 9114 Keywords *string `json:"keywords,omitempty"` 9115 // MaxDomainRecommendations - Maximum number of recommendations. 9116 MaxDomainRecommendations *int32 `json:"maxDomainRecommendations,omitempty"` 9117} 9118 9119// DomainsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a long-running 9120// operation. 9121type DomainsCreateOrUpdateFuture struct { 9122 azure.Future 9123} 9124 9125// Result returns the result of the asynchronous operation. 9126// If the operation has not completed it will return an error. 9127func (future *DomainsCreateOrUpdateFuture) Result(client DomainsClient) (d Domain, err error) { 9128 var done bool 9129 done, err = future.DoneWithContext(context.Background(), client) 9130 if err != nil { 9131 err = autorest.NewErrorWithError(err, "web.DomainsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure") 9132 return 9133 } 9134 if !done { 9135 err = azure.NewAsyncOpIncompleteError("web.DomainsCreateOrUpdateFuture") 9136 return 9137 } 9138 sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 9139 if d.Response.Response, err = future.GetResult(sender); err == nil && d.Response.Response.StatusCode != http.StatusNoContent { 9140 d, err = client.CreateOrUpdateResponder(d.Response.Response) 9141 if err != nil { 9142 err = autorest.NewErrorWithError(err, "web.DomainsCreateOrUpdateFuture", "Result", d.Response.Response, "Failure responding to request") 9143 } 9144 } 9145 return 9146} 9147 9148// EnabledConfig enabled configuration. 9149type EnabledConfig struct { 9150 // Enabled - True if configuration is enabled, false if it is disabled and null if configuration is not set. 9151 Enabled *bool `json:"enabled,omitempty"` 9152} 9153 9154// ErrorEntity body of the error response returned from the API. 9155type ErrorEntity struct { 9156 // ExtendedCode - Type of error. 9157 ExtendedCode *string `json:"extendedCode,omitempty"` 9158 // MessageTemplate - Message template. 9159 MessageTemplate *string `json:"messageTemplate,omitempty"` 9160 // Parameters - Parameters for the template. 9161 Parameters *[]string `json:"parameters,omitempty"` 9162 // InnerErrors - Inner errors. 9163 InnerErrors *[]ErrorEntity `json:"innerErrors,omitempty"` 9164 // Code - Basic error code. 9165 Code *string `json:"code,omitempty"` 9166 // Message - Any details of the error. 9167 Message *string `json:"message,omitempty"` 9168} 9169 9170// ErrorResponse error Response. 9171type ErrorResponse struct { 9172 // Code - Error code. 9173 Code *string `json:"code,omitempty"` 9174 // Message - Error message indicating why the operation failed. 9175 Message *string `json:"message,omitempty"` 9176} 9177 9178// Experiments routing rules in production experiments. 9179type Experiments struct { 9180 // RampUpRules - List of ramp-up rules. 9181 RampUpRules *[]RampUpRule `json:"rampUpRules,omitempty"` 9182} 9183 9184// FileSystemApplicationLogsConfig application logs to file system configuration. 9185type FileSystemApplicationLogsConfig struct { 9186 // Level - Log level. Possible values include: 'Off', 'Verbose', 'Information', 'Warning', 'Error' 9187 Level LogLevel `json:"level,omitempty"` 9188} 9189 9190// FileSystemHTTPLogsConfig http logs to file system configuration. 9191type FileSystemHTTPLogsConfig struct { 9192 // RetentionInMb - Maximum size in megabytes that http log files can use. 9193 // When reached old log files will be removed to make space for new ones. 9194 // Value can range between 25 and 100. 9195 RetentionInMb *int32 `json:"retentionInMb,omitempty"` 9196 // RetentionInDays - Retention in days. 9197 // Remove files older than X days. 9198 // 0 or lower means no retention. 9199 RetentionInDays *int32 `json:"retentionInDays,omitempty"` 9200 // Enabled - True if configuration is enabled, false if it is disabled and null if configuration is not set. 9201 Enabled *bool `json:"enabled,omitempty"` 9202} 9203 9204// FunctionEnvelope web Job Information. 9205type FunctionEnvelope struct { 9206 autorest.Response `json:"-"` 9207 // FunctionEnvelopeProperties - FunctionEnvelope resource specific properties 9208 *FunctionEnvelopeProperties `json:"properties,omitempty"` 9209 // ID - READ-ONLY; Resource Id. 9210 ID *string `json:"id,omitempty"` 9211 // Name - READ-ONLY; Resource Name. 9212 Name *string `json:"name,omitempty"` 9213 // Kind - Kind of resource. 9214 Kind *string `json:"kind,omitempty"` 9215 // Type - READ-ONLY; Resource type. 9216 Type *string `json:"type,omitempty"` 9217} 9218 9219// MarshalJSON is the custom marshaler for FunctionEnvelope. 9220func (fe FunctionEnvelope) MarshalJSON() ([]byte, error) { 9221 objectMap := make(map[string]interface{}) 9222 if fe.FunctionEnvelopeProperties != nil { 9223 objectMap["properties"] = fe.FunctionEnvelopeProperties 9224 } 9225 if fe.Kind != nil { 9226 objectMap["kind"] = fe.Kind 9227 } 9228 return json.Marshal(objectMap) 9229} 9230 9231// UnmarshalJSON is the custom unmarshaler for FunctionEnvelope struct. 9232func (fe *FunctionEnvelope) UnmarshalJSON(body []byte) error { 9233 var m map[string]*json.RawMessage 9234 err := json.Unmarshal(body, &m) 9235 if err != nil { 9236 return err 9237 } 9238 for k, v := range m { 9239 switch k { 9240 case "properties": 9241 if v != nil { 9242 var functionEnvelopeProperties FunctionEnvelopeProperties 9243 err = json.Unmarshal(*v, &functionEnvelopeProperties) 9244 if err != nil { 9245 return err 9246 } 9247 fe.FunctionEnvelopeProperties = &functionEnvelopeProperties 9248 } 9249 case "id": 9250 if v != nil { 9251 var ID string 9252 err = json.Unmarshal(*v, &ID) 9253 if err != nil { 9254 return err 9255 } 9256 fe.ID = &ID 9257 } 9258 case "name": 9259 if v != nil { 9260 var name string 9261 err = json.Unmarshal(*v, &name) 9262 if err != nil { 9263 return err 9264 } 9265 fe.Name = &name 9266 } 9267 case "kind": 9268 if v != nil { 9269 var kind string 9270 err = json.Unmarshal(*v, &kind) 9271 if err != nil { 9272 return err 9273 } 9274 fe.Kind = &kind 9275 } 9276 case "type": 9277 if v != nil { 9278 var typeVar string 9279 err = json.Unmarshal(*v, &typeVar) 9280 if err != nil { 9281 return err 9282 } 9283 fe.Type = &typeVar 9284 } 9285 } 9286 } 9287 9288 return nil 9289} 9290 9291// FunctionEnvelopeCollection collection of Kudu function information elements. 9292type FunctionEnvelopeCollection struct { 9293 autorest.Response `json:"-"` 9294 // Value - Collection of resources. 9295 Value *[]FunctionEnvelope `json:"value,omitempty"` 9296 // NextLink - READ-ONLY; Link to next page of resources. 9297 NextLink *string `json:"nextLink,omitempty"` 9298} 9299 9300// FunctionEnvelopeCollectionIterator provides access to a complete listing of FunctionEnvelope values. 9301type FunctionEnvelopeCollectionIterator struct { 9302 i int 9303 page FunctionEnvelopeCollectionPage 9304} 9305 9306// NextWithContext advances to the next value. If there was an error making 9307// the request the iterator does not advance and the error is returned. 9308func (iter *FunctionEnvelopeCollectionIterator) NextWithContext(ctx context.Context) (err error) { 9309 if tracing.IsEnabled() { 9310 ctx = tracing.StartSpan(ctx, fqdn+"/FunctionEnvelopeCollectionIterator.NextWithContext") 9311 defer func() { 9312 sc := -1 9313 if iter.Response().Response.Response != nil { 9314 sc = iter.Response().Response.Response.StatusCode 9315 } 9316 tracing.EndSpan(ctx, sc, err) 9317 }() 9318 } 9319 iter.i++ 9320 if iter.i < len(iter.page.Values()) { 9321 return nil 9322 } 9323 err = iter.page.NextWithContext(ctx) 9324 if err != nil { 9325 iter.i-- 9326 return err 9327 } 9328 iter.i = 0 9329 return nil 9330} 9331 9332// Next advances to the next value. If there was an error making 9333// the request the iterator does not advance and the error is returned. 9334// Deprecated: Use NextWithContext() instead. 9335func (iter *FunctionEnvelopeCollectionIterator) Next() error { 9336 return iter.NextWithContext(context.Background()) 9337} 9338 9339// NotDone returns true if the enumeration should be started or is not yet complete. 9340func (iter FunctionEnvelopeCollectionIterator) NotDone() bool { 9341 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 9342} 9343 9344// Response returns the raw server response from the last page request. 9345func (iter FunctionEnvelopeCollectionIterator) Response() FunctionEnvelopeCollection { 9346 return iter.page.Response() 9347} 9348 9349// Value returns the current value or a zero-initialized value if the 9350// iterator has advanced beyond the end of the collection. 9351func (iter FunctionEnvelopeCollectionIterator) Value() FunctionEnvelope { 9352 if !iter.page.NotDone() { 9353 return FunctionEnvelope{} 9354 } 9355 return iter.page.Values()[iter.i] 9356} 9357 9358// Creates a new instance of the FunctionEnvelopeCollectionIterator type. 9359func NewFunctionEnvelopeCollectionIterator(page FunctionEnvelopeCollectionPage) FunctionEnvelopeCollectionIterator { 9360 return FunctionEnvelopeCollectionIterator{page: page} 9361} 9362 9363// IsEmpty returns true if the ListResult contains no values. 9364func (fec FunctionEnvelopeCollection) IsEmpty() bool { 9365 return fec.Value == nil || len(*fec.Value) == 0 9366} 9367 9368// functionEnvelopeCollectionPreparer prepares a request to retrieve the next set of results. 9369// It returns nil if no more results exist. 9370func (fec FunctionEnvelopeCollection) functionEnvelopeCollectionPreparer(ctx context.Context) (*http.Request, error) { 9371 if fec.NextLink == nil || len(to.String(fec.NextLink)) < 1 { 9372 return nil, nil 9373 } 9374 return autorest.Prepare((&http.Request{}).WithContext(ctx), 9375 autorest.AsJSON(), 9376 autorest.AsGet(), 9377 autorest.WithBaseURL(to.String(fec.NextLink))) 9378} 9379 9380// FunctionEnvelopeCollectionPage contains a page of FunctionEnvelope values. 9381type FunctionEnvelopeCollectionPage struct { 9382 fn func(context.Context, FunctionEnvelopeCollection) (FunctionEnvelopeCollection, error) 9383 fec FunctionEnvelopeCollection 9384} 9385 9386// NextWithContext advances to the next page of values. If there was an error making 9387// the request the page does not advance and the error is returned. 9388func (page *FunctionEnvelopeCollectionPage) NextWithContext(ctx context.Context) (err error) { 9389 if tracing.IsEnabled() { 9390 ctx = tracing.StartSpan(ctx, fqdn+"/FunctionEnvelopeCollectionPage.NextWithContext") 9391 defer func() { 9392 sc := -1 9393 if page.Response().Response.Response != nil { 9394 sc = page.Response().Response.Response.StatusCode 9395 } 9396 tracing.EndSpan(ctx, sc, err) 9397 }() 9398 } 9399 next, err := page.fn(ctx, page.fec) 9400 if err != nil { 9401 return err 9402 } 9403 page.fec = next 9404 return nil 9405} 9406 9407// Next advances to the next page of values. If there was an error making 9408// the request the page does not advance and the error is returned. 9409// Deprecated: Use NextWithContext() instead. 9410func (page *FunctionEnvelopeCollectionPage) Next() error { 9411 return page.NextWithContext(context.Background()) 9412} 9413 9414// NotDone returns true if the page enumeration should be started or is not yet complete. 9415func (page FunctionEnvelopeCollectionPage) NotDone() bool { 9416 return !page.fec.IsEmpty() 9417} 9418 9419// Response returns the raw server response from the last page request. 9420func (page FunctionEnvelopeCollectionPage) Response() FunctionEnvelopeCollection { 9421 return page.fec 9422} 9423 9424// Values returns the slice of values for the current page or nil if there are no values. 9425func (page FunctionEnvelopeCollectionPage) Values() []FunctionEnvelope { 9426 if page.fec.IsEmpty() { 9427 return nil 9428 } 9429 return *page.fec.Value 9430} 9431 9432// Creates a new instance of the FunctionEnvelopeCollectionPage type. 9433func NewFunctionEnvelopeCollectionPage(getNextPage func(context.Context, FunctionEnvelopeCollection) (FunctionEnvelopeCollection, error)) FunctionEnvelopeCollectionPage { 9434 return FunctionEnvelopeCollectionPage{fn: getNextPage} 9435} 9436 9437// FunctionEnvelopeProperties functionEnvelope resource specific properties 9438type FunctionEnvelopeProperties struct { 9439 // Name - READ-ONLY; Function name. 9440 Name *string `json:"name,omitempty"` 9441 // FunctionAppID - READ-ONLY; Function App ID. 9442 FunctionAppID *string `json:"functionAppId,omitempty"` 9443 // ScriptRootPathHref - Script root path URI. 9444 ScriptRootPathHref *string `json:"scriptRootPathHref,omitempty"` 9445 // ScriptHref - Script URI. 9446 ScriptHref *string `json:"scriptHref,omitempty"` 9447 // ConfigHref - Config URI. 9448 ConfigHref *string `json:"configHref,omitempty"` 9449 // SecretsFileHref - Secrets file URI. 9450 SecretsFileHref *string `json:"secretsFileHref,omitempty"` 9451 // Href - Function URI. 9452 Href *string `json:"href,omitempty"` 9453 // Config - Config information. 9454 Config interface{} `json:"config,omitempty"` 9455 // Files - File list. 9456 Files map[string]*string `json:"files"` 9457 // TestData - Test data used when testing via the Azure Portal. 9458 TestData *string `json:"testData,omitempty"` 9459} 9460 9461// MarshalJSON is the custom marshaler for FunctionEnvelopeProperties. 9462func (fe FunctionEnvelopeProperties) MarshalJSON() ([]byte, error) { 9463 objectMap := make(map[string]interface{}) 9464 if fe.ScriptRootPathHref != nil { 9465 objectMap["scriptRootPathHref"] = fe.ScriptRootPathHref 9466 } 9467 if fe.ScriptHref != nil { 9468 objectMap["scriptHref"] = fe.ScriptHref 9469 } 9470 if fe.ConfigHref != nil { 9471 objectMap["configHref"] = fe.ConfigHref 9472 } 9473 if fe.SecretsFileHref != nil { 9474 objectMap["secretsFileHref"] = fe.SecretsFileHref 9475 } 9476 if fe.Href != nil { 9477 objectMap["href"] = fe.Href 9478 } 9479 if fe.Config != nil { 9480 objectMap["config"] = fe.Config 9481 } 9482 if fe.Files != nil { 9483 objectMap["files"] = fe.Files 9484 } 9485 if fe.TestData != nil { 9486 objectMap["testData"] = fe.TestData 9487 } 9488 return json.Marshal(objectMap) 9489} 9490 9491// FunctionSecrets function secrets. 9492type FunctionSecrets struct { 9493 autorest.Response `json:"-"` 9494 // FunctionSecretsProperties - FunctionSecrets resource specific properties 9495 *FunctionSecretsProperties `json:"properties,omitempty"` 9496 // ID - READ-ONLY; Resource Id. 9497 ID *string `json:"id,omitempty"` 9498 // Name - READ-ONLY; Resource Name. 9499 Name *string `json:"name,omitempty"` 9500 // Kind - Kind of resource. 9501 Kind *string `json:"kind,omitempty"` 9502 // Type - READ-ONLY; Resource type. 9503 Type *string `json:"type,omitempty"` 9504} 9505 9506// MarshalJSON is the custom marshaler for FunctionSecrets. 9507func (fs FunctionSecrets) MarshalJSON() ([]byte, error) { 9508 objectMap := make(map[string]interface{}) 9509 if fs.FunctionSecretsProperties != nil { 9510 objectMap["properties"] = fs.FunctionSecretsProperties 9511 } 9512 if fs.Kind != nil { 9513 objectMap["kind"] = fs.Kind 9514 } 9515 return json.Marshal(objectMap) 9516} 9517 9518// UnmarshalJSON is the custom unmarshaler for FunctionSecrets struct. 9519func (fs *FunctionSecrets) UnmarshalJSON(body []byte) error { 9520 var m map[string]*json.RawMessage 9521 err := json.Unmarshal(body, &m) 9522 if err != nil { 9523 return err 9524 } 9525 for k, v := range m { 9526 switch k { 9527 case "properties": 9528 if v != nil { 9529 var functionSecretsProperties FunctionSecretsProperties 9530 err = json.Unmarshal(*v, &functionSecretsProperties) 9531 if err != nil { 9532 return err 9533 } 9534 fs.FunctionSecretsProperties = &functionSecretsProperties 9535 } 9536 case "id": 9537 if v != nil { 9538 var ID string 9539 err = json.Unmarshal(*v, &ID) 9540 if err != nil { 9541 return err 9542 } 9543 fs.ID = &ID 9544 } 9545 case "name": 9546 if v != nil { 9547 var name string 9548 err = json.Unmarshal(*v, &name) 9549 if err != nil { 9550 return err 9551 } 9552 fs.Name = &name 9553 } 9554 case "kind": 9555 if v != nil { 9556 var kind string 9557 err = json.Unmarshal(*v, &kind) 9558 if err != nil { 9559 return err 9560 } 9561 fs.Kind = &kind 9562 } 9563 case "type": 9564 if v != nil { 9565 var typeVar string 9566 err = json.Unmarshal(*v, &typeVar) 9567 if err != nil { 9568 return err 9569 } 9570 fs.Type = &typeVar 9571 } 9572 } 9573 } 9574 9575 return nil 9576} 9577 9578// FunctionSecretsProperties functionSecrets resource specific properties 9579type FunctionSecretsProperties struct { 9580 // Key - Secret key. 9581 Key *string `json:"key,omitempty"` 9582 // TriggerURL - Trigger URL. 9583 TriggerURL *string `json:"triggerUrl,omitempty"` 9584} 9585 9586// GeoRegion geographical region. 9587type GeoRegion struct { 9588 // GeoRegionProperties - GeoRegion resource specific properties 9589 *GeoRegionProperties `json:"properties,omitempty"` 9590 // ID - READ-ONLY; Resource Id. 9591 ID *string `json:"id,omitempty"` 9592 // Name - READ-ONLY; Resource Name. 9593 Name *string `json:"name,omitempty"` 9594 // Kind - Kind of resource. 9595 Kind *string `json:"kind,omitempty"` 9596 // Type - READ-ONLY; Resource type. 9597 Type *string `json:"type,omitempty"` 9598} 9599 9600// MarshalJSON is the custom marshaler for GeoRegion. 9601func (gr GeoRegion) MarshalJSON() ([]byte, error) { 9602 objectMap := make(map[string]interface{}) 9603 if gr.GeoRegionProperties != nil { 9604 objectMap["properties"] = gr.GeoRegionProperties 9605 } 9606 if gr.Kind != nil { 9607 objectMap["kind"] = gr.Kind 9608 } 9609 return json.Marshal(objectMap) 9610} 9611 9612// UnmarshalJSON is the custom unmarshaler for GeoRegion struct. 9613func (gr *GeoRegion) UnmarshalJSON(body []byte) error { 9614 var m map[string]*json.RawMessage 9615 err := json.Unmarshal(body, &m) 9616 if err != nil { 9617 return err 9618 } 9619 for k, v := range m { 9620 switch k { 9621 case "properties": 9622 if v != nil { 9623 var geoRegionProperties GeoRegionProperties 9624 err = json.Unmarshal(*v, &geoRegionProperties) 9625 if err != nil { 9626 return err 9627 } 9628 gr.GeoRegionProperties = &geoRegionProperties 9629 } 9630 case "id": 9631 if v != nil { 9632 var ID string 9633 err = json.Unmarshal(*v, &ID) 9634 if err != nil { 9635 return err 9636 } 9637 gr.ID = &ID 9638 } 9639 case "name": 9640 if v != nil { 9641 var name string 9642 err = json.Unmarshal(*v, &name) 9643 if err != nil { 9644 return err 9645 } 9646 gr.Name = &name 9647 } 9648 case "kind": 9649 if v != nil { 9650 var kind string 9651 err = json.Unmarshal(*v, &kind) 9652 if err != nil { 9653 return err 9654 } 9655 gr.Kind = &kind 9656 } 9657 case "type": 9658 if v != nil { 9659 var typeVar string 9660 err = json.Unmarshal(*v, &typeVar) 9661 if err != nil { 9662 return err 9663 } 9664 gr.Type = &typeVar 9665 } 9666 } 9667 } 9668 9669 return nil 9670} 9671 9672// GeoRegionCollection collection of geographical regions. 9673type GeoRegionCollection struct { 9674 autorest.Response `json:"-"` 9675 // Value - Collection of resources. 9676 Value *[]GeoRegion `json:"value,omitempty"` 9677 // NextLink - READ-ONLY; Link to next page of resources. 9678 NextLink *string `json:"nextLink,omitempty"` 9679} 9680 9681// GeoRegionCollectionIterator provides access to a complete listing of GeoRegion values. 9682type GeoRegionCollectionIterator struct { 9683 i int 9684 page GeoRegionCollectionPage 9685} 9686 9687// NextWithContext advances to the next value. If there was an error making 9688// the request the iterator does not advance and the error is returned. 9689func (iter *GeoRegionCollectionIterator) NextWithContext(ctx context.Context) (err error) { 9690 if tracing.IsEnabled() { 9691 ctx = tracing.StartSpan(ctx, fqdn+"/GeoRegionCollectionIterator.NextWithContext") 9692 defer func() { 9693 sc := -1 9694 if iter.Response().Response.Response != nil { 9695 sc = iter.Response().Response.Response.StatusCode 9696 } 9697 tracing.EndSpan(ctx, sc, err) 9698 }() 9699 } 9700 iter.i++ 9701 if iter.i < len(iter.page.Values()) { 9702 return nil 9703 } 9704 err = iter.page.NextWithContext(ctx) 9705 if err != nil { 9706 iter.i-- 9707 return err 9708 } 9709 iter.i = 0 9710 return nil 9711} 9712 9713// Next advances to the next value. If there was an error making 9714// the request the iterator does not advance and the error is returned. 9715// Deprecated: Use NextWithContext() instead. 9716func (iter *GeoRegionCollectionIterator) Next() error { 9717 return iter.NextWithContext(context.Background()) 9718} 9719 9720// NotDone returns true if the enumeration should be started or is not yet complete. 9721func (iter GeoRegionCollectionIterator) NotDone() bool { 9722 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 9723} 9724 9725// Response returns the raw server response from the last page request. 9726func (iter GeoRegionCollectionIterator) Response() GeoRegionCollection { 9727 return iter.page.Response() 9728} 9729 9730// Value returns the current value or a zero-initialized value if the 9731// iterator has advanced beyond the end of the collection. 9732func (iter GeoRegionCollectionIterator) Value() GeoRegion { 9733 if !iter.page.NotDone() { 9734 return GeoRegion{} 9735 } 9736 return iter.page.Values()[iter.i] 9737} 9738 9739// Creates a new instance of the GeoRegionCollectionIterator type. 9740func NewGeoRegionCollectionIterator(page GeoRegionCollectionPage) GeoRegionCollectionIterator { 9741 return GeoRegionCollectionIterator{page: page} 9742} 9743 9744// IsEmpty returns true if the ListResult contains no values. 9745func (grc GeoRegionCollection) IsEmpty() bool { 9746 return grc.Value == nil || len(*grc.Value) == 0 9747} 9748 9749// geoRegionCollectionPreparer prepares a request to retrieve the next set of results. 9750// It returns nil if no more results exist. 9751func (grc GeoRegionCollection) geoRegionCollectionPreparer(ctx context.Context) (*http.Request, error) { 9752 if grc.NextLink == nil || len(to.String(grc.NextLink)) < 1 { 9753 return nil, nil 9754 } 9755 return autorest.Prepare((&http.Request{}).WithContext(ctx), 9756 autorest.AsJSON(), 9757 autorest.AsGet(), 9758 autorest.WithBaseURL(to.String(grc.NextLink))) 9759} 9760 9761// GeoRegionCollectionPage contains a page of GeoRegion values. 9762type GeoRegionCollectionPage struct { 9763 fn func(context.Context, GeoRegionCollection) (GeoRegionCollection, error) 9764 grc GeoRegionCollection 9765} 9766 9767// NextWithContext advances to the next page of values. If there was an error making 9768// the request the page does not advance and the error is returned. 9769func (page *GeoRegionCollectionPage) NextWithContext(ctx context.Context) (err error) { 9770 if tracing.IsEnabled() { 9771 ctx = tracing.StartSpan(ctx, fqdn+"/GeoRegionCollectionPage.NextWithContext") 9772 defer func() { 9773 sc := -1 9774 if page.Response().Response.Response != nil { 9775 sc = page.Response().Response.Response.StatusCode 9776 } 9777 tracing.EndSpan(ctx, sc, err) 9778 }() 9779 } 9780 next, err := page.fn(ctx, page.grc) 9781 if err != nil { 9782 return err 9783 } 9784 page.grc = next 9785 return nil 9786} 9787 9788// Next advances to the next page of values. If there was an error making 9789// the request the page does not advance and the error is returned. 9790// Deprecated: Use NextWithContext() instead. 9791func (page *GeoRegionCollectionPage) Next() error { 9792 return page.NextWithContext(context.Background()) 9793} 9794 9795// NotDone returns true if the page enumeration should be started or is not yet complete. 9796func (page GeoRegionCollectionPage) NotDone() bool { 9797 return !page.grc.IsEmpty() 9798} 9799 9800// Response returns the raw server response from the last page request. 9801func (page GeoRegionCollectionPage) Response() GeoRegionCollection { 9802 return page.grc 9803} 9804 9805// Values returns the slice of values for the current page or nil if there are no values. 9806func (page GeoRegionCollectionPage) Values() []GeoRegion { 9807 if page.grc.IsEmpty() { 9808 return nil 9809 } 9810 return *page.grc.Value 9811} 9812 9813// Creates a new instance of the GeoRegionCollectionPage type. 9814func NewGeoRegionCollectionPage(getNextPage func(context.Context, GeoRegionCollection) (GeoRegionCollection, error)) GeoRegionCollectionPage { 9815 return GeoRegionCollectionPage{fn: getNextPage} 9816} 9817 9818// GeoRegionProperties geoRegion resource specific properties 9819type GeoRegionProperties struct { 9820 // Name - READ-ONLY; Region name. 9821 Name *string `json:"name,omitempty"` 9822 // Description - READ-ONLY; Region description. 9823 Description *string `json:"description,omitempty"` 9824 // DisplayName - READ-ONLY; Display name for region. 9825 DisplayName *string `json:"displayName,omitempty"` 9826} 9827 9828// GlobalCsmSkuDescription a Global SKU Description. 9829type GlobalCsmSkuDescription struct { 9830 // Name - Name of the resource SKU. 9831 Name *string `json:"name,omitempty"` 9832 // Tier - Service Tier of the resource SKU. 9833 Tier *string `json:"tier,omitempty"` 9834 // Size - Size specifier of the resource SKU. 9835 Size *string `json:"size,omitempty"` 9836 // Family - Family code of the resource SKU. 9837 Family *string `json:"family,omitempty"` 9838 // Capacity - Min, max, and default scale values of the SKU. 9839 Capacity *SkuCapacity `json:"capacity,omitempty"` 9840 // Locations - Locations of the SKU. 9841 Locations *[]string `json:"locations,omitempty"` 9842 // Capabilities - Capabilities of the SKU, e.g., is traffic manager enabled? 9843 Capabilities *[]Capability `json:"capabilities,omitempty"` 9844} 9845 9846// HandlerMapping the IIS handler mappings used to define which handler processes HTTP requests with 9847// certain extension. 9848// For example, it is used to configure php-cgi.exe process to handle all HTTP requests with *.php 9849// extension. 9850type HandlerMapping struct { 9851 // Extension - Requests with this extension will be handled using the specified FastCGI application. 9852 Extension *string `json:"extension,omitempty"` 9853 // ScriptProcessor - The absolute path to the FastCGI application. 9854 ScriptProcessor *string `json:"scriptProcessor,omitempty"` 9855 // Arguments - Command-line arguments to be passed to the script processor. 9856 Arguments *string `json:"arguments,omitempty"` 9857} 9858 9859// HostingEnvironmentDeploymentInfo information needed to create resources on an App Service Environment. 9860type HostingEnvironmentDeploymentInfo struct { 9861 // Name - Name of the App Service Environment. 9862 Name *string `json:"name,omitempty"` 9863 // Location - Location of the App Service Environment. 9864 Location *string `json:"location,omitempty"` 9865} 9866 9867// HostingEnvironmentDiagnostics diagnostics for an App Service Environment. 9868type HostingEnvironmentDiagnostics struct { 9869 autorest.Response `json:"-"` 9870 // Name - Name/identifier of the diagnostics. 9871 Name *string `json:"name,omitempty"` 9872 // DiagnosicsOutput - Diagnostics output. 9873 DiagnosicsOutput *string `json:"diagnosicsOutput,omitempty"` 9874} 9875 9876// HostingEnvironmentProfile specification for an App Service Environment to use for this resource. 9877type HostingEnvironmentProfile struct { 9878 // ID - Resource ID of the App Service Environment. 9879 ID *string `json:"id,omitempty"` 9880 // Name - READ-ONLY; Name of the App Service Environment. 9881 Name *string `json:"name,omitempty"` 9882 // Type - READ-ONLY; Resource type of the App Service Environment. 9883 Type *string `json:"type,omitempty"` 9884} 9885 9886// HostName details of a hostname derived from a domain. 9887type HostName struct { 9888 // Name - Name of the hostname. 9889 Name *string `json:"name,omitempty"` 9890 // SiteNames - List of apps the hostname is assigned to. This list will have more than one app only if the hostname is pointing to a Traffic Manager. 9891 SiteNames *[]string `json:"siteNames,omitempty"` 9892 // AzureResourceName - Name of the Azure resource the hostname is assigned to. If it is assigned to a Traffic Manager then it will be the Traffic Manager name otherwise it will be the app name. 9893 AzureResourceName *string `json:"azureResourceName,omitempty"` 9894 // AzureResourceType - Type of the Azure resource the hostname is assigned to. Possible values include: 'Website', 'TrafficManager' 9895 AzureResourceType AzureResourceType `json:"azureResourceType,omitempty"` 9896 // CustomHostNameDNSRecordType - Type of the DNS record. Possible values include: 'CName', 'A' 9897 CustomHostNameDNSRecordType CustomHostNameDNSRecordType `json:"customHostNameDnsRecordType,omitempty"` 9898 // HostNameType - Type of the hostname. Possible values include: 'Verified', 'Managed' 9899 HostNameType HostNameType `json:"hostNameType,omitempty"` 9900} 9901 9902// HostNameBinding a hostname binding object. 9903type HostNameBinding struct { 9904 autorest.Response `json:"-"` 9905 // HostNameBindingProperties - HostNameBinding resource specific properties 9906 *HostNameBindingProperties `json:"properties,omitempty"` 9907 // ID - READ-ONLY; Resource Id. 9908 ID *string `json:"id,omitempty"` 9909 // Name - READ-ONLY; Resource Name. 9910 Name *string `json:"name,omitempty"` 9911 // Kind - Kind of resource. 9912 Kind *string `json:"kind,omitempty"` 9913 // Type - READ-ONLY; Resource type. 9914 Type *string `json:"type,omitempty"` 9915} 9916 9917// MarshalJSON is the custom marshaler for HostNameBinding. 9918func (hnb HostNameBinding) MarshalJSON() ([]byte, error) { 9919 objectMap := make(map[string]interface{}) 9920 if hnb.HostNameBindingProperties != nil { 9921 objectMap["properties"] = hnb.HostNameBindingProperties 9922 } 9923 if hnb.Kind != nil { 9924 objectMap["kind"] = hnb.Kind 9925 } 9926 return json.Marshal(objectMap) 9927} 9928 9929// UnmarshalJSON is the custom unmarshaler for HostNameBinding struct. 9930func (hnb *HostNameBinding) UnmarshalJSON(body []byte) error { 9931 var m map[string]*json.RawMessage 9932 err := json.Unmarshal(body, &m) 9933 if err != nil { 9934 return err 9935 } 9936 for k, v := range m { 9937 switch k { 9938 case "properties": 9939 if v != nil { 9940 var hostNameBindingProperties HostNameBindingProperties 9941 err = json.Unmarshal(*v, &hostNameBindingProperties) 9942 if err != nil { 9943 return err 9944 } 9945 hnb.HostNameBindingProperties = &hostNameBindingProperties 9946 } 9947 case "id": 9948 if v != nil { 9949 var ID string 9950 err = json.Unmarshal(*v, &ID) 9951 if err != nil { 9952 return err 9953 } 9954 hnb.ID = &ID 9955 } 9956 case "name": 9957 if v != nil { 9958 var name string 9959 err = json.Unmarshal(*v, &name) 9960 if err != nil { 9961 return err 9962 } 9963 hnb.Name = &name 9964 } 9965 case "kind": 9966 if v != nil { 9967 var kind string 9968 err = json.Unmarshal(*v, &kind) 9969 if err != nil { 9970 return err 9971 } 9972 hnb.Kind = &kind 9973 } 9974 case "type": 9975 if v != nil { 9976 var typeVar string 9977 err = json.Unmarshal(*v, &typeVar) 9978 if err != nil { 9979 return err 9980 } 9981 hnb.Type = &typeVar 9982 } 9983 } 9984 } 9985 9986 return nil 9987} 9988 9989// HostNameBindingCollection collection of hostname bindings. 9990type HostNameBindingCollection struct { 9991 autorest.Response `json:"-"` 9992 // Value - Collection of resources. 9993 Value *[]HostNameBinding `json:"value,omitempty"` 9994 // NextLink - READ-ONLY; Link to next page of resources. 9995 NextLink *string `json:"nextLink,omitempty"` 9996} 9997 9998// HostNameBindingCollectionIterator provides access to a complete listing of HostNameBinding values. 9999type HostNameBindingCollectionIterator struct { 10000 i int 10001 page HostNameBindingCollectionPage 10002} 10003 10004// NextWithContext advances to the next value. If there was an error making 10005// the request the iterator does not advance and the error is returned. 10006func (iter *HostNameBindingCollectionIterator) NextWithContext(ctx context.Context) (err error) { 10007 if tracing.IsEnabled() { 10008 ctx = tracing.StartSpan(ctx, fqdn+"/HostNameBindingCollectionIterator.NextWithContext") 10009 defer func() { 10010 sc := -1 10011 if iter.Response().Response.Response != nil { 10012 sc = iter.Response().Response.Response.StatusCode 10013 } 10014 tracing.EndSpan(ctx, sc, err) 10015 }() 10016 } 10017 iter.i++ 10018 if iter.i < len(iter.page.Values()) { 10019 return nil 10020 } 10021 err = iter.page.NextWithContext(ctx) 10022 if err != nil { 10023 iter.i-- 10024 return err 10025 } 10026 iter.i = 0 10027 return nil 10028} 10029 10030// Next advances to the next value. If there was an error making 10031// the request the iterator does not advance and the error is returned. 10032// Deprecated: Use NextWithContext() instead. 10033func (iter *HostNameBindingCollectionIterator) Next() error { 10034 return iter.NextWithContext(context.Background()) 10035} 10036 10037// NotDone returns true if the enumeration should be started or is not yet complete. 10038func (iter HostNameBindingCollectionIterator) NotDone() bool { 10039 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 10040} 10041 10042// Response returns the raw server response from the last page request. 10043func (iter HostNameBindingCollectionIterator) Response() HostNameBindingCollection { 10044 return iter.page.Response() 10045} 10046 10047// Value returns the current value or a zero-initialized value if the 10048// iterator has advanced beyond the end of the collection. 10049func (iter HostNameBindingCollectionIterator) Value() HostNameBinding { 10050 if !iter.page.NotDone() { 10051 return HostNameBinding{} 10052 } 10053 return iter.page.Values()[iter.i] 10054} 10055 10056// Creates a new instance of the HostNameBindingCollectionIterator type. 10057func NewHostNameBindingCollectionIterator(page HostNameBindingCollectionPage) HostNameBindingCollectionIterator { 10058 return HostNameBindingCollectionIterator{page: page} 10059} 10060 10061// IsEmpty returns true if the ListResult contains no values. 10062func (hnbc HostNameBindingCollection) IsEmpty() bool { 10063 return hnbc.Value == nil || len(*hnbc.Value) == 0 10064} 10065 10066// hostNameBindingCollectionPreparer prepares a request to retrieve the next set of results. 10067// It returns nil if no more results exist. 10068func (hnbc HostNameBindingCollection) hostNameBindingCollectionPreparer(ctx context.Context) (*http.Request, error) { 10069 if hnbc.NextLink == nil || len(to.String(hnbc.NextLink)) < 1 { 10070 return nil, nil 10071 } 10072 return autorest.Prepare((&http.Request{}).WithContext(ctx), 10073 autorest.AsJSON(), 10074 autorest.AsGet(), 10075 autorest.WithBaseURL(to.String(hnbc.NextLink))) 10076} 10077 10078// HostNameBindingCollectionPage contains a page of HostNameBinding values. 10079type HostNameBindingCollectionPage struct { 10080 fn func(context.Context, HostNameBindingCollection) (HostNameBindingCollection, error) 10081 hnbc HostNameBindingCollection 10082} 10083 10084// NextWithContext advances to the next page of values. If there was an error making 10085// the request the page does not advance and the error is returned. 10086func (page *HostNameBindingCollectionPage) NextWithContext(ctx context.Context) (err error) { 10087 if tracing.IsEnabled() { 10088 ctx = tracing.StartSpan(ctx, fqdn+"/HostNameBindingCollectionPage.NextWithContext") 10089 defer func() { 10090 sc := -1 10091 if page.Response().Response.Response != nil { 10092 sc = page.Response().Response.Response.StatusCode 10093 } 10094 tracing.EndSpan(ctx, sc, err) 10095 }() 10096 } 10097 next, err := page.fn(ctx, page.hnbc) 10098 if err != nil { 10099 return err 10100 } 10101 page.hnbc = next 10102 return nil 10103} 10104 10105// Next advances to the next page of values. If there was an error making 10106// the request the page does not advance and the error is returned. 10107// Deprecated: Use NextWithContext() instead. 10108func (page *HostNameBindingCollectionPage) Next() error { 10109 return page.NextWithContext(context.Background()) 10110} 10111 10112// NotDone returns true if the page enumeration should be started or is not yet complete. 10113func (page HostNameBindingCollectionPage) NotDone() bool { 10114 return !page.hnbc.IsEmpty() 10115} 10116 10117// Response returns the raw server response from the last page request. 10118func (page HostNameBindingCollectionPage) Response() HostNameBindingCollection { 10119 return page.hnbc 10120} 10121 10122// Values returns the slice of values for the current page or nil if there are no values. 10123func (page HostNameBindingCollectionPage) Values() []HostNameBinding { 10124 if page.hnbc.IsEmpty() { 10125 return nil 10126 } 10127 return *page.hnbc.Value 10128} 10129 10130// Creates a new instance of the HostNameBindingCollectionPage type. 10131func NewHostNameBindingCollectionPage(getNextPage func(context.Context, HostNameBindingCollection) (HostNameBindingCollection, error)) HostNameBindingCollectionPage { 10132 return HostNameBindingCollectionPage{fn: getNextPage} 10133} 10134 10135// HostNameBindingProperties hostNameBinding resource specific properties 10136type HostNameBindingProperties struct { 10137 // SiteName - App Service app name. 10138 SiteName *string `json:"siteName,omitempty"` 10139 // DomainID - Fully qualified ARM domain resource URI. 10140 DomainID *string `json:"domainId,omitempty"` 10141 // AzureResourceName - Azure resource name. 10142 AzureResourceName *string `json:"azureResourceName,omitempty"` 10143 // AzureResourceType - Azure resource type. Possible values include: 'Website', 'TrafficManager' 10144 AzureResourceType AzureResourceType `json:"azureResourceType,omitempty"` 10145 // CustomHostNameDNSRecordType - Custom DNS record type. Possible values include: 'CName', 'A' 10146 CustomHostNameDNSRecordType CustomHostNameDNSRecordType `json:"customHostNameDnsRecordType,omitempty"` 10147 // HostNameType - Hostname type. Possible values include: 'Verified', 'Managed' 10148 HostNameType HostNameType `json:"hostNameType,omitempty"` 10149 // SslState - SSL type. Possible values include: 'Disabled', 'SniEnabled', 'IPBasedEnabled' 10150 SslState SslState `json:"sslState,omitempty"` 10151 // Thumbprint - SSL certificate thumbprint 10152 Thumbprint *string `json:"thumbprint,omitempty"` 10153 // VirtualIP - READ-ONLY; Virtual IP address assigned to the hostname if IP based SSL is enabled. 10154 VirtualIP *string `json:"virtualIP,omitempty"` 10155} 10156 10157// HostNameSslState SSL-enabled hostname. 10158type HostNameSslState struct { 10159 // Name - Hostname. 10160 Name *string `json:"name,omitempty"` 10161 // SslState - SSL type. Possible values include: 'Disabled', 'SniEnabled', 'IPBasedEnabled' 10162 SslState SslState `json:"sslState,omitempty"` 10163 // VirtualIP - Virtual IP address assigned to the hostname if IP based SSL is enabled. 10164 VirtualIP *string `json:"virtualIP,omitempty"` 10165 // Thumbprint - SSL certificate thumbprint. 10166 Thumbprint *string `json:"thumbprint,omitempty"` 10167 // ToUpdate - Set to <code>true</code> to update existing hostname. 10168 ToUpdate *bool `json:"toUpdate,omitempty"` 10169 // HostType - Indicates whether the hostname is a standard or repository hostname. Possible values include: 'HostTypeStandard', 'HostTypeRepository' 10170 HostType HostType `json:"hostType,omitempty"` 10171} 10172 10173// HTTPLogsConfig http logs configuration. 10174type HTTPLogsConfig struct { 10175 // FileSystem - Http logs to file system configuration. 10176 FileSystem *FileSystemHTTPLogsConfig `json:"fileSystem,omitempty"` 10177 // AzureBlobStorage - Http logs to azure blob storage configuration. 10178 AzureBlobStorage *AzureBlobStorageHTTPLogsConfig `json:"azureBlobStorage,omitempty"` 10179} 10180 10181// HybridConnection hybrid Connection contract. This is used to configure a Hybrid Connection. 10182type HybridConnection struct { 10183 autorest.Response `json:"-"` 10184 // HybridConnectionProperties - HybridConnection resource specific properties 10185 *HybridConnectionProperties `json:"properties,omitempty"` 10186 // ID - READ-ONLY; Resource Id. 10187 ID *string `json:"id,omitempty"` 10188 // Name - READ-ONLY; Resource Name. 10189 Name *string `json:"name,omitempty"` 10190 // Kind - Kind of resource. 10191 Kind *string `json:"kind,omitempty"` 10192 // Type - READ-ONLY; Resource type. 10193 Type *string `json:"type,omitempty"` 10194} 10195 10196// MarshalJSON is the custom marshaler for HybridConnection. 10197func (hc HybridConnection) MarshalJSON() ([]byte, error) { 10198 objectMap := make(map[string]interface{}) 10199 if hc.HybridConnectionProperties != nil { 10200 objectMap["properties"] = hc.HybridConnectionProperties 10201 } 10202 if hc.Kind != nil { 10203 objectMap["kind"] = hc.Kind 10204 } 10205 return json.Marshal(objectMap) 10206} 10207 10208// UnmarshalJSON is the custom unmarshaler for HybridConnection struct. 10209func (hc *HybridConnection) UnmarshalJSON(body []byte) error { 10210 var m map[string]*json.RawMessage 10211 err := json.Unmarshal(body, &m) 10212 if err != nil { 10213 return err 10214 } 10215 for k, v := range m { 10216 switch k { 10217 case "properties": 10218 if v != nil { 10219 var hybridConnectionProperties HybridConnectionProperties 10220 err = json.Unmarshal(*v, &hybridConnectionProperties) 10221 if err != nil { 10222 return err 10223 } 10224 hc.HybridConnectionProperties = &hybridConnectionProperties 10225 } 10226 case "id": 10227 if v != nil { 10228 var ID string 10229 err = json.Unmarshal(*v, &ID) 10230 if err != nil { 10231 return err 10232 } 10233 hc.ID = &ID 10234 } 10235 case "name": 10236 if v != nil { 10237 var name string 10238 err = json.Unmarshal(*v, &name) 10239 if err != nil { 10240 return err 10241 } 10242 hc.Name = &name 10243 } 10244 case "kind": 10245 if v != nil { 10246 var kind string 10247 err = json.Unmarshal(*v, &kind) 10248 if err != nil { 10249 return err 10250 } 10251 hc.Kind = &kind 10252 } 10253 case "type": 10254 if v != nil { 10255 var typeVar string 10256 err = json.Unmarshal(*v, &typeVar) 10257 if err != nil { 10258 return err 10259 } 10260 hc.Type = &typeVar 10261 } 10262 } 10263 } 10264 10265 return nil 10266} 10267 10268// HybridConnectionCollection collection of hostname bindings. 10269type HybridConnectionCollection struct { 10270 autorest.Response `json:"-"` 10271 // Value - Collection of resources. 10272 Value *[]HybridConnection `json:"value,omitempty"` 10273 // NextLink - READ-ONLY; Link to next page of resources. 10274 NextLink *string `json:"nextLink,omitempty"` 10275} 10276 10277// HybridConnectionCollectionIterator provides access to a complete listing of HybridConnection values. 10278type HybridConnectionCollectionIterator struct { 10279 i int 10280 page HybridConnectionCollectionPage 10281} 10282 10283// NextWithContext advances to the next value. If there was an error making 10284// the request the iterator does not advance and the error is returned. 10285func (iter *HybridConnectionCollectionIterator) NextWithContext(ctx context.Context) (err error) { 10286 if tracing.IsEnabled() { 10287 ctx = tracing.StartSpan(ctx, fqdn+"/HybridConnectionCollectionIterator.NextWithContext") 10288 defer func() { 10289 sc := -1 10290 if iter.Response().Response.Response != nil { 10291 sc = iter.Response().Response.Response.StatusCode 10292 } 10293 tracing.EndSpan(ctx, sc, err) 10294 }() 10295 } 10296 iter.i++ 10297 if iter.i < len(iter.page.Values()) { 10298 return nil 10299 } 10300 err = iter.page.NextWithContext(ctx) 10301 if err != nil { 10302 iter.i-- 10303 return err 10304 } 10305 iter.i = 0 10306 return nil 10307} 10308 10309// Next advances to the next value. If there was an error making 10310// the request the iterator does not advance and the error is returned. 10311// Deprecated: Use NextWithContext() instead. 10312func (iter *HybridConnectionCollectionIterator) Next() error { 10313 return iter.NextWithContext(context.Background()) 10314} 10315 10316// NotDone returns true if the enumeration should be started or is not yet complete. 10317func (iter HybridConnectionCollectionIterator) NotDone() bool { 10318 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 10319} 10320 10321// Response returns the raw server response from the last page request. 10322func (iter HybridConnectionCollectionIterator) Response() HybridConnectionCollection { 10323 return iter.page.Response() 10324} 10325 10326// Value returns the current value or a zero-initialized value if the 10327// iterator has advanced beyond the end of the collection. 10328func (iter HybridConnectionCollectionIterator) Value() HybridConnection { 10329 if !iter.page.NotDone() { 10330 return HybridConnection{} 10331 } 10332 return iter.page.Values()[iter.i] 10333} 10334 10335// Creates a new instance of the HybridConnectionCollectionIterator type. 10336func NewHybridConnectionCollectionIterator(page HybridConnectionCollectionPage) HybridConnectionCollectionIterator { 10337 return HybridConnectionCollectionIterator{page: page} 10338} 10339 10340// IsEmpty returns true if the ListResult contains no values. 10341func (hcc HybridConnectionCollection) IsEmpty() bool { 10342 return hcc.Value == nil || len(*hcc.Value) == 0 10343} 10344 10345// hybridConnectionCollectionPreparer prepares a request to retrieve the next set of results. 10346// It returns nil if no more results exist. 10347func (hcc HybridConnectionCollection) hybridConnectionCollectionPreparer(ctx context.Context) (*http.Request, error) { 10348 if hcc.NextLink == nil || len(to.String(hcc.NextLink)) < 1 { 10349 return nil, nil 10350 } 10351 return autorest.Prepare((&http.Request{}).WithContext(ctx), 10352 autorest.AsJSON(), 10353 autorest.AsGet(), 10354 autorest.WithBaseURL(to.String(hcc.NextLink))) 10355} 10356 10357// HybridConnectionCollectionPage contains a page of HybridConnection values. 10358type HybridConnectionCollectionPage struct { 10359 fn func(context.Context, HybridConnectionCollection) (HybridConnectionCollection, error) 10360 hcc HybridConnectionCollection 10361} 10362 10363// NextWithContext advances to the next page of values. If there was an error making 10364// the request the page does not advance and the error is returned. 10365func (page *HybridConnectionCollectionPage) NextWithContext(ctx context.Context) (err error) { 10366 if tracing.IsEnabled() { 10367 ctx = tracing.StartSpan(ctx, fqdn+"/HybridConnectionCollectionPage.NextWithContext") 10368 defer func() { 10369 sc := -1 10370 if page.Response().Response.Response != nil { 10371 sc = page.Response().Response.Response.StatusCode 10372 } 10373 tracing.EndSpan(ctx, sc, err) 10374 }() 10375 } 10376 next, err := page.fn(ctx, page.hcc) 10377 if err != nil { 10378 return err 10379 } 10380 page.hcc = next 10381 return nil 10382} 10383 10384// Next advances to the next page of values. If there was an error making 10385// the request the page does not advance and the error is returned. 10386// Deprecated: Use NextWithContext() instead. 10387func (page *HybridConnectionCollectionPage) Next() error { 10388 return page.NextWithContext(context.Background()) 10389} 10390 10391// NotDone returns true if the page enumeration should be started or is not yet complete. 10392func (page HybridConnectionCollectionPage) NotDone() bool { 10393 return !page.hcc.IsEmpty() 10394} 10395 10396// Response returns the raw server response from the last page request. 10397func (page HybridConnectionCollectionPage) Response() HybridConnectionCollection { 10398 return page.hcc 10399} 10400 10401// Values returns the slice of values for the current page or nil if there are no values. 10402func (page HybridConnectionCollectionPage) Values() []HybridConnection { 10403 if page.hcc.IsEmpty() { 10404 return nil 10405 } 10406 return *page.hcc.Value 10407} 10408 10409// Creates a new instance of the HybridConnectionCollectionPage type. 10410func NewHybridConnectionCollectionPage(getNextPage func(context.Context, HybridConnectionCollection) (HybridConnectionCollection, error)) HybridConnectionCollectionPage { 10411 return HybridConnectionCollectionPage{fn: getNextPage} 10412} 10413 10414// HybridConnectionKey hybrid Connection key contract. This has the send key name and value for a Hybrid 10415// Connection. 10416type HybridConnectionKey struct { 10417 autorest.Response `json:"-"` 10418 // HybridConnectionKeyProperties - HybridConnectionKey resource specific properties 10419 *HybridConnectionKeyProperties `json:"properties,omitempty"` 10420 // ID - READ-ONLY; Resource Id. 10421 ID *string `json:"id,omitempty"` 10422 // Name - READ-ONLY; Resource Name. 10423 Name *string `json:"name,omitempty"` 10424 // Kind - Kind of resource. 10425 Kind *string `json:"kind,omitempty"` 10426 // Type - READ-ONLY; Resource type. 10427 Type *string `json:"type,omitempty"` 10428} 10429 10430// MarshalJSON is the custom marshaler for HybridConnectionKey. 10431func (hck HybridConnectionKey) MarshalJSON() ([]byte, error) { 10432 objectMap := make(map[string]interface{}) 10433 if hck.HybridConnectionKeyProperties != nil { 10434 objectMap["properties"] = hck.HybridConnectionKeyProperties 10435 } 10436 if hck.Kind != nil { 10437 objectMap["kind"] = hck.Kind 10438 } 10439 return json.Marshal(objectMap) 10440} 10441 10442// UnmarshalJSON is the custom unmarshaler for HybridConnectionKey struct. 10443func (hck *HybridConnectionKey) UnmarshalJSON(body []byte) error { 10444 var m map[string]*json.RawMessage 10445 err := json.Unmarshal(body, &m) 10446 if err != nil { 10447 return err 10448 } 10449 for k, v := range m { 10450 switch k { 10451 case "properties": 10452 if v != nil { 10453 var hybridConnectionKeyProperties HybridConnectionKeyProperties 10454 err = json.Unmarshal(*v, &hybridConnectionKeyProperties) 10455 if err != nil { 10456 return err 10457 } 10458 hck.HybridConnectionKeyProperties = &hybridConnectionKeyProperties 10459 } 10460 case "id": 10461 if v != nil { 10462 var ID string 10463 err = json.Unmarshal(*v, &ID) 10464 if err != nil { 10465 return err 10466 } 10467 hck.ID = &ID 10468 } 10469 case "name": 10470 if v != nil { 10471 var name string 10472 err = json.Unmarshal(*v, &name) 10473 if err != nil { 10474 return err 10475 } 10476 hck.Name = &name 10477 } 10478 case "kind": 10479 if v != nil { 10480 var kind string 10481 err = json.Unmarshal(*v, &kind) 10482 if err != nil { 10483 return err 10484 } 10485 hck.Kind = &kind 10486 } 10487 case "type": 10488 if v != nil { 10489 var typeVar string 10490 err = json.Unmarshal(*v, &typeVar) 10491 if err != nil { 10492 return err 10493 } 10494 hck.Type = &typeVar 10495 } 10496 } 10497 } 10498 10499 return nil 10500} 10501 10502// HybridConnectionKeyProperties hybridConnectionKey resource specific properties 10503type HybridConnectionKeyProperties struct { 10504 // SendKeyName - READ-ONLY; The name of the send key. 10505 SendKeyName *string `json:"sendKeyName,omitempty"` 10506 // SendKeyValue - READ-ONLY; The value of the send key. 10507 SendKeyValue *string `json:"sendKeyValue,omitempty"` 10508} 10509 10510// HybridConnectionLimits hybrid Connection limits contract. This is used to return the plan limits of 10511// Hybrid Connections. 10512type HybridConnectionLimits struct { 10513 autorest.Response `json:"-"` 10514 // HybridConnectionLimitsProperties - HybridConnectionLimits resource specific properties 10515 *HybridConnectionLimitsProperties `json:"properties,omitempty"` 10516 // ID - READ-ONLY; Resource Id. 10517 ID *string `json:"id,omitempty"` 10518 // Name - READ-ONLY; Resource Name. 10519 Name *string `json:"name,omitempty"` 10520 // Kind - Kind of resource. 10521 Kind *string `json:"kind,omitempty"` 10522 // Type - READ-ONLY; Resource type. 10523 Type *string `json:"type,omitempty"` 10524} 10525 10526// MarshalJSON is the custom marshaler for HybridConnectionLimits. 10527func (hcl HybridConnectionLimits) MarshalJSON() ([]byte, error) { 10528 objectMap := make(map[string]interface{}) 10529 if hcl.HybridConnectionLimitsProperties != nil { 10530 objectMap["properties"] = hcl.HybridConnectionLimitsProperties 10531 } 10532 if hcl.Kind != nil { 10533 objectMap["kind"] = hcl.Kind 10534 } 10535 return json.Marshal(objectMap) 10536} 10537 10538// UnmarshalJSON is the custom unmarshaler for HybridConnectionLimits struct. 10539func (hcl *HybridConnectionLimits) UnmarshalJSON(body []byte) error { 10540 var m map[string]*json.RawMessage 10541 err := json.Unmarshal(body, &m) 10542 if err != nil { 10543 return err 10544 } 10545 for k, v := range m { 10546 switch k { 10547 case "properties": 10548 if v != nil { 10549 var hybridConnectionLimitsProperties HybridConnectionLimitsProperties 10550 err = json.Unmarshal(*v, &hybridConnectionLimitsProperties) 10551 if err != nil { 10552 return err 10553 } 10554 hcl.HybridConnectionLimitsProperties = &hybridConnectionLimitsProperties 10555 } 10556 case "id": 10557 if v != nil { 10558 var ID string 10559 err = json.Unmarshal(*v, &ID) 10560 if err != nil { 10561 return err 10562 } 10563 hcl.ID = &ID 10564 } 10565 case "name": 10566 if v != nil { 10567 var name string 10568 err = json.Unmarshal(*v, &name) 10569 if err != nil { 10570 return err 10571 } 10572 hcl.Name = &name 10573 } 10574 case "kind": 10575 if v != nil { 10576 var kind string 10577 err = json.Unmarshal(*v, &kind) 10578 if err != nil { 10579 return err 10580 } 10581 hcl.Kind = &kind 10582 } 10583 case "type": 10584 if v != nil { 10585 var typeVar string 10586 err = json.Unmarshal(*v, &typeVar) 10587 if err != nil { 10588 return err 10589 } 10590 hcl.Type = &typeVar 10591 } 10592 } 10593 } 10594 10595 return nil 10596} 10597 10598// HybridConnectionLimitsProperties hybridConnectionLimits resource specific properties 10599type HybridConnectionLimitsProperties struct { 10600 // Current - READ-ONLY; The current number of Hybrid Connections. 10601 Current *int32 `json:"current,omitempty"` 10602 // Maximum - READ-ONLY; The maximum number of Hybrid Connections allowed. 10603 Maximum *int32 `json:"maximum,omitempty"` 10604} 10605 10606// HybridConnectionProperties hybridConnection resource specific properties 10607type HybridConnectionProperties struct { 10608 // ServiceBusNamespace - The name of the Service Bus namespace. 10609 ServiceBusNamespace *string `json:"serviceBusNamespace,omitempty"` 10610 // RelayName - The name of the Service Bus relay. 10611 RelayName *string `json:"relayName,omitempty"` 10612 // RelayArmURI - The ARM URI to the Service Bus relay. 10613 RelayArmURI *string `json:"relayArmUri,omitempty"` 10614 // Hostname - The hostname of the endpoint. 10615 Hostname *string `json:"hostname,omitempty"` 10616 // Port - The port of the endpoint. 10617 Port *int32 `json:"port,omitempty"` 10618 // SendKeyName - The name of the Service Bus key which has Send permissions. This is used to authenticate to Service Bus. 10619 SendKeyName *string `json:"sendKeyName,omitempty"` 10620 // SendKeyValue - The value of the Service Bus key. This is used to authenticate to Service Bus. In ARM this key will not be returned 10621 // normally, use the POST /listKeys API instead. 10622 SendKeyValue *string `json:"sendKeyValue,omitempty"` 10623 // ServiceBusSuffix - The suffix for the service bus endpoint. By default this is .servicebus.windows.net 10624 ServiceBusSuffix *string `json:"serviceBusSuffix,omitempty"` 10625} 10626 10627// Identifier a domain specific resource identifier. 10628type Identifier struct { 10629 autorest.Response `json:"-"` 10630 // IdentifierProperties - Identifier resource specific properties 10631 *IdentifierProperties `json:"properties,omitempty"` 10632 // ID - READ-ONLY; Resource Id. 10633 ID *string `json:"id,omitempty"` 10634 // Name - READ-ONLY; Resource Name. 10635 Name *string `json:"name,omitempty"` 10636 // Kind - Kind of resource. 10637 Kind *string `json:"kind,omitempty"` 10638 // Type - READ-ONLY; Resource type. 10639 Type *string `json:"type,omitempty"` 10640} 10641 10642// MarshalJSON is the custom marshaler for Identifier. 10643func (i Identifier) MarshalJSON() ([]byte, error) { 10644 objectMap := make(map[string]interface{}) 10645 if i.IdentifierProperties != nil { 10646 objectMap["properties"] = i.IdentifierProperties 10647 } 10648 if i.Kind != nil { 10649 objectMap["kind"] = i.Kind 10650 } 10651 return json.Marshal(objectMap) 10652} 10653 10654// UnmarshalJSON is the custom unmarshaler for Identifier struct. 10655func (i *Identifier) UnmarshalJSON(body []byte) error { 10656 var m map[string]*json.RawMessage 10657 err := json.Unmarshal(body, &m) 10658 if err != nil { 10659 return err 10660 } 10661 for k, v := range m { 10662 switch k { 10663 case "properties": 10664 if v != nil { 10665 var identifierProperties IdentifierProperties 10666 err = json.Unmarshal(*v, &identifierProperties) 10667 if err != nil { 10668 return err 10669 } 10670 i.IdentifierProperties = &identifierProperties 10671 } 10672 case "id": 10673 if v != nil { 10674 var ID string 10675 err = json.Unmarshal(*v, &ID) 10676 if err != nil { 10677 return err 10678 } 10679 i.ID = &ID 10680 } 10681 case "name": 10682 if v != nil { 10683 var name string 10684 err = json.Unmarshal(*v, &name) 10685 if err != nil { 10686 return err 10687 } 10688 i.Name = &name 10689 } 10690 case "kind": 10691 if v != nil { 10692 var kind string 10693 err = json.Unmarshal(*v, &kind) 10694 if err != nil { 10695 return err 10696 } 10697 i.Kind = &kind 10698 } 10699 case "type": 10700 if v != nil { 10701 var typeVar string 10702 err = json.Unmarshal(*v, &typeVar) 10703 if err != nil { 10704 return err 10705 } 10706 i.Type = &typeVar 10707 } 10708 } 10709 } 10710 10711 return nil 10712} 10713 10714// IdentifierCollection collection of identifiers. 10715type IdentifierCollection struct { 10716 autorest.Response `json:"-"` 10717 // Value - Collection of resources. 10718 Value *[]Identifier `json:"value,omitempty"` 10719 // NextLink - READ-ONLY; Link to next page of resources. 10720 NextLink *string `json:"nextLink,omitempty"` 10721} 10722 10723// IdentifierCollectionIterator provides access to a complete listing of Identifier values. 10724type IdentifierCollectionIterator struct { 10725 i int 10726 page IdentifierCollectionPage 10727} 10728 10729// NextWithContext advances to the next value. If there was an error making 10730// the request the iterator does not advance and the error is returned. 10731func (iter *IdentifierCollectionIterator) NextWithContext(ctx context.Context) (err error) { 10732 if tracing.IsEnabled() { 10733 ctx = tracing.StartSpan(ctx, fqdn+"/IdentifierCollectionIterator.NextWithContext") 10734 defer func() { 10735 sc := -1 10736 if iter.Response().Response.Response != nil { 10737 sc = iter.Response().Response.Response.StatusCode 10738 } 10739 tracing.EndSpan(ctx, sc, err) 10740 }() 10741 } 10742 iter.i++ 10743 if iter.i < len(iter.page.Values()) { 10744 return nil 10745 } 10746 err = iter.page.NextWithContext(ctx) 10747 if err != nil { 10748 iter.i-- 10749 return err 10750 } 10751 iter.i = 0 10752 return nil 10753} 10754 10755// Next advances to the next value. If there was an error making 10756// the request the iterator does not advance and the error is returned. 10757// Deprecated: Use NextWithContext() instead. 10758func (iter *IdentifierCollectionIterator) Next() error { 10759 return iter.NextWithContext(context.Background()) 10760} 10761 10762// NotDone returns true if the enumeration should be started or is not yet complete. 10763func (iter IdentifierCollectionIterator) NotDone() bool { 10764 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 10765} 10766 10767// Response returns the raw server response from the last page request. 10768func (iter IdentifierCollectionIterator) Response() IdentifierCollection { 10769 return iter.page.Response() 10770} 10771 10772// Value returns the current value or a zero-initialized value if the 10773// iterator has advanced beyond the end of the collection. 10774func (iter IdentifierCollectionIterator) Value() Identifier { 10775 if !iter.page.NotDone() { 10776 return Identifier{} 10777 } 10778 return iter.page.Values()[iter.i] 10779} 10780 10781// Creates a new instance of the IdentifierCollectionIterator type. 10782func NewIdentifierCollectionIterator(page IdentifierCollectionPage) IdentifierCollectionIterator { 10783 return IdentifierCollectionIterator{page: page} 10784} 10785 10786// IsEmpty returns true if the ListResult contains no values. 10787func (ic IdentifierCollection) IsEmpty() bool { 10788 return ic.Value == nil || len(*ic.Value) == 0 10789} 10790 10791// identifierCollectionPreparer prepares a request to retrieve the next set of results. 10792// It returns nil if no more results exist. 10793func (ic IdentifierCollection) identifierCollectionPreparer(ctx context.Context) (*http.Request, error) { 10794 if ic.NextLink == nil || len(to.String(ic.NextLink)) < 1 { 10795 return nil, nil 10796 } 10797 return autorest.Prepare((&http.Request{}).WithContext(ctx), 10798 autorest.AsJSON(), 10799 autorest.AsGet(), 10800 autorest.WithBaseURL(to.String(ic.NextLink))) 10801} 10802 10803// IdentifierCollectionPage contains a page of Identifier values. 10804type IdentifierCollectionPage struct { 10805 fn func(context.Context, IdentifierCollection) (IdentifierCollection, error) 10806 ic IdentifierCollection 10807} 10808 10809// NextWithContext advances to the next page of values. If there was an error making 10810// the request the page does not advance and the error is returned. 10811func (page *IdentifierCollectionPage) NextWithContext(ctx context.Context) (err error) { 10812 if tracing.IsEnabled() { 10813 ctx = tracing.StartSpan(ctx, fqdn+"/IdentifierCollectionPage.NextWithContext") 10814 defer func() { 10815 sc := -1 10816 if page.Response().Response.Response != nil { 10817 sc = page.Response().Response.Response.StatusCode 10818 } 10819 tracing.EndSpan(ctx, sc, err) 10820 }() 10821 } 10822 next, err := page.fn(ctx, page.ic) 10823 if err != nil { 10824 return err 10825 } 10826 page.ic = next 10827 return nil 10828} 10829 10830// Next advances to the next page of values. If there was an error making 10831// the request the page does not advance and the error is returned. 10832// Deprecated: Use NextWithContext() instead. 10833func (page *IdentifierCollectionPage) Next() error { 10834 return page.NextWithContext(context.Background()) 10835} 10836 10837// NotDone returns true if the page enumeration should be started or is not yet complete. 10838func (page IdentifierCollectionPage) NotDone() bool { 10839 return !page.ic.IsEmpty() 10840} 10841 10842// Response returns the raw server response from the last page request. 10843func (page IdentifierCollectionPage) Response() IdentifierCollection { 10844 return page.ic 10845} 10846 10847// Values returns the slice of values for the current page or nil if there are no values. 10848func (page IdentifierCollectionPage) Values() []Identifier { 10849 if page.ic.IsEmpty() { 10850 return nil 10851 } 10852 return *page.ic.Value 10853} 10854 10855// Creates a new instance of the IdentifierCollectionPage type. 10856func NewIdentifierCollectionPage(getNextPage func(context.Context, IdentifierCollection) (IdentifierCollection, error)) IdentifierCollectionPage { 10857 return IdentifierCollectionPage{fn: getNextPage} 10858} 10859 10860// IdentifierProperties identifier resource specific properties 10861type IdentifierProperties struct { 10862 // ID - String representation of the identity. 10863 ID *string `json:"id,omitempty"` 10864} 10865 10866// IPSecurityRestriction IP security restriction on an app. 10867type IPSecurityRestriction struct { 10868 // IPAddress - IP address the security restriction is valid for. 10869 IPAddress *string `json:"ipAddress,omitempty"` 10870 // SubnetMask - Subnet mask for the range of IP addresses the restriction is valid for. 10871 SubnetMask *string `json:"subnetMask,omitempty"` 10872} 10873 10874// Job web Job Information. 10875type Job struct { 10876 autorest.Response `json:"-"` 10877 // JobProperties - WebJob resource specific properties 10878 *JobProperties `json:"properties,omitempty"` 10879 // ID - READ-ONLY; Resource Id. 10880 ID *string `json:"id,omitempty"` 10881 // Name - READ-ONLY; Resource Name. 10882 Name *string `json:"name,omitempty"` 10883 // Kind - Kind of resource. 10884 Kind *string `json:"kind,omitempty"` 10885 // Type - READ-ONLY; Resource type. 10886 Type *string `json:"type,omitempty"` 10887} 10888 10889// MarshalJSON is the custom marshaler for Job. 10890func (j Job) MarshalJSON() ([]byte, error) { 10891 objectMap := make(map[string]interface{}) 10892 if j.JobProperties != nil { 10893 objectMap["properties"] = j.JobProperties 10894 } 10895 if j.Kind != nil { 10896 objectMap["kind"] = j.Kind 10897 } 10898 return json.Marshal(objectMap) 10899} 10900 10901// UnmarshalJSON is the custom unmarshaler for Job struct. 10902func (j *Job) UnmarshalJSON(body []byte) error { 10903 var m map[string]*json.RawMessage 10904 err := json.Unmarshal(body, &m) 10905 if err != nil { 10906 return err 10907 } 10908 for k, v := range m { 10909 switch k { 10910 case "properties": 10911 if v != nil { 10912 var jobProperties JobProperties 10913 err = json.Unmarshal(*v, &jobProperties) 10914 if err != nil { 10915 return err 10916 } 10917 j.JobProperties = &jobProperties 10918 } 10919 case "id": 10920 if v != nil { 10921 var ID string 10922 err = json.Unmarshal(*v, &ID) 10923 if err != nil { 10924 return err 10925 } 10926 j.ID = &ID 10927 } 10928 case "name": 10929 if v != nil { 10930 var name string 10931 err = json.Unmarshal(*v, &name) 10932 if err != nil { 10933 return err 10934 } 10935 j.Name = &name 10936 } 10937 case "kind": 10938 if v != nil { 10939 var kind string 10940 err = json.Unmarshal(*v, &kind) 10941 if err != nil { 10942 return err 10943 } 10944 j.Kind = &kind 10945 } 10946 case "type": 10947 if v != nil { 10948 var typeVar string 10949 err = json.Unmarshal(*v, &typeVar) 10950 if err != nil { 10951 return err 10952 } 10953 j.Type = &typeVar 10954 } 10955 } 10956 } 10957 10958 return nil 10959} 10960 10961// JobCollection collection of Kudu web job information elements. 10962type JobCollection struct { 10963 autorest.Response `json:"-"` 10964 // Value - Collection of resources. 10965 Value *[]Job `json:"value,omitempty"` 10966 // NextLink - READ-ONLY; Link to next page of resources. 10967 NextLink *string `json:"nextLink,omitempty"` 10968} 10969 10970// JobCollectionIterator provides access to a complete listing of Job values. 10971type JobCollectionIterator struct { 10972 i int 10973 page JobCollectionPage 10974} 10975 10976// NextWithContext advances to the next value. If there was an error making 10977// the request the iterator does not advance and the error is returned. 10978func (iter *JobCollectionIterator) NextWithContext(ctx context.Context) (err error) { 10979 if tracing.IsEnabled() { 10980 ctx = tracing.StartSpan(ctx, fqdn+"/JobCollectionIterator.NextWithContext") 10981 defer func() { 10982 sc := -1 10983 if iter.Response().Response.Response != nil { 10984 sc = iter.Response().Response.Response.StatusCode 10985 } 10986 tracing.EndSpan(ctx, sc, err) 10987 }() 10988 } 10989 iter.i++ 10990 if iter.i < len(iter.page.Values()) { 10991 return nil 10992 } 10993 err = iter.page.NextWithContext(ctx) 10994 if err != nil { 10995 iter.i-- 10996 return err 10997 } 10998 iter.i = 0 10999 return nil 11000} 11001 11002// Next advances to the next value. If there was an error making 11003// the request the iterator does not advance and the error is returned. 11004// Deprecated: Use NextWithContext() instead. 11005func (iter *JobCollectionIterator) Next() error { 11006 return iter.NextWithContext(context.Background()) 11007} 11008 11009// NotDone returns true if the enumeration should be started or is not yet complete. 11010func (iter JobCollectionIterator) NotDone() bool { 11011 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 11012} 11013 11014// Response returns the raw server response from the last page request. 11015func (iter JobCollectionIterator) Response() JobCollection { 11016 return iter.page.Response() 11017} 11018 11019// Value returns the current value or a zero-initialized value if the 11020// iterator has advanced beyond the end of the collection. 11021func (iter JobCollectionIterator) Value() Job { 11022 if !iter.page.NotDone() { 11023 return Job{} 11024 } 11025 return iter.page.Values()[iter.i] 11026} 11027 11028// Creates a new instance of the JobCollectionIterator type. 11029func NewJobCollectionIterator(page JobCollectionPage) JobCollectionIterator { 11030 return JobCollectionIterator{page: page} 11031} 11032 11033// IsEmpty returns true if the ListResult contains no values. 11034func (jc JobCollection) IsEmpty() bool { 11035 return jc.Value == nil || len(*jc.Value) == 0 11036} 11037 11038// jobCollectionPreparer prepares a request to retrieve the next set of results. 11039// It returns nil if no more results exist. 11040func (jc JobCollection) jobCollectionPreparer(ctx context.Context) (*http.Request, error) { 11041 if jc.NextLink == nil || len(to.String(jc.NextLink)) < 1 { 11042 return nil, nil 11043 } 11044 return autorest.Prepare((&http.Request{}).WithContext(ctx), 11045 autorest.AsJSON(), 11046 autorest.AsGet(), 11047 autorest.WithBaseURL(to.String(jc.NextLink))) 11048} 11049 11050// JobCollectionPage contains a page of Job values. 11051type JobCollectionPage struct { 11052 fn func(context.Context, JobCollection) (JobCollection, error) 11053 jc JobCollection 11054} 11055 11056// NextWithContext advances to the next page of values. If there was an error making 11057// the request the page does not advance and the error is returned. 11058func (page *JobCollectionPage) NextWithContext(ctx context.Context) (err error) { 11059 if tracing.IsEnabled() { 11060 ctx = tracing.StartSpan(ctx, fqdn+"/JobCollectionPage.NextWithContext") 11061 defer func() { 11062 sc := -1 11063 if page.Response().Response.Response != nil { 11064 sc = page.Response().Response.Response.StatusCode 11065 } 11066 tracing.EndSpan(ctx, sc, err) 11067 }() 11068 } 11069 next, err := page.fn(ctx, page.jc) 11070 if err != nil { 11071 return err 11072 } 11073 page.jc = next 11074 return nil 11075} 11076 11077// Next advances to the next page of values. If there was an error making 11078// the request the page does not advance and the error is returned. 11079// Deprecated: Use NextWithContext() instead. 11080func (page *JobCollectionPage) Next() error { 11081 return page.NextWithContext(context.Background()) 11082} 11083 11084// NotDone returns true if the page enumeration should be started or is not yet complete. 11085func (page JobCollectionPage) NotDone() bool { 11086 return !page.jc.IsEmpty() 11087} 11088 11089// Response returns the raw server response from the last page request. 11090func (page JobCollectionPage) Response() JobCollection { 11091 return page.jc 11092} 11093 11094// Values returns the slice of values for the current page or nil if there are no values. 11095func (page JobCollectionPage) Values() []Job { 11096 if page.jc.IsEmpty() { 11097 return nil 11098 } 11099 return *page.jc.Value 11100} 11101 11102// Creates a new instance of the JobCollectionPage type. 11103func NewJobCollectionPage(getNextPage func(context.Context, JobCollection) (JobCollection, error)) JobCollectionPage { 11104 return JobCollectionPage{fn: getNextPage} 11105} 11106 11107// JobProperties webJob resource specific properties 11108type JobProperties struct { 11109 // Name - READ-ONLY; Job name. Used as job identifier in ARM resource URI. 11110 Name *string `json:"name,omitempty"` 11111 // RunCommand - Run command. 11112 RunCommand *string `json:"runCommand,omitempty"` 11113 // URL - Job URL. 11114 URL *string `json:"url,omitempty"` 11115 // ExtraInfoURL - Extra Info URL. 11116 ExtraInfoURL *string `json:"extraInfoUrl,omitempty"` 11117 // JobType - Job type. Possible values include: 'Continuous', 'Triggered' 11118 JobType JobType `json:"jobType,omitempty"` 11119 // Error - Error information. 11120 Error *string `json:"error,omitempty"` 11121 // UsingSdk - Using SDK? 11122 UsingSdk *bool `json:"usingSdk,omitempty"` 11123 // Settings - Job settings. 11124 Settings map[string]interface{} `json:"settings"` 11125} 11126 11127// MarshalJSON is the custom marshaler for JobProperties. 11128func (j JobProperties) MarshalJSON() ([]byte, error) { 11129 objectMap := make(map[string]interface{}) 11130 if j.RunCommand != nil { 11131 objectMap["runCommand"] = j.RunCommand 11132 } 11133 if j.URL != nil { 11134 objectMap["url"] = j.URL 11135 } 11136 if j.ExtraInfoURL != nil { 11137 objectMap["extraInfoUrl"] = j.ExtraInfoURL 11138 } 11139 if j.JobType != "" { 11140 objectMap["jobType"] = j.JobType 11141 } 11142 if j.Error != nil { 11143 objectMap["error"] = j.Error 11144 } 11145 if j.UsingSdk != nil { 11146 objectMap["usingSdk"] = j.UsingSdk 11147 } 11148 if j.Settings != nil { 11149 objectMap["settings"] = j.Settings 11150 } 11151 return json.Marshal(objectMap) 11152} 11153 11154// ListCapability ... 11155type ListCapability struct { 11156 autorest.Response `json:"-"` 11157 Value *[]Capability `json:"value,omitempty"` 11158} 11159 11160// ListCertificateEmail ... 11161type ListCertificateEmail struct { 11162 autorest.Response `json:"-"` 11163 Value *[]CertificateEmail `json:"value,omitempty"` 11164} 11165 11166// ListCertificateOrderAction ... 11167type ListCertificateOrderAction struct { 11168 autorest.Response `json:"-"` 11169 Value *[]CertificateOrderAction `json:"value,omitempty"` 11170} 11171 11172// ListHostingEnvironmentDiagnostics ... 11173type ListHostingEnvironmentDiagnostics struct { 11174 autorest.Response `json:"-"` 11175 Value *[]HostingEnvironmentDiagnostics `json:"value,omitempty"` 11176} 11177 11178// ListOperation ... 11179type ListOperation struct { 11180 autorest.Response `json:"-"` 11181 Value *[]Operation `json:"value,omitempty"` 11182} 11183 11184// ListVnetInfo ... 11185type ListVnetInfo struct { 11186 autorest.Response `json:"-"` 11187 Value *[]VnetInfo `json:"value,omitempty"` 11188} 11189 11190// ListVnetRoute ... 11191type ListVnetRoute struct { 11192 autorest.Response `json:"-"` 11193 Value *[]VnetRoute `json:"value,omitempty"` 11194} 11195 11196// LocalizableString localizable string object containing the name and a localized value. 11197type LocalizableString struct { 11198 // Value - Non-localized name. 11199 Value *string `json:"value,omitempty"` 11200 // LocalizedValue - Localized name. 11201 LocalizedValue *string `json:"localizedValue,omitempty"` 11202} 11203 11204// ManagedServiceIdentity managed service identity. 11205type ManagedServiceIdentity struct { 11206 // Type - Type of managed service identity. Possible values include: 'SystemAssigned' 11207 Type ManagedServiceIdentityType `json:"type,omitempty"` 11208 // TenantID - READ-ONLY; Tenant of managed service identity. 11209 TenantID *string `json:"tenantId,omitempty"` 11210 // PrincipalID - READ-ONLY; Principal Id of managed service identity. 11211 PrincipalID *string `json:"principalId,omitempty"` 11212} 11213 11214// MetricAvailabilily metric availability and retention. 11215type MetricAvailabilily struct { 11216 // TimeGrain - Time grain. 11217 TimeGrain *string `json:"timeGrain,omitempty"` 11218 // Retention - Retention period for the current time grain. 11219 Retention *string `json:"retention,omitempty"` 11220} 11221 11222// MetricAvailability retention policy of a resource metric. 11223type MetricAvailability struct { 11224 TimeGrain *string `json:"timeGrain,omitempty"` 11225 BlobDuration *string `json:"blobDuration,omitempty"` 11226} 11227 11228// MetricDefinition metadata for a metric. 11229type MetricDefinition struct { 11230 autorest.Response `json:"-"` 11231 // MetricDefinitionProperties - MetricDefinition resource specific properties 11232 *MetricDefinitionProperties `json:"properties,omitempty"` 11233 // ID - READ-ONLY; Resource Id. 11234 ID *string `json:"id,omitempty"` 11235 // Name - READ-ONLY; Resource Name. 11236 Name *string `json:"name,omitempty"` 11237 // Kind - Kind of resource. 11238 Kind *string `json:"kind,omitempty"` 11239 // Type - READ-ONLY; Resource type. 11240 Type *string `json:"type,omitempty"` 11241} 11242 11243// MarshalJSON is the custom marshaler for MetricDefinition. 11244func (md MetricDefinition) MarshalJSON() ([]byte, error) { 11245 objectMap := make(map[string]interface{}) 11246 if md.MetricDefinitionProperties != nil { 11247 objectMap["properties"] = md.MetricDefinitionProperties 11248 } 11249 if md.Kind != nil { 11250 objectMap["kind"] = md.Kind 11251 } 11252 return json.Marshal(objectMap) 11253} 11254 11255// UnmarshalJSON is the custom unmarshaler for MetricDefinition struct. 11256func (md *MetricDefinition) UnmarshalJSON(body []byte) error { 11257 var m map[string]*json.RawMessage 11258 err := json.Unmarshal(body, &m) 11259 if err != nil { 11260 return err 11261 } 11262 for k, v := range m { 11263 switch k { 11264 case "properties": 11265 if v != nil { 11266 var metricDefinitionProperties MetricDefinitionProperties 11267 err = json.Unmarshal(*v, &metricDefinitionProperties) 11268 if err != nil { 11269 return err 11270 } 11271 md.MetricDefinitionProperties = &metricDefinitionProperties 11272 } 11273 case "id": 11274 if v != nil { 11275 var ID string 11276 err = json.Unmarshal(*v, &ID) 11277 if err != nil { 11278 return err 11279 } 11280 md.ID = &ID 11281 } 11282 case "name": 11283 if v != nil { 11284 var name string 11285 err = json.Unmarshal(*v, &name) 11286 if err != nil { 11287 return err 11288 } 11289 md.Name = &name 11290 } 11291 case "kind": 11292 if v != nil { 11293 var kind string 11294 err = json.Unmarshal(*v, &kind) 11295 if err != nil { 11296 return err 11297 } 11298 md.Kind = &kind 11299 } 11300 case "type": 11301 if v != nil { 11302 var typeVar string 11303 err = json.Unmarshal(*v, &typeVar) 11304 if err != nil { 11305 return err 11306 } 11307 md.Type = &typeVar 11308 } 11309 } 11310 } 11311 11312 return nil 11313} 11314 11315// MetricDefinitionProperties metricDefinition resource specific properties 11316type MetricDefinitionProperties struct { 11317 // Name - READ-ONLY; Name of the metric. 11318 Name *string `json:"name,omitempty"` 11319 // Unit - READ-ONLY; Unit of the metric. 11320 Unit *string `json:"unit,omitempty"` 11321 // PrimaryAggregationType - READ-ONLY; Primary aggregation type. 11322 PrimaryAggregationType *string `json:"primaryAggregationType,omitempty"` 11323 // MetricAvailabilities - READ-ONLY; List of time grains supported for the metric together with retention period. 11324 MetricAvailabilities *[]MetricAvailabilily `json:"metricAvailabilities,omitempty"` 11325 // DisplayName - READ-ONLY; Friendly name shown in the UI. 11326 DisplayName *string `json:"displayName,omitempty"` 11327} 11328 11329// MetricSpecification definition of a single resource metric. 11330type MetricSpecification struct { 11331 Name *string `json:"name,omitempty"` 11332 DisplayName *string `json:"displayName,omitempty"` 11333 DisplayDescription *string `json:"displayDescription,omitempty"` 11334 Unit *string `json:"unit,omitempty"` 11335 AggregationType *string `json:"aggregationType,omitempty"` 11336 SupportsInstanceLevelAggregation *bool `json:"supportsInstanceLevelAggregation,omitempty"` 11337 EnableRegionalMdmAccount *bool `json:"enableRegionalMdmAccount,omitempty"` 11338 SourceMdmAccount *string `json:"sourceMdmAccount,omitempty"` 11339 SourceMdmNamespace *string `json:"sourceMdmNamespace,omitempty"` 11340 MetricFilterPattern *string `json:"metricFilterPattern,omitempty"` 11341 FillGapWithZero *bool `json:"fillGapWithZero,omitempty"` 11342 IsInternal *bool `json:"isInternal,omitempty"` 11343 Dimensions *[]Dimension `json:"dimensions,omitempty"` 11344 Category *string `json:"category,omitempty"` 11345 Availabilities *[]MetricAvailability `json:"availabilities,omitempty"` 11346} 11347 11348// MigrateMySQLRequest mySQL migration request. 11349type MigrateMySQLRequest struct { 11350 // MigrateMySQLRequestProperties - MigrateMySqlRequest resource specific properties 11351 *MigrateMySQLRequestProperties `json:"properties,omitempty"` 11352 // ID - READ-ONLY; Resource Id. 11353 ID *string `json:"id,omitempty"` 11354 // Name - READ-ONLY; Resource Name. 11355 Name *string `json:"name,omitempty"` 11356 // Kind - Kind of resource. 11357 Kind *string `json:"kind,omitempty"` 11358 // Type - READ-ONLY; Resource type. 11359 Type *string `json:"type,omitempty"` 11360} 11361 11362// MarshalJSON is the custom marshaler for MigrateMySQLRequest. 11363func (mmsr MigrateMySQLRequest) MarshalJSON() ([]byte, error) { 11364 objectMap := make(map[string]interface{}) 11365 if mmsr.MigrateMySQLRequestProperties != nil { 11366 objectMap["properties"] = mmsr.MigrateMySQLRequestProperties 11367 } 11368 if mmsr.Kind != nil { 11369 objectMap["kind"] = mmsr.Kind 11370 } 11371 return json.Marshal(objectMap) 11372} 11373 11374// UnmarshalJSON is the custom unmarshaler for MigrateMySQLRequest struct. 11375func (mmsr *MigrateMySQLRequest) UnmarshalJSON(body []byte) error { 11376 var m map[string]*json.RawMessage 11377 err := json.Unmarshal(body, &m) 11378 if err != nil { 11379 return err 11380 } 11381 for k, v := range m { 11382 switch k { 11383 case "properties": 11384 if v != nil { 11385 var migrateMySQLRequestProperties MigrateMySQLRequestProperties 11386 err = json.Unmarshal(*v, &migrateMySQLRequestProperties) 11387 if err != nil { 11388 return err 11389 } 11390 mmsr.MigrateMySQLRequestProperties = &migrateMySQLRequestProperties 11391 } 11392 case "id": 11393 if v != nil { 11394 var ID string 11395 err = json.Unmarshal(*v, &ID) 11396 if err != nil { 11397 return err 11398 } 11399 mmsr.ID = &ID 11400 } 11401 case "name": 11402 if v != nil { 11403 var name string 11404 err = json.Unmarshal(*v, &name) 11405 if err != nil { 11406 return err 11407 } 11408 mmsr.Name = &name 11409 } 11410 case "kind": 11411 if v != nil { 11412 var kind string 11413 err = json.Unmarshal(*v, &kind) 11414 if err != nil { 11415 return err 11416 } 11417 mmsr.Kind = &kind 11418 } 11419 case "type": 11420 if v != nil { 11421 var typeVar string 11422 err = json.Unmarshal(*v, &typeVar) 11423 if err != nil { 11424 return err 11425 } 11426 mmsr.Type = &typeVar 11427 } 11428 } 11429 } 11430 11431 return nil 11432} 11433 11434// MigrateMySQLRequestProperties migrateMySqlRequest resource specific properties 11435type MigrateMySQLRequestProperties struct { 11436 // ConnectionString - Connection string to the remote MySQL database. 11437 ConnectionString *string `json:"connectionString,omitempty"` 11438 // MigrationType - The type of migration operation to be done. Possible values include: 'LocalToRemote', 'RemoteToLocal' 11439 MigrationType MySQLMigrationType `json:"migrationType,omitempty"` 11440} 11441 11442// MigrateMySQLStatus mySQL migration status. 11443type MigrateMySQLStatus struct { 11444 autorest.Response `json:"-"` 11445 // MigrateMySQLStatusProperties - MigrateMySqlStatus resource specific properties 11446 *MigrateMySQLStatusProperties `json:"properties,omitempty"` 11447 // ID - READ-ONLY; Resource Id. 11448 ID *string `json:"id,omitempty"` 11449 // Name - READ-ONLY; Resource Name. 11450 Name *string `json:"name,omitempty"` 11451 // Kind - Kind of resource. 11452 Kind *string `json:"kind,omitempty"` 11453 // Type - READ-ONLY; Resource type. 11454 Type *string `json:"type,omitempty"` 11455} 11456 11457// MarshalJSON is the custom marshaler for MigrateMySQLStatus. 11458func (mmss MigrateMySQLStatus) MarshalJSON() ([]byte, error) { 11459 objectMap := make(map[string]interface{}) 11460 if mmss.MigrateMySQLStatusProperties != nil { 11461 objectMap["properties"] = mmss.MigrateMySQLStatusProperties 11462 } 11463 if mmss.Kind != nil { 11464 objectMap["kind"] = mmss.Kind 11465 } 11466 return json.Marshal(objectMap) 11467} 11468 11469// UnmarshalJSON is the custom unmarshaler for MigrateMySQLStatus struct. 11470func (mmss *MigrateMySQLStatus) UnmarshalJSON(body []byte) error { 11471 var m map[string]*json.RawMessage 11472 err := json.Unmarshal(body, &m) 11473 if err != nil { 11474 return err 11475 } 11476 for k, v := range m { 11477 switch k { 11478 case "properties": 11479 if v != nil { 11480 var migrateMySQLStatusProperties MigrateMySQLStatusProperties 11481 err = json.Unmarshal(*v, &migrateMySQLStatusProperties) 11482 if err != nil { 11483 return err 11484 } 11485 mmss.MigrateMySQLStatusProperties = &migrateMySQLStatusProperties 11486 } 11487 case "id": 11488 if v != nil { 11489 var ID string 11490 err = json.Unmarshal(*v, &ID) 11491 if err != nil { 11492 return err 11493 } 11494 mmss.ID = &ID 11495 } 11496 case "name": 11497 if v != nil { 11498 var name string 11499 err = json.Unmarshal(*v, &name) 11500 if err != nil { 11501 return err 11502 } 11503 mmss.Name = &name 11504 } 11505 case "kind": 11506 if v != nil { 11507 var kind string 11508 err = json.Unmarshal(*v, &kind) 11509 if err != nil { 11510 return err 11511 } 11512 mmss.Kind = &kind 11513 } 11514 case "type": 11515 if v != nil { 11516 var typeVar string 11517 err = json.Unmarshal(*v, &typeVar) 11518 if err != nil { 11519 return err 11520 } 11521 mmss.Type = &typeVar 11522 } 11523 } 11524 } 11525 11526 return nil 11527} 11528 11529// MigrateMySQLStatusProperties migrateMySqlStatus resource specific properties 11530type MigrateMySQLStatusProperties struct { 11531 // MigrationOperationStatus - READ-ONLY; Status of the migration task. Possible values include: 'OperationStatusInProgress', 'OperationStatusFailed', 'OperationStatusSucceeded', 'OperationStatusTimedOut', 'OperationStatusCreated' 11532 MigrationOperationStatus OperationStatus `json:"migrationOperationStatus,omitempty"` 11533 // OperationID - READ-ONLY; Operation ID for the migration task. 11534 OperationID *string `json:"operationId,omitempty"` 11535 // LocalMySQLEnabled - READ-ONLY; True if the web app has in app MySql enabled 11536 LocalMySQLEnabled *bool `json:"localMySqlEnabled,omitempty"` 11537} 11538 11539// MSDeploy mSDeploy ARM PUT information 11540type MSDeploy struct { 11541 // MSDeployCore - Core resource properties 11542 *MSDeployCore `json:"properties,omitempty"` 11543 // ID - READ-ONLY; Resource Id. 11544 ID *string `json:"id,omitempty"` 11545 // Name - READ-ONLY; Resource Name. 11546 Name *string `json:"name,omitempty"` 11547 // Kind - Kind of resource. 11548 Kind *string `json:"kind,omitempty"` 11549 // Type - READ-ONLY; Resource type. 11550 Type *string `json:"type,omitempty"` 11551} 11552 11553// MarshalJSON is the custom marshaler for MSDeploy. 11554func (md MSDeploy) MarshalJSON() ([]byte, error) { 11555 objectMap := make(map[string]interface{}) 11556 if md.MSDeployCore != nil { 11557 objectMap["properties"] = md.MSDeployCore 11558 } 11559 if md.Kind != nil { 11560 objectMap["kind"] = md.Kind 11561 } 11562 return json.Marshal(objectMap) 11563} 11564 11565// UnmarshalJSON is the custom unmarshaler for MSDeploy struct. 11566func (md *MSDeploy) UnmarshalJSON(body []byte) error { 11567 var m map[string]*json.RawMessage 11568 err := json.Unmarshal(body, &m) 11569 if err != nil { 11570 return err 11571 } 11572 for k, v := range m { 11573 switch k { 11574 case "properties": 11575 if v != nil { 11576 var mSDeployCore MSDeployCore 11577 err = json.Unmarshal(*v, &mSDeployCore) 11578 if err != nil { 11579 return err 11580 } 11581 md.MSDeployCore = &mSDeployCore 11582 } 11583 case "id": 11584 if v != nil { 11585 var ID string 11586 err = json.Unmarshal(*v, &ID) 11587 if err != nil { 11588 return err 11589 } 11590 md.ID = &ID 11591 } 11592 case "name": 11593 if v != nil { 11594 var name string 11595 err = json.Unmarshal(*v, &name) 11596 if err != nil { 11597 return err 11598 } 11599 md.Name = &name 11600 } 11601 case "kind": 11602 if v != nil { 11603 var kind string 11604 err = json.Unmarshal(*v, &kind) 11605 if err != nil { 11606 return err 11607 } 11608 md.Kind = &kind 11609 } 11610 case "type": 11611 if v != nil { 11612 var typeVar string 11613 err = json.Unmarshal(*v, &typeVar) 11614 if err != nil { 11615 return err 11616 } 11617 md.Type = &typeVar 11618 } 11619 } 11620 } 11621 11622 return nil 11623} 11624 11625// MSDeployCore mSDeploy ARM PUT core information 11626type MSDeployCore struct { 11627 // PackageURI - Package URI 11628 PackageURI *string `json:"packageUri,omitempty"` 11629 // ConnectionString - SQL Connection String 11630 ConnectionString *string `json:"connectionString,omitempty"` 11631 // DbType - Database Type 11632 DbType *string `json:"dbType,omitempty"` 11633 // SetParametersXMLFileURI - URI of MSDeploy Parameters file. Must not be set if SetParameters is used. 11634 SetParametersXMLFileURI *string `json:"setParametersXmlFileUri,omitempty"` 11635 // SetParameters - MSDeploy Parameters. Must not be set if SetParametersXmlFileUri is used. 11636 SetParameters map[string]*string `json:"setParameters"` 11637 // SkipAppData - Controls whether the MSDeploy operation skips the App_Data directory. 11638 // If set to <code>true</code>, the existing App_Data directory on the destination 11639 // will not be deleted, and any App_Data directory in the source will be ignored. 11640 // Setting is <code>false</code> by default. 11641 SkipAppData *bool `json:"skipAppData,omitempty"` 11642 // AppOffline - Sets the AppOffline rule while the MSDeploy operation executes. 11643 // Setting is <code>false</code> by default. 11644 AppOffline *bool `json:"appOffline,omitempty"` 11645} 11646 11647// MarshalJSON is the custom marshaler for MSDeployCore. 11648func (mdc MSDeployCore) MarshalJSON() ([]byte, error) { 11649 objectMap := make(map[string]interface{}) 11650 if mdc.PackageURI != nil { 11651 objectMap["packageUri"] = mdc.PackageURI 11652 } 11653 if mdc.ConnectionString != nil { 11654 objectMap["connectionString"] = mdc.ConnectionString 11655 } 11656 if mdc.DbType != nil { 11657 objectMap["dbType"] = mdc.DbType 11658 } 11659 if mdc.SetParametersXMLFileURI != nil { 11660 objectMap["setParametersXmlFileUri"] = mdc.SetParametersXMLFileURI 11661 } 11662 if mdc.SetParameters != nil { 11663 objectMap["setParameters"] = mdc.SetParameters 11664 } 11665 if mdc.SkipAppData != nil { 11666 objectMap["skipAppData"] = mdc.SkipAppData 11667 } 11668 if mdc.AppOffline != nil { 11669 objectMap["appOffline"] = mdc.AppOffline 11670 } 11671 return json.Marshal(objectMap) 11672} 11673 11674// MSDeployLog mSDeploy log 11675type MSDeployLog struct { 11676 autorest.Response `json:"-"` 11677 // MSDeployLogProperties - MSDeployLog resource specific properties 11678 *MSDeployLogProperties `json:"properties,omitempty"` 11679 // ID - READ-ONLY; Resource Id. 11680 ID *string `json:"id,omitempty"` 11681 // Name - READ-ONLY; Resource Name. 11682 Name *string `json:"name,omitempty"` 11683 // Kind - Kind of resource. 11684 Kind *string `json:"kind,omitempty"` 11685 // Type - READ-ONLY; Resource type. 11686 Type *string `json:"type,omitempty"` 11687} 11688 11689// MarshalJSON is the custom marshaler for MSDeployLog. 11690func (mdl MSDeployLog) MarshalJSON() ([]byte, error) { 11691 objectMap := make(map[string]interface{}) 11692 if mdl.MSDeployLogProperties != nil { 11693 objectMap["properties"] = mdl.MSDeployLogProperties 11694 } 11695 if mdl.Kind != nil { 11696 objectMap["kind"] = mdl.Kind 11697 } 11698 return json.Marshal(objectMap) 11699} 11700 11701// UnmarshalJSON is the custom unmarshaler for MSDeployLog struct. 11702func (mdl *MSDeployLog) UnmarshalJSON(body []byte) error { 11703 var m map[string]*json.RawMessage 11704 err := json.Unmarshal(body, &m) 11705 if err != nil { 11706 return err 11707 } 11708 for k, v := range m { 11709 switch k { 11710 case "properties": 11711 if v != nil { 11712 var mSDeployLogProperties MSDeployLogProperties 11713 err = json.Unmarshal(*v, &mSDeployLogProperties) 11714 if err != nil { 11715 return err 11716 } 11717 mdl.MSDeployLogProperties = &mSDeployLogProperties 11718 } 11719 case "id": 11720 if v != nil { 11721 var ID string 11722 err = json.Unmarshal(*v, &ID) 11723 if err != nil { 11724 return err 11725 } 11726 mdl.ID = &ID 11727 } 11728 case "name": 11729 if v != nil { 11730 var name string 11731 err = json.Unmarshal(*v, &name) 11732 if err != nil { 11733 return err 11734 } 11735 mdl.Name = &name 11736 } 11737 case "kind": 11738 if v != nil { 11739 var kind string 11740 err = json.Unmarshal(*v, &kind) 11741 if err != nil { 11742 return err 11743 } 11744 mdl.Kind = &kind 11745 } 11746 case "type": 11747 if v != nil { 11748 var typeVar string 11749 err = json.Unmarshal(*v, &typeVar) 11750 if err != nil { 11751 return err 11752 } 11753 mdl.Type = &typeVar 11754 } 11755 } 11756 } 11757 11758 return nil 11759} 11760 11761// MSDeployLogEntry mSDeploy log entry 11762type MSDeployLogEntry struct { 11763 // Time - READ-ONLY; Timestamp of log entry 11764 Time *date.Time `json:"time,omitempty"` 11765 // Type - READ-ONLY; Log entry type. Possible values include: 'MSDeployLogEntryTypeMessage', 'MSDeployLogEntryTypeWarning', 'MSDeployLogEntryTypeError' 11766 Type MSDeployLogEntryType `json:"type,omitempty"` 11767 // Message - READ-ONLY; Log entry message 11768 Message *string `json:"message,omitempty"` 11769} 11770 11771// MSDeployLogProperties mSDeployLog resource specific properties 11772type MSDeployLogProperties struct { 11773 // Entries - READ-ONLY; List of log entry messages 11774 Entries *[]MSDeployLogEntry `json:"entries,omitempty"` 11775} 11776 11777// MSDeployStatus mSDeploy ARM response 11778type MSDeployStatus struct { 11779 autorest.Response `json:"-"` 11780 // MSDeployStatusProperties - MSDeployStatus resource specific properties 11781 *MSDeployStatusProperties `json:"properties,omitempty"` 11782 // ID - READ-ONLY; Resource Id. 11783 ID *string `json:"id,omitempty"` 11784 // Name - READ-ONLY; Resource Name. 11785 Name *string `json:"name,omitempty"` 11786 // Kind - Kind of resource. 11787 Kind *string `json:"kind,omitempty"` 11788 // Type - READ-ONLY; Resource type. 11789 Type *string `json:"type,omitempty"` 11790} 11791 11792// MarshalJSON is the custom marshaler for MSDeployStatus. 11793func (mds MSDeployStatus) MarshalJSON() ([]byte, error) { 11794 objectMap := make(map[string]interface{}) 11795 if mds.MSDeployStatusProperties != nil { 11796 objectMap["properties"] = mds.MSDeployStatusProperties 11797 } 11798 if mds.Kind != nil { 11799 objectMap["kind"] = mds.Kind 11800 } 11801 return json.Marshal(objectMap) 11802} 11803 11804// UnmarshalJSON is the custom unmarshaler for MSDeployStatus struct. 11805func (mds *MSDeployStatus) UnmarshalJSON(body []byte) error { 11806 var m map[string]*json.RawMessage 11807 err := json.Unmarshal(body, &m) 11808 if err != nil { 11809 return err 11810 } 11811 for k, v := range m { 11812 switch k { 11813 case "properties": 11814 if v != nil { 11815 var mSDeployStatusProperties MSDeployStatusProperties 11816 err = json.Unmarshal(*v, &mSDeployStatusProperties) 11817 if err != nil { 11818 return err 11819 } 11820 mds.MSDeployStatusProperties = &mSDeployStatusProperties 11821 } 11822 case "id": 11823 if v != nil { 11824 var ID string 11825 err = json.Unmarshal(*v, &ID) 11826 if err != nil { 11827 return err 11828 } 11829 mds.ID = &ID 11830 } 11831 case "name": 11832 if v != nil { 11833 var name string 11834 err = json.Unmarshal(*v, &name) 11835 if err != nil { 11836 return err 11837 } 11838 mds.Name = &name 11839 } 11840 case "kind": 11841 if v != nil { 11842 var kind string 11843 err = json.Unmarshal(*v, &kind) 11844 if err != nil { 11845 return err 11846 } 11847 mds.Kind = &kind 11848 } 11849 case "type": 11850 if v != nil { 11851 var typeVar string 11852 err = json.Unmarshal(*v, &typeVar) 11853 if err != nil { 11854 return err 11855 } 11856 mds.Type = &typeVar 11857 } 11858 } 11859 } 11860 11861 return nil 11862} 11863 11864// MSDeployStatusProperties mSDeployStatus resource specific properties 11865type MSDeployStatusProperties struct { 11866 // Deployer - READ-ONLY; Username of deployer 11867 Deployer *string `json:"deployer,omitempty"` 11868 // ProvisioningState - READ-ONLY; Provisioning state. Possible values include: 'MSDeployProvisioningStateAccepted', 'MSDeployProvisioningStateRunning', 'MSDeployProvisioningStateSucceeded', 'MSDeployProvisioningStateFailed', 'MSDeployProvisioningStateCanceled' 11869 ProvisioningState MSDeployProvisioningState `json:"provisioningState,omitempty"` 11870 // StartTime - READ-ONLY; Start time of deploy operation 11871 StartTime *date.Time `json:"startTime,omitempty"` 11872 // EndTime - READ-ONLY; End time of deploy operation 11873 EndTime *date.Time `json:"endTime,omitempty"` 11874 // Complete - READ-ONLY; Whether the deployment operation has completed 11875 Complete *bool `json:"complete,omitempty"` 11876} 11877 11878// NameIdentifier identifies an object. 11879type NameIdentifier struct { 11880 // Name - Name of the object. 11881 Name *string `json:"name,omitempty"` 11882} 11883 11884// NameIdentifierCollection collection of domain name identifiers. 11885type NameIdentifierCollection struct { 11886 autorest.Response `json:"-"` 11887 // Value - Collection of resources. 11888 Value *[]NameIdentifier `json:"value,omitempty"` 11889 // NextLink - READ-ONLY; Link to next page of resources. 11890 NextLink *string `json:"nextLink,omitempty"` 11891} 11892 11893// NameIdentifierCollectionIterator provides access to a complete listing of NameIdentifier values. 11894type NameIdentifierCollectionIterator struct { 11895 i int 11896 page NameIdentifierCollectionPage 11897} 11898 11899// NextWithContext advances to the next value. If there was an error making 11900// the request the iterator does not advance and the error is returned. 11901func (iter *NameIdentifierCollectionIterator) NextWithContext(ctx context.Context) (err error) { 11902 if tracing.IsEnabled() { 11903 ctx = tracing.StartSpan(ctx, fqdn+"/NameIdentifierCollectionIterator.NextWithContext") 11904 defer func() { 11905 sc := -1 11906 if iter.Response().Response.Response != nil { 11907 sc = iter.Response().Response.Response.StatusCode 11908 } 11909 tracing.EndSpan(ctx, sc, err) 11910 }() 11911 } 11912 iter.i++ 11913 if iter.i < len(iter.page.Values()) { 11914 return nil 11915 } 11916 err = iter.page.NextWithContext(ctx) 11917 if err != nil { 11918 iter.i-- 11919 return err 11920 } 11921 iter.i = 0 11922 return nil 11923} 11924 11925// Next advances to the next value. If there was an error making 11926// the request the iterator does not advance and the error is returned. 11927// Deprecated: Use NextWithContext() instead. 11928func (iter *NameIdentifierCollectionIterator) Next() error { 11929 return iter.NextWithContext(context.Background()) 11930} 11931 11932// NotDone returns true if the enumeration should be started or is not yet complete. 11933func (iter NameIdentifierCollectionIterator) NotDone() bool { 11934 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 11935} 11936 11937// Response returns the raw server response from the last page request. 11938func (iter NameIdentifierCollectionIterator) Response() NameIdentifierCollection { 11939 return iter.page.Response() 11940} 11941 11942// Value returns the current value or a zero-initialized value if the 11943// iterator has advanced beyond the end of the collection. 11944func (iter NameIdentifierCollectionIterator) Value() NameIdentifier { 11945 if !iter.page.NotDone() { 11946 return NameIdentifier{} 11947 } 11948 return iter.page.Values()[iter.i] 11949} 11950 11951// Creates a new instance of the NameIdentifierCollectionIterator type. 11952func NewNameIdentifierCollectionIterator(page NameIdentifierCollectionPage) NameIdentifierCollectionIterator { 11953 return NameIdentifierCollectionIterator{page: page} 11954} 11955 11956// IsEmpty returns true if the ListResult contains no values. 11957func (nic NameIdentifierCollection) IsEmpty() bool { 11958 return nic.Value == nil || len(*nic.Value) == 0 11959} 11960 11961// nameIdentifierCollectionPreparer prepares a request to retrieve the next set of results. 11962// It returns nil if no more results exist. 11963func (nic NameIdentifierCollection) nameIdentifierCollectionPreparer(ctx context.Context) (*http.Request, error) { 11964 if nic.NextLink == nil || len(to.String(nic.NextLink)) < 1 { 11965 return nil, nil 11966 } 11967 return autorest.Prepare((&http.Request{}).WithContext(ctx), 11968 autorest.AsJSON(), 11969 autorest.AsGet(), 11970 autorest.WithBaseURL(to.String(nic.NextLink))) 11971} 11972 11973// NameIdentifierCollectionPage contains a page of NameIdentifier values. 11974type NameIdentifierCollectionPage struct { 11975 fn func(context.Context, NameIdentifierCollection) (NameIdentifierCollection, error) 11976 nic NameIdentifierCollection 11977} 11978 11979// NextWithContext advances to the next page of values. If there was an error making 11980// the request the page does not advance and the error is returned. 11981func (page *NameIdentifierCollectionPage) NextWithContext(ctx context.Context) (err error) { 11982 if tracing.IsEnabled() { 11983 ctx = tracing.StartSpan(ctx, fqdn+"/NameIdentifierCollectionPage.NextWithContext") 11984 defer func() { 11985 sc := -1 11986 if page.Response().Response.Response != nil { 11987 sc = page.Response().Response.Response.StatusCode 11988 } 11989 tracing.EndSpan(ctx, sc, err) 11990 }() 11991 } 11992 next, err := page.fn(ctx, page.nic) 11993 if err != nil { 11994 return err 11995 } 11996 page.nic = next 11997 return nil 11998} 11999 12000// Next advances to the next page of values. If there was an error making 12001// the request the page does not advance and the error is returned. 12002// Deprecated: Use NextWithContext() instead. 12003func (page *NameIdentifierCollectionPage) Next() error { 12004 return page.NextWithContext(context.Background()) 12005} 12006 12007// NotDone returns true if the page enumeration should be started or is not yet complete. 12008func (page NameIdentifierCollectionPage) NotDone() bool { 12009 return !page.nic.IsEmpty() 12010} 12011 12012// Response returns the raw server response from the last page request. 12013func (page NameIdentifierCollectionPage) Response() NameIdentifierCollection { 12014 return page.nic 12015} 12016 12017// Values returns the slice of values for the current page or nil if there are no values. 12018func (page NameIdentifierCollectionPage) Values() []NameIdentifier { 12019 if page.nic.IsEmpty() { 12020 return nil 12021 } 12022 return *page.nic.Value 12023} 12024 12025// Creates a new instance of the NameIdentifierCollectionPage type. 12026func NewNameIdentifierCollectionPage(getNextPage func(context.Context, NameIdentifierCollection) (NameIdentifierCollection, error)) NameIdentifierCollectionPage { 12027 return NameIdentifierCollectionPage{fn: getNextPage} 12028} 12029 12030// NameValuePair name value pair. 12031type NameValuePair struct { 12032 // Name - Pair name. 12033 Name *string `json:"name,omitempty"` 12034 // Value - Pair value. 12035 Value *string `json:"value,omitempty"` 12036} 12037 12038// NetworkAccessControlEntry network access control entry. 12039type NetworkAccessControlEntry struct { 12040 // Action - Action object. Possible values include: 'Permit', 'Deny' 12041 Action AccessControlEntryAction `json:"action,omitempty"` 12042 // Description - Description of network access control entry. 12043 Description *string `json:"description,omitempty"` 12044 // Order - Order of precedence. 12045 Order *int32 `json:"order,omitempty"` 12046 // RemoteSubnet - Remote subnet. 12047 RemoteSubnet *string `json:"remoteSubnet,omitempty"` 12048} 12049 12050// NetworkFeatures full view of network features for an app (presently VNET integration and Hybrid 12051// Connections). 12052type NetworkFeatures struct { 12053 autorest.Response `json:"-"` 12054 // NetworkFeaturesProperties - NetworkFeatures resource specific properties 12055 *NetworkFeaturesProperties `json:"properties,omitempty"` 12056 // ID - READ-ONLY; Resource Id. 12057 ID *string `json:"id,omitempty"` 12058 // Name - READ-ONLY; Resource Name. 12059 Name *string `json:"name,omitempty"` 12060 // Kind - Kind of resource. 12061 Kind *string `json:"kind,omitempty"` 12062 // Type - READ-ONLY; Resource type. 12063 Type *string `json:"type,omitempty"` 12064} 12065 12066// MarshalJSON is the custom marshaler for NetworkFeatures. 12067func (nf NetworkFeatures) MarshalJSON() ([]byte, error) { 12068 objectMap := make(map[string]interface{}) 12069 if nf.NetworkFeaturesProperties != nil { 12070 objectMap["properties"] = nf.NetworkFeaturesProperties 12071 } 12072 if nf.Kind != nil { 12073 objectMap["kind"] = nf.Kind 12074 } 12075 return json.Marshal(objectMap) 12076} 12077 12078// UnmarshalJSON is the custom unmarshaler for NetworkFeatures struct. 12079func (nf *NetworkFeatures) UnmarshalJSON(body []byte) error { 12080 var m map[string]*json.RawMessage 12081 err := json.Unmarshal(body, &m) 12082 if err != nil { 12083 return err 12084 } 12085 for k, v := range m { 12086 switch k { 12087 case "properties": 12088 if v != nil { 12089 var networkFeaturesProperties NetworkFeaturesProperties 12090 err = json.Unmarshal(*v, &networkFeaturesProperties) 12091 if err != nil { 12092 return err 12093 } 12094 nf.NetworkFeaturesProperties = &networkFeaturesProperties 12095 } 12096 case "id": 12097 if v != nil { 12098 var ID string 12099 err = json.Unmarshal(*v, &ID) 12100 if err != nil { 12101 return err 12102 } 12103 nf.ID = &ID 12104 } 12105 case "name": 12106 if v != nil { 12107 var name string 12108 err = json.Unmarshal(*v, &name) 12109 if err != nil { 12110 return err 12111 } 12112 nf.Name = &name 12113 } 12114 case "kind": 12115 if v != nil { 12116 var kind string 12117 err = json.Unmarshal(*v, &kind) 12118 if err != nil { 12119 return err 12120 } 12121 nf.Kind = &kind 12122 } 12123 case "type": 12124 if v != nil { 12125 var typeVar string 12126 err = json.Unmarshal(*v, &typeVar) 12127 if err != nil { 12128 return err 12129 } 12130 nf.Type = &typeVar 12131 } 12132 } 12133 } 12134 12135 return nil 12136} 12137 12138// NetworkFeaturesProperties networkFeatures resource specific properties 12139type NetworkFeaturesProperties struct { 12140 // VirtualNetworkName - READ-ONLY; The Virtual Network name. 12141 VirtualNetworkName *string `json:"virtualNetworkName,omitempty"` 12142 // VirtualNetworkConnection - READ-ONLY; The Virtual Network summary view. 12143 VirtualNetworkConnection *VnetInfo `json:"virtualNetworkConnection,omitempty"` 12144 // HybridConnections - READ-ONLY; The Hybrid Connections summary view. 12145 HybridConnections *[]RelayServiceConnectionEntity `json:"hybridConnections,omitempty"` 12146 // HybridConnectionsV2 - READ-ONLY; The Hybrid Connection V2 (Service Bus) view. 12147 HybridConnectionsV2 *[]HybridConnection `json:"hybridConnectionsV2,omitempty"` 12148} 12149 12150// Operation an operation on a resource. 12151type Operation struct { 12152 autorest.Response `json:"-"` 12153 // ID - Operation ID. 12154 ID *string `json:"id,omitempty"` 12155 // Name - Operation name. 12156 Name *string `json:"name,omitempty"` 12157 // Status - The current status of the operation. Possible values include: 'OperationStatusInProgress', 'OperationStatusFailed', 'OperationStatusSucceeded', 'OperationStatusTimedOut', 'OperationStatusCreated' 12158 Status OperationStatus `json:"status,omitempty"` 12159 // Errors - Any errors associate with the operation. 12160 Errors *[]ErrorEntity `json:"errors,omitempty"` 12161 // CreatedTime - Time when operation has started. 12162 CreatedTime *date.Time `json:"createdTime,omitempty"` 12163 // ModifiedTime - Time when operation has been updated. 12164 ModifiedTime *date.Time `json:"modifiedTime,omitempty"` 12165 // ExpirationTime - Time when operation will expire. 12166 ExpirationTime *date.Time `json:"expirationTime,omitempty"` 12167 // GeoMasterOperationID - Applicable only for stamp operation ids. 12168 GeoMasterOperationID *uuid.UUID `json:"geoMasterOperationId,omitempty"` 12169} 12170 12171// PerfMonCounterCollection collection of performance monitor counters. 12172type PerfMonCounterCollection struct { 12173 autorest.Response `json:"-"` 12174 // Value - Collection of resources. 12175 Value *[]PerfMonResponse `json:"value,omitempty"` 12176 // NextLink - READ-ONLY; Link to next page of resources. 12177 NextLink *string `json:"nextLink,omitempty"` 12178} 12179 12180// PerfMonCounterCollectionIterator provides access to a complete listing of PerfMonResponse values. 12181type PerfMonCounterCollectionIterator struct { 12182 i int 12183 page PerfMonCounterCollectionPage 12184} 12185 12186// NextWithContext advances to the next value. If there was an error making 12187// the request the iterator does not advance and the error is returned. 12188func (iter *PerfMonCounterCollectionIterator) NextWithContext(ctx context.Context) (err error) { 12189 if tracing.IsEnabled() { 12190 ctx = tracing.StartSpan(ctx, fqdn+"/PerfMonCounterCollectionIterator.NextWithContext") 12191 defer func() { 12192 sc := -1 12193 if iter.Response().Response.Response != nil { 12194 sc = iter.Response().Response.Response.StatusCode 12195 } 12196 tracing.EndSpan(ctx, sc, err) 12197 }() 12198 } 12199 iter.i++ 12200 if iter.i < len(iter.page.Values()) { 12201 return nil 12202 } 12203 err = iter.page.NextWithContext(ctx) 12204 if err != nil { 12205 iter.i-- 12206 return err 12207 } 12208 iter.i = 0 12209 return nil 12210} 12211 12212// Next advances to the next value. If there was an error making 12213// the request the iterator does not advance and the error is returned. 12214// Deprecated: Use NextWithContext() instead. 12215func (iter *PerfMonCounterCollectionIterator) Next() error { 12216 return iter.NextWithContext(context.Background()) 12217} 12218 12219// NotDone returns true if the enumeration should be started or is not yet complete. 12220func (iter PerfMonCounterCollectionIterator) NotDone() bool { 12221 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 12222} 12223 12224// Response returns the raw server response from the last page request. 12225func (iter PerfMonCounterCollectionIterator) Response() PerfMonCounterCollection { 12226 return iter.page.Response() 12227} 12228 12229// Value returns the current value or a zero-initialized value if the 12230// iterator has advanced beyond the end of the collection. 12231func (iter PerfMonCounterCollectionIterator) Value() PerfMonResponse { 12232 if !iter.page.NotDone() { 12233 return PerfMonResponse{} 12234 } 12235 return iter.page.Values()[iter.i] 12236} 12237 12238// Creates a new instance of the PerfMonCounterCollectionIterator type. 12239func NewPerfMonCounterCollectionIterator(page PerfMonCounterCollectionPage) PerfMonCounterCollectionIterator { 12240 return PerfMonCounterCollectionIterator{page: page} 12241} 12242 12243// IsEmpty returns true if the ListResult contains no values. 12244func (pmcc PerfMonCounterCollection) IsEmpty() bool { 12245 return pmcc.Value == nil || len(*pmcc.Value) == 0 12246} 12247 12248// perfMonCounterCollectionPreparer prepares a request to retrieve the next set of results. 12249// It returns nil if no more results exist. 12250func (pmcc PerfMonCounterCollection) perfMonCounterCollectionPreparer(ctx context.Context) (*http.Request, error) { 12251 if pmcc.NextLink == nil || len(to.String(pmcc.NextLink)) < 1 { 12252 return nil, nil 12253 } 12254 return autorest.Prepare((&http.Request{}).WithContext(ctx), 12255 autorest.AsJSON(), 12256 autorest.AsGet(), 12257 autorest.WithBaseURL(to.String(pmcc.NextLink))) 12258} 12259 12260// PerfMonCounterCollectionPage contains a page of PerfMonResponse values. 12261type PerfMonCounterCollectionPage struct { 12262 fn func(context.Context, PerfMonCounterCollection) (PerfMonCounterCollection, error) 12263 pmcc PerfMonCounterCollection 12264} 12265 12266// NextWithContext advances to the next page of values. If there was an error making 12267// the request the page does not advance and the error is returned. 12268func (page *PerfMonCounterCollectionPage) NextWithContext(ctx context.Context) (err error) { 12269 if tracing.IsEnabled() { 12270 ctx = tracing.StartSpan(ctx, fqdn+"/PerfMonCounterCollectionPage.NextWithContext") 12271 defer func() { 12272 sc := -1 12273 if page.Response().Response.Response != nil { 12274 sc = page.Response().Response.Response.StatusCode 12275 } 12276 tracing.EndSpan(ctx, sc, err) 12277 }() 12278 } 12279 next, err := page.fn(ctx, page.pmcc) 12280 if err != nil { 12281 return err 12282 } 12283 page.pmcc = next 12284 return nil 12285} 12286 12287// Next advances to the next page of values. If there was an error making 12288// the request the page does not advance and the error is returned. 12289// Deprecated: Use NextWithContext() instead. 12290func (page *PerfMonCounterCollectionPage) Next() error { 12291 return page.NextWithContext(context.Background()) 12292} 12293 12294// NotDone returns true if the page enumeration should be started or is not yet complete. 12295func (page PerfMonCounterCollectionPage) NotDone() bool { 12296 return !page.pmcc.IsEmpty() 12297} 12298 12299// Response returns the raw server response from the last page request. 12300func (page PerfMonCounterCollectionPage) Response() PerfMonCounterCollection { 12301 return page.pmcc 12302} 12303 12304// Values returns the slice of values for the current page or nil if there are no values. 12305func (page PerfMonCounterCollectionPage) Values() []PerfMonResponse { 12306 if page.pmcc.IsEmpty() { 12307 return nil 12308 } 12309 return *page.pmcc.Value 12310} 12311 12312// Creates a new instance of the PerfMonCounterCollectionPage type. 12313func NewPerfMonCounterCollectionPage(getNextPage func(context.Context, PerfMonCounterCollection) (PerfMonCounterCollection, error)) PerfMonCounterCollectionPage { 12314 return PerfMonCounterCollectionPage{fn: getNextPage} 12315} 12316 12317// PerfMonResponse performance monitor API response. 12318type PerfMonResponse struct { 12319 // Code - The response code. 12320 Code *string `json:"code,omitempty"` 12321 // Message - The message. 12322 Message *string `json:"message,omitempty"` 12323 // Data - The performance monitor counters. 12324 Data *PerfMonSet `json:"data,omitempty"` 12325} 12326 12327// PerfMonSample performance monitor sample in a set. 12328type PerfMonSample struct { 12329 // Time - Point in time for which counter was measured. 12330 Time *date.Time `json:"time,omitempty"` 12331 // InstanceName - Name of the server on which the measurement is made. 12332 InstanceName *string `json:"instanceName,omitempty"` 12333 // Value - Value of counter at a certain time. 12334 Value *float64 `json:"value,omitempty"` 12335 // CoreCount - Core Count of worker. Not a data member 12336 CoreCount *int32 `json:"coreCount,omitempty"` 12337} 12338 12339// PerfMonSet metric information. 12340type PerfMonSet struct { 12341 // Name - Unique key name of the counter. 12342 Name *string `json:"name,omitempty"` 12343 // StartTime - Start time of the period. 12344 StartTime *date.Time `json:"startTime,omitempty"` 12345 // EndTime - End time of the period. 12346 EndTime *date.Time `json:"endTime,omitempty"` 12347 // TimeGrain - Presented time grain. 12348 TimeGrain *string `json:"timeGrain,omitempty"` 12349 // Values - Collection of workers that are active during this time. 12350 Values *[]PerfMonSample `json:"values,omitempty"` 12351} 12352 12353// PremierAddOn premier add-on. 12354type PremierAddOn struct { 12355 autorest.Response `json:"-"` 12356 // PremierAddOnProperties - PremierAddOn resource specific properties 12357 *PremierAddOnProperties `json:"properties,omitempty"` 12358 // ID - READ-ONLY; Resource Id. 12359 ID *string `json:"id,omitempty"` 12360 // Name - READ-ONLY; Resource Name. 12361 Name *string `json:"name,omitempty"` 12362 // Kind - Kind of resource. 12363 Kind *string `json:"kind,omitempty"` 12364 // Location - Resource Location. 12365 Location *string `json:"location,omitempty"` 12366 // Type - READ-ONLY; Resource type. 12367 Type *string `json:"type,omitempty"` 12368 // Tags - Resource tags. 12369 Tags map[string]*string `json:"tags"` 12370} 12371 12372// MarshalJSON is the custom marshaler for PremierAddOn. 12373func (pao PremierAddOn) MarshalJSON() ([]byte, error) { 12374 objectMap := make(map[string]interface{}) 12375 if pao.PremierAddOnProperties != nil { 12376 objectMap["properties"] = pao.PremierAddOnProperties 12377 } 12378 if pao.Kind != nil { 12379 objectMap["kind"] = pao.Kind 12380 } 12381 if pao.Location != nil { 12382 objectMap["location"] = pao.Location 12383 } 12384 if pao.Tags != nil { 12385 objectMap["tags"] = pao.Tags 12386 } 12387 return json.Marshal(objectMap) 12388} 12389 12390// UnmarshalJSON is the custom unmarshaler for PremierAddOn struct. 12391func (pao *PremierAddOn) UnmarshalJSON(body []byte) error { 12392 var m map[string]*json.RawMessage 12393 err := json.Unmarshal(body, &m) 12394 if err != nil { 12395 return err 12396 } 12397 for k, v := range m { 12398 switch k { 12399 case "properties": 12400 if v != nil { 12401 var premierAddOnProperties PremierAddOnProperties 12402 err = json.Unmarshal(*v, &premierAddOnProperties) 12403 if err != nil { 12404 return err 12405 } 12406 pao.PremierAddOnProperties = &premierAddOnProperties 12407 } 12408 case "id": 12409 if v != nil { 12410 var ID string 12411 err = json.Unmarshal(*v, &ID) 12412 if err != nil { 12413 return err 12414 } 12415 pao.ID = &ID 12416 } 12417 case "name": 12418 if v != nil { 12419 var name string 12420 err = json.Unmarshal(*v, &name) 12421 if err != nil { 12422 return err 12423 } 12424 pao.Name = &name 12425 } 12426 case "kind": 12427 if v != nil { 12428 var kind string 12429 err = json.Unmarshal(*v, &kind) 12430 if err != nil { 12431 return err 12432 } 12433 pao.Kind = &kind 12434 } 12435 case "location": 12436 if v != nil { 12437 var location string 12438 err = json.Unmarshal(*v, &location) 12439 if err != nil { 12440 return err 12441 } 12442 pao.Location = &location 12443 } 12444 case "type": 12445 if v != nil { 12446 var typeVar string 12447 err = json.Unmarshal(*v, &typeVar) 12448 if err != nil { 12449 return err 12450 } 12451 pao.Type = &typeVar 12452 } 12453 case "tags": 12454 if v != nil { 12455 var tags map[string]*string 12456 err = json.Unmarshal(*v, &tags) 12457 if err != nil { 12458 return err 12459 } 12460 pao.Tags = tags 12461 } 12462 } 12463 } 12464 12465 return nil 12466} 12467 12468// PremierAddOnOffer premier add-on offer. 12469type PremierAddOnOffer struct { 12470 // PremierAddOnOfferProperties - PremierAddOnOffer resource specific properties 12471 *PremierAddOnOfferProperties `json:"properties,omitempty"` 12472 // ID - READ-ONLY; Resource Id. 12473 ID *string `json:"id,omitempty"` 12474 // Name - READ-ONLY; Resource Name. 12475 Name *string `json:"name,omitempty"` 12476 // Kind - Kind of resource. 12477 Kind *string `json:"kind,omitempty"` 12478 // Type - READ-ONLY; Resource type. 12479 Type *string `json:"type,omitempty"` 12480} 12481 12482// MarshalJSON is the custom marshaler for PremierAddOnOffer. 12483func (paoo PremierAddOnOffer) MarshalJSON() ([]byte, error) { 12484 objectMap := make(map[string]interface{}) 12485 if paoo.PremierAddOnOfferProperties != nil { 12486 objectMap["properties"] = paoo.PremierAddOnOfferProperties 12487 } 12488 if paoo.Kind != nil { 12489 objectMap["kind"] = paoo.Kind 12490 } 12491 return json.Marshal(objectMap) 12492} 12493 12494// UnmarshalJSON is the custom unmarshaler for PremierAddOnOffer struct. 12495func (paoo *PremierAddOnOffer) UnmarshalJSON(body []byte) error { 12496 var m map[string]*json.RawMessage 12497 err := json.Unmarshal(body, &m) 12498 if err != nil { 12499 return err 12500 } 12501 for k, v := range m { 12502 switch k { 12503 case "properties": 12504 if v != nil { 12505 var premierAddOnOfferProperties PremierAddOnOfferProperties 12506 err = json.Unmarshal(*v, &premierAddOnOfferProperties) 12507 if err != nil { 12508 return err 12509 } 12510 paoo.PremierAddOnOfferProperties = &premierAddOnOfferProperties 12511 } 12512 case "id": 12513 if v != nil { 12514 var ID string 12515 err = json.Unmarshal(*v, &ID) 12516 if err != nil { 12517 return err 12518 } 12519 paoo.ID = &ID 12520 } 12521 case "name": 12522 if v != nil { 12523 var name string 12524 err = json.Unmarshal(*v, &name) 12525 if err != nil { 12526 return err 12527 } 12528 paoo.Name = &name 12529 } 12530 case "kind": 12531 if v != nil { 12532 var kind string 12533 err = json.Unmarshal(*v, &kind) 12534 if err != nil { 12535 return err 12536 } 12537 paoo.Kind = &kind 12538 } 12539 case "type": 12540 if v != nil { 12541 var typeVar string 12542 err = json.Unmarshal(*v, &typeVar) 12543 if err != nil { 12544 return err 12545 } 12546 paoo.Type = &typeVar 12547 } 12548 } 12549 } 12550 12551 return nil 12552} 12553 12554// PremierAddOnOfferCollection collection of premier add-on offers. 12555type PremierAddOnOfferCollection struct { 12556 autorest.Response `json:"-"` 12557 // Value - Collection of resources. 12558 Value *[]PremierAddOnOffer `json:"value,omitempty"` 12559 // NextLink - READ-ONLY; Link to next page of resources. 12560 NextLink *string `json:"nextLink,omitempty"` 12561} 12562 12563// PremierAddOnOfferCollectionIterator provides access to a complete listing of PremierAddOnOffer values. 12564type PremierAddOnOfferCollectionIterator struct { 12565 i int 12566 page PremierAddOnOfferCollectionPage 12567} 12568 12569// NextWithContext advances to the next value. If there was an error making 12570// the request the iterator does not advance and the error is returned. 12571func (iter *PremierAddOnOfferCollectionIterator) NextWithContext(ctx context.Context) (err error) { 12572 if tracing.IsEnabled() { 12573 ctx = tracing.StartSpan(ctx, fqdn+"/PremierAddOnOfferCollectionIterator.NextWithContext") 12574 defer func() { 12575 sc := -1 12576 if iter.Response().Response.Response != nil { 12577 sc = iter.Response().Response.Response.StatusCode 12578 } 12579 tracing.EndSpan(ctx, sc, err) 12580 }() 12581 } 12582 iter.i++ 12583 if iter.i < len(iter.page.Values()) { 12584 return nil 12585 } 12586 err = iter.page.NextWithContext(ctx) 12587 if err != nil { 12588 iter.i-- 12589 return err 12590 } 12591 iter.i = 0 12592 return nil 12593} 12594 12595// Next advances to the next value. If there was an error making 12596// the request the iterator does not advance and the error is returned. 12597// Deprecated: Use NextWithContext() instead. 12598func (iter *PremierAddOnOfferCollectionIterator) Next() error { 12599 return iter.NextWithContext(context.Background()) 12600} 12601 12602// NotDone returns true if the enumeration should be started or is not yet complete. 12603func (iter PremierAddOnOfferCollectionIterator) NotDone() bool { 12604 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 12605} 12606 12607// Response returns the raw server response from the last page request. 12608func (iter PremierAddOnOfferCollectionIterator) Response() PremierAddOnOfferCollection { 12609 return iter.page.Response() 12610} 12611 12612// Value returns the current value or a zero-initialized value if the 12613// iterator has advanced beyond the end of the collection. 12614func (iter PremierAddOnOfferCollectionIterator) Value() PremierAddOnOffer { 12615 if !iter.page.NotDone() { 12616 return PremierAddOnOffer{} 12617 } 12618 return iter.page.Values()[iter.i] 12619} 12620 12621// Creates a new instance of the PremierAddOnOfferCollectionIterator type. 12622func NewPremierAddOnOfferCollectionIterator(page PremierAddOnOfferCollectionPage) PremierAddOnOfferCollectionIterator { 12623 return PremierAddOnOfferCollectionIterator{page: page} 12624} 12625 12626// IsEmpty returns true if the ListResult contains no values. 12627func (paooc PremierAddOnOfferCollection) IsEmpty() bool { 12628 return paooc.Value == nil || len(*paooc.Value) == 0 12629} 12630 12631// premierAddOnOfferCollectionPreparer prepares a request to retrieve the next set of results. 12632// It returns nil if no more results exist. 12633func (paooc PremierAddOnOfferCollection) premierAddOnOfferCollectionPreparer(ctx context.Context) (*http.Request, error) { 12634 if paooc.NextLink == nil || len(to.String(paooc.NextLink)) < 1 { 12635 return nil, nil 12636 } 12637 return autorest.Prepare((&http.Request{}).WithContext(ctx), 12638 autorest.AsJSON(), 12639 autorest.AsGet(), 12640 autorest.WithBaseURL(to.String(paooc.NextLink))) 12641} 12642 12643// PremierAddOnOfferCollectionPage contains a page of PremierAddOnOffer values. 12644type PremierAddOnOfferCollectionPage struct { 12645 fn func(context.Context, PremierAddOnOfferCollection) (PremierAddOnOfferCollection, error) 12646 paooc PremierAddOnOfferCollection 12647} 12648 12649// NextWithContext advances to the next page of values. If there was an error making 12650// the request the page does not advance and the error is returned. 12651func (page *PremierAddOnOfferCollectionPage) NextWithContext(ctx context.Context) (err error) { 12652 if tracing.IsEnabled() { 12653 ctx = tracing.StartSpan(ctx, fqdn+"/PremierAddOnOfferCollectionPage.NextWithContext") 12654 defer func() { 12655 sc := -1 12656 if page.Response().Response.Response != nil { 12657 sc = page.Response().Response.Response.StatusCode 12658 } 12659 tracing.EndSpan(ctx, sc, err) 12660 }() 12661 } 12662 next, err := page.fn(ctx, page.paooc) 12663 if err != nil { 12664 return err 12665 } 12666 page.paooc = next 12667 return nil 12668} 12669 12670// Next advances to the next page of values. If there was an error making 12671// the request the page does not advance and the error is returned. 12672// Deprecated: Use NextWithContext() instead. 12673func (page *PremierAddOnOfferCollectionPage) Next() error { 12674 return page.NextWithContext(context.Background()) 12675} 12676 12677// NotDone returns true if the page enumeration should be started or is not yet complete. 12678func (page PremierAddOnOfferCollectionPage) NotDone() bool { 12679 return !page.paooc.IsEmpty() 12680} 12681 12682// Response returns the raw server response from the last page request. 12683func (page PremierAddOnOfferCollectionPage) Response() PremierAddOnOfferCollection { 12684 return page.paooc 12685} 12686 12687// Values returns the slice of values for the current page or nil if there are no values. 12688func (page PremierAddOnOfferCollectionPage) Values() []PremierAddOnOffer { 12689 if page.paooc.IsEmpty() { 12690 return nil 12691 } 12692 return *page.paooc.Value 12693} 12694 12695// Creates a new instance of the PremierAddOnOfferCollectionPage type. 12696func NewPremierAddOnOfferCollectionPage(getNextPage func(context.Context, PremierAddOnOfferCollection) (PremierAddOnOfferCollection, error)) PremierAddOnOfferCollectionPage { 12697 return PremierAddOnOfferCollectionPage{fn: getNextPage} 12698} 12699 12700// PremierAddOnOfferProperties premierAddOnOffer resource specific properties 12701type PremierAddOnOfferProperties struct { 12702 // Sku - Premier add on SKU. 12703 Sku *string `json:"sku,omitempty"` 12704 // Product - Premier add on offer Product. 12705 Product *string `json:"product,omitempty"` 12706 // Vendor - Premier add on offer Vendor. 12707 Vendor *string `json:"vendor,omitempty"` 12708 // Name - Premier add on offer Name. 12709 Name *string `json:"name,omitempty"` 12710 // PromoCodeRequired - <code>true</code> if promotion code is required; otherwise, <code>false</code>. 12711 PromoCodeRequired *bool `json:"promoCodeRequired,omitempty"` 12712 // Quota - Premier add on offer Quota. 12713 Quota *int32 `json:"quota,omitempty"` 12714 // WebHostingPlanRestrictions - App Service plans this offer is restricted to. Possible values include: 'None', 'Free', 'Shared', 'Basic', 'Standard', 'Premium' 12715 WebHostingPlanRestrictions AppServicePlanRestrictions `json:"webHostingPlanRestrictions,omitempty"` 12716 // PrivacyPolicyURL - Privacy policy URL. 12717 PrivacyPolicyURL *string `json:"privacyPolicyUrl,omitempty"` 12718 // LegalTermsURL - Legal terms URL. 12719 LegalTermsURL *string `json:"legalTermsUrl,omitempty"` 12720 // MarketplacePublisher - Marketplace publisher. 12721 MarketplacePublisher *string `json:"marketplacePublisher,omitempty"` 12722 // MarketplaceOffer - Marketplace offer. 12723 MarketplaceOffer *string `json:"marketplaceOffer,omitempty"` 12724} 12725 12726// PremierAddOnProperties premierAddOn resource specific properties 12727type PremierAddOnProperties struct { 12728 // Sku - Premier add on SKU. 12729 Sku *string `json:"sku,omitempty"` 12730 // Product - Premier add on Product. 12731 Product *string `json:"product,omitempty"` 12732 // Vendor - Premier add on Vendor. 12733 Vendor *string `json:"vendor,omitempty"` 12734 // PremierAddOnName - Premier add on Name. 12735 PremierAddOnName *string `json:"name,omitempty"` 12736 // Location - Premier add on Location. 12737 Location *string `json:"location,omitempty"` 12738 // Tags - Premier add on Tags. 12739 Tags map[string]*string `json:"tags"` 12740 // MarketplacePublisher - Premier add on Marketplace publisher. 12741 MarketplacePublisher *string `json:"marketplacePublisher,omitempty"` 12742 // MarketplaceOffer - Premier add on Marketplace offer. 12743 MarketplaceOffer *string `json:"marketplaceOffer,omitempty"` 12744} 12745 12746// MarshalJSON is the custom marshaler for PremierAddOnProperties. 12747func (pao PremierAddOnProperties) MarshalJSON() ([]byte, error) { 12748 objectMap := make(map[string]interface{}) 12749 if pao.Sku != nil { 12750 objectMap["sku"] = pao.Sku 12751 } 12752 if pao.Product != nil { 12753 objectMap["product"] = pao.Product 12754 } 12755 if pao.Vendor != nil { 12756 objectMap["vendor"] = pao.Vendor 12757 } 12758 if pao.PremierAddOnName != nil { 12759 objectMap["name"] = pao.PremierAddOnName 12760 } 12761 if pao.Location != nil { 12762 objectMap["location"] = pao.Location 12763 } 12764 if pao.Tags != nil { 12765 objectMap["tags"] = pao.Tags 12766 } 12767 if pao.MarketplacePublisher != nil { 12768 objectMap["marketplacePublisher"] = pao.MarketplacePublisher 12769 } 12770 if pao.MarketplaceOffer != nil { 12771 objectMap["marketplaceOffer"] = pao.MarketplaceOffer 12772 } 12773 return json.Marshal(objectMap) 12774} 12775 12776// ProcessInfo process Information. 12777type ProcessInfo struct { 12778 autorest.Response `json:"-"` 12779 // ProcessInfoProperties - ProcessInfo resource specific properties 12780 *ProcessInfoProperties `json:"properties,omitempty"` 12781 // ID - READ-ONLY; Resource Id. 12782 ID *string `json:"id,omitempty"` 12783 // Name - READ-ONLY; Resource Name. 12784 Name *string `json:"name,omitempty"` 12785 // Kind - Kind of resource. 12786 Kind *string `json:"kind,omitempty"` 12787 // Type - READ-ONLY; Resource type. 12788 Type *string `json:"type,omitempty"` 12789} 12790 12791// MarshalJSON is the custom marshaler for ProcessInfo. 12792func (pi ProcessInfo) MarshalJSON() ([]byte, error) { 12793 objectMap := make(map[string]interface{}) 12794 if pi.ProcessInfoProperties != nil { 12795 objectMap["properties"] = pi.ProcessInfoProperties 12796 } 12797 if pi.Kind != nil { 12798 objectMap["kind"] = pi.Kind 12799 } 12800 return json.Marshal(objectMap) 12801} 12802 12803// UnmarshalJSON is the custom unmarshaler for ProcessInfo struct. 12804func (pi *ProcessInfo) UnmarshalJSON(body []byte) error { 12805 var m map[string]*json.RawMessage 12806 err := json.Unmarshal(body, &m) 12807 if err != nil { 12808 return err 12809 } 12810 for k, v := range m { 12811 switch k { 12812 case "properties": 12813 if v != nil { 12814 var processInfoProperties ProcessInfoProperties 12815 err = json.Unmarshal(*v, &processInfoProperties) 12816 if err != nil { 12817 return err 12818 } 12819 pi.ProcessInfoProperties = &processInfoProperties 12820 } 12821 case "id": 12822 if v != nil { 12823 var ID string 12824 err = json.Unmarshal(*v, &ID) 12825 if err != nil { 12826 return err 12827 } 12828 pi.ID = &ID 12829 } 12830 case "name": 12831 if v != nil { 12832 var name string 12833 err = json.Unmarshal(*v, &name) 12834 if err != nil { 12835 return err 12836 } 12837 pi.Name = &name 12838 } 12839 case "kind": 12840 if v != nil { 12841 var kind string 12842 err = json.Unmarshal(*v, &kind) 12843 if err != nil { 12844 return err 12845 } 12846 pi.Kind = &kind 12847 } 12848 case "type": 12849 if v != nil { 12850 var typeVar string 12851 err = json.Unmarshal(*v, &typeVar) 12852 if err != nil { 12853 return err 12854 } 12855 pi.Type = &typeVar 12856 } 12857 } 12858 } 12859 12860 return nil 12861} 12862 12863// ProcessInfoCollection collection of Kudu process information elements. 12864type ProcessInfoCollection struct { 12865 autorest.Response `json:"-"` 12866 // Value - Collection of resources. 12867 Value *[]ProcessInfo `json:"value,omitempty"` 12868 // NextLink - READ-ONLY; Link to next page of resources. 12869 NextLink *string `json:"nextLink,omitempty"` 12870} 12871 12872// ProcessInfoCollectionIterator provides access to a complete listing of ProcessInfo values. 12873type ProcessInfoCollectionIterator struct { 12874 i int 12875 page ProcessInfoCollectionPage 12876} 12877 12878// NextWithContext advances to the next value. If there was an error making 12879// the request the iterator does not advance and the error is returned. 12880func (iter *ProcessInfoCollectionIterator) NextWithContext(ctx context.Context) (err error) { 12881 if tracing.IsEnabled() { 12882 ctx = tracing.StartSpan(ctx, fqdn+"/ProcessInfoCollectionIterator.NextWithContext") 12883 defer func() { 12884 sc := -1 12885 if iter.Response().Response.Response != nil { 12886 sc = iter.Response().Response.Response.StatusCode 12887 } 12888 tracing.EndSpan(ctx, sc, err) 12889 }() 12890 } 12891 iter.i++ 12892 if iter.i < len(iter.page.Values()) { 12893 return nil 12894 } 12895 err = iter.page.NextWithContext(ctx) 12896 if err != nil { 12897 iter.i-- 12898 return err 12899 } 12900 iter.i = 0 12901 return nil 12902} 12903 12904// Next advances to the next value. If there was an error making 12905// the request the iterator does not advance and the error is returned. 12906// Deprecated: Use NextWithContext() instead. 12907func (iter *ProcessInfoCollectionIterator) Next() error { 12908 return iter.NextWithContext(context.Background()) 12909} 12910 12911// NotDone returns true if the enumeration should be started or is not yet complete. 12912func (iter ProcessInfoCollectionIterator) NotDone() bool { 12913 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 12914} 12915 12916// Response returns the raw server response from the last page request. 12917func (iter ProcessInfoCollectionIterator) Response() ProcessInfoCollection { 12918 return iter.page.Response() 12919} 12920 12921// Value returns the current value or a zero-initialized value if the 12922// iterator has advanced beyond the end of the collection. 12923func (iter ProcessInfoCollectionIterator) Value() ProcessInfo { 12924 if !iter.page.NotDone() { 12925 return ProcessInfo{} 12926 } 12927 return iter.page.Values()[iter.i] 12928} 12929 12930// Creates a new instance of the ProcessInfoCollectionIterator type. 12931func NewProcessInfoCollectionIterator(page ProcessInfoCollectionPage) ProcessInfoCollectionIterator { 12932 return ProcessInfoCollectionIterator{page: page} 12933} 12934 12935// IsEmpty returns true if the ListResult contains no values. 12936func (pic ProcessInfoCollection) IsEmpty() bool { 12937 return pic.Value == nil || len(*pic.Value) == 0 12938} 12939 12940// processInfoCollectionPreparer prepares a request to retrieve the next set of results. 12941// It returns nil if no more results exist. 12942func (pic ProcessInfoCollection) processInfoCollectionPreparer(ctx context.Context) (*http.Request, error) { 12943 if pic.NextLink == nil || len(to.String(pic.NextLink)) < 1 { 12944 return nil, nil 12945 } 12946 return autorest.Prepare((&http.Request{}).WithContext(ctx), 12947 autorest.AsJSON(), 12948 autorest.AsGet(), 12949 autorest.WithBaseURL(to.String(pic.NextLink))) 12950} 12951 12952// ProcessInfoCollectionPage contains a page of ProcessInfo values. 12953type ProcessInfoCollectionPage struct { 12954 fn func(context.Context, ProcessInfoCollection) (ProcessInfoCollection, error) 12955 pic ProcessInfoCollection 12956} 12957 12958// NextWithContext advances to the next page of values. If there was an error making 12959// the request the page does not advance and the error is returned. 12960func (page *ProcessInfoCollectionPage) NextWithContext(ctx context.Context) (err error) { 12961 if tracing.IsEnabled() { 12962 ctx = tracing.StartSpan(ctx, fqdn+"/ProcessInfoCollectionPage.NextWithContext") 12963 defer func() { 12964 sc := -1 12965 if page.Response().Response.Response != nil { 12966 sc = page.Response().Response.Response.StatusCode 12967 } 12968 tracing.EndSpan(ctx, sc, err) 12969 }() 12970 } 12971 next, err := page.fn(ctx, page.pic) 12972 if err != nil { 12973 return err 12974 } 12975 page.pic = next 12976 return nil 12977} 12978 12979// Next advances to the next page of values. If there was an error making 12980// the request the page does not advance and the error is returned. 12981// Deprecated: Use NextWithContext() instead. 12982func (page *ProcessInfoCollectionPage) Next() error { 12983 return page.NextWithContext(context.Background()) 12984} 12985 12986// NotDone returns true if the page enumeration should be started or is not yet complete. 12987func (page ProcessInfoCollectionPage) NotDone() bool { 12988 return !page.pic.IsEmpty() 12989} 12990 12991// Response returns the raw server response from the last page request. 12992func (page ProcessInfoCollectionPage) Response() ProcessInfoCollection { 12993 return page.pic 12994} 12995 12996// Values returns the slice of values for the current page or nil if there are no values. 12997func (page ProcessInfoCollectionPage) Values() []ProcessInfo { 12998 if page.pic.IsEmpty() { 12999 return nil 13000 } 13001 return *page.pic.Value 13002} 13003 13004// Creates a new instance of the ProcessInfoCollectionPage type. 13005func NewProcessInfoCollectionPage(getNextPage func(context.Context, ProcessInfoCollection) (ProcessInfoCollection, error)) ProcessInfoCollectionPage { 13006 return ProcessInfoCollectionPage{fn: getNextPage} 13007} 13008 13009// ProcessInfoProperties processInfo resource specific properties 13010type ProcessInfoProperties struct { 13011 // ID - ARM Identifier for deployment. 13012 ID *int32 `json:"id,omitempty"` 13013 // Name - Deployment name. 13014 Name *string `json:"name,omitempty"` 13015 // Href - HRef URI. 13016 Href *string `json:"href,omitempty"` 13017 // MiniDump - Minidump URI. 13018 MiniDump *string `json:"miniDump,omitempty"` 13019 // IsProfileRunning - Is profile running? 13020 IsProfileRunning *bool `json:"isProfileRunning,omitempty"` 13021 // IsIisProfileRunning - Is the IIS Profile running? 13022 IsIisProfileRunning *bool `json:"isIisProfileRunning,omitempty"` 13023 // IisProfileTimeoutInSeconds - IIS Profile timeout (seconds). 13024 IisProfileTimeoutInSeconds *float64 `json:"iisProfileTimeoutInSeconds,omitempty"` 13025 // Parent - Parent process. 13026 Parent *string `json:"parent,omitempty"` 13027 // Children - Child process list. 13028 Children *[]string `json:"children,omitempty"` 13029 // Threads - Thread list. 13030 Threads *[]ProcessThreadInfo `json:"threads,omitempty"` 13031 // OpenFileHandles - List of open files. 13032 OpenFileHandles *[]string `json:"openFileHandles,omitempty"` 13033 // Modules - List of modules. 13034 Modules *[]ProcessModuleInfo `json:"modules,omitempty"` 13035 // FileName - File name of this process. 13036 FileName *string `json:"fileName,omitempty"` 13037 // CommandLine - Command line. 13038 CommandLine *string `json:"commandLine,omitempty"` 13039 // UserName - User name. 13040 UserName *string `json:"userName,omitempty"` 13041 // HandleCount - Handle count. 13042 HandleCount *int32 `json:"handleCount,omitempty"` 13043 // ModuleCount - Module count. 13044 ModuleCount *int32 `json:"moduleCount,omitempty"` 13045 // ThreadCount - Thread count. 13046 ThreadCount *int32 `json:"threadCount,omitempty"` 13047 // StartTime - Start time. 13048 StartTime *date.Time `json:"startTime,omitempty"` 13049 // TotalProcessorTime - Total CPU time. 13050 TotalProcessorTime *string `json:"totalProcessorTime,omitempty"` 13051 // UserProcessorTime - User CPU time. 13052 UserProcessorTime *string `json:"userProcessorTime,omitempty"` 13053 // PrivilegedProcessorTime - Privileged CPU time. 13054 PrivilegedProcessorTime *string `json:"privilegedProcessorTime,omitempty"` 13055 // WorkingSet64 - Working set. 13056 WorkingSet64 *int64 `json:"workingSet64,omitempty"` 13057 // PeakWorkingSet64 - Peak working set. 13058 PeakWorkingSet64 *int64 `json:"peakWorkingSet64,omitempty"` 13059 // PrivateMemorySize64 - Private memory size. 13060 PrivateMemorySize64 *int64 `json:"privateMemorySize64,omitempty"` 13061 // VirtualMemorySize64 - Virtual memory size. 13062 VirtualMemorySize64 *int64 `json:"virtualMemorySize64,omitempty"` 13063 // PeakVirtualMemorySize64 - Peak virtual memory usage. 13064 PeakVirtualMemorySize64 *int64 `json:"peakVirtualMemorySize64,omitempty"` 13065 // PagedSystemMemorySize64 - Paged system memory. 13066 PagedSystemMemorySize64 *int64 `json:"pagedSystemMemorySize64,omitempty"` 13067 // NonpagedSystemMemorySize64 - Non-paged system memory. 13068 NonpagedSystemMemorySize64 *int64 `json:"nonpagedSystemMemorySize64,omitempty"` 13069 // PagedMemorySize64 - Paged memory. 13070 PagedMemorySize64 *int64 `json:"pagedMemorySize64,omitempty"` 13071 // PeakPagedMemorySize64 - Peak paged memory. 13072 PeakPagedMemorySize64 *int64 `json:"peakPagedMemorySize64,omitempty"` 13073 // TimeStamp - Time stamp. 13074 TimeStamp *date.Time `json:"timeStamp,omitempty"` 13075 // EnvironmentVariables - List of environment variables. 13076 EnvironmentVariables map[string]*string `json:"environmentVariables"` 13077 // IsScmSite - Is this the SCM site? 13078 IsScmSite *bool `json:"isScmSite,omitempty"` 13079 // IsWebJob - Is this a Web Job? 13080 IsWebJob *bool `json:"isWebJob,omitempty"` 13081 // Description - Description of process. 13082 Description *string `json:"description,omitempty"` 13083} 13084 13085// MarshalJSON is the custom marshaler for ProcessInfoProperties. 13086func (pi ProcessInfoProperties) MarshalJSON() ([]byte, error) { 13087 objectMap := make(map[string]interface{}) 13088 if pi.ID != nil { 13089 objectMap["id"] = pi.ID 13090 } 13091 if pi.Name != nil { 13092 objectMap["name"] = pi.Name 13093 } 13094 if pi.Href != nil { 13095 objectMap["href"] = pi.Href 13096 } 13097 if pi.MiniDump != nil { 13098 objectMap["miniDump"] = pi.MiniDump 13099 } 13100 if pi.IsProfileRunning != nil { 13101 objectMap["isProfileRunning"] = pi.IsProfileRunning 13102 } 13103 if pi.IsIisProfileRunning != nil { 13104 objectMap["isIisProfileRunning"] = pi.IsIisProfileRunning 13105 } 13106 if pi.IisProfileTimeoutInSeconds != nil { 13107 objectMap["iisProfileTimeoutInSeconds"] = pi.IisProfileTimeoutInSeconds 13108 } 13109 if pi.Parent != nil { 13110 objectMap["parent"] = pi.Parent 13111 } 13112 if pi.Children != nil { 13113 objectMap["children"] = pi.Children 13114 } 13115 if pi.Threads != nil { 13116 objectMap["threads"] = pi.Threads 13117 } 13118 if pi.OpenFileHandles != nil { 13119 objectMap["openFileHandles"] = pi.OpenFileHandles 13120 } 13121 if pi.Modules != nil { 13122 objectMap["modules"] = pi.Modules 13123 } 13124 if pi.FileName != nil { 13125 objectMap["fileName"] = pi.FileName 13126 } 13127 if pi.CommandLine != nil { 13128 objectMap["commandLine"] = pi.CommandLine 13129 } 13130 if pi.UserName != nil { 13131 objectMap["userName"] = pi.UserName 13132 } 13133 if pi.HandleCount != nil { 13134 objectMap["handleCount"] = pi.HandleCount 13135 } 13136 if pi.ModuleCount != nil { 13137 objectMap["moduleCount"] = pi.ModuleCount 13138 } 13139 if pi.ThreadCount != nil { 13140 objectMap["threadCount"] = pi.ThreadCount 13141 } 13142 if pi.StartTime != nil { 13143 objectMap["startTime"] = pi.StartTime 13144 } 13145 if pi.TotalProcessorTime != nil { 13146 objectMap["totalProcessorTime"] = pi.TotalProcessorTime 13147 } 13148 if pi.UserProcessorTime != nil { 13149 objectMap["userProcessorTime"] = pi.UserProcessorTime 13150 } 13151 if pi.PrivilegedProcessorTime != nil { 13152 objectMap["privilegedProcessorTime"] = pi.PrivilegedProcessorTime 13153 } 13154 if pi.WorkingSet64 != nil { 13155 objectMap["workingSet64"] = pi.WorkingSet64 13156 } 13157 if pi.PeakWorkingSet64 != nil { 13158 objectMap["peakWorkingSet64"] = pi.PeakWorkingSet64 13159 } 13160 if pi.PrivateMemorySize64 != nil { 13161 objectMap["privateMemorySize64"] = pi.PrivateMemorySize64 13162 } 13163 if pi.VirtualMemorySize64 != nil { 13164 objectMap["virtualMemorySize64"] = pi.VirtualMemorySize64 13165 } 13166 if pi.PeakVirtualMemorySize64 != nil { 13167 objectMap["peakVirtualMemorySize64"] = pi.PeakVirtualMemorySize64 13168 } 13169 if pi.PagedSystemMemorySize64 != nil { 13170 objectMap["pagedSystemMemorySize64"] = pi.PagedSystemMemorySize64 13171 } 13172 if pi.NonpagedSystemMemorySize64 != nil { 13173 objectMap["nonpagedSystemMemorySize64"] = pi.NonpagedSystemMemorySize64 13174 } 13175 if pi.PagedMemorySize64 != nil { 13176 objectMap["pagedMemorySize64"] = pi.PagedMemorySize64 13177 } 13178 if pi.PeakPagedMemorySize64 != nil { 13179 objectMap["peakPagedMemorySize64"] = pi.PeakPagedMemorySize64 13180 } 13181 if pi.TimeStamp != nil { 13182 objectMap["timeStamp"] = pi.TimeStamp 13183 } 13184 if pi.EnvironmentVariables != nil { 13185 objectMap["environmentVariables"] = pi.EnvironmentVariables 13186 } 13187 if pi.IsScmSite != nil { 13188 objectMap["isScmSite"] = pi.IsScmSite 13189 } 13190 if pi.IsWebJob != nil { 13191 objectMap["isWebJob"] = pi.IsWebJob 13192 } 13193 if pi.Description != nil { 13194 objectMap["description"] = pi.Description 13195 } 13196 return json.Marshal(objectMap) 13197} 13198 13199// ProcessModuleInfo process Module Information. 13200type ProcessModuleInfo struct { 13201 autorest.Response `json:"-"` 13202 // ProcessModuleInfoProperties - ProcessModuleInfo resource specific properties 13203 *ProcessModuleInfoProperties `json:"properties,omitempty"` 13204 // ID - READ-ONLY; Resource Id. 13205 ID *string `json:"id,omitempty"` 13206 // Name - READ-ONLY; Resource Name. 13207 Name *string `json:"name,omitempty"` 13208 // Kind - Kind of resource. 13209 Kind *string `json:"kind,omitempty"` 13210 // Type - READ-ONLY; Resource type. 13211 Type *string `json:"type,omitempty"` 13212} 13213 13214// MarshalJSON is the custom marshaler for ProcessModuleInfo. 13215func (pmi ProcessModuleInfo) MarshalJSON() ([]byte, error) { 13216 objectMap := make(map[string]interface{}) 13217 if pmi.ProcessModuleInfoProperties != nil { 13218 objectMap["properties"] = pmi.ProcessModuleInfoProperties 13219 } 13220 if pmi.Kind != nil { 13221 objectMap["kind"] = pmi.Kind 13222 } 13223 return json.Marshal(objectMap) 13224} 13225 13226// UnmarshalJSON is the custom unmarshaler for ProcessModuleInfo struct. 13227func (pmi *ProcessModuleInfo) UnmarshalJSON(body []byte) error { 13228 var m map[string]*json.RawMessage 13229 err := json.Unmarshal(body, &m) 13230 if err != nil { 13231 return err 13232 } 13233 for k, v := range m { 13234 switch k { 13235 case "properties": 13236 if v != nil { 13237 var processModuleInfoProperties ProcessModuleInfoProperties 13238 err = json.Unmarshal(*v, &processModuleInfoProperties) 13239 if err != nil { 13240 return err 13241 } 13242 pmi.ProcessModuleInfoProperties = &processModuleInfoProperties 13243 } 13244 case "id": 13245 if v != nil { 13246 var ID string 13247 err = json.Unmarshal(*v, &ID) 13248 if err != nil { 13249 return err 13250 } 13251 pmi.ID = &ID 13252 } 13253 case "name": 13254 if v != nil { 13255 var name string 13256 err = json.Unmarshal(*v, &name) 13257 if err != nil { 13258 return err 13259 } 13260 pmi.Name = &name 13261 } 13262 case "kind": 13263 if v != nil { 13264 var kind string 13265 err = json.Unmarshal(*v, &kind) 13266 if err != nil { 13267 return err 13268 } 13269 pmi.Kind = &kind 13270 } 13271 case "type": 13272 if v != nil { 13273 var typeVar string 13274 err = json.Unmarshal(*v, &typeVar) 13275 if err != nil { 13276 return err 13277 } 13278 pmi.Type = &typeVar 13279 } 13280 } 13281 } 13282 13283 return nil 13284} 13285 13286// ProcessModuleInfoCollection collection of Kudu thread information elements. 13287type ProcessModuleInfoCollection struct { 13288 autorest.Response `json:"-"` 13289 // Value - Collection of resources. 13290 Value *[]ProcessModuleInfo `json:"value,omitempty"` 13291 // NextLink - READ-ONLY; Link to next page of resources. 13292 NextLink *string `json:"nextLink,omitempty"` 13293} 13294 13295// ProcessModuleInfoCollectionIterator provides access to a complete listing of ProcessModuleInfo values. 13296type ProcessModuleInfoCollectionIterator struct { 13297 i int 13298 page ProcessModuleInfoCollectionPage 13299} 13300 13301// NextWithContext advances to the next value. If there was an error making 13302// the request the iterator does not advance and the error is returned. 13303func (iter *ProcessModuleInfoCollectionIterator) NextWithContext(ctx context.Context) (err error) { 13304 if tracing.IsEnabled() { 13305 ctx = tracing.StartSpan(ctx, fqdn+"/ProcessModuleInfoCollectionIterator.NextWithContext") 13306 defer func() { 13307 sc := -1 13308 if iter.Response().Response.Response != nil { 13309 sc = iter.Response().Response.Response.StatusCode 13310 } 13311 tracing.EndSpan(ctx, sc, err) 13312 }() 13313 } 13314 iter.i++ 13315 if iter.i < len(iter.page.Values()) { 13316 return nil 13317 } 13318 err = iter.page.NextWithContext(ctx) 13319 if err != nil { 13320 iter.i-- 13321 return err 13322 } 13323 iter.i = 0 13324 return nil 13325} 13326 13327// Next advances to the next value. If there was an error making 13328// the request the iterator does not advance and the error is returned. 13329// Deprecated: Use NextWithContext() instead. 13330func (iter *ProcessModuleInfoCollectionIterator) Next() error { 13331 return iter.NextWithContext(context.Background()) 13332} 13333 13334// NotDone returns true if the enumeration should be started or is not yet complete. 13335func (iter ProcessModuleInfoCollectionIterator) NotDone() bool { 13336 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 13337} 13338 13339// Response returns the raw server response from the last page request. 13340func (iter ProcessModuleInfoCollectionIterator) Response() ProcessModuleInfoCollection { 13341 return iter.page.Response() 13342} 13343 13344// Value returns the current value or a zero-initialized value if the 13345// iterator has advanced beyond the end of the collection. 13346func (iter ProcessModuleInfoCollectionIterator) Value() ProcessModuleInfo { 13347 if !iter.page.NotDone() { 13348 return ProcessModuleInfo{} 13349 } 13350 return iter.page.Values()[iter.i] 13351} 13352 13353// Creates a new instance of the ProcessModuleInfoCollectionIterator type. 13354func NewProcessModuleInfoCollectionIterator(page ProcessModuleInfoCollectionPage) ProcessModuleInfoCollectionIterator { 13355 return ProcessModuleInfoCollectionIterator{page: page} 13356} 13357 13358// IsEmpty returns true if the ListResult contains no values. 13359func (pmic ProcessModuleInfoCollection) IsEmpty() bool { 13360 return pmic.Value == nil || len(*pmic.Value) == 0 13361} 13362 13363// processModuleInfoCollectionPreparer prepares a request to retrieve the next set of results. 13364// It returns nil if no more results exist. 13365func (pmic ProcessModuleInfoCollection) processModuleInfoCollectionPreparer(ctx context.Context) (*http.Request, error) { 13366 if pmic.NextLink == nil || len(to.String(pmic.NextLink)) < 1 { 13367 return nil, nil 13368 } 13369 return autorest.Prepare((&http.Request{}).WithContext(ctx), 13370 autorest.AsJSON(), 13371 autorest.AsGet(), 13372 autorest.WithBaseURL(to.String(pmic.NextLink))) 13373} 13374 13375// ProcessModuleInfoCollectionPage contains a page of ProcessModuleInfo values. 13376type ProcessModuleInfoCollectionPage struct { 13377 fn func(context.Context, ProcessModuleInfoCollection) (ProcessModuleInfoCollection, error) 13378 pmic ProcessModuleInfoCollection 13379} 13380 13381// NextWithContext advances to the next page of values. If there was an error making 13382// the request the page does not advance and the error is returned. 13383func (page *ProcessModuleInfoCollectionPage) NextWithContext(ctx context.Context) (err error) { 13384 if tracing.IsEnabled() { 13385 ctx = tracing.StartSpan(ctx, fqdn+"/ProcessModuleInfoCollectionPage.NextWithContext") 13386 defer func() { 13387 sc := -1 13388 if page.Response().Response.Response != nil { 13389 sc = page.Response().Response.Response.StatusCode 13390 } 13391 tracing.EndSpan(ctx, sc, err) 13392 }() 13393 } 13394 next, err := page.fn(ctx, page.pmic) 13395 if err != nil { 13396 return err 13397 } 13398 page.pmic = next 13399 return nil 13400} 13401 13402// Next advances to the next page of values. If there was an error making 13403// the request the page does not advance and the error is returned. 13404// Deprecated: Use NextWithContext() instead. 13405func (page *ProcessModuleInfoCollectionPage) Next() error { 13406 return page.NextWithContext(context.Background()) 13407} 13408 13409// NotDone returns true if the page enumeration should be started or is not yet complete. 13410func (page ProcessModuleInfoCollectionPage) NotDone() bool { 13411 return !page.pmic.IsEmpty() 13412} 13413 13414// Response returns the raw server response from the last page request. 13415func (page ProcessModuleInfoCollectionPage) Response() ProcessModuleInfoCollection { 13416 return page.pmic 13417} 13418 13419// Values returns the slice of values for the current page or nil if there are no values. 13420func (page ProcessModuleInfoCollectionPage) Values() []ProcessModuleInfo { 13421 if page.pmic.IsEmpty() { 13422 return nil 13423 } 13424 return *page.pmic.Value 13425} 13426 13427// Creates a new instance of the ProcessModuleInfoCollectionPage type. 13428func NewProcessModuleInfoCollectionPage(getNextPage func(context.Context, ProcessModuleInfoCollection) (ProcessModuleInfoCollection, error)) ProcessModuleInfoCollectionPage { 13429 return ProcessModuleInfoCollectionPage{fn: getNextPage} 13430} 13431 13432// ProcessModuleInfoProperties processModuleInfo resource specific properties 13433type ProcessModuleInfoProperties struct { 13434 // BaseAddress - Base address. Used as module identifier in ARM resource URI. 13435 BaseAddress *string `json:"baseAddress,omitempty"` 13436 // FileName - File name. 13437 FileName *string `json:"fileName,omitempty"` 13438 // Href - HRef URI. 13439 Href *string `json:"href,omitempty"` 13440 // FilePath - File path. 13441 FilePath *string `json:"filePath,omitempty"` 13442 // ModuleMemorySize - Module memory size. 13443 ModuleMemorySize *int32 `json:"moduleMemorySize,omitempty"` 13444 // FileVersion - File version. 13445 FileVersion *string `json:"fileVersion,omitempty"` 13446 // FileDescription - File description. 13447 FileDescription *string `json:"fileDescription,omitempty"` 13448 // Product - Product name. 13449 Product *string `json:"product,omitempty"` 13450 // ProductVersion - Product version. 13451 ProductVersion *string `json:"productVersion,omitempty"` 13452 // IsDebug - Is debug? 13453 IsDebug *bool `json:"isDebug,omitempty"` 13454 // Language - Module language (locale). 13455 Language *string `json:"language,omitempty"` 13456} 13457 13458// ProcessThreadInfo process Thread Information. 13459type ProcessThreadInfo struct { 13460 autorest.Response `json:"-"` 13461 // ProcessThreadInfoProperties - ProcessThreadInfo resource specific properties 13462 *ProcessThreadInfoProperties `json:"properties,omitempty"` 13463 // ID - READ-ONLY; Resource Id. 13464 ID *string `json:"id,omitempty"` 13465 // Name - READ-ONLY; Resource Name. 13466 Name *string `json:"name,omitempty"` 13467 // Kind - Kind of resource. 13468 Kind *string `json:"kind,omitempty"` 13469 // Type - READ-ONLY; Resource type. 13470 Type *string `json:"type,omitempty"` 13471} 13472 13473// MarshalJSON is the custom marshaler for ProcessThreadInfo. 13474func (pti ProcessThreadInfo) MarshalJSON() ([]byte, error) { 13475 objectMap := make(map[string]interface{}) 13476 if pti.ProcessThreadInfoProperties != nil { 13477 objectMap["properties"] = pti.ProcessThreadInfoProperties 13478 } 13479 if pti.Kind != nil { 13480 objectMap["kind"] = pti.Kind 13481 } 13482 return json.Marshal(objectMap) 13483} 13484 13485// UnmarshalJSON is the custom unmarshaler for ProcessThreadInfo struct. 13486func (pti *ProcessThreadInfo) UnmarshalJSON(body []byte) error { 13487 var m map[string]*json.RawMessage 13488 err := json.Unmarshal(body, &m) 13489 if err != nil { 13490 return err 13491 } 13492 for k, v := range m { 13493 switch k { 13494 case "properties": 13495 if v != nil { 13496 var processThreadInfoProperties ProcessThreadInfoProperties 13497 err = json.Unmarshal(*v, &processThreadInfoProperties) 13498 if err != nil { 13499 return err 13500 } 13501 pti.ProcessThreadInfoProperties = &processThreadInfoProperties 13502 } 13503 case "id": 13504 if v != nil { 13505 var ID string 13506 err = json.Unmarshal(*v, &ID) 13507 if err != nil { 13508 return err 13509 } 13510 pti.ID = &ID 13511 } 13512 case "name": 13513 if v != nil { 13514 var name string 13515 err = json.Unmarshal(*v, &name) 13516 if err != nil { 13517 return err 13518 } 13519 pti.Name = &name 13520 } 13521 case "kind": 13522 if v != nil { 13523 var kind string 13524 err = json.Unmarshal(*v, &kind) 13525 if err != nil { 13526 return err 13527 } 13528 pti.Kind = &kind 13529 } 13530 case "type": 13531 if v != nil { 13532 var typeVar string 13533 err = json.Unmarshal(*v, &typeVar) 13534 if err != nil { 13535 return err 13536 } 13537 pti.Type = &typeVar 13538 } 13539 } 13540 } 13541 13542 return nil 13543} 13544 13545// ProcessThreadInfoCollection collection of Kudu thread information elements. 13546type ProcessThreadInfoCollection struct { 13547 autorest.Response `json:"-"` 13548 // Value - Collection of resources. 13549 Value *[]ProcessThreadInfo `json:"value,omitempty"` 13550 // NextLink - READ-ONLY; Link to next page of resources. 13551 NextLink *string `json:"nextLink,omitempty"` 13552} 13553 13554// ProcessThreadInfoCollectionIterator provides access to a complete listing of ProcessThreadInfo values. 13555type ProcessThreadInfoCollectionIterator struct { 13556 i int 13557 page ProcessThreadInfoCollectionPage 13558} 13559 13560// NextWithContext advances to the next value. If there was an error making 13561// the request the iterator does not advance and the error is returned. 13562func (iter *ProcessThreadInfoCollectionIterator) NextWithContext(ctx context.Context) (err error) { 13563 if tracing.IsEnabled() { 13564 ctx = tracing.StartSpan(ctx, fqdn+"/ProcessThreadInfoCollectionIterator.NextWithContext") 13565 defer func() { 13566 sc := -1 13567 if iter.Response().Response.Response != nil { 13568 sc = iter.Response().Response.Response.StatusCode 13569 } 13570 tracing.EndSpan(ctx, sc, err) 13571 }() 13572 } 13573 iter.i++ 13574 if iter.i < len(iter.page.Values()) { 13575 return nil 13576 } 13577 err = iter.page.NextWithContext(ctx) 13578 if err != nil { 13579 iter.i-- 13580 return err 13581 } 13582 iter.i = 0 13583 return nil 13584} 13585 13586// Next advances to the next value. If there was an error making 13587// the request the iterator does not advance and the error is returned. 13588// Deprecated: Use NextWithContext() instead. 13589func (iter *ProcessThreadInfoCollectionIterator) Next() error { 13590 return iter.NextWithContext(context.Background()) 13591} 13592 13593// NotDone returns true if the enumeration should be started or is not yet complete. 13594func (iter ProcessThreadInfoCollectionIterator) NotDone() bool { 13595 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 13596} 13597 13598// Response returns the raw server response from the last page request. 13599func (iter ProcessThreadInfoCollectionIterator) Response() ProcessThreadInfoCollection { 13600 return iter.page.Response() 13601} 13602 13603// Value returns the current value or a zero-initialized value if the 13604// iterator has advanced beyond the end of the collection. 13605func (iter ProcessThreadInfoCollectionIterator) Value() ProcessThreadInfo { 13606 if !iter.page.NotDone() { 13607 return ProcessThreadInfo{} 13608 } 13609 return iter.page.Values()[iter.i] 13610} 13611 13612// Creates a new instance of the ProcessThreadInfoCollectionIterator type. 13613func NewProcessThreadInfoCollectionIterator(page ProcessThreadInfoCollectionPage) ProcessThreadInfoCollectionIterator { 13614 return ProcessThreadInfoCollectionIterator{page: page} 13615} 13616 13617// IsEmpty returns true if the ListResult contains no values. 13618func (ptic ProcessThreadInfoCollection) IsEmpty() bool { 13619 return ptic.Value == nil || len(*ptic.Value) == 0 13620} 13621 13622// processThreadInfoCollectionPreparer prepares a request to retrieve the next set of results. 13623// It returns nil if no more results exist. 13624func (ptic ProcessThreadInfoCollection) processThreadInfoCollectionPreparer(ctx context.Context) (*http.Request, error) { 13625 if ptic.NextLink == nil || len(to.String(ptic.NextLink)) < 1 { 13626 return nil, nil 13627 } 13628 return autorest.Prepare((&http.Request{}).WithContext(ctx), 13629 autorest.AsJSON(), 13630 autorest.AsGet(), 13631 autorest.WithBaseURL(to.String(ptic.NextLink))) 13632} 13633 13634// ProcessThreadInfoCollectionPage contains a page of ProcessThreadInfo values. 13635type ProcessThreadInfoCollectionPage struct { 13636 fn func(context.Context, ProcessThreadInfoCollection) (ProcessThreadInfoCollection, error) 13637 ptic ProcessThreadInfoCollection 13638} 13639 13640// NextWithContext advances to the next page of values. If there was an error making 13641// the request the page does not advance and the error is returned. 13642func (page *ProcessThreadInfoCollectionPage) NextWithContext(ctx context.Context) (err error) { 13643 if tracing.IsEnabled() { 13644 ctx = tracing.StartSpan(ctx, fqdn+"/ProcessThreadInfoCollectionPage.NextWithContext") 13645 defer func() { 13646 sc := -1 13647 if page.Response().Response.Response != nil { 13648 sc = page.Response().Response.Response.StatusCode 13649 } 13650 tracing.EndSpan(ctx, sc, err) 13651 }() 13652 } 13653 next, err := page.fn(ctx, page.ptic) 13654 if err != nil { 13655 return err 13656 } 13657 page.ptic = next 13658 return nil 13659} 13660 13661// Next advances to the next page of values. If there was an error making 13662// the request the page does not advance and the error is returned. 13663// Deprecated: Use NextWithContext() instead. 13664func (page *ProcessThreadInfoCollectionPage) Next() error { 13665 return page.NextWithContext(context.Background()) 13666} 13667 13668// NotDone returns true if the page enumeration should be started or is not yet complete. 13669func (page ProcessThreadInfoCollectionPage) NotDone() bool { 13670 return !page.ptic.IsEmpty() 13671} 13672 13673// Response returns the raw server response from the last page request. 13674func (page ProcessThreadInfoCollectionPage) Response() ProcessThreadInfoCollection { 13675 return page.ptic 13676} 13677 13678// Values returns the slice of values for the current page or nil if there are no values. 13679func (page ProcessThreadInfoCollectionPage) Values() []ProcessThreadInfo { 13680 if page.ptic.IsEmpty() { 13681 return nil 13682 } 13683 return *page.ptic.Value 13684} 13685 13686// Creates a new instance of the ProcessThreadInfoCollectionPage type. 13687func NewProcessThreadInfoCollectionPage(getNextPage func(context.Context, ProcessThreadInfoCollection) (ProcessThreadInfoCollection, error)) ProcessThreadInfoCollectionPage { 13688 return ProcessThreadInfoCollectionPage{fn: getNextPage} 13689} 13690 13691// ProcessThreadInfoProperties processThreadInfo resource specific properties 13692type ProcessThreadInfoProperties struct { 13693 // ID - ARM Identifier for deployment. 13694 ID *int32 `json:"id,omitempty"` 13695 // Href - HRef URI. 13696 Href *string `json:"href,omitempty"` 13697 // Process - Process URI. 13698 Process *string `json:"process,omitempty"` 13699 // StartAddress - Start address. 13700 StartAddress *string `json:"startAddress,omitempty"` 13701 // CurrentPriority - Current thread priority. 13702 CurrentPriority *int32 `json:"currentPriority,omitempty"` 13703 // PriorityLevel - Thread priority level. 13704 PriorityLevel *string `json:"priorityLevel,omitempty"` 13705 // BasePriority - Base priority. 13706 BasePriority *int32 `json:"basePriority,omitempty"` 13707 // StartTime - Start time. 13708 StartTime *date.Time `json:"startTime,omitempty"` 13709 // TotalProcessorTime - Total processor time. 13710 TotalProcessorTime *string `json:"totalProcessorTime,omitempty"` 13711 // UserProcessorTime - User processor time. 13712 UserProcessorTime *string `json:"userProcessorTime,omitempty"` 13713 // PriviledgedProcessorTime - Privileged processor time. 13714 PriviledgedProcessorTime *string `json:"priviledgedProcessorTime,omitempty"` 13715 // State - Thread state. 13716 State *string `json:"state,omitempty"` 13717 // WaitReason - Wait reason. 13718 WaitReason *string `json:"waitReason,omitempty"` 13719} 13720 13721// ProxyOnlyResource azure proxy only resource. This resource is not tracked by Azure Resource Manager. 13722type ProxyOnlyResource struct { 13723 // ID - READ-ONLY; Resource Id. 13724 ID *string `json:"id,omitempty"` 13725 // Name - READ-ONLY; Resource Name. 13726 Name *string `json:"name,omitempty"` 13727 // Kind - Kind of resource. 13728 Kind *string `json:"kind,omitempty"` 13729 // Type - READ-ONLY; Resource type. 13730 Type *string `json:"type,omitempty"` 13731} 13732 13733// PublicCertificate public certificate object 13734type PublicCertificate struct { 13735 autorest.Response `json:"-"` 13736 // PublicCertificateProperties - PublicCertificate resource specific properties 13737 *PublicCertificateProperties `json:"properties,omitempty"` 13738 // ID - READ-ONLY; Resource Id. 13739 ID *string `json:"id,omitempty"` 13740 // Name - READ-ONLY; Resource Name. 13741 Name *string `json:"name,omitempty"` 13742 // Kind - Kind of resource. 13743 Kind *string `json:"kind,omitempty"` 13744 // Type - READ-ONLY; Resource type. 13745 Type *string `json:"type,omitempty"` 13746} 13747 13748// MarshalJSON is the custom marshaler for PublicCertificate. 13749func (pc PublicCertificate) MarshalJSON() ([]byte, error) { 13750 objectMap := make(map[string]interface{}) 13751 if pc.PublicCertificateProperties != nil { 13752 objectMap["properties"] = pc.PublicCertificateProperties 13753 } 13754 if pc.Kind != nil { 13755 objectMap["kind"] = pc.Kind 13756 } 13757 return json.Marshal(objectMap) 13758} 13759 13760// UnmarshalJSON is the custom unmarshaler for PublicCertificate struct. 13761func (pc *PublicCertificate) UnmarshalJSON(body []byte) error { 13762 var m map[string]*json.RawMessage 13763 err := json.Unmarshal(body, &m) 13764 if err != nil { 13765 return err 13766 } 13767 for k, v := range m { 13768 switch k { 13769 case "properties": 13770 if v != nil { 13771 var publicCertificateProperties PublicCertificateProperties 13772 err = json.Unmarshal(*v, &publicCertificateProperties) 13773 if err != nil { 13774 return err 13775 } 13776 pc.PublicCertificateProperties = &publicCertificateProperties 13777 } 13778 case "id": 13779 if v != nil { 13780 var ID string 13781 err = json.Unmarshal(*v, &ID) 13782 if err != nil { 13783 return err 13784 } 13785 pc.ID = &ID 13786 } 13787 case "name": 13788 if v != nil { 13789 var name string 13790 err = json.Unmarshal(*v, &name) 13791 if err != nil { 13792 return err 13793 } 13794 pc.Name = &name 13795 } 13796 case "kind": 13797 if v != nil { 13798 var kind string 13799 err = json.Unmarshal(*v, &kind) 13800 if err != nil { 13801 return err 13802 } 13803 pc.Kind = &kind 13804 } 13805 case "type": 13806 if v != nil { 13807 var typeVar string 13808 err = json.Unmarshal(*v, &typeVar) 13809 if err != nil { 13810 return err 13811 } 13812 pc.Type = &typeVar 13813 } 13814 } 13815 } 13816 13817 return nil 13818} 13819 13820// PublicCertificateCollection collection of public certificates 13821type PublicCertificateCollection struct { 13822 autorest.Response `json:"-"` 13823 // Value - Collection of resources. 13824 Value *[]PublicCertificate `json:"value,omitempty"` 13825 // NextLink - READ-ONLY; Link to next page of resources. 13826 NextLink *string `json:"nextLink,omitempty"` 13827} 13828 13829// PublicCertificateCollectionIterator provides access to a complete listing of PublicCertificate values. 13830type PublicCertificateCollectionIterator struct { 13831 i int 13832 page PublicCertificateCollectionPage 13833} 13834 13835// NextWithContext advances to the next value. If there was an error making 13836// the request the iterator does not advance and the error is returned. 13837func (iter *PublicCertificateCollectionIterator) NextWithContext(ctx context.Context) (err error) { 13838 if tracing.IsEnabled() { 13839 ctx = tracing.StartSpan(ctx, fqdn+"/PublicCertificateCollectionIterator.NextWithContext") 13840 defer func() { 13841 sc := -1 13842 if iter.Response().Response.Response != nil { 13843 sc = iter.Response().Response.Response.StatusCode 13844 } 13845 tracing.EndSpan(ctx, sc, err) 13846 }() 13847 } 13848 iter.i++ 13849 if iter.i < len(iter.page.Values()) { 13850 return nil 13851 } 13852 err = iter.page.NextWithContext(ctx) 13853 if err != nil { 13854 iter.i-- 13855 return err 13856 } 13857 iter.i = 0 13858 return nil 13859} 13860 13861// Next advances to the next value. If there was an error making 13862// the request the iterator does not advance and the error is returned. 13863// Deprecated: Use NextWithContext() instead. 13864func (iter *PublicCertificateCollectionIterator) Next() error { 13865 return iter.NextWithContext(context.Background()) 13866} 13867 13868// NotDone returns true if the enumeration should be started or is not yet complete. 13869func (iter PublicCertificateCollectionIterator) NotDone() bool { 13870 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 13871} 13872 13873// Response returns the raw server response from the last page request. 13874func (iter PublicCertificateCollectionIterator) Response() PublicCertificateCollection { 13875 return iter.page.Response() 13876} 13877 13878// Value returns the current value or a zero-initialized value if the 13879// iterator has advanced beyond the end of the collection. 13880func (iter PublicCertificateCollectionIterator) Value() PublicCertificate { 13881 if !iter.page.NotDone() { 13882 return PublicCertificate{} 13883 } 13884 return iter.page.Values()[iter.i] 13885} 13886 13887// Creates a new instance of the PublicCertificateCollectionIterator type. 13888func NewPublicCertificateCollectionIterator(page PublicCertificateCollectionPage) PublicCertificateCollectionIterator { 13889 return PublicCertificateCollectionIterator{page: page} 13890} 13891 13892// IsEmpty returns true if the ListResult contains no values. 13893func (pcc PublicCertificateCollection) IsEmpty() bool { 13894 return pcc.Value == nil || len(*pcc.Value) == 0 13895} 13896 13897// publicCertificateCollectionPreparer prepares a request to retrieve the next set of results. 13898// It returns nil if no more results exist. 13899func (pcc PublicCertificateCollection) publicCertificateCollectionPreparer(ctx context.Context) (*http.Request, error) { 13900 if pcc.NextLink == nil || len(to.String(pcc.NextLink)) < 1 { 13901 return nil, nil 13902 } 13903 return autorest.Prepare((&http.Request{}).WithContext(ctx), 13904 autorest.AsJSON(), 13905 autorest.AsGet(), 13906 autorest.WithBaseURL(to.String(pcc.NextLink))) 13907} 13908 13909// PublicCertificateCollectionPage contains a page of PublicCertificate values. 13910type PublicCertificateCollectionPage struct { 13911 fn func(context.Context, PublicCertificateCollection) (PublicCertificateCollection, error) 13912 pcc PublicCertificateCollection 13913} 13914 13915// NextWithContext advances to the next page of values. If there was an error making 13916// the request the page does not advance and the error is returned. 13917func (page *PublicCertificateCollectionPage) NextWithContext(ctx context.Context) (err error) { 13918 if tracing.IsEnabled() { 13919 ctx = tracing.StartSpan(ctx, fqdn+"/PublicCertificateCollectionPage.NextWithContext") 13920 defer func() { 13921 sc := -1 13922 if page.Response().Response.Response != nil { 13923 sc = page.Response().Response.Response.StatusCode 13924 } 13925 tracing.EndSpan(ctx, sc, err) 13926 }() 13927 } 13928 next, err := page.fn(ctx, page.pcc) 13929 if err != nil { 13930 return err 13931 } 13932 page.pcc = next 13933 return nil 13934} 13935 13936// Next advances to the next page of values. If there was an error making 13937// the request the page does not advance and the error is returned. 13938// Deprecated: Use NextWithContext() instead. 13939func (page *PublicCertificateCollectionPage) Next() error { 13940 return page.NextWithContext(context.Background()) 13941} 13942 13943// NotDone returns true if the page enumeration should be started or is not yet complete. 13944func (page PublicCertificateCollectionPage) NotDone() bool { 13945 return !page.pcc.IsEmpty() 13946} 13947 13948// Response returns the raw server response from the last page request. 13949func (page PublicCertificateCollectionPage) Response() PublicCertificateCollection { 13950 return page.pcc 13951} 13952 13953// Values returns the slice of values for the current page or nil if there are no values. 13954func (page PublicCertificateCollectionPage) Values() []PublicCertificate { 13955 if page.pcc.IsEmpty() { 13956 return nil 13957 } 13958 return *page.pcc.Value 13959} 13960 13961// Creates a new instance of the PublicCertificateCollectionPage type. 13962func NewPublicCertificateCollectionPage(getNextPage func(context.Context, PublicCertificateCollection) (PublicCertificateCollection, error)) PublicCertificateCollectionPage { 13963 return PublicCertificateCollectionPage{fn: getNextPage} 13964} 13965 13966// PublicCertificateProperties publicCertificate resource specific properties 13967type PublicCertificateProperties struct { 13968 // Blob - Public Certificate byte array 13969 Blob *[]byte `json:"blob,omitempty"` 13970 // PublicCertificateLocation - Public Certificate Location. Possible values include: 'PublicCertificateLocationCurrentUserMy', 'PublicCertificateLocationLocalMachineMy', 'PublicCertificateLocationUnknown' 13971 PublicCertificateLocation PublicCertificateLocation `json:"publicCertificateLocation,omitempty"` 13972 // Thumbprint - READ-ONLY; Certificate Thumbprint 13973 Thumbprint *string `json:"thumbprint,omitempty"` 13974} 13975 13976// PushSettings push settings for the App. 13977type PushSettings struct { 13978 autorest.Response `json:"-"` 13979 // PushSettingsProperties - PushSettings resource specific properties 13980 *PushSettingsProperties `json:"properties,omitempty"` 13981 // ID - READ-ONLY; Resource Id. 13982 ID *string `json:"id,omitempty"` 13983 // Name - READ-ONLY; Resource Name. 13984 Name *string `json:"name,omitempty"` 13985 // Kind - Kind of resource. 13986 Kind *string `json:"kind,omitempty"` 13987 // Type - READ-ONLY; Resource type. 13988 Type *string `json:"type,omitempty"` 13989} 13990 13991// MarshalJSON is the custom marshaler for PushSettings. 13992func (ps PushSettings) MarshalJSON() ([]byte, error) { 13993 objectMap := make(map[string]interface{}) 13994 if ps.PushSettingsProperties != nil { 13995 objectMap["properties"] = ps.PushSettingsProperties 13996 } 13997 if ps.Kind != nil { 13998 objectMap["kind"] = ps.Kind 13999 } 14000 return json.Marshal(objectMap) 14001} 14002 14003// UnmarshalJSON is the custom unmarshaler for PushSettings struct. 14004func (ps *PushSettings) UnmarshalJSON(body []byte) error { 14005 var m map[string]*json.RawMessage 14006 err := json.Unmarshal(body, &m) 14007 if err != nil { 14008 return err 14009 } 14010 for k, v := range m { 14011 switch k { 14012 case "properties": 14013 if v != nil { 14014 var pushSettingsProperties PushSettingsProperties 14015 err = json.Unmarshal(*v, &pushSettingsProperties) 14016 if err != nil { 14017 return err 14018 } 14019 ps.PushSettingsProperties = &pushSettingsProperties 14020 } 14021 case "id": 14022 if v != nil { 14023 var ID string 14024 err = json.Unmarshal(*v, &ID) 14025 if err != nil { 14026 return err 14027 } 14028 ps.ID = &ID 14029 } 14030 case "name": 14031 if v != nil { 14032 var name string 14033 err = json.Unmarshal(*v, &name) 14034 if err != nil { 14035 return err 14036 } 14037 ps.Name = &name 14038 } 14039 case "kind": 14040 if v != nil { 14041 var kind string 14042 err = json.Unmarshal(*v, &kind) 14043 if err != nil { 14044 return err 14045 } 14046 ps.Kind = &kind 14047 } 14048 case "type": 14049 if v != nil { 14050 var typeVar string 14051 err = json.Unmarshal(*v, &typeVar) 14052 if err != nil { 14053 return err 14054 } 14055 ps.Type = &typeVar 14056 } 14057 } 14058 } 14059 14060 return nil 14061} 14062 14063// PushSettingsProperties pushSettings resource specific properties 14064type PushSettingsProperties struct { 14065 // IsPushEnabled - Gets or sets a flag indicating whether the Push endpoint is enabled. 14066 IsPushEnabled *bool `json:"isPushEnabled,omitempty"` 14067 // TagWhitelistJSON - Gets or sets a JSON string containing a list of tags that are whitelisted for use by the push registration endpoint. 14068 TagWhitelistJSON *string `json:"tagWhitelistJson,omitempty"` 14069 // TagsRequiringAuth - Gets or sets a JSON string containing a list of tags that require user authentication to be used in the push registration endpoint. 14070 // Tags can consist of alphanumeric characters and the following: 14071 // '_', '@', '#', '.', ':', '-'. 14072 // Validation should be performed at the PushRequestHandler. 14073 TagsRequiringAuth *string `json:"tagsRequiringAuth,omitempty"` 14074 // DynamicTagsJSON - Gets or sets a JSON string containing a list of dynamic tags that will be evaluated from user claims in the push registration endpoint. 14075 DynamicTagsJSON *string `json:"dynamicTagsJson,omitempty"` 14076} 14077 14078// RampUpRule routing rules for ramp up testing. This rule allows to redirect static traffic % to a slot or 14079// to gradually change routing % based on performance. 14080type RampUpRule struct { 14081 // ActionHostName - Hostname of a slot to which the traffic will be redirected if decided to. E.g. myapp-stage.azurewebsites.net. 14082 ActionHostName *string `json:"actionHostName,omitempty"` 14083 // ReroutePercentage - Percentage of the traffic which will be redirected to <code>ActionHostName</code>. 14084 ReroutePercentage *float64 `json:"reroutePercentage,omitempty"` 14085 // ChangeStep - In auto ramp up scenario this is the step to add/remove from <code>ReroutePercentage</code> until it reaches 14086 // <code>MinReroutePercentage</code> or <code>MaxReroutePercentage</code>. Site metrics are checked every N minutes specified in <code>ChangeIntervalInMinutes</code>. 14087 // Custom decision algorithm can be provided in TiPCallback site extension which URL can be specified in <code>ChangeDecisionCallbackUrl</code>. 14088 ChangeStep *float64 `json:"changeStep,omitempty"` 14089 // ChangeIntervalInMinutes - Specifies interval in minutes to reevaluate ReroutePercentage. 14090 ChangeIntervalInMinutes *int32 `json:"changeIntervalInMinutes,omitempty"` 14091 // MinReroutePercentage - Specifies lower boundary above which ReroutePercentage will stay. 14092 MinReroutePercentage *float64 `json:"minReroutePercentage,omitempty"` 14093 // MaxReroutePercentage - Specifies upper boundary below which ReroutePercentage will stay. 14094 MaxReroutePercentage *float64 `json:"maxReroutePercentage,omitempty"` 14095 // ChangeDecisionCallbackURL - Custom decision algorithm can be provided in TiPCallback site extension which URL can be specified. See TiPCallback site extension for the scaffold and contracts. 14096 // https://www.siteextensions.net/packages/TiPCallback/ 14097 ChangeDecisionCallbackURL *string `json:"changeDecisionCallbackUrl,omitempty"` 14098 // Name - Name of the routing rule. The recommended name would be to point to the slot which will receive the traffic in the experiment. 14099 Name *string `json:"name,omitempty"` 14100} 14101 14102// ReadCloser ... 14103type ReadCloser struct { 14104 autorest.Response `json:"-"` 14105 Value *io.ReadCloser `json:"value,omitempty"` 14106} 14107 14108// Recommendation represents a recommendation result generated by the recommendation engine. 14109type Recommendation struct { 14110 // RecommendationProperties - Recommendation resource specific properties 14111 *RecommendationProperties `json:"properties,omitempty"` 14112 // ID - READ-ONLY; Resource Id. 14113 ID *string `json:"id,omitempty"` 14114 // Name - READ-ONLY; Resource Name. 14115 Name *string `json:"name,omitempty"` 14116 // Kind - Kind of resource. 14117 Kind *string `json:"kind,omitempty"` 14118 // Type - READ-ONLY; Resource type. 14119 Type *string `json:"type,omitempty"` 14120} 14121 14122// MarshalJSON is the custom marshaler for Recommendation. 14123func (r Recommendation) MarshalJSON() ([]byte, error) { 14124 objectMap := make(map[string]interface{}) 14125 if r.RecommendationProperties != nil { 14126 objectMap["properties"] = r.RecommendationProperties 14127 } 14128 if r.Kind != nil { 14129 objectMap["kind"] = r.Kind 14130 } 14131 return json.Marshal(objectMap) 14132} 14133 14134// UnmarshalJSON is the custom unmarshaler for Recommendation struct. 14135func (r *Recommendation) UnmarshalJSON(body []byte) error { 14136 var m map[string]*json.RawMessage 14137 err := json.Unmarshal(body, &m) 14138 if err != nil { 14139 return err 14140 } 14141 for k, v := range m { 14142 switch k { 14143 case "properties": 14144 if v != nil { 14145 var recommendationProperties RecommendationProperties 14146 err = json.Unmarshal(*v, &recommendationProperties) 14147 if err != nil { 14148 return err 14149 } 14150 r.RecommendationProperties = &recommendationProperties 14151 } 14152 case "id": 14153 if v != nil { 14154 var ID string 14155 err = json.Unmarshal(*v, &ID) 14156 if err != nil { 14157 return err 14158 } 14159 r.ID = &ID 14160 } 14161 case "name": 14162 if v != nil { 14163 var name string 14164 err = json.Unmarshal(*v, &name) 14165 if err != nil { 14166 return err 14167 } 14168 r.Name = &name 14169 } 14170 case "kind": 14171 if v != nil { 14172 var kind string 14173 err = json.Unmarshal(*v, &kind) 14174 if err != nil { 14175 return err 14176 } 14177 r.Kind = &kind 14178 } 14179 case "type": 14180 if v != nil { 14181 var typeVar string 14182 err = json.Unmarshal(*v, &typeVar) 14183 if err != nil { 14184 return err 14185 } 14186 r.Type = &typeVar 14187 } 14188 } 14189 } 14190 14191 return nil 14192} 14193 14194// RecommendationCollection collection of recommendations. 14195type RecommendationCollection struct { 14196 autorest.Response `json:"-"` 14197 // Value - Collection of resources. 14198 Value *[]Recommendation `json:"value,omitempty"` 14199 // NextLink - READ-ONLY; Link to next page of resources. 14200 NextLink *string `json:"nextLink,omitempty"` 14201} 14202 14203// RecommendationCollectionIterator provides access to a complete listing of Recommendation values. 14204type RecommendationCollectionIterator struct { 14205 i int 14206 page RecommendationCollectionPage 14207} 14208 14209// NextWithContext advances to the next value. If there was an error making 14210// the request the iterator does not advance and the error is returned. 14211func (iter *RecommendationCollectionIterator) NextWithContext(ctx context.Context) (err error) { 14212 if tracing.IsEnabled() { 14213 ctx = tracing.StartSpan(ctx, fqdn+"/RecommendationCollectionIterator.NextWithContext") 14214 defer func() { 14215 sc := -1 14216 if iter.Response().Response.Response != nil { 14217 sc = iter.Response().Response.Response.StatusCode 14218 } 14219 tracing.EndSpan(ctx, sc, err) 14220 }() 14221 } 14222 iter.i++ 14223 if iter.i < len(iter.page.Values()) { 14224 return nil 14225 } 14226 err = iter.page.NextWithContext(ctx) 14227 if err != nil { 14228 iter.i-- 14229 return err 14230 } 14231 iter.i = 0 14232 return nil 14233} 14234 14235// Next advances to the next value. If there was an error making 14236// the request the iterator does not advance and the error is returned. 14237// Deprecated: Use NextWithContext() instead. 14238func (iter *RecommendationCollectionIterator) Next() error { 14239 return iter.NextWithContext(context.Background()) 14240} 14241 14242// NotDone returns true if the enumeration should be started or is not yet complete. 14243func (iter RecommendationCollectionIterator) NotDone() bool { 14244 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 14245} 14246 14247// Response returns the raw server response from the last page request. 14248func (iter RecommendationCollectionIterator) Response() RecommendationCollection { 14249 return iter.page.Response() 14250} 14251 14252// Value returns the current value or a zero-initialized value if the 14253// iterator has advanced beyond the end of the collection. 14254func (iter RecommendationCollectionIterator) Value() Recommendation { 14255 if !iter.page.NotDone() { 14256 return Recommendation{} 14257 } 14258 return iter.page.Values()[iter.i] 14259} 14260 14261// Creates a new instance of the RecommendationCollectionIterator type. 14262func NewRecommendationCollectionIterator(page RecommendationCollectionPage) RecommendationCollectionIterator { 14263 return RecommendationCollectionIterator{page: page} 14264} 14265 14266// IsEmpty returns true if the ListResult contains no values. 14267func (rc RecommendationCollection) IsEmpty() bool { 14268 return rc.Value == nil || len(*rc.Value) == 0 14269} 14270 14271// recommendationCollectionPreparer prepares a request to retrieve the next set of results. 14272// It returns nil if no more results exist. 14273func (rc RecommendationCollection) recommendationCollectionPreparer(ctx context.Context) (*http.Request, error) { 14274 if rc.NextLink == nil || len(to.String(rc.NextLink)) < 1 { 14275 return nil, nil 14276 } 14277 return autorest.Prepare((&http.Request{}).WithContext(ctx), 14278 autorest.AsJSON(), 14279 autorest.AsGet(), 14280 autorest.WithBaseURL(to.String(rc.NextLink))) 14281} 14282 14283// RecommendationCollectionPage contains a page of Recommendation values. 14284type RecommendationCollectionPage struct { 14285 fn func(context.Context, RecommendationCollection) (RecommendationCollection, error) 14286 rc RecommendationCollection 14287} 14288 14289// NextWithContext advances to the next page of values. If there was an error making 14290// the request the page does not advance and the error is returned. 14291func (page *RecommendationCollectionPage) NextWithContext(ctx context.Context) (err error) { 14292 if tracing.IsEnabled() { 14293 ctx = tracing.StartSpan(ctx, fqdn+"/RecommendationCollectionPage.NextWithContext") 14294 defer func() { 14295 sc := -1 14296 if page.Response().Response.Response != nil { 14297 sc = page.Response().Response.Response.StatusCode 14298 } 14299 tracing.EndSpan(ctx, sc, err) 14300 }() 14301 } 14302 next, err := page.fn(ctx, page.rc) 14303 if err != nil { 14304 return err 14305 } 14306 page.rc = next 14307 return nil 14308} 14309 14310// Next advances to the next page of values. If there was an error making 14311// the request the page does not advance and the error is returned. 14312// Deprecated: Use NextWithContext() instead. 14313func (page *RecommendationCollectionPage) Next() error { 14314 return page.NextWithContext(context.Background()) 14315} 14316 14317// NotDone returns true if the page enumeration should be started or is not yet complete. 14318func (page RecommendationCollectionPage) NotDone() bool { 14319 return !page.rc.IsEmpty() 14320} 14321 14322// Response returns the raw server response from the last page request. 14323func (page RecommendationCollectionPage) Response() RecommendationCollection { 14324 return page.rc 14325} 14326 14327// Values returns the slice of values for the current page or nil if there are no values. 14328func (page RecommendationCollectionPage) Values() []Recommendation { 14329 if page.rc.IsEmpty() { 14330 return nil 14331 } 14332 return *page.rc.Value 14333} 14334 14335// Creates a new instance of the RecommendationCollectionPage type. 14336func NewRecommendationCollectionPage(getNextPage func(context.Context, RecommendationCollection) (RecommendationCollection, error)) RecommendationCollectionPage { 14337 return RecommendationCollectionPage{fn: getNextPage} 14338} 14339 14340// RecommendationProperties recommendation resource specific properties 14341type RecommendationProperties struct { 14342 // CreationTime - Timestamp when this instance was created. 14343 CreationTime *date.Time `json:"creationTime,omitempty"` 14344 // RecommendationID - A GUID value that each recommendation object is associated with. 14345 RecommendationID *uuid.UUID `json:"recommendationId,omitempty"` 14346 // ResourceID - Full ARM resource ID string that this recommendation object is associated with. 14347 ResourceID *string `json:"resourceId,omitempty"` 14348 // ResourceScope - Name of a resource type this recommendation applies, e.g. Subscription, ServerFarm, Site. Possible values include: 'ServerFarm', 'Subscription', 'WebSite' 14349 ResourceScope ResourceScopeType `json:"resourceScope,omitempty"` 14350 // RuleName - Unique name of the rule. 14351 RuleName *string `json:"ruleName,omitempty"` 14352 // DisplayName - UI friendly name of the rule (may not be unique). 14353 DisplayName *string `json:"displayName,omitempty"` 14354 // Message - Recommendation text. 14355 Message *string `json:"message,omitempty"` 14356 // Level - Level indicating how critical this recommendation can impact. Possible values include: 'NotificationLevelCritical', 'NotificationLevelWarning', 'NotificationLevelInformation', 'NotificationLevelNonUrgentSuggestion' 14357 Level NotificationLevel `json:"level,omitempty"` 14358 // Channels - List of channels that this recommendation can apply. Possible values include: 'Notification', 'API', 'Email', 'Webhook', 'All' 14359 Channels Channels `json:"channels,omitempty"` 14360 // Tags - The list of category tags that this recommendation belongs to. 14361 Tags *[]string `json:"tags,omitempty"` 14362 // ActionName - Name of action recommended by this object. 14363 ActionName *string `json:"actionName,omitempty"` 14364 // StartTime - The beginning time in UTC of a range that the recommendation refers to. 14365 StartTime *date.Time `json:"startTime,omitempty"` 14366 // EndTime - The end time in UTC of a range that the recommendation refers to. 14367 EndTime *date.Time `json:"endTime,omitempty"` 14368 // NextNotificationTime - When to notify this recommendation next in UTC. Null means that this will never be notified anymore. 14369 NextNotificationTime *date.Time `json:"nextNotificationTime,omitempty"` 14370 // NotificationExpirationTime - Date and time in UTC when this notification expires. 14371 NotificationExpirationTime *date.Time `json:"notificationExpirationTime,omitempty"` 14372 // NotifiedTime - Last timestamp in UTC this instance was actually notified. Null means that this recommendation hasn't been notified yet. 14373 NotifiedTime *date.Time `json:"notifiedTime,omitempty"` 14374 // Score - A metric value measured by the rule. 14375 Score *float64 `json:"score,omitempty"` 14376 // IsDynamic - True if this is associated with a dynamically added rule 14377 IsDynamic *bool `json:"isDynamic,omitempty"` 14378 // ExtensionName - Extension name of the portal if exists. 14379 ExtensionName *string `json:"extensionName,omitempty"` 14380 // BladeName - Deep link to a blade on the portal. 14381 BladeName *string `json:"bladeName,omitempty"` 14382 // ForwardLink - Forward link to an external document associated with the rule. 14383 ForwardLink *string `json:"forwardLink,omitempty"` 14384} 14385 14386// RecommendationRule represents a recommendation rule that the recommendation engine can perform. 14387type RecommendationRule struct { 14388 autorest.Response `json:"-"` 14389 // RecommendationRuleProperties - RecommendationRule resource specific properties 14390 *RecommendationRuleProperties `json:"properties,omitempty"` 14391 // ID - READ-ONLY; Resource Id. 14392 ID *string `json:"id,omitempty"` 14393 // Name - READ-ONLY; Resource Name. 14394 Name *string `json:"name,omitempty"` 14395 // Kind - Kind of resource. 14396 Kind *string `json:"kind,omitempty"` 14397 // Type - READ-ONLY; Resource type. 14398 Type *string `json:"type,omitempty"` 14399} 14400 14401// MarshalJSON is the custom marshaler for RecommendationRule. 14402func (rr RecommendationRule) MarshalJSON() ([]byte, error) { 14403 objectMap := make(map[string]interface{}) 14404 if rr.RecommendationRuleProperties != nil { 14405 objectMap["properties"] = rr.RecommendationRuleProperties 14406 } 14407 if rr.Kind != nil { 14408 objectMap["kind"] = rr.Kind 14409 } 14410 return json.Marshal(objectMap) 14411} 14412 14413// UnmarshalJSON is the custom unmarshaler for RecommendationRule struct. 14414func (rr *RecommendationRule) UnmarshalJSON(body []byte) error { 14415 var m map[string]*json.RawMessage 14416 err := json.Unmarshal(body, &m) 14417 if err != nil { 14418 return err 14419 } 14420 for k, v := range m { 14421 switch k { 14422 case "properties": 14423 if v != nil { 14424 var recommendationRuleProperties RecommendationRuleProperties 14425 err = json.Unmarshal(*v, &recommendationRuleProperties) 14426 if err != nil { 14427 return err 14428 } 14429 rr.RecommendationRuleProperties = &recommendationRuleProperties 14430 } 14431 case "id": 14432 if v != nil { 14433 var ID string 14434 err = json.Unmarshal(*v, &ID) 14435 if err != nil { 14436 return err 14437 } 14438 rr.ID = &ID 14439 } 14440 case "name": 14441 if v != nil { 14442 var name string 14443 err = json.Unmarshal(*v, &name) 14444 if err != nil { 14445 return err 14446 } 14447 rr.Name = &name 14448 } 14449 case "kind": 14450 if v != nil { 14451 var kind string 14452 err = json.Unmarshal(*v, &kind) 14453 if err != nil { 14454 return err 14455 } 14456 rr.Kind = &kind 14457 } 14458 case "type": 14459 if v != nil { 14460 var typeVar string 14461 err = json.Unmarshal(*v, &typeVar) 14462 if err != nil { 14463 return err 14464 } 14465 rr.Type = &typeVar 14466 } 14467 } 14468 } 14469 14470 return nil 14471} 14472 14473// RecommendationRuleProperties recommendationRule resource specific properties 14474type RecommendationRuleProperties struct { 14475 // Name - Unique name of the rule. 14476 Name *string `json:"name,omitempty"` 14477 // DisplayName - UI friendly name of the rule. 14478 DisplayName *string `json:"displayName,omitempty"` 14479 // Message - Localized name of the rule (Good for UI). 14480 Message *string `json:"message,omitempty"` 14481 // RecommendationID - Recommendation ID of an associated recommendation object tied to the rule, if exists. 14482 // If such an object doesn't exist, it is set to null. 14483 RecommendationID *uuid.UUID `json:"recommendationId,omitempty"` 14484 // Description - Localized detailed description of the rule. 14485 Description *string `json:"description,omitempty"` 14486 // ActionName - Name of action that is recommended by this rule in string. 14487 ActionName *string `json:"actionName,omitempty"` 14488 // Level - Level of impact indicating how critical this rule is. Possible values include: 'NotificationLevelCritical', 'NotificationLevelWarning', 'NotificationLevelInformation', 'NotificationLevelNonUrgentSuggestion' 14489 Level NotificationLevel `json:"level,omitempty"` 14490 // Channels - List of available channels that this rule applies. Possible values include: 'Notification', 'API', 'Email', 'Webhook', 'All' 14491 Channels Channels `json:"channels,omitempty"` 14492 // Tags - An array of category tags that the rule contains. 14493 Tags *[]string `json:"tags,omitempty"` 14494 // IsDynamic - True if this is associated with a dynamically added rule 14495 IsDynamic *bool `json:"isDynamic,omitempty"` 14496 // ExtensionName - Extension name of the portal if exists. Applicable to dynamic rule only. 14497 ExtensionName *string `json:"extensionName,omitempty"` 14498 // BladeName - Deep link to a blade on the portal. Applicable to dynamic rule only. 14499 BladeName *string `json:"bladeName,omitempty"` 14500 // ForwardLink - Forward link to an external document associated with the rule. Applicable to dynamic rule only. 14501 ForwardLink *string `json:"forwardLink,omitempty"` 14502} 14503 14504// ReissueCertificateOrderRequest class representing certificate reissue request. 14505type ReissueCertificateOrderRequest struct { 14506 // ReissueCertificateOrderRequestProperties - ReissueCertificateOrderRequest resource specific properties 14507 *ReissueCertificateOrderRequestProperties `json:"properties,omitempty"` 14508 // ID - READ-ONLY; Resource Id. 14509 ID *string `json:"id,omitempty"` 14510 // Name - READ-ONLY; Resource Name. 14511 Name *string `json:"name,omitempty"` 14512 // Kind - Kind of resource. 14513 Kind *string `json:"kind,omitempty"` 14514 // Type - READ-ONLY; Resource type. 14515 Type *string `json:"type,omitempty"` 14516} 14517 14518// MarshalJSON is the custom marshaler for ReissueCertificateOrderRequest. 14519func (rcor ReissueCertificateOrderRequest) MarshalJSON() ([]byte, error) { 14520 objectMap := make(map[string]interface{}) 14521 if rcor.ReissueCertificateOrderRequestProperties != nil { 14522 objectMap["properties"] = rcor.ReissueCertificateOrderRequestProperties 14523 } 14524 if rcor.Kind != nil { 14525 objectMap["kind"] = rcor.Kind 14526 } 14527 return json.Marshal(objectMap) 14528} 14529 14530// UnmarshalJSON is the custom unmarshaler for ReissueCertificateOrderRequest struct. 14531func (rcor *ReissueCertificateOrderRequest) UnmarshalJSON(body []byte) error { 14532 var m map[string]*json.RawMessage 14533 err := json.Unmarshal(body, &m) 14534 if err != nil { 14535 return err 14536 } 14537 for k, v := range m { 14538 switch k { 14539 case "properties": 14540 if v != nil { 14541 var reissueCertificateOrderRequestProperties ReissueCertificateOrderRequestProperties 14542 err = json.Unmarshal(*v, &reissueCertificateOrderRequestProperties) 14543 if err != nil { 14544 return err 14545 } 14546 rcor.ReissueCertificateOrderRequestProperties = &reissueCertificateOrderRequestProperties 14547 } 14548 case "id": 14549 if v != nil { 14550 var ID string 14551 err = json.Unmarshal(*v, &ID) 14552 if err != nil { 14553 return err 14554 } 14555 rcor.ID = &ID 14556 } 14557 case "name": 14558 if v != nil { 14559 var name string 14560 err = json.Unmarshal(*v, &name) 14561 if err != nil { 14562 return err 14563 } 14564 rcor.Name = &name 14565 } 14566 case "kind": 14567 if v != nil { 14568 var kind string 14569 err = json.Unmarshal(*v, &kind) 14570 if err != nil { 14571 return err 14572 } 14573 rcor.Kind = &kind 14574 } 14575 case "type": 14576 if v != nil { 14577 var typeVar string 14578 err = json.Unmarshal(*v, &typeVar) 14579 if err != nil { 14580 return err 14581 } 14582 rcor.Type = &typeVar 14583 } 14584 } 14585 } 14586 14587 return nil 14588} 14589 14590// ReissueCertificateOrderRequestProperties reissueCertificateOrderRequest resource specific properties 14591type ReissueCertificateOrderRequestProperties struct { 14592 // KeySize - Certificate Key Size. 14593 KeySize *int32 `json:"keySize,omitempty"` 14594 // DelayExistingRevokeInHours - Delay in hours to revoke existing certificate after the new certificate is issued. 14595 DelayExistingRevokeInHours *int32 `json:"delayExistingRevokeInHours,omitempty"` 14596 // Csr - Csr to be used for re-key operation. 14597 Csr *string `json:"csr,omitempty"` 14598 // IsPrivateKeyExternal - Should we change the ASC type (from managed private key to external private key and vice versa). 14599 IsPrivateKeyExternal *bool `json:"isPrivateKeyExternal,omitempty"` 14600} 14601 14602// RelayServiceConnectionEntity hybrid Connection for an App Service app. 14603type RelayServiceConnectionEntity struct { 14604 autorest.Response `json:"-"` 14605 // RelayServiceConnectionEntityProperties - RelayServiceConnectionEntity resource specific properties 14606 *RelayServiceConnectionEntityProperties `json:"properties,omitempty"` 14607 // ID - READ-ONLY; Resource Id. 14608 ID *string `json:"id,omitempty"` 14609 // Name - READ-ONLY; Resource Name. 14610 Name *string `json:"name,omitempty"` 14611 // Kind - Kind of resource. 14612 Kind *string `json:"kind,omitempty"` 14613 // Type - READ-ONLY; Resource type. 14614 Type *string `json:"type,omitempty"` 14615} 14616 14617// MarshalJSON is the custom marshaler for RelayServiceConnectionEntity. 14618func (rsce RelayServiceConnectionEntity) MarshalJSON() ([]byte, error) { 14619 objectMap := make(map[string]interface{}) 14620 if rsce.RelayServiceConnectionEntityProperties != nil { 14621 objectMap["properties"] = rsce.RelayServiceConnectionEntityProperties 14622 } 14623 if rsce.Kind != nil { 14624 objectMap["kind"] = rsce.Kind 14625 } 14626 return json.Marshal(objectMap) 14627} 14628 14629// UnmarshalJSON is the custom unmarshaler for RelayServiceConnectionEntity struct. 14630func (rsce *RelayServiceConnectionEntity) UnmarshalJSON(body []byte) error { 14631 var m map[string]*json.RawMessage 14632 err := json.Unmarshal(body, &m) 14633 if err != nil { 14634 return err 14635 } 14636 for k, v := range m { 14637 switch k { 14638 case "properties": 14639 if v != nil { 14640 var relayServiceConnectionEntityProperties RelayServiceConnectionEntityProperties 14641 err = json.Unmarshal(*v, &relayServiceConnectionEntityProperties) 14642 if err != nil { 14643 return err 14644 } 14645 rsce.RelayServiceConnectionEntityProperties = &relayServiceConnectionEntityProperties 14646 } 14647 case "id": 14648 if v != nil { 14649 var ID string 14650 err = json.Unmarshal(*v, &ID) 14651 if err != nil { 14652 return err 14653 } 14654 rsce.ID = &ID 14655 } 14656 case "name": 14657 if v != nil { 14658 var name string 14659 err = json.Unmarshal(*v, &name) 14660 if err != nil { 14661 return err 14662 } 14663 rsce.Name = &name 14664 } 14665 case "kind": 14666 if v != nil { 14667 var kind string 14668 err = json.Unmarshal(*v, &kind) 14669 if err != nil { 14670 return err 14671 } 14672 rsce.Kind = &kind 14673 } 14674 case "type": 14675 if v != nil { 14676 var typeVar string 14677 err = json.Unmarshal(*v, &typeVar) 14678 if err != nil { 14679 return err 14680 } 14681 rsce.Type = &typeVar 14682 } 14683 } 14684 } 14685 14686 return nil 14687} 14688 14689// RelayServiceConnectionEntityProperties relayServiceConnectionEntity resource specific properties 14690type RelayServiceConnectionEntityProperties struct { 14691 EntityName *string `json:"entityName,omitempty"` 14692 EntityConnectionString *string `json:"entityConnectionString,omitempty"` 14693 ResourceType *string `json:"resourceType,omitempty"` 14694 ResourceConnectionString *string `json:"resourceConnectionString,omitempty"` 14695 Hostname *string `json:"hostname,omitempty"` 14696 Port *int32 `json:"port,omitempty"` 14697 BiztalkURI *string `json:"biztalkUri,omitempty"` 14698} 14699 14700// Rendering instructions for rendering the data 14701type Rendering struct { 14702 // RenderingType - Rendering Type. Possible values include: 'NoGraph', 'Table', 'TimeSeries', 'TimeSeriesPerInstance' 14703 RenderingType RenderingType `json:"renderingType,omitempty"` 14704 // Title - Title of data 14705 Title *string `json:"title,omitempty"` 14706 // Description - Description of the data that will help it be interpreted 14707 Description *string `json:"description,omitempty"` 14708} 14709 14710// RenewCertificateOrderRequest class representing certificate renew request. 14711type RenewCertificateOrderRequest struct { 14712 // RenewCertificateOrderRequestProperties - RenewCertificateOrderRequest resource specific properties 14713 *RenewCertificateOrderRequestProperties `json:"properties,omitempty"` 14714 // ID - READ-ONLY; Resource Id. 14715 ID *string `json:"id,omitempty"` 14716 // Name - READ-ONLY; Resource Name. 14717 Name *string `json:"name,omitempty"` 14718 // Kind - Kind of resource. 14719 Kind *string `json:"kind,omitempty"` 14720 // Type - READ-ONLY; Resource type. 14721 Type *string `json:"type,omitempty"` 14722} 14723 14724// MarshalJSON is the custom marshaler for RenewCertificateOrderRequest. 14725func (rcor RenewCertificateOrderRequest) MarshalJSON() ([]byte, error) { 14726 objectMap := make(map[string]interface{}) 14727 if rcor.RenewCertificateOrderRequestProperties != nil { 14728 objectMap["properties"] = rcor.RenewCertificateOrderRequestProperties 14729 } 14730 if rcor.Kind != nil { 14731 objectMap["kind"] = rcor.Kind 14732 } 14733 return json.Marshal(objectMap) 14734} 14735 14736// UnmarshalJSON is the custom unmarshaler for RenewCertificateOrderRequest struct. 14737func (rcor *RenewCertificateOrderRequest) UnmarshalJSON(body []byte) error { 14738 var m map[string]*json.RawMessage 14739 err := json.Unmarshal(body, &m) 14740 if err != nil { 14741 return err 14742 } 14743 for k, v := range m { 14744 switch k { 14745 case "properties": 14746 if v != nil { 14747 var renewCertificateOrderRequestProperties RenewCertificateOrderRequestProperties 14748 err = json.Unmarshal(*v, &renewCertificateOrderRequestProperties) 14749 if err != nil { 14750 return err 14751 } 14752 rcor.RenewCertificateOrderRequestProperties = &renewCertificateOrderRequestProperties 14753 } 14754 case "id": 14755 if v != nil { 14756 var ID string 14757 err = json.Unmarshal(*v, &ID) 14758 if err != nil { 14759 return err 14760 } 14761 rcor.ID = &ID 14762 } 14763 case "name": 14764 if v != nil { 14765 var name string 14766 err = json.Unmarshal(*v, &name) 14767 if err != nil { 14768 return err 14769 } 14770 rcor.Name = &name 14771 } 14772 case "kind": 14773 if v != nil { 14774 var kind string 14775 err = json.Unmarshal(*v, &kind) 14776 if err != nil { 14777 return err 14778 } 14779 rcor.Kind = &kind 14780 } 14781 case "type": 14782 if v != nil { 14783 var typeVar string 14784 err = json.Unmarshal(*v, &typeVar) 14785 if err != nil { 14786 return err 14787 } 14788 rcor.Type = &typeVar 14789 } 14790 } 14791 } 14792 14793 return nil 14794} 14795 14796// RenewCertificateOrderRequestProperties renewCertificateOrderRequest resource specific properties 14797type RenewCertificateOrderRequestProperties struct { 14798 // KeySize - Certificate Key Size. 14799 KeySize *int32 `json:"keySize,omitempty"` 14800 // Csr - Csr to be used for re-key operation. 14801 Csr *string `json:"csr,omitempty"` 14802 // IsPrivateKeyExternal - Should we change the ASC type (from managed private key to external private key and vice versa). 14803 IsPrivateKeyExternal *bool `json:"isPrivateKeyExternal,omitempty"` 14804} 14805 14806// RequestsBasedTrigger trigger based on total requests. 14807type RequestsBasedTrigger struct { 14808 // Count - Request Count. 14809 Count *int32 `json:"count,omitempty"` 14810 // TimeInterval - Time interval. 14811 TimeInterval *string `json:"timeInterval,omitempty"` 14812} 14813 14814// Resource azure resource. This resource is tracked in Azure Resource Manager 14815type Resource struct { 14816 // ID - READ-ONLY; Resource Id. 14817 ID *string `json:"id,omitempty"` 14818 // Name - READ-ONLY; Resource Name. 14819 Name *string `json:"name,omitempty"` 14820 // Kind - Kind of resource. 14821 Kind *string `json:"kind,omitempty"` 14822 // Location - Resource Location. 14823 Location *string `json:"location,omitempty"` 14824 // Type - READ-ONLY; Resource type. 14825 Type *string `json:"type,omitempty"` 14826 // Tags - Resource tags. 14827 Tags map[string]*string `json:"tags"` 14828} 14829 14830// MarshalJSON is the custom marshaler for Resource. 14831func (r Resource) MarshalJSON() ([]byte, error) { 14832 objectMap := make(map[string]interface{}) 14833 if r.Kind != nil { 14834 objectMap["kind"] = r.Kind 14835 } 14836 if r.Location != nil { 14837 objectMap["location"] = r.Location 14838 } 14839 if r.Tags != nil { 14840 objectMap["tags"] = r.Tags 14841 } 14842 return json.Marshal(objectMap) 14843} 14844 14845// ResourceCollection collection of resources. 14846type ResourceCollection struct { 14847 autorest.Response `json:"-"` 14848 // Value - Collection of resources. 14849 Value *[]string `json:"value,omitempty"` 14850 // NextLink - READ-ONLY; Link to next page of resources. 14851 NextLink *string `json:"nextLink,omitempty"` 14852} 14853 14854// ResourceCollectionIterator provides access to a complete listing of string values. 14855type ResourceCollectionIterator struct { 14856 i int 14857 page ResourceCollectionPage 14858} 14859 14860// NextWithContext advances to the next value. If there was an error making 14861// the request the iterator does not advance and the error is returned. 14862func (iter *ResourceCollectionIterator) NextWithContext(ctx context.Context) (err error) { 14863 if tracing.IsEnabled() { 14864 ctx = tracing.StartSpan(ctx, fqdn+"/ResourceCollectionIterator.NextWithContext") 14865 defer func() { 14866 sc := -1 14867 if iter.Response().Response.Response != nil { 14868 sc = iter.Response().Response.Response.StatusCode 14869 } 14870 tracing.EndSpan(ctx, sc, err) 14871 }() 14872 } 14873 iter.i++ 14874 if iter.i < len(iter.page.Values()) { 14875 return nil 14876 } 14877 err = iter.page.NextWithContext(ctx) 14878 if err != nil { 14879 iter.i-- 14880 return err 14881 } 14882 iter.i = 0 14883 return nil 14884} 14885 14886// Next advances to the next value. If there was an error making 14887// the request the iterator does not advance and the error is returned. 14888// Deprecated: Use NextWithContext() instead. 14889func (iter *ResourceCollectionIterator) Next() error { 14890 return iter.NextWithContext(context.Background()) 14891} 14892 14893// NotDone returns true if the enumeration should be started or is not yet complete. 14894func (iter ResourceCollectionIterator) NotDone() bool { 14895 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 14896} 14897 14898// Response returns the raw server response from the last page request. 14899func (iter ResourceCollectionIterator) Response() ResourceCollection { 14900 return iter.page.Response() 14901} 14902 14903// Value returns the current value or a zero-initialized value if the 14904// iterator has advanced beyond the end of the collection. 14905func (iter ResourceCollectionIterator) Value() string { 14906 if !iter.page.NotDone() { 14907 return "" 14908 } 14909 return iter.page.Values()[iter.i] 14910} 14911 14912// Creates a new instance of the ResourceCollectionIterator type. 14913func NewResourceCollectionIterator(page ResourceCollectionPage) ResourceCollectionIterator { 14914 return ResourceCollectionIterator{page: page} 14915} 14916 14917// IsEmpty returns true if the ListResult contains no values. 14918func (rc ResourceCollection) IsEmpty() bool { 14919 return rc.Value == nil || len(*rc.Value) == 0 14920} 14921 14922// resourceCollectionPreparer prepares a request to retrieve the next set of results. 14923// It returns nil if no more results exist. 14924func (rc ResourceCollection) resourceCollectionPreparer(ctx context.Context) (*http.Request, error) { 14925 if rc.NextLink == nil || len(to.String(rc.NextLink)) < 1 { 14926 return nil, nil 14927 } 14928 return autorest.Prepare((&http.Request{}).WithContext(ctx), 14929 autorest.AsJSON(), 14930 autorest.AsGet(), 14931 autorest.WithBaseURL(to.String(rc.NextLink))) 14932} 14933 14934// ResourceCollectionPage contains a page of string values. 14935type ResourceCollectionPage struct { 14936 fn func(context.Context, ResourceCollection) (ResourceCollection, error) 14937 rc ResourceCollection 14938} 14939 14940// NextWithContext advances to the next page of values. If there was an error making 14941// the request the page does not advance and the error is returned. 14942func (page *ResourceCollectionPage) NextWithContext(ctx context.Context) (err error) { 14943 if tracing.IsEnabled() { 14944 ctx = tracing.StartSpan(ctx, fqdn+"/ResourceCollectionPage.NextWithContext") 14945 defer func() { 14946 sc := -1 14947 if page.Response().Response.Response != nil { 14948 sc = page.Response().Response.Response.StatusCode 14949 } 14950 tracing.EndSpan(ctx, sc, err) 14951 }() 14952 } 14953 next, err := page.fn(ctx, page.rc) 14954 if err != nil { 14955 return err 14956 } 14957 page.rc = next 14958 return nil 14959} 14960 14961// Next advances to the next page of values. If there was an error making 14962// the request the page does not advance and the error is returned. 14963// Deprecated: Use NextWithContext() instead. 14964func (page *ResourceCollectionPage) Next() error { 14965 return page.NextWithContext(context.Background()) 14966} 14967 14968// NotDone returns true if the page enumeration should be started or is not yet complete. 14969func (page ResourceCollectionPage) NotDone() bool { 14970 return !page.rc.IsEmpty() 14971} 14972 14973// Response returns the raw server response from the last page request. 14974func (page ResourceCollectionPage) Response() ResourceCollection { 14975 return page.rc 14976} 14977 14978// Values returns the slice of values for the current page or nil if there are no values. 14979func (page ResourceCollectionPage) Values() []string { 14980 if page.rc.IsEmpty() { 14981 return nil 14982 } 14983 return *page.rc.Value 14984} 14985 14986// Creates a new instance of the ResourceCollectionPage type. 14987func NewResourceCollectionPage(getNextPage func(context.Context, ResourceCollection) (ResourceCollection, error)) ResourceCollectionPage { 14988 return ResourceCollectionPage{fn: getNextPage} 14989} 14990 14991// ResourceHealthMetadata used for getting ResourceHealthCheck settings. 14992type ResourceHealthMetadata struct { 14993 autorest.Response `json:"-"` 14994 // ResourceHealthMetadataProperties - ResourceHealthMetadata resource specific properties 14995 *ResourceHealthMetadataProperties `json:"properties,omitempty"` 14996 // ID - READ-ONLY; Resource Id. 14997 ID *string `json:"id,omitempty"` 14998 // Name - READ-ONLY; Resource Name. 14999 Name *string `json:"name,omitempty"` 15000 // Kind - Kind of resource. 15001 Kind *string `json:"kind,omitempty"` 15002 // Type - READ-ONLY; Resource type. 15003 Type *string `json:"type,omitempty"` 15004} 15005 15006// MarshalJSON is the custom marshaler for ResourceHealthMetadata. 15007func (rhm ResourceHealthMetadata) MarshalJSON() ([]byte, error) { 15008 objectMap := make(map[string]interface{}) 15009 if rhm.ResourceHealthMetadataProperties != nil { 15010 objectMap["properties"] = rhm.ResourceHealthMetadataProperties 15011 } 15012 if rhm.Kind != nil { 15013 objectMap["kind"] = rhm.Kind 15014 } 15015 return json.Marshal(objectMap) 15016} 15017 15018// UnmarshalJSON is the custom unmarshaler for ResourceHealthMetadata struct. 15019func (rhm *ResourceHealthMetadata) UnmarshalJSON(body []byte) error { 15020 var m map[string]*json.RawMessage 15021 err := json.Unmarshal(body, &m) 15022 if err != nil { 15023 return err 15024 } 15025 for k, v := range m { 15026 switch k { 15027 case "properties": 15028 if v != nil { 15029 var resourceHealthMetadataProperties ResourceHealthMetadataProperties 15030 err = json.Unmarshal(*v, &resourceHealthMetadataProperties) 15031 if err != nil { 15032 return err 15033 } 15034 rhm.ResourceHealthMetadataProperties = &resourceHealthMetadataProperties 15035 } 15036 case "id": 15037 if v != nil { 15038 var ID string 15039 err = json.Unmarshal(*v, &ID) 15040 if err != nil { 15041 return err 15042 } 15043 rhm.ID = &ID 15044 } 15045 case "name": 15046 if v != nil { 15047 var name string 15048 err = json.Unmarshal(*v, &name) 15049 if err != nil { 15050 return err 15051 } 15052 rhm.Name = &name 15053 } 15054 case "kind": 15055 if v != nil { 15056 var kind string 15057 err = json.Unmarshal(*v, &kind) 15058 if err != nil { 15059 return err 15060 } 15061 rhm.Kind = &kind 15062 } 15063 case "type": 15064 if v != nil { 15065 var typeVar string 15066 err = json.Unmarshal(*v, &typeVar) 15067 if err != nil { 15068 return err 15069 } 15070 rhm.Type = &typeVar 15071 } 15072 } 15073 } 15074 15075 return nil 15076} 15077 15078// ResourceHealthMetadataCollection collection of resource health metadata. 15079type ResourceHealthMetadataCollection struct { 15080 autorest.Response `json:"-"` 15081 // Value - Collection of resources. 15082 Value *[]ResourceHealthMetadata `json:"value,omitempty"` 15083 // NextLink - READ-ONLY; Link to next page of resources. 15084 NextLink *string `json:"nextLink,omitempty"` 15085} 15086 15087// ResourceHealthMetadataCollectionIterator provides access to a complete listing of ResourceHealthMetadata 15088// values. 15089type ResourceHealthMetadataCollectionIterator struct { 15090 i int 15091 page ResourceHealthMetadataCollectionPage 15092} 15093 15094// NextWithContext advances to the next value. If there was an error making 15095// the request the iterator does not advance and the error is returned. 15096func (iter *ResourceHealthMetadataCollectionIterator) NextWithContext(ctx context.Context) (err error) { 15097 if tracing.IsEnabled() { 15098 ctx = tracing.StartSpan(ctx, fqdn+"/ResourceHealthMetadataCollectionIterator.NextWithContext") 15099 defer func() { 15100 sc := -1 15101 if iter.Response().Response.Response != nil { 15102 sc = iter.Response().Response.Response.StatusCode 15103 } 15104 tracing.EndSpan(ctx, sc, err) 15105 }() 15106 } 15107 iter.i++ 15108 if iter.i < len(iter.page.Values()) { 15109 return nil 15110 } 15111 err = iter.page.NextWithContext(ctx) 15112 if err != nil { 15113 iter.i-- 15114 return err 15115 } 15116 iter.i = 0 15117 return nil 15118} 15119 15120// Next advances to the next value. If there was an error making 15121// the request the iterator does not advance and the error is returned. 15122// Deprecated: Use NextWithContext() instead. 15123func (iter *ResourceHealthMetadataCollectionIterator) Next() error { 15124 return iter.NextWithContext(context.Background()) 15125} 15126 15127// NotDone returns true if the enumeration should be started or is not yet complete. 15128func (iter ResourceHealthMetadataCollectionIterator) NotDone() bool { 15129 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 15130} 15131 15132// Response returns the raw server response from the last page request. 15133func (iter ResourceHealthMetadataCollectionIterator) Response() ResourceHealthMetadataCollection { 15134 return iter.page.Response() 15135} 15136 15137// Value returns the current value or a zero-initialized value if the 15138// iterator has advanced beyond the end of the collection. 15139func (iter ResourceHealthMetadataCollectionIterator) Value() ResourceHealthMetadata { 15140 if !iter.page.NotDone() { 15141 return ResourceHealthMetadata{} 15142 } 15143 return iter.page.Values()[iter.i] 15144} 15145 15146// Creates a new instance of the ResourceHealthMetadataCollectionIterator type. 15147func NewResourceHealthMetadataCollectionIterator(page ResourceHealthMetadataCollectionPage) ResourceHealthMetadataCollectionIterator { 15148 return ResourceHealthMetadataCollectionIterator{page: page} 15149} 15150 15151// IsEmpty returns true if the ListResult contains no values. 15152func (rhmc ResourceHealthMetadataCollection) IsEmpty() bool { 15153 return rhmc.Value == nil || len(*rhmc.Value) == 0 15154} 15155 15156// resourceHealthMetadataCollectionPreparer prepares a request to retrieve the next set of results. 15157// It returns nil if no more results exist. 15158func (rhmc ResourceHealthMetadataCollection) resourceHealthMetadataCollectionPreparer(ctx context.Context) (*http.Request, error) { 15159 if rhmc.NextLink == nil || len(to.String(rhmc.NextLink)) < 1 { 15160 return nil, nil 15161 } 15162 return autorest.Prepare((&http.Request{}).WithContext(ctx), 15163 autorest.AsJSON(), 15164 autorest.AsGet(), 15165 autorest.WithBaseURL(to.String(rhmc.NextLink))) 15166} 15167 15168// ResourceHealthMetadataCollectionPage contains a page of ResourceHealthMetadata values. 15169type ResourceHealthMetadataCollectionPage struct { 15170 fn func(context.Context, ResourceHealthMetadataCollection) (ResourceHealthMetadataCollection, error) 15171 rhmc ResourceHealthMetadataCollection 15172} 15173 15174// NextWithContext advances to the next page of values. If there was an error making 15175// the request the page does not advance and the error is returned. 15176func (page *ResourceHealthMetadataCollectionPage) NextWithContext(ctx context.Context) (err error) { 15177 if tracing.IsEnabled() { 15178 ctx = tracing.StartSpan(ctx, fqdn+"/ResourceHealthMetadataCollectionPage.NextWithContext") 15179 defer func() { 15180 sc := -1 15181 if page.Response().Response.Response != nil { 15182 sc = page.Response().Response.Response.StatusCode 15183 } 15184 tracing.EndSpan(ctx, sc, err) 15185 }() 15186 } 15187 next, err := page.fn(ctx, page.rhmc) 15188 if err != nil { 15189 return err 15190 } 15191 page.rhmc = next 15192 return nil 15193} 15194 15195// Next advances to the next page of values. If there was an error making 15196// the request the page does not advance and the error is returned. 15197// Deprecated: Use NextWithContext() instead. 15198func (page *ResourceHealthMetadataCollectionPage) Next() error { 15199 return page.NextWithContext(context.Background()) 15200} 15201 15202// NotDone returns true if the page enumeration should be started or is not yet complete. 15203func (page ResourceHealthMetadataCollectionPage) NotDone() bool { 15204 return !page.rhmc.IsEmpty() 15205} 15206 15207// Response returns the raw server response from the last page request. 15208func (page ResourceHealthMetadataCollectionPage) Response() ResourceHealthMetadataCollection { 15209 return page.rhmc 15210} 15211 15212// Values returns the slice of values for the current page or nil if there are no values. 15213func (page ResourceHealthMetadataCollectionPage) Values() []ResourceHealthMetadata { 15214 if page.rhmc.IsEmpty() { 15215 return nil 15216 } 15217 return *page.rhmc.Value 15218} 15219 15220// Creates a new instance of the ResourceHealthMetadataCollectionPage type. 15221func NewResourceHealthMetadataCollectionPage(getNextPage func(context.Context, ResourceHealthMetadataCollection) (ResourceHealthMetadataCollection, error)) ResourceHealthMetadataCollectionPage { 15222 return ResourceHealthMetadataCollectionPage{fn: getNextPage} 15223} 15224 15225// ResourceHealthMetadataProperties resourceHealthMetadata resource specific properties 15226type ResourceHealthMetadataProperties struct { 15227 // Category - The category that the resource matches in the RHC Policy File 15228 Category *string `json:"category,omitempty"` 15229 // SignalAvailability - Is there a health signal for the resource 15230 SignalAvailability *bool `json:"signalAvailability,omitempty"` 15231} 15232 15233// ResourceMetric object representing a metric for any resource . 15234type ResourceMetric struct { 15235 // Name - READ-ONLY; Name of metric. 15236 Name *ResourceMetricName `json:"name,omitempty"` 15237 // Unit - READ-ONLY; Metric unit. 15238 Unit *string `json:"unit,omitempty"` 15239 // TimeGrain - READ-ONLY; Metric granularity. E.g PT1H, PT5M, P1D 15240 TimeGrain *string `json:"timeGrain,omitempty"` 15241 // StartTime - READ-ONLY; Metric start time. 15242 StartTime *date.Time `json:"startTime,omitempty"` 15243 // EndTime - READ-ONLY; Metric end time. 15244 EndTime *date.Time `json:"endTime,omitempty"` 15245 // ResourceID - READ-ONLY; Metric resource Id. 15246 ResourceID *string `json:"resourceId,omitempty"` 15247 // ID - READ-ONLY; Resource Id. 15248 ID *string `json:"id,omitempty"` 15249 // MetricValues - READ-ONLY; Metric values. 15250 MetricValues *[]ResourceMetricValue `json:"metricValues,omitempty"` 15251 // Properties - READ-ONLY; Resource metric properties collection. 15252 Properties *[]ResourceMetricProperty `json:"properties,omitempty"` 15253} 15254 15255// ResourceMetricAvailability metrics availability and retention. 15256type ResourceMetricAvailability struct { 15257 // TimeGrain - READ-ONLY; Time grain . 15258 TimeGrain *string `json:"timeGrain,omitempty"` 15259 // Retention - READ-ONLY; Retention period for the current time grain. 15260 Retention *string `json:"retention,omitempty"` 15261} 15262 15263// ResourceMetricCollection collection of metric responses. 15264type ResourceMetricCollection struct { 15265 autorest.Response `json:"-"` 15266 // Value - Collection of resources. 15267 Value *[]ResourceMetric `json:"value,omitempty"` 15268 // NextLink - READ-ONLY; Link to next page of resources. 15269 NextLink *string `json:"nextLink,omitempty"` 15270} 15271 15272// ResourceMetricCollectionIterator provides access to a complete listing of ResourceMetric values. 15273type ResourceMetricCollectionIterator struct { 15274 i int 15275 page ResourceMetricCollectionPage 15276} 15277 15278// NextWithContext advances to the next value. If there was an error making 15279// the request the iterator does not advance and the error is returned. 15280func (iter *ResourceMetricCollectionIterator) NextWithContext(ctx context.Context) (err error) { 15281 if tracing.IsEnabled() { 15282 ctx = tracing.StartSpan(ctx, fqdn+"/ResourceMetricCollectionIterator.NextWithContext") 15283 defer func() { 15284 sc := -1 15285 if iter.Response().Response.Response != nil { 15286 sc = iter.Response().Response.Response.StatusCode 15287 } 15288 tracing.EndSpan(ctx, sc, err) 15289 }() 15290 } 15291 iter.i++ 15292 if iter.i < len(iter.page.Values()) { 15293 return nil 15294 } 15295 err = iter.page.NextWithContext(ctx) 15296 if err != nil { 15297 iter.i-- 15298 return err 15299 } 15300 iter.i = 0 15301 return nil 15302} 15303 15304// Next advances to the next value. If there was an error making 15305// the request the iterator does not advance and the error is returned. 15306// Deprecated: Use NextWithContext() instead. 15307func (iter *ResourceMetricCollectionIterator) Next() error { 15308 return iter.NextWithContext(context.Background()) 15309} 15310 15311// NotDone returns true if the enumeration should be started or is not yet complete. 15312func (iter ResourceMetricCollectionIterator) NotDone() bool { 15313 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 15314} 15315 15316// Response returns the raw server response from the last page request. 15317func (iter ResourceMetricCollectionIterator) Response() ResourceMetricCollection { 15318 return iter.page.Response() 15319} 15320 15321// Value returns the current value or a zero-initialized value if the 15322// iterator has advanced beyond the end of the collection. 15323func (iter ResourceMetricCollectionIterator) Value() ResourceMetric { 15324 if !iter.page.NotDone() { 15325 return ResourceMetric{} 15326 } 15327 return iter.page.Values()[iter.i] 15328} 15329 15330// Creates a new instance of the ResourceMetricCollectionIterator type. 15331func NewResourceMetricCollectionIterator(page ResourceMetricCollectionPage) ResourceMetricCollectionIterator { 15332 return ResourceMetricCollectionIterator{page: page} 15333} 15334 15335// IsEmpty returns true if the ListResult contains no values. 15336func (rmc ResourceMetricCollection) IsEmpty() bool { 15337 return rmc.Value == nil || len(*rmc.Value) == 0 15338} 15339 15340// resourceMetricCollectionPreparer prepares a request to retrieve the next set of results. 15341// It returns nil if no more results exist. 15342func (rmc ResourceMetricCollection) resourceMetricCollectionPreparer(ctx context.Context) (*http.Request, error) { 15343 if rmc.NextLink == nil || len(to.String(rmc.NextLink)) < 1 { 15344 return nil, nil 15345 } 15346 return autorest.Prepare((&http.Request{}).WithContext(ctx), 15347 autorest.AsJSON(), 15348 autorest.AsGet(), 15349 autorest.WithBaseURL(to.String(rmc.NextLink))) 15350} 15351 15352// ResourceMetricCollectionPage contains a page of ResourceMetric values. 15353type ResourceMetricCollectionPage struct { 15354 fn func(context.Context, ResourceMetricCollection) (ResourceMetricCollection, error) 15355 rmc ResourceMetricCollection 15356} 15357 15358// NextWithContext advances to the next page of values. If there was an error making 15359// the request the page does not advance and the error is returned. 15360func (page *ResourceMetricCollectionPage) NextWithContext(ctx context.Context) (err error) { 15361 if tracing.IsEnabled() { 15362 ctx = tracing.StartSpan(ctx, fqdn+"/ResourceMetricCollectionPage.NextWithContext") 15363 defer func() { 15364 sc := -1 15365 if page.Response().Response.Response != nil { 15366 sc = page.Response().Response.Response.StatusCode 15367 } 15368 tracing.EndSpan(ctx, sc, err) 15369 }() 15370 } 15371 next, err := page.fn(ctx, page.rmc) 15372 if err != nil { 15373 return err 15374 } 15375 page.rmc = next 15376 return nil 15377} 15378 15379// Next advances to the next page of values. If there was an error making 15380// the request the page does not advance and the error is returned. 15381// Deprecated: Use NextWithContext() instead. 15382func (page *ResourceMetricCollectionPage) Next() error { 15383 return page.NextWithContext(context.Background()) 15384} 15385 15386// NotDone returns true if the page enumeration should be started or is not yet complete. 15387func (page ResourceMetricCollectionPage) NotDone() bool { 15388 return !page.rmc.IsEmpty() 15389} 15390 15391// Response returns the raw server response from the last page request. 15392func (page ResourceMetricCollectionPage) Response() ResourceMetricCollection { 15393 return page.rmc 15394} 15395 15396// Values returns the slice of values for the current page or nil if there are no values. 15397func (page ResourceMetricCollectionPage) Values() []ResourceMetric { 15398 if page.rmc.IsEmpty() { 15399 return nil 15400 } 15401 return *page.rmc.Value 15402} 15403 15404// Creates a new instance of the ResourceMetricCollectionPage type. 15405func NewResourceMetricCollectionPage(getNextPage func(context.Context, ResourceMetricCollection) (ResourceMetricCollection, error)) ResourceMetricCollectionPage { 15406 return ResourceMetricCollectionPage{fn: getNextPage} 15407} 15408 15409// ResourceMetricDefinition metadata for the metrics. 15410type ResourceMetricDefinition struct { 15411 // ResourceMetricDefinitionProperties - ResourceMetricDefinition resource specific properties 15412 *ResourceMetricDefinitionProperties `json:"properties,omitempty"` 15413 // ID - READ-ONLY; Resource Id. 15414 ID *string `json:"id,omitempty"` 15415 // Name - READ-ONLY; Resource Name. 15416 Name *string `json:"name,omitempty"` 15417 // Kind - Kind of resource. 15418 Kind *string `json:"kind,omitempty"` 15419 // Type - READ-ONLY; Resource type. 15420 Type *string `json:"type,omitempty"` 15421} 15422 15423// MarshalJSON is the custom marshaler for ResourceMetricDefinition. 15424func (rmd ResourceMetricDefinition) MarshalJSON() ([]byte, error) { 15425 objectMap := make(map[string]interface{}) 15426 if rmd.ResourceMetricDefinitionProperties != nil { 15427 objectMap["properties"] = rmd.ResourceMetricDefinitionProperties 15428 } 15429 if rmd.Kind != nil { 15430 objectMap["kind"] = rmd.Kind 15431 } 15432 return json.Marshal(objectMap) 15433} 15434 15435// UnmarshalJSON is the custom unmarshaler for ResourceMetricDefinition struct. 15436func (rmd *ResourceMetricDefinition) UnmarshalJSON(body []byte) error { 15437 var m map[string]*json.RawMessage 15438 err := json.Unmarshal(body, &m) 15439 if err != nil { 15440 return err 15441 } 15442 for k, v := range m { 15443 switch k { 15444 case "properties": 15445 if v != nil { 15446 var resourceMetricDefinitionProperties ResourceMetricDefinitionProperties 15447 err = json.Unmarshal(*v, &resourceMetricDefinitionProperties) 15448 if err != nil { 15449 return err 15450 } 15451 rmd.ResourceMetricDefinitionProperties = &resourceMetricDefinitionProperties 15452 } 15453 case "id": 15454 if v != nil { 15455 var ID string 15456 err = json.Unmarshal(*v, &ID) 15457 if err != nil { 15458 return err 15459 } 15460 rmd.ID = &ID 15461 } 15462 case "name": 15463 if v != nil { 15464 var name string 15465 err = json.Unmarshal(*v, &name) 15466 if err != nil { 15467 return err 15468 } 15469 rmd.Name = &name 15470 } 15471 case "kind": 15472 if v != nil { 15473 var kind string 15474 err = json.Unmarshal(*v, &kind) 15475 if err != nil { 15476 return err 15477 } 15478 rmd.Kind = &kind 15479 } 15480 case "type": 15481 if v != nil { 15482 var typeVar string 15483 err = json.Unmarshal(*v, &typeVar) 15484 if err != nil { 15485 return err 15486 } 15487 rmd.Type = &typeVar 15488 } 15489 } 15490 } 15491 15492 return nil 15493} 15494 15495// ResourceMetricDefinitionCollection collection of metric definitions. 15496type ResourceMetricDefinitionCollection struct { 15497 autorest.Response `json:"-"` 15498 // Value - Collection of resources. 15499 Value *[]ResourceMetricDefinition `json:"value,omitempty"` 15500 // NextLink - READ-ONLY; Link to next page of resources. 15501 NextLink *string `json:"nextLink,omitempty"` 15502} 15503 15504// ResourceMetricDefinitionCollectionIterator provides access to a complete listing of 15505// ResourceMetricDefinition values. 15506type ResourceMetricDefinitionCollectionIterator struct { 15507 i int 15508 page ResourceMetricDefinitionCollectionPage 15509} 15510 15511// NextWithContext advances to the next value. If there was an error making 15512// the request the iterator does not advance and the error is returned. 15513func (iter *ResourceMetricDefinitionCollectionIterator) NextWithContext(ctx context.Context) (err error) { 15514 if tracing.IsEnabled() { 15515 ctx = tracing.StartSpan(ctx, fqdn+"/ResourceMetricDefinitionCollectionIterator.NextWithContext") 15516 defer func() { 15517 sc := -1 15518 if iter.Response().Response.Response != nil { 15519 sc = iter.Response().Response.Response.StatusCode 15520 } 15521 tracing.EndSpan(ctx, sc, err) 15522 }() 15523 } 15524 iter.i++ 15525 if iter.i < len(iter.page.Values()) { 15526 return nil 15527 } 15528 err = iter.page.NextWithContext(ctx) 15529 if err != nil { 15530 iter.i-- 15531 return err 15532 } 15533 iter.i = 0 15534 return nil 15535} 15536 15537// Next advances to the next value. If there was an error making 15538// the request the iterator does not advance and the error is returned. 15539// Deprecated: Use NextWithContext() instead. 15540func (iter *ResourceMetricDefinitionCollectionIterator) Next() error { 15541 return iter.NextWithContext(context.Background()) 15542} 15543 15544// NotDone returns true if the enumeration should be started or is not yet complete. 15545func (iter ResourceMetricDefinitionCollectionIterator) NotDone() bool { 15546 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 15547} 15548 15549// Response returns the raw server response from the last page request. 15550func (iter ResourceMetricDefinitionCollectionIterator) Response() ResourceMetricDefinitionCollection { 15551 return iter.page.Response() 15552} 15553 15554// Value returns the current value or a zero-initialized value if the 15555// iterator has advanced beyond the end of the collection. 15556func (iter ResourceMetricDefinitionCollectionIterator) Value() ResourceMetricDefinition { 15557 if !iter.page.NotDone() { 15558 return ResourceMetricDefinition{} 15559 } 15560 return iter.page.Values()[iter.i] 15561} 15562 15563// Creates a new instance of the ResourceMetricDefinitionCollectionIterator type. 15564func NewResourceMetricDefinitionCollectionIterator(page ResourceMetricDefinitionCollectionPage) ResourceMetricDefinitionCollectionIterator { 15565 return ResourceMetricDefinitionCollectionIterator{page: page} 15566} 15567 15568// IsEmpty returns true if the ListResult contains no values. 15569func (rmdc ResourceMetricDefinitionCollection) IsEmpty() bool { 15570 return rmdc.Value == nil || len(*rmdc.Value) == 0 15571} 15572 15573// resourceMetricDefinitionCollectionPreparer prepares a request to retrieve the next set of results. 15574// It returns nil if no more results exist. 15575func (rmdc ResourceMetricDefinitionCollection) resourceMetricDefinitionCollectionPreparer(ctx context.Context) (*http.Request, error) { 15576 if rmdc.NextLink == nil || len(to.String(rmdc.NextLink)) < 1 { 15577 return nil, nil 15578 } 15579 return autorest.Prepare((&http.Request{}).WithContext(ctx), 15580 autorest.AsJSON(), 15581 autorest.AsGet(), 15582 autorest.WithBaseURL(to.String(rmdc.NextLink))) 15583} 15584 15585// ResourceMetricDefinitionCollectionPage contains a page of ResourceMetricDefinition values. 15586type ResourceMetricDefinitionCollectionPage struct { 15587 fn func(context.Context, ResourceMetricDefinitionCollection) (ResourceMetricDefinitionCollection, error) 15588 rmdc ResourceMetricDefinitionCollection 15589} 15590 15591// NextWithContext advances to the next page of values. If there was an error making 15592// the request the page does not advance and the error is returned. 15593func (page *ResourceMetricDefinitionCollectionPage) NextWithContext(ctx context.Context) (err error) { 15594 if tracing.IsEnabled() { 15595 ctx = tracing.StartSpan(ctx, fqdn+"/ResourceMetricDefinitionCollectionPage.NextWithContext") 15596 defer func() { 15597 sc := -1 15598 if page.Response().Response.Response != nil { 15599 sc = page.Response().Response.Response.StatusCode 15600 } 15601 tracing.EndSpan(ctx, sc, err) 15602 }() 15603 } 15604 next, err := page.fn(ctx, page.rmdc) 15605 if err != nil { 15606 return err 15607 } 15608 page.rmdc = next 15609 return nil 15610} 15611 15612// Next advances to the next page of values. If there was an error making 15613// the request the page does not advance and the error is returned. 15614// Deprecated: Use NextWithContext() instead. 15615func (page *ResourceMetricDefinitionCollectionPage) Next() error { 15616 return page.NextWithContext(context.Background()) 15617} 15618 15619// NotDone returns true if the page enumeration should be started or is not yet complete. 15620func (page ResourceMetricDefinitionCollectionPage) NotDone() bool { 15621 return !page.rmdc.IsEmpty() 15622} 15623 15624// Response returns the raw server response from the last page request. 15625func (page ResourceMetricDefinitionCollectionPage) Response() ResourceMetricDefinitionCollection { 15626 return page.rmdc 15627} 15628 15629// Values returns the slice of values for the current page or nil if there are no values. 15630func (page ResourceMetricDefinitionCollectionPage) Values() []ResourceMetricDefinition { 15631 if page.rmdc.IsEmpty() { 15632 return nil 15633 } 15634 return *page.rmdc.Value 15635} 15636 15637// Creates a new instance of the ResourceMetricDefinitionCollectionPage type. 15638func NewResourceMetricDefinitionCollectionPage(getNextPage func(context.Context, ResourceMetricDefinitionCollection) (ResourceMetricDefinitionCollection, error)) ResourceMetricDefinitionCollectionPage { 15639 return ResourceMetricDefinitionCollectionPage{fn: getNextPage} 15640} 15641 15642// ResourceMetricDefinitionProperties resourceMetricDefinition resource specific properties 15643type ResourceMetricDefinitionProperties struct { 15644 // Name - READ-ONLY; Name of the metric. 15645 Name *ResourceMetricName `json:"name,omitempty"` 15646 // Unit - READ-ONLY; Unit of the metric. 15647 Unit *string `json:"unit,omitempty"` 15648 // PrimaryAggregationType - READ-ONLY; Primary aggregation type. 15649 PrimaryAggregationType *string `json:"primaryAggregationType,omitempty"` 15650 // MetricAvailabilities - READ-ONLY; List of time grains supported for the metric together with retention period. 15651 MetricAvailabilities *[]ResourceMetricAvailability `json:"metricAvailabilities,omitempty"` 15652 // ResourceURI - READ-ONLY; Resource URI. 15653 ResourceURI *string `json:"resourceUri,omitempty"` 15654 // ID - READ-ONLY; Resource ID. 15655 ID *string `json:"id,omitempty"` 15656 // Properties - READ-ONLY; Resource metric definition properties. 15657 Properties map[string]*string `json:"properties"` 15658} 15659 15660// MarshalJSON is the custom marshaler for ResourceMetricDefinitionProperties. 15661func (rmd ResourceMetricDefinitionProperties) MarshalJSON() ([]byte, error) { 15662 objectMap := make(map[string]interface{}) 15663 return json.Marshal(objectMap) 15664} 15665 15666// ResourceMetricName name of a metric for any resource . 15667type ResourceMetricName struct { 15668 // Value - READ-ONLY; metric name value. 15669 Value *string `json:"value,omitempty"` 15670 // LocalizedValue - READ-ONLY; Localized metric name value. 15671 LocalizedValue *string `json:"localizedValue,omitempty"` 15672} 15673 15674// ResourceMetricProperty resource metric property. 15675type ResourceMetricProperty struct { 15676 // Key - Key for resource metric property. 15677 Key *string `json:"key,omitempty"` 15678 // Value - Value of pair. 15679 Value *string `json:"value,omitempty"` 15680} 15681 15682// ResourceMetricValue value of resource metric. 15683type ResourceMetricValue struct { 15684 // Timestamp - READ-ONLY; Value timestamp. 15685 Timestamp *string `json:"timestamp,omitempty"` 15686 // Average - READ-ONLY; Value average. 15687 Average *float64 `json:"average,omitempty"` 15688 // Minimum - READ-ONLY; Value minimum. 15689 Minimum *float64 `json:"minimum,omitempty"` 15690 // Maximum - READ-ONLY; Value maximum. 15691 Maximum *float64 `json:"maximum,omitempty"` 15692 // Total - READ-ONLY; Value total. 15693 Total *float64 `json:"total,omitempty"` 15694 // Count - READ-ONLY; Value count. 15695 Count *float64 `json:"count,omitempty"` 15696 // Properties - READ-ONLY; Resource metric properties collection. 15697 Properties *[]ResourceMetricProperty `json:"properties,omitempty"` 15698} 15699 15700// ResourceNameAvailability information regarding availability of a resource name. 15701type ResourceNameAvailability struct { 15702 autorest.Response `json:"-"` 15703 // NameAvailable - <code>true</code> indicates name is valid and available. <code>false</code> indicates the name is invalid, unavailable, or both. 15704 NameAvailable *bool `json:"nameAvailable,omitempty"` 15705 // Reason - <code>Invalid</code> indicates the name provided does not match Azure App Service naming requirements. <code>AlreadyExists</code> indicates that the name is already in use and is therefore unavailable. Possible values include: 'Invalid', 'AlreadyExists' 15706 Reason InAvailabilityReasonType `json:"reason,omitempty"` 15707 // Message - If reason == invalid, provide the user with the reason why the given name is invalid, and provide the resource naming requirements so that the user can select a valid name. If reason == AlreadyExists, explain that resource name is already in use, and direct them to select a different name. 15708 Message *string `json:"message,omitempty"` 15709} 15710 15711// ResourceNameAvailabilityRequest resource name availability request content. 15712type ResourceNameAvailabilityRequest struct { 15713 // Name - Resource name to verify. 15714 Name *string `json:"name,omitempty"` 15715 // Type - Resource type used for verification. Possible values include: 'CheckNameResourceTypesSite', 'CheckNameResourceTypesSlot', 'CheckNameResourceTypesHostingEnvironment', 'CheckNameResourceTypesPublishingUser', 'CheckNameResourceTypesMicrosoftWebsites', 'CheckNameResourceTypesMicrosoftWebsitesslots', 'CheckNameResourceTypesMicrosoftWebhostingEnvironments', 'CheckNameResourceTypesMicrosoftWebpublishingUsers' 15716 Type CheckNameResourceTypes `json:"type,omitempty"` 15717 // IsFqdn - Is fully qualified domain name. 15718 IsFqdn *bool `json:"isFqdn,omitempty"` 15719} 15720 15721// ResponseMetaData ... 15722type ResponseMetaData struct { 15723 // DataSource - Source of the Data 15724 DataSource *DataSource `json:"dataSource,omitempty"` 15725} 15726 15727// RestoreRequest description of a restore request. 15728type RestoreRequest struct { 15729 autorest.Response `json:"-"` 15730 // RestoreRequestProperties - RestoreRequest resource specific properties 15731 *RestoreRequestProperties `json:"properties,omitempty"` 15732 // ID - READ-ONLY; Resource Id. 15733 ID *string `json:"id,omitempty"` 15734 // Name - READ-ONLY; Resource Name. 15735 Name *string `json:"name,omitempty"` 15736 // Kind - Kind of resource. 15737 Kind *string `json:"kind,omitempty"` 15738 // Type - READ-ONLY; Resource type. 15739 Type *string `json:"type,omitempty"` 15740} 15741 15742// MarshalJSON is the custom marshaler for RestoreRequest. 15743func (rr RestoreRequest) MarshalJSON() ([]byte, error) { 15744 objectMap := make(map[string]interface{}) 15745 if rr.RestoreRequestProperties != nil { 15746 objectMap["properties"] = rr.RestoreRequestProperties 15747 } 15748 if rr.Kind != nil { 15749 objectMap["kind"] = rr.Kind 15750 } 15751 return json.Marshal(objectMap) 15752} 15753 15754// UnmarshalJSON is the custom unmarshaler for RestoreRequest struct. 15755func (rr *RestoreRequest) UnmarshalJSON(body []byte) error { 15756 var m map[string]*json.RawMessage 15757 err := json.Unmarshal(body, &m) 15758 if err != nil { 15759 return err 15760 } 15761 for k, v := range m { 15762 switch k { 15763 case "properties": 15764 if v != nil { 15765 var restoreRequestProperties RestoreRequestProperties 15766 err = json.Unmarshal(*v, &restoreRequestProperties) 15767 if err != nil { 15768 return err 15769 } 15770 rr.RestoreRequestProperties = &restoreRequestProperties 15771 } 15772 case "id": 15773 if v != nil { 15774 var ID string 15775 err = json.Unmarshal(*v, &ID) 15776 if err != nil { 15777 return err 15778 } 15779 rr.ID = &ID 15780 } 15781 case "name": 15782 if v != nil { 15783 var name string 15784 err = json.Unmarshal(*v, &name) 15785 if err != nil { 15786 return err 15787 } 15788 rr.Name = &name 15789 } 15790 case "kind": 15791 if v != nil { 15792 var kind string 15793 err = json.Unmarshal(*v, &kind) 15794 if err != nil { 15795 return err 15796 } 15797 rr.Kind = &kind 15798 } 15799 case "type": 15800 if v != nil { 15801 var typeVar string 15802 err = json.Unmarshal(*v, &typeVar) 15803 if err != nil { 15804 return err 15805 } 15806 rr.Type = &typeVar 15807 } 15808 } 15809 } 15810 15811 return nil 15812} 15813 15814// RestoreRequestProperties restoreRequest resource specific properties 15815type RestoreRequestProperties struct { 15816 // StorageAccountURL - SAS URL to the container. 15817 StorageAccountURL *string `json:"storageAccountUrl,omitempty"` 15818 // BlobName - Name of a blob which contains the backup. 15819 BlobName *string `json:"blobName,omitempty"` 15820 // Overwrite - <code>true</code> if the restore operation can overwrite target app; otherwise, <code>false</code>. <code>true</code> is needed if trying to restore over an existing app. 15821 Overwrite *bool `json:"overwrite,omitempty"` 15822 // SiteName - Name of an app. 15823 SiteName *string `json:"siteName,omitempty"` 15824 // Databases - Collection of databases which should be restored. This list has to match the list of databases included in the backup. 15825 Databases *[]DatabaseBackupSetting `json:"databases,omitempty"` 15826 // IgnoreConflictingHostNames - Changes a logic when restoring an app with custom domains. <code>true</code> to remove custom domains automatically. If <code>false</code>, custom domains are added to 15827 // the app's object when it is being restored, but that might fail due to conflicts during the operation. 15828 IgnoreConflictingHostNames *bool `json:"ignoreConflictingHostNames,omitempty"` 15829 // IgnoreDatabases - Ignore the databases and only restore the site content 15830 IgnoreDatabases *bool `json:"ignoreDatabases,omitempty"` 15831 // AppServicePlan - Specify app service plan that will own restored site. 15832 AppServicePlan *string `json:"appServicePlan,omitempty"` 15833 // OperationType - Operation type. Possible values include: 'BackupRestoreOperationTypeDefault', 'BackupRestoreOperationTypeClone', 'BackupRestoreOperationTypeRelocation', 'BackupRestoreOperationTypeSnapshot' 15834 OperationType BackupRestoreOperationType `json:"operationType,omitempty"` 15835 // AdjustConnectionStrings - <code>true</code> if SiteConfig.ConnectionStrings should be set in new app; otherwise, <code>false</code>. 15836 AdjustConnectionStrings *bool `json:"adjustConnectionStrings,omitempty"` 15837 // HostingEnvironment - App Service Environment name, if needed (only when restoring an app to an App Service Environment). 15838 HostingEnvironment *string `json:"hostingEnvironment,omitempty"` 15839} 15840 15841// RestoreResponse response for an app restore request. 15842type RestoreResponse struct { 15843 autorest.Response `json:"-"` 15844 // RestoreResponseProperties - RestoreResponse resource specific properties 15845 *RestoreResponseProperties `json:"properties,omitempty"` 15846 // ID - READ-ONLY; Resource Id. 15847 ID *string `json:"id,omitempty"` 15848 // Name - READ-ONLY; Resource Name. 15849 Name *string `json:"name,omitempty"` 15850 // Kind - Kind of resource. 15851 Kind *string `json:"kind,omitempty"` 15852 // Type - READ-ONLY; Resource type. 15853 Type *string `json:"type,omitempty"` 15854} 15855 15856// MarshalJSON is the custom marshaler for RestoreResponse. 15857func (rr RestoreResponse) MarshalJSON() ([]byte, error) { 15858 objectMap := make(map[string]interface{}) 15859 if rr.RestoreResponseProperties != nil { 15860 objectMap["properties"] = rr.RestoreResponseProperties 15861 } 15862 if rr.Kind != nil { 15863 objectMap["kind"] = rr.Kind 15864 } 15865 return json.Marshal(objectMap) 15866} 15867 15868// UnmarshalJSON is the custom unmarshaler for RestoreResponse struct. 15869func (rr *RestoreResponse) UnmarshalJSON(body []byte) error { 15870 var m map[string]*json.RawMessage 15871 err := json.Unmarshal(body, &m) 15872 if err != nil { 15873 return err 15874 } 15875 for k, v := range m { 15876 switch k { 15877 case "properties": 15878 if v != nil { 15879 var restoreResponseProperties RestoreResponseProperties 15880 err = json.Unmarshal(*v, &restoreResponseProperties) 15881 if err != nil { 15882 return err 15883 } 15884 rr.RestoreResponseProperties = &restoreResponseProperties 15885 } 15886 case "id": 15887 if v != nil { 15888 var ID string 15889 err = json.Unmarshal(*v, &ID) 15890 if err != nil { 15891 return err 15892 } 15893 rr.ID = &ID 15894 } 15895 case "name": 15896 if v != nil { 15897 var name string 15898 err = json.Unmarshal(*v, &name) 15899 if err != nil { 15900 return err 15901 } 15902 rr.Name = &name 15903 } 15904 case "kind": 15905 if v != nil { 15906 var kind string 15907 err = json.Unmarshal(*v, &kind) 15908 if err != nil { 15909 return err 15910 } 15911 rr.Kind = &kind 15912 } 15913 case "type": 15914 if v != nil { 15915 var typeVar string 15916 err = json.Unmarshal(*v, &typeVar) 15917 if err != nil { 15918 return err 15919 } 15920 rr.Type = &typeVar 15921 } 15922 } 15923 } 15924 15925 return nil 15926} 15927 15928// RestoreResponseProperties restoreResponse resource specific properties 15929type RestoreResponseProperties struct { 15930 // OperationID - READ-ONLY; When server starts the restore process, it will return an operation ID identifying that particular restore operation. 15931 OperationID *string `json:"operationId,omitempty"` 15932} 15933 15934// ServiceSpecification resource metrics service provided by Microsoft.Insights resource provider. 15935type ServiceSpecification struct { 15936 MetricSpecifications *[]MetricSpecification `json:"metricSpecifications,omitempty"` 15937} 15938 15939// SetObject ... 15940type SetObject struct { 15941 autorest.Response `json:"-"` 15942 Value interface{} `json:"value,omitempty"` 15943} 15944 15945// Site a web app, a mobile app backend, or an API app. 15946type Site struct { 15947 autorest.Response `json:"-"` 15948 // SiteProperties - Site resource specific properties 15949 *SiteProperties `json:"properties,omitempty"` 15950 Identity *ManagedServiceIdentity `json:"identity,omitempty"` 15951 // ID - READ-ONLY; Resource Id. 15952 ID *string `json:"id,omitempty"` 15953 // Name - READ-ONLY; Resource Name. 15954 Name *string `json:"name,omitempty"` 15955 // Kind - Kind of resource. 15956 Kind *string `json:"kind,omitempty"` 15957 // Location - Resource Location. 15958 Location *string `json:"location,omitempty"` 15959 // Type - READ-ONLY; Resource type. 15960 Type *string `json:"type,omitempty"` 15961 // Tags - Resource tags. 15962 Tags map[string]*string `json:"tags"` 15963} 15964 15965// MarshalJSON is the custom marshaler for Site. 15966func (s Site) MarshalJSON() ([]byte, error) { 15967 objectMap := make(map[string]interface{}) 15968 if s.SiteProperties != nil { 15969 objectMap["properties"] = s.SiteProperties 15970 } 15971 if s.Identity != nil { 15972 objectMap["identity"] = s.Identity 15973 } 15974 if s.Kind != nil { 15975 objectMap["kind"] = s.Kind 15976 } 15977 if s.Location != nil { 15978 objectMap["location"] = s.Location 15979 } 15980 if s.Tags != nil { 15981 objectMap["tags"] = s.Tags 15982 } 15983 return json.Marshal(objectMap) 15984} 15985 15986// UnmarshalJSON is the custom unmarshaler for Site struct. 15987func (s *Site) UnmarshalJSON(body []byte) error { 15988 var m map[string]*json.RawMessage 15989 err := json.Unmarshal(body, &m) 15990 if err != nil { 15991 return err 15992 } 15993 for k, v := range m { 15994 switch k { 15995 case "properties": 15996 if v != nil { 15997 var siteProperties SiteProperties 15998 err = json.Unmarshal(*v, &siteProperties) 15999 if err != nil { 16000 return err 16001 } 16002 s.SiteProperties = &siteProperties 16003 } 16004 case "identity": 16005 if v != nil { 16006 var identity ManagedServiceIdentity 16007 err = json.Unmarshal(*v, &identity) 16008 if err != nil { 16009 return err 16010 } 16011 s.Identity = &identity 16012 } 16013 case "id": 16014 if v != nil { 16015 var ID string 16016 err = json.Unmarshal(*v, &ID) 16017 if err != nil { 16018 return err 16019 } 16020 s.ID = &ID 16021 } 16022 case "name": 16023 if v != nil { 16024 var name string 16025 err = json.Unmarshal(*v, &name) 16026 if err != nil { 16027 return err 16028 } 16029 s.Name = &name 16030 } 16031 case "kind": 16032 if v != nil { 16033 var kind string 16034 err = json.Unmarshal(*v, &kind) 16035 if err != nil { 16036 return err 16037 } 16038 s.Kind = &kind 16039 } 16040 case "location": 16041 if v != nil { 16042 var location string 16043 err = json.Unmarshal(*v, &location) 16044 if err != nil { 16045 return err 16046 } 16047 s.Location = &location 16048 } 16049 case "type": 16050 if v != nil { 16051 var typeVar string 16052 err = json.Unmarshal(*v, &typeVar) 16053 if err != nil { 16054 return err 16055 } 16056 s.Type = &typeVar 16057 } 16058 case "tags": 16059 if v != nil { 16060 var tags map[string]*string 16061 err = json.Unmarshal(*v, &tags) 16062 if err != nil { 16063 return err 16064 } 16065 s.Tags = tags 16066 } 16067 } 16068 } 16069 16070 return nil 16071} 16072 16073// SiteAuthSettings configuration settings for the Azure App Service Authentication / Authorization 16074// feature. 16075type SiteAuthSettings struct { 16076 autorest.Response `json:"-"` 16077 // SiteAuthSettingsProperties - SiteAuthSettings resource specific properties 16078 *SiteAuthSettingsProperties `json:"properties,omitempty"` 16079 // ID - READ-ONLY; Resource Id. 16080 ID *string `json:"id,omitempty"` 16081 // Name - READ-ONLY; Resource Name. 16082 Name *string `json:"name,omitempty"` 16083 // Kind - Kind of resource. 16084 Kind *string `json:"kind,omitempty"` 16085 // Type - READ-ONLY; Resource type. 16086 Type *string `json:"type,omitempty"` 16087} 16088 16089// MarshalJSON is the custom marshaler for SiteAuthSettings. 16090func (sas SiteAuthSettings) MarshalJSON() ([]byte, error) { 16091 objectMap := make(map[string]interface{}) 16092 if sas.SiteAuthSettingsProperties != nil { 16093 objectMap["properties"] = sas.SiteAuthSettingsProperties 16094 } 16095 if sas.Kind != nil { 16096 objectMap["kind"] = sas.Kind 16097 } 16098 return json.Marshal(objectMap) 16099} 16100 16101// UnmarshalJSON is the custom unmarshaler for SiteAuthSettings struct. 16102func (sas *SiteAuthSettings) UnmarshalJSON(body []byte) error { 16103 var m map[string]*json.RawMessage 16104 err := json.Unmarshal(body, &m) 16105 if err != nil { 16106 return err 16107 } 16108 for k, v := range m { 16109 switch k { 16110 case "properties": 16111 if v != nil { 16112 var siteAuthSettingsProperties SiteAuthSettingsProperties 16113 err = json.Unmarshal(*v, &siteAuthSettingsProperties) 16114 if err != nil { 16115 return err 16116 } 16117 sas.SiteAuthSettingsProperties = &siteAuthSettingsProperties 16118 } 16119 case "id": 16120 if v != nil { 16121 var ID string 16122 err = json.Unmarshal(*v, &ID) 16123 if err != nil { 16124 return err 16125 } 16126 sas.ID = &ID 16127 } 16128 case "name": 16129 if v != nil { 16130 var name string 16131 err = json.Unmarshal(*v, &name) 16132 if err != nil { 16133 return err 16134 } 16135 sas.Name = &name 16136 } 16137 case "kind": 16138 if v != nil { 16139 var kind string 16140 err = json.Unmarshal(*v, &kind) 16141 if err != nil { 16142 return err 16143 } 16144 sas.Kind = &kind 16145 } 16146 case "type": 16147 if v != nil { 16148 var typeVar string 16149 err = json.Unmarshal(*v, &typeVar) 16150 if err != nil { 16151 return err 16152 } 16153 sas.Type = &typeVar 16154 } 16155 } 16156 } 16157 16158 return nil 16159} 16160 16161// SiteAuthSettingsProperties siteAuthSettings resource specific properties 16162type SiteAuthSettingsProperties struct { 16163 // Enabled - <code>true</code> if the Authentication / Authorization feature is enabled for the current app; otherwise, <code>false</code>. 16164 Enabled *bool `json:"enabled,omitempty"` 16165 // RuntimeVersion - The RuntimeVersion of the Authentication / Authorization feature in use for the current app. 16166 // The setting in this value can control the behavior of certain features in the Authentication / Authorization module. 16167 RuntimeVersion *string `json:"runtimeVersion,omitempty"` 16168 // UnauthenticatedClientAction - The action to take when an unauthenticated client attempts to access the app. Possible values include: 'RedirectToLoginPage', 'AllowAnonymous' 16169 UnauthenticatedClientAction UnauthenticatedClientAction `json:"unauthenticatedClientAction,omitempty"` 16170 // TokenStoreEnabled - <code>true</code> to durably store platform-specific security tokens that are obtained during login flows; otherwise, <code>false</code>. 16171 // The default is <code>false</code>. 16172 TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty"` 16173 // AllowedExternalRedirectUrls - External URLs that can be redirected to as part of logging in or logging out of the app. Note that the query string part of the URL is ignored. 16174 // This is an advanced setting typically only needed by Windows Store application backends. 16175 // Note that URLs within the current domain are always implicitly allowed. 16176 AllowedExternalRedirectUrls *[]string `json:"allowedExternalRedirectUrls,omitempty"` 16177 // DefaultProvider - The default authentication provider to use when multiple providers are configured. 16178 // This setting is only needed if multiple providers are configured and the unauthenticated client 16179 // action is set to "RedirectToLoginPage". Possible values include: 'AzureActiveDirectory', 'Facebook', 'Google', 'MicrosoftAccount', 'Twitter' 16180 DefaultProvider BuiltInAuthenticationProvider `json:"defaultProvider,omitempty"` 16181 // TokenRefreshExtensionHours - The number of hours after session token expiration that a session token can be used to 16182 // call the token refresh API. The default is 72 hours. 16183 TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty"` 16184 // ClientID - The Client ID of this relying party application, known as the client_id. 16185 // This setting is required for enabling OpenID Connection authentication with Azure Active Directory or 16186 // other 3rd party OpenID Connect providers. 16187 // More information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html 16188 ClientID *string `json:"clientId,omitempty"` 16189 // ClientSecret - The Client Secret of this relying party application (in Azure Active Directory, this is also referred to as the Key). 16190 // This setting is optional. If no client secret is configured, the OpenID Connect implicit auth flow is used to authenticate end users. 16191 // Otherwise, the OpenID Connect Authorization Code Flow is used to authenticate end users. 16192 // More information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html 16193 ClientSecret *string `json:"clientSecret,omitempty"` 16194 // Issuer - The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application. 16195 // When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/. 16196 // This URI is a case-sensitive identifier for the token issuer. 16197 // More information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html 16198 Issuer *string `json:"issuer,omitempty"` 16199 // AllowedAudiences - Allowed audience values to consider when validating JWTs issued by 16200 // Azure Active Directory. Note that the <code>ClientID</code> value is always considered an 16201 // allowed audience, regardless of this setting. 16202 AllowedAudiences *[]string `json:"allowedAudiences,omitempty"` 16203 // AdditionalLoginParams - Login parameters to send to the OpenID Connect authorization endpoint when 16204 // a user logs in. Each parameter must be in the form "key=value". 16205 AdditionalLoginParams *[]string `json:"additionalLoginParams,omitempty"` 16206 // GoogleClientID - The OpenID Connect Client ID for the Google web application. 16207 // This setting is required for enabling Google Sign-In. 16208 // Google Sign-In documentation: https://developers.google.com/identity/sign-in/web/ 16209 GoogleClientID *string `json:"googleClientId,omitempty"` 16210 // GoogleClientSecret - The client secret associated with the Google web application. 16211 // This setting is required for enabling Google Sign-In. 16212 // Google Sign-In documentation: https://developers.google.com/identity/sign-in/web/ 16213 GoogleClientSecret *string `json:"googleClientSecret,omitempty"` 16214 // GoogleOAuthScopes - The OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. 16215 // This setting is optional. If not specified, "openid", "profile", and "email" are used as default scopes. 16216 // Google Sign-In documentation: https://developers.google.com/identity/sign-in/web/ 16217 GoogleOAuthScopes *[]string `json:"googleOAuthScopes,omitempty"` 16218 // FacebookAppID - The App ID of the Facebook app used for login. 16219 // This setting is required for enabling Facebook Login. 16220 // Facebook Login documentation: https://developers.facebook.com/docs/facebook-login 16221 FacebookAppID *string `json:"facebookAppId,omitempty"` 16222 // FacebookAppSecret - The App Secret of the Facebook app used for Facebook Login. 16223 // This setting is required for enabling Facebook Login. 16224 // Facebook Login documentation: https://developers.facebook.com/docs/facebook-login 16225 FacebookAppSecret *string `json:"facebookAppSecret,omitempty"` 16226 // FacebookOAuthScopes - The OAuth 2.0 scopes that will be requested as part of Facebook Login authentication. 16227 // This setting is optional. 16228 // Facebook Login documentation: https://developers.facebook.com/docs/facebook-login 16229 FacebookOAuthScopes *[]string `json:"facebookOAuthScopes,omitempty"` 16230 // TwitterConsumerKey - The OAuth 1.0a consumer key of the Twitter application used for sign-in. 16231 // This setting is required for enabling Twitter Sign-In. 16232 // Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in 16233 TwitterConsumerKey *string `json:"twitterConsumerKey,omitempty"` 16234 // TwitterConsumerSecret - The OAuth 1.0a consumer secret of the Twitter application used for sign-in. 16235 // This setting is required for enabling Twitter Sign-In. 16236 // Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in 16237 TwitterConsumerSecret *string `json:"twitterConsumerSecret,omitempty"` 16238 // MicrosoftAccountClientID - The OAuth 2.0 client ID that was created for the app used for authentication. 16239 // This setting is required for enabling Microsoft Account authentication. 16240 // Microsoft Account OAuth documentation: https://dev.onedrive.com/auth/msa_oauth.htm 16241 MicrosoftAccountClientID *string `json:"microsoftAccountClientId,omitempty"` 16242 // MicrosoftAccountClientSecret - The OAuth 2.0 client secret that was created for the app used for authentication. 16243 // This setting is required for enabling Microsoft Account authentication. 16244 // Microsoft Account OAuth documentation: https://dev.onedrive.com/auth/msa_oauth.htm 16245 MicrosoftAccountClientSecret *string `json:"microsoftAccountClientSecret,omitempty"` 16246 // MicrosoftAccountOAuthScopes - The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. 16247 // This setting is optional. If not specified, "wl.basic" is used as the default scope. 16248 // Microsoft Account Scopes and permissions documentation: https://msdn.microsoft.com/en-us/library/dn631845.aspx 16249 MicrosoftAccountOAuthScopes *[]string `json:"microsoftAccountOAuthScopes,omitempty"` 16250} 16251 16252// SiteCloneability represents whether or not an app is cloneable. 16253type SiteCloneability struct { 16254 autorest.Response `json:"-"` 16255 // Result - Name of app. Possible values include: 'Cloneable', 'PartiallyCloneable', 'NotCloneable' 16256 Result CloneAbilityResult `json:"result,omitempty"` 16257 // BlockingFeatures - List of features enabled on app that prevent cloning. 16258 BlockingFeatures *[]SiteCloneabilityCriterion `json:"blockingFeatures,omitempty"` 16259 // UnsupportedFeatures - List of features enabled on app that are non-blocking but cannot be cloned. The app can still be cloned 16260 // but the features in this list will not be set up on cloned app. 16261 UnsupportedFeatures *[]SiteCloneabilityCriterion `json:"unsupportedFeatures,omitempty"` 16262 // BlockingCharacteristics - List of blocking application characteristics. 16263 BlockingCharacteristics *[]SiteCloneabilityCriterion `json:"blockingCharacteristics,omitempty"` 16264} 16265 16266// SiteCloneabilityCriterion an app cloneability criterion. 16267type SiteCloneabilityCriterion struct { 16268 // Name - Name of criterion. 16269 Name *string `json:"name,omitempty"` 16270 // Description - Description of criterion. 16271 Description *string `json:"description,omitempty"` 16272} 16273 16274// SiteConfig configuration of an App Service app. 16275type SiteConfig struct { 16276 // NumberOfWorkers - Number of workers. 16277 NumberOfWorkers *int32 `json:"numberOfWorkers,omitempty"` 16278 // DefaultDocuments - Default documents. 16279 DefaultDocuments *[]string `json:"defaultDocuments,omitempty"` 16280 // NetFrameworkVersion - .NET Framework version. 16281 NetFrameworkVersion *string `json:"netFrameworkVersion,omitempty"` 16282 // PhpVersion - Version of PHP. 16283 PhpVersion *string `json:"phpVersion,omitempty"` 16284 // PythonVersion - Version of Python. 16285 PythonVersion *string `json:"pythonVersion,omitempty"` 16286 // NodeVersion - Version of Node.js. 16287 NodeVersion *string `json:"nodeVersion,omitempty"` 16288 // LinuxFxVersion - Linux App Framework and version 16289 LinuxFxVersion *string `json:"linuxFxVersion,omitempty"` 16290 // RequestTracingEnabled - <code>true</code> if request tracing is enabled; otherwise, <code>false</code>. 16291 RequestTracingEnabled *bool `json:"requestTracingEnabled,omitempty"` 16292 // RequestTracingExpirationTime - Request tracing expiration time. 16293 RequestTracingExpirationTime *date.Time `json:"requestTracingExpirationTime,omitempty"` 16294 // RemoteDebuggingEnabled - <code>true</code> if remote debugging is enabled; otherwise, <code>false</code>. 16295 RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty"` 16296 // RemoteDebuggingVersion - Remote debugging version. 16297 RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty"` 16298 // HTTPLoggingEnabled - <code>true</code> if HTTP logging is enabled; otherwise, <code>false</code>. 16299 HTTPLoggingEnabled *bool `json:"httpLoggingEnabled,omitempty"` 16300 // LogsDirectorySizeLimit - HTTP logs directory size limit. 16301 LogsDirectorySizeLimit *int32 `json:"logsDirectorySizeLimit,omitempty"` 16302 // DetailedErrorLoggingEnabled - <code>true</code> if detailed error logging is enabled; otherwise, <code>false</code>. 16303 DetailedErrorLoggingEnabled *bool `json:"detailedErrorLoggingEnabled,omitempty"` 16304 // PublishingUsername - Publishing user name. 16305 PublishingUsername *string `json:"publishingUsername,omitempty"` 16306 // AppSettings - Application settings. 16307 AppSettings *[]NameValuePair `json:"appSettings,omitempty"` 16308 // ConnectionStrings - Connection strings. 16309 ConnectionStrings *[]ConnStringInfo `json:"connectionStrings,omitempty"` 16310 // MachineKey - READ-ONLY; Site MachineKey. 16311 MachineKey *SiteMachineKey `json:"machineKey,omitempty"` 16312 // HandlerMappings - Handler mappings. 16313 HandlerMappings *[]HandlerMapping `json:"handlerMappings,omitempty"` 16314 // DocumentRoot - Document root. 16315 DocumentRoot *string `json:"documentRoot,omitempty"` 16316 // ScmType - SCM type. Possible values include: 'ScmTypeNone', 'ScmTypeDropbox', 'ScmTypeTfs', 'ScmTypeLocalGit', 'ScmTypeGitHub', 'ScmTypeCodePlexGit', 'ScmTypeCodePlexHg', 'ScmTypeBitbucketGit', 'ScmTypeBitbucketHg', 'ScmTypeExternalGit', 'ScmTypeExternalHg', 'ScmTypeOneDrive', 'ScmTypeVSO' 16317 ScmType ScmType `json:"scmType,omitempty"` 16318 // Use32BitWorkerProcess - <code>true</code> to use 32-bit worker process; otherwise, <code>false</code>. 16319 Use32BitWorkerProcess *bool `json:"use32BitWorkerProcess,omitempty"` 16320 // WebSocketsEnabled - <code>true</code> if WebSocket is enabled; otherwise, <code>false</code>. 16321 WebSocketsEnabled *bool `json:"webSocketsEnabled,omitempty"` 16322 // AlwaysOn - <code>true</code> if Always On is enabled; otherwise, <code>false</code>. 16323 AlwaysOn *bool `json:"alwaysOn,omitempty"` 16324 // JavaVersion - Java version. 16325 JavaVersion *string `json:"javaVersion,omitempty"` 16326 // JavaContainer - Java container. 16327 JavaContainer *string `json:"javaContainer,omitempty"` 16328 // JavaContainerVersion - Java container version. 16329 JavaContainerVersion *string `json:"javaContainerVersion,omitempty"` 16330 // AppCommandLine - App command line to launch. 16331 AppCommandLine *string `json:"appCommandLine,omitempty"` 16332 // ManagedPipelineMode - Managed pipeline mode. Possible values include: 'Integrated', 'Classic' 16333 ManagedPipelineMode ManagedPipelineMode `json:"managedPipelineMode,omitempty"` 16334 // VirtualApplications - Virtual applications. 16335 VirtualApplications *[]VirtualApplication `json:"virtualApplications,omitempty"` 16336 // LoadBalancing - Site load balancing. Possible values include: 'WeightedRoundRobin', 'LeastRequests', 'LeastResponseTime', 'WeightedTotalTraffic', 'RequestHash' 16337 LoadBalancing SiteLoadBalancing `json:"loadBalancing,omitempty"` 16338 // Experiments - This is work around for polymorphic types. 16339 Experiments *Experiments `json:"experiments,omitempty"` 16340 // Limits - Site limits. 16341 Limits *SiteLimits `json:"limits,omitempty"` 16342 // AutoHealEnabled - <code>true</code> if Auto Heal is enabled; otherwise, <code>false</code>. 16343 AutoHealEnabled *bool `json:"autoHealEnabled,omitempty"` 16344 // AutoHealRules - Auto Heal rules. 16345 AutoHealRules *AutoHealRules `json:"autoHealRules,omitempty"` 16346 // TracingOptions - Tracing options. 16347 TracingOptions *string `json:"tracingOptions,omitempty"` 16348 // VnetName - Virtual Network name. 16349 VnetName *string `json:"vnetName,omitempty"` 16350 // Cors - Cross-Origin Resource Sharing (CORS) settings. 16351 Cors *CorsSettings `json:"cors,omitempty"` 16352 // Push - Push endpoint settings. 16353 Push *PushSettings `json:"push,omitempty"` 16354 // APIDefinition - Information about the formal API definition for the app. 16355 APIDefinition *APIDefinitionInfo `json:"apiDefinition,omitempty"` 16356 // AutoSwapSlotName - Auto-swap slot name. 16357 AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty"` 16358 // LocalMySQLEnabled - <code>true</code> to enable local MySQL; otherwise, <code>false</code>. 16359 LocalMySQLEnabled *bool `json:"localMySqlEnabled,omitempty"` 16360 // IPSecurityRestrictions - IP security restrictions. 16361 IPSecurityRestrictions *[]IPSecurityRestriction `json:"ipSecurityRestrictions,omitempty"` 16362 // HTTP20Enabled - Http20Enabled: configures a web site to allow clients to connect over http2.0 16363 HTTP20Enabled *bool `json:"http20Enabled,omitempty"` 16364 // MinTLSVersion - MinTlsVersion: configures the minimum version of TLS required for SSL requests. Possible values include: 'OneFullStopZero', 'OneFullStopOne', 'OneFullStopTwo' 16365 MinTLSVersion SupportedTLSVersions `json:"minTlsVersion,omitempty"` 16366} 16367 16368// SiteConfigResource web app configuration ARM resource. 16369type SiteConfigResource struct { 16370 autorest.Response `json:"-"` 16371 // SiteConfig - Core resource properties 16372 *SiteConfig `json:"properties,omitempty"` 16373 // ID - READ-ONLY; Resource Id. 16374 ID *string `json:"id,omitempty"` 16375 // Name - READ-ONLY; Resource Name. 16376 Name *string `json:"name,omitempty"` 16377 // Kind - Kind of resource. 16378 Kind *string `json:"kind,omitempty"` 16379 // Type - READ-ONLY; Resource type. 16380 Type *string `json:"type,omitempty"` 16381} 16382 16383// MarshalJSON is the custom marshaler for SiteConfigResource. 16384func (scr SiteConfigResource) MarshalJSON() ([]byte, error) { 16385 objectMap := make(map[string]interface{}) 16386 if scr.SiteConfig != nil { 16387 objectMap["properties"] = scr.SiteConfig 16388 } 16389 if scr.Kind != nil { 16390 objectMap["kind"] = scr.Kind 16391 } 16392 return json.Marshal(objectMap) 16393} 16394 16395// UnmarshalJSON is the custom unmarshaler for SiteConfigResource struct. 16396func (scr *SiteConfigResource) UnmarshalJSON(body []byte) error { 16397 var m map[string]*json.RawMessage 16398 err := json.Unmarshal(body, &m) 16399 if err != nil { 16400 return err 16401 } 16402 for k, v := range m { 16403 switch k { 16404 case "properties": 16405 if v != nil { 16406 var siteConfig SiteConfig 16407 err = json.Unmarshal(*v, &siteConfig) 16408 if err != nil { 16409 return err 16410 } 16411 scr.SiteConfig = &siteConfig 16412 } 16413 case "id": 16414 if v != nil { 16415 var ID string 16416 err = json.Unmarshal(*v, &ID) 16417 if err != nil { 16418 return err 16419 } 16420 scr.ID = &ID 16421 } 16422 case "name": 16423 if v != nil { 16424 var name string 16425 err = json.Unmarshal(*v, &name) 16426 if err != nil { 16427 return err 16428 } 16429 scr.Name = &name 16430 } 16431 case "kind": 16432 if v != nil { 16433 var kind string 16434 err = json.Unmarshal(*v, &kind) 16435 if err != nil { 16436 return err 16437 } 16438 scr.Kind = &kind 16439 } 16440 case "type": 16441 if v != nil { 16442 var typeVar string 16443 err = json.Unmarshal(*v, &typeVar) 16444 if err != nil { 16445 return err 16446 } 16447 scr.Type = &typeVar 16448 } 16449 } 16450 } 16451 16452 return nil 16453} 16454 16455// SiteConfigResourceCollection collection of site configurations. 16456type SiteConfigResourceCollection struct { 16457 autorest.Response `json:"-"` 16458 // Value - Collection of resources. 16459 Value *[]SiteConfigResource `json:"value,omitempty"` 16460 // NextLink - READ-ONLY; Link to next page of resources. 16461 NextLink *string `json:"nextLink,omitempty"` 16462} 16463 16464// SiteConfigResourceCollectionIterator provides access to a complete listing of SiteConfigResource values. 16465type SiteConfigResourceCollectionIterator struct { 16466 i int 16467 page SiteConfigResourceCollectionPage 16468} 16469 16470// NextWithContext advances to the next value. If there was an error making 16471// the request the iterator does not advance and the error is returned. 16472func (iter *SiteConfigResourceCollectionIterator) NextWithContext(ctx context.Context) (err error) { 16473 if tracing.IsEnabled() { 16474 ctx = tracing.StartSpan(ctx, fqdn+"/SiteConfigResourceCollectionIterator.NextWithContext") 16475 defer func() { 16476 sc := -1 16477 if iter.Response().Response.Response != nil { 16478 sc = iter.Response().Response.Response.StatusCode 16479 } 16480 tracing.EndSpan(ctx, sc, err) 16481 }() 16482 } 16483 iter.i++ 16484 if iter.i < len(iter.page.Values()) { 16485 return nil 16486 } 16487 err = iter.page.NextWithContext(ctx) 16488 if err != nil { 16489 iter.i-- 16490 return err 16491 } 16492 iter.i = 0 16493 return nil 16494} 16495 16496// Next advances to the next value. If there was an error making 16497// the request the iterator does not advance and the error is returned. 16498// Deprecated: Use NextWithContext() instead. 16499func (iter *SiteConfigResourceCollectionIterator) Next() error { 16500 return iter.NextWithContext(context.Background()) 16501} 16502 16503// NotDone returns true if the enumeration should be started or is not yet complete. 16504func (iter SiteConfigResourceCollectionIterator) NotDone() bool { 16505 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 16506} 16507 16508// Response returns the raw server response from the last page request. 16509func (iter SiteConfigResourceCollectionIterator) Response() SiteConfigResourceCollection { 16510 return iter.page.Response() 16511} 16512 16513// Value returns the current value or a zero-initialized value if the 16514// iterator has advanced beyond the end of the collection. 16515func (iter SiteConfigResourceCollectionIterator) Value() SiteConfigResource { 16516 if !iter.page.NotDone() { 16517 return SiteConfigResource{} 16518 } 16519 return iter.page.Values()[iter.i] 16520} 16521 16522// Creates a new instance of the SiteConfigResourceCollectionIterator type. 16523func NewSiteConfigResourceCollectionIterator(page SiteConfigResourceCollectionPage) SiteConfigResourceCollectionIterator { 16524 return SiteConfigResourceCollectionIterator{page: page} 16525} 16526 16527// IsEmpty returns true if the ListResult contains no values. 16528func (scrc SiteConfigResourceCollection) IsEmpty() bool { 16529 return scrc.Value == nil || len(*scrc.Value) == 0 16530} 16531 16532// siteConfigResourceCollectionPreparer prepares a request to retrieve the next set of results. 16533// It returns nil if no more results exist. 16534func (scrc SiteConfigResourceCollection) siteConfigResourceCollectionPreparer(ctx context.Context) (*http.Request, error) { 16535 if scrc.NextLink == nil || len(to.String(scrc.NextLink)) < 1 { 16536 return nil, nil 16537 } 16538 return autorest.Prepare((&http.Request{}).WithContext(ctx), 16539 autorest.AsJSON(), 16540 autorest.AsGet(), 16541 autorest.WithBaseURL(to.String(scrc.NextLink))) 16542} 16543 16544// SiteConfigResourceCollectionPage contains a page of SiteConfigResource values. 16545type SiteConfigResourceCollectionPage struct { 16546 fn func(context.Context, SiteConfigResourceCollection) (SiteConfigResourceCollection, error) 16547 scrc SiteConfigResourceCollection 16548} 16549 16550// NextWithContext advances to the next page of values. If there was an error making 16551// the request the page does not advance and the error is returned. 16552func (page *SiteConfigResourceCollectionPage) NextWithContext(ctx context.Context) (err error) { 16553 if tracing.IsEnabled() { 16554 ctx = tracing.StartSpan(ctx, fqdn+"/SiteConfigResourceCollectionPage.NextWithContext") 16555 defer func() { 16556 sc := -1 16557 if page.Response().Response.Response != nil { 16558 sc = page.Response().Response.Response.StatusCode 16559 } 16560 tracing.EndSpan(ctx, sc, err) 16561 }() 16562 } 16563 next, err := page.fn(ctx, page.scrc) 16564 if err != nil { 16565 return err 16566 } 16567 page.scrc = next 16568 return nil 16569} 16570 16571// Next advances to the next page of values. If there was an error making 16572// the request the page does not advance and the error is returned. 16573// Deprecated: Use NextWithContext() instead. 16574func (page *SiteConfigResourceCollectionPage) Next() error { 16575 return page.NextWithContext(context.Background()) 16576} 16577 16578// NotDone returns true if the page enumeration should be started or is not yet complete. 16579func (page SiteConfigResourceCollectionPage) NotDone() bool { 16580 return !page.scrc.IsEmpty() 16581} 16582 16583// Response returns the raw server response from the last page request. 16584func (page SiteConfigResourceCollectionPage) Response() SiteConfigResourceCollection { 16585 return page.scrc 16586} 16587 16588// Values returns the slice of values for the current page or nil if there are no values. 16589func (page SiteConfigResourceCollectionPage) Values() []SiteConfigResource { 16590 if page.scrc.IsEmpty() { 16591 return nil 16592 } 16593 return *page.scrc.Value 16594} 16595 16596// Creates a new instance of the SiteConfigResourceCollectionPage type. 16597func NewSiteConfigResourceCollectionPage(getNextPage func(context.Context, SiteConfigResourceCollection) (SiteConfigResourceCollection, error)) SiteConfigResourceCollectionPage { 16598 return SiteConfigResourceCollectionPage{fn: getNextPage} 16599} 16600 16601// SiteConfigurationSnapshotInfo a snapshot of a web app configuration. 16602type SiteConfigurationSnapshotInfo struct { 16603 // SiteConfigurationSnapshotInfoProperties - SiteConfigurationSnapshotInfo resource specific properties 16604 *SiteConfigurationSnapshotInfoProperties `json:"properties,omitempty"` 16605 // ID - READ-ONLY; Resource Id. 16606 ID *string `json:"id,omitempty"` 16607 // Name - READ-ONLY; Resource Name. 16608 Name *string `json:"name,omitempty"` 16609 // Kind - Kind of resource. 16610 Kind *string `json:"kind,omitempty"` 16611 // Type - READ-ONLY; Resource type. 16612 Type *string `json:"type,omitempty"` 16613} 16614 16615// MarshalJSON is the custom marshaler for SiteConfigurationSnapshotInfo. 16616func (scsi SiteConfigurationSnapshotInfo) MarshalJSON() ([]byte, error) { 16617 objectMap := make(map[string]interface{}) 16618 if scsi.SiteConfigurationSnapshotInfoProperties != nil { 16619 objectMap["properties"] = scsi.SiteConfigurationSnapshotInfoProperties 16620 } 16621 if scsi.Kind != nil { 16622 objectMap["kind"] = scsi.Kind 16623 } 16624 return json.Marshal(objectMap) 16625} 16626 16627// UnmarshalJSON is the custom unmarshaler for SiteConfigurationSnapshotInfo struct. 16628func (scsi *SiteConfigurationSnapshotInfo) UnmarshalJSON(body []byte) error { 16629 var m map[string]*json.RawMessage 16630 err := json.Unmarshal(body, &m) 16631 if err != nil { 16632 return err 16633 } 16634 for k, v := range m { 16635 switch k { 16636 case "properties": 16637 if v != nil { 16638 var siteConfigurationSnapshotInfoProperties SiteConfigurationSnapshotInfoProperties 16639 err = json.Unmarshal(*v, &siteConfigurationSnapshotInfoProperties) 16640 if err != nil { 16641 return err 16642 } 16643 scsi.SiteConfigurationSnapshotInfoProperties = &siteConfigurationSnapshotInfoProperties 16644 } 16645 case "id": 16646 if v != nil { 16647 var ID string 16648 err = json.Unmarshal(*v, &ID) 16649 if err != nil { 16650 return err 16651 } 16652 scsi.ID = &ID 16653 } 16654 case "name": 16655 if v != nil { 16656 var name string 16657 err = json.Unmarshal(*v, &name) 16658 if err != nil { 16659 return err 16660 } 16661 scsi.Name = &name 16662 } 16663 case "kind": 16664 if v != nil { 16665 var kind string 16666 err = json.Unmarshal(*v, &kind) 16667 if err != nil { 16668 return err 16669 } 16670 scsi.Kind = &kind 16671 } 16672 case "type": 16673 if v != nil { 16674 var typeVar string 16675 err = json.Unmarshal(*v, &typeVar) 16676 if err != nil { 16677 return err 16678 } 16679 scsi.Type = &typeVar 16680 } 16681 } 16682 } 16683 16684 return nil 16685} 16686 16687// SiteConfigurationSnapshotInfoCollection collection of metadata for the app configuration snapshots that 16688// can be restored. 16689type SiteConfigurationSnapshotInfoCollection struct { 16690 autorest.Response `json:"-"` 16691 // Value - Collection of resources. 16692 Value *[]SiteConfigurationSnapshotInfo `json:"value,omitempty"` 16693 // NextLink - READ-ONLY; Link to next page of resources. 16694 NextLink *string `json:"nextLink,omitempty"` 16695} 16696 16697// SiteConfigurationSnapshotInfoCollectionIterator provides access to a complete listing of 16698// SiteConfigurationSnapshotInfo values. 16699type SiteConfigurationSnapshotInfoCollectionIterator struct { 16700 i int 16701 page SiteConfigurationSnapshotInfoCollectionPage 16702} 16703 16704// NextWithContext advances to the next value. If there was an error making 16705// the request the iterator does not advance and the error is returned. 16706func (iter *SiteConfigurationSnapshotInfoCollectionIterator) NextWithContext(ctx context.Context) (err error) { 16707 if tracing.IsEnabled() { 16708 ctx = tracing.StartSpan(ctx, fqdn+"/SiteConfigurationSnapshotInfoCollectionIterator.NextWithContext") 16709 defer func() { 16710 sc := -1 16711 if iter.Response().Response.Response != nil { 16712 sc = iter.Response().Response.Response.StatusCode 16713 } 16714 tracing.EndSpan(ctx, sc, err) 16715 }() 16716 } 16717 iter.i++ 16718 if iter.i < len(iter.page.Values()) { 16719 return nil 16720 } 16721 err = iter.page.NextWithContext(ctx) 16722 if err != nil { 16723 iter.i-- 16724 return err 16725 } 16726 iter.i = 0 16727 return nil 16728} 16729 16730// Next advances to the next value. If there was an error making 16731// the request the iterator does not advance and the error is returned. 16732// Deprecated: Use NextWithContext() instead. 16733func (iter *SiteConfigurationSnapshotInfoCollectionIterator) Next() error { 16734 return iter.NextWithContext(context.Background()) 16735} 16736 16737// NotDone returns true if the enumeration should be started or is not yet complete. 16738func (iter SiteConfigurationSnapshotInfoCollectionIterator) NotDone() bool { 16739 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 16740} 16741 16742// Response returns the raw server response from the last page request. 16743func (iter SiteConfigurationSnapshotInfoCollectionIterator) Response() SiteConfigurationSnapshotInfoCollection { 16744 return iter.page.Response() 16745} 16746 16747// Value returns the current value or a zero-initialized value if the 16748// iterator has advanced beyond the end of the collection. 16749func (iter SiteConfigurationSnapshotInfoCollectionIterator) Value() SiteConfigurationSnapshotInfo { 16750 if !iter.page.NotDone() { 16751 return SiteConfigurationSnapshotInfo{} 16752 } 16753 return iter.page.Values()[iter.i] 16754} 16755 16756// Creates a new instance of the SiteConfigurationSnapshotInfoCollectionIterator type. 16757func NewSiteConfigurationSnapshotInfoCollectionIterator(page SiteConfigurationSnapshotInfoCollectionPage) SiteConfigurationSnapshotInfoCollectionIterator { 16758 return SiteConfigurationSnapshotInfoCollectionIterator{page: page} 16759} 16760 16761// IsEmpty returns true if the ListResult contains no values. 16762func (scsic SiteConfigurationSnapshotInfoCollection) IsEmpty() bool { 16763 return scsic.Value == nil || len(*scsic.Value) == 0 16764} 16765 16766// siteConfigurationSnapshotInfoCollectionPreparer prepares a request to retrieve the next set of results. 16767// It returns nil if no more results exist. 16768func (scsic SiteConfigurationSnapshotInfoCollection) siteConfigurationSnapshotInfoCollectionPreparer(ctx context.Context) (*http.Request, error) { 16769 if scsic.NextLink == nil || len(to.String(scsic.NextLink)) < 1 { 16770 return nil, nil 16771 } 16772 return autorest.Prepare((&http.Request{}).WithContext(ctx), 16773 autorest.AsJSON(), 16774 autorest.AsGet(), 16775 autorest.WithBaseURL(to.String(scsic.NextLink))) 16776} 16777 16778// SiteConfigurationSnapshotInfoCollectionPage contains a page of SiteConfigurationSnapshotInfo values. 16779type SiteConfigurationSnapshotInfoCollectionPage struct { 16780 fn func(context.Context, SiteConfigurationSnapshotInfoCollection) (SiteConfigurationSnapshotInfoCollection, error) 16781 scsic SiteConfigurationSnapshotInfoCollection 16782} 16783 16784// NextWithContext advances to the next page of values. If there was an error making 16785// the request the page does not advance and the error is returned. 16786func (page *SiteConfigurationSnapshotInfoCollectionPage) NextWithContext(ctx context.Context) (err error) { 16787 if tracing.IsEnabled() { 16788 ctx = tracing.StartSpan(ctx, fqdn+"/SiteConfigurationSnapshotInfoCollectionPage.NextWithContext") 16789 defer func() { 16790 sc := -1 16791 if page.Response().Response.Response != nil { 16792 sc = page.Response().Response.Response.StatusCode 16793 } 16794 tracing.EndSpan(ctx, sc, err) 16795 }() 16796 } 16797 next, err := page.fn(ctx, page.scsic) 16798 if err != nil { 16799 return err 16800 } 16801 page.scsic = next 16802 return nil 16803} 16804 16805// Next advances to the next page of values. If there was an error making 16806// the request the page does not advance and the error is returned. 16807// Deprecated: Use NextWithContext() instead. 16808func (page *SiteConfigurationSnapshotInfoCollectionPage) Next() error { 16809 return page.NextWithContext(context.Background()) 16810} 16811 16812// NotDone returns true if the page enumeration should be started or is not yet complete. 16813func (page SiteConfigurationSnapshotInfoCollectionPage) NotDone() bool { 16814 return !page.scsic.IsEmpty() 16815} 16816 16817// Response returns the raw server response from the last page request. 16818func (page SiteConfigurationSnapshotInfoCollectionPage) Response() SiteConfigurationSnapshotInfoCollection { 16819 return page.scsic 16820} 16821 16822// Values returns the slice of values for the current page or nil if there are no values. 16823func (page SiteConfigurationSnapshotInfoCollectionPage) Values() []SiteConfigurationSnapshotInfo { 16824 if page.scsic.IsEmpty() { 16825 return nil 16826 } 16827 return *page.scsic.Value 16828} 16829 16830// Creates a new instance of the SiteConfigurationSnapshotInfoCollectionPage type. 16831func NewSiteConfigurationSnapshotInfoCollectionPage(getNextPage func(context.Context, SiteConfigurationSnapshotInfoCollection) (SiteConfigurationSnapshotInfoCollection, error)) SiteConfigurationSnapshotInfoCollectionPage { 16832 return SiteConfigurationSnapshotInfoCollectionPage{fn: getNextPage} 16833} 16834 16835// SiteConfigurationSnapshotInfoProperties siteConfigurationSnapshotInfo resource specific properties 16836type SiteConfigurationSnapshotInfoProperties struct { 16837 // Time - READ-ONLY; The time the snapshot was taken. 16838 Time *date.Time `json:"time,omitempty"` 16839 // ID - READ-ONLY; The id of the snapshot 16840 ID *int32 `json:"id,omitempty"` 16841} 16842 16843// SiteExtensionInfo site Extension Information. 16844type SiteExtensionInfo struct { 16845 autorest.Response `json:"-"` 16846 // SiteExtensionInfoProperties - SiteExtensionInfo resource specific properties 16847 *SiteExtensionInfoProperties `json:"properties,omitempty"` 16848 // ID - READ-ONLY; Resource Id. 16849 ID *string `json:"id,omitempty"` 16850 // Name - READ-ONLY; Resource Name. 16851 Name *string `json:"name,omitempty"` 16852 // Kind - Kind of resource. 16853 Kind *string `json:"kind,omitempty"` 16854 // Type - READ-ONLY; Resource type. 16855 Type *string `json:"type,omitempty"` 16856} 16857 16858// MarshalJSON is the custom marshaler for SiteExtensionInfo. 16859func (sei SiteExtensionInfo) MarshalJSON() ([]byte, error) { 16860 objectMap := make(map[string]interface{}) 16861 if sei.SiteExtensionInfoProperties != nil { 16862 objectMap["properties"] = sei.SiteExtensionInfoProperties 16863 } 16864 if sei.Kind != nil { 16865 objectMap["kind"] = sei.Kind 16866 } 16867 return json.Marshal(objectMap) 16868} 16869 16870// UnmarshalJSON is the custom unmarshaler for SiteExtensionInfo struct. 16871func (sei *SiteExtensionInfo) UnmarshalJSON(body []byte) error { 16872 var m map[string]*json.RawMessage 16873 err := json.Unmarshal(body, &m) 16874 if err != nil { 16875 return err 16876 } 16877 for k, v := range m { 16878 switch k { 16879 case "properties": 16880 if v != nil { 16881 var siteExtensionInfoProperties SiteExtensionInfoProperties 16882 err = json.Unmarshal(*v, &siteExtensionInfoProperties) 16883 if err != nil { 16884 return err 16885 } 16886 sei.SiteExtensionInfoProperties = &siteExtensionInfoProperties 16887 } 16888 case "id": 16889 if v != nil { 16890 var ID string 16891 err = json.Unmarshal(*v, &ID) 16892 if err != nil { 16893 return err 16894 } 16895 sei.ID = &ID 16896 } 16897 case "name": 16898 if v != nil { 16899 var name string 16900 err = json.Unmarshal(*v, &name) 16901 if err != nil { 16902 return err 16903 } 16904 sei.Name = &name 16905 } 16906 case "kind": 16907 if v != nil { 16908 var kind string 16909 err = json.Unmarshal(*v, &kind) 16910 if err != nil { 16911 return err 16912 } 16913 sei.Kind = &kind 16914 } 16915 case "type": 16916 if v != nil { 16917 var typeVar string 16918 err = json.Unmarshal(*v, &typeVar) 16919 if err != nil { 16920 return err 16921 } 16922 sei.Type = &typeVar 16923 } 16924 } 16925 } 16926 16927 return nil 16928} 16929 16930// SiteExtensionInfoCollection collection of Kudu site extension information elements. 16931type SiteExtensionInfoCollection struct { 16932 autorest.Response `json:"-"` 16933 // Value - Collection of resources. 16934 Value *[]SiteExtensionInfo `json:"value,omitempty"` 16935 // NextLink - READ-ONLY; Link to next page of resources. 16936 NextLink *string `json:"nextLink,omitempty"` 16937} 16938 16939// SiteExtensionInfoCollectionIterator provides access to a complete listing of SiteExtensionInfo values. 16940type SiteExtensionInfoCollectionIterator struct { 16941 i int 16942 page SiteExtensionInfoCollectionPage 16943} 16944 16945// NextWithContext advances to the next value. If there was an error making 16946// the request the iterator does not advance and the error is returned. 16947func (iter *SiteExtensionInfoCollectionIterator) NextWithContext(ctx context.Context) (err error) { 16948 if tracing.IsEnabled() { 16949 ctx = tracing.StartSpan(ctx, fqdn+"/SiteExtensionInfoCollectionIterator.NextWithContext") 16950 defer func() { 16951 sc := -1 16952 if iter.Response().Response.Response != nil { 16953 sc = iter.Response().Response.Response.StatusCode 16954 } 16955 tracing.EndSpan(ctx, sc, err) 16956 }() 16957 } 16958 iter.i++ 16959 if iter.i < len(iter.page.Values()) { 16960 return nil 16961 } 16962 err = iter.page.NextWithContext(ctx) 16963 if err != nil { 16964 iter.i-- 16965 return err 16966 } 16967 iter.i = 0 16968 return nil 16969} 16970 16971// Next advances to the next value. If there was an error making 16972// the request the iterator does not advance and the error is returned. 16973// Deprecated: Use NextWithContext() instead. 16974func (iter *SiteExtensionInfoCollectionIterator) Next() error { 16975 return iter.NextWithContext(context.Background()) 16976} 16977 16978// NotDone returns true if the enumeration should be started or is not yet complete. 16979func (iter SiteExtensionInfoCollectionIterator) NotDone() bool { 16980 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 16981} 16982 16983// Response returns the raw server response from the last page request. 16984func (iter SiteExtensionInfoCollectionIterator) Response() SiteExtensionInfoCollection { 16985 return iter.page.Response() 16986} 16987 16988// Value returns the current value or a zero-initialized value if the 16989// iterator has advanced beyond the end of the collection. 16990func (iter SiteExtensionInfoCollectionIterator) Value() SiteExtensionInfo { 16991 if !iter.page.NotDone() { 16992 return SiteExtensionInfo{} 16993 } 16994 return iter.page.Values()[iter.i] 16995} 16996 16997// Creates a new instance of the SiteExtensionInfoCollectionIterator type. 16998func NewSiteExtensionInfoCollectionIterator(page SiteExtensionInfoCollectionPage) SiteExtensionInfoCollectionIterator { 16999 return SiteExtensionInfoCollectionIterator{page: page} 17000} 17001 17002// IsEmpty returns true if the ListResult contains no values. 17003func (seic SiteExtensionInfoCollection) IsEmpty() bool { 17004 return seic.Value == nil || len(*seic.Value) == 0 17005} 17006 17007// siteExtensionInfoCollectionPreparer prepares a request to retrieve the next set of results. 17008// It returns nil if no more results exist. 17009func (seic SiteExtensionInfoCollection) siteExtensionInfoCollectionPreparer(ctx context.Context) (*http.Request, error) { 17010 if seic.NextLink == nil || len(to.String(seic.NextLink)) < 1 { 17011 return nil, nil 17012 } 17013 return autorest.Prepare((&http.Request{}).WithContext(ctx), 17014 autorest.AsJSON(), 17015 autorest.AsGet(), 17016 autorest.WithBaseURL(to.String(seic.NextLink))) 17017} 17018 17019// SiteExtensionInfoCollectionPage contains a page of SiteExtensionInfo values. 17020type SiteExtensionInfoCollectionPage struct { 17021 fn func(context.Context, SiteExtensionInfoCollection) (SiteExtensionInfoCollection, error) 17022 seic SiteExtensionInfoCollection 17023} 17024 17025// NextWithContext advances to the next page of values. If there was an error making 17026// the request the page does not advance and the error is returned. 17027func (page *SiteExtensionInfoCollectionPage) NextWithContext(ctx context.Context) (err error) { 17028 if tracing.IsEnabled() { 17029 ctx = tracing.StartSpan(ctx, fqdn+"/SiteExtensionInfoCollectionPage.NextWithContext") 17030 defer func() { 17031 sc := -1 17032 if page.Response().Response.Response != nil { 17033 sc = page.Response().Response.Response.StatusCode 17034 } 17035 tracing.EndSpan(ctx, sc, err) 17036 }() 17037 } 17038 next, err := page.fn(ctx, page.seic) 17039 if err != nil { 17040 return err 17041 } 17042 page.seic = next 17043 return nil 17044} 17045 17046// Next advances to the next page of values. If there was an error making 17047// the request the page does not advance and the error is returned. 17048// Deprecated: Use NextWithContext() instead. 17049func (page *SiteExtensionInfoCollectionPage) Next() error { 17050 return page.NextWithContext(context.Background()) 17051} 17052 17053// NotDone returns true if the page enumeration should be started or is not yet complete. 17054func (page SiteExtensionInfoCollectionPage) NotDone() bool { 17055 return !page.seic.IsEmpty() 17056} 17057 17058// Response returns the raw server response from the last page request. 17059func (page SiteExtensionInfoCollectionPage) Response() SiteExtensionInfoCollection { 17060 return page.seic 17061} 17062 17063// Values returns the slice of values for the current page or nil if there are no values. 17064func (page SiteExtensionInfoCollectionPage) Values() []SiteExtensionInfo { 17065 if page.seic.IsEmpty() { 17066 return nil 17067 } 17068 return *page.seic.Value 17069} 17070 17071// Creates a new instance of the SiteExtensionInfoCollectionPage type. 17072func NewSiteExtensionInfoCollectionPage(getNextPage func(context.Context, SiteExtensionInfoCollection) (SiteExtensionInfoCollection, error)) SiteExtensionInfoCollectionPage { 17073 return SiteExtensionInfoCollectionPage{fn: getNextPage} 17074} 17075 17076// SiteExtensionInfoProperties siteExtensionInfo resource specific properties 17077type SiteExtensionInfoProperties struct { 17078 // ID - Site extension ID. 17079 ID *string `json:"id,omitempty"` 17080 // Title - Site extension title. 17081 Title *string `json:"title,omitempty"` 17082 // Type - Site extension type. Possible values include: 'Gallery', 'WebRoot' 17083 Type SiteExtensionType `json:"type,omitempty"` 17084 // Summary - Summary description. 17085 Summary *string `json:"summary,omitempty"` 17086 // Description - Detailed description. 17087 Description *string `json:"description,omitempty"` 17088 // Version - Version information. 17089 Version *string `json:"version,omitempty"` 17090 // ExtensionURL - Extension URL. 17091 ExtensionURL *string `json:"extensionUrl,omitempty"` 17092 // ProjectURL - Project URL. 17093 ProjectURL *string `json:"projectUrl,omitempty"` 17094 // IconURL - Icon URL. 17095 IconURL *string `json:"iconUrl,omitempty"` 17096 // LicenseURL - License URL. 17097 LicenseURL *string `json:"licenseUrl,omitempty"` 17098 // FeedURL - Feed URL. 17099 FeedURL *string `json:"feedUrl,omitempty"` 17100 // Authors - List of authors. 17101 Authors *[]string `json:"authors,omitempty"` 17102 // InstallationArgs - Installer command line parameters. 17103 InstallationArgs *string `json:"installationArgs,omitempty"` 17104 // PublishedDateTime - Published timestamp. 17105 PublishedDateTime *date.Time `json:"publishedDateTime,omitempty"` 17106 // DownloadCount - Count of downloads. 17107 DownloadCount *int32 `json:"downloadCount,omitempty"` 17108 // LocalIsLatestVersion - <code>true</code> if the local version is the latest version; <code>false</code> otherwise. 17109 LocalIsLatestVersion *bool `json:"localIsLatestVersion,omitempty"` 17110 // LocalPath - Local path. 17111 LocalPath *string `json:"localPath,omitempty"` 17112 // InstalledDateTime - Installed timestamp. 17113 InstalledDateTime *date.Time `json:"installedDateTime,omitempty"` 17114 // ProvisioningState - Provisioning state. 17115 ProvisioningState *string `json:"provisioningState,omitempty"` 17116 // Comment - Site Extension comment. 17117 Comment *string `json:"comment,omitempty"` 17118} 17119 17120// SiteInstance instance of an app. 17121type SiteInstance struct { 17122 // SiteInstanceProperties - SiteInstance resource specific properties 17123 *SiteInstanceProperties `json:"properties,omitempty"` 17124 // ID - READ-ONLY; Resource Id. 17125 ID *string `json:"id,omitempty"` 17126 // Name - READ-ONLY; Resource Name. 17127 Name *string `json:"name,omitempty"` 17128 // Kind - Kind of resource. 17129 Kind *string `json:"kind,omitempty"` 17130 // Type - READ-ONLY; Resource type. 17131 Type *string `json:"type,omitempty"` 17132} 17133 17134// MarshalJSON is the custom marshaler for SiteInstance. 17135func (si SiteInstance) MarshalJSON() ([]byte, error) { 17136 objectMap := make(map[string]interface{}) 17137 if si.SiteInstanceProperties != nil { 17138 objectMap["properties"] = si.SiteInstanceProperties 17139 } 17140 if si.Kind != nil { 17141 objectMap["kind"] = si.Kind 17142 } 17143 return json.Marshal(objectMap) 17144} 17145 17146// UnmarshalJSON is the custom unmarshaler for SiteInstance struct. 17147func (si *SiteInstance) UnmarshalJSON(body []byte) error { 17148 var m map[string]*json.RawMessage 17149 err := json.Unmarshal(body, &m) 17150 if err != nil { 17151 return err 17152 } 17153 for k, v := range m { 17154 switch k { 17155 case "properties": 17156 if v != nil { 17157 var siteInstanceProperties SiteInstanceProperties 17158 err = json.Unmarshal(*v, &siteInstanceProperties) 17159 if err != nil { 17160 return err 17161 } 17162 si.SiteInstanceProperties = &siteInstanceProperties 17163 } 17164 case "id": 17165 if v != nil { 17166 var ID string 17167 err = json.Unmarshal(*v, &ID) 17168 if err != nil { 17169 return err 17170 } 17171 si.ID = &ID 17172 } 17173 case "name": 17174 if v != nil { 17175 var name string 17176 err = json.Unmarshal(*v, &name) 17177 if err != nil { 17178 return err 17179 } 17180 si.Name = &name 17181 } 17182 case "kind": 17183 if v != nil { 17184 var kind string 17185 err = json.Unmarshal(*v, &kind) 17186 if err != nil { 17187 return err 17188 } 17189 si.Kind = &kind 17190 } 17191 case "type": 17192 if v != nil { 17193 var typeVar string 17194 err = json.Unmarshal(*v, &typeVar) 17195 if err != nil { 17196 return err 17197 } 17198 si.Type = &typeVar 17199 } 17200 } 17201 } 17202 17203 return nil 17204} 17205 17206// SiteInstanceProperties siteInstance resource specific properties 17207type SiteInstanceProperties struct { 17208 // Name - READ-ONLY; Name of instance. 17209 Name *string `json:"name,omitempty"` 17210} 17211 17212// SiteLimits metric limits set on an app. 17213type SiteLimits struct { 17214 // MaxPercentageCPU - Maximum allowed CPU usage percentage. 17215 MaxPercentageCPU *float64 `json:"maxPercentageCpu,omitempty"` 17216 // MaxMemoryInMb - Maximum allowed memory usage in MB. 17217 MaxMemoryInMb *int64 `json:"maxMemoryInMb,omitempty"` 17218 // MaxDiskSizeInMb - Maximum allowed disk size usage in MB. 17219 MaxDiskSizeInMb *int64 `json:"maxDiskSizeInMb,omitempty"` 17220} 17221 17222// SiteLogsConfig configuration of App Service site logs. 17223type SiteLogsConfig struct { 17224 autorest.Response `json:"-"` 17225 // SiteLogsConfigProperties - SiteLogsConfig resource specific properties 17226 *SiteLogsConfigProperties `json:"properties,omitempty"` 17227 // ID - READ-ONLY; Resource Id. 17228 ID *string `json:"id,omitempty"` 17229 // Name - READ-ONLY; Resource Name. 17230 Name *string `json:"name,omitempty"` 17231 // Kind - Kind of resource. 17232 Kind *string `json:"kind,omitempty"` 17233 // Type - READ-ONLY; Resource type. 17234 Type *string `json:"type,omitempty"` 17235} 17236 17237// MarshalJSON is the custom marshaler for SiteLogsConfig. 17238func (slc SiteLogsConfig) MarshalJSON() ([]byte, error) { 17239 objectMap := make(map[string]interface{}) 17240 if slc.SiteLogsConfigProperties != nil { 17241 objectMap["properties"] = slc.SiteLogsConfigProperties 17242 } 17243 if slc.Kind != nil { 17244 objectMap["kind"] = slc.Kind 17245 } 17246 return json.Marshal(objectMap) 17247} 17248 17249// UnmarshalJSON is the custom unmarshaler for SiteLogsConfig struct. 17250func (slc *SiteLogsConfig) UnmarshalJSON(body []byte) error { 17251 var m map[string]*json.RawMessage 17252 err := json.Unmarshal(body, &m) 17253 if err != nil { 17254 return err 17255 } 17256 for k, v := range m { 17257 switch k { 17258 case "properties": 17259 if v != nil { 17260 var siteLogsConfigProperties SiteLogsConfigProperties 17261 err = json.Unmarshal(*v, &siteLogsConfigProperties) 17262 if err != nil { 17263 return err 17264 } 17265 slc.SiteLogsConfigProperties = &siteLogsConfigProperties 17266 } 17267 case "id": 17268 if v != nil { 17269 var ID string 17270 err = json.Unmarshal(*v, &ID) 17271 if err != nil { 17272 return err 17273 } 17274 slc.ID = &ID 17275 } 17276 case "name": 17277 if v != nil { 17278 var name string 17279 err = json.Unmarshal(*v, &name) 17280 if err != nil { 17281 return err 17282 } 17283 slc.Name = &name 17284 } 17285 case "kind": 17286 if v != nil { 17287 var kind string 17288 err = json.Unmarshal(*v, &kind) 17289 if err != nil { 17290 return err 17291 } 17292 slc.Kind = &kind 17293 } 17294 case "type": 17295 if v != nil { 17296 var typeVar string 17297 err = json.Unmarshal(*v, &typeVar) 17298 if err != nil { 17299 return err 17300 } 17301 slc.Type = &typeVar 17302 } 17303 } 17304 } 17305 17306 return nil 17307} 17308 17309// SiteLogsConfigProperties siteLogsConfig resource specific properties 17310type SiteLogsConfigProperties struct { 17311 // ApplicationLogs - Application logs configuration. 17312 ApplicationLogs *ApplicationLogsConfig `json:"applicationLogs,omitempty"` 17313 // HTTPLogs - HTTP logs configuration. 17314 HTTPLogs *HTTPLogsConfig `json:"httpLogs,omitempty"` 17315 // FailedRequestsTracing - Failed requests tracing configuration. 17316 FailedRequestsTracing *EnabledConfig `json:"failedRequestsTracing,omitempty"` 17317 // DetailedErrorMessages - Detailed error messages configuration. 17318 DetailedErrorMessages *EnabledConfig `json:"detailedErrorMessages,omitempty"` 17319} 17320 17321// SiteMachineKey machineKey of an app. 17322type SiteMachineKey struct { 17323 // Validation - MachineKey validation. 17324 Validation *string `json:"validation,omitempty"` 17325 // ValidationKey - Validation key. 17326 ValidationKey *string `json:"validationKey,omitempty"` 17327 // Decryption - Algorithm used for decryption. 17328 Decryption *string `json:"decryption,omitempty"` 17329 // DecryptionKey - Decryption key. 17330 DecryptionKey *string `json:"decryptionKey,omitempty"` 17331} 17332 17333// SitePatchResource ARM resource for a site. 17334type SitePatchResource struct { 17335 // SitePatchResourceProperties - SitePatchResource resource specific properties 17336 *SitePatchResourceProperties `json:"properties,omitempty"` 17337 // ID - READ-ONLY; Resource Id. 17338 ID *string `json:"id,omitempty"` 17339 // Name - READ-ONLY; Resource Name. 17340 Name *string `json:"name,omitempty"` 17341 // Kind - Kind of resource. 17342 Kind *string `json:"kind,omitempty"` 17343 // Type - READ-ONLY; Resource type. 17344 Type *string `json:"type,omitempty"` 17345} 17346 17347// MarshalJSON is the custom marshaler for SitePatchResource. 17348func (spr SitePatchResource) MarshalJSON() ([]byte, error) { 17349 objectMap := make(map[string]interface{}) 17350 if spr.SitePatchResourceProperties != nil { 17351 objectMap["properties"] = spr.SitePatchResourceProperties 17352 } 17353 if spr.Kind != nil { 17354 objectMap["kind"] = spr.Kind 17355 } 17356 return json.Marshal(objectMap) 17357} 17358 17359// UnmarshalJSON is the custom unmarshaler for SitePatchResource struct. 17360func (spr *SitePatchResource) UnmarshalJSON(body []byte) error { 17361 var m map[string]*json.RawMessage 17362 err := json.Unmarshal(body, &m) 17363 if err != nil { 17364 return err 17365 } 17366 for k, v := range m { 17367 switch k { 17368 case "properties": 17369 if v != nil { 17370 var sitePatchResourceProperties SitePatchResourceProperties 17371 err = json.Unmarshal(*v, &sitePatchResourceProperties) 17372 if err != nil { 17373 return err 17374 } 17375 spr.SitePatchResourceProperties = &sitePatchResourceProperties 17376 } 17377 case "id": 17378 if v != nil { 17379 var ID string 17380 err = json.Unmarshal(*v, &ID) 17381 if err != nil { 17382 return err 17383 } 17384 spr.ID = &ID 17385 } 17386 case "name": 17387 if v != nil { 17388 var name string 17389 err = json.Unmarshal(*v, &name) 17390 if err != nil { 17391 return err 17392 } 17393 spr.Name = &name 17394 } 17395 case "kind": 17396 if v != nil { 17397 var kind string 17398 err = json.Unmarshal(*v, &kind) 17399 if err != nil { 17400 return err 17401 } 17402 spr.Kind = &kind 17403 } 17404 case "type": 17405 if v != nil { 17406 var typeVar string 17407 err = json.Unmarshal(*v, &typeVar) 17408 if err != nil { 17409 return err 17410 } 17411 spr.Type = &typeVar 17412 } 17413 } 17414 } 17415 17416 return nil 17417} 17418 17419// SitePatchResourceProperties sitePatchResource resource specific properties 17420type SitePatchResourceProperties struct { 17421 // State - READ-ONLY; Current state of the app. 17422 State *string `json:"state,omitempty"` 17423 // HostNames - READ-ONLY; Hostnames associated with the app. 17424 HostNames *[]string `json:"hostNames,omitempty"` 17425 // RepositorySiteName - READ-ONLY; Name of the repository site. 17426 RepositorySiteName *string `json:"repositorySiteName,omitempty"` 17427 // UsageState - READ-ONLY; State indicating whether the app has exceeded its quota usage. Read-only. Possible values include: 'UsageStateNormal', 'UsageStateExceeded' 17428 UsageState UsageState `json:"usageState,omitempty"` 17429 // Enabled - <code>true</code> if the app is enabled; otherwise, <code>false</code>. Setting this value to false disables the app (takes the app offline). 17430 Enabled *bool `json:"enabled,omitempty"` 17431 // EnabledHostNames - READ-ONLY; Enabled hostnames for the app.Hostnames need to be assigned (see HostNames) AND enabled. Otherwise, 17432 // the app is not served on those hostnames. 17433 EnabledHostNames *[]string `json:"enabledHostNames,omitempty"` 17434 // AvailabilityState - READ-ONLY; Management information availability state for the app. Possible values include: 'Normal', 'Limited', 'DisasterRecoveryMode' 17435 AvailabilityState SiteAvailabilityState `json:"availabilityState,omitempty"` 17436 // HostNameSslStates - Hostname SSL states are used to manage the SSL bindings for app's hostnames. 17437 HostNameSslStates *[]HostNameSslState `json:"hostNameSslStates,omitempty"` 17438 // ServerFarmID - Resource ID of the associated App Service plan, formatted as: "/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}". 17439 ServerFarmID *string `json:"serverFarmId,omitempty"` 17440 // Reserved - <code>true</code> if reserved; otherwise, <code>false</code>. 17441 Reserved *bool `json:"reserved,omitempty"` 17442 // LastModifiedTimeUtc - READ-ONLY; Last time the app was modified, in UTC. Read-only. 17443 LastModifiedTimeUtc *date.Time `json:"lastModifiedTimeUtc,omitempty"` 17444 // SiteConfig - Configuration of the app. 17445 SiteConfig *SiteConfig `json:"siteConfig,omitempty"` 17446 // TrafficManagerHostNames - READ-ONLY; Azure Traffic Manager hostnames associated with the app. Read-only. 17447 TrafficManagerHostNames *[]string `json:"trafficManagerHostNames,omitempty"` 17448 // ScmSiteAlsoStopped - <code>true</code> to stop SCM (KUDU) site when the app is stopped; otherwise, <code>false</code>. The default is <code>false</code>. 17449 ScmSiteAlsoStopped *bool `json:"scmSiteAlsoStopped,omitempty"` 17450 // TargetSwapSlot - READ-ONLY; Specifies which deployment slot this app will swap into. Read-only. 17451 TargetSwapSlot *string `json:"targetSwapSlot,omitempty"` 17452 // HostingEnvironmentProfile - App Service Environment to use for the app. 17453 HostingEnvironmentProfile *HostingEnvironmentProfile `json:"hostingEnvironmentProfile,omitempty"` 17454 // ClientAffinityEnabled - <code>true</code> to enable client affinity; <code>false</code> to stop sending session affinity cookies, which route client requests in the same session to the same instance. Default is <code>true</code>. 17455 ClientAffinityEnabled *bool `json:"clientAffinityEnabled,omitempty"` 17456 // ClientCertEnabled - <code>true</code> to enable client certificate authentication (TLS mutual authentication); otherwise, <code>false</code>. Default is <code>false</code>. 17457 ClientCertEnabled *bool `json:"clientCertEnabled,omitempty"` 17458 // HostNamesDisabled - <code>true</code> to disable the public hostnames of the app; otherwise, <code>false</code>. 17459 // If <code>true</code>, the app is only accessible via API management process. 17460 HostNamesDisabled *bool `json:"hostNamesDisabled,omitempty"` 17461 // OutboundIPAddresses - READ-ONLY; List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from tenants that site can be hosted with current settings. Read-only. 17462 OutboundIPAddresses *string `json:"outboundIpAddresses,omitempty"` 17463 // PossibleOutboundIPAddresses - READ-ONLY; List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from all tenants. Read-only. 17464 PossibleOutboundIPAddresses *string `json:"possibleOutboundIpAddresses,omitempty"` 17465 // ContainerSize - Size of the function container. 17466 ContainerSize *int32 `json:"containerSize,omitempty"` 17467 // DailyMemoryTimeQuota - Maximum allowed daily memory-time quota (applicable on dynamic apps only). 17468 DailyMemoryTimeQuota *int32 `json:"dailyMemoryTimeQuota,omitempty"` 17469 // SuspendedTill - READ-ONLY; App suspended till in case memory-time quota is exceeded. 17470 SuspendedTill *date.Time `json:"suspendedTill,omitempty"` 17471 // MaxNumberOfWorkers - READ-ONLY; Maximum number of workers. 17472 // This only applies to Functions container. 17473 MaxNumberOfWorkers *int32 `json:"maxNumberOfWorkers,omitempty"` 17474 // CloningInfo - If specified during app creation, the app is cloned from a source app. 17475 CloningInfo *CloningInfo `json:"cloningInfo,omitempty"` 17476 // SnapshotInfo - If specified during app creation, the app is created from a previous snapshot. 17477 SnapshotInfo *SnapshotRecoveryRequest `json:"snapshotInfo,omitempty"` 17478 // ResourceGroup - READ-ONLY; Name of the resource group the app belongs to. Read-only. 17479 ResourceGroup *string `json:"resourceGroup,omitempty"` 17480 // IsDefaultContainer - READ-ONLY; <code>true</code> if the app is a default container; otherwise, <code>false</code>. 17481 IsDefaultContainer *bool `json:"isDefaultContainer,omitempty"` 17482 // DefaultHostName - READ-ONLY; Default hostname of the app. Read-only. 17483 DefaultHostName *string `json:"defaultHostName,omitempty"` 17484 // SlotSwapStatus - READ-ONLY; Status of the last deployment slot swap operation. 17485 SlotSwapStatus *SlotSwapStatus `json:"slotSwapStatus,omitempty"` 17486 // HTTPSOnly - HttpsOnly: configures a web site to accept only https requests. Issues redirect for 17487 // http requests 17488 HTTPSOnly *bool `json:"httpsOnly,omitempty"` 17489} 17490 17491// SitePhpErrorLogFlag used for getting PHP error logging flag. 17492type SitePhpErrorLogFlag struct { 17493 autorest.Response `json:"-"` 17494 // SitePhpErrorLogFlagProperties - SitePhpErrorLogFlag resource specific properties 17495 *SitePhpErrorLogFlagProperties `json:"properties,omitempty"` 17496 // ID - READ-ONLY; Resource Id. 17497 ID *string `json:"id,omitempty"` 17498 // Name - READ-ONLY; Resource Name. 17499 Name *string `json:"name,omitempty"` 17500 // Kind - Kind of resource. 17501 Kind *string `json:"kind,omitempty"` 17502 // Type - READ-ONLY; Resource type. 17503 Type *string `json:"type,omitempty"` 17504} 17505 17506// MarshalJSON is the custom marshaler for SitePhpErrorLogFlag. 17507func (spelf SitePhpErrorLogFlag) MarshalJSON() ([]byte, error) { 17508 objectMap := make(map[string]interface{}) 17509 if spelf.SitePhpErrorLogFlagProperties != nil { 17510 objectMap["properties"] = spelf.SitePhpErrorLogFlagProperties 17511 } 17512 if spelf.Kind != nil { 17513 objectMap["kind"] = spelf.Kind 17514 } 17515 return json.Marshal(objectMap) 17516} 17517 17518// UnmarshalJSON is the custom unmarshaler for SitePhpErrorLogFlag struct. 17519func (spelf *SitePhpErrorLogFlag) UnmarshalJSON(body []byte) error { 17520 var m map[string]*json.RawMessage 17521 err := json.Unmarshal(body, &m) 17522 if err != nil { 17523 return err 17524 } 17525 for k, v := range m { 17526 switch k { 17527 case "properties": 17528 if v != nil { 17529 var sitePhpErrorLogFlagProperties SitePhpErrorLogFlagProperties 17530 err = json.Unmarshal(*v, &sitePhpErrorLogFlagProperties) 17531 if err != nil { 17532 return err 17533 } 17534 spelf.SitePhpErrorLogFlagProperties = &sitePhpErrorLogFlagProperties 17535 } 17536 case "id": 17537 if v != nil { 17538 var ID string 17539 err = json.Unmarshal(*v, &ID) 17540 if err != nil { 17541 return err 17542 } 17543 spelf.ID = &ID 17544 } 17545 case "name": 17546 if v != nil { 17547 var name string 17548 err = json.Unmarshal(*v, &name) 17549 if err != nil { 17550 return err 17551 } 17552 spelf.Name = &name 17553 } 17554 case "kind": 17555 if v != nil { 17556 var kind string 17557 err = json.Unmarshal(*v, &kind) 17558 if err != nil { 17559 return err 17560 } 17561 spelf.Kind = &kind 17562 } 17563 case "type": 17564 if v != nil { 17565 var typeVar string 17566 err = json.Unmarshal(*v, &typeVar) 17567 if err != nil { 17568 return err 17569 } 17570 spelf.Type = &typeVar 17571 } 17572 } 17573 } 17574 17575 return nil 17576} 17577 17578// SitePhpErrorLogFlagProperties sitePhpErrorLogFlag resource specific properties 17579type SitePhpErrorLogFlagProperties struct { 17580 // LocalLogErrors - Local log_errors setting. 17581 LocalLogErrors *string `json:"localLogErrors,omitempty"` 17582 // MasterLogErrors - Master log_errors setting. 17583 MasterLogErrors *string `json:"masterLogErrors,omitempty"` 17584 // LocalLogErrorsMaxLength - Local log_errors_max_len setting. 17585 LocalLogErrorsMaxLength *string `json:"localLogErrorsMaxLength,omitempty"` 17586 // MasterLogErrorsMaxLength - Master log_errors_max_len setting. 17587 MasterLogErrorsMaxLength *string `json:"masterLogErrorsMaxLength,omitempty"` 17588} 17589 17590// SiteProperties site resource specific properties 17591type SiteProperties struct { 17592 // State - READ-ONLY; Current state of the app. 17593 State *string `json:"state,omitempty"` 17594 // HostNames - READ-ONLY; Hostnames associated with the app. 17595 HostNames *[]string `json:"hostNames,omitempty"` 17596 // RepositorySiteName - READ-ONLY; Name of the repository site. 17597 RepositorySiteName *string `json:"repositorySiteName,omitempty"` 17598 // UsageState - READ-ONLY; State indicating whether the app has exceeded its quota usage. Read-only. Possible values include: 'UsageStateNormal', 'UsageStateExceeded' 17599 UsageState UsageState `json:"usageState,omitempty"` 17600 // Enabled - <code>true</code> if the app is enabled; otherwise, <code>false</code>. Setting this value to false disables the app (takes the app offline). 17601 Enabled *bool `json:"enabled,omitempty"` 17602 // EnabledHostNames - READ-ONLY; Enabled hostnames for the app.Hostnames need to be assigned (see HostNames) AND enabled. Otherwise, 17603 // the app is not served on those hostnames. 17604 EnabledHostNames *[]string `json:"enabledHostNames,omitempty"` 17605 // AvailabilityState - READ-ONLY; Management information availability state for the app. Possible values include: 'Normal', 'Limited', 'DisasterRecoveryMode' 17606 AvailabilityState SiteAvailabilityState `json:"availabilityState,omitempty"` 17607 // HostNameSslStates - Hostname SSL states are used to manage the SSL bindings for app's hostnames. 17608 HostNameSslStates *[]HostNameSslState `json:"hostNameSslStates,omitempty"` 17609 // ServerFarmID - Resource ID of the associated App Service plan, formatted as: "/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}". 17610 ServerFarmID *string `json:"serverFarmId,omitempty"` 17611 // Reserved - <code>true</code> if reserved; otherwise, <code>false</code>. 17612 Reserved *bool `json:"reserved,omitempty"` 17613 // LastModifiedTimeUtc - READ-ONLY; Last time the app was modified, in UTC. Read-only. 17614 LastModifiedTimeUtc *date.Time `json:"lastModifiedTimeUtc,omitempty"` 17615 // SiteConfig - Configuration of the app. 17616 SiteConfig *SiteConfig `json:"siteConfig,omitempty"` 17617 // TrafficManagerHostNames - READ-ONLY; Azure Traffic Manager hostnames associated with the app. Read-only. 17618 TrafficManagerHostNames *[]string `json:"trafficManagerHostNames,omitempty"` 17619 // ScmSiteAlsoStopped - <code>true</code> to stop SCM (KUDU) site when the app is stopped; otherwise, <code>false</code>. The default is <code>false</code>. 17620 ScmSiteAlsoStopped *bool `json:"scmSiteAlsoStopped,omitempty"` 17621 // TargetSwapSlot - READ-ONLY; Specifies which deployment slot this app will swap into. Read-only. 17622 TargetSwapSlot *string `json:"targetSwapSlot,omitempty"` 17623 // HostingEnvironmentProfile - App Service Environment to use for the app. 17624 HostingEnvironmentProfile *HostingEnvironmentProfile `json:"hostingEnvironmentProfile,omitempty"` 17625 // ClientAffinityEnabled - <code>true</code> to enable client affinity; <code>false</code> to stop sending session affinity cookies, which route client requests in the same session to the same instance. Default is <code>true</code>. 17626 ClientAffinityEnabled *bool `json:"clientAffinityEnabled,omitempty"` 17627 // ClientCertEnabled - <code>true</code> to enable client certificate authentication (TLS mutual authentication); otherwise, <code>false</code>. Default is <code>false</code>. 17628 ClientCertEnabled *bool `json:"clientCertEnabled,omitempty"` 17629 // HostNamesDisabled - <code>true</code> to disable the public hostnames of the app; otherwise, <code>false</code>. 17630 // If <code>true</code>, the app is only accessible via API management process. 17631 HostNamesDisabled *bool `json:"hostNamesDisabled,omitempty"` 17632 // OutboundIPAddresses - READ-ONLY; List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from tenants that site can be hosted with current settings. Read-only. 17633 OutboundIPAddresses *string `json:"outboundIpAddresses,omitempty"` 17634 // PossibleOutboundIPAddresses - READ-ONLY; List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from all tenants. Read-only. 17635 PossibleOutboundIPAddresses *string `json:"possibleOutboundIpAddresses,omitempty"` 17636 // ContainerSize - Size of the function container. 17637 ContainerSize *int32 `json:"containerSize,omitempty"` 17638 // DailyMemoryTimeQuota - Maximum allowed daily memory-time quota (applicable on dynamic apps only). 17639 DailyMemoryTimeQuota *int32 `json:"dailyMemoryTimeQuota,omitempty"` 17640 // SuspendedTill - READ-ONLY; App suspended till in case memory-time quota is exceeded. 17641 SuspendedTill *date.Time `json:"suspendedTill,omitempty"` 17642 // MaxNumberOfWorkers - READ-ONLY; Maximum number of workers. 17643 // This only applies to Functions container. 17644 MaxNumberOfWorkers *int32 `json:"maxNumberOfWorkers,omitempty"` 17645 // CloningInfo - If specified during app creation, the app is cloned from a source app. 17646 CloningInfo *CloningInfo `json:"cloningInfo,omitempty"` 17647 // SnapshotInfo - If specified during app creation, the app is created from a previous snapshot. 17648 SnapshotInfo *SnapshotRecoveryRequest `json:"snapshotInfo,omitempty"` 17649 // ResourceGroup - READ-ONLY; Name of the resource group the app belongs to. Read-only. 17650 ResourceGroup *string `json:"resourceGroup,omitempty"` 17651 // IsDefaultContainer - READ-ONLY; <code>true</code> if the app is a default container; otherwise, <code>false</code>. 17652 IsDefaultContainer *bool `json:"isDefaultContainer,omitempty"` 17653 // DefaultHostName - READ-ONLY; Default hostname of the app. Read-only. 17654 DefaultHostName *string `json:"defaultHostName,omitempty"` 17655 // SlotSwapStatus - READ-ONLY; Status of the last deployment slot swap operation. 17656 SlotSwapStatus *SlotSwapStatus `json:"slotSwapStatus,omitempty"` 17657 // HTTPSOnly - HttpsOnly: configures a web site to accept only https requests. Issues redirect for 17658 // http requests 17659 HTTPSOnly *bool `json:"httpsOnly,omitempty"` 17660} 17661 17662// SiteSeal site seal 17663type SiteSeal struct { 17664 autorest.Response `json:"-"` 17665 // HTML - HTML snippet 17666 HTML *string `json:"html,omitempty"` 17667} 17668 17669// SiteSealRequest site seal request. 17670type SiteSealRequest struct { 17671 // LightTheme - If <code>true</code> use the light color theme for site seal; otherwise, use the default color theme. 17672 LightTheme *bool `json:"lightTheme,omitempty"` 17673 // Locale - Locale of site seal. 17674 Locale *string `json:"locale,omitempty"` 17675} 17676 17677// SiteSourceControl source control configuration for an app. 17678type SiteSourceControl struct { 17679 autorest.Response `json:"-"` 17680 // SiteSourceControlProperties - SiteSourceControl resource specific properties 17681 *SiteSourceControlProperties `json:"properties,omitempty"` 17682 // ID - READ-ONLY; Resource Id. 17683 ID *string `json:"id,omitempty"` 17684 // Name - READ-ONLY; Resource Name. 17685 Name *string `json:"name,omitempty"` 17686 // Kind - Kind of resource. 17687 Kind *string `json:"kind,omitempty"` 17688 // Type - READ-ONLY; Resource type. 17689 Type *string `json:"type,omitempty"` 17690} 17691 17692// MarshalJSON is the custom marshaler for SiteSourceControl. 17693func (ssc SiteSourceControl) MarshalJSON() ([]byte, error) { 17694 objectMap := make(map[string]interface{}) 17695 if ssc.SiteSourceControlProperties != nil { 17696 objectMap["properties"] = ssc.SiteSourceControlProperties 17697 } 17698 if ssc.Kind != nil { 17699 objectMap["kind"] = ssc.Kind 17700 } 17701 return json.Marshal(objectMap) 17702} 17703 17704// UnmarshalJSON is the custom unmarshaler for SiteSourceControl struct. 17705func (ssc *SiteSourceControl) UnmarshalJSON(body []byte) error { 17706 var m map[string]*json.RawMessage 17707 err := json.Unmarshal(body, &m) 17708 if err != nil { 17709 return err 17710 } 17711 for k, v := range m { 17712 switch k { 17713 case "properties": 17714 if v != nil { 17715 var siteSourceControlProperties SiteSourceControlProperties 17716 err = json.Unmarshal(*v, &siteSourceControlProperties) 17717 if err != nil { 17718 return err 17719 } 17720 ssc.SiteSourceControlProperties = &siteSourceControlProperties 17721 } 17722 case "id": 17723 if v != nil { 17724 var ID string 17725 err = json.Unmarshal(*v, &ID) 17726 if err != nil { 17727 return err 17728 } 17729 ssc.ID = &ID 17730 } 17731 case "name": 17732 if v != nil { 17733 var name string 17734 err = json.Unmarshal(*v, &name) 17735 if err != nil { 17736 return err 17737 } 17738 ssc.Name = &name 17739 } 17740 case "kind": 17741 if v != nil { 17742 var kind string 17743 err = json.Unmarshal(*v, &kind) 17744 if err != nil { 17745 return err 17746 } 17747 ssc.Kind = &kind 17748 } 17749 case "type": 17750 if v != nil { 17751 var typeVar string 17752 err = json.Unmarshal(*v, &typeVar) 17753 if err != nil { 17754 return err 17755 } 17756 ssc.Type = &typeVar 17757 } 17758 } 17759 } 17760 17761 return nil 17762} 17763 17764// SiteSourceControlProperties siteSourceControl resource specific properties 17765type SiteSourceControlProperties struct { 17766 // RepoURL - Repository or source control URL. 17767 RepoURL *string `json:"repoUrl,omitempty"` 17768 // Branch - Name of branch to use for deployment. 17769 Branch *string `json:"branch,omitempty"` 17770 // IsManualIntegration - <code>true</code> to limit to manual integration; <code>false</code> to enable continuous integration (which configures webhooks into online repos like GitHub). 17771 IsManualIntegration *bool `json:"isManualIntegration,omitempty"` 17772 // DeploymentRollbackEnabled - <code>true</code> to enable deployment rollback; otherwise, <code>false</code>. 17773 DeploymentRollbackEnabled *bool `json:"deploymentRollbackEnabled,omitempty"` 17774 // IsMercurial - <code>true</code> for a Mercurial repository; <code>false</code> for a Git repository. 17775 IsMercurial *bool `json:"isMercurial,omitempty"` 17776} 17777 17778// SkuCapacity description of the App Service plan scale options. 17779type SkuCapacity struct { 17780 // Minimum - Minimum number of workers for this App Service plan SKU. 17781 Minimum *int32 `json:"minimum,omitempty"` 17782 // Maximum - Maximum number of workers for this App Service plan SKU. 17783 Maximum *int32 `json:"maximum,omitempty"` 17784 // Default - Default number of workers for this App Service plan SKU. 17785 Default *int32 `json:"default,omitempty"` 17786 // ScaleType - Available scale configurations for an App Service plan. 17787 ScaleType *string `json:"scaleType,omitempty"` 17788} 17789 17790// SkuDescription description of a SKU for a scalable resource. 17791type SkuDescription struct { 17792 // Name - Name of the resource SKU. 17793 Name *string `json:"name,omitempty"` 17794 // Tier - Service tier of the resource SKU. 17795 Tier *string `json:"tier,omitempty"` 17796 // Size - Size specifier of the resource SKU. 17797 Size *string `json:"size,omitempty"` 17798 // Family - Family code of the resource SKU. 17799 Family *string `json:"family,omitempty"` 17800 // Capacity - Current number of instances assigned to the resource. 17801 Capacity *int32 `json:"capacity,omitempty"` 17802 // SkuCapacity - Min, max, and default scale values of the SKU. 17803 SkuCapacity *SkuCapacity `json:"skuCapacity,omitempty"` 17804 // Locations - Locations of the SKU. 17805 Locations *[]string `json:"locations,omitempty"` 17806 // Capabilities - Capabilities of the SKU, e.g., is traffic manager enabled? 17807 Capabilities *[]Capability `json:"capabilities,omitempty"` 17808} 17809 17810// SkuInfo SKU discovery information. 17811type SkuInfo struct { 17812 // ResourceType - Resource type that this SKU applies to. 17813 ResourceType *string `json:"resourceType,omitempty"` 17814 // Sku - Name and tier of the SKU. 17815 Sku *SkuDescription `json:"sku,omitempty"` 17816 // Capacity - Min, max, and default scale values of the SKU. 17817 Capacity *SkuCapacity `json:"capacity,omitempty"` 17818} 17819 17820// SkuInfoCollection collection of SKU information. 17821type SkuInfoCollection struct { 17822 autorest.Response `json:"-"` 17823 // Value - Collection of resources. 17824 Value *[]SkuInfo `json:"value,omitempty"` 17825 // NextLink - READ-ONLY; Link to next page of resources. 17826 NextLink *string `json:"nextLink,omitempty"` 17827} 17828 17829// SkuInfoCollectionIterator provides access to a complete listing of SkuInfo values. 17830type SkuInfoCollectionIterator struct { 17831 i int 17832 page SkuInfoCollectionPage 17833} 17834 17835// NextWithContext advances to the next value. If there was an error making 17836// the request the iterator does not advance and the error is returned. 17837func (iter *SkuInfoCollectionIterator) NextWithContext(ctx context.Context) (err error) { 17838 if tracing.IsEnabled() { 17839 ctx = tracing.StartSpan(ctx, fqdn+"/SkuInfoCollectionIterator.NextWithContext") 17840 defer func() { 17841 sc := -1 17842 if iter.Response().Response.Response != nil { 17843 sc = iter.Response().Response.Response.StatusCode 17844 } 17845 tracing.EndSpan(ctx, sc, err) 17846 }() 17847 } 17848 iter.i++ 17849 if iter.i < len(iter.page.Values()) { 17850 return nil 17851 } 17852 err = iter.page.NextWithContext(ctx) 17853 if err != nil { 17854 iter.i-- 17855 return err 17856 } 17857 iter.i = 0 17858 return nil 17859} 17860 17861// Next advances to the next value. If there was an error making 17862// the request the iterator does not advance and the error is returned. 17863// Deprecated: Use NextWithContext() instead. 17864func (iter *SkuInfoCollectionIterator) Next() error { 17865 return iter.NextWithContext(context.Background()) 17866} 17867 17868// NotDone returns true if the enumeration should be started or is not yet complete. 17869func (iter SkuInfoCollectionIterator) NotDone() bool { 17870 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 17871} 17872 17873// Response returns the raw server response from the last page request. 17874func (iter SkuInfoCollectionIterator) Response() SkuInfoCollection { 17875 return iter.page.Response() 17876} 17877 17878// Value returns the current value or a zero-initialized value if the 17879// iterator has advanced beyond the end of the collection. 17880func (iter SkuInfoCollectionIterator) Value() SkuInfo { 17881 if !iter.page.NotDone() { 17882 return SkuInfo{} 17883 } 17884 return iter.page.Values()[iter.i] 17885} 17886 17887// Creates a new instance of the SkuInfoCollectionIterator type. 17888func NewSkuInfoCollectionIterator(page SkuInfoCollectionPage) SkuInfoCollectionIterator { 17889 return SkuInfoCollectionIterator{page: page} 17890} 17891 17892// IsEmpty returns true if the ListResult contains no values. 17893func (sic SkuInfoCollection) IsEmpty() bool { 17894 return sic.Value == nil || len(*sic.Value) == 0 17895} 17896 17897// skuInfoCollectionPreparer prepares a request to retrieve the next set of results. 17898// It returns nil if no more results exist. 17899func (sic SkuInfoCollection) skuInfoCollectionPreparer(ctx context.Context) (*http.Request, error) { 17900 if sic.NextLink == nil || len(to.String(sic.NextLink)) < 1 { 17901 return nil, nil 17902 } 17903 return autorest.Prepare((&http.Request{}).WithContext(ctx), 17904 autorest.AsJSON(), 17905 autorest.AsGet(), 17906 autorest.WithBaseURL(to.String(sic.NextLink))) 17907} 17908 17909// SkuInfoCollectionPage contains a page of SkuInfo values. 17910type SkuInfoCollectionPage struct { 17911 fn func(context.Context, SkuInfoCollection) (SkuInfoCollection, error) 17912 sic SkuInfoCollection 17913} 17914 17915// NextWithContext advances to the next page of values. If there was an error making 17916// the request the page does not advance and the error is returned. 17917func (page *SkuInfoCollectionPage) NextWithContext(ctx context.Context) (err error) { 17918 if tracing.IsEnabled() { 17919 ctx = tracing.StartSpan(ctx, fqdn+"/SkuInfoCollectionPage.NextWithContext") 17920 defer func() { 17921 sc := -1 17922 if page.Response().Response.Response != nil { 17923 sc = page.Response().Response.Response.StatusCode 17924 } 17925 tracing.EndSpan(ctx, sc, err) 17926 }() 17927 } 17928 next, err := page.fn(ctx, page.sic) 17929 if err != nil { 17930 return err 17931 } 17932 page.sic = next 17933 return nil 17934} 17935 17936// Next advances to the next page of values. If there was an error making 17937// the request the page does not advance and the error is returned. 17938// Deprecated: Use NextWithContext() instead. 17939func (page *SkuInfoCollectionPage) Next() error { 17940 return page.NextWithContext(context.Background()) 17941} 17942 17943// NotDone returns true if the page enumeration should be started or is not yet complete. 17944func (page SkuInfoCollectionPage) NotDone() bool { 17945 return !page.sic.IsEmpty() 17946} 17947 17948// Response returns the raw server response from the last page request. 17949func (page SkuInfoCollectionPage) Response() SkuInfoCollection { 17950 return page.sic 17951} 17952 17953// Values returns the slice of values for the current page or nil if there are no values. 17954func (page SkuInfoCollectionPage) Values() []SkuInfo { 17955 if page.sic.IsEmpty() { 17956 return nil 17957 } 17958 return *page.sic.Value 17959} 17960 17961// Creates a new instance of the SkuInfoCollectionPage type. 17962func NewSkuInfoCollectionPage(getNextPage func(context.Context, SkuInfoCollection) (SkuInfoCollection, error)) SkuInfoCollectionPage { 17963 return SkuInfoCollectionPage{fn: getNextPage} 17964} 17965 17966// SkuInfos collection of SKU information. 17967type SkuInfos struct { 17968 autorest.Response `json:"-"` 17969 // ResourceType - Resource type that this SKU applies to. 17970 ResourceType *string `json:"resourceType,omitempty"` 17971 // Skus - List of SKUs the subscription is able to use. 17972 Skus *[]GlobalCsmSkuDescription `json:"skus,omitempty"` 17973} 17974 17975// SlotConfigNames names for connection strings and application settings to be marked as sticky to the 17976// deployment slot and not moved during a swap operation. 17977// This is valid for all deployment slots in an app. 17978type SlotConfigNames struct { 17979 // ConnectionStringNames - List of connection string names. 17980 ConnectionStringNames *[]string `json:"connectionStringNames,omitempty"` 17981 // AppSettingNames - List of application settings names. 17982 AppSettingNames *[]string `json:"appSettingNames,omitempty"` 17983} 17984 17985// SlotConfigNamesResource slot Config names azure resource. 17986type SlotConfigNamesResource struct { 17987 autorest.Response `json:"-"` 17988 // SlotConfigNames - Core resource properties 17989 *SlotConfigNames `json:"properties,omitempty"` 17990 // ID - READ-ONLY; Resource Id. 17991 ID *string `json:"id,omitempty"` 17992 // Name - READ-ONLY; Resource Name. 17993 Name *string `json:"name,omitempty"` 17994 // Kind - Kind of resource. 17995 Kind *string `json:"kind,omitempty"` 17996 // Type - READ-ONLY; Resource type. 17997 Type *string `json:"type,omitempty"` 17998} 17999 18000// MarshalJSON is the custom marshaler for SlotConfigNamesResource. 18001func (scnr SlotConfigNamesResource) MarshalJSON() ([]byte, error) { 18002 objectMap := make(map[string]interface{}) 18003 if scnr.SlotConfigNames != nil { 18004 objectMap["properties"] = scnr.SlotConfigNames 18005 } 18006 if scnr.Kind != nil { 18007 objectMap["kind"] = scnr.Kind 18008 } 18009 return json.Marshal(objectMap) 18010} 18011 18012// UnmarshalJSON is the custom unmarshaler for SlotConfigNamesResource struct. 18013func (scnr *SlotConfigNamesResource) UnmarshalJSON(body []byte) error { 18014 var m map[string]*json.RawMessage 18015 err := json.Unmarshal(body, &m) 18016 if err != nil { 18017 return err 18018 } 18019 for k, v := range m { 18020 switch k { 18021 case "properties": 18022 if v != nil { 18023 var slotConfigNames SlotConfigNames 18024 err = json.Unmarshal(*v, &slotConfigNames) 18025 if err != nil { 18026 return err 18027 } 18028 scnr.SlotConfigNames = &slotConfigNames 18029 } 18030 case "id": 18031 if v != nil { 18032 var ID string 18033 err = json.Unmarshal(*v, &ID) 18034 if err != nil { 18035 return err 18036 } 18037 scnr.ID = &ID 18038 } 18039 case "name": 18040 if v != nil { 18041 var name string 18042 err = json.Unmarshal(*v, &name) 18043 if err != nil { 18044 return err 18045 } 18046 scnr.Name = &name 18047 } 18048 case "kind": 18049 if v != nil { 18050 var kind string 18051 err = json.Unmarshal(*v, &kind) 18052 if err != nil { 18053 return err 18054 } 18055 scnr.Kind = &kind 18056 } 18057 case "type": 18058 if v != nil { 18059 var typeVar string 18060 err = json.Unmarshal(*v, &typeVar) 18061 if err != nil { 18062 return err 18063 } 18064 scnr.Type = &typeVar 18065 } 18066 } 18067 } 18068 18069 return nil 18070} 18071 18072// SlotDifference a setting difference between two deployment slots of an app. 18073type SlotDifference struct { 18074 // SlotDifferenceProperties - SlotDifference resource specific properties 18075 *SlotDifferenceProperties `json:"properties,omitempty"` 18076 // ID - READ-ONLY; Resource Id. 18077 ID *string `json:"id,omitempty"` 18078 // Name - READ-ONLY; Resource Name. 18079 Name *string `json:"name,omitempty"` 18080 // Kind - Kind of resource. 18081 Kind *string `json:"kind,omitempty"` 18082 // Type - READ-ONLY; Resource type. 18083 Type *string `json:"type,omitempty"` 18084} 18085 18086// MarshalJSON is the custom marshaler for SlotDifference. 18087func (sd SlotDifference) MarshalJSON() ([]byte, error) { 18088 objectMap := make(map[string]interface{}) 18089 if sd.SlotDifferenceProperties != nil { 18090 objectMap["properties"] = sd.SlotDifferenceProperties 18091 } 18092 if sd.Kind != nil { 18093 objectMap["kind"] = sd.Kind 18094 } 18095 return json.Marshal(objectMap) 18096} 18097 18098// UnmarshalJSON is the custom unmarshaler for SlotDifference struct. 18099func (sd *SlotDifference) UnmarshalJSON(body []byte) error { 18100 var m map[string]*json.RawMessage 18101 err := json.Unmarshal(body, &m) 18102 if err != nil { 18103 return err 18104 } 18105 for k, v := range m { 18106 switch k { 18107 case "properties": 18108 if v != nil { 18109 var slotDifferenceProperties SlotDifferenceProperties 18110 err = json.Unmarshal(*v, &slotDifferenceProperties) 18111 if err != nil { 18112 return err 18113 } 18114 sd.SlotDifferenceProperties = &slotDifferenceProperties 18115 } 18116 case "id": 18117 if v != nil { 18118 var ID string 18119 err = json.Unmarshal(*v, &ID) 18120 if err != nil { 18121 return err 18122 } 18123 sd.ID = &ID 18124 } 18125 case "name": 18126 if v != nil { 18127 var name string 18128 err = json.Unmarshal(*v, &name) 18129 if err != nil { 18130 return err 18131 } 18132 sd.Name = &name 18133 } 18134 case "kind": 18135 if v != nil { 18136 var kind string 18137 err = json.Unmarshal(*v, &kind) 18138 if err != nil { 18139 return err 18140 } 18141 sd.Kind = &kind 18142 } 18143 case "type": 18144 if v != nil { 18145 var typeVar string 18146 err = json.Unmarshal(*v, &typeVar) 18147 if err != nil { 18148 return err 18149 } 18150 sd.Type = &typeVar 18151 } 18152 } 18153 } 18154 18155 return nil 18156} 18157 18158// SlotDifferenceCollection collection of slot differences. 18159type SlotDifferenceCollection struct { 18160 autorest.Response `json:"-"` 18161 // Value - Collection of resources. 18162 Value *[]SlotDifference `json:"value,omitempty"` 18163 // NextLink - READ-ONLY; Link to next page of resources. 18164 NextLink *string `json:"nextLink,omitempty"` 18165} 18166 18167// SlotDifferenceCollectionIterator provides access to a complete listing of SlotDifference values. 18168type SlotDifferenceCollectionIterator struct { 18169 i int 18170 page SlotDifferenceCollectionPage 18171} 18172 18173// NextWithContext advances to the next value. If there was an error making 18174// the request the iterator does not advance and the error is returned. 18175func (iter *SlotDifferenceCollectionIterator) NextWithContext(ctx context.Context) (err error) { 18176 if tracing.IsEnabled() { 18177 ctx = tracing.StartSpan(ctx, fqdn+"/SlotDifferenceCollectionIterator.NextWithContext") 18178 defer func() { 18179 sc := -1 18180 if iter.Response().Response.Response != nil { 18181 sc = iter.Response().Response.Response.StatusCode 18182 } 18183 tracing.EndSpan(ctx, sc, err) 18184 }() 18185 } 18186 iter.i++ 18187 if iter.i < len(iter.page.Values()) { 18188 return nil 18189 } 18190 err = iter.page.NextWithContext(ctx) 18191 if err != nil { 18192 iter.i-- 18193 return err 18194 } 18195 iter.i = 0 18196 return nil 18197} 18198 18199// Next advances to the next value. If there was an error making 18200// the request the iterator does not advance and the error is returned. 18201// Deprecated: Use NextWithContext() instead. 18202func (iter *SlotDifferenceCollectionIterator) Next() error { 18203 return iter.NextWithContext(context.Background()) 18204} 18205 18206// NotDone returns true if the enumeration should be started or is not yet complete. 18207func (iter SlotDifferenceCollectionIterator) NotDone() bool { 18208 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 18209} 18210 18211// Response returns the raw server response from the last page request. 18212func (iter SlotDifferenceCollectionIterator) Response() SlotDifferenceCollection { 18213 return iter.page.Response() 18214} 18215 18216// Value returns the current value or a zero-initialized value if the 18217// iterator has advanced beyond the end of the collection. 18218func (iter SlotDifferenceCollectionIterator) Value() SlotDifference { 18219 if !iter.page.NotDone() { 18220 return SlotDifference{} 18221 } 18222 return iter.page.Values()[iter.i] 18223} 18224 18225// Creates a new instance of the SlotDifferenceCollectionIterator type. 18226func NewSlotDifferenceCollectionIterator(page SlotDifferenceCollectionPage) SlotDifferenceCollectionIterator { 18227 return SlotDifferenceCollectionIterator{page: page} 18228} 18229 18230// IsEmpty returns true if the ListResult contains no values. 18231func (sdc SlotDifferenceCollection) IsEmpty() bool { 18232 return sdc.Value == nil || len(*sdc.Value) == 0 18233} 18234 18235// slotDifferenceCollectionPreparer prepares a request to retrieve the next set of results. 18236// It returns nil if no more results exist. 18237func (sdc SlotDifferenceCollection) slotDifferenceCollectionPreparer(ctx context.Context) (*http.Request, error) { 18238 if sdc.NextLink == nil || len(to.String(sdc.NextLink)) < 1 { 18239 return nil, nil 18240 } 18241 return autorest.Prepare((&http.Request{}).WithContext(ctx), 18242 autorest.AsJSON(), 18243 autorest.AsGet(), 18244 autorest.WithBaseURL(to.String(sdc.NextLink))) 18245} 18246 18247// SlotDifferenceCollectionPage contains a page of SlotDifference values. 18248type SlotDifferenceCollectionPage struct { 18249 fn func(context.Context, SlotDifferenceCollection) (SlotDifferenceCollection, error) 18250 sdc SlotDifferenceCollection 18251} 18252 18253// NextWithContext advances to the next page of values. If there was an error making 18254// the request the page does not advance and the error is returned. 18255func (page *SlotDifferenceCollectionPage) NextWithContext(ctx context.Context) (err error) { 18256 if tracing.IsEnabled() { 18257 ctx = tracing.StartSpan(ctx, fqdn+"/SlotDifferenceCollectionPage.NextWithContext") 18258 defer func() { 18259 sc := -1 18260 if page.Response().Response.Response != nil { 18261 sc = page.Response().Response.Response.StatusCode 18262 } 18263 tracing.EndSpan(ctx, sc, err) 18264 }() 18265 } 18266 next, err := page.fn(ctx, page.sdc) 18267 if err != nil { 18268 return err 18269 } 18270 page.sdc = next 18271 return nil 18272} 18273 18274// Next advances to the next page of values. If there was an error making 18275// the request the page does not advance and the error is returned. 18276// Deprecated: Use NextWithContext() instead. 18277func (page *SlotDifferenceCollectionPage) Next() error { 18278 return page.NextWithContext(context.Background()) 18279} 18280 18281// NotDone returns true if the page enumeration should be started or is not yet complete. 18282func (page SlotDifferenceCollectionPage) NotDone() bool { 18283 return !page.sdc.IsEmpty() 18284} 18285 18286// Response returns the raw server response from the last page request. 18287func (page SlotDifferenceCollectionPage) Response() SlotDifferenceCollection { 18288 return page.sdc 18289} 18290 18291// Values returns the slice of values for the current page or nil if there are no values. 18292func (page SlotDifferenceCollectionPage) Values() []SlotDifference { 18293 if page.sdc.IsEmpty() { 18294 return nil 18295 } 18296 return *page.sdc.Value 18297} 18298 18299// Creates a new instance of the SlotDifferenceCollectionPage type. 18300func NewSlotDifferenceCollectionPage(getNextPage func(context.Context, SlotDifferenceCollection) (SlotDifferenceCollection, error)) SlotDifferenceCollectionPage { 18301 return SlotDifferenceCollectionPage{fn: getNextPage} 18302} 18303 18304// SlotDifferenceProperties slotDifference resource specific properties 18305type SlotDifferenceProperties struct { 18306 // Type - READ-ONLY; Type of the difference: Information, Warning or Error. 18307 Type *string `json:"type,omitempty"` 18308 // SettingType - READ-ONLY; The type of the setting: General, AppSetting or ConnectionString. 18309 SettingType *string `json:"settingType,omitempty"` 18310 // DiffRule - READ-ONLY; Rule that describes how to process the setting difference during a slot swap. 18311 DiffRule *string `json:"diffRule,omitempty"` 18312 // SettingName - READ-ONLY; Name of the setting. 18313 SettingName *string `json:"settingName,omitempty"` 18314 // ValueInCurrentSlot - READ-ONLY; Value of the setting in the current slot. 18315 ValueInCurrentSlot *string `json:"valueInCurrentSlot,omitempty"` 18316 // ValueInTargetSlot - READ-ONLY; Value of the setting in the target slot. 18317 ValueInTargetSlot *string `json:"valueInTargetSlot,omitempty"` 18318 // Description - READ-ONLY; Description of the setting difference. 18319 Description *string `json:"description,omitempty"` 18320} 18321 18322// SlotSwapStatus the status of the last successful slot swap operation. 18323type SlotSwapStatus struct { 18324 // TimestampUtc - READ-ONLY; The time the last successful slot swap completed. 18325 TimestampUtc *date.Time `json:"timestampUtc,omitempty"` 18326 // SourceSlotName - READ-ONLY; The source slot of the last swap operation. 18327 SourceSlotName *string `json:"sourceSlotName,omitempty"` 18328 // DestinationSlotName - READ-ONLY; The destination slot of the last swap operation. 18329 DestinationSlotName *string `json:"destinationSlotName,omitempty"` 18330} 18331 18332// SlowRequestsBasedTrigger trigger based on request execution time. 18333type SlowRequestsBasedTrigger struct { 18334 // TimeTaken - Time taken. 18335 TimeTaken *string `json:"timeTaken,omitempty"` 18336 // Count - Request Count. 18337 Count *int32 `json:"count,omitempty"` 18338 // TimeInterval - Time interval. 18339 TimeInterval *string `json:"timeInterval,omitempty"` 18340} 18341 18342// Snapshot a snapshot of an app. 18343type Snapshot struct { 18344 // SnapshotProperties - Snapshot resource specific properties 18345 *SnapshotProperties `json:"properties,omitempty"` 18346 // ID - READ-ONLY; Resource Id. 18347 ID *string `json:"id,omitempty"` 18348 // Name - READ-ONLY; Resource Name. 18349 Name *string `json:"name,omitempty"` 18350 // Kind - Kind of resource. 18351 Kind *string `json:"kind,omitempty"` 18352 // Type - READ-ONLY; Resource type. 18353 Type *string `json:"type,omitempty"` 18354} 18355 18356// MarshalJSON is the custom marshaler for Snapshot. 18357func (s Snapshot) MarshalJSON() ([]byte, error) { 18358 objectMap := make(map[string]interface{}) 18359 if s.SnapshotProperties != nil { 18360 objectMap["properties"] = s.SnapshotProperties 18361 } 18362 if s.Kind != nil { 18363 objectMap["kind"] = s.Kind 18364 } 18365 return json.Marshal(objectMap) 18366} 18367 18368// UnmarshalJSON is the custom unmarshaler for Snapshot struct. 18369func (s *Snapshot) UnmarshalJSON(body []byte) error { 18370 var m map[string]*json.RawMessage 18371 err := json.Unmarshal(body, &m) 18372 if err != nil { 18373 return err 18374 } 18375 for k, v := range m { 18376 switch k { 18377 case "properties": 18378 if v != nil { 18379 var snapshotProperties SnapshotProperties 18380 err = json.Unmarshal(*v, &snapshotProperties) 18381 if err != nil { 18382 return err 18383 } 18384 s.SnapshotProperties = &snapshotProperties 18385 } 18386 case "id": 18387 if v != nil { 18388 var ID string 18389 err = json.Unmarshal(*v, &ID) 18390 if err != nil { 18391 return err 18392 } 18393 s.ID = &ID 18394 } 18395 case "name": 18396 if v != nil { 18397 var name string 18398 err = json.Unmarshal(*v, &name) 18399 if err != nil { 18400 return err 18401 } 18402 s.Name = &name 18403 } 18404 case "kind": 18405 if v != nil { 18406 var kind string 18407 err = json.Unmarshal(*v, &kind) 18408 if err != nil { 18409 return err 18410 } 18411 s.Kind = &kind 18412 } 18413 case "type": 18414 if v != nil { 18415 var typeVar string 18416 err = json.Unmarshal(*v, &typeVar) 18417 if err != nil { 18418 return err 18419 } 18420 s.Type = &typeVar 18421 } 18422 } 18423 } 18424 18425 return nil 18426} 18427 18428// SnapshotCollection collection of snapshots which can be used to revert an app to a previous time. 18429type SnapshotCollection struct { 18430 autorest.Response `json:"-"` 18431 // Value - Collection of resources. 18432 Value *[]Snapshot `json:"value,omitempty"` 18433 // NextLink - READ-ONLY; Link to next page of resources. 18434 NextLink *string `json:"nextLink,omitempty"` 18435} 18436 18437// SnapshotCollectionIterator provides access to a complete listing of Snapshot values. 18438type SnapshotCollectionIterator struct { 18439 i int 18440 page SnapshotCollectionPage 18441} 18442 18443// NextWithContext advances to the next value. If there was an error making 18444// the request the iterator does not advance and the error is returned. 18445func (iter *SnapshotCollectionIterator) NextWithContext(ctx context.Context) (err error) { 18446 if tracing.IsEnabled() { 18447 ctx = tracing.StartSpan(ctx, fqdn+"/SnapshotCollectionIterator.NextWithContext") 18448 defer func() { 18449 sc := -1 18450 if iter.Response().Response.Response != nil { 18451 sc = iter.Response().Response.Response.StatusCode 18452 } 18453 tracing.EndSpan(ctx, sc, err) 18454 }() 18455 } 18456 iter.i++ 18457 if iter.i < len(iter.page.Values()) { 18458 return nil 18459 } 18460 err = iter.page.NextWithContext(ctx) 18461 if err != nil { 18462 iter.i-- 18463 return err 18464 } 18465 iter.i = 0 18466 return nil 18467} 18468 18469// Next advances to the next value. If there was an error making 18470// the request the iterator does not advance and the error is returned. 18471// Deprecated: Use NextWithContext() instead. 18472func (iter *SnapshotCollectionIterator) Next() error { 18473 return iter.NextWithContext(context.Background()) 18474} 18475 18476// NotDone returns true if the enumeration should be started or is not yet complete. 18477func (iter SnapshotCollectionIterator) NotDone() bool { 18478 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 18479} 18480 18481// Response returns the raw server response from the last page request. 18482func (iter SnapshotCollectionIterator) Response() SnapshotCollection { 18483 return iter.page.Response() 18484} 18485 18486// Value returns the current value or a zero-initialized value if the 18487// iterator has advanced beyond the end of the collection. 18488func (iter SnapshotCollectionIterator) Value() Snapshot { 18489 if !iter.page.NotDone() { 18490 return Snapshot{} 18491 } 18492 return iter.page.Values()[iter.i] 18493} 18494 18495// Creates a new instance of the SnapshotCollectionIterator type. 18496func NewSnapshotCollectionIterator(page SnapshotCollectionPage) SnapshotCollectionIterator { 18497 return SnapshotCollectionIterator{page: page} 18498} 18499 18500// IsEmpty returns true if the ListResult contains no values. 18501func (sc SnapshotCollection) IsEmpty() bool { 18502 return sc.Value == nil || len(*sc.Value) == 0 18503} 18504 18505// snapshotCollectionPreparer prepares a request to retrieve the next set of results. 18506// It returns nil if no more results exist. 18507func (sc SnapshotCollection) snapshotCollectionPreparer(ctx context.Context) (*http.Request, error) { 18508 if sc.NextLink == nil || len(to.String(sc.NextLink)) < 1 { 18509 return nil, nil 18510 } 18511 return autorest.Prepare((&http.Request{}).WithContext(ctx), 18512 autorest.AsJSON(), 18513 autorest.AsGet(), 18514 autorest.WithBaseURL(to.String(sc.NextLink))) 18515} 18516 18517// SnapshotCollectionPage contains a page of Snapshot values. 18518type SnapshotCollectionPage struct { 18519 fn func(context.Context, SnapshotCollection) (SnapshotCollection, error) 18520 sc SnapshotCollection 18521} 18522 18523// NextWithContext advances to the next page of values. If there was an error making 18524// the request the page does not advance and the error is returned. 18525func (page *SnapshotCollectionPage) NextWithContext(ctx context.Context) (err error) { 18526 if tracing.IsEnabled() { 18527 ctx = tracing.StartSpan(ctx, fqdn+"/SnapshotCollectionPage.NextWithContext") 18528 defer func() { 18529 sc := -1 18530 if page.Response().Response.Response != nil { 18531 sc = page.Response().Response.Response.StatusCode 18532 } 18533 tracing.EndSpan(ctx, sc, err) 18534 }() 18535 } 18536 next, err := page.fn(ctx, page.sc) 18537 if err != nil { 18538 return err 18539 } 18540 page.sc = next 18541 return nil 18542} 18543 18544// Next advances to the next page of values. If there was an error making 18545// the request the page does not advance and the error is returned. 18546// Deprecated: Use NextWithContext() instead. 18547func (page *SnapshotCollectionPage) Next() error { 18548 return page.NextWithContext(context.Background()) 18549} 18550 18551// NotDone returns true if the page enumeration should be started or is not yet complete. 18552func (page SnapshotCollectionPage) NotDone() bool { 18553 return !page.sc.IsEmpty() 18554} 18555 18556// Response returns the raw server response from the last page request. 18557func (page SnapshotCollectionPage) Response() SnapshotCollection { 18558 return page.sc 18559} 18560 18561// Values returns the slice of values for the current page or nil if there are no values. 18562func (page SnapshotCollectionPage) Values() []Snapshot { 18563 if page.sc.IsEmpty() { 18564 return nil 18565 } 18566 return *page.sc.Value 18567} 18568 18569// Creates a new instance of the SnapshotCollectionPage type. 18570func NewSnapshotCollectionPage(getNextPage func(context.Context, SnapshotCollection) (SnapshotCollection, error)) SnapshotCollectionPage { 18571 return SnapshotCollectionPage{fn: getNextPage} 18572} 18573 18574// SnapshotProperties snapshot resource specific properties 18575type SnapshotProperties struct { 18576 // Time - READ-ONLY; The time the snapshot was taken. 18577 Time *string `json:"time,omitempty"` 18578} 18579 18580// SnapshotRecoveryRequest details about app recovery operation. 18581type SnapshotRecoveryRequest struct { 18582 // SnapshotRecoveryRequestProperties - SnapshotRecoveryRequest resource specific properties 18583 *SnapshotRecoveryRequestProperties `json:"properties,omitempty"` 18584 // ID - READ-ONLY; Resource Id. 18585 ID *string `json:"id,omitempty"` 18586 // Name - READ-ONLY; Resource Name. 18587 Name *string `json:"name,omitempty"` 18588 // Kind - Kind of resource. 18589 Kind *string `json:"kind,omitempty"` 18590 // Type - READ-ONLY; Resource type. 18591 Type *string `json:"type,omitempty"` 18592} 18593 18594// MarshalJSON is the custom marshaler for SnapshotRecoveryRequest. 18595func (srr SnapshotRecoveryRequest) MarshalJSON() ([]byte, error) { 18596 objectMap := make(map[string]interface{}) 18597 if srr.SnapshotRecoveryRequestProperties != nil { 18598 objectMap["properties"] = srr.SnapshotRecoveryRequestProperties 18599 } 18600 if srr.Kind != nil { 18601 objectMap["kind"] = srr.Kind 18602 } 18603 return json.Marshal(objectMap) 18604} 18605 18606// UnmarshalJSON is the custom unmarshaler for SnapshotRecoveryRequest struct. 18607func (srr *SnapshotRecoveryRequest) UnmarshalJSON(body []byte) error { 18608 var m map[string]*json.RawMessage 18609 err := json.Unmarshal(body, &m) 18610 if err != nil { 18611 return err 18612 } 18613 for k, v := range m { 18614 switch k { 18615 case "properties": 18616 if v != nil { 18617 var snapshotRecoveryRequestProperties SnapshotRecoveryRequestProperties 18618 err = json.Unmarshal(*v, &snapshotRecoveryRequestProperties) 18619 if err != nil { 18620 return err 18621 } 18622 srr.SnapshotRecoveryRequestProperties = &snapshotRecoveryRequestProperties 18623 } 18624 case "id": 18625 if v != nil { 18626 var ID string 18627 err = json.Unmarshal(*v, &ID) 18628 if err != nil { 18629 return err 18630 } 18631 srr.ID = &ID 18632 } 18633 case "name": 18634 if v != nil { 18635 var name string 18636 err = json.Unmarshal(*v, &name) 18637 if err != nil { 18638 return err 18639 } 18640 srr.Name = &name 18641 } 18642 case "kind": 18643 if v != nil { 18644 var kind string 18645 err = json.Unmarshal(*v, &kind) 18646 if err != nil { 18647 return err 18648 } 18649 srr.Kind = &kind 18650 } 18651 case "type": 18652 if v != nil { 18653 var typeVar string 18654 err = json.Unmarshal(*v, &typeVar) 18655 if err != nil { 18656 return err 18657 } 18658 srr.Type = &typeVar 18659 } 18660 } 18661 } 18662 18663 return nil 18664} 18665 18666// SnapshotRecoveryRequestProperties snapshotRecoveryRequest resource specific properties 18667type SnapshotRecoveryRequestProperties struct { 18668 // SnapshotTime - Point in time in which the app recovery should be attempted, formatted as a DateTime string. 18669 SnapshotTime *string `json:"snapshotTime,omitempty"` 18670 // RecoveryTarget - Specifies the web app that snapshot contents will be written to. 18671 RecoveryTarget *SnapshotRecoveryTarget `json:"recoveryTarget,omitempty"` 18672 // Overwrite - If <code>true</code> the recovery operation can overwrite source app; otherwise, <code>false</code>. 18673 Overwrite *bool `json:"overwrite,omitempty"` 18674 // RecoverConfiguration - If true, site configuration, in addition to content, will be reverted. 18675 RecoverConfiguration *bool `json:"recoverConfiguration,omitempty"` 18676 // IgnoreConflictingHostNames - If true, custom hostname conflicts will be ignored when recovering to a target web app. 18677 // This setting is only necessary when RecoverConfiguration is enabled. 18678 IgnoreConflictingHostNames *bool `json:"ignoreConflictingHostNames,omitempty"` 18679} 18680 18681// SnapshotRecoveryTarget specifies the web app that snapshot contents will be written to. 18682type SnapshotRecoveryTarget struct { 18683 // Location - Geographical location of the target web app, e.g. SouthEastAsia, SouthCentralUS 18684 Location *string `json:"location,omitempty"` 18685 // ID - ARM resource ID of the target app. 18686 // /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName} for production slots and 18687 // /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slotName} for other slots. 18688 ID *string `json:"id,omitempty"` 18689} 18690 18691// Solution class Representing Solution for problems detected. 18692type Solution struct { 18693 // ID - Solution Id. 18694 ID *float64 `json:"id,omitempty"` 18695 // DisplayName - Display Name of the solution 18696 DisplayName *string `json:"displayName,omitempty"` 18697 // Order - Order of the solution. 18698 Order *float64 `json:"order,omitempty"` 18699 // Description - Description of the solution 18700 Description *string `json:"description,omitempty"` 18701 // Type - Type of Solution. Possible values include: 'QuickSolution', 'DeepInvestigation', 'BestPractices' 18702 Type SolutionType `json:"type,omitempty"` 18703 // Data - Solution Data. 18704 Data *[][]NameValuePair `json:"data,omitempty"` 18705 // Metadata - Solution Metadata. 18706 Metadata *[][]NameValuePair `json:"metadata,omitempty"` 18707} 18708 18709// SourceControl the source control OAuth token. 18710type SourceControl struct { 18711 autorest.Response `json:"-"` 18712 // SourceControlProperties - SourceControl resource specific properties 18713 *SourceControlProperties `json:"properties,omitempty"` 18714 // ID - READ-ONLY; Resource Id. 18715 ID *string `json:"id,omitempty"` 18716 // Name - READ-ONLY; Resource Name. 18717 Name *string `json:"name,omitempty"` 18718 // Kind - Kind of resource. 18719 Kind *string `json:"kind,omitempty"` 18720 // Type - READ-ONLY; Resource type. 18721 Type *string `json:"type,omitempty"` 18722} 18723 18724// MarshalJSON is the custom marshaler for SourceControl. 18725func (sc SourceControl) MarshalJSON() ([]byte, error) { 18726 objectMap := make(map[string]interface{}) 18727 if sc.SourceControlProperties != nil { 18728 objectMap["properties"] = sc.SourceControlProperties 18729 } 18730 if sc.Kind != nil { 18731 objectMap["kind"] = sc.Kind 18732 } 18733 return json.Marshal(objectMap) 18734} 18735 18736// UnmarshalJSON is the custom unmarshaler for SourceControl struct. 18737func (sc *SourceControl) UnmarshalJSON(body []byte) error { 18738 var m map[string]*json.RawMessage 18739 err := json.Unmarshal(body, &m) 18740 if err != nil { 18741 return err 18742 } 18743 for k, v := range m { 18744 switch k { 18745 case "properties": 18746 if v != nil { 18747 var sourceControlProperties SourceControlProperties 18748 err = json.Unmarshal(*v, &sourceControlProperties) 18749 if err != nil { 18750 return err 18751 } 18752 sc.SourceControlProperties = &sourceControlProperties 18753 } 18754 case "id": 18755 if v != nil { 18756 var ID string 18757 err = json.Unmarshal(*v, &ID) 18758 if err != nil { 18759 return err 18760 } 18761 sc.ID = &ID 18762 } 18763 case "name": 18764 if v != nil { 18765 var name string 18766 err = json.Unmarshal(*v, &name) 18767 if err != nil { 18768 return err 18769 } 18770 sc.Name = &name 18771 } 18772 case "kind": 18773 if v != nil { 18774 var kind string 18775 err = json.Unmarshal(*v, &kind) 18776 if err != nil { 18777 return err 18778 } 18779 sc.Kind = &kind 18780 } 18781 case "type": 18782 if v != nil { 18783 var typeVar string 18784 err = json.Unmarshal(*v, &typeVar) 18785 if err != nil { 18786 return err 18787 } 18788 sc.Type = &typeVar 18789 } 18790 } 18791 } 18792 18793 return nil 18794} 18795 18796// SourceControlCollection collection of source controls. 18797type SourceControlCollection struct { 18798 autorest.Response `json:"-"` 18799 // Value - Collection of resources. 18800 Value *[]SourceControl `json:"value,omitempty"` 18801 // NextLink - READ-ONLY; Link to next page of resources. 18802 NextLink *string `json:"nextLink,omitempty"` 18803} 18804 18805// SourceControlCollectionIterator provides access to a complete listing of SourceControl values. 18806type SourceControlCollectionIterator struct { 18807 i int 18808 page SourceControlCollectionPage 18809} 18810 18811// NextWithContext advances to the next value. If there was an error making 18812// the request the iterator does not advance and the error is returned. 18813func (iter *SourceControlCollectionIterator) NextWithContext(ctx context.Context) (err error) { 18814 if tracing.IsEnabled() { 18815 ctx = tracing.StartSpan(ctx, fqdn+"/SourceControlCollectionIterator.NextWithContext") 18816 defer func() { 18817 sc := -1 18818 if iter.Response().Response.Response != nil { 18819 sc = iter.Response().Response.Response.StatusCode 18820 } 18821 tracing.EndSpan(ctx, sc, err) 18822 }() 18823 } 18824 iter.i++ 18825 if iter.i < len(iter.page.Values()) { 18826 return nil 18827 } 18828 err = iter.page.NextWithContext(ctx) 18829 if err != nil { 18830 iter.i-- 18831 return err 18832 } 18833 iter.i = 0 18834 return nil 18835} 18836 18837// Next advances to the next value. If there was an error making 18838// the request the iterator does not advance and the error is returned. 18839// Deprecated: Use NextWithContext() instead. 18840func (iter *SourceControlCollectionIterator) Next() error { 18841 return iter.NextWithContext(context.Background()) 18842} 18843 18844// NotDone returns true if the enumeration should be started or is not yet complete. 18845func (iter SourceControlCollectionIterator) NotDone() bool { 18846 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 18847} 18848 18849// Response returns the raw server response from the last page request. 18850func (iter SourceControlCollectionIterator) Response() SourceControlCollection { 18851 return iter.page.Response() 18852} 18853 18854// Value returns the current value or a zero-initialized value if the 18855// iterator has advanced beyond the end of the collection. 18856func (iter SourceControlCollectionIterator) Value() SourceControl { 18857 if !iter.page.NotDone() { 18858 return SourceControl{} 18859 } 18860 return iter.page.Values()[iter.i] 18861} 18862 18863// Creates a new instance of the SourceControlCollectionIterator type. 18864func NewSourceControlCollectionIterator(page SourceControlCollectionPage) SourceControlCollectionIterator { 18865 return SourceControlCollectionIterator{page: page} 18866} 18867 18868// IsEmpty returns true if the ListResult contains no values. 18869func (scc SourceControlCollection) IsEmpty() bool { 18870 return scc.Value == nil || len(*scc.Value) == 0 18871} 18872 18873// sourceControlCollectionPreparer prepares a request to retrieve the next set of results. 18874// It returns nil if no more results exist. 18875func (scc SourceControlCollection) sourceControlCollectionPreparer(ctx context.Context) (*http.Request, error) { 18876 if scc.NextLink == nil || len(to.String(scc.NextLink)) < 1 { 18877 return nil, nil 18878 } 18879 return autorest.Prepare((&http.Request{}).WithContext(ctx), 18880 autorest.AsJSON(), 18881 autorest.AsGet(), 18882 autorest.WithBaseURL(to.String(scc.NextLink))) 18883} 18884 18885// SourceControlCollectionPage contains a page of SourceControl values. 18886type SourceControlCollectionPage struct { 18887 fn func(context.Context, SourceControlCollection) (SourceControlCollection, error) 18888 scc SourceControlCollection 18889} 18890 18891// NextWithContext advances to the next page of values. If there was an error making 18892// the request the page does not advance and the error is returned. 18893func (page *SourceControlCollectionPage) NextWithContext(ctx context.Context) (err error) { 18894 if tracing.IsEnabled() { 18895 ctx = tracing.StartSpan(ctx, fqdn+"/SourceControlCollectionPage.NextWithContext") 18896 defer func() { 18897 sc := -1 18898 if page.Response().Response.Response != nil { 18899 sc = page.Response().Response.Response.StatusCode 18900 } 18901 tracing.EndSpan(ctx, sc, err) 18902 }() 18903 } 18904 next, err := page.fn(ctx, page.scc) 18905 if err != nil { 18906 return err 18907 } 18908 page.scc = next 18909 return nil 18910} 18911 18912// Next advances to the next page of values. If there was an error making 18913// the request the page does not advance and the error is returned. 18914// Deprecated: Use NextWithContext() instead. 18915func (page *SourceControlCollectionPage) Next() error { 18916 return page.NextWithContext(context.Background()) 18917} 18918 18919// NotDone returns true if the page enumeration should be started or is not yet complete. 18920func (page SourceControlCollectionPage) NotDone() bool { 18921 return !page.scc.IsEmpty() 18922} 18923 18924// Response returns the raw server response from the last page request. 18925func (page SourceControlCollectionPage) Response() SourceControlCollection { 18926 return page.scc 18927} 18928 18929// Values returns the slice of values for the current page or nil if there are no values. 18930func (page SourceControlCollectionPage) Values() []SourceControl { 18931 if page.scc.IsEmpty() { 18932 return nil 18933 } 18934 return *page.scc.Value 18935} 18936 18937// Creates a new instance of the SourceControlCollectionPage type. 18938func NewSourceControlCollectionPage(getNextPage func(context.Context, SourceControlCollection) (SourceControlCollection, error)) SourceControlCollectionPage { 18939 return SourceControlCollectionPage{fn: getNextPage} 18940} 18941 18942// SourceControlProperties sourceControl resource specific properties 18943type SourceControlProperties struct { 18944 // Name - Name or source control type. 18945 Name *string `json:"name,omitempty"` 18946 // Token - OAuth access token. 18947 Token *string `json:"token,omitempty"` 18948 // TokenSecret - OAuth access token secret. 18949 TokenSecret *string `json:"tokenSecret,omitempty"` 18950 // RefreshToken - OAuth refresh token. 18951 RefreshToken *string `json:"refreshToken,omitempty"` 18952 // ExpirationTime - OAuth token expiration. 18953 ExpirationTime *date.Time `json:"expirationTime,omitempty"` 18954} 18955 18956// StackMajorVersion application stack major version. 18957type StackMajorVersion struct { 18958 // DisplayVersion - Application stack major version (display only). 18959 DisplayVersion *string `json:"displayVersion,omitempty"` 18960 // RuntimeVersion - Application stack major version (runtime only). 18961 RuntimeVersion *string `json:"runtimeVersion,omitempty"` 18962 // IsDefault - <code>true</code> if this is the default major version; otherwise, <code>false</code>. 18963 IsDefault *bool `json:"isDefault,omitempty"` 18964 // MinorVersions - Minor versions associated with the major version. 18965 MinorVersions *[]StackMinorVersion `json:"minorVersions,omitempty"` 18966} 18967 18968// StackMinorVersion application stack minor version. 18969type StackMinorVersion struct { 18970 // DisplayVersion - Application stack minor version (display only). 18971 DisplayVersion *string `json:"displayVersion,omitempty"` 18972 // RuntimeVersion - Application stack minor version (runtime only). 18973 RuntimeVersion *string `json:"runtimeVersion,omitempty"` 18974 // IsDefault - <code>true</code> if this is the default minor version; otherwise, <code>false</code>. 18975 IsDefault *bool `json:"isDefault,omitempty"` 18976} 18977 18978// StampCapacity stamp capacity information. 18979type StampCapacity struct { 18980 // Name - Name of the stamp. 18981 Name *string `json:"name,omitempty"` 18982 // AvailableCapacity - Available capacity (# of machines, bytes of storage etc...). 18983 AvailableCapacity *int64 `json:"availableCapacity,omitempty"` 18984 // TotalCapacity - Total capacity (# of machines, bytes of storage etc...). 18985 TotalCapacity *int64 `json:"totalCapacity,omitempty"` 18986 // Unit - Name of the unit. 18987 Unit *string `json:"unit,omitempty"` 18988 // ComputeMode - Shared/dedicated workers. Possible values include: 'ComputeModeOptionsShared', 'ComputeModeOptionsDedicated', 'ComputeModeOptionsDynamic' 18989 ComputeMode ComputeModeOptions `json:"computeMode,omitempty"` 18990 // WorkerSize - Size of the machines. Possible values include: 'Default', 'Small', 'Medium', 'Large', 'D1', 'D2', 'D3' 18991 WorkerSize WorkerSizeOptions `json:"workerSize,omitempty"` 18992 // WorkerSizeID - Size ID of machines: 18993 // 0 - Small 18994 // 1 - Medium 18995 // 2 - Large 18996 WorkerSizeID *int32 `json:"workerSizeId,omitempty"` 18997 // ExcludeFromCapacityAllocation - If <code>true</code>, it includes basic apps. 18998 // Basic apps are not used for capacity allocation. 18999 ExcludeFromCapacityAllocation *bool `json:"excludeFromCapacityAllocation,omitempty"` 19000 // IsApplicableForAllComputeModes - <code>true</code> if capacity is applicable for all apps; otherwise, <code>false</code>. 19001 IsApplicableForAllComputeModes *bool `json:"isApplicableForAllComputeModes,omitempty"` 19002 // SiteMode - Shared or Dedicated. 19003 SiteMode *string `json:"siteMode,omitempty"` 19004} 19005 19006// StampCapacityCollection collection of stamp capacities. 19007type StampCapacityCollection struct { 19008 autorest.Response `json:"-"` 19009 // Value - Collection of resources. 19010 Value *[]StampCapacity `json:"value,omitempty"` 19011 // NextLink - READ-ONLY; Link to next page of resources. 19012 NextLink *string `json:"nextLink,omitempty"` 19013} 19014 19015// StampCapacityCollectionIterator provides access to a complete listing of StampCapacity values. 19016type StampCapacityCollectionIterator struct { 19017 i int 19018 page StampCapacityCollectionPage 19019} 19020 19021// NextWithContext advances to the next value. If there was an error making 19022// the request the iterator does not advance and the error is returned. 19023func (iter *StampCapacityCollectionIterator) NextWithContext(ctx context.Context) (err error) { 19024 if tracing.IsEnabled() { 19025 ctx = tracing.StartSpan(ctx, fqdn+"/StampCapacityCollectionIterator.NextWithContext") 19026 defer func() { 19027 sc := -1 19028 if iter.Response().Response.Response != nil { 19029 sc = iter.Response().Response.Response.StatusCode 19030 } 19031 tracing.EndSpan(ctx, sc, err) 19032 }() 19033 } 19034 iter.i++ 19035 if iter.i < len(iter.page.Values()) { 19036 return nil 19037 } 19038 err = iter.page.NextWithContext(ctx) 19039 if err != nil { 19040 iter.i-- 19041 return err 19042 } 19043 iter.i = 0 19044 return nil 19045} 19046 19047// Next advances to the next value. If there was an error making 19048// the request the iterator does not advance and the error is returned. 19049// Deprecated: Use NextWithContext() instead. 19050func (iter *StampCapacityCollectionIterator) Next() error { 19051 return iter.NextWithContext(context.Background()) 19052} 19053 19054// NotDone returns true if the enumeration should be started or is not yet complete. 19055func (iter StampCapacityCollectionIterator) NotDone() bool { 19056 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 19057} 19058 19059// Response returns the raw server response from the last page request. 19060func (iter StampCapacityCollectionIterator) Response() StampCapacityCollection { 19061 return iter.page.Response() 19062} 19063 19064// Value returns the current value or a zero-initialized value if the 19065// iterator has advanced beyond the end of the collection. 19066func (iter StampCapacityCollectionIterator) Value() StampCapacity { 19067 if !iter.page.NotDone() { 19068 return StampCapacity{} 19069 } 19070 return iter.page.Values()[iter.i] 19071} 19072 19073// Creates a new instance of the StampCapacityCollectionIterator type. 19074func NewStampCapacityCollectionIterator(page StampCapacityCollectionPage) StampCapacityCollectionIterator { 19075 return StampCapacityCollectionIterator{page: page} 19076} 19077 19078// IsEmpty returns true if the ListResult contains no values. 19079func (scc StampCapacityCollection) IsEmpty() bool { 19080 return scc.Value == nil || len(*scc.Value) == 0 19081} 19082 19083// stampCapacityCollectionPreparer prepares a request to retrieve the next set of results. 19084// It returns nil if no more results exist. 19085func (scc StampCapacityCollection) stampCapacityCollectionPreparer(ctx context.Context) (*http.Request, error) { 19086 if scc.NextLink == nil || len(to.String(scc.NextLink)) < 1 { 19087 return nil, nil 19088 } 19089 return autorest.Prepare((&http.Request{}).WithContext(ctx), 19090 autorest.AsJSON(), 19091 autorest.AsGet(), 19092 autorest.WithBaseURL(to.String(scc.NextLink))) 19093} 19094 19095// StampCapacityCollectionPage contains a page of StampCapacity values. 19096type StampCapacityCollectionPage struct { 19097 fn func(context.Context, StampCapacityCollection) (StampCapacityCollection, error) 19098 scc StampCapacityCollection 19099} 19100 19101// NextWithContext advances to the next page of values. If there was an error making 19102// the request the page does not advance and the error is returned. 19103func (page *StampCapacityCollectionPage) NextWithContext(ctx context.Context) (err error) { 19104 if tracing.IsEnabled() { 19105 ctx = tracing.StartSpan(ctx, fqdn+"/StampCapacityCollectionPage.NextWithContext") 19106 defer func() { 19107 sc := -1 19108 if page.Response().Response.Response != nil { 19109 sc = page.Response().Response.Response.StatusCode 19110 } 19111 tracing.EndSpan(ctx, sc, err) 19112 }() 19113 } 19114 next, err := page.fn(ctx, page.scc) 19115 if err != nil { 19116 return err 19117 } 19118 page.scc = next 19119 return nil 19120} 19121 19122// Next advances to the next page of values. If there was an error making 19123// the request the page does not advance and the error is returned. 19124// Deprecated: Use NextWithContext() instead. 19125func (page *StampCapacityCollectionPage) Next() error { 19126 return page.NextWithContext(context.Background()) 19127} 19128 19129// NotDone returns true if the page enumeration should be started or is not yet complete. 19130func (page StampCapacityCollectionPage) NotDone() bool { 19131 return !page.scc.IsEmpty() 19132} 19133 19134// Response returns the raw server response from the last page request. 19135func (page StampCapacityCollectionPage) Response() StampCapacityCollection { 19136 return page.scc 19137} 19138 19139// Values returns the slice of values for the current page or nil if there are no values. 19140func (page StampCapacityCollectionPage) Values() []StampCapacity { 19141 if page.scc.IsEmpty() { 19142 return nil 19143 } 19144 return *page.scc.Value 19145} 19146 19147// Creates a new instance of the StampCapacityCollectionPage type. 19148func NewStampCapacityCollectionPage(getNextPage func(context.Context, StampCapacityCollection) (StampCapacityCollection, error)) StampCapacityCollectionPage { 19149 return StampCapacityCollectionPage{fn: getNextPage} 19150} 19151 19152// StatusCodesBasedTrigger trigger based on status code. 19153type StatusCodesBasedTrigger struct { 19154 // Status - HTTP status code. 19155 Status *int32 `json:"status,omitempty"` 19156 // SubStatus - Request Sub Status. 19157 SubStatus *int32 `json:"subStatus,omitempty"` 19158 // Win32Status - Win32 error code. 19159 Win32Status *int32 `json:"win32Status,omitempty"` 19160 // Count - Request Count. 19161 Count *int32 `json:"count,omitempty"` 19162 // TimeInterval - Time interval. 19163 TimeInterval *string `json:"timeInterval,omitempty"` 19164} 19165 19166// StorageMigrationOptions options for app content migration. 19167type StorageMigrationOptions struct { 19168 // StorageMigrationOptionsProperties - StorageMigrationOptions resource specific properties 19169 *StorageMigrationOptionsProperties `json:"properties,omitempty"` 19170 // ID - READ-ONLY; Resource Id. 19171 ID *string `json:"id,omitempty"` 19172 // Name - READ-ONLY; Resource Name. 19173 Name *string `json:"name,omitempty"` 19174 // Kind - Kind of resource. 19175 Kind *string `json:"kind,omitempty"` 19176 // Type - READ-ONLY; Resource type. 19177 Type *string `json:"type,omitempty"` 19178} 19179 19180// MarshalJSON is the custom marshaler for StorageMigrationOptions. 19181func (smo StorageMigrationOptions) MarshalJSON() ([]byte, error) { 19182 objectMap := make(map[string]interface{}) 19183 if smo.StorageMigrationOptionsProperties != nil { 19184 objectMap["properties"] = smo.StorageMigrationOptionsProperties 19185 } 19186 if smo.Kind != nil { 19187 objectMap["kind"] = smo.Kind 19188 } 19189 return json.Marshal(objectMap) 19190} 19191 19192// UnmarshalJSON is the custom unmarshaler for StorageMigrationOptions struct. 19193func (smo *StorageMigrationOptions) UnmarshalJSON(body []byte) error { 19194 var m map[string]*json.RawMessage 19195 err := json.Unmarshal(body, &m) 19196 if err != nil { 19197 return err 19198 } 19199 for k, v := range m { 19200 switch k { 19201 case "properties": 19202 if v != nil { 19203 var storageMigrationOptionsProperties StorageMigrationOptionsProperties 19204 err = json.Unmarshal(*v, &storageMigrationOptionsProperties) 19205 if err != nil { 19206 return err 19207 } 19208 smo.StorageMigrationOptionsProperties = &storageMigrationOptionsProperties 19209 } 19210 case "id": 19211 if v != nil { 19212 var ID string 19213 err = json.Unmarshal(*v, &ID) 19214 if err != nil { 19215 return err 19216 } 19217 smo.ID = &ID 19218 } 19219 case "name": 19220 if v != nil { 19221 var name string 19222 err = json.Unmarshal(*v, &name) 19223 if err != nil { 19224 return err 19225 } 19226 smo.Name = &name 19227 } 19228 case "kind": 19229 if v != nil { 19230 var kind string 19231 err = json.Unmarshal(*v, &kind) 19232 if err != nil { 19233 return err 19234 } 19235 smo.Kind = &kind 19236 } 19237 case "type": 19238 if v != nil { 19239 var typeVar string 19240 err = json.Unmarshal(*v, &typeVar) 19241 if err != nil { 19242 return err 19243 } 19244 smo.Type = &typeVar 19245 } 19246 } 19247 } 19248 19249 return nil 19250} 19251 19252// StorageMigrationOptionsProperties storageMigrationOptions resource specific properties 19253type StorageMigrationOptionsProperties struct { 19254 // AzurefilesConnectionString - AzureFiles connection string. 19255 AzurefilesConnectionString *string `json:"azurefilesConnectionString,omitempty"` 19256 // AzurefilesShare - AzureFiles share. 19257 AzurefilesShare *string `json:"azurefilesShare,omitempty"` 19258 // SwitchSiteAfterMigration - <code>true</code>if the app should be switched over; otherwise, <code>false</code>. 19259 SwitchSiteAfterMigration *bool `json:"switchSiteAfterMigration,omitempty"` 19260 // BlockWriteAccessToSite - <code>true</code> if the app should be read only during copy operation; otherwise, <code>false</code>. 19261 BlockWriteAccessToSite *bool `json:"blockWriteAccessToSite,omitempty"` 19262} 19263 19264// StorageMigrationResponse response for a migration of app content request. 19265type StorageMigrationResponse struct { 19266 autorest.Response `json:"-"` 19267 // StorageMigrationResponseProperties - StorageMigrationResponse resource specific properties 19268 *StorageMigrationResponseProperties `json:"properties,omitempty"` 19269 // ID - READ-ONLY; Resource Id. 19270 ID *string `json:"id,omitempty"` 19271 // Name - READ-ONLY; Resource Name. 19272 Name *string `json:"name,omitempty"` 19273 // Kind - Kind of resource. 19274 Kind *string `json:"kind,omitempty"` 19275 // Type - READ-ONLY; Resource type. 19276 Type *string `json:"type,omitempty"` 19277} 19278 19279// MarshalJSON is the custom marshaler for StorageMigrationResponse. 19280func (smr StorageMigrationResponse) MarshalJSON() ([]byte, error) { 19281 objectMap := make(map[string]interface{}) 19282 if smr.StorageMigrationResponseProperties != nil { 19283 objectMap["properties"] = smr.StorageMigrationResponseProperties 19284 } 19285 if smr.Kind != nil { 19286 objectMap["kind"] = smr.Kind 19287 } 19288 return json.Marshal(objectMap) 19289} 19290 19291// UnmarshalJSON is the custom unmarshaler for StorageMigrationResponse struct. 19292func (smr *StorageMigrationResponse) UnmarshalJSON(body []byte) error { 19293 var m map[string]*json.RawMessage 19294 err := json.Unmarshal(body, &m) 19295 if err != nil { 19296 return err 19297 } 19298 for k, v := range m { 19299 switch k { 19300 case "properties": 19301 if v != nil { 19302 var storageMigrationResponseProperties StorageMigrationResponseProperties 19303 err = json.Unmarshal(*v, &storageMigrationResponseProperties) 19304 if err != nil { 19305 return err 19306 } 19307 smr.StorageMigrationResponseProperties = &storageMigrationResponseProperties 19308 } 19309 case "id": 19310 if v != nil { 19311 var ID string 19312 err = json.Unmarshal(*v, &ID) 19313 if err != nil { 19314 return err 19315 } 19316 smr.ID = &ID 19317 } 19318 case "name": 19319 if v != nil { 19320 var name string 19321 err = json.Unmarshal(*v, &name) 19322 if err != nil { 19323 return err 19324 } 19325 smr.Name = &name 19326 } 19327 case "kind": 19328 if v != nil { 19329 var kind string 19330 err = json.Unmarshal(*v, &kind) 19331 if err != nil { 19332 return err 19333 } 19334 smr.Kind = &kind 19335 } 19336 case "type": 19337 if v != nil { 19338 var typeVar string 19339 err = json.Unmarshal(*v, &typeVar) 19340 if err != nil { 19341 return err 19342 } 19343 smr.Type = &typeVar 19344 } 19345 } 19346 } 19347 19348 return nil 19349} 19350 19351// StorageMigrationResponseProperties storageMigrationResponse resource specific properties 19352type StorageMigrationResponseProperties struct { 19353 // OperationID - READ-ONLY; When server starts the migration process, it will return an operation ID identifying that particular migration operation. 19354 OperationID *string `json:"operationId,omitempty"` 19355} 19356 19357// String ... 19358type String struct { 19359 autorest.Response `json:"-"` 19360 Value *string `json:"value,omitempty"` 19361} 19362 19363// StringDictionary string dictionary resource. 19364type StringDictionary struct { 19365 autorest.Response `json:"-"` 19366 // Properties - Settings. 19367 Properties map[string]*string `json:"properties"` 19368 // ID - READ-ONLY; Resource Id. 19369 ID *string `json:"id,omitempty"` 19370 // Name - READ-ONLY; Resource Name. 19371 Name *string `json:"name,omitempty"` 19372 // Kind - Kind of resource. 19373 Kind *string `json:"kind,omitempty"` 19374 // Type - READ-ONLY; Resource type. 19375 Type *string `json:"type,omitempty"` 19376} 19377 19378// MarshalJSON is the custom marshaler for StringDictionary. 19379func (sd StringDictionary) MarshalJSON() ([]byte, error) { 19380 objectMap := make(map[string]interface{}) 19381 if sd.Properties != nil { 19382 objectMap["properties"] = sd.Properties 19383 } 19384 if sd.Kind != nil { 19385 objectMap["kind"] = sd.Kind 19386 } 19387 return json.Marshal(objectMap) 19388} 19389 19390// TldLegalAgreement legal agreement for a top level domain. 19391type TldLegalAgreement struct { 19392 // AgreementKey - Unique identifier for the agreement. 19393 AgreementKey *string `json:"agreementKey,omitempty"` 19394 // Title - Agreement title. 19395 Title *string `json:"title,omitempty"` 19396 // Content - Agreement details. 19397 Content *string `json:"content,omitempty"` 19398 // URL - URL where a copy of the agreement details is hosted. 19399 URL *string `json:"url,omitempty"` 19400} 19401 19402// TldLegalAgreementCollection collection of top-level domain legal agreements. 19403type TldLegalAgreementCollection struct { 19404 autorest.Response `json:"-"` 19405 // Value - Collection of resources. 19406 Value *[]TldLegalAgreement `json:"value,omitempty"` 19407 // NextLink - READ-ONLY; Link to next page of resources. 19408 NextLink *string `json:"nextLink,omitempty"` 19409} 19410 19411// TldLegalAgreementCollectionIterator provides access to a complete listing of TldLegalAgreement values. 19412type TldLegalAgreementCollectionIterator struct { 19413 i int 19414 page TldLegalAgreementCollectionPage 19415} 19416 19417// NextWithContext advances to the next value. If there was an error making 19418// the request the iterator does not advance and the error is returned. 19419func (iter *TldLegalAgreementCollectionIterator) NextWithContext(ctx context.Context) (err error) { 19420 if tracing.IsEnabled() { 19421 ctx = tracing.StartSpan(ctx, fqdn+"/TldLegalAgreementCollectionIterator.NextWithContext") 19422 defer func() { 19423 sc := -1 19424 if iter.Response().Response.Response != nil { 19425 sc = iter.Response().Response.Response.StatusCode 19426 } 19427 tracing.EndSpan(ctx, sc, err) 19428 }() 19429 } 19430 iter.i++ 19431 if iter.i < len(iter.page.Values()) { 19432 return nil 19433 } 19434 err = iter.page.NextWithContext(ctx) 19435 if err != nil { 19436 iter.i-- 19437 return err 19438 } 19439 iter.i = 0 19440 return nil 19441} 19442 19443// Next advances to the next value. If there was an error making 19444// the request the iterator does not advance and the error is returned. 19445// Deprecated: Use NextWithContext() instead. 19446func (iter *TldLegalAgreementCollectionIterator) Next() error { 19447 return iter.NextWithContext(context.Background()) 19448} 19449 19450// NotDone returns true if the enumeration should be started or is not yet complete. 19451func (iter TldLegalAgreementCollectionIterator) NotDone() bool { 19452 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 19453} 19454 19455// Response returns the raw server response from the last page request. 19456func (iter TldLegalAgreementCollectionIterator) Response() TldLegalAgreementCollection { 19457 return iter.page.Response() 19458} 19459 19460// Value returns the current value or a zero-initialized value if the 19461// iterator has advanced beyond the end of the collection. 19462func (iter TldLegalAgreementCollectionIterator) Value() TldLegalAgreement { 19463 if !iter.page.NotDone() { 19464 return TldLegalAgreement{} 19465 } 19466 return iter.page.Values()[iter.i] 19467} 19468 19469// Creates a new instance of the TldLegalAgreementCollectionIterator type. 19470func NewTldLegalAgreementCollectionIterator(page TldLegalAgreementCollectionPage) TldLegalAgreementCollectionIterator { 19471 return TldLegalAgreementCollectionIterator{page: page} 19472} 19473 19474// IsEmpty returns true if the ListResult contains no values. 19475func (tlac TldLegalAgreementCollection) IsEmpty() bool { 19476 return tlac.Value == nil || len(*tlac.Value) == 0 19477} 19478 19479// tldLegalAgreementCollectionPreparer prepares a request to retrieve the next set of results. 19480// It returns nil if no more results exist. 19481func (tlac TldLegalAgreementCollection) tldLegalAgreementCollectionPreparer(ctx context.Context) (*http.Request, error) { 19482 if tlac.NextLink == nil || len(to.String(tlac.NextLink)) < 1 { 19483 return nil, nil 19484 } 19485 return autorest.Prepare((&http.Request{}).WithContext(ctx), 19486 autorest.AsJSON(), 19487 autorest.AsGet(), 19488 autorest.WithBaseURL(to.String(tlac.NextLink))) 19489} 19490 19491// TldLegalAgreementCollectionPage contains a page of TldLegalAgreement values. 19492type TldLegalAgreementCollectionPage struct { 19493 fn func(context.Context, TldLegalAgreementCollection) (TldLegalAgreementCollection, error) 19494 tlac TldLegalAgreementCollection 19495} 19496 19497// NextWithContext advances to the next page of values. If there was an error making 19498// the request the page does not advance and the error is returned. 19499func (page *TldLegalAgreementCollectionPage) NextWithContext(ctx context.Context) (err error) { 19500 if tracing.IsEnabled() { 19501 ctx = tracing.StartSpan(ctx, fqdn+"/TldLegalAgreementCollectionPage.NextWithContext") 19502 defer func() { 19503 sc := -1 19504 if page.Response().Response.Response != nil { 19505 sc = page.Response().Response.Response.StatusCode 19506 } 19507 tracing.EndSpan(ctx, sc, err) 19508 }() 19509 } 19510 next, err := page.fn(ctx, page.tlac) 19511 if err != nil { 19512 return err 19513 } 19514 page.tlac = next 19515 return nil 19516} 19517 19518// Next advances to the next page of values. If there was an error making 19519// the request the page does not advance and the error is returned. 19520// Deprecated: Use NextWithContext() instead. 19521func (page *TldLegalAgreementCollectionPage) Next() error { 19522 return page.NextWithContext(context.Background()) 19523} 19524 19525// NotDone returns true if the page enumeration should be started or is not yet complete. 19526func (page TldLegalAgreementCollectionPage) NotDone() bool { 19527 return !page.tlac.IsEmpty() 19528} 19529 19530// Response returns the raw server response from the last page request. 19531func (page TldLegalAgreementCollectionPage) Response() TldLegalAgreementCollection { 19532 return page.tlac 19533} 19534 19535// Values returns the slice of values for the current page or nil if there are no values. 19536func (page TldLegalAgreementCollectionPage) Values() []TldLegalAgreement { 19537 if page.tlac.IsEmpty() { 19538 return nil 19539 } 19540 return *page.tlac.Value 19541} 19542 19543// Creates a new instance of the TldLegalAgreementCollectionPage type. 19544func NewTldLegalAgreementCollectionPage(getNextPage func(context.Context, TldLegalAgreementCollection) (TldLegalAgreementCollection, error)) TldLegalAgreementCollectionPage { 19545 return TldLegalAgreementCollectionPage{fn: getNextPage} 19546} 19547 19548// TopLevelDomain a top level domain object. 19549type TopLevelDomain struct { 19550 autorest.Response `json:"-"` 19551 // TopLevelDomainProperties - TopLevelDomain resource specific properties 19552 *TopLevelDomainProperties `json:"properties,omitempty"` 19553 // ID - READ-ONLY; Resource Id. 19554 ID *string `json:"id,omitempty"` 19555 // Name - READ-ONLY; Resource Name. 19556 Name *string `json:"name,omitempty"` 19557 // Kind - Kind of resource. 19558 Kind *string `json:"kind,omitempty"` 19559 // Type - READ-ONLY; Resource type. 19560 Type *string `json:"type,omitempty"` 19561} 19562 19563// MarshalJSON is the custom marshaler for TopLevelDomain. 19564func (tld TopLevelDomain) MarshalJSON() ([]byte, error) { 19565 objectMap := make(map[string]interface{}) 19566 if tld.TopLevelDomainProperties != nil { 19567 objectMap["properties"] = tld.TopLevelDomainProperties 19568 } 19569 if tld.Kind != nil { 19570 objectMap["kind"] = tld.Kind 19571 } 19572 return json.Marshal(objectMap) 19573} 19574 19575// UnmarshalJSON is the custom unmarshaler for TopLevelDomain struct. 19576func (tld *TopLevelDomain) UnmarshalJSON(body []byte) error { 19577 var m map[string]*json.RawMessage 19578 err := json.Unmarshal(body, &m) 19579 if err != nil { 19580 return err 19581 } 19582 for k, v := range m { 19583 switch k { 19584 case "properties": 19585 if v != nil { 19586 var topLevelDomainProperties TopLevelDomainProperties 19587 err = json.Unmarshal(*v, &topLevelDomainProperties) 19588 if err != nil { 19589 return err 19590 } 19591 tld.TopLevelDomainProperties = &topLevelDomainProperties 19592 } 19593 case "id": 19594 if v != nil { 19595 var ID string 19596 err = json.Unmarshal(*v, &ID) 19597 if err != nil { 19598 return err 19599 } 19600 tld.ID = &ID 19601 } 19602 case "name": 19603 if v != nil { 19604 var name string 19605 err = json.Unmarshal(*v, &name) 19606 if err != nil { 19607 return err 19608 } 19609 tld.Name = &name 19610 } 19611 case "kind": 19612 if v != nil { 19613 var kind string 19614 err = json.Unmarshal(*v, &kind) 19615 if err != nil { 19616 return err 19617 } 19618 tld.Kind = &kind 19619 } 19620 case "type": 19621 if v != nil { 19622 var typeVar string 19623 err = json.Unmarshal(*v, &typeVar) 19624 if err != nil { 19625 return err 19626 } 19627 tld.Type = &typeVar 19628 } 19629 } 19630 } 19631 19632 return nil 19633} 19634 19635// TopLevelDomainAgreementOption options for retrieving the list of top level domain legal agreements. 19636type TopLevelDomainAgreementOption struct { 19637 // IncludePrivacy - If <code>true</code>, then the list of agreements will include agreements for domain privacy as well; otherwise, <code>false</code>. 19638 IncludePrivacy *bool `json:"includePrivacy,omitempty"` 19639 // ForTransfer - If <code>true</code>, then the list of agreements will include agreements for domain transfer as well; otherwise, <code>false</code>. 19640 ForTransfer *bool `json:"forTransfer,omitempty"` 19641} 19642 19643// TopLevelDomainCollection collection of Top-level domains. 19644type TopLevelDomainCollection struct { 19645 autorest.Response `json:"-"` 19646 // Value - Collection of resources. 19647 Value *[]TopLevelDomain `json:"value,omitempty"` 19648 // NextLink - READ-ONLY; Link to next page of resources. 19649 NextLink *string `json:"nextLink,omitempty"` 19650} 19651 19652// TopLevelDomainCollectionIterator provides access to a complete listing of TopLevelDomain values. 19653type TopLevelDomainCollectionIterator struct { 19654 i int 19655 page TopLevelDomainCollectionPage 19656} 19657 19658// NextWithContext advances to the next value. If there was an error making 19659// the request the iterator does not advance and the error is returned. 19660func (iter *TopLevelDomainCollectionIterator) NextWithContext(ctx context.Context) (err error) { 19661 if tracing.IsEnabled() { 19662 ctx = tracing.StartSpan(ctx, fqdn+"/TopLevelDomainCollectionIterator.NextWithContext") 19663 defer func() { 19664 sc := -1 19665 if iter.Response().Response.Response != nil { 19666 sc = iter.Response().Response.Response.StatusCode 19667 } 19668 tracing.EndSpan(ctx, sc, err) 19669 }() 19670 } 19671 iter.i++ 19672 if iter.i < len(iter.page.Values()) { 19673 return nil 19674 } 19675 err = iter.page.NextWithContext(ctx) 19676 if err != nil { 19677 iter.i-- 19678 return err 19679 } 19680 iter.i = 0 19681 return nil 19682} 19683 19684// Next advances to the next value. If there was an error making 19685// the request the iterator does not advance and the error is returned. 19686// Deprecated: Use NextWithContext() instead. 19687func (iter *TopLevelDomainCollectionIterator) Next() error { 19688 return iter.NextWithContext(context.Background()) 19689} 19690 19691// NotDone returns true if the enumeration should be started or is not yet complete. 19692func (iter TopLevelDomainCollectionIterator) NotDone() bool { 19693 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 19694} 19695 19696// Response returns the raw server response from the last page request. 19697func (iter TopLevelDomainCollectionIterator) Response() TopLevelDomainCollection { 19698 return iter.page.Response() 19699} 19700 19701// Value returns the current value or a zero-initialized value if the 19702// iterator has advanced beyond the end of the collection. 19703func (iter TopLevelDomainCollectionIterator) Value() TopLevelDomain { 19704 if !iter.page.NotDone() { 19705 return TopLevelDomain{} 19706 } 19707 return iter.page.Values()[iter.i] 19708} 19709 19710// Creates a new instance of the TopLevelDomainCollectionIterator type. 19711func NewTopLevelDomainCollectionIterator(page TopLevelDomainCollectionPage) TopLevelDomainCollectionIterator { 19712 return TopLevelDomainCollectionIterator{page: page} 19713} 19714 19715// IsEmpty returns true if the ListResult contains no values. 19716func (tldc TopLevelDomainCollection) IsEmpty() bool { 19717 return tldc.Value == nil || len(*tldc.Value) == 0 19718} 19719 19720// topLevelDomainCollectionPreparer prepares a request to retrieve the next set of results. 19721// It returns nil if no more results exist. 19722func (tldc TopLevelDomainCollection) topLevelDomainCollectionPreparer(ctx context.Context) (*http.Request, error) { 19723 if tldc.NextLink == nil || len(to.String(tldc.NextLink)) < 1 { 19724 return nil, nil 19725 } 19726 return autorest.Prepare((&http.Request{}).WithContext(ctx), 19727 autorest.AsJSON(), 19728 autorest.AsGet(), 19729 autorest.WithBaseURL(to.String(tldc.NextLink))) 19730} 19731 19732// TopLevelDomainCollectionPage contains a page of TopLevelDomain values. 19733type TopLevelDomainCollectionPage struct { 19734 fn func(context.Context, TopLevelDomainCollection) (TopLevelDomainCollection, error) 19735 tldc TopLevelDomainCollection 19736} 19737 19738// NextWithContext advances to the next page of values. If there was an error making 19739// the request the page does not advance and the error is returned. 19740func (page *TopLevelDomainCollectionPage) NextWithContext(ctx context.Context) (err error) { 19741 if tracing.IsEnabled() { 19742 ctx = tracing.StartSpan(ctx, fqdn+"/TopLevelDomainCollectionPage.NextWithContext") 19743 defer func() { 19744 sc := -1 19745 if page.Response().Response.Response != nil { 19746 sc = page.Response().Response.Response.StatusCode 19747 } 19748 tracing.EndSpan(ctx, sc, err) 19749 }() 19750 } 19751 next, err := page.fn(ctx, page.tldc) 19752 if err != nil { 19753 return err 19754 } 19755 page.tldc = next 19756 return nil 19757} 19758 19759// Next advances to the next page of values. If there was an error making 19760// the request the page does not advance and the error is returned. 19761// Deprecated: Use NextWithContext() instead. 19762func (page *TopLevelDomainCollectionPage) Next() error { 19763 return page.NextWithContext(context.Background()) 19764} 19765 19766// NotDone returns true if the page enumeration should be started or is not yet complete. 19767func (page TopLevelDomainCollectionPage) NotDone() bool { 19768 return !page.tldc.IsEmpty() 19769} 19770 19771// Response returns the raw server response from the last page request. 19772func (page TopLevelDomainCollectionPage) Response() TopLevelDomainCollection { 19773 return page.tldc 19774} 19775 19776// Values returns the slice of values for the current page or nil if there are no values. 19777func (page TopLevelDomainCollectionPage) Values() []TopLevelDomain { 19778 if page.tldc.IsEmpty() { 19779 return nil 19780 } 19781 return *page.tldc.Value 19782} 19783 19784// Creates a new instance of the TopLevelDomainCollectionPage type. 19785func NewTopLevelDomainCollectionPage(getNextPage func(context.Context, TopLevelDomainCollection) (TopLevelDomainCollection, error)) TopLevelDomainCollectionPage { 19786 return TopLevelDomainCollectionPage{fn: getNextPage} 19787} 19788 19789// TopLevelDomainProperties topLevelDomain resource specific properties 19790type TopLevelDomainProperties struct { 19791 // DomainName - READ-ONLY; Name of the top level domain. 19792 DomainName *string `json:"name,omitempty"` 19793 // Privacy - If <code>true</code>, then the top level domain supports domain privacy; otherwise, <code>false</code>. 19794 Privacy *bool `json:"privacy,omitempty"` 19795} 19796 19797// TriggeredJobHistory triggered Web Job History. List of Triggered Web Job Run Information elements. 19798type TriggeredJobHistory struct { 19799 autorest.Response `json:"-"` 19800 // TriggeredJobHistoryProperties - TriggeredJobHistory resource specific properties 19801 *TriggeredJobHistoryProperties `json:"properties,omitempty"` 19802 // ID - READ-ONLY; Resource Id. 19803 ID *string `json:"id,omitempty"` 19804 // Name - READ-ONLY; Resource Name. 19805 Name *string `json:"name,omitempty"` 19806 // Kind - Kind of resource. 19807 Kind *string `json:"kind,omitempty"` 19808 // Type - READ-ONLY; Resource type. 19809 Type *string `json:"type,omitempty"` 19810} 19811 19812// MarshalJSON is the custom marshaler for TriggeredJobHistory. 19813func (tjh TriggeredJobHistory) MarshalJSON() ([]byte, error) { 19814 objectMap := make(map[string]interface{}) 19815 if tjh.TriggeredJobHistoryProperties != nil { 19816 objectMap["properties"] = tjh.TriggeredJobHistoryProperties 19817 } 19818 if tjh.Kind != nil { 19819 objectMap["kind"] = tjh.Kind 19820 } 19821 return json.Marshal(objectMap) 19822} 19823 19824// UnmarshalJSON is the custom unmarshaler for TriggeredJobHistory struct. 19825func (tjh *TriggeredJobHistory) UnmarshalJSON(body []byte) error { 19826 var m map[string]*json.RawMessage 19827 err := json.Unmarshal(body, &m) 19828 if err != nil { 19829 return err 19830 } 19831 for k, v := range m { 19832 switch k { 19833 case "properties": 19834 if v != nil { 19835 var triggeredJobHistoryProperties TriggeredJobHistoryProperties 19836 err = json.Unmarshal(*v, &triggeredJobHistoryProperties) 19837 if err != nil { 19838 return err 19839 } 19840 tjh.TriggeredJobHistoryProperties = &triggeredJobHistoryProperties 19841 } 19842 case "id": 19843 if v != nil { 19844 var ID string 19845 err = json.Unmarshal(*v, &ID) 19846 if err != nil { 19847 return err 19848 } 19849 tjh.ID = &ID 19850 } 19851 case "name": 19852 if v != nil { 19853 var name string 19854 err = json.Unmarshal(*v, &name) 19855 if err != nil { 19856 return err 19857 } 19858 tjh.Name = &name 19859 } 19860 case "kind": 19861 if v != nil { 19862 var kind string 19863 err = json.Unmarshal(*v, &kind) 19864 if err != nil { 19865 return err 19866 } 19867 tjh.Kind = &kind 19868 } 19869 case "type": 19870 if v != nil { 19871 var typeVar string 19872 err = json.Unmarshal(*v, &typeVar) 19873 if err != nil { 19874 return err 19875 } 19876 tjh.Type = &typeVar 19877 } 19878 } 19879 } 19880 19881 return nil 19882} 19883 19884// TriggeredJobHistoryCollection collection of Kudu continuous web job information elements. 19885type TriggeredJobHistoryCollection struct { 19886 autorest.Response `json:"-"` 19887 // Value - Collection of resources. 19888 Value *[]TriggeredJobHistory `json:"value,omitempty"` 19889 // NextLink - READ-ONLY; Link to next page of resources. 19890 NextLink *string `json:"nextLink,omitempty"` 19891} 19892 19893// TriggeredJobHistoryCollectionIterator provides access to a complete listing of TriggeredJobHistory 19894// values. 19895type TriggeredJobHistoryCollectionIterator struct { 19896 i int 19897 page TriggeredJobHistoryCollectionPage 19898} 19899 19900// NextWithContext advances to the next value. If there was an error making 19901// the request the iterator does not advance and the error is returned. 19902func (iter *TriggeredJobHistoryCollectionIterator) NextWithContext(ctx context.Context) (err error) { 19903 if tracing.IsEnabled() { 19904 ctx = tracing.StartSpan(ctx, fqdn+"/TriggeredJobHistoryCollectionIterator.NextWithContext") 19905 defer func() { 19906 sc := -1 19907 if iter.Response().Response.Response != nil { 19908 sc = iter.Response().Response.Response.StatusCode 19909 } 19910 tracing.EndSpan(ctx, sc, err) 19911 }() 19912 } 19913 iter.i++ 19914 if iter.i < len(iter.page.Values()) { 19915 return nil 19916 } 19917 err = iter.page.NextWithContext(ctx) 19918 if err != nil { 19919 iter.i-- 19920 return err 19921 } 19922 iter.i = 0 19923 return nil 19924} 19925 19926// Next advances to the next value. If there was an error making 19927// the request the iterator does not advance and the error is returned. 19928// Deprecated: Use NextWithContext() instead. 19929func (iter *TriggeredJobHistoryCollectionIterator) Next() error { 19930 return iter.NextWithContext(context.Background()) 19931} 19932 19933// NotDone returns true if the enumeration should be started or is not yet complete. 19934func (iter TriggeredJobHistoryCollectionIterator) NotDone() bool { 19935 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 19936} 19937 19938// Response returns the raw server response from the last page request. 19939func (iter TriggeredJobHistoryCollectionIterator) Response() TriggeredJobHistoryCollection { 19940 return iter.page.Response() 19941} 19942 19943// Value returns the current value or a zero-initialized value if the 19944// iterator has advanced beyond the end of the collection. 19945func (iter TriggeredJobHistoryCollectionIterator) Value() TriggeredJobHistory { 19946 if !iter.page.NotDone() { 19947 return TriggeredJobHistory{} 19948 } 19949 return iter.page.Values()[iter.i] 19950} 19951 19952// Creates a new instance of the TriggeredJobHistoryCollectionIterator type. 19953func NewTriggeredJobHistoryCollectionIterator(page TriggeredJobHistoryCollectionPage) TriggeredJobHistoryCollectionIterator { 19954 return TriggeredJobHistoryCollectionIterator{page: page} 19955} 19956 19957// IsEmpty returns true if the ListResult contains no values. 19958func (tjhc TriggeredJobHistoryCollection) IsEmpty() bool { 19959 return tjhc.Value == nil || len(*tjhc.Value) == 0 19960} 19961 19962// triggeredJobHistoryCollectionPreparer prepares a request to retrieve the next set of results. 19963// It returns nil if no more results exist. 19964func (tjhc TriggeredJobHistoryCollection) triggeredJobHistoryCollectionPreparer(ctx context.Context) (*http.Request, error) { 19965 if tjhc.NextLink == nil || len(to.String(tjhc.NextLink)) < 1 { 19966 return nil, nil 19967 } 19968 return autorest.Prepare((&http.Request{}).WithContext(ctx), 19969 autorest.AsJSON(), 19970 autorest.AsGet(), 19971 autorest.WithBaseURL(to.String(tjhc.NextLink))) 19972} 19973 19974// TriggeredJobHistoryCollectionPage contains a page of TriggeredJobHistory values. 19975type TriggeredJobHistoryCollectionPage struct { 19976 fn func(context.Context, TriggeredJobHistoryCollection) (TriggeredJobHistoryCollection, error) 19977 tjhc TriggeredJobHistoryCollection 19978} 19979 19980// NextWithContext advances to the next page of values. If there was an error making 19981// the request the page does not advance and the error is returned. 19982func (page *TriggeredJobHistoryCollectionPage) NextWithContext(ctx context.Context) (err error) { 19983 if tracing.IsEnabled() { 19984 ctx = tracing.StartSpan(ctx, fqdn+"/TriggeredJobHistoryCollectionPage.NextWithContext") 19985 defer func() { 19986 sc := -1 19987 if page.Response().Response.Response != nil { 19988 sc = page.Response().Response.Response.StatusCode 19989 } 19990 tracing.EndSpan(ctx, sc, err) 19991 }() 19992 } 19993 next, err := page.fn(ctx, page.tjhc) 19994 if err != nil { 19995 return err 19996 } 19997 page.tjhc = next 19998 return nil 19999} 20000 20001// Next advances to the next page of values. If there was an error making 20002// the request the page does not advance and the error is returned. 20003// Deprecated: Use NextWithContext() instead. 20004func (page *TriggeredJobHistoryCollectionPage) Next() error { 20005 return page.NextWithContext(context.Background()) 20006} 20007 20008// NotDone returns true if the page enumeration should be started or is not yet complete. 20009func (page TriggeredJobHistoryCollectionPage) NotDone() bool { 20010 return !page.tjhc.IsEmpty() 20011} 20012 20013// Response returns the raw server response from the last page request. 20014func (page TriggeredJobHistoryCollectionPage) Response() TriggeredJobHistoryCollection { 20015 return page.tjhc 20016} 20017 20018// Values returns the slice of values for the current page or nil if there are no values. 20019func (page TriggeredJobHistoryCollectionPage) Values() []TriggeredJobHistory { 20020 if page.tjhc.IsEmpty() { 20021 return nil 20022 } 20023 return *page.tjhc.Value 20024} 20025 20026// Creates a new instance of the TriggeredJobHistoryCollectionPage type. 20027func NewTriggeredJobHistoryCollectionPage(getNextPage func(context.Context, TriggeredJobHistoryCollection) (TriggeredJobHistoryCollection, error)) TriggeredJobHistoryCollectionPage { 20028 return TriggeredJobHistoryCollectionPage{fn: getNextPage} 20029} 20030 20031// TriggeredJobHistoryProperties triggeredJobHistory resource specific properties 20032type TriggeredJobHistoryProperties struct { 20033 // TriggeredJobRuns - List of triggered web job runs. 20034 TriggeredJobRuns *[]TriggeredJobRun `json:"triggeredJobRuns,omitempty"` 20035} 20036 20037// TriggeredJobRun triggered Web Job Run Information. 20038type TriggeredJobRun struct { 20039 // TriggeredJobRunProperties - TriggeredJobRun resource specific properties 20040 *TriggeredJobRunProperties `json:"properties,omitempty"` 20041 // ID - READ-ONLY; Resource Id. 20042 ID *string `json:"id,omitempty"` 20043 // Name - READ-ONLY; Resource Name. 20044 Name *string `json:"name,omitempty"` 20045 // Kind - Kind of resource. 20046 Kind *string `json:"kind,omitempty"` 20047 // Type - READ-ONLY; Resource type. 20048 Type *string `json:"type,omitempty"` 20049} 20050 20051// MarshalJSON is the custom marshaler for TriggeredJobRun. 20052func (tjr TriggeredJobRun) MarshalJSON() ([]byte, error) { 20053 objectMap := make(map[string]interface{}) 20054 if tjr.TriggeredJobRunProperties != nil { 20055 objectMap["properties"] = tjr.TriggeredJobRunProperties 20056 } 20057 if tjr.Kind != nil { 20058 objectMap["kind"] = tjr.Kind 20059 } 20060 return json.Marshal(objectMap) 20061} 20062 20063// UnmarshalJSON is the custom unmarshaler for TriggeredJobRun struct. 20064func (tjr *TriggeredJobRun) UnmarshalJSON(body []byte) error { 20065 var m map[string]*json.RawMessage 20066 err := json.Unmarshal(body, &m) 20067 if err != nil { 20068 return err 20069 } 20070 for k, v := range m { 20071 switch k { 20072 case "properties": 20073 if v != nil { 20074 var triggeredJobRunProperties TriggeredJobRunProperties 20075 err = json.Unmarshal(*v, &triggeredJobRunProperties) 20076 if err != nil { 20077 return err 20078 } 20079 tjr.TriggeredJobRunProperties = &triggeredJobRunProperties 20080 } 20081 case "id": 20082 if v != nil { 20083 var ID string 20084 err = json.Unmarshal(*v, &ID) 20085 if err != nil { 20086 return err 20087 } 20088 tjr.ID = &ID 20089 } 20090 case "name": 20091 if v != nil { 20092 var name string 20093 err = json.Unmarshal(*v, &name) 20094 if err != nil { 20095 return err 20096 } 20097 tjr.Name = &name 20098 } 20099 case "kind": 20100 if v != nil { 20101 var kind string 20102 err = json.Unmarshal(*v, &kind) 20103 if err != nil { 20104 return err 20105 } 20106 tjr.Kind = &kind 20107 } 20108 case "type": 20109 if v != nil { 20110 var typeVar string 20111 err = json.Unmarshal(*v, &typeVar) 20112 if err != nil { 20113 return err 20114 } 20115 tjr.Type = &typeVar 20116 } 20117 } 20118 } 20119 20120 return nil 20121} 20122 20123// TriggeredJobRunProperties triggeredJobRun resource specific properties 20124type TriggeredJobRunProperties struct { 20125 // ID - Job ID. 20126 ID *string `json:"id,omitempty"` 20127 // Name - READ-ONLY; Job name. 20128 Name *string `json:"name,omitempty"` 20129 // Status - Job status. Possible values include: 'TriggeredWebJobStatusSuccess', 'TriggeredWebJobStatusFailed', 'TriggeredWebJobStatusError' 20130 Status TriggeredWebJobStatus `json:"status,omitempty"` 20131 // StartTime - Start time. 20132 StartTime *date.Time `json:"startTime,omitempty"` 20133 // EndTime - End time. 20134 EndTime *date.Time `json:"endTime,omitempty"` 20135 // Duration - Job duration. 20136 Duration *string `json:"duration,omitempty"` 20137 // OutputURL - Output URL. 20138 OutputURL *string `json:"outputUrl,omitempty"` 20139 // ErrorURL - Error URL. 20140 ErrorURL *string `json:"errorUrl,omitempty"` 20141 // URL - Job URL. 20142 URL *string `json:"url,omitempty"` 20143 // JobName - Job name. 20144 JobName *string `json:"jobName,omitempty"` 20145 // Trigger - Job trigger. 20146 Trigger *string `json:"trigger,omitempty"` 20147} 20148 20149// TriggeredWebJob triggered Web Job Information. 20150type TriggeredWebJob struct { 20151 autorest.Response `json:"-"` 20152 // TriggeredWebJobProperties - TriggeredWebJob resource specific properties 20153 *TriggeredWebJobProperties `json:"properties,omitempty"` 20154 // ID - READ-ONLY; Resource Id. 20155 ID *string `json:"id,omitempty"` 20156 // Name - READ-ONLY; Resource Name. 20157 Name *string `json:"name,omitempty"` 20158 // Kind - Kind of resource. 20159 Kind *string `json:"kind,omitempty"` 20160 // Type - READ-ONLY; Resource type. 20161 Type *string `json:"type,omitempty"` 20162} 20163 20164// MarshalJSON is the custom marshaler for TriggeredWebJob. 20165func (twj TriggeredWebJob) MarshalJSON() ([]byte, error) { 20166 objectMap := make(map[string]interface{}) 20167 if twj.TriggeredWebJobProperties != nil { 20168 objectMap["properties"] = twj.TriggeredWebJobProperties 20169 } 20170 if twj.Kind != nil { 20171 objectMap["kind"] = twj.Kind 20172 } 20173 return json.Marshal(objectMap) 20174} 20175 20176// UnmarshalJSON is the custom unmarshaler for TriggeredWebJob struct. 20177func (twj *TriggeredWebJob) UnmarshalJSON(body []byte) error { 20178 var m map[string]*json.RawMessage 20179 err := json.Unmarshal(body, &m) 20180 if err != nil { 20181 return err 20182 } 20183 for k, v := range m { 20184 switch k { 20185 case "properties": 20186 if v != nil { 20187 var triggeredWebJobProperties TriggeredWebJobProperties 20188 err = json.Unmarshal(*v, &triggeredWebJobProperties) 20189 if err != nil { 20190 return err 20191 } 20192 twj.TriggeredWebJobProperties = &triggeredWebJobProperties 20193 } 20194 case "id": 20195 if v != nil { 20196 var ID string 20197 err = json.Unmarshal(*v, &ID) 20198 if err != nil { 20199 return err 20200 } 20201 twj.ID = &ID 20202 } 20203 case "name": 20204 if v != nil { 20205 var name string 20206 err = json.Unmarshal(*v, &name) 20207 if err != nil { 20208 return err 20209 } 20210 twj.Name = &name 20211 } 20212 case "kind": 20213 if v != nil { 20214 var kind string 20215 err = json.Unmarshal(*v, &kind) 20216 if err != nil { 20217 return err 20218 } 20219 twj.Kind = &kind 20220 } 20221 case "type": 20222 if v != nil { 20223 var typeVar string 20224 err = json.Unmarshal(*v, &typeVar) 20225 if err != nil { 20226 return err 20227 } 20228 twj.Type = &typeVar 20229 } 20230 } 20231 } 20232 20233 return nil 20234} 20235 20236// TriggeredWebJobCollection collection of Kudu continuous web job information elements. 20237type TriggeredWebJobCollection struct { 20238 autorest.Response `json:"-"` 20239 // Value - Collection of resources. 20240 Value *[]TriggeredWebJob `json:"value,omitempty"` 20241 // NextLink - READ-ONLY; Link to next page of resources. 20242 NextLink *string `json:"nextLink,omitempty"` 20243} 20244 20245// TriggeredWebJobCollectionIterator provides access to a complete listing of TriggeredWebJob values. 20246type TriggeredWebJobCollectionIterator struct { 20247 i int 20248 page TriggeredWebJobCollectionPage 20249} 20250 20251// NextWithContext advances to the next value. If there was an error making 20252// the request the iterator does not advance and the error is returned. 20253func (iter *TriggeredWebJobCollectionIterator) NextWithContext(ctx context.Context) (err error) { 20254 if tracing.IsEnabled() { 20255 ctx = tracing.StartSpan(ctx, fqdn+"/TriggeredWebJobCollectionIterator.NextWithContext") 20256 defer func() { 20257 sc := -1 20258 if iter.Response().Response.Response != nil { 20259 sc = iter.Response().Response.Response.StatusCode 20260 } 20261 tracing.EndSpan(ctx, sc, err) 20262 }() 20263 } 20264 iter.i++ 20265 if iter.i < len(iter.page.Values()) { 20266 return nil 20267 } 20268 err = iter.page.NextWithContext(ctx) 20269 if err != nil { 20270 iter.i-- 20271 return err 20272 } 20273 iter.i = 0 20274 return nil 20275} 20276 20277// Next advances to the next value. If there was an error making 20278// the request the iterator does not advance and the error is returned. 20279// Deprecated: Use NextWithContext() instead. 20280func (iter *TriggeredWebJobCollectionIterator) Next() error { 20281 return iter.NextWithContext(context.Background()) 20282} 20283 20284// NotDone returns true if the enumeration should be started or is not yet complete. 20285func (iter TriggeredWebJobCollectionIterator) NotDone() bool { 20286 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 20287} 20288 20289// Response returns the raw server response from the last page request. 20290func (iter TriggeredWebJobCollectionIterator) Response() TriggeredWebJobCollection { 20291 return iter.page.Response() 20292} 20293 20294// Value returns the current value or a zero-initialized value if the 20295// iterator has advanced beyond the end of the collection. 20296func (iter TriggeredWebJobCollectionIterator) Value() TriggeredWebJob { 20297 if !iter.page.NotDone() { 20298 return TriggeredWebJob{} 20299 } 20300 return iter.page.Values()[iter.i] 20301} 20302 20303// Creates a new instance of the TriggeredWebJobCollectionIterator type. 20304func NewTriggeredWebJobCollectionIterator(page TriggeredWebJobCollectionPage) TriggeredWebJobCollectionIterator { 20305 return TriggeredWebJobCollectionIterator{page: page} 20306} 20307 20308// IsEmpty returns true if the ListResult contains no values. 20309func (twjc TriggeredWebJobCollection) IsEmpty() bool { 20310 return twjc.Value == nil || len(*twjc.Value) == 0 20311} 20312 20313// triggeredWebJobCollectionPreparer prepares a request to retrieve the next set of results. 20314// It returns nil if no more results exist. 20315func (twjc TriggeredWebJobCollection) triggeredWebJobCollectionPreparer(ctx context.Context) (*http.Request, error) { 20316 if twjc.NextLink == nil || len(to.String(twjc.NextLink)) < 1 { 20317 return nil, nil 20318 } 20319 return autorest.Prepare((&http.Request{}).WithContext(ctx), 20320 autorest.AsJSON(), 20321 autorest.AsGet(), 20322 autorest.WithBaseURL(to.String(twjc.NextLink))) 20323} 20324 20325// TriggeredWebJobCollectionPage contains a page of TriggeredWebJob values. 20326type TriggeredWebJobCollectionPage struct { 20327 fn func(context.Context, TriggeredWebJobCollection) (TriggeredWebJobCollection, error) 20328 twjc TriggeredWebJobCollection 20329} 20330 20331// NextWithContext advances to the next page of values. If there was an error making 20332// the request the page does not advance and the error is returned. 20333func (page *TriggeredWebJobCollectionPage) NextWithContext(ctx context.Context) (err error) { 20334 if tracing.IsEnabled() { 20335 ctx = tracing.StartSpan(ctx, fqdn+"/TriggeredWebJobCollectionPage.NextWithContext") 20336 defer func() { 20337 sc := -1 20338 if page.Response().Response.Response != nil { 20339 sc = page.Response().Response.Response.StatusCode 20340 } 20341 tracing.EndSpan(ctx, sc, err) 20342 }() 20343 } 20344 next, err := page.fn(ctx, page.twjc) 20345 if err != nil { 20346 return err 20347 } 20348 page.twjc = next 20349 return nil 20350} 20351 20352// Next advances to the next page of values. If there was an error making 20353// the request the page does not advance and the error is returned. 20354// Deprecated: Use NextWithContext() instead. 20355func (page *TriggeredWebJobCollectionPage) Next() error { 20356 return page.NextWithContext(context.Background()) 20357} 20358 20359// NotDone returns true if the page enumeration should be started or is not yet complete. 20360func (page TriggeredWebJobCollectionPage) NotDone() bool { 20361 return !page.twjc.IsEmpty() 20362} 20363 20364// Response returns the raw server response from the last page request. 20365func (page TriggeredWebJobCollectionPage) Response() TriggeredWebJobCollection { 20366 return page.twjc 20367} 20368 20369// Values returns the slice of values for the current page or nil if there are no values. 20370func (page TriggeredWebJobCollectionPage) Values() []TriggeredWebJob { 20371 if page.twjc.IsEmpty() { 20372 return nil 20373 } 20374 return *page.twjc.Value 20375} 20376 20377// Creates a new instance of the TriggeredWebJobCollectionPage type. 20378func NewTriggeredWebJobCollectionPage(getNextPage func(context.Context, TriggeredWebJobCollection) (TriggeredWebJobCollection, error)) TriggeredWebJobCollectionPage { 20379 return TriggeredWebJobCollectionPage{fn: getNextPage} 20380} 20381 20382// TriggeredWebJobProperties triggeredWebJob resource specific properties 20383type TriggeredWebJobProperties struct { 20384 // LatestRun - Latest job run information. 20385 LatestRun *TriggeredJobRun `json:"latestRun,omitempty"` 20386 // HistoryURL - History URL. 20387 HistoryURL *string `json:"historyUrl,omitempty"` 20388 // SchedulerLogsURL - Scheduler Logs URL. 20389 SchedulerLogsURL *string `json:"schedulerLogsUrl,omitempty"` 20390 // Name - READ-ONLY; Job name. Used as job identifier in ARM resource URI. 20391 Name *string `json:"name,omitempty"` 20392 // RunCommand - Run command. 20393 RunCommand *string `json:"runCommand,omitempty"` 20394 // URL - Job URL. 20395 URL *string `json:"url,omitempty"` 20396 // ExtraInfoURL - Extra Info URL. 20397 ExtraInfoURL *string `json:"extraInfoUrl,omitempty"` 20398 // JobType - Job type. Possible values include: 'Continuous', 'Triggered' 20399 JobType JobType `json:"jobType,omitempty"` 20400 // Error - Error information. 20401 Error *string `json:"error,omitempty"` 20402 // UsingSdk - Using SDK? 20403 UsingSdk *bool `json:"usingSdk,omitempty"` 20404 // Settings - Job settings. 20405 Settings map[string]interface{} `json:"settings"` 20406} 20407 20408// MarshalJSON is the custom marshaler for TriggeredWebJobProperties. 20409func (twj TriggeredWebJobProperties) MarshalJSON() ([]byte, error) { 20410 objectMap := make(map[string]interface{}) 20411 if twj.LatestRun != nil { 20412 objectMap["latestRun"] = twj.LatestRun 20413 } 20414 if twj.HistoryURL != nil { 20415 objectMap["historyUrl"] = twj.HistoryURL 20416 } 20417 if twj.SchedulerLogsURL != nil { 20418 objectMap["schedulerLogsUrl"] = twj.SchedulerLogsURL 20419 } 20420 if twj.RunCommand != nil { 20421 objectMap["runCommand"] = twj.RunCommand 20422 } 20423 if twj.URL != nil { 20424 objectMap["url"] = twj.URL 20425 } 20426 if twj.ExtraInfoURL != nil { 20427 objectMap["extraInfoUrl"] = twj.ExtraInfoURL 20428 } 20429 if twj.JobType != "" { 20430 objectMap["jobType"] = twj.JobType 20431 } 20432 if twj.Error != nil { 20433 objectMap["error"] = twj.Error 20434 } 20435 if twj.UsingSdk != nil { 20436 objectMap["usingSdk"] = twj.UsingSdk 20437 } 20438 if twj.Settings != nil { 20439 objectMap["settings"] = twj.Settings 20440 } 20441 return json.Marshal(objectMap) 20442} 20443 20444// Usage usage of the quota resource. 20445type Usage struct { 20446 // UsageProperties - Usage resource specific properties 20447 *UsageProperties `json:"properties,omitempty"` 20448 // ID - READ-ONLY; Resource Id. 20449 ID *string `json:"id,omitempty"` 20450 // Name - READ-ONLY; Resource Name. 20451 Name *string `json:"name,omitempty"` 20452 // Kind - Kind of resource. 20453 Kind *string `json:"kind,omitempty"` 20454 // Type - READ-ONLY; Resource type. 20455 Type *string `json:"type,omitempty"` 20456} 20457 20458// MarshalJSON is the custom marshaler for Usage. 20459func (u Usage) MarshalJSON() ([]byte, error) { 20460 objectMap := make(map[string]interface{}) 20461 if u.UsageProperties != nil { 20462 objectMap["properties"] = u.UsageProperties 20463 } 20464 if u.Kind != nil { 20465 objectMap["kind"] = u.Kind 20466 } 20467 return json.Marshal(objectMap) 20468} 20469 20470// UnmarshalJSON is the custom unmarshaler for Usage struct. 20471func (u *Usage) UnmarshalJSON(body []byte) error { 20472 var m map[string]*json.RawMessage 20473 err := json.Unmarshal(body, &m) 20474 if err != nil { 20475 return err 20476 } 20477 for k, v := range m { 20478 switch k { 20479 case "properties": 20480 if v != nil { 20481 var usageProperties UsageProperties 20482 err = json.Unmarshal(*v, &usageProperties) 20483 if err != nil { 20484 return err 20485 } 20486 u.UsageProperties = &usageProperties 20487 } 20488 case "id": 20489 if v != nil { 20490 var ID string 20491 err = json.Unmarshal(*v, &ID) 20492 if err != nil { 20493 return err 20494 } 20495 u.ID = &ID 20496 } 20497 case "name": 20498 if v != nil { 20499 var name string 20500 err = json.Unmarshal(*v, &name) 20501 if err != nil { 20502 return err 20503 } 20504 u.Name = &name 20505 } 20506 case "kind": 20507 if v != nil { 20508 var kind string 20509 err = json.Unmarshal(*v, &kind) 20510 if err != nil { 20511 return err 20512 } 20513 u.Kind = &kind 20514 } 20515 case "type": 20516 if v != nil { 20517 var typeVar string 20518 err = json.Unmarshal(*v, &typeVar) 20519 if err != nil { 20520 return err 20521 } 20522 u.Type = &typeVar 20523 } 20524 } 20525 } 20526 20527 return nil 20528} 20529 20530// UsageCollection collection of usages. 20531type UsageCollection struct { 20532 autorest.Response `json:"-"` 20533 // Value - Collection of resources. 20534 Value *[]Usage `json:"value,omitempty"` 20535 // NextLink - READ-ONLY; Link to next page of resources. 20536 NextLink *string `json:"nextLink,omitempty"` 20537} 20538 20539// UsageCollectionIterator provides access to a complete listing of Usage values. 20540type UsageCollectionIterator struct { 20541 i int 20542 page UsageCollectionPage 20543} 20544 20545// NextWithContext advances to the next value. If there was an error making 20546// the request the iterator does not advance and the error is returned. 20547func (iter *UsageCollectionIterator) NextWithContext(ctx context.Context) (err error) { 20548 if tracing.IsEnabled() { 20549 ctx = tracing.StartSpan(ctx, fqdn+"/UsageCollectionIterator.NextWithContext") 20550 defer func() { 20551 sc := -1 20552 if iter.Response().Response.Response != nil { 20553 sc = iter.Response().Response.Response.StatusCode 20554 } 20555 tracing.EndSpan(ctx, sc, err) 20556 }() 20557 } 20558 iter.i++ 20559 if iter.i < len(iter.page.Values()) { 20560 return nil 20561 } 20562 err = iter.page.NextWithContext(ctx) 20563 if err != nil { 20564 iter.i-- 20565 return err 20566 } 20567 iter.i = 0 20568 return nil 20569} 20570 20571// Next advances to the next value. If there was an error making 20572// the request the iterator does not advance and the error is returned. 20573// Deprecated: Use NextWithContext() instead. 20574func (iter *UsageCollectionIterator) Next() error { 20575 return iter.NextWithContext(context.Background()) 20576} 20577 20578// NotDone returns true if the enumeration should be started or is not yet complete. 20579func (iter UsageCollectionIterator) NotDone() bool { 20580 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 20581} 20582 20583// Response returns the raw server response from the last page request. 20584func (iter UsageCollectionIterator) Response() UsageCollection { 20585 return iter.page.Response() 20586} 20587 20588// Value returns the current value or a zero-initialized value if the 20589// iterator has advanced beyond the end of the collection. 20590func (iter UsageCollectionIterator) Value() Usage { 20591 if !iter.page.NotDone() { 20592 return Usage{} 20593 } 20594 return iter.page.Values()[iter.i] 20595} 20596 20597// Creates a new instance of the UsageCollectionIterator type. 20598func NewUsageCollectionIterator(page UsageCollectionPage) UsageCollectionIterator { 20599 return UsageCollectionIterator{page: page} 20600} 20601 20602// IsEmpty returns true if the ListResult contains no values. 20603func (uc UsageCollection) IsEmpty() bool { 20604 return uc.Value == nil || len(*uc.Value) == 0 20605} 20606 20607// usageCollectionPreparer prepares a request to retrieve the next set of results. 20608// It returns nil if no more results exist. 20609func (uc UsageCollection) usageCollectionPreparer(ctx context.Context) (*http.Request, error) { 20610 if uc.NextLink == nil || len(to.String(uc.NextLink)) < 1 { 20611 return nil, nil 20612 } 20613 return autorest.Prepare((&http.Request{}).WithContext(ctx), 20614 autorest.AsJSON(), 20615 autorest.AsGet(), 20616 autorest.WithBaseURL(to.String(uc.NextLink))) 20617} 20618 20619// UsageCollectionPage contains a page of Usage values. 20620type UsageCollectionPage struct { 20621 fn func(context.Context, UsageCollection) (UsageCollection, error) 20622 uc UsageCollection 20623} 20624 20625// NextWithContext advances to the next page of values. If there was an error making 20626// the request the page does not advance and the error is returned. 20627func (page *UsageCollectionPage) NextWithContext(ctx context.Context) (err error) { 20628 if tracing.IsEnabled() { 20629 ctx = tracing.StartSpan(ctx, fqdn+"/UsageCollectionPage.NextWithContext") 20630 defer func() { 20631 sc := -1 20632 if page.Response().Response.Response != nil { 20633 sc = page.Response().Response.Response.StatusCode 20634 } 20635 tracing.EndSpan(ctx, sc, err) 20636 }() 20637 } 20638 next, err := page.fn(ctx, page.uc) 20639 if err != nil { 20640 return err 20641 } 20642 page.uc = next 20643 return nil 20644} 20645 20646// Next advances to the next page of values. If there was an error making 20647// the request the page does not advance and the error is returned. 20648// Deprecated: Use NextWithContext() instead. 20649func (page *UsageCollectionPage) Next() error { 20650 return page.NextWithContext(context.Background()) 20651} 20652 20653// NotDone returns true if the page enumeration should be started or is not yet complete. 20654func (page UsageCollectionPage) NotDone() bool { 20655 return !page.uc.IsEmpty() 20656} 20657 20658// Response returns the raw server response from the last page request. 20659func (page UsageCollectionPage) Response() UsageCollection { 20660 return page.uc 20661} 20662 20663// Values returns the slice of values for the current page or nil if there are no values. 20664func (page UsageCollectionPage) Values() []Usage { 20665 if page.uc.IsEmpty() { 20666 return nil 20667 } 20668 return *page.uc.Value 20669} 20670 20671// Creates a new instance of the UsageCollectionPage type. 20672func NewUsageCollectionPage(getNextPage func(context.Context, UsageCollection) (UsageCollection, error)) UsageCollectionPage { 20673 return UsageCollectionPage{fn: getNextPage} 20674} 20675 20676// UsageProperties usage resource specific properties 20677type UsageProperties struct { 20678 // DisplayName - READ-ONLY; Friendly name shown in the UI. 20679 DisplayName *string `json:"displayName,omitempty"` 20680 // Name - READ-ONLY; Name of the quota. 20681 Name *string `json:"name,omitempty"` 20682 // ResourceName - READ-ONLY; Name of the quota resource. 20683 ResourceName *string `json:"resourceName,omitempty"` 20684 // Unit - READ-ONLY; Units of measurement for the quota resource. 20685 Unit *string `json:"unit,omitempty"` 20686 // CurrentValue - READ-ONLY; The current value of the resource counter. 20687 CurrentValue *int64 `json:"currentValue,omitempty"` 20688 // Limit - READ-ONLY; The resource limit. 20689 Limit *int64 `json:"limit,omitempty"` 20690 // NextResetTime - READ-ONLY; Next reset time for the resource counter. 20691 NextResetTime *date.Time `json:"nextResetTime,omitempty"` 20692 // ComputeMode - READ-ONLY; Compute mode used for this usage. Possible values include: 'ComputeModeOptionsShared', 'ComputeModeOptionsDedicated', 'ComputeModeOptionsDynamic' 20693 ComputeMode ComputeModeOptions `json:"computeMode,omitempty"` 20694 // SiteMode - READ-ONLY; Site mode used for this usage. 20695 SiteMode *string `json:"siteMode,omitempty"` 20696} 20697 20698// User user credentials used for publishing activity. 20699type User struct { 20700 autorest.Response `json:"-"` 20701 // UserProperties - User resource specific properties 20702 *UserProperties `json:"properties,omitempty"` 20703 // ID - READ-ONLY; Resource Id. 20704 ID *string `json:"id,omitempty"` 20705 // Name - READ-ONLY; Resource Name. 20706 Name *string `json:"name,omitempty"` 20707 // Kind - Kind of resource. 20708 Kind *string `json:"kind,omitempty"` 20709 // Type - READ-ONLY; Resource type. 20710 Type *string `json:"type,omitempty"` 20711} 20712 20713// MarshalJSON is the custom marshaler for User. 20714func (u User) MarshalJSON() ([]byte, error) { 20715 objectMap := make(map[string]interface{}) 20716 if u.UserProperties != nil { 20717 objectMap["properties"] = u.UserProperties 20718 } 20719 if u.Kind != nil { 20720 objectMap["kind"] = u.Kind 20721 } 20722 return json.Marshal(objectMap) 20723} 20724 20725// UnmarshalJSON is the custom unmarshaler for User struct. 20726func (u *User) UnmarshalJSON(body []byte) error { 20727 var m map[string]*json.RawMessage 20728 err := json.Unmarshal(body, &m) 20729 if err != nil { 20730 return err 20731 } 20732 for k, v := range m { 20733 switch k { 20734 case "properties": 20735 if v != nil { 20736 var userProperties UserProperties 20737 err = json.Unmarshal(*v, &userProperties) 20738 if err != nil { 20739 return err 20740 } 20741 u.UserProperties = &userProperties 20742 } 20743 case "id": 20744 if v != nil { 20745 var ID string 20746 err = json.Unmarshal(*v, &ID) 20747 if err != nil { 20748 return err 20749 } 20750 u.ID = &ID 20751 } 20752 case "name": 20753 if v != nil { 20754 var name string 20755 err = json.Unmarshal(*v, &name) 20756 if err != nil { 20757 return err 20758 } 20759 u.Name = &name 20760 } 20761 case "kind": 20762 if v != nil { 20763 var kind string 20764 err = json.Unmarshal(*v, &kind) 20765 if err != nil { 20766 return err 20767 } 20768 u.Kind = &kind 20769 } 20770 case "type": 20771 if v != nil { 20772 var typeVar string 20773 err = json.Unmarshal(*v, &typeVar) 20774 if err != nil { 20775 return err 20776 } 20777 u.Type = &typeVar 20778 } 20779 } 20780 } 20781 20782 return nil 20783} 20784 20785// UserProperties user resource specific properties 20786type UserProperties struct { 20787 // UserName - Username 20788 UserName *string `json:"name,omitempty"` 20789 // PublishingUserName - Username used for publishing. 20790 PublishingUserName *string `json:"publishingUserName,omitempty"` 20791 // PublishingPassword - Password used for publishing. 20792 PublishingPassword *string `json:"publishingPassword,omitempty"` 20793 // PublishingPasswordHash - Password hash used for publishing. 20794 PublishingPasswordHash *string `json:"publishingPasswordHash,omitempty"` 20795 // PublishingPasswordHashSalt - Password hash salt used for publishing. 20796 PublishingPasswordHashSalt *string `json:"publishingPasswordHashSalt,omitempty"` 20797} 20798 20799// ValidateProperties app properties used for validation. 20800type ValidateProperties struct { 20801 // ServerFarmID - ARM resource ID of an App Service plan that would host the app. 20802 ServerFarmID *string `json:"serverFarmId,omitempty"` 20803 // SkuName - Name of the target SKU for the App Service plan. 20804 SkuName *string `json:"skuName,omitempty"` 20805 // NeedLinuxWorkers - <code>true</code> if App Service plan is for Linux workers; otherwise, <code>false</code>. 20806 NeedLinuxWorkers *bool `json:"needLinuxWorkers,omitempty"` 20807 // IsSpot - <code>true</code> if App Service plan is for Spot instances; otherwise, <code>false</code>. 20808 IsSpot *bool `json:"isSpot,omitempty"` 20809 // Capacity - Target capacity of the App Service plan (number of VMs). 20810 Capacity *int32 `json:"capacity,omitempty"` 20811 // HostingEnvironment - Name of App Service Environment where app or App Service plan should be created. 20812 HostingEnvironment *string `json:"hostingEnvironment,omitempty"` 20813} 20814 20815// ValidateRequest resource validation request content. 20816type ValidateRequest struct { 20817 // Name - Resource name to verify. 20818 Name *string `json:"name,omitempty"` 20819 // Type - Resource type used for verification. Possible values include: 'ValidateResourceTypesServerFarm', 'ValidateResourceTypesSite' 20820 Type ValidateResourceTypes `json:"type,omitempty"` 20821 // Location - Expected location of the resource. 20822 Location *string `json:"location,omitempty"` 20823 // ValidateProperties - Properties of the resource to validate. 20824 *ValidateProperties `json:"properties,omitempty"` 20825} 20826 20827// MarshalJSON is the custom marshaler for ValidateRequest. 20828func (vr ValidateRequest) MarshalJSON() ([]byte, error) { 20829 objectMap := make(map[string]interface{}) 20830 if vr.Name != nil { 20831 objectMap["name"] = vr.Name 20832 } 20833 if vr.Type != "" { 20834 objectMap["type"] = vr.Type 20835 } 20836 if vr.Location != nil { 20837 objectMap["location"] = vr.Location 20838 } 20839 if vr.ValidateProperties != nil { 20840 objectMap["properties"] = vr.ValidateProperties 20841 } 20842 return json.Marshal(objectMap) 20843} 20844 20845// UnmarshalJSON is the custom unmarshaler for ValidateRequest struct. 20846func (vr *ValidateRequest) UnmarshalJSON(body []byte) error { 20847 var m map[string]*json.RawMessage 20848 err := json.Unmarshal(body, &m) 20849 if err != nil { 20850 return err 20851 } 20852 for k, v := range m { 20853 switch k { 20854 case "name": 20855 if v != nil { 20856 var name string 20857 err = json.Unmarshal(*v, &name) 20858 if err != nil { 20859 return err 20860 } 20861 vr.Name = &name 20862 } 20863 case "type": 20864 if v != nil { 20865 var typeVar ValidateResourceTypes 20866 err = json.Unmarshal(*v, &typeVar) 20867 if err != nil { 20868 return err 20869 } 20870 vr.Type = typeVar 20871 } 20872 case "location": 20873 if v != nil { 20874 var location string 20875 err = json.Unmarshal(*v, &location) 20876 if err != nil { 20877 return err 20878 } 20879 vr.Location = &location 20880 } 20881 case "properties": 20882 if v != nil { 20883 var validateProperties ValidateProperties 20884 err = json.Unmarshal(*v, &validateProperties) 20885 if err != nil { 20886 return err 20887 } 20888 vr.ValidateProperties = &validateProperties 20889 } 20890 } 20891 } 20892 20893 return nil 20894} 20895 20896// ValidateResponse describes the result of resource validation. 20897type ValidateResponse struct { 20898 autorest.Response `json:"-"` 20899 // Status - Result of validation. 20900 Status *string `json:"status,omitempty"` 20901 // Error - Error details for the case when validation fails. 20902 Error *ValidateResponseError `json:"error,omitempty"` 20903} 20904 20905// ValidateResponseError error details for when validation fails. 20906type ValidateResponseError struct { 20907 // Code - Validation error code. 20908 Code *string `json:"code,omitempty"` 20909 // Message - Validation error message. 20910 Message *string `json:"message,omitempty"` 20911} 20912 20913// VirtualApplication virtual application in an app. 20914type VirtualApplication struct { 20915 // VirtualPath - Virtual path. 20916 VirtualPath *string `json:"virtualPath,omitempty"` 20917 // PhysicalPath - Physical path. 20918 PhysicalPath *string `json:"physicalPath,omitempty"` 20919 // PreloadEnabled - <code>true</code> if preloading is enabled; otherwise, <code>false</code>. 20920 PreloadEnabled *bool `json:"preloadEnabled,omitempty"` 20921 // VirtualDirectories - Virtual directories for virtual application. 20922 VirtualDirectories *[]VirtualDirectory `json:"virtualDirectories,omitempty"` 20923} 20924 20925// VirtualDirectory directory for virtual application. 20926type VirtualDirectory struct { 20927 // VirtualPath - Path to virtual application. 20928 VirtualPath *string `json:"virtualPath,omitempty"` 20929 // PhysicalPath - Physical path. 20930 PhysicalPath *string `json:"physicalPath,omitempty"` 20931} 20932 20933// VirtualIPMapping virtual IP mapping. 20934type VirtualIPMapping struct { 20935 // VirtualIP - Virtual IP address. 20936 VirtualIP *string `json:"virtualIP,omitempty"` 20937 // InternalHTTPPort - Internal HTTP port. 20938 InternalHTTPPort *int32 `json:"internalHttpPort,omitempty"` 20939 // InternalHTTPSPort - Internal HTTPS port. 20940 InternalHTTPSPort *int32 `json:"internalHttpsPort,omitempty"` 20941 // InUse - Is virtual IP mapping in use. 20942 InUse *bool `json:"inUse,omitempty"` 20943} 20944 20945// VirtualNetworkProfile specification for using a Virtual Network. 20946type VirtualNetworkProfile struct { 20947 // ID - Resource id of the Virtual Network. 20948 ID *string `json:"id,omitempty"` 20949 // Name - READ-ONLY; Name of the Virtual Network (read-only). 20950 Name *string `json:"name,omitempty"` 20951 // Type - READ-ONLY; Resource type of the Virtual Network (read-only). 20952 Type *string `json:"type,omitempty"` 20953 // Subnet - Subnet within the Virtual Network. 20954 Subnet *string `json:"subnet,omitempty"` 20955} 20956 20957// VnetGateway the Virtual Network gateway contract. This is used to give the Virtual Network gateway 20958// access to the VPN package. 20959type VnetGateway struct { 20960 autorest.Response `json:"-"` 20961 // VnetGatewayProperties - VnetGateway resource specific properties 20962 *VnetGatewayProperties `json:"properties,omitempty"` 20963 // ID - READ-ONLY; Resource Id. 20964 ID *string `json:"id,omitempty"` 20965 // Name - READ-ONLY; Resource Name. 20966 Name *string `json:"name,omitempty"` 20967 // Kind - Kind of resource. 20968 Kind *string `json:"kind,omitempty"` 20969 // Type - READ-ONLY; Resource type. 20970 Type *string `json:"type,omitempty"` 20971} 20972 20973// MarshalJSON is the custom marshaler for VnetGateway. 20974func (vg VnetGateway) MarshalJSON() ([]byte, error) { 20975 objectMap := make(map[string]interface{}) 20976 if vg.VnetGatewayProperties != nil { 20977 objectMap["properties"] = vg.VnetGatewayProperties 20978 } 20979 if vg.Kind != nil { 20980 objectMap["kind"] = vg.Kind 20981 } 20982 return json.Marshal(objectMap) 20983} 20984 20985// UnmarshalJSON is the custom unmarshaler for VnetGateway struct. 20986func (vg *VnetGateway) UnmarshalJSON(body []byte) error { 20987 var m map[string]*json.RawMessage 20988 err := json.Unmarshal(body, &m) 20989 if err != nil { 20990 return err 20991 } 20992 for k, v := range m { 20993 switch k { 20994 case "properties": 20995 if v != nil { 20996 var vnetGatewayProperties VnetGatewayProperties 20997 err = json.Unmarshal(*v, &vnetGatewayProperties) 20998 if err != nil { 20999 return err 21000 } 21001 vg.VnetGatewayProperties = &vnetGatewayProperties 21002 } 21003 case "id": 21004 if v != nil { 21005 var ID string 21006 err = json.Unmarshal(*v, &ID) 21007 if err != nil { 21008 return err 21009 } 21010 vg.ID = &ID 21011 } 21012 case "name": 21013 if v != nil { 21014 var name string 21015 err = json.Unmarshal(*v, &name) 21016 if err != nil { 21017 return err 21018 } 21019 vg.Name = &name 21020 } 21021 case "kind": 21022 if v != nil { 21023 var kind string 21024 err = json.Unmarshal(*v, &kind) 21025 if err != nil { 21026 return err 21027 } 21028 vg.Kind = &kind 21029 } 21030 case "type": 21031 if v != nil { 21032 var typeVar string 21033 err = json.Unmarshal(*v, &typeVar) 21034 if err != nil { 21035 return err 21036 } 21037 vg.Type = &typeVar 21038 } 21039 } 21040 } 21041 21042 return nil 21043} 21044 21045// VnetGatewayProperties vnetGateway resource specific properties 21046type VnetGatewayProperties struct { 21047 // VnetName - The Virtual Network name. 21048 VnetName *string `json:"vnetName,omitempty"` 21049 // VpnPackageURI - The URI where the VPN package can be downloaded. 21050 VpnPackageURI *string `json:"vpnPackageUri,omitempty"` 21051} 21052 21053// VnetInfo virtual Network information contract. 21054type VnetInfo struct { 21055 autorest.Response `json:"-"` 21056 // VnetInfoProperties - VnetInfo resource specific properties 21057 *VnetInfoProperties `json:"properties,omitempty"` 21058 // ID - READ-ONLY; Resource Id. 21059 ID *string `json:"id,omitempty"` 21060 // Name - READ-ONLY; Resource Name. 21061 Name *string `json:"name,omitempty"` 21062 // Kind - Kind of resource. 21063 Kind *string `json:"kind,omitempty"` 21064 // Type - READ-ONLY; Resource type. 21065 Type *string `json:"type,omitempty"` 21066} 21067 21068// MarshalJSON is the custom marshaler for VnetInfo. 21069func (vi VnetInfo) MarshalJSON() ([]byte, error) { 21070 objectMap := make(map[string]interface{}) 21071 if vi.VnetInfoProperties != nil { 21072 objectMap["properties"] = vi.VnetInfoProperties 21073 } 21074 if vi.Kind != nil { 21075 objectMap["kind"] = vi.Kind 21076 } 21077 return json.Marshal(objectMap) 21078} 21079 21080// UnmarshalJSON is the custom unmarshaler for VnetInfo struct. 21081func (vi *VnetInfo) UnmarshalJSON(body []byte) error { 21082 var m map[string]*json.RawMessage 21083 err := json.Unmarshal(body, &m) 21084 if err != nil { 21085 return err 21086 } 21087 for k, v := range m { 21088 switch k { 21089 case "properties": 21090 if v != nil { 21091 var vnetInfoProperties VnetInfoProperties 21092 err = json.Unmarshal(*v, &vnetInfoProperties) 21093 if err != nil { 21094 return err 21095 } 21096 vi.VnetInfoProperties = &vnetInfoProperties 21097 } 21098 case "id": 21099 if v != nil { 21100 var ID string 21101 err = json.Unmarshal(*v, &ID) 21102 if err != nil { 21103 return err 21104 } 21105 vi.ID = &ID 21106 } 21107 case "name": 21108 if v != nil { 21109 var name string 21110 err = json.Unmarshal(*v, &name) 21111 if err != nil { 21112 return err 21113 } 21114 vi.Name = &name 21115 } 21116 case "kind": 21117 if v != nil { 21118 var kind string 21119 err = json.Unmarshal(*v, &kind) 21120 if err != nil { 21121 return err 21122 } 21123 vi.Kind = &kind 21124 } 21125 case "type": 21126 if v != nil { 21127 var typeVar string 21128 err = json.Unmarshal(*v, &typeVar) 21129 if err != nil { 21130 return err 21131 } 21132 vi.Type = &typeVar 21133 } 21134 } 21135 } 21136 21137 return nil 21138} 21139 21140// VnetInfoProperties vnetInfo resource specific properties 21141type VnetInfoProperties struct { 21142 // VnetResourceID - The Virtual Network's resource ID. 21143 VnetResourceID *string `json:"vnetResourceId,omitempty"` 21144 // CertThumbprint - READ-ONLY; The client certificate thumbprint. 21145 CertThumbprint *string `json:"certThumbprint,omitempty"` 21146 // CertBlob - A certificate file (.cer) blob containing the public key of the private key used to authenticate a 21147 // Point-To-Site VPN connection. 21148 CertBlob *[]byte `json:"certBlob,omitempty"` 21149 // Routes - READ-ONLY; The routes that this Virtual Network connection uses. 21150 Routes *[]VnetRoute `json:"routes,omitempty"` 21151 // ResyncRequired - READ-ONLY; <code>true</code> if a resync is required; otherwise, <code>false</code>. 21152 ResyncRequired *bool `json:"resyncRequired,omitempty"` 21153 // DNSServers - DNS servers to be used by this Virtual Network. This should be a comma-separated list of IP addresses. 21154 DNSServers *string `json:"dnsServers,omitempty"` 21155} 21156 21157// VnetParameters the required set of inputs to validate a VNET 21158type VnetParameters struct { 21159 // VnetParametersProperties - VnetParameters resource specific properties 21160 *VnetParametersProperties `json:"properties,omitempty"` 21161 // ID - READ-ONLY; Resource Id. 21162 ID *string `json:"id,omitempty"` 21163 // Name - READ-ONLY; Resource Name. 21164 Name *string `json:"name,omitempty"` 21165 // Kind - Kind of resource. 21166 Kind *string `json:"kind,omitempty"` 21167 // Type - READ-ONLY; Resource type. 21168 Type *string `json:"type,omitempty"` 21169} 21170 21171// MarshalJSON is the custom marshaler for VnetParameters. 21172func (vp VnetParameters) MarshalJSON() ([]byte, error) { 21173 objectMap := make(map[string]interface{}) 21174 if vp.VnetParametersProperties != nil { 21175 objectMap["properties"] = vp.VnetParametersProperties 21176 } 21177 if vp.Kind != nil { 21178 objectMap["kind"] = vp.Kind 21179 } 21180 return json.Marshal(objectMap) 21181} 21182 21183// UnmarshalJSON is the custom unmarshaler for VnetParameters struct. 21184func (vp *VnetParameters) UnmarshalJSON(body []byte) error { 21185 var m map[string]*json.RawMessage 21186 err := json.Unmarshal(body, &m) 21187 if err != nil { 21188 return err 21189 } 21190 for k, v := range m { 21191 switch k { 21192 case "properties": 21193 if v != nil { 21194 var vnetParametersProperties VnetParametersProperties 21195 err = json.Unmarshal(*v, &vnetParametersProperties) 21196 if err != nil { 21197 return err 21198 } 21199 vp.VnetParametersProperties = &vnetParametersProperties 21200 } 21201 case "id": 21202 if v != nil { 21203 var ID string 21204 err = json.Unmarshal(*v, &ID) 21205 if err != nil { 21206 return err 21207 } 21208 vp.ID = &ID 21209 } 21210 case "name": 21211 if v != nil { 21212 var name string 21213 err = json.Unmarshal(*v, &name) 21214 if err != nil { 21215 return err 21216 } 21217 vp.Name = &name 21218 } 21219 case "kind": 21220 if v != nil { 21221 var kind string 21222 err = json.Unmarshal(*v, &kind) 21223 if err != nil { 21224 return err 21225 } 21226 vp.Kind = &kind 21227 } 21228 case "type": 21229 if v != nil { 21230 var typeVar string 21231 err = json.Unmarshal(*v, &typeVar) 21232 if err != nil { 21233 return err 21234 } 21235 vp.Type = &typeVar 21236 } 21237 } 21238 } 21239 21240 return nil 21241} 21242 21243// VnetParametersProperties vnetParameters resource specific properties 21244type VnetParametersProperties struct { 21245 // VnetResourceGroup - The Resource Group of the VNET to be validated 21246 VnetResourceGroup *string `json:"vnetResourceGroup,omitempty"` 21247 // VnetName - The name of the VNET to be validated 21248 VnetName *string `json:"vnetName,omitempty"` 21249 // VnetSubnetName - The subnet name to be validated 21250 VnetSubnetName *string `json:"vnetSubnetName,omitempty"` 21251} 21252 21253// VnetRoute virtual Network route contract used to pass routing information for a Virtual Network. 21254type VnetRoute struct { 21255 autorest.Response `json:"-"` 21256 // VnetRouteProperties - VnetRoute resource specific properties 21257 *VnetRouteProperties `json:"properties,omitempty"` 21258 // ID - READ-ONLY; Resource Id. 21259 ID *string `json:"id,omitempty"` 21260 // Name - READ-ONLY; Resource Name. 21261 Name *string `json:"name,omitempty"` 21262 // Kind - Kind of resource. 21263 Kind *string `json:"kind,omitempty"` 21264 // Type - READ-ONLY; Resource type. 21265 Type *string `json:"type,omitempty"` 21266} 21267 21268// MarshalJSON is the custom marshaler for VnetRoute. 21269func (vr VnetRoute) MarshalJSON() ([]byte, error) { 21270 objectMap := make(map[string]interface{}) 21271 if vr.VnetRouteProperties != nil { 21272 objectMap["properties"] = vr.VnetRouteProperties 21273 } 21274 if vr.Kind != nil { 21275 objectMap["kind"] = vr.Kind 21276 } 21277 return json.Marshal(objectMap) 21278} 21279 21280// UnmarshalJSON is the custom unmarshaler for VnetRoute struct. 21281func (vr *VnetRoute) UnmarshalJSON(body []byte) error { 21282 var m map[string]*json.RawMessage 21283 err := json.Unmarshal(body, &m) 21284 if err != nil { 21285 return err 21286 } 21287 for k, v := range m { 21288 switch k { 21289 case "properties": 21290 if v != nil { 21291 var vnetRouteProperties VnetRouteProperties 21292 err = json.Unmarshal(*v, &vnetRouteProperties) 21293 if err != nil { 21294 return err 21295 } 21296 vr.VnetRouteProperties = &vnetRouteProperties 21297 } 21298 case "id": 21299 if v != nil { 21300 var ID string 21301 err = json.Unmarshal(*v, &ID) 21302 if err != nil { 21303 return err 21304 } 21305 vr.ID = &ID 21306 } 21307 case "name": 21308 if v != nil { 21309 var name string 21310 err = json.Unmarshal(*v, &name) 21311 if err != nil { 21312 return err 21313 } 21314 vr.Name = &name 21315 } 21316 case "kind": 21317 if v != nil { 21318 var kind string 21319 err = json.Unmarshal(*v, &kind) 21320 if err != nil { 21321 return err 21322 } 21323 vr.Kind = &kind 21324 } 21325 case "type": 21326 if v != nil { 21327 var typeVar string 21328 err = json.Unmarshal(*v, &typeVar) 21329 if err != nil { 21330 return err 21331 } 21332 vr.Type = &typeVar 21333 } 21334 } 21335 } 21336 21337 return nil 21338} 21339 21340// VnetRouteProperties vnetRoute resource specific properties 21341type VnetRouteProperties struct { 21342 // VnetRouteName - The name of this route. This is only returned by the server and does not need to be set by the client. 21343 VnetRouteName *string `json:"name,omitempty"` 21344 // StartAddress - The starting address for this route. This may also include a CIDR notation, in which case the end address must not be specified. 21345 StartAddress *string `json:"startAddress,omitempty"` 21346 // EndAddress - The ending address for this route. If the start address is specified in CIDR notation, this must be omitted. 21347 EndAddress *string `json:"endAddress,omitempty"` 21348 // RouteType - The type of route this is: 21349 // DEFAULT - By default, every app has routes to the local address ranges specified by RFC1918 21350 // INHERITED - Routes inherited from the real Virtual Network routes 21351 // STATIC - Static route set on the app only 21352 // These values will be used for syncing an app's routes with those from a Virtual Network. Possible values include: 'DEFAULT', 'INHERITED', 'STATIC' 21353 RouteType RouteType `json:"routeType,omitempty"` 21354} 21355 21356// VnetValidationFailureDetails a class that describes the reason for a validation failure. 21357type VnetValidationFailureDetails struct { 21358 autorest.Response `json:"-"` 21359 // VnetValidationFailureDetailsProperties - VnetValidationFailureDetails resource specific properties 21360 *VnetValidationFailureDetailsProperties `json:"properties,omitempty"` 21361 // ID - READ-ONLY; Resource Id. 21362 ID *string `json:"id,omitempty"` 21363 // Name - READ-ONLY; Resource Name. 21364 Name *string `json:"name,omitempty"` 21365 // Kind - Kind of resource. 21366 Kind *string `json:"kind,omitempty"` 21367 // Type - READ-ONLY; Resource type. 21368 Type *string `json:"type,omitempty"` 21369} 21370 21371// MarshalJSON is the custom marshaler for VnetValidationFailureDetails. 21372func (vvfd VnetValidationFailureDetails) MarshalJSON() ([]byte, error) { 21373 objectMap := make(map[string]interface{}) 21374 if vvfd.VnetValidationFailureDetailsProperties != nil { 21375 objectMap["properties"] = vvfd.VnetValidationFailureDetailsProperties 21376 } 21377 if vvfd.Kind != nil { 21378 objectMap["kind"] = vvfd.Kind 21379 } 21380 return json.Marshal(objectMap) 21381} 21382 21383// UnmarshalJSON is the custom unmarshaler for VnetValidationFailureDetails struct. 21384func (vvfd *VnetValidationFailureDetails) UnmarshalJSON(body []byte) error { 21385 var m map[string]*json.RawMessage 21386 err := json.Unmarshal(body, &m) 21387 if err != nil { 21388 return err 21389 } 21390 for k, v := range m { 21391 switch k { 21392 case "properties": 21393 if v != nil { 21394 var vnetValidationFailureDetailsProperties VnetValidationFailureDetailsProperties 21395 err = json.Unmarshal(*v, &vnetValidationFailureDetailsProperties) 21396 if err != nil { 21397 return err 21398 } 21399 vvfd.VnetValidationFailureDetailsProperties = &vnetValidationFailureDetailsProperties 21400 } 21401 case "id": 21402 if v != nil { 21403 var ID string 21404 err = json.Unmarshal(*v, &ID) 21405 if err != nil { 21406 return err 21407 } 21408 vvfd.ID = &ID 21409 } 21410 case "name": 21411 if v != nil { 21412 var name string 21413 err = json.Unmarshal(*v, &name) 21414 if err != nil { 21415 return err 21416 } 21417 vvfd.Name = &name 21418 } 21419 case "kind": 21420 if v != nil { 21421 var kind string 21422 err = json.Unmarshal(*v, &kind) 21423 if err != nil { 21424 return err 21425 } 21426 vvfd.Kind = &kind 21427 } 21428 case "type": 21429 if v != nil { 21430 var typeVar string 21431 err = json.Unmarshal(*v, &typeVar) 21432 if err != nil { 21433 return err 21434 } 21435 vvfd.Type = &typeVar 21436 } 21437 } 21438 } 21439 21440 return nil 21441} 21442 21443// VnetValidationFailureDetailsProperties vnetValidationFailureDetails resource specific properties 21444type VnetValidationFailureDetailsProperties struct { 21445 // Failed - A flag describing whether or not validation failed. 21446 Failed *bool `json:"failed,omitempty"` 21447 // FailedTests - A list of tests that failed in the validation. 21448 FailedTests *[]VnetValidationTestFailure `json:"failedTests,omitempty"` 21449} 21450 21451// VnetValidationTestFailure a class that describes a test that failed during NSG and UDR validation. 21452type VnetValidationTestFailure struct { 21453 // VnetValidationTestFailureProperties - VnetValidationTestFailure resource specific properties 21454 *VnetValidationTestFailureProperties `json:"properties,omitempty"` 21455 // ID - READ-ONLY; Resource Id. 21456 ID *string `json:"id,omitempty"` 21457 // Name - READ-ONLY; Resource Name. 21458 Name *string `json:"name,omitempty"` 21459 // Kind - Kind of resource. 21460 Kind *string `json:"kind,omitempty"` 21461 // Type - READ-ONLY; Resource type. 21462 Type *string `json:"type,omitempty"` 21463} 21464 21465// MarshalJSON is the custom marshaler for VnetValidationTestFailure. 21466func (vvtf VnetValidationTestFailure) MarshalJSON() ([]byte, error) { 21467 objectMap := make(map[string]interface{}) 21468 if vvtf.VnetValidationTestFailureProperties != nil { 21469 objectMap["properties"] = vvtf.VnetValidationTestFailureProperties 21470 } 21471 if vvtf.Kind != nil { 21472 objectMap["kind"] = vvtf.Kind 21473 } 21474 return json.Marshal(objectMap) 21475} 21476 21477// UnmarshalJSON is the custom unmarshaler for VnetValidationTestFailure struct. 21478func (vvtf *VnetValidationTestFailure) UnmarshalJSON(body []byte) error { 21479 var m map[string]*json.RawMessage 21480 err := json.Unmarshal(body, &m) 21481 if err != nil { 21482 return err 21483 } 21484 for k, v := range m { 21485 switch k { 21486 case "properties": 21487 if v != nil { 21488 var vnetValidationTestFailureProperties VnetValidationTestFailureProperties 21489 err = json.Unmarshal(*v, &vnetValidationTestFailureProperties) 21490 if err != nil { 21491 return err 21492 } 21493 vvtf.VnetValidationTestFailureProperties = &vnetValidationTestFailureProperties 21494 } 21495 case "id": 21496 if v != nil { 21497 var ID string 21498 err = json.Unmarshal(*v, &ID) 21499 if err != nil { 21500 return err 21501 } 21502 vvtf.ID = &ID 21503 } 21504 case "name": 21505 if v != nil { 21506 var name string 21507 err = json.Unmarshal(*v, &name) 21508 if err != nil { 21509 return err 21510 } 21511 vvtf.Name = &name 21512 } 21513 case "kind": 21514 if v != nil { 21515 var kind string 21516 err = json.Unmarshal(*v, &kind) 21517 if err != nil { 21518 return err 21519 } 21520 vvtf.Kind = &kind 21521 } 21522 case "type": 21523 if v != nil { 21524 var typeVar string 21525 err = json.Unmarshal(*v, &typeVar) 21526 if err != nil { 21527 return err 21528 } 21529 vvtf.Type = &typeVar 21530 } 21531 } 21532 } 21533 21534 return nil 21535} 21536 21537// VnetValidationTestFailureProperties vnetValidationTestFailure resource specific properties 21538type VnetValidationTestFailureProperties struct { 21539 // TestName - The name of the test that failed. 21540 TestName *string `json:"testName,omitempty"` 21541 // Details - The details of what caused the failure, e.g. the blocking rule name, etc. 21542 Details *string `json:"details,omitempty"` 21543} 21544 21545// WorkerPool worker pool of an App Service Environment. 21546type WorkerPool struct { 21547 // WorkerSizeID - Worker size ID for referencing this worker pool. 21548 WorkerSizeID *int32 `json:"workerSizeId,omitempty"` 21549 // ComputeMode - Shared or dedicated app hosting. Possible values include: 'ComputeModeOptionsShared', 'ComputeModeOptionsDedicated', 'ComputeModeOptionsDynamic' 21550 ComputeMode ComputeModeOptions `json:"computeMode,omitempty"` 21551 // WorkerSize - VM size of the worker pool instances. 21552 WorkerSize *string `json:"workerSize,omitempty"` 21553 // WorkerCount - Number of instances in the worker pool. 21554 WorkerCount *int32 `json:"workerCount,omitempty"` 21555 // InstanceNames - READ-ONLY; Names of all instances in the worker pool (read only). 21556 InstanceNames *[]string `json:"instanceNames,omitempty"` 21557} 21558 21559// WorkerPoolCollection collection of worker pools. 21560type WorkerPoolCollection struct { 21561 autorest.Response `json:"-"` 21562 // Value - Collection of resources. 21563 Value *[]WorkerPoolResource `json:"value,omitempty"` 21564 // NextLink - READ-ONLY; Link to next page of resources. 21565 NextLink *string `json:"nextLink,omitempty"` 21566} 21567 21568// WorkerPoolCollectionIterator provides access to a complete listing of WorkerPoolResource values. 21569type WorkerPoolCollectionIterator struct { 21570 i int 21571 page WorkerPoolCollectionPage 21572} 21573 21574// NextWithContext advances to the next value. If there was an error making 21575// the request the iterator does not advance and the error is returned. 21576func (iter *WorkerPoolCollectionIterator) NextWithContext(ctx context.Context) (err error) { 21577 if tracing.IsEnabled() { 21578 ctx = tracing.StartSpan(ctx, fqdn+"/WorkerPoolCollectionIterator.NextWithContext") 21579 defer func() { 21580 sc := -1 21581 if iter.Response().Response.Response != nil { 21582 sc = iter.Response().Response.Response.StatusCode 21583 } 21584 tracing.EndSpan(ctx, sc, err) 21585 }() 21586 } 21587 iter.i++ 21588 if iter.i < len(iter.page.Values()) { 21589 return nil 21590 } 21591 err = iter.page.NextWithContext(ctx) 21592 if err != nil { 21593 iter.i-- 21594 return err 21595 } 21596 iter.i = 0 21597 return nil 21598} 21599 21600// Next advances to the next value. If there was an error making 21601// the request the iterator does not advance and the error is returned. 21602// Deprecated: Use NextWithContext() instead. 21603func (iter *WorkerPoolCollectionIterator) Next() error { 21604 return iter.NextWithContext(context.Background()) 21605} 21606 21607// NotDone returns true if the enumeration should be started or is not yet complete. 21608func (iter WorkerPoolCollectionIterator) NotDone() bool { 21609 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 21610} 21611 21612// Response returns the raw server response from the last page request. 21613func (iter WorkerPoolCollectionIterator) Response() WorkerPoolCollection { 21614 return iter.page.Response() 21615} 21616 21617// Value returns the current value or a zero-initialized value if the 21618// iterator has advanced beyond the end of the collection. 21619func (iter WorkerPoolCollectionIterator) Value() WorkerPoolResource { 21620 if !iter.page.NotDone() { 21621 return WorkerPoolResource{} 21622 } 21623 return iter.page.Values()[iter.i] 21624} 21625 21626// Creates a new instance of the WorkerPoolCollectionIterator type. 21627func NewWorkerPoolCollectionIterator(page WorkerPoolCollectionPage) WorkerPoolCollectionIterator { 21628 return WorkerPoolCollectionIterator{page: page} 21629} 21630 21631// IsEmpty returns true if the ListResult contains no values. 21632func (wpc WorkerPoolCollection) IsEmpty() bool { 21633 return wpc.Value == nil || len(*wpc.Value) == 0 21634} 21635 21636// workerPoolCollectionPreparer prepares a request to retrieve the next set of results. 21637// It returns nil if no more results exist. 21638func (wpc WorkerPoolCollection) workerPoolCollectionPreparer(ctx context.Context) (*http.Request, error) { 21639 if wpc.NextLink == nil || len(to.String(wpc.NextLink)) < 1 { 21640 return nil, nil 21641 } 21642 return autorest.Prepare((&http.Request{}).WithContext(ctx), 21643 autorest.AsJSON(), 21644 autorest.AsGet(), 21645 autorest.WithBaseURL(to.String(wpc.NextLink))) 21646} 21647 21648// WorkerPoolCollectionPage contains a page of WorkerPoolResource values. 21649type WorkerPoolCollectionPage struct { 21650 fn func(context.Context, WorkerPoolCollection) (WorkerPoolCollection, error) 21651 wpc WorkerPoolCollection 21652} 21653 21654// NextWithContext advances to the next page of values. If there was an error making 21655// the request the page does not advance and the error is returned. 21656func (page *WorkerPoolCollectionPage) NextWithContext(ctx context.Context) (err error) { 21657 if tracing.IsEnabled() { 21658 ctx = tracing.StartSpan(ctx, fqdn+"/WorkerPoolCollectionPage.NextWithContext") 21659 defer func() { 21660 sc := -1 21661 if page.Response().Response.Response != nil { 21662 sc = page.Response().Response.Response.StatusCode 21663 } 21664 tracing.EndSpan(ctx, sc, err) 21665 }() 21666 } 21667 next, err := page.fn(ctx, page.wpc) 21668 if err != nil { 21669 return err 21670 } 21671 page.wpc = next 21672 return nil 21673} 21674 21675// Next advances to the next page of values. If there was an error making 21676// the request the page does not advance and the error is returned. 21677// Deprecated: Use NextWithContext() instead. 21678func (page *WorkerPoolCollectionPage) Next() error { 21679 return page.NextWithContext(context.Background()) 21680} 21681 21682// NotDone returns true if the page enumeration should be started or is not yet complete. 21683func (page WorkerPoolCollectionPage) NotDone() bool { 21684 return !page.wpc.IsEmpty() 21685} 21686 21687// Response returns the raw server response from the last page request. 21688func (page WorkerPoolCollectionPage) Response() WorkerPoolCollection { 21689 return page.wpc 21690} 21691 21692// Values returns the slice of values for the current page or nil if there are no values. 21693func (page WorkerPoolCollectionPage) Values() []WorkerPoolResource { 21694 if page.wpc.IsEmpty() { 21695 return nil 21696 } 21697 return *page.wpc.Value 21698} 21699 21700// Creates a new instance of the WorkerPoolCollectionPage type. 21701func NewWorkerPoolCollectionPage(getNextPage func(context.Context, WorkerPoolCollection) (WorkerPoolCollection, error)) WorkerPoolCollectionPage { 21702 return WorkerPoolCollectionPage{fn: getNextPage} 21703} 21704 21705// WorkerPoolResource worker pool of an App Service Environment ARM resource. 21706type WorkerPoolResource struct { 21707 autorest.Response `json:"-"` 21708 // WorkerPool - Core resource properties 21709 *WorkerPool `json:"properties,omitempty"` 21710 Sku *SkuDescription `json:"sku,omitempty"` 21711 // ID - READ-ONLY; Resource Id. 21712 ID *string `json:"id,omitempty"` 21713 // Name - READ-ONLY; Resource Name. 21714 Name *string `json:"name,omitempty"` 21715 // Kind - Kind of resource. 21716 Kind *string `json:"kind,omitempty"` 21717 // Type - READ-ONLY; Resource type. 21718 Type *string `json:"type,omitempty"` 21719} 21720 21721// MarshalJSON is the custom marshaler for WorkerPoolResource. 21722func (wpr WorkerPoolResource) MarshalJSON() ([]byte, error) { 21723 objectMap := make(map[string]interface{}) 21724 if wpr.WorkerPool != nil { 21725 objectMap["properties"] = wpr.WorkerPool 21726 } 21727 if wpr.Sku != nil { 21728 objectMap["sku"] = wpr.Sku 21729 } 21730 if wpr.Kind != nil { 21731 objectMap["kind"] = wpr.Kind 21732 } 21733 return json.Marshal(objectMap) 21734} 21735 21736// UnmarshalJSON is the custom unmarshaler for WorkerPoolResource struct. 21737func (wpr *WorkerPoolResource) UnmarshalJSON(body []byte) error { 21738 var m map[string]*json.RawMessage 21739 err := json.Unmarshal(body, &m) 21740 if err != nil { 21741 return err 21742 } 21743 for k, v := range m { 21744 switch k { 21745 case "properties": 21746 if v != nil { 21747 var workerPool WorkerPool 21748 err = json.Unmarshal(*v, &workerPool) 21749 if err != nil { 21750 return err 21751 } 21752 wpr.WorkerPool = &workerPool 21753 } 21754 case "sku": 21755 if v != nil { 21756 var sku SkuDescription 21757 err = json.Unmarshal(*v, &sku) 21758 if err != nil { 21759 return err 21760 } 21761 wpr.Sku = &sku 21762 } 21763 case "id": 21764 if v != nil { 21765 var ID string 21766 err = json.Unmarshal(*v, &ID) 21767 if err != nil { 21768 return err 21769 } 21770 wpr.ID = &ID 21771 } 21772 case "name": 21773 if v != nil { 21774 var name string 21775 err = json.Unmarshal(*v, &name) 21776 if err != nil { 21777 return err 21778 } 21779 wpr.Name = &name 21780 } 21781 case "kind": 21782 if v != nil { 21783 var kind string 21784 err = json.Unmarshal(*v, &kind) 21785 if err != nil { 21786 return err 21787 } 21788 wpr.Kind = &kind 21789 } 21790 case "type": 21791 if v != nil { 21792 var typeVar string 21793 err = json.Unmarshal(*v, &typeVar) 21794 if err != nil { 21795 return err 21796 } 21797 wpr.Type = &typeVar 21798 } 21799 } 21800 } 21801 21802 return nil 21803} 21804