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 "encoding/json" 22 "github.com/Azure/go-autorest/autorest" 23 "github.com/Azure/go-autorest/autorest/azure" 24 "github.com/Azure/go-autorest/autorest/date" 25 "github.com/Azure/go-autorest/autorest/to" 26 "github.com/satori/go.uuid" 27 "io" 28 "net/http" 29) 30 31// AccessControlEntryAction enumerates the values for access control entry action. 32type AccessControlEntryAction string 33 34const ( 35 // Deny ... 36 Deny AccessControlEntryAction = "Deny" 37 // Permit ... 38 Permit AccessControlEntryAction = "Permit" 39) 40 41// PossibleAccessControlEntryActionValues returns an array of possible values for the AccessControlEntryAction const type. 42func PossibleAccessControlEntryActionValues() []AccessControlEntryAction { 43 return []AccessControlEntryAction{Deny, Permit} 44} 45 46// AppServicePlanRestrictions enumerates the values for app service plan restrictions. 47type AppServicePlanRestrictions string 48 49const ( 50 // Basic ... 51 Basic AppServicePlanRestrictions = "Basic" 52 // Free ... 53 Free AppServicePlanRestrictions = "Free" 54 // None ... 55 None AppServicePlanRestrictions = "None" 56 // Premium ... 57 Premium AppServicePlanRestrictions = "Premium" 58 // Shared ... 59 Shared AppServicePlanRestrictions = "Shared" 60 // Standard ... 61 Standard AppServicePlanRestrictions = "Standard" 62) 63 64// PossibleAppServicePlanRestrictionsValues returns an array of possible values for the AppServicePlanRestrictions const type. 65func PossibleAppServicePlanRestrictionsValues() []AppServicePlanRestrictions { 66 return []AppServicePlanRestrictions{Basic, Free, None, Premium, Shared, Standard} 67} 68 69// AutoHealActionType enumerates the values for auto heal action type. 70type AutoHealActionType string 71 72const ( 73 // CustomAction ... 74 CustomAction AutoHealActionType = "CustomAction" 75 // LogEvent ... 76 LogEvent AutoHealActionType = "LogEvent" 77 // Recycle ... 78 Recycle AutoHealActionType = "Recycle" 79) 80 81// PossibleAutoHealActionTypeValues returns an array of possible values for the AutoHealActionType const type. 82func PossibleAutoHealActionTypeValues() []AutoHealActionType { 83 return []AutoHealActionType{CustomAction, LogEvent, Recycle} 84} 85 86// AzureResourceType enumerates the values for azure resource type. 87type AzureResourceType string 88 89const ( 90 // TrafficManager ... 91 TrafficManager AzureResourceType = "TrafficManager" 92 // Website ... 93 Website AzureResourceType = "Website" 94) 95 96// PossibleAzureResourceTypeValues returns an array of possible values for the AzureResourceType const type. 97func PossibleAzureResourceTypeValues() []AzureResourceType { 98 return []AzureResourceType{TrafficManager, Website} 99} 100 101// BackupItemStatus enumerates the values for backup item status. 102type BackupItemStatus string 103 104const ( 105 // Created ... 106 Created BackupItemStatus = "Created" 107 // Deleted ... 108 Deleted BackupItemStatus = "Deleted" 109 // DeleteFailed ... 110 DeleteFailed BackupItemStatus = "DeleteFailed" 111 // DeleteInProgress ... 112 DeleteInProgress BackupItemStatus = "DeleteInProgress" 113 // Failed ... 114 Failed BackupItemStatus = "Failed" 115 // InProgress ... 116 InProgress BackupItemStatus = "InProgress" 117 // PartiallySucceeded ... 118 PartiallySucceeded BackupItemStatus = "PartiallySucceeded" 119 // Skipped ... 120 Skipped BackupItemStatus = "Skipped" 121 // Succeeded ... 122 Succeeded BackupItemStatus = "Succeeded" 123 // TimedOut ... 124 TimedOut BackupItemStatus = "TimedOut" 125) 126 127// PossibleBackupItemStatusValues returns an array of possible values for the BackupItemStatus const type. 128func PossibleBackupItemStatusValues() []BackupItemStatus { 129 return []BackupItemStatus{Created, Deleted, DeleteFailed, DeleteInProgress, Failed, InProgress, PartiallySucceeded, Skipped, Succeeded, TimedOut} 130} 131 132// BackupRestoreOperationType enumerates the values for backup restore operation type. 133type BackupRestoreOperationType string 134 135const ( 136 // BackupRestoreOperationTypeClone ... 137 BackupRestoreOperationTypeClone BackupRestoreOperationType = "Clone" 138 // BackupRestoreOperationTypeDefault ... 139 BackupRestoreOperationTypeDefault BackupRestoreOperationType = "Default" 140 // BackupRestoreOperationTypeRelocation ... 141 BackupRestoreOperationTypeRelocation BackupRestoreOperationType = "Relocation" 142 // BackupRestoreOperationTypeSnapshot ... 143 BackupRestoreOperationTypeSnapshot BackupRestoreOperationType = "Snapshot" 144) 145 146// PossibleBackupRestoreOperationTypeValues returns an array of possible values for the BackupRestoreOperationType const type. 147func PossibleBackupRestoreOperationTypeValues() []BackupRestoreOperationType { 148 return []BackupRestoreOperationType{BackupRestoreOperationTypeClone, BackupRestoreOperationTypeDefault, BackupRestoreOperationTypeRelocation, BackupRestoreOperationTypeSnapshot} 149} 150 151// BuiltInAuthenticationProvider enumerates the values for built in authentication provider. 152type BuiltInAuthenticationProvider string 153 154const ( 155 // AzureActiveDirectory ... 156 AzureActiveDirectory BuiltInAuthenticationProvider = "AzureActiveDirectory" 157 // Facebook ... 158 Facebook BuiltInAuthenticationProvider = "Facebook" 159 // Google ... 160 Google BuiltInAuthenticationProvider = "Google" 161 // MicrosoftAccount ... 162 MicrosoftAccount BuiltInAuthenticationProvider = "MicrosoftAccount" 163 // Twitter ... 164 Twitter BuiltInAuthenticationProvider = "Twitter" 165) 166 167// PossibleBuiltInAuthenticationProviderValues returns an array of possible values for the BuiltInAuthenticationProvider const type. 168func PossibleBuiltInAuthenticationProviderValues() []BuiltInAuthenticationProvider { 169 return []BuiltInAuthenticationProvider{AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter} 170} 171 172// CertificateOrderActionType enumerates the values for certificate order action type. 173type CertificateOrderActionType string 174 175const ( 176 // CertificateExpirationWarning ... 177 CertificateExpirationWarning CertificateOrderActionType = "CertificateExpirationWarning" 178 // CertificateExpired ... 179 CertificateExpired CertificateOrderActionType = "CertificateExpired" 180 // CertificateIssued ... 181 CertificateIssued CertificateOrderActionType = "CertificateIssued" 182 // CertificateOrderCanceled ... 183 CertificateOrderCanceled CertificateOrderActionType = "CertificateOrderCanceled" 184 // CertificateOrderCreated ... 185 CertificateOrderCreated CertificateOrderActionType = "CertificateOrderCreated" 186 // CertificateRevoked ... 187 CertificateRevoked CertificateOrderActionType = "CertificateRevoked" 188 // DomainValidationComplete ... 189 DomainValidationComplete CertificateOrderActionType = "DomainValidationComplete" 190 // FraudCleared ... 191 FraudCleared CertificateOrderActionType = "FraudCleared" 192 // FraudDetected ... 193 FraudDetected CertificateOrderActionType = "FraudDetected" 194 // FraudDocumentationRequired ... 195 FraudDocumentationRequired CertificateOrderActionType = "FraudDocumentationRequired" 196 // OrgNameChange ... 197 OrgNameChange CertificateOrderActionType = "OrgNameChange" 198 // OrgValidationComplete ... 199 OrgValidationComplete CertificateOrderActionType = "OrgValidationComplete" 200 // SanDrop ... 201 SanDrop CertificateOrderActionType = "SanDrop" 202 // Unknown ... 203 Unknown CertificateOrderActionType = "Unknown" 204) 205 206// PossibleCertificateOrderActionTypeValues returns an array of possible values for the CertificateOrderActionType const type. 207func PossibleCertificateOrderActionTypeValues() []CertificateOrderActionType { 208 return []CertificateOrderActionType{CertificateExpirationWarning, CertificateExpired, CertificateIssued, CertificateOrderCanceled, CertificateOrderCreated, CertificateRevoked, DomainValidationComplete, FraudCleared, FraudDetected, FraudDocumentationRequired, OrgNameChange, OrgValidationComplete, SanDrop, Unknown} 209} 210 211// CertificateOrderStatus enumerates the values for certificate order status. 212type CertificateOrderStatus string 213 214const ( 215 // Canceled ... 216 Canceled CertificateOrderStatus = "Canceled" 217 // Denied ... 218 Denied CertificateOrderStatus = "Denied" 219 // Expired ... 220 Expired CertificateOrderStatus = "Expired" 221 // Issued ... 222 Issued CertificateOrderStatus = "Issued" 223 // NotSubmitted ... 224 NotSubmitted CertificateOrderStatus = "NotSubmitted" 225 // Pendingissuance ... 226 Pendingissuance CertificateOrderStatus = "Pendingissuance" 227 // PendingRekey ... 228 PendingRekey CertificateOrderStatus = "PendingRekey" 229 // Pendingrevocation ... 230 Pendingrevocation CertificateOrderStatus = "Pendingrevocation" 231 // Revoked ... 232 Revoked CertificateOrderStatus = "Revoked" 233 // Unused ... 234 Unused CertificateOrderStatus = "Unused" 235) 236 237// PossibleCertificateOrderStatusValues returns an array of possible values for the CertificateOrderStatus const type. 238func PossibleCertificateOrderStatusValues() []CertificateOrderStatus { 239 return []CertificateOrderStatus{Canceled, Denied, Expired, Issued, NotSubmitted, Pendingissuance, PendingRekey, Pendingrevocation, Revoked, Unused} 240} 241 242// CertificateProductType enumerates the values for certificate product type. 243type CertificateProductType string 244 245const ( 246 // StandardDomainValidatedSsl ... 247 StandardDomainValidatedSsl CertificateProductType = "StandardDomainValidatedSsl" 248 // StandardDomainValidatedWildCardSsl ... 249 StandardDomainValidatedWildCardSsl CertificateProductType = "StandardDomainValidatedWildCardSsl" 250) 251 252// PossibleCertificateProductTypeValues returns an array of possible values for the CertificateProductType const type. 253func PossibleCertificateProductTypeValues() []CertificateProductType { 254 return []CertificateProductType{StandardDomainValidatedSsl, StandardDomainValidatedWildCardSsl} 255} 256 257// Channels enumerates the values for channels. 258type Channels string 259 260const ( 261 // All ... 262 All Channels = "All" 263 // API ... 264 API Channels = "Api" 265 // Email ... 266 Email Channels = "Email" 267 // Notification ... 268 Notification Channels = "Notification" 269 // Webhook ... 270 Webhook Channels = "Webhook" 271) 272 273// PossibleChannelsValues returns an array of possible values for the Channels const type. 274func PossibleChannelsValues() []Channels { 275 return []Channels{All, API, Email, Notification, Webhook} 276} 277 278// CheckNameResourceTypes enumerates the values for check name resource types. 279type CheckNameResourceTypes string 280 281const ( 282 // CheckNameResourceTypesHostingEnvironment ... 283 CheckNameResourceTypesHostingEnvironment CheckNameResourceTypes = "HostingEnvironment" 284 // CheckNameResourceTypesMicrosoftWebhostingEnvironments ... 285 CheckNameResourceTypesMicrosoftWebhostingEnvironments CheckNameResourceTypes = "Microsoft.Web/hostingEnvironments" 286 // CheckNameResourceTypesMicrosoftWebpublishingUsers ... 287 CheckNameResourceTypesMicrosoftWebpublishingUsers CheckNameResourceTypes = "Microsoft.Web/publishingUsers" 288 // CheckNameResourceTypesMicrosoftWebsites ... 289 CheckNameResourceTypesMicrosoftWebsites CheckNameResourceTypes = "Microsoft.Web/sites" 290 // CheckNameResourceTypesMicrosoftWebsitesslots ... 291 CheckNameResourceTypesMicrosoftWebsitesslots CheckNameResourceTypes = "Microsoft.Web/sites/slots" 292 // CheckNameResourceTypesPublishingUser ... 293 CheckNameResourceTypesPublishingUser CheckNameResourceTypes = "PublishingUser" 294 // CheckNameResourceTypesSite ... 295 CheckNameResourceTypesSite CheckNameResourceTypes = "Site" 296 // CheckNameResourceTypesSlot ... 297 CheckNameResourceTypesSlot CheckNameResourceTypes = "Slot" 298) 299 300// PossibleCheckNameResourceTypesValues returns an array of possible values for the CheckNameResourceTypes const type. 301func PossibleCheckNameResourceTypesValues() []CheckNameResourceTypes { 302 return []CheckNameResourceTypes{CheckNameResourceTypesHostingEnvironment, CheckNameResourceTypesMicrosoftWebhostingEnvironments, CheckNameResourceTypesMicrosoftWebpublishingUsers, CheckNameResourceTypesMicrosoftWebsites, CheckNameResourceTypesMicrosoftWebsitesslots, CheckNameResourceTypesPublishingUser, CheckNameResourceTypesSite, CheckNameResourceTypesSlot} 303} 304 305// CloneAbilityResult enumerates the values for clone ability result. 306type CloneAbilityResult string 307 308const ( 309 // Cloneable ... 310 Cloneable CloneAbilityResult = "Cloneable" 311 // NotCloneable ... 312 NotCloneable CloneAbilityResult = "NotCloneable" 313 // PartiallyCloneable ... 314 PartiallyCloneable CloneAbilityResult = "PartiallyCloneable" 315) 316 317// PossibleCloneAbilityResultValues returns an array of possible values for the CloneAbilityResult const type. 318func PossibleCloneAbilityResultValues() []CloneAbilityResult { 319 return []CloneAbilityResult{Cloneable, NotCloneable, PartiallyCloneable} 320} 321 322// ComputeModeOptions enumerates the values for compute mode options. 323type ComputeModeOptions string 324 325const ( 326 // ComputeModeOptionsDedicated ... 327 ComputeModeOptionsDedicated ComputeModeOptions = "Dedicated" 328 // ComputeModeOptionsDynamic ... 329 ComputeModeOptionsDynamic ComputeModeOptions = "Dynamic" 330 // ComputeModeOptionsShared ... 331 ComputeModeOptionsShared ComputeModeOptions = "Shared" 332) 333 334// PossibleComputeModeOptionsValues returns an array of possible values for the ComputeModeOptions const type. 335func PossibleComputeModeOptionsValues() []ComputeModeOptions { 336 return []ComputeModeOptions{ComputeModeOptionsDedicated, ComputeModeOptionsDynamic, ComputeModeOptionsShared} 337} 338 339// ConnectionStringType enumerates the values for connection string type. 340type ConnectionStringType string 341 342const ( 343 // APIHub ... 344 APIHub ConnectionStringType = "ApiHub" 345 // Custom ... 346 Custom ConnectionStringType = "Custom" 347 // DocDb ... 348 DocDb ConnectionStringType = "DocDb" 349 // EventHub ... 350 EventHub ConnectionStringType = "EventHub" 351 // MySQL ... 352 MySQL ConnectionStringType = "MySql" 353 // NotificationHub ... 354 NotificationHub ConnectionStringType = "NotificationHub" 355 // PostgreSQL ... 356 PostgreSQL ConnectionStringType = "PostgreSQL" 357 // RedisCache ... 358 RedisCache ConnectionStringType = "RedisCache" 359 // ServiceBus ... 360 ServiceBus ConnectionStringType = "ServiceBus" 361 // SQLAzure ... 362 SQLAzure ConnectionStringType = "SQLAzure" 363 // SQLServer ... 364 SQLServer ConnectionStringType = "SQLServer" 365) 366 367// PossibleConnectionStringTypeValues returns an array of possible values for the ConnectionStringType const type. 368func PossibleConnectionStringTypeValues() []ConnectionStringType { 369 return []ConnectionStringType{APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, SQLServer} 370} 371 372// ContinuousWebJobStatus enumerates the values for continuous web job status. 373type ContinuousWebJobStatus string 374 375const ( 376 // Initializing ... 377 Initializing ContinuousWebJobStatus = "Initializing" 378 // PendingRestart ... 379 PendingRestart ContinuousWebJobStatus = "PendingRestart" 380 // Running ... 381 Running ContinuousWebJobStatus = "Running" 382 // Starting ... 383 Starting ContinuousWebJobStatus = "Starting" 384 // Stopped ... 385 Stopped ContinuousWebJobStatus = "Stopped" 386) 387 388// PossibleContinuousWebJobStatusValues returns an array of possible values for the ContinuousWebJobStatus const type. 389func PossibleContinuousWebJobStatusValues() []ContinuousWebJobStatus { 390 return []ContinuousWebJobStatus{Initializing, PendingRestart, Running, Starting, Stopped} 391} 392 393// CustomHostNameDNSRecordType enumerates the values for custom host name dns record type. 394type CustomHostNameDNSRecordType string 395 396const ( 397 // A ... 398 A CustomHostNameDNSRecordType = "A" 399 // CName ... 400 CName CustomHostNameDNSRecordType = "CName" 401) 402 403// PossibleCustomHostNameDNSRecordTypeValues returns an array of possible values for the CustomHostNameDNSRecordType const type. 404func PossibleCustomHostNameDNSRecordTypeValues() []CustomHostNameDNSRecordType { 405 return []CustomHostNameDNSRecordType{A, CName} 406} 407 408// DatabaseType enumerates the values for database type. 409type DatabaseType string 410 411const ( 412 // DatabaseTypeLocalMySQL ... 413 DatabaseTypeLocalMySQL DatabaseType = "LocalMySql" 414 // DatabaseTypeMySQL ... 415 DatabaseTypeMySQL DatabaseType = "MySql" 416 // DatabaseTypePostgreSQL ... 417 DatabaseTypePostgreSQL DatabaseType = "PostgreSql" 418 // DatabaseTypeSQLAzure ... 419 DatabaseTypeSQLAzure DatabaseType = "SqlAzure" 420) 421 422// PossibleDatabaseTypeValues returns an array of possible values for the DatabaseType const type. 423func PossibleDatabaseTypeValues() []DatabaseType { 424 return []DatabaseType{DatabaseTypeLocalMySQL, DatabaseTypeMySQL, DatabaseTypePostgreSQL, DatabaseTypeSQLAzure} 425} 426 427// DNSType enumerates the values for dns type. 428type DNSType string 429 430const ( 431 // AzureDNS ... 432 AzureDNS DNSType = "AzureDns" 433 // DefaultDomainRegistrarDNS ... 434 DefaultDomainRegistrarDNS DNSType = "DefaultDomainRegistrarDns" 435) 436 437// PossibleDNSTypeValues returns an array of possible values for the DNSType const type. 438func PossibleDNSTypeValues() []DNSType { 439 return []DNSType{AzureDNS, DefaultDomainRegistrarDNS} 440} 441 442// DNSVerificationTestResult enumerates the values for dns verification test result. 443type DNSVerificationTestResult string 444 445const ( 446 // DNSVerificationTestResultFailed ... 447 DNSVerificationTestResultFailed DNSVerificationTestResult = "Failed" 448 // DNSVerificationTestResultPassed ... 449 DNSVerificationTestResultPassed DNSVerificationTestResult = "Passed" 450 // DNSVerificationTestResultSkipped ... 451 DNSVerificationTestResultSkipped DNSVerificationTestResult = "Skipped" 452) 453 454// PossibleDNSVerificationTestResultValues returns an array of possible values for the DNSVerificationTestResult const type. 455func PossibleDNSVerificationTestResultValues() []DNSVerificationTestResult { 456 return []DNSVerificationTestResult{DNSVerificationTestResultFailed, DNSVerificationTestResultPassed, DNSVerificationTestResultSkipped} 457} 458 459// DomainStatus enumerates the values for domain status. 460type DomainStatus string 461 462const ( 463 // DomainStatusActive ... 464 DomainStatusActive DomainStatus = "Active" 465 // DomainStatusAwaiting ... 466 DomainStatusAwaiting DomainStatus = "Awaiting" 467 // DomainStatusCancelled ... 468 DomainStatusCancelled DomainStatus = "Cancelled" 469 // DomainStatusConfiscated ... 470 DomainStatusConfiscated DomainStatus = "Confiscated" 471 // DomainStatusDisabled ... 472 DomainStatusDisabled DomainStatus = "Disabled" 473 // DomainStatusExcluded ... 474 DomainStatusExcluded DomainStatus = "Excluded" 475 // DomainStatusExpired ... 476 DomainStatusExpired DomainStatus = "Expired" 477 // DomainStatusFailed ... 478 DomainStatusFailed DomainStatus = "Failed" 479 // DomainStatusHeld ... 480 DomainStatusHeld DomainStatus = "Held" 481 // DomainStatusJSONConverterFailed ... 482 DomainStatusJSONConverterFailed DomainStatus = "JsonConverterFailed" 483 // DomainStatusLocked ... 484 DomainStatusLocked DomainStatus = "Locked" 485 // DomainStatusParked ... 486 DomainStatusParked DomainStatus = "Parked" 487 // DomainStatusPending ... 488 DomainStatusPending DomainStatus = "Pending" 489 // DomainStatusReserved ... 490 DomainStatusReserved DomainStatus = "Reserved" 491 // DomainStatusReverted ... 492 DomainStatusReverted DomainStatus = "Reverted" 493 // DomainStatusSuspended ... 494 DomainStatusSuspended DomainStatus = "Suspended" 495 // DomainStatusTransferred ... 496 DomainStatusTransferred DomainStatus = "Transferred" 497 // DomainStatusUnknown ... 498 DomainStatusUnknown DomainStatus = "Unknown" 499 // DomainStatusUnlocked ... 500 DomainStatusUnlocked DomainStatus = "Unlocked" 501 // DomainStatusUnparked ... 502 DomainStatusUnparked DomainStatus = "Unparked" 503 // DomainStatusUpdated ... 504 DomainStatusUpdated DomainStatus = "Updated" 505) 506 507// PossibleDomainStatusValues returns an array of possible values for the DomainStatus const type. 508func PossibleDomainStatusValues() []DomainStatus { 509 return []DomainStatus{DomainStatusActive, DomainStatusAwaiting, DomainStatusCancelled, DomainStatusConfiscated, DomainStatusDisabled, DomainStatusExcluded, DomainStatusExpired, DomainStatusFailed, DomainStatusHeld, DomainStatusJSONConverterFailed, DomainStatusLocked, DomainStatusParked, DomainStatusPending, DomainStatusReserved, DomainStatusReverted, DomainStatusSuspended, DomainStatusTransferred, DomainStatusUnknown, DomainStatusUnlocked, DomainStatusUnparked, DomainStatusUpdated} 510} 511 512// DomainType enumerates the values for domain type. 513type DomainType string 514 515const ( 516 // Regular ... 517 Regular DomainType = "Regular" 518 // SoftDeleted ... 519 SoftDeleted DomainType = "SoftDeleted" 520) 521 522// PossibleDomainTypeValues returns an array of possible values for the DomainType const type. 523func PossibleDomainTypeValues() []DomainType { 524 return []DomainType{Regular, SoftDeleted} 525} 526 527// FrequencyUnit enumerates the values for frequency unit. 528type FrequencyUnit string 529 530const ( 531 // Day ... 532 Day FrequencyUnit = "Day" 533 // Hour ... 534 Hour FrequencyUnit = "Hour" 535) 536 537// PossibleFrequencyUnitValues returns an array of possible values for the FrequencyUnit const type. 538func PossibleFrequencyUnitValues() []FrequencyUnit { 539 return []FrequencyUnit{Day, Hour} 540} 541 542// HostingEnvironmentStatus enumerates the values for hosting environment status. 543type HostingEnvironmentStatus string 544 545const ( 546 // Deleting ... 547 Deleting HostingEnvironmentStatus = "Deleting" 548 // Preparing ... 549 Preparing HostingEnvironmentStatus = "Preparing" 550 // Ready ... 551 Ready HostingEnvironmentStatus = "Ready" 552 // Scaling ... 553 Scaling HostingEnvironmentStatus = "Scaling" 554) 555 556// PossibleHostingEnvironmentStatusValues returns an array of possible values for the HostingEnvironmentStatus const type. 557func PossibleHostingEnvironmentStatusValues() []HostingEnvironmentStatus { 558 return []HostingEnvironmentStatus{Deleting, Preparing, Ready, Scaling} 559} 560 561// HostNameType enumerates the values for host name type. 562type HostNameType string 563 564const ( 565 // Managed ... 566 Managed HostNameType = "Managed" 567 // Verified ... 568 Verified HostNameType = "Verified" 569) 570 571// PossibleHostNameTypeValues returns an array of possible values for the HostNameType const type. 572func PossibleHostNameTypeValues() []HostNameType { 573 return []HostNameType{Managed, Verified} 574} 575 576// HostType enumerates the values for host type. 577type HostType string 578 579const ( 580 // HostTypeRepository ... 581 HostTypeRepository HostType = "Repository" 582 // HostTypeStandard ... 583 HostTypeStandard HostType = "Standard" 584) 585 586// PossibleHostTypeValues returns an array of possible values for the HostType const type. 587func PossibleHostTypeValues() []HostType { 588 return []HostType{HostTypeRepository, HostTypeStandard} 589} 590 591// InAvailabilityReasonType enumerates the values for in availability reason type. 592type InAvailabilityReasonType string 593 594const ( 595 // AlreadyExists ... 596 AlreadyExists InAvailabilityReasonType = "AlreadyExists" 597 // Invalid ... 598 Invalid InAvailabilityReasonType = "Invalid" 599) 600 601// PossibleInAvailabilityReasonTypeValues returns an array of possible values for the InAvailabilityReasonType const type. 602func PossibleInAvailabilityReasonTypeValues() []InAvailabilityReasonType { 603 return []InAvailabilityReasonType{AlreadyExists, Invalid} 604} 605 606// InternalLoadBalancingMode enumerates the values for internal load balancing mode. 607type InternalLoadBalancingMode string 608 609const ( 610 // InternalLoadBalancingModeNone ... 611 InternalLoadBalancingModeNone InternalLoadBalancingMode = "None" 612 // InternalLoadBalancingModePublishing ... 613 InternalLoadBalancingModePublishing InternalLoadBalancingMode = "Publishing" 614 // InternalLoadBalancingModeWeb ... 615 InternalLoadBalancingModeWeb InternalLoadBalancingMode = "Web" 616) 617 618// PossibleInternalLoadBalancingModeValues returns an array of possible values for the InternalLoadBalancingMode const type. 619func PossibleInternalLoadBalancingModeValues() []InternalLoadBalancingMode { 620 return []InternalLoadBalancingMode{InternalLoadBalancingModeNone, InternalLoadBalancingModePublishing, InternalLoadBalancingModeWeb} 621} 622 623// IssueType enumerates the values for issue type. 624type IssueType string 625 626const ( 627 // AppCrash ... 628 AppCrash IssueType = "AppCrash" 629 // AppDeployment ... 630 AppDeployment IssueType = "AppDeployment" 631 // AseDeployment ... 632 AseDeployment IssueType = "AseDeployment" 633 // Other ... 634 Other IssueType = "Other" 635 // PlatformIssue ... 636 PlatformIssue IssueType = "PlatformIssue" 637 // RuntimeIssueDetected ... 638 RuntimeIssueDetected IssueType = "RuntimeIssueDetected" 639 // ServiceIncident ... 640 ServiceIncident IssueType = "ServiceIncident" 641 // UserIssue ... 642 UserIssue IssueType = "UserIssue" 643) 644 645// PossibleIssueTypeValues returns an array of possible values for the IssueType const type. 646func PossibleIssueTypeValues() []IssueType { 647 return []IssueType{AppCrash, AppDeployment, AseDeployment, Other, PlatformIssue, RuntimeIssueDetected, ServiceIncident, UserIssue} 648} 649 650// JobType enumerates the values for job type. 651type JobType string 652 653const ( 654 // Continuous ... 655 Continuous JobType = "Continuous" 656 // Triggered ... 657 Triggered JobType = "Triggered" 658) 659 660// PossibleJobTypeValues returns an array of possible values for the JobType const type. 661func PossibleJobTypeValues() []JobType { 662 return []JobType{Continuous, Triggered} 663} 664 665// KeyVaultSecretStatus enumerates the values for key vault secret status. 666type KeyVaultSecretStatus string 667 668const ( 669 // KeyVaultSecretStatusAzureServiceUnauthorizedToAccessKeyVault ... 670 KeyVaultSecretStatusAzureServiceUnauthorizedToAccessKeyVault KeyVaultSecretStatus = "AzureServiceUnauthorizedToAccessKeyVault" 671 // KeyVaultSecretStatusCertificateOrderFailed ... 672 KeyVaultSecretStatusCertificateOrderFailed KeyVaultSecretStatus = "CertificateOrderFailed" 673 // KeyVaultSecretStatusExternalPrivateKey ... 674 KeyVaultSecretStatusExternalPrivateKey KeyVaultSecretStatus = "ExternalPrivateKey" 675 // KeyVaultSecretStatusInitialized ... 676 KeyVaultSecretStatusInitialized KeyVaultSecretStatus = "Initialized" 677 // KeyVaultSecretStatusKeyVaultDoesNotExist ... 678 KeyVaultSecretStatusKeyVaultDoesNotExist KeyVaultSecretStatus = "KeyVaultDoesNotExist" 679 // KeyVaultSecretStatusKeyVaultSecretDoesNotExist ... 680 KeyVaultSecretStatusKeyVaultSecretDoesNotExist KeyVaultSecretStatus = "KeyVaultSecretDoesNotExist" 681 // KeyVaultSecretStatusOperationNotPermittedOnKeyVault ... 682 KeyVaultSecretStatusOperationNotPermittedOnKeyVault KeyVaultSecretStatus = "OperationNotPermittedOnKeyVault" 683 // KeyVaultSecretStatusSucceeded ... 684 KeyVaultSecretStatusSucceeded KeyVaultSecretStatus = "Succeeded" 685 // KeyVaultSecretStatusUnknown ... 686 KeyVaultSecretStatusUnknown KeyVaultSecretStatus = "Unknown" 687 // KeyVaultSecretStatusUnknownError ... 688 KeyVaultSecretStatusUnknownError KeyVaultSecretStatus = "UnknownError" 689 // KeyVaultSecretStatusWaitingOnCertificateOrder ... 690 KeyVaultSecretStatusWaitingOnCertificateOrder KeyVaultSecretStatus = "WaitingOnCertificateOrder" 691) 692 693// PossibleKeyVaultSecretStatusValues returns an array of possible values for the KeyVaultSecretStatus const type. 694func PossibleKeyVaultSecretStatusValues() []KeyVaultSecretStatus { 695 return []KeyVaultSecretStatus{KeyVaultSecretStatusAzureServiceUnauthorizedToAccessKeyVault, KeyVaultSecretStatusCertificateOrderFailed, KeyVaultSecretStatusExternalPrivateKey, KeyVaultSecretStatusInitialized, KeyVaultSecretStatusKeyVaultDoesNotExist, KeyVaultSecretStatusKeyVaultSecretDoesNotExist, KeyVaultSecretStatusOperationNotPermittedOnKeyVault, KeyVaultSecretStatusSucceeded, KeyVaultSecretStatusUnknown, KeyVaultSecretStatusUnknownError, KeyVaultSecretStatusWaitingOnCertificateOrder} 696} 697 698// LogLevel enumerates the values for log level. 699type LogLevel string 700 701const ( 702 // Error ... 703 Error LogLevel = "Error" 704 // Information ... 705 Information LogLevel = "Information" 706 // Off ... 707 Off LogLevel = "Off" 708 // Verbose ... 709 Verbose LogLevel = "Verbose" 710 // Warning ... 711 Warning LogLevel = "Warning" 712) 713 714// PossibleLogLevelValues returns an array of possible values for the LogLevel const type. 715func PossibleLogLevelValues() []LogLevel { 716 return []LogLevel{Error, Information, Off, Verbose, Warning} 717} 718 719// ManagedPipelineMode enumerates the values for managed pipeline mode. 720type ManagedPipelineMode string 721 722const ( 723 // Classic ... 724 Classic ManagedPipelineMode = "Classic" 725 // Integrated ... 726 Integrated ManagedPipelineMode = "Integrated" 727) 728 729// PossibleManagedPipelineModeValues returns an array of possible values for the ManagedPipelineMode const type. 730func PossibleManagedPipelineModeValues() []ManagedPipelineMode { 731 return []ManagedPipelineMode{Classic, Integrated} 732} 733 734// ManagedServiceIdentityType enumerates the values for managed service identity type. 735type ManagedServiceIdentityType string 736 737const ( 738 // SystemAssigned ... 739 SystemAssigned ManagedServiceIdentityType = "SystemAssigned" 740) 741 742// PossibleManagedServiceIdentityTypeValues returns an array of possible values for the ManagedServiceIdentityType const type. 743func PossibleManagedServiceIdentityTypeValues() []ManagedServiceIdentityType { 744 return []ManagedServiceIdentityType{SystemAssigned} 745} 746 747// MSDeployLogEntryType enumerates the values for ms deploy log entry type. 748type MSDeployLogEntryType string 749 750const ( 751 // MSDeployLogEntryTypeError ... 752 MSDeployLogEntryTypeError MSDeployLogEntryType = "Error" 753 // MSDeployLogEntryTypeMessage ... 754 MSDeployLogEntryTypeMessage MSDeployLogEntryType = "Message" 755 // MSDeployLogEntryTypeWarning ... 756 MSDeployLogEntryTypeWarning MSDeployLogEntryType = "Warning" 757) 758 759// PossibleMSDeployLogEntryTypeValues returns an array of possible values for the MSDeployLogEntryType const type. 760func PossibleMSDeployLogEntryTypeValues() []MSDeployLogEntryType { 761 return []MSDeployLogEntryType{MSDeployLogEntryTypeError, MSDeployLogEntryTypeMessage, MSDeployLogEntryTypeWarning} 762} 763 764// MSDeployProvisioningState enumerates the values for ms deploy provisioning state. 765type MSDeployProvisioningState string 766 767const ( 768 // MSDeployProvisioningStateAccepted ... 769 MSDeployProvisioningStateAccepted MSDeployProvisioningState = "accepted" 770 // MSDeployProvisioningStateCanceled ... 771 MSDeployProvisioningStateCanceled MSDeployProvisioningState = "canceled" 772 // MSDeployProvisioningStateFailed ... 773 MSDeployProvisioningStateFailed MSDeployProvisioningState = "failed" 774 // MSDeployProvisioningStateRunning ... 775 MSDeployProvisioningStateRunning MSDeployProvisioningState = "running" 776 // MSDeployProvisioningStateSucceeded ... 777 MSDeployProvisioningStateSucceeded MSDeployProvisioningState = "succeeded" 778) 779 780// PossibleMSDeployProvisioningStateValues returns an array of possible values for the MSDeployProvisioningState const type. 781func PossibleMSDeployProvisioningStateValues() []MSDeployProvisioningState { 782 return []MSDeployProvisioningState{MSDeployProvisioningStateAccepted, MSDeployProvisioningStateCanceled, MSDeployProvisioningStateFailed, MSDeployProvisioningStateRunning, MSDeployProvisioningStateSucceeded} 783} 784 785// MySQLMigrationType enumerates the values for my sql migration type. 786type MySQLMigrationType string 787 788const ( 789 // LocalToRemote ... 790 LocalToRemote MySQLMigrationType = "LocalToRemote" 791 // RemoteToLocal ... 792 RemoteToLocal MySQLMigrationType = "RemoteToLocal" 793) 794 795// PossibleMySQLMigrationTypeValues returns an array of possible values for the MySQLMigrationType const type. 796func PossibleMySQLMigrationTypeValues() []MySQLMigrationType { 797 return []MySQLMigrationType{LocalToRemote, RemoteToLocal} 798} 799 800// NotificationLevel enumerates the values for notification level. 801type NotificationLevel string 802 803const ( 804 // NotificationLevelCritical ... 805 NotificationLevelCritical NotificationLevel = "Critical" 806 // NotificationLevelInformation ... 807 NotificationLevelInformation NotificationLevel = "Information" 808 // NotificationLevelNonUrgentSuggestion ... 809 NotificationLevelNonUrgentSuggestion NotificationLevel = "NonUrgentSuggestion" 810 // NotificationLevelWarning ... 811 NotificationLevelWarning NotificationLevel = "Warning" 812) 813 814// PossibleNotificationLevelValues returns an array of possible values for the NotificationLevel const type. 815func PossibleNotificationLevelValues() []NotificationLevel { 816 return []NotificationLevel{NotificationLevelCritical, NotificationLevelInformation, NotificationLevelNonUrgentSuggestion, NotificationLevelWarning} 817} 818 819// OperationStatus enumerates the values for operation status. 820type OperationStatus string 821 822const ( 823 // OperationStatusCreated ... 824 OperationStatusCreated OperationStatus = "Created" 825 // OperationStatusFailed ... 826 OperationStatusFailed OperationStatus = "Failed" 827 // OperationStatusInProgress ... 828 OperationStatusInProgress OperationStatus = "InProgress" 829 // OperationStatusSucceeded ... 830 OperationStatusSucceeded OperationStatus = "Succeeded" 831 // OperationStatusTimedOut ... 832 OperationStatusTimedOut OperationStatus = "TimedOut" 833) 834 835// PossibleOperationStatusValues returns an array of possible values for the OperationStatus const type. 836func PossibleOperationStatusValues() []OperationStatus { 837 return []OperationStatus{OperationStatusCreated, OperationStatusFailed, OperationStatusInProgress, OperationStatusSucceeded, OperationStatusTimedOut} 838} 839 840// ProvisioningState enumerates the values for provisioning state. 841type ProvisioningState string 842 843const ( 844 // ProvisioningStateCanceled ... 845 ProvisioningStateCanceled ProvisioningState = "Canceled" 846 // ProvisioningStateDeleting ... 847 ProvisioningStateDeleting ProvisioningState = "Deleting" 848 // ProvisioningStateFailed ... 849 ProvisioningStateFailed ProvisioningState = "Failed" 850 // ProvisioningStateInProgress ... 851 ProvisioningStateInProgress ProvisioningState = "InProgress" 852 // ProvisioningStateSucceeded ... 853 ProvisioningStateSucceeded ProvisioningState = "Succeeded" 854) 855 856// PossibleProvisioningStateValues returns an array of possible values for the ProvisioningState const type. 857func PossibleProvisioningStateValues() []ProvisioningState { 858 return []ProvisioningState{ProvisioningStateCanceled, ProvisioningStateDeleting, ProvisioningStateFailed, ProvisioningStateInProgress, ProvisioningStateSucceeded} 859} 860 861// PublicCertificateLocation enumerates the values for public certificate location. 862type PublicCertificateLocation string 863 864const ( 865 // PublicCertificateLocationCurrentUserMy ... 866 PublicCertificateLocationCurrentUserMy PublicCertificateLocation = "CurrentUserMy" 867 // PublicCertificateLocationLocalMachineMy ... 868 PublicCertificateLocationLocalMachineMy PublicCertificateLocation = "LocalMachineMy" 869 // PublicCertificateLocationUnknown ... 870 PublicCertificateLocationUnknown PublicCertificateLocation = "Unknown" 871) 872 873// PossiblePublicCertificateLocationValues returns an array of possible values for the PublicCertificateLocation const type. 874func PossiblePublicCertificateLocationValues() []PublicCertificateLocation { 875 return []PublicCertificateLocation{PublicCertificateLocationCurrentUserMy, PublicCertificateLocationLocalMachineMy, PublicCertificateLocationUnknown} 876} 877 878// PublishingProfileFormat enumerates the values for publishing profile format. 879type PublishingProfileFormat string 880 881const ( 882 // FileZilla3 ... 883 FileZilla3 PublishingProfileFormat = "FileZilla3" 884 // Ftp ... 885 Ftp PublishingProfileFormat = "Ftp" 886 // WebDeploy ... 887 WebDeploy PublishingProfileFormat = "WebDeploy" 888) 889 890// PossiblePublishingProfileFormatValues returns an array of possible values for the PublishingProfileFormat const type. 891func PossiblePublishingProfileFormatValues() []PublishingProfileFormat { 892 return []PublishingProfileFormat{FileZilla3, Ftp, WebDeploy} 893} 894 895// RenderingType enumerates the values for rendering type. 896type RenderingType string 897 898const ( 899 // NoGraph ... 900 NoGraph RenderingType = "NoGraph" 901 // Table ... 902 Table RenderingType = "Table" 903 // TimeSeries ... 904 TimeSeries RenderingType = "TimeSeries" 905 // TimeSeriesPerInstance ... 906 TimeSeriesPerInstance RenderingType = "TimeSeriesPerInstance" 907) 908 909// PossibleRenderingTypeValues returns an array of possible values for the RenderingType const type. 910func PossibleRenderingTypeValues() []RenderingType { 911 return []RenderingType{NoGraph, Table, TimeSeries, TimeSeriesPerInstance} 912} 913 914// ResourceScopeType enumerates the values for resource scope type. 915type ResourceScopeType string 916 917const ( 918 // ServerFarm ... 919 ServerFarm ResourceScopeType = "ServerFarm" 920 // Subscription ... 921 Subscription ResourceScopeType = "Subscription" 922 // WebSite ... 923 WebSite ResourceScopeType = "WebSite" 924) 925 926// PossibleResourceScopeTypeValues returns an array of possible values for the ResourceScopeType const type. 927func PossibleResourceScopeTypeValues() []ResourceScopeType { 928 return []ResourceScopeType{ServerFarm, Subscription, WebSite} 929} 930 931// RouteType enumerates the values for route type. 932type RouteType string 933 934const ( 935 // DEFAULT ... 936 DEFAULT RouteType = "DEFAULT" 937 // INHERITED ... 938 INHERITED RouteType = "INHERITED" 939 // STATIC ... 940 STATIC RouteType = "STATIC" 941) 942 943// PossibleRouteTypeValues returns an array of possible values for the RouteType const type. 944func PossibleRouteTypeValues() []RouteType { 945 return []RouteType{DEFAULT, INHERITED, STATIC} 946} 947 948// ScmType enumerates the values for scm type. 949type ScmType string 950 951const ( 952 // ScmTypeBitbucketGit ... 953 ScmTypeBitbucketGit ScmType = "BitbucketGit" 954 // ScmTypeBitbucketHg ... 955 ScmTypeBitbucketHg ScmType = "BitbucketHg" 956 // ScmTypeCodePlexGit ... 957 ScmTypeCodePlexGit ScmType = "CodePlexGit" 958 // ScmTypeCodePlexHg ... 959 ScmTypeCodePlexHg ScmType = "CodePlexHg" 960 // ScmTypeDropbox ... 961 ScmTypeDropbox ScmType = "Dropbox" 962 // ScmTypeExternalGit ... 963 ScmTypeExternalGit ScmType = "ExternalGit" 964 // ScmTypeExternalHg ... 965 ScmTypeExternalHg ScmType = "ExternalHg" 966 // ScmTypeGitHub ... 967 ScmTypeGitHub ScmType = "GitHub" 968 // ScmTypeLocalGit ... 969 ScmTypeLocalGit ScmType = "LocalGit" 970 // ScmTypeNone ... 971 ScmTypeNone ScmType = "None" 972 // ScmTypeOneDrive ... 973 ScmTypeOneDrive ScmType = "OneDrive" 974 // ScmTypeTfs ... 975 ScmTypeTfs ScmType = "Tfs" 976 // ScmTypeVSO ... 977 ScmTypeVSO ScmType = "VSO" 978) 979 980// PossibleScmTypeValues returns an array of possible values for the ScmType const type. 981func PossibleScmTypeValues() []ScmType { 982 return []ScmType{ScmTypeBitbucketGit, ScmTypeBitbucketHg, ScmTypeCodePlexGit, ScmTypeCodePlexHg, ScmTypeDropbox, ScmTypeExternalGit, ScmTypeExternalHg, ScmTypeGitHub, ScmTypeLocalGit, ScmTypeNone, ScmTypeOneDrive, ScmTypeTfs, ScmTypeVSO} 983} 984 985// SiteAvailabilityState enumerates the values for site availability state. 986type SiteAvailabilityState string 987 988const ( 989 // DisasterRecoveryMode ... 990 DisasterRecoveryMode SiteAvailabilityState = "DisasterRecoveryMode" 991 // Limited ... 992 Limited SiteAvailabilityState = "Limited" 993 // Normal ... 994 Normal SiteAvailabilityState = "Normal" 995) 996 997// PossibleSiteAvailabilityStateValues returns an array of possible values for the SiteAvailabilityState const type. 998func PossibleSiteAvailabilityStateValues() []SiteAvailabilityState { 999 return []SiteAvailabilityState{DisasterRecoveryMode, Limited, Normal} 1000} 1001 1002// SiteExtensionType enumerates the values for site extension type. 1003type SiteExtensionType string 1004 1005const ( 1006 // Gallery ... 1007 Gallery SiteExtensionType = "Gallery" 1008 // WebRoot ... 1009 WebRoot SiteExtensionType = "WebRoot" 1010) 1011 1012// PossibleSiteExtensionTypeValues returns an array of possible values for the SiteExtensionType const type. 1013func PossibleSiteExtensionTypeValues() []SiteExtensionType { 1014 return []SiteExtensionType{Gallery, WebRoot} 1015} 1016 1017// SiteLoadBalancing enumerates the values for site load balancing. 1018type SiteLoadBalancing string 1019 1020const ( 1021 // LeastRequests ... 1022 LeastRequests SiteLoadBalancing = "LeastRequests" 1023 // LeastResponseTime ... 1024 LeastResponseTime SiteLoadBalancing = "LeastResponseTime" 1025 // RequestHash ... 1026 RequestHash SiteLoadBalancing = "RequestHash" 1027 // WeightedRoundRobin ... 1028 WeightedRoundRobin SiteLoadBalancing = "WeightedRoundRobin" 1029 // WeightedTotalTraffic ... 1030 WeightedTotalTraffic SiteLoadBalancing = "WeightedTotalTraffic" 1031) 1032 1033// PossibleSiteLoadBalancingValues returns an array of possible values for the SiteLoadBalancing const type. 1034func PossibleSiteLoadBalancingValues() []SiteLoadBalancing { 1035 return []SiteLoadBalancing{LeastRequests, LeastResponseTime, RequestHash, WeightedRoundRobin, WeightedTotalTraffic} 1036} 1037 1038// SkuName enumerates the values for sku name. 1039type SkuName string 1040 1041const ( 1042 // SkuNameBasic ... 1043 SkuNameBasic SkuName = "Basic" 1044 // SkuNameDynamic ... 1045 SkuNameDynamic SkuName = "Dynamic" 1046 // SkuNameFree ... 1047 SkuNameFree SkuName = "Free" 1048 // SkuNameIsolated ... 1049 SkuNameIsolated SkuName = "Isolated" 1050 // SkuNamePremium ... 1051 SkuNamePremium SkuName = "Premium" 1052 // SkuNamePremiumV2 ... 1053 SkuNamePremiumV2 SkuName = "PremiumV2" 1054 // SkuNameShared ... 1055 SkuNameShared SkuName = "Shared" 1056 // SkuNameStandard ... 1057 SkuNameStandard SkuName = "Standard" 1058) 1059 1060// PossibleSkuNameValues returns an array of possible values for the SkuName const type. 1061func PossibleSkuNameValues() []SkuName { 1062 return []SkuName{SkuNameBasic, SkuNameDynamic, SkuNameFree, SkuNameIsolated, SkuNamePremium, SkuNamePremiumV2, SkuNameShared, SkuNameStandard} 1063} 1064 1065// SolutionType enumerates the values for solution type. 1066type SolutionType string 1067 1068const ( 1069 // BestPractices ... 1070 BestPractices SolutionType = "BestPractices" 1071 // DeepInvestigation ... 1072 DeepInvestigation SolutionType = "DeepInvestigation" 1073 // QuickSolution ... 1074 QuickSolution SolutionType = "QuickSolution" 1075) 1076 1077// PossibleSolutionTypeValues returns an array of possible values for the SolutionType const type. 1078func PossibleSolutionTypeValues() []SolutionType { 1079 return []SolutionType{BestPractices, DeepInvestigation, QuickSolution} 1080} 1081 1082// SslState enumerates the values for ssl state. 1083type SslState string 1084 1085const ( 1086 // Disabled ... 1087 Disabled SslState = "Disabled" 1088 // IPBasedEnabled ... 1089 IPBasedEnabled SslState = "IpBasedEnabled" 1090 // SniEnabled ... 1091 SniEnabled SslState = "SniEnabled" 1092) 1093 1094// PossibleSslStateValues returns an array of possible values for the SslState const type. 1095func PossibleSslStateValues() []SslState { 1096 return []SslState{Disabled, IPBasedEnabled, SniEnabled} 1097} 1098 1099// StatusOptions enumerates the values for status options. 1100type StatusOptions string 1101 1102const ( 1103 // StatusOptionsCreating ... 1104 StatusOptionsCreating StatusOptions = "Creating" 1105 // StatusOptionsPending ... 1106 StatusOptionsPending StatusOptions = "Pending" 1107 // StatusOptionsReady ... 1108 StatusOptionsReady StatusOptions = "Ready" 1109) 1110 1111// PossibleStatusOptionsValues returns an array of possible values for the StatusOptions const type. 1112func PossibleStatusOptionsValues() []StatusOptions { 1113 return []StatusOptions{StatusOptionsCreating, StatusOptionsPending, StatusOptionsReady} 1114} 1115 1116// SupportedTLSVersions enumerates the values for supported tls versions. 1117type SupportedTLSVersions string 1118 1119const ( 1120 // OneFullStopOne ... 1121 OneFullStopOne SupportedTLSVersions = "1.1" 1122 // OneFullStopTwo ... 1123 OneFullStopTwo SupportedTLSVersions = "1.2" 1124 // OneFullStopZero ... 1125 OneFullStopZero SupportedTLSVersions = "1.0" 1126) 1127 1128// PossibleSupportedTLSVersionsValues returns an array of possible values for the SupportedTLSVersions const type. 1129func PossibleSupportedTLSVersionsValues() []SupportedTLSVersions { 1130 return []SupportedTLSVersions{OneFullStopOne, OneFullStopTwo, OneFullStopZero} 1131} 1132 1133// TriggeredWebJobStatus enumerates the values for triggered web job status. 1134type TriggeredWebJobStatus string 1135 1136const ( 1137 // TriggeredWebJobStatusError ... 1138 TriggeredWebJobStatusError TriggeredWebJobStatus = "Error" 1139 // TriggeredWebJobStatusFailed ... 1140 TriggeredWebJobStatusFailed TriggeredWebJobStatus = "Failed" 1141 // TriggeredWebJobStatusSuccess ... 1142 TriggeredWebJobStatusSuccess TriggeredWebJobStatus = "Success" 1143) 1144 1145// PossibleTriggeredWebJobStatusValues returns an array of possible values for the TriggeredWebJobStatus const type. 1146func PossibleTriggeredWebJobStatusValues() []TriggeredWebJobStatus { 1147 return []TriggeredWebJobStatus{TriggeredWebJobStatusError, TriggeredWebJobStatusFailed, TriggeredWebJobStatusSuccess} 1148} 1149 1150// UnauthenticatedClientAction enumerates the values for unauthenticated client action. 1151type UnauthenticatedClientAction string 1152 1153const ( 1154 // AllowAnonymous ... 1155 AllowAnonymous UnauthenticatedClientAction = "AllowAnonymous" 1156 // RedirectToLoginPage ... 1157 RedirectToLoginPage UnauthenticatedClientAction = "RedirectToLoginPage" 1158) 1159 1160// PossibleUnauthenticatedClientActionValues returns an array of possible values for the UnauthenticatedClientAction const type. 1161func PossibleUnauthenticatedClientActionValues() []UnauthenticatedClientAction { 1162 return []UnauthenticatedClientAction{AllowAnonymous, RedirectToLoginPage} 1163} 1164 1165// UsageState enumerates the values for usage state. 1166type UsageState string 1167 1168const ( 1169 // UsageStateExceeded ... 1170 UsageStateExceeded UsageState = "Exceeded" 1171 // UsageStateNormal ... 1172 UsageStateNormal UsageState = "Normal" 1173) 1174 1175// PossibleUsageStateValues returns an array of possible values for the UsageState const type. 1176func PossibleUsageStateValues() []UsageState { 1177 return []UsageState{UsageStateExceeded, UsageStateNormal} 1178} 1179 1180// ValidateResourceTypes enumerates the values for validate resource types. 1181type ValidateResourceTypes string 1182 1183const ( 1184 // ValidateResourceTypesServerFarm ... 1185 ValidateResourceTypesServerFarm ValidateResourceTypes = "ServerFarm" 1186 // ValidateResourceTypesSite ... 1187 ValidateResourceTypesSite ValidateResourceTypes = "Site" 1188) 1189 1190// PossibleValidateResourceTypesValues returns an array of possible values for the ValidateResourceTypes const type. 1191func PossibleValidateResourceTypesValues() []ValidateResourceTypes { 1192 return []ValidateResourceTypes{ValidateResourceTypesServerFarm, ValidateResourceTypesSite} 1193} 1194 1195// WorkerSizeOptions enumerates the values for worker size options. 1196type WorkerSizeOptions string 1197 1198const ( 1199 // D1 ... 1200 D1 WorkerSizeOptions = "D1" 1201 // D2 ... 1202 D2 WorkerSizeOptions = "D2" 1203 // D3 ... 1204 D3 WorkerSizeOptions = "D3" 1205 // Default ... 1206 Default WorkerSizeOptions = "Default" 1207 // Large ... 1208 Large WorkerSizeOptions = "Large" 1209 // Medium ... 1210 Medium WorkerSizeOptions = "Medium" 1211 // Small ... 1212 Small WorkerSizeOptions = "Small" 1213) 1214 1215// PossibleWorkerSizeOptionsValues returns an array of possible values for the WorkerSizeOptions const type. 1216func PossibleWorkerSizeOptionsValues() []WorkerSizeOptions { 1217 return []WorkerSizeOptions{D1, D2, D3, Default, Large, Medium, Small} 1218} 1219 1220// AbnormalTimePeriod class representing Abnormal Time Period identified in diagnosis 1221type AbnormalTimePeriod struct { 1222 // StartTime - Start time of the downtime 1223 StartTime *date.Time `json:"startTime,omitempty"` 1224 // EndTime - End time of the downtime 1225 EndTime *date.Time `json:"endTime,omitempty"` 1226 // Events - List of Possible Cause of downtime 1227 Events *[]DetectorAbnormalTimePeriod `json:"events,omitempty"` 1228 // Solutions - List of proposed solutions 1229 Solutions *[]Solution `json:"solutions,omitempty"` 1230} 1231 1232// Address address information for domain registration. 1233type Address struct { 1234 // Address1 - First line of an Address. 1235 Address1 *string `json:"address1,omitempty"` 1236 // Address2 - The second line of the Address. Optional. 1237 Address2 *string `json:"address2,omitempty"` 1238 // City - The city for the address. 1239 City *string `json:"city,omitempty"` 1240 // Country - The country for the address. 1241 Country *string `json:"country,omitempty"` 1242 // PostalCode - The postal code for the address. 1243 PostalCode *string `json:"postalCode,omitempty"` 1244 // State - The state or province for the address. 1245 State *string `json:"state,omitempty"` 1246} 1247 1248// AddressResponse describes main public IP address and any extra virtual IPs. 1249type AddressResponse struct { 1250 autorest.Response `json:"-"` 1251 // ServiceIPAddress - Main public virtual IP. 1252 ServiceIPAddress *string `json:"serviceIpAddress,omitempty"` 1253 // InternalIPAddress - Virtual Network internal IP address of the App Service Environment if it is in internal load-balancing mode. 1254 InternalIPAddress *string `json:"internalIpAddress,omitempty"` 1255 // OutboundIPAddresses - IP addresses appearing on outbound connections. 1256 OutboundIPAddresses *[]string `json:"outboundIpAddresses,omitempty"` 1257 // VipMappings - Additional virtual IPs. 1258 VipMappings *[]VirtualIPMapping `json:"vipMappings,omitempty"` 1259} 1260 1261// AnalysisData class Representing Detector Evidence used for analysis 1262type AnalysisData struct { 1263 // Source - Name of the Detector 1264 Source *string `json:"source,omitempty"` 1265 // DetectorDefinition - Detector Definition 1266 DetectorDefinition *DetectorDefinition `json:"detectorDefinition,omitempty"` 1267 // Metrics - Source Metrics 1268 Metrics *[]DiagnosticMetricSet `json:"metrics,omitempty"` 1269 // Data - Additional Source Data 1270 Data *[][]NameValuePair `json:"data,omitempty"` 1271 // DetectorMetaData - Detector Meta Data 1272 DetectorMetaData *ResponseMetaData `json:"detectorMetaData,omitempty"` 1273} 1274 1275// AnalysisDefinition definition of Analysis 1276type AnalysisDefinition struct { 1277 // AnalysisDefinitionProperties - AnalysisDefinition resource specific properties 1278 *AnalysisDefinitionProperties `json:"properties,omitempty"` 1279 // ID - Resource Id. 1280 ID *string `json:"id,omitempty"` 1281 // Name - Resource Name. 1282 Name *string `json:"name,omitempty"` 1283 // Kind - Kind of resource. 1284 Kind *string `json:"kind,omitempty"` 1285 // Type - Resource type. 1286 Type *string `json:"type,omitempty"` 1287} 1288 1289// MarshalJSON is the custom marshaler for AnalysisDefinition. 1290func (ad AnalysisDefinition) MarshalJSON() ([]byte, error) { 1291 objectMap := make(map[string]interface{}) 1292 if ad.AnalysisDefinitionProperties != nil { 1293 objectMap["properties"] = ad.AnalysisDefinitionProperties 1294 } 1295 if ad.ID != nil { 1296 objectMap["id"] = ad.ID 1297 } 1298 if ad.Name != nil { 1299 objectMap["name"] = ad.Name 1300 } 1301 if ad.Kind != nil { 1302 objectMap["kind"] = ad.Kind 1303 } 1304 if ad.Type != nil { 1305 objectMap["type"] = ad.Type 1306 } 1307 return json.Marshal(objectMap) 1308} 1309 1310// UnmarshalJSON is the custom unmarshaler for AnalysisDefinition struct. 1311func (ad *AnalysisDefinition) UnmarshalJSON(body []byte) error { 1312 var m map[string]*json.RawMessage 1313 err := json.Unmarshal(body, &m) 1314 if err != nil { 1315 return err 1316 } 1317 for k, v := range m { 1318 switch k { 1319 case "properties": 1320 if v != nil { 1321 var analysisDefinitionProperties AnalysisDefinitionProperties 1322 err = json.Unmarshal(*v, &analysisDefinitionProperties) 1323 if err != nil { 1324 return err 1325 } 1326 ad.AnalysisDefinitionProperties = &analysisDefinitionProperties 1327 } 1328 case "id": 1329 if v != nil { 1330 var ID string 1331 err = json.Unmarshal(*v, &ID) 1332 if err != nil { 1333 return err 1334 } 1335 ad.ID = &ID 1336 } 1337 case "name": 1338 if v != nil { 1339 var name string 1340 err = json.Unmarshal(*v, &name) 1341 if err != nil { 1342 return err 1343 } 1344 ad.Name = &name 1345 } 1346 case "kind": 1347 if v != nil { 1348 var kind string 1349 err = json.Unmarshal(*v, &kind) 1350 if err != nil { 1351 return err 1352 } 1353 ad.Kind = &kind 1354 } 1355 case "type": 1356 if v != nil { 1357 var typeVar string 1358 err = json.Unmarshal(*v, &typeVar) 1359 if err != nil { 1360 return err 1361 } 1362 ad.Type = &typeVar 1363 } 1364 } 1365 } 1366 1367 return nil 1368} 1369 1370// AnalysisDefinitionProperties analysisDefinition resource specific properties 1371type AnalysisDefinitionProperties struct { 1372 // Description - Description of the Analysis 1373 Description *string `json:"description,omitempty"` 1374} 1375 1376// APIDefinitionInfo information about the formal API definition for the app. 1377type APIDefinitionInfo struct { 1378 // URL - The URL of the API definition. 1379 URL *string `json:"url,omitempty"` 1380} 1381 1382// AppCollection collection of App Service apps. 1383type AppCollection struct { 1384 autorest.Response `json:"-"` 1385 // Value - Collection of resources. 1386 Value *[]Site `json:"value,omitempty"` 1387 // NextLink - Link to next page of resources. 1388 NextLink *string `json:"nextLink,omitempty"` 1389} 1390 1391// AppCollectionIterator provides access to a complete listing of Site values. 1392type AppCollectionIterator struct { 1393 i int 1394 page AppCollectionPage 1395} 1396 1397// Next advances to the next value. If there was an error making 1398// the request the iterator does not advance and the error is returned. 1399func (iter *AppCollectionIterator) Next() error { 1400 iter.i++ 1401 if iter.i < len(iter.page.Values()) { 1402 return nil 1403 } 1404 err := iter.page.Next() 1405 if err != nil { 1406 iter.i-- 1407 return err 1408 } 1409 iter.i = 0 1410 return nil 1411} 1412 1413// NotDone returns true if the enumeration should be started or is not yet complete. 1414func (iter AppCollectionIterator) NotDone() bool { 1415 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 1416} 1417 1418// Response returns the raw server response from the last page request. 1419func (iter AppCollectionIterator) Response() AppCollection { 1420 return iter.page.Response() 1421} 1422 1423// Value returns the current value or a zero-initialized value if the 1424// iterator has advanced beyond the end of the collection. 1425func (iter AppCollectionIterator) Value() Site { 1426 if !iter.page.NotDone() { 1427 return Site{} 1428 } 1429 return iter.page.Values()[iter.i] 1430} 1431 1432// IsEmpty returns true if the ListResult contains no values. 1433func (ac AppCollection) IsEmpty() bool { 1434 return ac.Value == nil || len(*ac.Value) == 0 1435} 1436 1437// appCollectionPreparer prepares a request to retrieve the next set of results. 1438// It returns nil if no more results exist. 1439func (ac AppCollection) appCollectionPreparer() (*http.Request, error) { 1440 if ac.NextLink == nil || len(to.String(ac.NextLink)) < 1 { 1441 return nil, nil 1442 } 1443 return autorest.Prepare(&http.Request{}, 1444 autorest.AsJSON(), 1445 autorest.AsGet(), 1446 autorest.WithBaseURL(to.String(ac.NextLink))) 1447} 1448 1449// AppCollectionPage contains a page of Site values. 1450type AppCollectionPage struct { 1451 fn func(AppCollection) (AppCollection, error) 1452 ac AppCollection 1453} 1454 1455// Next advances to the next page of values. If there was an error making 1456// the request the page does not advance and the error is returned. 1457func (page *AppCollectionPage) Next() error { 1458 next, err := page.fn(page.ac) 1459 if err != nil { 1460 return err 1461 } 1462 page.ac = next 1463 return nil 1464} 1465 1466// NotDone returns true if the page enumeration should be started or is not yet complete. 1467func (page AppCollectionPage) NotDone() bool { 1468 return !page.ac.IsEmpty() 1469} 1470 1471// Response returns the raw server response from the last page request. 1472func (page AppCollectionPage) Response() AppCollection { 1473 return page.ac 1474} 1475 1476// Values returns the slice of values for the current page or nil if there are no values. 1477func (page AppCollectionPage) Values() []Site { 1478 if page.ac.IsEmpty() { 1479 return nil 1480 } 1481 return *page.ac.Value 1482} 1483 1484// AppInstanceCollection collection of app instances. 1485type AppInstanceCollection struct { 1486 autorest.Response `json:"-"` 1487 // Value - Collection of resources. 1488 Value *[]SiteInstance `json:"value,omitempty"` 1489 // NextLink - Link to next page of resources. 1490 NextLink *string `json:"nextLink,omitempty"` 1491} 1492 1493// AppInstanceCollectionIterator provides access to a complete listing of SiteInstance values. 1494type AppInstanceCollectionIterator struct { 1495 i int 1496 page AppInstanceCollectionPage 1497} 1498 1499// Next advances to the next value. If there was an error making 1500// the request the iterator does not advance and the error is returned. 1501func (iter *AppInstanceCollectionIterator) Next() error { 1502 iter.i++ 1503 if iter.i < len(iter.page.Values()) { 1504 return nil 1505 } 1506 err := iter.page.Next() 1507 if err != nil { 1508 iter.i-- 1509 return err 1510 } 1511 iter.i = 0 1512 return nil 1513} 1514 1515// NotDone returns true if the enumeration should be started or is not yet complete. 1516func (iter AppInstanceCollectionIterator) NotDone() bool { 1517 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 1518} 1519 1520// Response returns the raw server response from the last page request. 1521func (iter AppInstanceCollectionIterator) Response() AppInstanceCollection { 1522 return iter.page.Response() 1523} 1524 1525// Value returns the current value or a zero-initialized value if the 1526// iterator has advanced beyond the end of the collection. 1527func (iter AppInstanceCollectionIterator) Value() SiteInstance { 1528 if !iter.page.NotDone() { 1529 return SiteInstance{} 1530 } 1531 return iter.page.Values()[iter.i] 1532} 1533 1534// IsEmpty returns true if the ListResult contains no values. 1535func (aic AppInstanceCollection) IsEmpty() bool { 1536 return aic.Value == nil || len(*aic.Value) == 0 1537} 1538 1539// appInstanceCollectionPreparer prepares a request to retrieve the next set of results. 1540// It returns nil if no more results exist. 1541func (aic AppInstanceCollection) appInstanceCollectionPreparer() (*http.Request, error) { 1542 if aic.NextLink == nil || len(to.String(aic.NextLink)) < 1 { 1543 return nil, nil 1544 } 1545 return autorest.Prepare(&http.Request{}, 1546 autorest.AsJSON(), 1547 autorest.AsGet(), 1548 autorest.WithBaseURL(to.String(aic.NextLink))) 1549} 1550 1551// AppInstanceCollectionPage contains a page of SiteInstance values. 1552type AppInstanceCollectionPage struct { 1553 fn func(AppInstanceCollection) (AppInstanceCollection, error) 1554 aic AppInstanceCollection 1555} 1556 1557// Next advances to the next page of values. If there was an error making 1558// the request the page does not advance and the error is returned. 1559func (page *AppInstanceCollectionPage) Next() error { 1560 next, err := page.fn(page.aic) 1561 if err != nil { 1562 return err 1563 } 1564 page.aic = next 1565 return nil 1566} 1567 1568// NotDone returns true if the page enumeration should be started or is not yet complete. 1569func (page AppInstanceCollectionPage) NotDone() bool { 1570 return !page.aic.IsEmpty() 1571} 1572 1573// Response returns the raw server response from the last page request. 1574func (page AppInstanceCollectionPage) Response() AppInstanceCollection { 1575 return page.aic 1576} 1577 1578// Values returns the slice of values for the current page or nil if there are no values. 1579func (page AppInstanceCollectionPage) Values() []SiteInstance { 1580 if page.aic.IsEmpty() { 1581 return nil 1582 } 1583 return *page.aic.Value 1584} 1585 1586// ApplicationLogsConfig application logs configuration. 1587type ApplicationLogsConfig struct { 1588 // FileSystem - Application logs to file system configuration. 1589 FileSystem *FileSystemApplicationLogsConfig `json:"fileSystem,omitempty"` 1590 // AzureTableStorage - Application logs to azure table storage configuration. 1591 AzureTableStorage *AzureTableStorageApplicationLogsConfig `json:"azureTableStorage,omitempty"` 1592 // AzureBlobStorage - Application logs to blob storage configuration. 1593 AzureBlobStorage *AzureBlobStorageApplicationLogsConfig `json:"azureBlobStorage,omitempty"` 1594} 1595 1596// ApplicationStack application stack. 1597type ApplicationStack struct { 1598 // Name - Application stack name. 1599 Name *string `json:"name,omitempty"` 1600 // Display - Application stack display name. 1601 Display *string `json:"display,omitempty"` 1602 // Dependency - Application stack dependency. 1603 Dependency *string `json:"dependency,omitempty"` 1604 // MajorVersions - List of major versions available. 1605 MajorVersions *[]StackMajorVersion `json:"majorVersions,omitempty"` 1606 // Frameworks - List of frameworks associated with application stack. 1607 Frameworks *[]ApplicationStack `json:"frameworks,omitempty"` 1608} 1609 1610// ApplicationStackCollection collection of Application Stacks 1611type ApplicationStackCollection struct { 1612 autorest.Response `json:"-"` 1613 // Value - Collection of resources. 1614 Value *[]ApplicationStack `json:"value,omitempty"` 1615 // NextLink - Link to next page of resources. 1616 NextLink *string `json:"nextLink,omitempty"` 1617} 1618 1619// ApplicationStackCollectionIterator provides access to a complete listing of ApplicationStack values. 1620type ApplicationStackCollectionIterator struct { 1621 i int 1622 page ApplicationStackCollectionPage 1623} 1624 1625// Next advances to the next value. If there was an error making 1626// the request the iterator does not advance and the error is returned. 1627func (iter *ApplicationStackCollectionIterator) Next() error { 1628 iter.i++ 1629 if iter.i < len(iter.page.Values()) { 1630 return nil 1631 } 1632 err := iter.page.Next() 1633 if err != nil { 1634 iter.i-- 1635 return err 1636 } 1637 iter.i = 0 1638 return nil 1639} 1640 1641// NotDone returns true if the enumeration should be started or is not yet complete. 1642func (iter ApplicationStackCollectionIterator) NotDone() bool { 1643 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 1644} 1645 1646// Response returns the raw server response from the last page request. 1647func (iter ApplicationStackCollectionIterator) Response() ApplicationStackCollection { 1648 return iter.page.Response() 1649} 1650 1651// Value returns the current value or a zero-initialized value if the 1652// iterator has advanced beyond the end of the collection. 1653func (iter ApplicationStackCollectionIterator) Value() ApplicationStack { 1654 if !iter.page.NotDone() { 1655 return ApplicationStack{} 1656 } 1657 return iter.page.Values()[iter.i] 1658} 1659 1660// IsEmpty returns true if the ListResult contains no values. 1661func (asc ApplicationStackCollection) IsEmpty() bool { 1662 return asc.Value == nil || len(*asc.Value) == 0 1663} 1664 1665// applicationStackCollectionPreparer prepares a request to retrieve the next set of results. 1666// It returns nil if no more results exist. 1667func (asc ApplicationStackCollection) applicationStackCollectionPreparer() (*http.Request, error) { 1668 if asc.NextLink == nil || len(to.String(asc.NextLink)) < 1 { 1669 return nil, nil 1670 } 1671 return autorest.Prepare(&http.Request{}, 1672 autorest.AsJSON(), 1673 autorest.AsGet(), 1674 autorest.WithBaseURL(to.String(asc.NextLink))) 1675} 1676 1677// ApplicationStackCollectionPage contains a page of ApplicationStack values. 1678type ApplicationStackCollectionPage struct { 1679 fn func(ApplicationStackCollection) (ApplicationStackCollection, error) 1680 asc ApplicationStackCollection 1681} 1682 1683// Next advances to the next page of values. If there was an error making 1684// the request the page does not advance and the error is returned. 1685func (page *ApplicationStackCollectionPage) Next() error { 1686 next, err := page.fn(page.asc) 1687 if err != nil { 1688 return err 1689 } 1690 page.asc = next 1691 return nil 1692} 1693 1694// NotDone returns true if the page enumeration should be started or is not yet complete. 1695func (page ApplicationStackCollectionPage) NotDone() bool { 1696 return !page.asc.IsEmpty() 1697} 1698 1699// Response returns the raw server response from the last page request. 1700func (page ApplicationStackCollectionPage) Response() ApplicationStackCollection { 1701 return page.asc 1702} 1703 1704// Values returns the slice of values for the current page or nil if there are no values. 1705func (page ApplicationStackCollectionPage) Values() []ApplicationStack { 1706 if page.asc.IsEmpty() { 1707 return nil 1708 } 1709 return *page.asc.Value 1710} 1711 1712// AppsCreateFunctionFuture an abstraction for monitoring and retrieving the results of a long-running operation. 1713type AppsCreateFunctionFuture struct { 1714 azure.Future 1715 req *http.Request 1716} 1717 1718// Result returns the result of the asynchronous operation. 1719// If the operation has not completed it will return an error. 1720func (future AppsCreateFunctionFuture) Result(client AppsClient) (fe FunctionEnvelope, err error) { 1721 var done bool 1722 done, err = future.Done(client) 1723 if err != nil { 1724 err = autorest.NewErrorWithError(err, "web.AppsCreateFunctionFuture", "Result", future.Response(), "Polling failure") 1725 return 1726 } 1727 if !done { 1728 return fe, azure.NewAsyncOpIncompleteError("web.AppsCreateFunctionFuture") 1729 } 1730 if future.PollingMethod() == azure.PollingLocation { 1731 fe, err = client.CreateFunctionResponder(future.Response()) 1732 if err != nil { 1733 err = autorest.NewErrorWithError(err, "web.AppsCreateFunctionFuture", "Result", future.Response(), "Failure responding to request") 1734 } 1735 return 1736 } 1737 var req *http.Request 1738 var resp *http.Response 1739 if future.PollingURL() != "" { 1740 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 1741 if err != nil { 1742 return 1743 } 1744 } else { 1745 req = autorest.ChangeToGet(future.req) 1746 } 1747 resp, err = autorest.SendWithSender(client, req, 1748 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 1749 if err != nil { 1750 err = autorest.NewErrorWithError(err, "web.AppsCreateFunctionFuture", "Result", resp, "Failure sending request") 1751 return 1752 } 1753 fe, err = client.CreateFunctionResponder(resp) 1754 if err != nil { 1755 err = autorest.NewErrorWithError(err, "web.AppsCreateFunctionFuture", "Result", resp, "Failure responding to request") 1756 } 1757 return 1758} 1759 1760// AppsCreateInstanceFunctionSlotFuture an abstraction for monitoring and retrieving the results of a long-running 1761// operation. 1762type AppsCreateInstanceFunctionSlotFuture struct { 1763 azure.Future 1764 req *http.Request 1765} 1766 1767// Result returns the result of the asynchronous operation. 1768// If the operation has not completed it will return an error. 1769func (future AppsCreateInstanceFunctionSlotFuture) Result(client AppsClient) (fe FunctionEnvelope, err error) { 1770 var done bool 1771 done, err = future.Done(client) 1772 if err != nil { 1773 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceFunctionSlotFuture", "Result", future.Response(), "Polling failure") 1774 return 1775 } 1776 if !done { 1777 return fe, azure.NewAsyncOpIncompleteError("web.AppsCreateInstanceFunctionSlotFuture") 1778 } 1779 if future.PollingMethod() == azure.PollingLocation { 1780 fe, err = client.CreateInstanceFunctionSlotResponder(future.Response()) 1781 if err != nil { 1782 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceFunctionSlotFuture", "Result", future.Response(), "Failure responding to request") 1783 } 1784 return 1785 } 1786 var req *http.Request 1787 var resp *http.Response 1788 if future.PollingURL() != "" { 1789 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 1790 if err != nil { 1791 return 1792 } 1793 } else { 1794 req = autorest.ChangeToGet(future.req) 1795 } 1796 resp, err = autorest.SendWithSender(client, req, 1797 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 1798 if err != nil { 1799 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceFunctionSlotFuture", "Result", resp, "Failure sending request") 1800 return 1801 } 1802 fe, err = client.CreateInstanceFunctionSlotResponder(resp) 1803 if err != nil { 1804 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceFunctionSlotFuture", "Result", resp, "Failure responding to request") 1805 } 1806 return 1807} 1808 1809// AppsCreateInstanceMSDeployOperationFuture an abstraction for monitoring and retrieving the results of a 1810// long-running operation. 1811type AppsCreateInstanceMSDeployOperationFuture struct { 1812 azure.Future 1813 req *http.Request 1814} 1815 1816// Result returns the result of the asynchronous operation. 1817// If the operation has not completed it will return an error. 1818func (future AppsCreateInstanceMSDeployOperationFuture) Result(client AppsClient) (mds MSDeployStatus, err error) { 1819 var done bool 1820 done, err = future.Done(client) 1821 if err != nil { 1822 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceMSDeployOperationFuture", "Result", future.Response(), "Polling failure") 1823 return 1824 } 1825 if !done { 1826 return mds, azure.NewAsyncOpIncompleteError("web.AppsCreateInstanceMSDeployOperationFuture") 1827 } 1828 if future.PollingMethod() == azure.PollingLocation { 1829 mds, err = client.CreateInstanceMSDeployOperationResponder(future.Response()) 1830 if err != nil { 1831 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceMSDeployOperationFuture", "Result", future.Response(), "Failure responding to request") 1832 } 1833 return 1834 } 1835 var req *http.Request 1836 var resp *http.Response 1837 if future.PollingURL() != "" { 1838 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 1839 if err != nil { 1840 return 1841 } 1842 } else { 1843 req = autorest.ChangeToGet(future.req) 1844 } 1845 resp, err = autorest.SendWithSender(client, req, 1846 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 1847 if err != nil { 1848 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceMSDeployOperationFuture", "Result", resp, "Failure sending request") 1849 return 1850 } 1851 mds, err = client.CreateInstanceMSDeployOperationResponder(resp) 1852 if err != nil { 1853 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceMSDeployOperationFuture", "Result", resp, "Failure responding to request") 1854 } 1855 return 1856} 1857 1858// AppsCreateInstanceMSDeployOperationSlotFuture an abstraction for monitoring and retrieving the results of a 1859// long-running operation. 1860type AppsCreateInstanceMSDeployOperationSlotFuture struct { 1861 azure.Future 1862 req *http.Request 1863} 1864 1865// Result returns the result of the asynchronous operation. 1866// If the operation has not completed it will return an error. 1867func (future AppsCreateInstanceMSDeployOperationSlotFuture) Result(client AppsClient) (mds MSDeployStatus, err error) { 1868 var done bool 1869 done, err = future.Done(client) 1870 if err != nil { 1871 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceMSDeployOperationSlotFuture", "Result", future.Response(), "Polling failure") 1872 return 1873 } 1874 if !done { 1875 return mds, azure.NewAsyncOpIncompleteError("web.AppsCreateInstanceMSDeployOperationSlotFuture") 1876 } 1877 if future.PollingMethod() == azure.PollingLocation { 1878 mds, err = client.CreateInstanceMSDeployOperationSlotResponder(future.Response()) 1879 if err != nil { 1880 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceMSDeployOperationSlotFuture", "Result", future.Response(), "Failure responding to request") 1881 } 1882 return 1883 } 1884 var req *http.Request 1885 var resp *http.Response 1886 if future.PollingURL() != "" { 1887 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 1888 if err != nil { 1889 return 1890 } 1891 } else { 1892 req = autorest.ChangeToGet(future.req) 1893 } 1894 resp, err = autorest.SendWithSender(client, req, 1895 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 1896 if err != nil { 1897 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceMSDeployOperationSlotFuture", "Result", resp, "Failure sending request") 1898 return 1899 } 1900 mds, err = client.CreateInstanceMSDeployOperationSlotResponder(resp) 1901 if err != nil { 1902 err = autorest.NewErrorWithError(err, "web.AppsCreateInstanceMSDeployOperationSlotFuture", "Result", resp, "Failure responding to request") 1903 } 1904 return 1905} 1906 1907// AppsCreateMSDeployOperationFuture an abstraction for monitoring and retrieving the results of a long-running 1908// operation. 1909type AppsCreateMSDeployOperationFuture struct { 1910 azure.Future 1911 req *http.Request 1912} 1913 1914// Result returns the result of the asynchronous operation. 1915// If the operation has not completed it will return an error. 1916func (future AppsCreateMSDeployOperationFuture) Result(client AppsClient) (mds MSDeployStatus, err error) { 1917 var done bool 1918 done, err = future.Done(client) 1919 if err != nil { 1920 err = autorest.NewErrorWithError(err, "web.AppsCreateMSDeployOperationFuture", "Result", future.Response(), "Polling failure") 1921 return 1922 } 1923 if !done { 1924 return mds, azure.NewAsyncOpIncompleteError("web.AppsCreateMSDeployOperationFuture") 1925 } 1926 if future.PollingMethod() == azure.PollingLocation { 1927 mds, err = client.CreateMSDeployOperationResponder(future.Response()) 1928 if err != nil { 1929 err = autorest.NewErrorWithError(err, "web.AppsCreateMSDeployOperationFuture", "Result", future.Response(), "Failure responding to request") 1930 } 1931 return 1932 } 1933 var req *http.Request 1934 var resp *http.Response 1935 if future.PollingURL() != "" { 1936 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 1937 if err != nil { 1938 return 1939 } 1940 } else { 1941 req = autorest.ChangeToGet(future.req) 1942 } 1943 resp, err = autorest.SendWithSender(client, req, 1944 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 1945 if err != nil { 1946 err = autorest.NewErrorWithError(err, "web.AppsCreateMSDeployOperationFuture", "Result", resp, "Failure sending request") 1947 return 1948 } 1949 mds, err = client.CreateMSDeployOperationResponder(resp) 1950 if err != nil { 1951 err = autorest.NewErrorWithError(err, "web.AppsCreateMSDeployOperationFuture", "Result", resp, "Failure responding to request") 1952 } 1953 return 1954} 1955 1956// AppsCreateMSDeployOperationSlotFuture an abstraction for monitoring and retrieving the results of a long-running 1957// operation. 1958type AppsCreateMSDeployOperationSlotFuture struct { 1959 azure.Future 1960 req *http.Request 1961} 1962 1963// Result returns the result of the asynchronous operation. 1964// If the operation has not completed it will return an error. 1965func (future AppsCreateMSDeployOperationSlotFuture) Result(client AppsClient) (mds MSDeployStatus, err error) { 1966 var done bool 1967 done, err = future.Done(client) 1968 if err != nil { 1969 err = autorest.NewErrorWithError(err, "web.AppsCreateMSDeployOperationSlotFuture", "Result", future.Response(), "Polling failure") 1970 return 1971 } 1972 if !done { 1973 return mds, azure.NewAsyncOpIncompleteError("web.AppsCreateMSDeployOperationSlotFuture") 1974 } 1975 if future.PollingMethod() == azure.PollingLocation { 1976 mds, err = client.CreateMSDeployOperationSlotResponder(future.Response()) 1977 if err != nil { 1978 err = autorest.NewErrorWithError(err, "web.AppsCreateMSDeployOperationSlotFuture", "Result", future.Response(), "Failure responding to request") 1979 } 1980 return 1981 } 1982 var req *http.Request 1983 var resp *http.Response 1984 if future.PollingURL() != "" { 1985 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 1986 if err != nil { 1987 return 1988 } 1989 } else { 1990 req = autorest.ChangeToGet(future.req) 1991 } 1992 resp, err = autorest.SendWithSender(client, req, 1993 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 1994 if err != nil { 1995 err = autorest.NewErrorWithError(err, "web.AppsCreateMSDeployOperationSlotFuture", "Result", resp, "Failure sending request") 1996 return 1997 } 1998 mds, err = client.CreateMSDeployOperationSlotResponder(resp) 1999 if err != nil { 2000 err = autorest.NewErrorWithError(err, "web.AppsCreateMSDeployOperationSlotFuture", "Result", resp, "Failure responding to request") 2001 } 2002 return 2003} 2004 2005// AppsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a long-running operation. 2006type AppsCreateOrUpdateFuture struct { 2007 azure.Future 2008 req *http.Request 2009} 2010 2011// Result returns the result of the asynchronous operation. 2012// If the operation has not completed it will return an error. 2013func (future AppsCreateOrUpdateFuture) Result(client AppsClient) (s Site, err error) { 2014 var done bool 2015 done, err = future.Done(client) 2016 if err != nil { 2017 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure") 2018 return 2019 } 2020 if !done { 2021 return s, azure.NewAsyncOpIncompleteError("web.AppsCreateOrUpdateFuture") 2022 } 2023 if future.PollingMethod() == azure.PollingLocation { 2024 s, err = client.CreateOrUpdateResponder(future.Response()) 2025 if err != nil { 2026 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateFuture", "Result", future.Response(), "Failure responding to request") 2027 } 2028 return 2029 } 2030 var req *http.Request 2031 var resp *http.Response 2032 if future.PollingURL() != "" { 2033 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 2034 if err != nil { 2035 return 2036 } 2037 } else { 2038 req = autorest.ChangeToGet(future.req) 2039 } 2040 resp, err = autorest.SendWithSender(client, req, 2041 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2042 if err != nil { 2043 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateFuture", "Result", resp, "Failure sending request") 2044 return 2045 } 2046 s, err = client.CreateOrUpdateResponder(resp) 2047 if err != nil { 2048 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateFuture", "Result", resp, "Failure responding to request") 2049 } 2050 return 2051} 2052 2053// AppsCreateOrUpdateSlotFuture an abstraction for monitoring and retrieving the results of a long-running 2054// operation. 2055type AppsCreateOrUpdateSlotFuture struct { 2056 azure.Future 2057 req *http.Request 2058} 2059 2060// Result returns the result of the asynchronous operation. 2061// If the operation has not completed it will return an error. 2062func (future AppsCreateOrUpdateSlotFuture) Result(client AppsClient) (s Site, err error) { 2063 var done bool 2064 done, err = future.Done(client) 2065 if err != nil { 2066 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSlotFuture", "Result", future.Response(), "Polling failure") 2067 return 2068 } 2069 if !done { 2070 return s, azure.NewAsyncOpIncompleteError("web.AppsCreateOrUpdateSlotFuture") 2071 } 2072 if future.PollingMethod() == azure.PollingLocation { 2073 s, err = client.CreateOrUpdateSlotResponder(future.Response()) 2074 if err != nil { 2075 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSlotFuture", "Result", future.Response(), "Failure responding to request") 2076 } 2077 return 2078 } 2079 var req *http.Request 2080 var resp *http.Response 2081 if future.PollingURL() != "" { 2082 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 2083 if err != nil { 2084 return 2085 } 2086 } else { 2087 req = autorest.ChangeToGet(future.req) 2088 } 2089 resp, err = autorest.SendWithSender(client, req, 2090 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2091 if err != nil { 2092 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSlotFuture", "Result", resp, "Failure sending request") 2093 return 2094 } 2095 s, err = client.CreateOrUpdateSlotResponder(resp) 2096 if err != nil { 2097 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSlotFuture", "Result", resp, "Failure responding to request") 2098 } 2099 return 2100} 2101 2102// AppsCreateOrUpdateSourceControlFuture an abstraction for monitoring and retrieving the results of a long-running 2103// operation. 2104type AppsCreateOrUpdateSourceControlFuture struct { 2105 azure.Future 2106 req *http.Request 2107} 2108 2109// Result returns the result of the asynchronous operation. 2110// If the operation has not completed it will return an error. 2111func (future AppsCreateOrUpdateSourceControlFuture) Result(client AppsClient) (ssc SiteSourceControl, err error) { 2112 var done bool 2113 done, err = future.Done(client) 2114 if err != nil { 2115 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSourceControlFuture", "Result", future.Response(), "Polling failure") 2116 return 2117 } 2118 if !done { 2119 return ssc, azure.NewAsyncOpIncompleteError("web.AppsCreateOrUpdateSourceControlFuture") 2120 } 2121 if future.PollingMethod() == azure.PollingLocation { 2122 ssc, err = client.CreateOrUpdateSourceControlResponder(future.Response()) 2123 if err != nil { 2124 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSourceControlFuture", "Result", future.Response(), "Failure responding to request") 2125 } 2126 return 2127 } 2128 var req *http.Request 2129 var resp *http.Response 2130 if future.PollingURL() != "" { 2131 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 2132 if err != nil { 2133 return 2134 } 2135 } else { 2136 req = autorest.ChangeToGet(future.req) 2137 } 2138 resp, err = autorest.SendWithSender(client, req, 2139 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2140 if err != nil { 2141 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSourceControlFuture", "Result", resp, "Failure sending request") 2142 return 2143 } 2144 ssc, err = client.CreateOrUpdateSourceControlResponder(resp) 2145 if err != nil { 2146 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSourceControlFuture", "Result", resp, "Failure responding to request") 2147 } 2148 return 2149} 2150 2151// AppsCreateOrUpdateSourceControlSlotFuture an abstraction for monitoring and retrieving the results of a 2152// long-running operation. 2153type AppsCreateOrUpdateSourceControlSlotFuture struct { 2154 azure.Future 2155 req *http.Request 2156} 2157 2158// Result returns the result of the asynchronous operation. 2159// If the operation has not completed it will return an error. 2160func (future AppsCreateOrUpdateSourceControlSlotFuture) Result(client AppsClient) (ssc SiteSourceControl, err error) { 2161 var done bool 2162 done, err = future.Done(client) 2163 if err != nil { 2164 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSourceControlSlotFuture", "Result", future.Response(), "Polling failure") 2165 return 2166 } 2167 if !done { 2168 return ssc, azure.NewAsyncOpIncompleteError("web.AppsCreateOrUpdateSourceControlSlotFuture") 2169 } 2170 if future.PollingMethod() == azure.PollingLocation { 2171 ssc, err = client.CreateOrUpdateSourceControlSlotResponder(future.Response()) 2172 if err != nil { 2173 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSourceControlSlotFuture", "Result", future.Response(), "Failure responding to request") 2174 } 2175 return 2176 } 2177 var req *http.Request 2178 var resp *http.Response 2179 if future.PollingURL() != "" { 2180 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 2181 if err != nil { 2182 return 2183 } 2184 } else { 2185 req = autorest.ChangeToGet(future.req) 2186 } 2187 resp, err = autorest.SendWithSender(client, req, 2188 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2189 if err != nil { 2190 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSourceControlSlotFuture", "Result", resp, "Failure sending request") 2191 return 2192 } 2193 ssc, err = client.CreateOrUpdateSourceControlSlotResponder(resp) 2194 if err != nil { 2195 err = autorest.NewErrorWithError(err, "web.AppsCreateOrUpdateSourceControlSlotFuture", "Result", resp, "Failure responding to request") 2196 } 2197 return 2198} 2199 2200// AppServiceCertificate key Vault container for a certificate that is purchased through Azure. 2201type AppServiceCertificate struct { 2202 // KeyVaultID - Key Vault resource Id. 2203 KeyVaultID *string `json:"keyVaultId,omitempty"` 2204 // KeyVaultSecretName - Key Vault secret name. 2205 KeyVaultSecretName *string `json:"keyVaultSecretName,omitempty"` 2206 // ProvisioningState - Status of the Key Vault secret. Possible values include: 'KeyVaultSecretStatusInitialized', 'KeyVaultSecretStatusWaitingOnCertificateOrder', 'KeyVaultSecretStatusSucceeded', 'KeyVaultSecretStatusCertificateOrderFailed', 'KeyVaultSecretStatusOperationNotPermittedOnKeyVault', 'KeyVaultSecretStatusAzureServiceUnauthorizedToAccessKeyVault', 'KeyVaultSecretStatusKeyVaultDoesNotExist', 'KeyVaultSecretStatusKeyVaultSecretDoesNotExist', 'KeyVaultSecretStatusUnknownError', 'KeyVaultSecretStatusExternalPrivateKey', 'KeyVaultSecretStatusUnknown' 2207 ProvisioningState KeyVaultSecretStatus `json:"provisioningState,omitempty"` 2208} 2209 2210// AppServiceCertificateCollection collection of certitificateorder certificates. 2211type AppServiceCertificateCollection struct { 2212 autorest.Response `json:"-"` 2213 // Value - Collection of resources. 2214 Value *[]AppServiceCertificateResource `json:"value,omitempty"` 2215 // NextLink - Link to next page of resources. 2216 NextLink *string `json:"nextLink,omitempty"` 2217} 2218 2219// AppServiceCertificateCollectionIterator provides access to a complete listing of AppServiceCertificateResource 2220// values. 2221type AppServiceCertificateCollectionIterator struct { 2222 i int 2223 page AppServiceCertificateCollectionPage 2224} 2225 2226// Next advances to the next value. If there was an error making 2227// the request the iterator does not advance and the error is returned. 2228func (iter *AppServiceCertificateCollectionIterator) Next() error { 2229 iter.i++ 2230 if iter.i < len(iter.page.Values()) { 2231 return nil 2232 } 2233 err := iter.page.Next() 2234 if err != nil { 2235 iter.i-- 2236 return err 2237 } 2238 iter.i = 0 2239 return nil 2240} 2241 2242// NotDone returns true if the enumeration should be started or is not yet complete. 2243func (iter AppServiceCertificateCollectionIterator) NotDone() bool { 2244 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 2245} 2246 2247// Response returns the raw server response from the last page request. 2248func (iter AppServiceCertificateCollectionIterator) Response() AppServiceCertificateCollection { 2249 return iter.page.Response() 2250} 2251 2252// Value returns the current value or a zero-initialized value if the 2253// iterator has advanced beyond the end of the collection. 2254func (iter AppServiceCertificateCollectionIterator) Value() AppServiceCertificateResource { 2255 if !iter.page.NotDone() { 2256 return AppServiceCertificateResource{} 2257 } 2258 return iter.page.Values()[iter.i] 2259} 2260 2261// IsEmpty returns true if the ListResult contains no values. 2262func (ascc AppServiceCertificateCollection) IsEmpty() bool { 2263 return ascc.Value == nil || len(*ascc.Value) == 0 2264} 2265 2266// appServiceCertificateCollectionPreparer prepares a request to retrieve the next set of results. 2267// It returns nil if no more results exist. 2268func (ascc AppServiceCertificateCollection) appServiceCertificateCollectionPreparer() (*http.Request, error) { 2269 if ascc.NextLink == nil || len(to.String(ascc.NextLink)) < 1 { 2270 return nil, nil 2271 } 2272 return autorest.Prepare(&http.Request{}, 2273 autorest.AsJSON(), 2274 autorest.AsGet(), 2275 autorest.WithBaseURL(to.String(ascc.NextLink))) 2276} 2277 2278// AppServiceCertificateCollectionPage contains a page of AppServiceCertificateResource values. 2279type AppServiceCertificateCollectionPage struct { 2280 fn func(AppServiceCertificateCollection) (AppServiceCertificateCollection, error) 2281 ascc AppServiceCertificateCollection 2282} 2283 2284// Next advances to the next page of values. If there was an error making 2285// the request the page does not advance and the error is returned. 2286func (page *AppServiceCertificateCollectionPage) Next() error { 2287 next, err := page.fn(page.ascc) 2288 if err != nil { 2289 return err 2290 } 2291 page.ascc = next 2292 return nil 2293} 2294 2295// NotDone returns true if the page enumeration should be started or is not yet complete. 2296func (page AppServiceCertificateCollectionPage) NotDone() bool { 2297 return !page.ascc.IsEmpty() 2298} 2299 2300// Response returns the raw server response from the last page request. 2301func (page AppServiceCertificateCollectionPage) Response() AppServiceCertificateCollection { 2302 return page.ascc 2303} 2304 2305// Values returns the slice of values for the current page or nil if there are no values. 2306func (page AppServiceCertificateCollectionPage) Values() []AppServiceCertificateResource { 2307 if page.ascc.IsEmpty() { 2308 return nil 2309 } 2310 return *page.ascc.Value 2311} 2312 2313// AppServiceCertificateOrder SSL certificate purchase order. 2314type AppServiceCertificateOrder struct { 2315 autorest.Response `json:"-"` 2316 // AppServiceCertificateOrderProperties - AppServiceCertificateOrder resource specific properties 2317 *AppServiceCertificateOrderProperties `json:"properties,omitempty"` 2318 // ID - Resource Id. 2319 ID *string `json:"id,omitempty"` 2320 // Name - Resource Name. 2321 Name *string `json:"name,omitempty"` 2322 // Kind - Kind of resource. 2323 Kind *string `json:"kind,omitempty"` 2324 // Location - Resource Location. 2325 Location *string `json:"location,omitempty"` 2326 // Type - Resource type. 2327 Type *string `json:"type,omitempty"` 2328 // Tags - Resource tags. 2329 Tags map[string]*string `json:"tags"` 2330} 2331 2332// MarshalJSON is the custom marshaler for AppServiceCertificateOrder. 2333func (asco AppServiceCertificateOrder) MarshalJSON() ([]byte, error) { 2334 objectMap := make(map[string]interface{}) 2335 if asco.AppServiceCertificateOrderProperties != nil { 2336 objectMap["properties"] = asco.AppServiceCertificateOrderProperties 2337 } 2338 if asco.ID != nil { 2339 objectMap["id"] = asco.ID 2340 } 2341 if asco.Name != nil { 2342 objectMap["name"] = asco.Name 2343 } 2344 if asco.Kind != nil { 2345 objectMap["kind"] = asco.Kind 2346 } 2347 if asco.Location != nil { 2348 objectMap["location"] = asco.Location 2349 } 2350 if asco.Type != nil { 2351 objectMap["type"] = asco.Type 2352 } 2353 if asco.Tags != nil { 2354 objectMap["tags"] = asco.Tags 2355 } 2356 return json.Marshal(objectMap) 2357} 2358 2359// UnmarshalJSON is the custom unmarshaler for AppServiceCertificateOrder struct. 2360func (asco *AppServiceCertificateOrder) UnmarshalJSON(body []byte) error { 2361 var m map[string]*json.RawMessage 2362 err := json.Unmarshal(body, &m) 2363 if err != nil { 2364 return err 2365 } 2366 for k, v := range m { 2367 switch k { 2368 case "properties": 2369 if v != nil { 2370 var appServiceCertificateOrderProperties AppServiceCertificateOrderProperties 2371 err = json.Unmarshal(*v, &appServiceCertificateOrderProperties) 2372 if err != nil { 2373 return err 2374 } 2375 asco.AppServiceCertificateOrderProperties = &appServiceCertificateOrderProperties 2376 } 2377 case "id": 2378 if v != nil { 2379 var ID string 2380 err = json.Unmarshal(*v, &ID) 2381 if err != nil { 2382 return err 2383 } 2384 asco.ID = &ID 2385 } 2386 case "name": 2387 if v != nil { 2388 var name string 2389 err = json.Unmarshal(*v, &name) 2390 if err != nil { 2391 return err 2392 } 2393 asco.Name = &name 2394 } 2395 case "kind": 2396 if v != nil { 2397 var kind string 2398 err = json.Unmarshal(*v, &kind) 2399 if err != nil { 2400 return err 2401 } 2402 asco.Kind = &kind 2403 } 2404 case "location": 2405 if v != nil { 2406 var location string 2407 err = json.Unmarshal(*v, &location) 2408 if err != nil { 2409 return err 2410 } 2411 asco.Location = &location 2412 } 2413 case "type": 2414 if v != nil { 2415 var typeVar string 2416 err = json.Unmarshal(*v, &typeVar) 2417 if err != nil { 2418 return err 2419 } 2420 asco.Type = &typeVar 2421 } 2422 case "tags": 2423 if v != nil { 2424 var tags map[string]*string 2425 err = json.Unmarshal(*v, &tags) 2426 if err != nil { 2427 return err 2428 } 2429 asco.Tags = tags 2430 } 2431 } 2432 } 2433 2434 return nil 2435} 2436 2437// AppServiceCertificateOrderCollection collection of certitificate orders. 2438type AppServiceCertificateOrderCollection struct { 2439 autorest.Response `json:"-"` 2440 // Value - Collection of resources. 2441 Value *[]AppServiceCertificateOrder `json:"value,omitempty"` 2442 // NextLink - Link to next page of resources. 2443 NextLink *string `json:"nextLink,omitempty"` 2444} 2445 2446// AppServiceCertificateOrderCollectionIterator provides access to a complete listing of AppServiceCertificateOrder 2447// values. 2448type AppServiceCertificateOrderCollectionIterator struct { 2449 i int 2450 page AppServiceCertificateOrderCollectionPage 2451} 2452 2453// Next advances to the next value. If there was an error making 2454// the request the iterator does not advance and the error is returned. 2455func (iter *AppServiceCertificateOrderCollectionIterator) Next() error { 2456 iter.i++ 2457 if iter.i < len(iter.page.Values()) { 2458 return nil 2459 } 2460 err := iter.page.Next() 2461 if err != nil { 2462 iter.i-- 2463 return err 2464 } 2465 iter.i = 0 2466 return nil 2467} 2468 2469// NotDone returns true if the enumeration should be started or is not yet complete. 2470func (iter AppServiceCertificateOrderCollectionIterator) NotDone() bool { 2471 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 2472} 2473 2474// Response returns the raw server response from the last page request. 2475func (iter AppServiceCertificateOrderCollectionIterator) Response() AppServiceCertificateOrderCollection { 2476 return iter.page.Response() 2477} 2478 2479// Value returns the current value or a zero-initialized value if the 2480// iterator has advanced beyond the end of the collection. 2481func (iter AppServiceCertificateOrderCollectionIterator) Value() AppServiceCertificateOrder { 2482 if !iter.page.NotDone() { 2483 return AppServiceCertificateOrder{} 2484 } 2485 return iter.page.Values()[iter.i] 2486} 2487 2488// IsEmpty returns true if the ListResult contains no values. 2489func (ascoc AppServiceCertificateOrderCollection) IsEmpty() bool { 2490 return ascoc.Value == nil || len(*ascoc.Value) == 0 2491} 2492 2493// appServiceCertificateOrderCollectionPreparer prepares a request to retrieve the next set of results. 2494// It returns nil if no more results exist. 2495func (ascoc AppServiceCertificateOrderCollection) appServiceCertificateOrderCollectionPreparer() (*http.Request, error) { 2496 if ascoc.NextLink == nil || len(to.String(ascoc.NextLink)) < 1 { 2497 return nil, nil 2498 } 2499 return autorest.Prepare(&http.Request{}, 2500 autorest.AsJSON(), 2501 autorest.AsGet(), 2502 autorest.WithBaseURL(to.String(ascoc.NextLink))) 2503} 2504 2505// AppServiceCertificateOrderCollectionPage contains a page of AppServiceCertificateOrder values. 2506type AppServiceCertificateOrderCollectionPage struct { 2507 fn func(AppServiceCertificateOrderCollection) (AppServiceCertificateOrderCollection, error) 2508 ascoc AppServiceCertificateOrderCollection 2509} 2510 2511// Next advances to the next page of values. If there was an error making 2512// the request the page does not advance and the error is returned. 2513func (page *AppServiceCertificateOrderCollectionPage) Next() error { 2514 next, err := page.fn(page.ascoc) 2515 if err != nil { 2516 return err 2517 } 2518 page.ascoc = next 2519 return nil 2520} 2521 2522// NotDone returns true if the page enumeration should be started or is not yet complete. 2523func (page AppServiceCertificateOrderCollectionPage) NotDone() bool { 2524 return !page.ascoc.IsEmpty() 2525} 2526 2527// Response returns the raw server response from the last page request. 2528func (page AppServiceCertificateOrderCollectionPage) Response() AppServiceCertificateOrderCollection { 2529 return page.ascoc 2530} 2531 2532// Values returns the slice of values for the current page or nil if there are no values. 2533func (page AppServiceCertificateOrderCollectionPage) Values() []AppServiceCertificateOrder { 2534 if page.ascoc.IsEmpty() { 2535 return nil 2536 } 2537 return *page.ascoc.Value 2538} 2539 2540// AppServiceCertificateOrderPatchResource ARM resource for a certificate order that is purchased through Azure. 2541type AppServiceCertificateOrderPatchResource struct { 2542 // AppServiceCertificateOrderPatchResourceProperties - AppServiceCertificateOrderPatchResource resource specific properties 2543 *AppServiceCertificateOrderPatchResourceProperties `json:"properties,omitempty"` 2544 // ID - Resource Id. 2545 ID *string `json:"id,omitempty"` 2546 // Name - Resource Name. 2547 Name *string `json:"name,omitempty"` 2548 // Kind - Kind of resource. 2549 Kind *string `json:"kind,omitempty"` 2550 // Type - Resource type. 2551 Type *string `json:"type,omitempty"` 2552} 2553 2554// MarshalJSON is the custom marshaler for AppServiceCertificateOrderPatchResource. 2555func (ascopr AppServiceCertificateOrderPatchResource) MarshalJSON() ([]byte, error) { 2556 objectMap := make(map[string]interface{}) 2557 if ascopr.AppServiceCertificateOrderPatchResourceProperties != nil { 2558 objectMap["properties"] = ascopr.AppServiceCertificateOrderPatchResourceProperties 2559 } 2560 if ascopr.ID != nil { 2561 objectMap["id"] = ascopr.ID 2562 } 2563 if ascopr.Name != nil { 2564 objectMap["name"] = ascopr.Name 2565 } 2566 if ascopr.Kind != nil { 2567 objectMap["kind"] = ascopr.Kind 2568 } 2569 if ascopr.Type != nil { 2570 objectMap["type"] = ascopr.Type 2571 } 2572 return json.Marshal(objectMap) 2573} 2574 2575// UnmarshalJSON is the custom unmarshaler for AppServiceCertificateOrderPatchResource struct. 2576func (ascopr *AppServiceCertificateOrderPatchResource) UnmarshalJSON(body []byte) error { 2577 var m map[string]*json.RawMessage 2578 err := json.Unmarshal(body, &m) 2579 if err != nil { 2580 return err 2581 } 2582 for k, v := range m { 2583 switch k { 2584 case "properties": 2585 if v != nil { 2586 var appServiceCertificateOrderPatchResourceProperties AppServiceCertificateOrderPatchResourceProperties 2587 err = json.Unmarshal(*v, &appServiceCertificateOrderPatchResourceProperties) 2588 if err != nil { 2589 return err 2590 } 2591 ascopr.AppServiceCertificateOrderPatchResourceProperties = &appServiceCertificateOrderPatchResourceProperties 2592 } 2593 case "id": 2594 if v != nil { 2595 var ID string 2596 err = json.Unmarshal(*v, &ID) 2597 if err != nil { 2598 return err 2599 } 2600 ascopr.ID = &ID 2601 } 2602 case "name": 2603 if v != nil { 2604 var name string 2605 err = json.Unmarshal(*v, &name) 2606 if err != nil { 2607 return err 2608 } 2609 ascopr.Name = &name 2610 } 2611 case "kind": 2612 if v != nil { 2613 var kind string 2614 err = json.Unmarshal(*v, &kind) 2615 if err != nil { 2616 return err 2617 } 2618 ascopr.Kind = &kind 2619 } 2620 case "type": 2621 if v != nil { 2622 var typeVar string 2623 err = json.Unmarshal(*v, &typeVar) 2624 if err != nil { 2625 return err 2626 } 2627 ascopr.Type = &typeVar 2628 } 2629 } 2630 } 2631 2632 return nil 2633} 2634 2635// AppServiceCertificateOrderPatchResourceProperties appServiceCertificateOrderPatchResource resource specific 2636// properties 2637type AppServiceCertificateOrderPatchResourceProperties struct { 2638 // Certificates - State of the Key Vault secret. 2639 Certificates map[string]*AppServiceCertificate `json:"certificates"` 2640 // DistinguishedName - Certificate distinguished name. 2641 DistinguishedName *string `json:"distinguishedName,omitempty"` 2642 // DomainVerificationToken - Domain verification token. 2643 DomainVerificationToken *string `json:"domainVerificationToken,omitempty"` 2644 // ValidityInYears - Duration in years (must be between 1 and 3). 2645 ValidityInYears *int32 `json:"validityInYears,omitempty"` 2646 // KeySize - Certificate key size. 2647 KeySize *int32 `json:"keySize,omitempty"` 2648 // ProductType - Certificate product type. Possible values include: 'StandardDomainValidatedSsl', 'StandardDomainValidatedWildCardSsl' 2649 ProductType CertificateProductType `json:"productType,omitempty"` 2650 // AutoRenew - <code>true</code> if the certificate should be automatically renewed when it expires; otherwise, <code>false</code>. 2651 AutoRenew *bool `json:"autoRenew,omitempty"` 2652 // ProvisioningState - Status of certificate order. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 2653 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 2654 // Status - Current order status. Possible values include: 'Pendingissuance', 'Issued', 'Revoked', 'Canceled', 'Denied', 'Pendingrevocation', 'PendingRekey', 'Unused', 'Expired', 'NotSubmitted' 2655 Status CertificateOrderStatus `json:"status,omitempty"` 2656 // SignedCertificate - Signed certificate. 2657 SignedCertificate *CertificateDetails `json:"signedCertificate,omitempty"` 2658 // Csr - Last CSR that was created for this order. 2659 Csr *string `json:"csr,omitempty"` 2660 // Intermediate - Intermediate certificate. 2661 Intermediate *CertificateDetails `json:"intermediate,omitempty"` 2662 // Root - Root certificate. 2663 Root *CertificateDetails `json:"root,omitempty"` 2664 // SerialNumber - Current serial number of the certificate. 2665 SerialNumber *string `json:"serialNumber,omitempty"` 2666 // LastCertificateIssuanceTime - Certificate last issuance time. 2667 LastCertificateIssuanceTime *date.Time `json:"lastCertificateIssuanceTime,omitempty"` 2668 // ExpirationTime - Certificate expiration time. 2669 ExpirationTime *date.Time `json:"expirationTime,omitempty"` 2670 // IsPrivateKeyExternal - <code>true</code> if private key is external; otherwise, <code>false</code>. 2671 IsPrivateKeyExternal *bool `json:"isPrivateKeyExternal,omitempty"` 2672 // AppServiceCertificateNotRenewableReasons - Reasons why App Service Certificate is not renewable at the current moment. 2673 AppServiceCertificateNotRenewableReasons *[]string `json:"appServiceCertificateNotRenewableReasons,omitempty"` 2674 // NextAutoRenewalTimeStamp - Time stamp when the certificate would be auto renewed next 2675 NextAutoRenewalTimeStamp *date.Time `json:"nextAutoRenewalTimeStamp,omitempty"` 2676} 2677 2678// MarshalJSON is the custom marshaler for AppServiceCertificateOrderPatchResourceProperties. 2679func (ascopr AppServiceCertificateOrderPatchResourceProperties) MarshalJSON() ([]byte, error) { 2680 objectMap := make(map[string]interface{}) 2681 if ascopr.Certificates != nil { 2682 objectMap["certificates"] = ascopr.Certificates 2683 } 2684 if ascopr.DistinguishedName != nil { 2685 objectMap["distinguishedName"] = ascopr.DistinguishedName 2686 } 2687 if ascopr.DomainVerificationToken != nil { 2688 objectMap["domainVerificationToken"] = ascopr.DomainVerificationToken 2689 } 2690 if ascopr.ValidityInYears != nil { 2691 objectMap["validityInYears"] = ascopr.ValidityInYears 2692 } 2693 if ascopr.KeySize != nil { 2694 objectMap["keySize"] = ascopr.KeySize 2695 } 2696 if ascopr.ProductType != "" { 2697 objectMap["productType"] = ascopr.ProductType 2698 } 2699 if ascopr.AutoRenew != nil { 2700 objectMap["autoRenew"] = ascopr.AutoRenew 2701 } 2702 if ascopr.ProvisioningState != "" { 2703 objectMap["provisioningState"] = ascopr.ProvisioningState 2704 } 2705 if ascopr.Status != "" { 2706 objectMap["status"] = ascopr.Status 2707 } 2708 if ascopr.SignedCertificate != nil { 2709 objectMap["signedCertificate"] = ascopr.SignedCertificate 2710 } 2711 if ascopr.Csr != nil { 2712 objectMap["csr"] = ascopr.Csr 2713 } 2714 if ascopr.Intermediate != nil { 2715 objectMap["intermediate"] = ascopr.Intermediate 2716 } 2717 if ascopr.Root != nil { 2718 objectMap["root"] = ascopr.Root 2719 } 2720 if ascopr.SerialNumber != nil { 2721 objectMap["serialNumber"] = ascopr.SerialNumber 2722 } 2723 if ascopr.LastCertificateIssuanceTime != nil { 2724 objectMap["lastCertificateIssuanceTime"] = ascopr.LastCertificateIssuanceTime 2725 } 2726 if ascopr.ExpirationTime != nil { 2727 objectMap["expirationTime"] = ascopr.ExpirationTime 2728 } 2729 if ascopr.IsPrivateKeyExternal != nil { 2730 objectMap["isPrivateKeyExternal"] = ascopr.IsPrivateKeyExternal 2731 } 2732 if ascopr.AppServiceCertificateNotRenewableReasons != nil { 2733 objectMap["appServiceCertificateNotRenewableReasons"] = ascopr.AppServiceCertificateNotRenewableReasons 2734 } 2735 if ascopr.NextAutoRenewalTimeStamp != nil { 2736 objectMap["nextAutoRenewalTimeStamp"] = ascopr.NextAutoRenewalTimeStamp 2737 } 2738 return json.Marshal(objectMap) 2739} 2740 2741// AppServiceCertificateOrderProperties appServiceCertificateOrder resource specific properties 2742type AppServiceCertificateOrderProperties struct { 2743 // Certificates - State of the Key Vault secret. 2744 Certificates map[string]*AppServiceCertificate `json:"certificates"` 2745 // DistinguishedName - Certificate distinguished name. 2746 DistinguishedName *string `json:"distinguishedName,omitempty"` 2747 // DomainVerificationToken - Domain verification token. 2748 DomainVerificationToken *string `json:"domainVerificationToken,omitempty"` 2749 // ValidityInYears - Duration in years (must be between 1 and 3). 2750 ValidityInYears *int32 `json:"validityInYears,omitempty"` 2751 // KeySize - Certificate key size. 2752 KeySize *int32 `json:"keySize,omitempty"` 2753 // ProductType - Certificate product type. Possible values include: 'StandardDomainValidatedSsl', 'StandardDomainValidatedWildCardSsl' 2754 ProductType CertificateProductType `json:"productType,omitempty"` 2755 // AutoRenew - <code>true</code> if the certificate should be automatically renewed when it expires; otherwise, <code>false</code>. 2756 AutoRenew *bool `json:"autoRenew,omitempty"` 2757 // ProvisioningState - Status of certificate order. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 2758 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 2759 // Status - Current order status. Possible values include: 'Pendingissuance', 'Issued', 'Revoked', 'Canceled', 'Denied', 'Pendingrevocation', 'PendingRekey', 'Unused', 'Expired', 'NotSubmitted' 2760 Status CertificateOrderStatus `json:"status,omitempty"` 2761 // SignedCertificate - Signed certificate. 2762 SignedCertificate *CertificateDetails `json:"signedCertificate,omitempty"` 2763 // Csr - Last CSR that was created for this order. 2764 Csr *string `json:"csr,omitempty"` 2765 // Intermediate - Intermediate certificate. 2766 Intermediate *CertificateDetails `json:"intermediate,omitempty"` 2767 // Root - Root certificate. 2768 Root *CertificateDetails `json:"root,omitempty"` 2769 // SerialNumber - Current serial number of the certificate. 2770 SerialNumber *string `json:"serialNumber,omitempty"` 2771 // LastCertificateIssuanceTime - Certificate last issuance time. 2772 LastCertificateIssuanceTime *date.Time `json:"lastCertificateIssuanceTime,omitempty"` 2773 // ExpirationTime - Certificate expiration time. 2774 ExpirationTime *date.Time `json:"expirationTime,omitempty"` 2775 // IsPrivateKeyExternal - <code>true</code> if private key is external; otherwise, <code>false</code>. 2776 IsPrivateKeyExternal *bool `json:"isPrivateKeyExternal,omitempty"` 2777 // AppServiceCertificateNotRenewableReasons - Reasons why App Service Certificate is not renewable at the current moment. 2778 AppServiceCertificateNotRenewableReasons *[]string `json:"appServiceCertificateNotRenewableReasons,omitempty"` 2779 // NextAutoRenewalTimeStamp - Time stamp when the certificate would be auto renewed next 2780 NextAutoRenewalTimeStamp *date.Time `json:"nextAutoRenewalTimeStamp,omitempty"` 2781} 2782 2783// MarshalJSON is the custom marshaler for AppServiceCertificateOrderProperties. 2784func (asco AppServiceCertificateOrderProperties) MarshalJSON() ([]byte, error) { 2785 objectMap := make(map[string]interface{}) 2786 if asco.Certificates != nil { 2787 objectMap["certificates"] = asco.Certificates 2788 } 2789 if asco.DistinguishedName != nil { 2790 objectMap["distinguishedName"] = asco.DistinguishedName 2791 } 2792 if asco.DomainVerificationToken != nil { 2793 objectMap["domainVerificationToken"] = asco.DomainVerificationToken 2794 } 2795 if asco.ValidityInYears != nil { 2796 objectMap["validityInYears"] = asco.ValidityInYears 2797 } 2798 if asco.KeySize != nil { 2799 objectMap["keySize"] = asco.KeySize 2800 } 2801 if asco.ProductType != "" { 2802 objectMap["productType"] = asco.ProductType 2803 } 2804 if asco.AutoRenew != nil { 2805 objectMap["autoRenew"] = asco.AutoRenew 2806 } 2807 if asco.ProvisioningState != "" { 2808 objectMap["provisioningState"] = asco.ProvisioningState 2809 } 2810 if asco.Status != "" { 2811 objectMap["status"] = asco.Status 2812 } 2813 if asco.SignedCertificate != nil { 2814 objectMap["signedCertificate"] = asco.SignedCertificate 2815 } 2816 if asco.Csr != nil { 2817 objectMap["csr"] = asco.Csr 2818 } 2819 if asco.Intermediate != nil { 2820 objectMap["intermediate"] = asco.Intermediate 2821 } 2822 if asco.Root != nil { 2823 objectMap["root"] = asco.Root 2824 } 2825 if asco.SerialNumber != nil { 2826 objectMap["serialNumber"] = asco.SerialNumber 2827 } 2828 if asco.LastCertificateIssuanceTime != nil { 2829 objectMap["lastCertificateIssuanceTime"] = asco.LastCertificateIssuanceTime 2830 } 2831 if asco.ExpirationTime != nil { 2832 objectMap["expirationTime"] = asco.ExpirationTime 2833 } 2834 if asco.IsPrivateKeyExternal != nil { 2835 objectMap["isPrivateKeyExternal"] = asco.IsPrivateKeyExternal 2836 } 2837 if asco.AppServiceCertificateNotRenewableReasons != nil { 2838 objectMap["appServiceCertificateNotRenewableReasons"] = asco.AppServiceCertificateNotRenewableReasons 2839 } 2840 if asco.NextAutoRenewalTimeStamp != nil { 2841 objectMap["nextAutoRenewalTimeStamp"] = asco.NextAutoRenewalTimeStamp 2842 } 2843 return json.Marshal(objectMap) 2844} 2845 2846// AppServiceCertificateOrdersCreateOrUpdateCertificateFuture an abstraction for monitoring and retrieving the 2847// results of a long-running operation. 2848type AppServiceCertificateOrdersCreateOrUpdateCertificateFuture struct { 2849 azure.Future 2850 req *http.Request 2851} 2852 2853// Result returns the result of the asynchronous operation. 2854// If the operation has not completed it will return an error. 2855func (future AppServiceCertificateOrdersCreateOrUpdateCertificateFuture) Result(client AppServiceCertificateOrdersClient) (ascr AppServiceCertificateResource, err error) { 2856 var done bool 2857 done, err = future.Done(client) 2858 if err != nil { 2859 err = autorest.NewErrorWithError(err, "web.AppServiceCertificateOrdersCreateOrUpdateCertificateFuture", "Result", future.Response(), "Polling failure") 2860 return 2861 } 2862 if !done { 2863 return ascr, azure.NewAsyncOpIncompleteError("web.AppServiceCertificateOrdersCreateOrUpdateCertificateFuture") 2864 } 2865 if future.PollingMethod() == azure.PollingLocation { 2866 ascr, err = client.CreateOrUpdateCertificateResponder(future.Response()) 2867 if err != nil { 2868 err = autorest.NewErrorWithError(err, "web.AppServiceCertificateOrdersCreateOrUpdateCertificateFuture", "Result", future.Response(), "Failure responding to request") 2869 } 2870 return 2871 } 2872 var req *http.Request 2873 var resp *http.Response 2874 if future.PollingURL() != "" { 2875 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 2876 if err != nil { 2877 return 2878 } 2879 } else { 2880 req = autorest.ChangeToGet(future.req) 2881 } 2882 resp, err = autorest.SendWithSender(client, req, 2883 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2884 if err != nil { 2885 err = autorest.NewErrorWithError(err, "web.AppServiceCertificateOrdersCreateOrUpdateCertificateFuture", "Result", resp, "Failure sending request") 2886 return 2887 } 2888 ascr, err = client.CreateOrUpdateCertificateResponder(resp) 2889 if err != nil { 2890 err = autorest.NewErrorWithError(err, "web.AppServiceCertificateOrdersCreateOrUpdateCertificateFuture", "Result", resp, "Failure responding to request") 2891 } 2892 return 2893} 2894 2895// AppServiceCertificateOrdersCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a 2896// long-running operation. 2897type AppServiceCertificateOrdersCreateOrUpdateFuture struct { 2898 azure.Future 2899 req *http.Request 2900} 2901 2902// Result returns the result of the asynchronous operation. 2903// If the operation has not completed it will return an error. 2904func (future AppServiceCertificateOrdersCreateOrUpdateFuture) Result(client AppServiceCertificateOrdersClient) (asco AppServiceCertificateOrder, err error) { 2905 var done bool 2906 done, err = future.Done(client) 2907 if err != nil { 2908 err = autorest.NewErrorWithError(err, "web.AppServiceCertificateOrdersCreateOrUpdateFuture", "Result", future.Response(), "Polling failure") 2909 return 2910 } 2911 if !done { 2912 return asco, azure.NewAsyncOpIncompleteError("web.AppServiceCertificateOrdersCreateOrUpdateFuture") 2913 } 2914 if future.PollingMethod() == azure.PollingLocation { 2915 asco, err = client.CreateOrUpdateResponder(future.Response()) 2916 if err != nil { 2917 err = autorest.NewErrorWithError(err, "web.AppServiceCertificateOrdersCreateOrUpdateFuture", "Result", future.Response(), "Failure responding to request") 2918 } 2919 return 2920 } 2921 var req *http.Request 2922 var resp *http.Response 2923 if future.PollingURL() != "" { 2924 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 2925 if err != nil { 2926 return 2927 } 2928 } else { 2929 req = autorest.ChangeToGet(future.req) 2930 } 2931 resp, err = autorest.SendWithSender(client, req, 2932 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 2933 if err != nil { 2934 err = autorest.NewErrorWithError(err, "web.AppServiceCertificateOrdersCreateOrUpdateFuture", "Result", resp, "Failure sending request") 2935 return 2936 } 2937 asco, err = client.CreateOrUpdateResponder(resp) 2938 if err != nil { 2939 err = autorest.NewErrorWithError(err, "web.AppServiceCertificateOrdersCreateOrUpdateFuture", "Result", resp, "Failure responding to request") 2940 } 2941 return 2942} 2943 2944// AppServiceCertificatePatchResource key Vault container ARM resource for a certificate that is purchased through 2945// Azure. 2946type AppServiceCertificatePatchResource struct { 2947 // AppServiceCertificate - Core resource properties 2948 *AppServiceCertificate `json:"properties,omitempty"` 2949 // ID - Resource Id. 2950 ID *string `json:"id,omitempty"` 2951 // Name - Resource Name. 2952 Name *string `json:"name,omitempty"` 2953 // Kind - Kind of resource. 2954 Kind *string `json:"kind,omitempty"` 2955 // Type - Resource type. 2956 Type *string `json:"type,omitempty"` 2957} 2958 2959// MarshalJSON is the custom marshaler for AppServiceCertificatePatchResource. 2960func (ascpr AppServiceCertificatePatchResource) MarshalJSON() ([]byte, error) { 2961 objectMap := make(map[string]interface{}) 2962 if ascpr.AppServiceCertificate != nil { 2963 objectMap["properties"] = ascpr.AppServiceCertificate 2964 } 2965 if ascpr.ID != nil { 2966 objectMap["id"] = ascpr.ID 2967 } 2968 if ascpr.Name != nil { 2969 objectMap["name"] = ascpr.Name 2970 } 2971 if ascpr.Kind != nil { 2972 objectMap["kind"] = ascpr.Kind 2973 } 2974 if ascpr.Type != nil { 2975 objectMap["type"] = ascpr.Type 2976 } 2977 return json.Marshal(objectMap) 2978} 2979 2980// UnmarshalJSON is the custom unmarshaler for AppServiceCertificatePatchResource struct. 2981func (ascpr *AppServiceCertificatePatchResource) UnmarshalJSON(body []byte) error { 2982 var m map[string]*json.RawMessage 2983 err := json.Unmarshal(body, &m) 2984 if err != nil { 2985 return err 2986 } 2987 for k, v := range m { 2988 switch k { 2989 case "properties": 2990 if v != nil { 2991 var appServiceCertificate AppServiceCertificate 2992 err = json.Unmarshal(*v, &appServiceCertificate) 2993 if err != nil { 2994 return err 2995 } 2996 ascpr.AppServiceCertificate = &appServiceCertificate 2997 } 2998 case "id": 2999 if v != nil { 3000 var ID string 3001 err = json.Unmarshal(*v, &ID) 3002 if err != nil { 3003 return err 3004 } 3005 ascpr.ID = &ID 3006 } 3007 case "name": 3008 if v != nil { 3009 var name string 3010 err = json.Unmarshal(*v, &name) 3011 if err != nil { 3012 return err 3013 } 3014 ascpr.Name = &name 3015 } 3016 case "kind": 3017 if v != nil { 3018 var kind string 3019 err = json.Unmarshal(*v, &kind) 3020 if err != nil { 3021 return err 3022 } 3023 ascpr.Kind = &kind 3024 } 3025 case "type": 3026 if v != nil { 3027 var typeVar string 3028 err = json.Unmarshal(*v, &typeVar) 3029 if err != nil { 3030 return err 3031 } 3032 ascpr.Type = &typeVar 3033 } 3034 } 3035 } 3036 3037 return nil 3038} 3039 3040// AppServiceCertificateResource key Vault container ARM resource for a certificate that is purchased through 3041// Azure. 3042type AppServiceCertificateResource struct { 3043 autorest.Response `json:"-"` 3044 // AppServiceCertificate - Core resource properties 3045 *AppServiceCertificate `json:"properties,omitempty"` 3046 // ID - Resource Id. 3047 ID *string `json:"id,omitempty"` 3048 // Name - Resource Name. 3049 Name *string `json:"name,omitempty"` 3050 // Kind - Kind of resource. 3051 Kind *string `json:"kind,omitempty"` 3052 // Location - Resource Location. 3053 Location *string `json:"location,omitempty"` 3054 // Type - Resource type. 3055 Type *string `json:"type,omitempty"` 3056 // Tags - Resource tags. 3057 Tags map[string]*string `json:"tags"` 3058} 3059 3060// MarshalJSON is the custom marshaler for AppServiceCertificateResource. 3061func (ascr AppServiceCertificateResource) MarshalJSON() ([]byte, error) { 3062 objectMap := make(map[string]interface{}) 3063 if ascr.AppServiceCertificate != nil { 3064 objectMap["properties"] = ascr.AppServiceCertificate 3065 } 3066 if ascr.ID != nil { 3067 objectMap["id"] = ascr.ID 3068 } 3069 if ascr.Name != nil { 3070 objectMap["name"] = ascr.Name 3071 } 3072 if ascr.Kind != nil { 3073 objectMap["kind"] = ascr.Kind 3074 } 3075 if ascr.Location != nil { 3076 objectMap["location"] = ascr.Location 3077 } 3078 if ascr.Type != nil { 3079 objectMap["type"] = ascr.Type 3080 } 3081 if ascr.Tags != nil { 3082 objectMap["tags"] = ascr.Tags 3083 } 3084 return json.Marshal(objectMap) 3085} 3086 3087// UnmarshalJSON is the custom unmarshaler for AppServiceCertificateResource struct. 3088func (ascr *AppServiceCertificateResource) UnmarshalJSON(body []byte) error { 3089 var m map[string]*json.RawMessage 3090 err := json.Unmarshal(body, &m) 3091 if err != nil { 3092 return err 3093 } 3094 for k, v := range m { 3095 switch k { 3096 case "properties": 3097 if v != nil { 3098 var appServiceCertificate AppServiceCertificate 3099 err = json.Unmarshal(*v, &appServiceCertificate) 3100 if err != nil { 3101 return err 3102 } 3103 ascr.AppServiceCertificate = &appServiceCertificate 3104 } 3105 case "id": 3106 if v != nil { 3107 var ID string 3108 err = json.Unmarshal(*v, &ID) 3109 if err != nil { 3110 return err 3111 } 3112 ascr.ID = &ID 3113 } 3114 case "name": 3115 if v != nil { 3116 var name string 3117 err = json.Unmarshal(*v, &name) 3118 if err != nil { 3119 return err 3120 } 3121 ascr.Name = &name 3122 } 3123 case "kind": 3124 if v != nil { 3125 var kind string 3126 err = json.Unmarshal(*v, &kind) 3127 if err != nil { 3128 return err 3129 } 3130 ascr.Kind = &kind 3131 } 3132 case "location": 3133 if v != nil { 3134 var location string 3135 err = json.Unmarshal(*v, &location) 3136 if err != nil { 3137 return err 3138 } 3139 ascr.Location = &location 3140 } 3141 case "type": 3142 if v != nil { 3143 var typeVar string 3144 err = json.Unmarshal(*v, &typeVar) 3145 if err != nil { 3146 return err 3147 } 3148 ascr.Type = &typeVar 3149 } 3150 case "tags": 3151 if v != nil { 3152 var tags map[string]*string 3153 err = json.Unmarshal(*v, &tags) 3154 if err != nil { 3155 return err 3156 } 3157 ascr.Tags = tags 3158 } 3159 } 3160 } 3161 3162 return nil 3163} 3164 3165// AppServiceEnvironment description of an App Service Environment. 3166type AppServiceEnvironment struct { 3167 // Name - Name of the App Service Environment. 3168 Name *string `json:"name,omitempty"` 3169 // Location - Location of the App Service Environment, e.g. "West US". 3170 Location *string `json:"location,omitempty"` 3171 // ProvisioningState - Provisioning state of the App Service Environment. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 3172 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 3173 // Status - Current status of the App Service Environment. Possible values include: 'Preparing', 'Ready', 'Scaling', 'Deleting' 3174 Status HostingEnvironmentStatus `json:"status,omitempty"` 3175 // VnetName - Name of the Virtual Network for the App Service Environment. 3176 VnetName *string `json:"vnetName,omitempty"` 3177 // VnetResourceGroupName - Resource group of the Virtual Network. 3178 VnetResourceGroupName *string `json:"vnetResourceGroupName,omitempty"` 3179 // VnetSubnetName - Subnet of the Virtual Network. 3180 VnetSubnetName *string `json:"vnetSubnetName,omitempty"` 3181 // VirtualNetwork - Description of the Virtual Network. 3182 VirtualNetwork *VirtualNetworkProfile `json:"virtualNetwork,omitempty"` 3183 // InternalLoadBalancingMode - Specifies which endpoints to serve internally in the Virtual Network for the App Service Environment. Possible values include: 'InternalLoadBalancingModeNone', 'InternalLoadBalancingModeWeb', 'InternalLoadBalancingModePublishing' 3184 InternalLoadBalancingMode InternalLoadBalancingMode `json:"internalLoadBalancingMode,omitempty"` 3185 // MultiSize - Front-end VM size, e.g. "Medium", "Large". 3186 MultiSize *string `json:"multiSize,omitempty"` 3187 // MultiRoleCount - Number of front-end instances. 3188 MultiRoleCount *int32 `json:"multiRoleCount,omitempty"` 3189 // WorkerPools - Description of worker pools with worker size IDs, VM sizes, and number of workers in each pool. 3190 WorkerPools *[]WorkerPool `json:"workerPools,omitempty"` 3191 // IpsslAddressCount - Number of IP SSL addresses reserved for the App Service Environment. 3192 IpsslAddressCount *int32 `json:"ipsslAddressCount,omitempty"` 3193 // DatabaseEdition - Edition of the metadata database for the App Service Environment, e.g. "Standard". 3194 DatabaseEdition *string `json:"databaseEdition,omitempty"` 3195 // DatabaseServiceObjective - Service objective of the metadata database for the App Service Environment, e.g. "S0". 3196 DatabaseServiceObjective *string `json:"databaseServiceObjective,omitempty"` 3197 // UpgradeDomains - Number of upgrade domains of the App Service Environment. 3198 UpgradeDomains *int32 `json:"upgradeDomains,omitempty"` 3199 // SubscriptionID - Subscription of the App Service Environment. 3200 SubscriptionID *string `json:"subscriptionId,omitempty"` 3201 // DNSSuffix - DNS suffix of the App Service Environment. 3202 DNSSuffix *string `json:"dnsSuffix,omitempty"` 3203 // LastAction - Last deployment action on the App Service Environment. 3204 LastAction *string `json:"lastAction,omitempty"` 3205 // LastActionResult - Result of the last deployment action on the App Service Environment. 3206 LastActionResult *string `json:"lastActionResult,omitempty"` 3207 // AllowedMultiSizes - List of comma separated strings describing which VM sizes are allowed for front-ends. 3208 AllowedMultiSizes *string `json:"allowedMultiSizes,omitempty"` 3209 // AllowedWorkerSizes - List of comma separated strings describing which VM sizes are allowed for workers. 3210 AllowedWorkerSizes *string `json:"allowedWorkerSizes,omitempty"` 3211 // MaximumNumberOfMachines - Maximum number of VMs in the App Service Environment. 3212 MaximumNumberOfMachines *int32 `json:"maximumNumberOfMachines,omitempty"` 3213 // VipMappings - Description of IP SSL mapping for the App Service Environment. 3214 VipMappings *[]VirtualIPMapping `json:"vipMappings,omitempty"` 3215 // EnvironmentCapacities - Current total, used, and available worker capacities. 3216 EnvironmentCapacities *[]StampCapacity `json:"environmentCapacities,omitempty"` 3217 // NetworkAccessControlList - Access control list for controlling traffic to the App Service Environment. 3218 NetworkAccessControlList *[]NetworkAccessControlEntry `json:"networkAccessControlList,omitempty"` 3219 // EnvironmentIsHealthy - True/false indicating whether the App Service Environment is healthy. 3220 EnvironmentIsHealthy *bool `json:"environmentIsHealthy,omitempty"` 3221 // EnvironmentStatus - Detailed message about with results of the last check of the App Service Environment. 3222 EnvironmentStatus *string `json:"environmentStatus,omitempty"` 3223 // ResourceGroup - Resource group of the App Service Environment. 3224 ResourceGroup *string `json:"resourceGroup,omitempty"` 3225 // FrontEndScaleFactor - Scale factor for front-ends. 3226 FrontEndScaleFactor *int32 `json:"frontEndScaleFactor,omitempty"` 3227 // DefaultFrontEndScaleFactor - Default Scale Factor for FrontEnds. 3228 DefaultFrontEndScaleFactor *int32 `json:"defaultFrontEndScaleFactor,omitempty"` 3229 // APIManagementAccountID - API Management Account associated with the App Service Environment. 3230 APIManagementAccountID *string `json:"apiManagementAccountId,omitempty"` 3231 // 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 3232 // (most likely because NSG blocked the incoming traffic). 3233 Suspended *bool `json:"suspended,omitempty"` 3234 // 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 3235 // (most likely because NSG blocked the incoming traffic). 3236 DynamicCacheEnabled *bool `json:"dynamicCacheEnabled,omitempty"` 3237 // ClusterSettings - Custom settings for changing the behavior of the App Service Environment. 3238 ClusterSettings *[]NameValuePair `json:"clusterSettings,omitempty"` 3239 // UserWhitelistedIPRanges - User added ip ranges to whitelist on ASE db 3240 UserWhitelistedIPRanges *[]string `json:"userWhitelistedIpRanges,omitempty"` 3241} 3242 3243// AppServiceEnvironmentCollection collection of App Service Environments. 3244type AppServiceEnvironmentCollection struct { 3245 autorest.Response `json:"-"` 3246 // Value - Collection of resources. 3247 Value *[]AppServiceEnvironmentResource `json:"value,omitempty"` 3248 // NextLink - Link to next page of resources. 3249 NextLink *string `json:"nextLink,omitempty"` 3250} 3251 3252// AppServiceEnvironmentCollectionIterator provides access to a complete listing of AppServiceEnvironmentResource 3253// values. 3254type AppServiceEnvironmentCollectionIterator struct { 3255 i int 3256 page AppServiceEnvironmentCollectionPage 3257} 3258 3259// Next advances to the next value. If there was an error making 3260// the request the iterator does not advance and the error is returned. 3261func (iter *AppServiceEnvironmentCollectionIterator) Next() error { 3262 iter.i++ 3263 if iter.i < len(iter.page.Values()) { 3264 return nil 3265 } 3266 err := iter.page.Next() 3267 if err != nil { 3268 iter.i-- 3269 return err 3270 } 3271 iter.i = 0 3272 return nil 3273} 3274 3275// NotDone returns true if the enumeration should be started or is not yet complete. 3276func (iter AppServiceEnvironmentCollectionIterator) NotDone() bool { 3277 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 3278} 3279 3280// Response returns the raw server response from the last page request. 3281func (iter AppServiceEnvironmentCollectionIterator) Response() AppServiceEnvironmentCollection { 3282 return iter.page.Response() 3283} 3284 3285// Value returns the current value or a zero-initialized value if the 3286// iterator has advanced beyond the end of the collection. 3287func (iter AppServiceEnvironmentCollectionIterator) Value() AppServiceEnvironmentResource { 3288 if !iter.page.NotDone() { 3289 return AppServiceEnvironmentResource{} 3290 } 3291 return iter.page.Values()[iter.i] 3292} 3293 3294// IsEmpty returns true if the ListResult contains no values. 3295func (asec AppServiceEnvironmentCollection) IsEmpty() bool { 3296 return asec.Value == nil || len(*asec.Value) == 0 3297} 3298 3299// appServiceEnvironmentCollectionPreparer prepares a request to retrieve the next set of results. 3300// It returns nil if no more results exist. 3301func (asec AppServiceEnvironmentCollection) appServiceEnvironmentCollectionPreparer() (*http.Request, error) { 3302 if asec.NextLink == nil || len(to.String(asec.NextLink)) < 1 { 3303 return nil, nil 3304 } 3305 return autorest.Prepare(&http.Request{}, 3306 autorest.AsJSON(), 3307 autorest.AsGet(), 3308 autorest.WithBaseURL(to.String(asec.NextLink))) 3309} 3310 3311// AppServiceEnvironmentCollectionPage contains a page of AppServiceEnvironmentResource values. 3312type AppServiceEnvironmentCollectionPage struct { 3313 fn func(AppServiceEnvironmentCollection) (AppServiceEnvironmentCollection, error) 3314 asec AppServiceEnvironmentCollection 3315} 3316 3317// Next advances to the next page of values. If there was an error making 3318// the request the page does not advance and the error is returned. 3319func (page *AppServiceEnvironmentCollectionPage) Next() error { 3320 next, err := page.fn(page.asec) 3321 if err != nil { 3322 return err 3323 } 3324 page.asec = next 3325 return nil 3326} 3327 3328// NotDone returns true if the page enumeration should be started or is not yet complete. 3329func (page AppServiceEnvironmentCollectionPage) NotDone() bool { 3330 return !page.asec.IsEmpty() 3331} 3332 3333// Response returns the raw server response from the last page request. 3334func (page AppServiceEnvironmentCollectionPage) Response() AppServiceEnvironmentCollection { 3335 return page.asec 3336} 3337 3338// Values returns the slice of values for the current page or nil if there are no values. 3339func (page AppServiceEnvironmentCollectionPage) Values() []AppServiceEnvironmentResource { 3340 if page.asec.IsEmpty() { 3341 return nil 3342 } 3343 return *page.asec.Value 3344} 3345 3346// AppServiceEnvironmentPatchResource ARM resource for a app service enviroment. 3347type AppServiceEnvironmentPatchResource struct { 3348 // AppServiceEnvironment - Core resource properties 3349 *AppServiceEnvironment `json:"properties,omitempty"` 3350 // ID - Resource Id. 3351 ID *string `json:"id,omitempty"` 3352 // Name - Resource Name. 3353 Name *string `json:"name,omitempty"` 3354 // Kind - Kind of resource. 3355 Kind *string `json:"kind,omitempty"` 3356 // Type - Resource type. 3357 Type *string `json:"type,omitempty"` 3358} 3359 3360// MarshalJSON is the custom marshaler for AppServiceEnvironmentPatchResource. 3361func (asepr AppServiceEnvironmentPatchResource) MarshalJSON() ([]byte, error) { 3362 objectMap := make(map[string]interface{}) 3363 if asepr.AppServiceEnvironment != nil { 3364 objectMap["properties"] = asepr.AppServiceEnvironment 3365 } 3366 if asepr.ID != nil { 3367 objectMap["id"] = asepr.ID 3368 } 3369 if asepr.Name != nil { 3370 objectMap["name"] = asepr.Name 3371 } 3372 if asepr.Kind != nil { 3373 objectMap["kind"] = asepr.Kind 3374 } 3375 if asepr.Type != nil { 3376 objectMap["type"] = asepr.Type 3377 } 3378 return json.Marshal(objectMap) 3379} 3380 3381// UnmarshalJSON is the custom unmarshaler for AppServiceEnvironmentPatchResource struct. 3382func (asepr *AppServiceEnvironmentPatchResource) UnmarshalJSON(body []byte) error { 3383 var m map[string]*json.RawMessage 3384 err := json.Unmarshal(body, &m) 3385 if err != nil { 3386 return err 3387 } 3388 for k, v := range m { 3389 switch k { 3390 case "properties": 3391 if v != nil { 3392 var appServiceEnvironment AppServiceEnvironment 3393 err = json.Unmarshal(*v, &appServiceEnvironment) 3394 if err != nil { 3395 return err 3396 } 3397 asepr.AppServiceEnvironment = &appServiceEnvironment 3398 } 3399 case "id": 3400 if v != nil { 3401 var ID string 3402 err = json.Unmarshal(*v, &ID) 3403 if err != nil { 3404 return err 3405 } 3406 asepr.ID = &ID 3407 } 3408 case "name": 3409 if v != nil { 3410 var name string 3411 err = json.Unmarshal(*v, &name) 3412 if err != nil { 3413 return err 3414 } 3415 asepr.Name = &name 3416 } 3417 case "kind": 3418 if v != nil { 3419 var kind string 3420 err = json.Unmarshal(*v, &kind) 3421 if err != nil { 3422 return err 3423 } 3424 asepr.Kind = &kind 3425 } 3426 case "type": 3427 if v != nil { 3428 var typeVar string 3429 err = json.Unmarshal(*v, &typeVar) 3430 if err != nil { 3431 return err 3432 } 3433 asepr.Type = &typeVar 3434 } 3435 } 3436 } 3437 3438 return nil 3439} 3440 3441// AppServiceEnvironmentResource app Service Environment ARM resource. 3442type AppServiceEnvironmentResource struct { 3443 autorest.Response `json:"-"` 3444 // AppServiceEnvironment - Core resource properties 3445 *AppServiceEnvironment `json:"properties,omitempty"` 3446 // ID - Resource Id. 3447 ID *string `json:"id,omitempty"` 3448 // Name - Resource Name. 3449 Name *string `json:"name,omitempty"` 3450 // Kind - Kind of resource. 3451 Kind *string `json:"kind,omitempty"` 3452 // Location - Resource Location. 3453 Location *string `json:"location,omitempty"` 3454 // Type - Resource type. 3455 Type *string `json:"type,omitempty"` 3456 // Tags - Resource tags. 3457 Tags map[string]*string `json:"tags"` 3458} 3459 3460// MarshalJSON is the custom marshaler for AppServiceEnvironmentResource. 3461func (aser AppServiceEnvironmentResource) MarshalJSON() ([]byte, error) { 3462 objectMap := make(map[string]interface{}) 3463 if aser.AppServiceEnvironment != nil { 3464 objectMap["properties"] = aser.AppServiceEnvironment 3465 } 3466 if aser.ID != nil { 3467 objectMap["id"] = aser.ID 3468 } 3469 if aser.Name != nil { 3470 objectMap["name"] = aser.Name 3471 } 3472 if aser.Kind != nil { 3473 objectMap["kind"] = aser.Kind 3474 } 3475 if aser.Location != nil { 3476 objectMap["location"] = aser.Location 3477 } 3478 if aser.Type != nil { 3479 objectMap["type"] = aser.Type 3480 } 3481 if aser.Tags != nil { 3482 objectMap["tags"] = aser.Tags 3483 } 3484 return json.Marshal(objectMap) 3485} 3486 3487// UnmarshalJSON is the custom unmarshaler for AppServiceEnvironmentResource struct. 3488func (aser *AppServiceEnvironmentResource) UnmarshalJSON(body []byte) error { 3489 var m map[string]*json.RawMessage 3490 err := json.Unmarshal(body, &m) 3491 if err != nil { 3492 return err 3493 } 3494 for k, v := range m { 3495 switch k { 3496 case "properties": 3497 if v != nil { 3498 var appServiceEnvironment AppServiceEnvironment 3499 err = json.Unmarshal(*v, &appServiceEnvironment) 3500 if err != nil { 3501 return err 3502 } 3503 aser.AppServiceEnvironment = &appServiceEnvironment 3504 } 3505 case "id": 3506 if v != nil { 3507 var ID string 3508 err = json.Unmarshal(*v, &ID) 3509 if err != nil { 3510 return err 3511 } 3512 aser.ID = &ID 3513 } 3514 case "name": 3515 if v != nil { 3516 var name string 3517 err = json.Unmarshal(*v, &name) 3518 if err != nil { 3519 return err 3520 } 3521 aser.Name = &name 3522 } 3523 case "kind": 3524 if v != nil { 3525 var kind string 3526 err = json.Unmarshal(*v, &kind) 3527 if err != nil { 3528 return err 3529 } 3530 aser.Kind = &kind 3531 } 3532 case "location": 3533 if v != nil { 3534 var location string 3535 err = json.Unmarshal(*v, &location) 3536 if err != nil { 3537 return err 3538 } 3539 aser.Location = &location 3540 } 3541 case "type": 3542 if v != nil { 3543 var typeVar string 3544 err = json.Unmarshal(*v, &typeVar) 3545 if err != nil { 3546 return err 3547 } 3548 aser.Type = &typeVar 3549 } 3550 case "tags": 3551 if v != nil { 3552 var tags map[string]*string 3553 err = json.Unmarshal(*v, &tags) 3554 if err != nil { 3555 return err 3556 } 3557 aser.Tags = tags 3558 } 3559 } 3560 } 3561 3562 return nil 3563} 3564 3565// AppServiceEnvironmentsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a 3566// long-running operation. 3567type AppServiceEnvironmentsCreateOrUpdateFuture struct { 3568 azure.Future 3569 req *http.Request 3570} 3571 3572// Result returns the result of the asynchronous operation. 3573// If the operation has not completed it will return an error. 3574func (future AppServiceEnvironmentsCreateOrUpdateFuture) Result(client AppServiceEnvironmentsClient) (aser AppServiceEnvironmentResource, err error) { 3575 var done bool 3576 done, err = future.Done(client) 3577 if err != nil { 3578 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure") 3579 return 3580 } 3581 if !done { 3582 return aser, azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsCreateOrUpdateFuture") 3583 } 3584 if future.PollingMethod() == azure.PollingLocation { 3585 aser, err = client.CreateOrUpdateResponder(future.Response()) 3586 if err != nil { 3587 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateFuture", "Result", future.Response(), "Failure responding to request") 3588 } 3589 return 3590 } 3591 var req *http.Request 3592 var resp *http.Response 3593 if future.PollingURL() != "" { 3594 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 3595 if err != nil { 3596 return 3597 } 3598 } else { 3599 req = autorest.ChangeToGet(future.req) 3600 } 3601 resp, err = autorest.SendWithSender(client, req, 3602 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3603 if err != nil { 3604 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateFuture", "Result", resp, "Failure sending request") 3605 return 3606 } 3607 aser, err = client.CreateOrUpdateResponder(resp) 3608 if err != nil { 3609 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateFuture", "Result", resp, "Failure responding to request") 3610 } 3611 return 3612} 3613 3614// AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture an abstraction for monitoring and retrieving the results 3615// of a long-running operation. 3616type AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture struct { 3617 azure.Future 3618 req *http.Request 3619} 3620 3621// Result returns the result of the asynchronous operation. 3622// If the operation has not completed it will return an error. 3623func (future AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture) Result(client AppServiceEnvironmentsClient) (wpr WorkerPoolResource, err error) { 3624 var done bool 3625 done, err = future.Done(client) 3626 if err != nil { 3627 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture", "Result", future.Response(), "Polling failure") 3628 return 3629 } 3630 if !done { 3631 return wpr, azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture") 3632 } 3633 if future.PollingMethod() == azure.PollingLocation { 3634 wpr, err = client.CreateOrUpdateMultiRolePoolResponder(future.Response()) 3635 if err != nil { 3636 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture", "Result", future.Response(), "Failure responding to request") 3637 } 3638 return 3639 } 3640 var req *http.Request 3641 var resp *http.Response 3642 if future.PollingURL() != "" { 3643 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 3644 if err != nil { 3645 return 3646 } 3647 } else { 3648 req = autorest.ChangeToGet(future.req) 3649 } 3650 resp, err = autorest.SendWithSender(client, req, 3651 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3652 if err != nil { 3653 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture", "Result", resp, "Failure sending request") 3654 return 3655 } 3656 wpr, err = client.CreateOrUpdateMultiRolePoolResponder(resp) 3657 if err != nil { 3658 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateMultiRolePoolFuture", "Result", resp, "Failure responding to request") 3659 } 3660 return 3661} 3662 3663// AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture an abstraction for monitoring and retrieving the results of 3664// a long-running operation. 3665type AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture struct { 3666 azure.Future 3667 req *http.Request 3668} 3669 3670// Result returns the result of the asynchronous operation. 3671// If the operation has not completed it will return an error. 3672func (future AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture) Result(client AppServiceEnvironmentsClient) (wpr WorkerPoolResource, err error) { 3673 var done bool 3674 done, err = future.Done(client) 3675 if err != nil { 3676 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture", "Result", future.Response(), "Polling failure") 3677 return 3678 } 3679 if !done { 3680 return wpr, azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture") 3681 } 3682 if future.PollingMethod() == azure.PollingLocation { 3683 wpr, err = client.CreateOrUpdateWorkerPoolResponder(future.Response()) 3684 if err != nil { 3685 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture", "Result", future.Response(), "Failure responding to request") 3686 } 3687 return 3688 } 3689 var req *http.Request 3690 var resp *http.Response 3691 if future.PollingURL() != "" { 3692 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 3693 if err != nil { 3694 return 3695 } 3696 } else { 3697 req = autorest.ChangeToGet(future.req) 3698 } 3699 resp, err = autorest.SendWithSender(client, req, 3700 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3701 if err != nil { 3702 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture", "Result", resp, "Failure sending request") 3703 return 3704 } 3705 wpr, err = client.CreateOrUpdateWorkerPoolResponder(resp) 3706 if err != nil { 3707 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsCreateOrUpdateWorkerPoolFuture", "Result", resp, "Failure responding to request") 3708 } 3709 return 3710} 3711 3712// AppServiceEnvironmentsDeleteFuture an abstraction for monitoring and retrieving the results of a long-running 3713// operation. 3714type AppServiceEnvironmentsDeleteFuture struct { 3715 azure.Future 3716 req *http.Request 3717} 3718 3719// Result returns the result of the asynchronous operation. 3720// If the operation has not completed it will return an error. 3721func (future AppServiceEnvironmentsDeleteFuture) Result(client AppServiceEnvironmentsClient) (ar autorest.Response, err error) { 3722 var done bool 3723 done, err = future.Done(client) 3724 if err != nil { 3725 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsDeleteFuture", "Result", future.Response(), "Polling failure") 3726 return 3727 } 3728 if !done { 3729 return ar, azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsDeleteFuture") 3730 } 3731 if future.PollingMethod() == azure.PollingLocation { 3732 ar, err = client.DeleteResponder(future.Response()) 3733 if err != nil { 3734 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsDeleteFuture", "Result", future.Response(), "Failure responding to request") 3735 } 3736 return 3737 } 3738 var req *http.Request 3739 var resp *http.Response 3740 if future.PollingURL() != "" { 3741 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 3742 if err != nil { 3743 return 3744 } 3745 } else { 3746 req = autorest.ChangeToGet(future.req) 3747 } 3748 resp, err = autorest.SendWithSender(client, req, 3749 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3750 if err != nil { 3751 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsDeleteFuture", "Result", resp, "Failure sending request") 3752 return 3753 } 3754 ar, err = client.DeleteResponder(resp) 3755 if err != nil { 3756 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsDeleteFuture", "Result", resp, "Failure responding to request") 3757 } 3758 return 3759} 3760 3761// AppServiceEnvironmentsResumeAllFuture an abstraction for monitoring and retrieving the results of a long-running 3762// operation. 3763type AppServiceEnvironmentsResumeAllFuture struct { 3764 azure.Future 3765 req *http.Request 3766} 3767 3768// Result returns the result of the asynchronous operation. 3769// If the operation has not completed it will return an error. 3770func (future AppServiceEnvironmentsResumeAllFuture) Result(client AppServiceEnvironmentsClient) (acp AppCollectionPage, err error) { 3771 var done bool 3772 done, err = future.Done(client) 3773 if err != nil { 3774 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeAllFuture", "Result", future.Response(), "Polling failure") 3775 return 3776 } 3777 if !done { 3778 return acp, azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsResumeAllFuture") 3779 } 3780 if future.PollingMethod() == azure.PollingLocation { 3781 acp, err = client.ResumeResponder(future.Response()) 3782 if err != nil { 3783 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeAllFuture", "Result", future.Response(), "Failure responding to request") 3784 } 3785 return 3786 } 3787 var req *http.Request 3788 var resp *http.Response 3789 if future.PollingURL() != "" { 3790 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 3791 if err != nil { 3792 return 3793 } 3794 } else { 3795 req = autorest.ChangeToGet(future.req) 3796 } 3797 resp, err = autorest.SendWithSender(client, req, 3798 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3799 if err != nil { 3800 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeAllFuture", "Result", resp, "Failure sending request") 3801 return 3802 } 3803 acp, err = client.ResumeResponder(resp) 3804 if err != nil { 3805 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeAllFuture", "Result", resp, "Failure responding to request") 3806 } 3807 return 3808} 3809 3810// AppServiceEnvironmentsResumeFuture an abstraction for monitoring and retrieving the results of a long-running 3811// operation. 3812type AppServiceEnvironmentsResumeFuture struct { 3813 azure.Future 3814 req *http.Request 3815} 3816 3817// Result returns the result of the asynchronous operation. 3818// If the operation has not completed it will return an error. 3819func (future AppServiceEnvironmentsResumeFuture) Result(client AppServiceEnvironmentsClient) (acp AppCollectionPage, err error) { 3820 var done bool 3821 done, err = future.Done(client) 3822 if err != nil { 3823 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeFuture", "Result", future.Response(), "Polling failure") 3824 return 3825 } 3826 if !done { 3827 return acp, azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsResumeFuture") 3828 } 3829 if future.PollingMethod() == azure.PollingLocation { 3830 acp, err = client.ResumeResponder(future.Response()) 3831 if err != nil { 3832 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeFuture", "Result", future.Response(), "Failure responding to request") 3833 } 3834 return 3835 } 3836 var req *http.Request 3837 var resp *http.Response 3838 if future.PollingURL() != "" { 3839 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 3840 if err != nil { 3841 return 3842 } 3843 } else { 3844 req = autorest.ChangeToGet(future.req) 3845 } 3846 resp, err = autorest.SendWithSender(client, req, 3847 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3848 if err != nil { 3849 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeFuture", "Result", resp, "Failure sending request") 3850 return 3851 } 3852 acp, err = client.ResumeResponder(resp) 3853 if err != nil { 3854 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsResumeFuture", "Result", resp, "Failure responding to request") 3855 } 3856 return 3857} 3858 3859// AppServiceEnvironmentsSuspendAllFuture an abstraction for monitoring and retrieving the results of a 3860// long-running operation. 3861type AppServiceEnvironmentsSuspendAllFuture struct { 3862 azure.Future 3863 req *http.Request 3864} 3865 3866// Result returns the result of the asynchronous operation. 3867// If the operation has not completed it will return an error. 3868func (future AppServiceEnvironmentsSuspendAllFuture) Result(client AppServiceEnvironmentsClient) (acp AppCollectionPage, err error) { 3869 var done bool 3870 done, err = future.Done(client) 3871 if err != nil { 3872 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendAllFuture", "Result", future.Response(), "Polling failure") 3873 return 3874 } 3875 if !done { 3876 return acp, azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsSuspendAllFuture") 3877 } 3878 if future.PollingMethod() == azure.PollingLocation { 3879 acp, err = client.SuspendResponder(future.Response()) 3880 if err != nil { 3881 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendAllFuture", "Result", future.Response(), "Failure responding to request") 3882 } 3883 return 3884 } 3885 var req *http.Request 3886 var resp *http.Response 3887 if future.PollingURL() != "" { 3888 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 3889 if err != nil { 3890 return 3891 } 3892 } else { 3893 req = autorest.ChangeToGet(future.req) 3894 } 3895 resp, err = autorest.SendWithSender(client, req, 3896 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3897 if err != nil { 3898 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendAllFuture", "Result", resp, "Failure sending request") 3899 return 3900 } 3901 acp, err = client.SuspendResponder(resp) 3902 if err != nil { 3903 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendAllFuture", "Result", resp, "Failure responding to request") 3904 } 3905 return 3906} 3907 3908// AppServiceEnvironmentsSuspendFuture an abstraction for monitoring and retrieving the results of a long-running 3909// operation. 3910type AppServiceEnvironmentsSuspendFuture struct { 3911 azure.Future 3912 req *http.Request 3913} 3914 3915// Result returns the result of the asynchronous operation. 3916// If the operation has not completed it will return an error. 3917func (future AppServiceEnvironmentsSuspendFuture) Result(client AppServiceEnvironmentsClient) (acp AppCollectionPage, err error) { 3918 var done bool 3919 done, err = future.Done(client) 3920 if err != nil { 3921 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendFuture", "Result", future.Response(), "Polling failure") 3922 return 3923 } 3924 if !done { 3925 return acp, azure.NewAsyncOpIncompleteError("web.AppServiceEnvironmentsSuspendFuture") 3926 } 3927 if future.PollingMethod() == azure.PollingLocation { 3928 acp, err = client.SuspendResponder(future.Response()) 3929 if err != nil { 3930 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendFuture", "Result", future.Response(), "Failure responding to request") 3931 } 3932 return 3933 } 3934 var req *http.Request 3935 var resp *http.Response 3936 if future.PollingURL() != "" { 3937 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 3938 if err != nil { 3939 return 3940 } 3941 } else { 3942 req = autorest.ChangeToGet(future.req) 3943 } 3944 resp, err = autorest.SendWithSender(client, req, 3945 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 3946 if err != nil { 3947 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendFuture", "Result", resp, "Failure sending request") 3948 return 3949 } 3950 acp, err = client.SuspendResponder(resp) 3951 if err != nil { 3952 err = autorest.NewErrorWithError(err, "web.AppServiceEnvironmentsSuspendFuture", "Result", resp, "Failure responding to request") 3953 } 3954 return 3955} 3956 3957// AppServicePlan app Service plan. 3958type AppServicePlan struct { 3959 autorest.Response `json:"-"` 3960 // AppServicePlanProperties - AppServicePlan resource specific properties 3961 *AppServicePlanProperties `json:"properties,omitempty"` 3962 Sku *SkuDescription `json:"sku,omitempty"` 3963 // ID - Resource Id. 3964 ID *string `json:"id,omitempty"` 3965 // Name - Resource Name. 3966 Name *string `json:"name,omitempty"` 3967 // Kind - Kind of resource. 3968 Kind *string `json:"kind,omitempty"` 3969 // Location - Resource Location. 3970 Location *string `json:"location,omitempty"` 3971 // Type - Resource type. 3972 Type *string `json:"type,omitempty"` 3973 // Tags - Resource tags. 3974 Tags map[string]*string `json:"tags"` 3975} 3976 3977// MarshalJSON is the custom marshaler for AppServicePlan. 3978func (asp AppServicePlan) MarshalJSON() ([]byte, error) { 3979 objectMap := make(map[string]interface{}) 3980 if asp.AppServicePlanProperties != nil { 3981 objectMap["properties"] = asp.AppServicePlanProperties 3982 } 3983 if asp.Sku != nil { 3984 objectMap["sku"] = asp.Sku 3985 } 3986 if asp.ID != nil { 3987 objectMap["id"] = asp.ID 3988 } 3989 if asp.Name != nil { 3990 objectMap["name"] = asp.Name 3991 } 3992 if asp.Kind != nil { 3993 objectMap["kind"] = asp.Kind 3994 } 3995 if asp.Location != nil { 3996 objectMap["location"] = asp.Location 3997 } 3998 if asp.Type != nil { 3999 objectMap["type"] = asp.Type 4000 } 4001 if asp.Tags != nil { 4002 objectMap["tags"] = asp.Tags 4003 } 4004 return json.Marshal(objectMap) 4005} 4006 4007// UnmarshalJSON is the custom unmarshaler for AppServicePlan struct. 4008func (asp *AppServicePlan) UnmarshalJSON(body []byte) error { 4009 var m map[string]*json.RawMessage 4010 err := json.Unmarshal(body, &m) 4011 if err != nil { 4012 return err 4013 } 4014 for k, v := range m { 4015 switch k { 4016 case "properties": 4017 if v != nil { 4018 var appServicePlanProperties AppServicePlanProperties 4019 err = json.Unmarshal(*v, &appServicePlanProperties) 4020 if err != nil { 4021 return err 4022 } 4023 asp.AppServicePlanProperties = &appServicePlanProperties 4024 } 4025 case "sku": 4026 if v != nil { 4027 var sku SkuDescription 4028 err = json.Unmarshal(*v, &sku) 4029 if err != nil { 4030 return err 4031 } 4032 asp.Sku = &sku 4033 } 4034 case "id": 4035 if v != nil { 4036 var ID string 4037 err = json.Unmarshal(*v, &ID) 4038 if err != nil { 4039 return err 4040 } 4041 asp.ID = &ID 4042 } 4043 case "name": 4044 if v != nil { 4045 var name string 4046 err = json.Unmarshal(*v, &name) 4047 if err != nil { 4048 return err 4049 } 4050 asp.Name = &name 4051 } 4052 case "kind": 4053 if v != nil { 4054 var kind string 4055 err = json.Unmarshal(*v, &kind) 4056 if err != nil { 4057 return err 4058 } 4059 asp.Kind = &kind 4060 } 4061 case "location": 4062 if v != nil { 4063 var location string 4064 err = json.Unmarshal(*v, &location) 4065 if err != nil { 4066 return err 4067 } 4068 asp.Location = &location 4069 } 4070 case "type": 4071 if v != nil { 4072 var typeVar string 4073 err = json.Unmarshal(*v, &typeVar) 4074 if err != nil { 4075 return err 4076 } 4077 asp.Type = &typeVar 4078 } 4079 case "tags": 4080 if v != nil { 4081 var tags map[string]*string 4082 err = json.Unmarshal(*v, &tags) 4083 if err != nil { 4084 return err 4085 } 4086 asp.Tags = tags 4087 } 4088 } 4089 } 4090 4091 return nil 4092} 4093 4094// AppServicePlanCollection collection of App Service plans. 4095type AppServicePlanCollection struct { 4096 autorest.Response `json:"-"` 4097 // Value - Collection of resources. 4098 Value *[]AppServicePlan `json:"value,omitempty"` 4099 // NextLink - Link to next page of resources. 4100 NextLink *string `json:"nextLink,omitempty"` 4101} 4102 4103// AppServicePlanCollectionIterator provides access to a complete listing of AppServicePlan values. 4104type AppServicePlanCollectionIterator struct { 4105 i int 4106 page AppServicePlanCollectionPage 4107} 4108 4109// Next advances to the next value. If there was an error making 4110// the request the iterator does not advance and the error is returned. 4111func (iter *AppServicePlanCollectionIterator) Next() error { 4112 iter.i++ 4113 if iter.i < len(iter.page.Values()) { 4114 return nil 4115 } 4116 err := iter.page.Next() 4117 if err != nil { 4118 iter.i-- 4119 return err 4120 } 4121 iter.i = 0 4122 return nil 4123} 4124 4125// NotDone returns true if the enumeration should be started or is not yet complete. 4126func (iter AppServicePlanCollectionIterator) NotDone() bool { 4127 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 4128} 4129 4130// Response returns the raw server response from the last page request. 4131func (iter AppServicePlanCollectionIterator) Response() AppServicePlanCollection { 4132 return iter.page.Response() 4133} 4134 4135// Value returns the current value or a zero-initialized value if the 4136// iterator has advanced beyond the end of the collection. 4137func (iter AppServicePlanCollectionIterator) Value() AppServicePlan { 4138 if !iter.page.NotDone() { 4139 return AppServicePlan{} 4140 } 4141 return iter.page.Values()[iter.i] 4142} 4143 4144// IsEmpty returns true if the ListResult contains no values. 4145func (aspc AppServicePlanCollection) IsEmpty() bool { 4146 return aspc.Value == nil || len(*aspc.Value) == 0 4147} 4148 4149// appServicePlanCollectionPreparer prepares a request to retrieve the next set of results. 4150// It returns nil if no more results exist. 4151func (aspc AppServicePlanCollection) appServicePlanCollectionPreparer() (*http.Request, error) { 4152 if aspc.NextLink == nil || len(to.String(aspc.NextLink)) < 1 { 4153 return nil, nil 4154 } 4155 return autorest.Prepare(&http.Request{}, 4156 autorest.AsJSON(), 4157 autorest.AsGet(), 4158 autorest.WithBaseURL(to.String(aspc.NextLink))) 4159} 4160 4161// AppServicePlanCollectionPage contains a page of AppServicePlan values. 4162type AppServicePlanCollectionPage struct { 4163 fn func(AppServicePlanCollection) (AppServicePlanCollection, error) 4164 aspc AppServicePlanCollection 4165} 4166 4167// Next advances to the next page of values. If there was an error making 4168// the request the page does not advance and the error is returned. 4169func (page *AppServicePlanCollectionPage) Next() error { 4170 next, err := page.fn(page.aspc) 4171 if err != nil { 4172 return err 4173 } 4174 page.aspc = next 4175 return nil 4176} 4177 4178// NotDone returns true if the page enumeration should be started or is not yet complete. 4179func (page AppServicePlanCollectionPage) NotDone() bool { 4180 return !page.aspc.IsEmpty() 4181} 4182 4183// Response returns the raw server response from the last page request. 4184func (page AppServicePlanCollectionPage) Response() AppServicePlanCollection { 4185 return page.aspc 4186} 4187 4188// Values returns the slice of values for the current page or nil if there are no values. 4189func (page AppServicePlanCollectionPage) Values() []AppServicePlan { 4190 if page.aspc.IsEmpty() { 4191 return nil 4192 } 4193 return *page.aspc.Value 4194} 4195 4196// AppServicePlanPatchResource ARM resource for a app service plan. 4197type AppServicePlanPatchResource struct { 4198 // AppServicePlanPatchResourceProperties - AppServicePlanPatchResource resource specific properties 4199 *AppServicePlanPatchResourceProperties `json:"properties,omitempty"` 4200 // ID - Resource Id. 4201 ID *string `json:"id,omitempty"` 4202 // Name - Resource Name. 4203 Name *string `json:"name,omitempty"` 4204 // Kind - Kind of resource. 4205 Kind *string `json:"kind,omitempty"` 4206 // Type - Resource type. 4207 Type *string `json:"type,omitempty"` 4208} 4209 4210// MarshalJSON is the custom marshaler for AppServicePlanPatchResource. 4211func (asppr AppServicePlanPatchResource) MarshalJSON() ([]byte, error) { 4212 objectMap := make(map[string]interface{}) 4213 if asppr.AppServicePlanPatchResourceProperties != nil { 4214 objectMap["properties"] = asppr.AppServicePlanPatchResourceProperties 4215 } 4216 if asppr.ID != nil { 4217 objectMap["id"] = asppr.ID 4218 } 4219 if asppr.Name != nil { 4220 objectMap["name"] = asppr.Name 4221 } 4222 if asppr.Kind != nil { 4223 objectMap["kind"] = asppr.Kind 4224 } 4225 if asppr.Type != nil { 4226 objectMap["type"] = asppr.Type 4227 } 4228 return json.Marshal(objectMap) 4229} 4230 4231// UnmarshalJSON is the custom unmarshaler for AppServicePlanPatchResource struct. 4232func (asppr *AppServicePlanPatchResource) UnmarshalJSON(body []byte) error { 4233 var m map[string]*json.RawMessage 4234 err := json.Unmarshal(body, &m) 4235 if err != nil { 4236 return err 4237 } 4238 for k, v := range m { 4239 switch k { 4240 case "properties": 4241 if v != nil { 4242 var appServicePlanPatchResourceProperties AppServicePlanPatchResourceProperties 4243 err = json.Unmarshal(*v, &appServicePlanPatchResourceProperties) 4244 if err != nil { 4245 return err 4246 } 4247 asppr.AppServicePlanPatchResourceProperties = &appServicePlanPatchResourceProperties 4248 } 4249 case "id": 4250 if v != nil { 4251 var ID string 4252 err = json.Unmarshal(*v, &ID) 4253 if err != nil { 4254 return err 4255 } 4256 asppr.ID = &ID 4257 } 4258 case "name": 4259 if v != nil { 4260 var name string 4261 err = json.Unmarshal(*v, &name) 4262 if err != nil { 4263 return err 4264 } 4265 asppr.Name = &name 4266 } 4267 case "kind": 4268 if v != nil { 4269 var kind string 4270 err = json.Unmarshal(*v, &kind) 4271 if err != nil { 4272 return err 4273 } 4274 asppr.Kind = &kind 4275 } 4276 case "type": 4277 if v != nil { 4278 var typeVar string 4279 err = json.Unmarshal(*v, &typeVar) 4280 if err != nil { 4281 return err 4282 } 4283 asppr.Type = &typeVar 4284 } 4285 } 4286 } 4287 4288 return nil 4289} 4290 4291// AppServicePlanPatchResourceProperties appServicePlanPatchResource resource specific properties 4292type AppServicePlanPatchResourceProperties struct { 4293 // Name - Name for the App Service plan. 4294 Name *string `json:"name,omitempty"` 4295 // WorkerTierName - Target worker tier assigned to the App Service plan. 4296 WorkerTierName *string `json:"workerTierName,omitempty"` 4297 // Status - App Service plan status. Possible values include: 'StatusOptionsReady', 'StatusOptionsPending', 'StatusOptionsCreating' 4298 Status StatusOptions `json:"status,omitempty"` 4299 // Subscription - App Service plan subscription. 4300 Subscription *string `json:"subscription,omitempty"` 4301 // AdminSiteName - App Service plan administration site. 4302 AdminSiteName *string `json:"adminSiteName,omitempty"` 4303 // HostingEnvironmentProfile - Specification for the App Service Environment to use for the App Service plan. 4304 HostingEnvironmentProfile *HostingEnvironmentProfile `json:"hostingEnvironmentProfile,omitempty"` 4305 // MaximumNumberOfWorkers - Maximum number of instances that can be assigned to this App Service plan. 4306 MaximumNumberOfWorkers *int32 `json:"maximumNumberOfWorkers,omitempty"` 4307 // GeoRegion - Geographical location for the App Service plan. 4308 GeoRegion *string `json:"geoRegion,omitempty"` 4309 // PerSiteScaling - If <code>true</code>, apps assigned to this App Service plan can be scaled independently. 4310 // If <code>false</code>, apps assigned to this App Service plan will scale to all instances of the plan. 4311 PerSiteScaling *bool `json:"perSiteScaling,omitempty"` 4312 // NumberOfSites - Number of apps assigned to this App Service plan. 4313 NumberOfSites *int32 `json:"numberOfSites,omitempty"` 4314 // IsSpot - If <code>true</code>, this App Service Plan owns spot instances. 4315 IsSpot *bool `json:"isSpot,omitempty"` 4316 // SpotExpirationTime - The time when the server farm expires. Valid only if it is a spot server farm. 4317 SpotExpirationTime *date.Time `json:"spotExpirationTime,omitempty"` 4318 // ResourceGroup - Resource group of the App Service plan. 4319 ResourceGroup *string `json:"resourceGroup,omitempty"` 4320 // Reserved - If Linux app service plan <code>true</code>, <code>false</code> otherwise. 4321 Reserved *bool `json:"reserved,omitempty"` 4322 // TargetWorkerCount - Scaling worker count. 4323 TargetWorkerCount *int32 `json:"targetWorkerCount,omitempty"` 4324 // TargetWorkerSizeID - Scaling worker size ID. 4325 TargetWorkerSizeID *int32 `json:"targetWorkerSizeId,omitempty"` 4326 // ProvisioningState - Provisioning state of the App Service Environment. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 4327 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 4328} 4329 4330// AppServicePlanProperties appServicePlan resource specific properties 4331type AppServicePlanProperties struct { 4332 // Name - Name for the App Service plan. 4333 Name *string `json:"name,omitempty"` 4334 // WorkerTierName - Target worker tier assigned to the App Service plan. 4335 WorkerTierName *string `json:"workerTierName,omitempty"` 4336 // Status - App Service plan status. Possible values include: 'StatusOptionsReady', 'StatusOptionsPending', 'StatusOptionsCreating' 4337 Status StatusOptions `json:"status,omitempty"` 4338 // Subscription - App Service plan subscription. 4339 Subscription *string `json:"subscription,omitempty"` 4340 // AdminSiteName - App Service plan administration site. 4341 AdminSiteName *string `json:"adminSiteName,omitempty"` 4342 // HostingEnvironmentProfile - Specification for the App Service Environment to use for the App Service plan. 4343 HostingEnvironmentProfile *HostingEnvironmentProfile `json:"hostingEnvironmentProfile,omitempty"` 4344 // MaximumNumberOfWorkers - Maximum number of instances that can be assigned to this App Service plan. 4345 MaximumNumberOfWorkers *int32 `json:"maximumNumberOfWorkers,omitempty"` 4346 // GeoRegion - Geographical location for the App Service plan. 4347 GeoRegion *string `json:"geoRegion,omitempty"` 4348 // PerSiteScaling - If <code>true</code>, apps assigned to this App Service plan can be scaled independently. 4349 // If <code>false</code>, apps assigned to this App Service plan will scale to all instances of the plan. 4350 PerSiteScaling *bool `json:"perSiteScaling,omitempty"` 4351 // NumberOfSites - Number of apps assigned to this App Service plan. 4352 NumberOfSites *int32 `json:"numberOfSites,omitempty"` 4353 // IsSpot - If <code>true</code>, this App Service Plan owns spot instances. 4354 IsSpot *bool `json:"isSpot,omitempty"` 4355 // SpotExpirationTime - The time when the server farm expires. Valid only if it is a spot server farm. 4356 SpotExpirationTime *date.Time `json:"spotExpirationTime,omitempty"` 4357 // ResourceGroup - Resource group of the App Service plan. 4358 ResourceGroup *string `json:"resourceGroup,omitempty"` 4359 // Reserved - If Linux app service plan <code>true</code>, <code>false</code> otherwise. 4360 Reserved *bool `json:"reserved,omitempty"` 4361 // TargetWorkerCount - Scaling worker count. 4362 TargetWorkerCount *int32 `json:"targetWorkerCount,omitempty"` 4363 // TargetWorkerSizeID - Scaling worker size ID. 4364 TargetWorkerSizeID *int32 `json:"targetWorkerSizeId,omitempty"` 4365 // ProvisioningState - Provisioning state of the App Service Environment. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 4366 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 4367} 4368 4369// AppServicePlansCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a long-running 4370// operation. 4371type AppServicePlansCreateOrUpdateFuture struct { 4372 azure.Future 4373 req *http.Request 4374} 4375 4376// Result returns the result of the asynchronous operation. 4377// If the operation has not completed it will return an error. 4378func (future AppServicePlansCreateOrUpdateFuture) Result(client AppServicePlansClient) (asp AppServicePlan, err error) { 4379 var done bool 4380 done, err = future.Done(client) 4381 if err != nil { 4382 err = autorest.NewErrorWithError(err, "web.AppServicePlansCreateOrUpdateFuture", "Result", future.Response(), "Polling failure") 4383 return 4384 } 4385 if !done { 4386 return asp, azure.NewAsyncOpIncompleteError("web.AppServicePlansCreateOrUpdateFuture") 4387 } 4388 if future.PollingMethod() == azure.PollingLocation { 4389 asp, err = client.CreateOrUpdateResponder(future.Response()) 4390 if err != nil { 4391 err = autorest.NewErrorWithError(err, "web.AppServicePlansCreateOrUpdateFuture", "Result", future.Response(), "Failure responding to request") 4392 } 4393 return 4394 } 4395 var req *http.Request 4396 var resp *http.Response 4397 if future.PollingURL() != "" { 4398 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4399 if err != nil { 4400 return 4401 } 4402 } else { 4403 req = autorest.ChangeToGet(future.req) 4404 } 4405 resp, err = autorest.SendWithSender(client, req, 4406 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4407 if err != nil { 4408 err = autorest.NewErrorWithError(err, "web.AppServicePlansCreateOrUpdateFuture", "Result", resp, "Failure sending request") 4409 return 4410 } 4411 asp, err = client.CreateOrUpdateResponder(resp) 4412 if err != nil { 4413 err = autorest.NewErrorWithError(err, "web.AppServicePlansCreateOrUpdateFuture", "Result", resp, "Failure responding to request") 4414 } 4415 return 4416} 4417 4418// AppsInstallSiteExtensionFuture an abstraction for monitoring and retrieving the results of a long-running 4419// operation. 4420type AppsInstallSiteExtensionFuture struct { 4421 azure.Future 4422 req *http.Request 4423} 4424 4425// Result returns the result of the asynchronous operation. 4426// If the operation has not completed it will return an error. 4427func (future AppsInstallSiteExtensionFuture) Result(client AppsClient) (sei SiteExtensionInfo, err error) { 4428 var done bool 4429 done, err = future.Done(client) 4430 if err != nil { 4431 err = autorest.NewErrorWithError(err, "web.AppsInstallSiteExtensionFuture", "Result", future.Response(), "Polling failure") 4432 return 4433 } 4434 if !done { 4435 return sei, azure.NewAsyncOpIncompleteError("web.AppsInstallSiteExtensionFuture") 4436 } 4437 if future.PollingMethod() == azure.PollingLocation { 4438 sei, err = client.InstallSiteExtensionResponder(future.Response()) 4439 if err != nil { 4440 err = autorest.NewErrorWithError(err, "web.AppsInstallSiteExtensionFuture", "Result", future.Response(), "Failure responding to request") 4441 } 4442 return 4443 } 4444 var req *http.Request 4445 var resp *http.Response 4446 if future.PollingURL() != "" { 4447 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4448 if err != nil { 4449 return 4450 } 4451 } else { 4452 req = autorest.ChangeToGet(future.req) 4453 } 4454 resp, err = autorest.SendWithSender(client, req, 4455 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4456 if err != nil { 4457 err = autorest.NewErrorWithError(err, "web.AppsInstallSiteExtensionFuture", "Result", resp, "Failure sending request") 4458 return 4459 } 4460 sei, err = client.InstallSiteExtensionResponder(resp) 4461 if err != nil { 4462 err = autorest.NewErrorWithError(err, "web.AppsInstallSiteExtensionFuture", "Result", resp, "Failure responding to request") 4463 } 4464 return 4465} 4466 4467// AppsInstallSiteExtensionSlotFuture an abstraction for monitoring and retrieving the results of a long-running 4468// operation. 4469type AppsInstallSiteExtensionSlotFuture struct { 4470 azure.Future 4471 req *http.Request 4472} 4473 4474// Result returns the result of the asynchronous operation. 4475// If the operation has not completed it will return an error. 4476func (future AppsInstallSiteExtensionSlotFuture) Result(client AppsClient) (sei SiteExtensionInfo, err error) { 4477 var done bool 4478 done, err = future.Done(client) 4479 if err != nil { 4480 err = autorest.NewErrorWithError(err, "web.AppsInstallSiteExtensionSlotFuture", "Result", future.Response(), "Polling failure") 4481 return 4482 } 4483 if !done { 4484 return sei, azure.NewAsyncOpIncompleteError("web.AppsInstallSiteExtensionSlotFuture") 4485 } 4486 if future.PollingMethod() == azure.PollingLocation { 4487 sei, err = client.InstallSiteExtensionSlotResponder(future.Response()) 4488 if err != nil { 4489 err = autorest.NewErrorWithError(err, "web.AppsInstallSiteExtensionSlotFuture", "Result", future.Response(), "Failure responding to request") 4490 } 4491 return 4492 } 4493 var req *http.Request 4494 var resp *http.Response 4495 if future.PollingURL() != "" { 4496 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4497 if err != nil { 4498 return 4499 } 4500 } else { 4501 req = autorest.ChangeToGet(future.req) 4502 } 4503 resp, err = autorest.SendWithSender(client, req, 4504 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4505 if err != nil { 4506 err = autorest.NewErrorWithError(err, "web.AppsInstallSiteExtensionSlotFuture", "Result", resp, "Failure sending request") 4507 return 4508 } 4509 sei, err = client.InstallSiteExtensionSlotResponder(resp) 4510 if err != nil { 4511 err = autorest.NewErrorWithError(err, "web.AppsInstallSiteExtensionSlotFuture", "Result", resp, "Failure responding to request") 4512 } 4513 return 4514} 4515 4516// AppsListPublishingCredentialsFuture an abstraction for monitoring and retrieving the results of a long-running 4517// operation. 4518type AppsListPublishingCredentialsFuture struct { 4519 azure.Future 4520 req *http.Request 4521} 4522 4523// Result returns the result of the asynchronous operation. 4524// If the operation has not completed it will return an error. 4525func (future AppsListPublishingCredentialsFuture) Result(client AppsClient) (u User, err error) { 4526 var done bool 4527 done, err = future.Done(client) 4528 if err != nil { 4529 err = autorest.NewErrorWithError(err, "web.AppsListPublishingCredentialsFuture", "Result", future.Response(), "Polling failure") 4530 return 4531 } 4532 if !done { 4533 return u, azure.NewAsyncOpIncompleteError("web.AppsListPublishingCredentialsFuture") 4534 } 4535 if future.PollingMethod() == azure.PollingLocation { 4536 u, err = client.ListPublishingCredentialsResponder(future.Response()) 4537 if err != nil { 4538 err = autorest.NewErrorWithError(err, "web.AppsListPublishingCredentialsFuture", "Result", future.Response(), "Failure responding to request") 4539 } 4540 return 4541 } 4542 var req *http.Request 4543 var resp *http.Response 4544 if future.PollingURL() != "" { 4545 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4546 if err != nil { 4547 return 4548 } 4549 } else { 4550 req = autorest.ChangeToGet(future.req) 4551 } 4552 resp, err = autorest.SendWithSender(client, req, 4553 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4554 if err != nil { 4555 err = autorest.NewErrorWithError(err, "web.AppsListPublishingCredentialsFuture", "Result", resp, "Failure sending request") 4556 return 4557 } 4558 u, err = client.ListPublishingCredentialsResponder(resp) 4559 if err != nil { 4560 err = autorest.NewErrorWithError(err, "web.AppsListPublishingCredentialsFuture", "Result", resp, "Failure responding to request") 4561 } 4562 return 4563} 4564 4565// AppsListPublishingCredentialsSlotFuture an abstraction for monitoring and retrieving the results of a 4566// long-running operation. 4567type AppsListPublishingCredentialsSlotFuture struct { 4568 azure.Future 4569 req *http.Request 4570} 4571 4572// Result returns the result of the asynchronous operation. 4573// If the operation has not completed it will return an error. 4574func (future AppsListPublishingCredentialsSlotFuture) Result(client AppsClient) (u User, err error) { 4575 var done bool 4576 done, err = future.Done(client) 4577 if err != nil { 4578 err = autorest.NewErrorWithError(err, "web.AppsListPublishingCredentialsSlotFuture", "Result", future.Response(), "Polling failure") 4579 return 4580 } 4581 if !done { 4582 return u, azure.NewAsyncOpIncompleteError("web.AppsListPublishingCredentialsSlotFuture") 4583 } 4584 if future.PollingMethod() == azure.PollingLocation { 4585 u, err = client.ListPublishingCredentialsSlotResponder(future.Response()) 4586 if err != nil { 4587 err = autorest.NewErrorWithError(err, "web.AppsListPublishingCredentialsSlotFuture", "Result", future.Response(), "Failure responding to request") 4588 } 4589 return 4590 } 4591 var req *http.Request 4592 var resp *http.Response 4593 if future.PollingURL() != "" { 4594 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4595 if err != nil { 4596 return 4597 } 4598 } else { 4599 req = autorest.ChangeToGet(future.req) 4600 } 4601 resp, err = autorest.SendWithSender(client, req, 4602 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4603 if err != nil { 4604 err = autorest.NewErrorWithError(err, "web.AppsListPublishingCredentialsSlotFuture", "Result", resp, "Failure sending request") 4605 return 4606 } 4607 u, err = client.ListPublishingCredentialsSlotResponder(resp) 4608 if err != nil { 4609 err = autorest.NewErrorWithError(err, "web.AppsListPublishingCredentialsSlotFuture", "Result", resp, "Failure responding to request") 4610 } 4611 return 4612} 4613 4614// AppsMigrateMySQLFuture an abstraction for monitoring and retrieving the results of a long-running operation. 4615type AppsMigrateMySQLFuture struct { 4616 azure.Future 4617 req *http.Request 4618} 4619 4620// Result returns the result of the asynchronous operation. 4621// If the operation has not completed it will return an error. 4622func (future AppsMigrateMySQLFuture) Result(client AppsClient) (o Operation, err error) { 4623 var done bool 4624 done, err = future.Done(client) 4625 if err != nil { 4626 err = autorest.NewErrorWithError(err, "web.AppsMigrateMySQLFuture", "Result", future.Response(), "Polling failure") 4627 return 4628 } 4629 if !done { 4630 return o, azure.NewAsyncOpIncompleteError("web.AppsMigrateMySQLFuture") 4631 } 4632 if future.PollingMethod() == azure.PollingLocation { 4633 o, err = client.MigrateMySQLResponder(future.Response()) 4634 if err != nil { 4635 err = autorest.NewErrorWithError(err, "web.AppsMigrateMySQLFuture", "Result", future.Response(), "Failure responding to request") 4636 } 4637 return 4638 } 4639 var req *http.Request 4640 var resp *http.Response 4641 if future.PollingURL() != "" { 4642 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4643 if err != nil { 4644 return 4645 } 4646 } else { 4647 req = autorest.ChangeToGet(future.req) 4648 } 4649 resp, err = autorest.SendWithSender(client, req, 4650 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4651 if err != nil { 4652 err = autorest.NewErrorWithError(err, "web.AppsMigrateMySQLFuture", "Result", resp, "Failure sending request") 4653 return 4654 } 4655 o, err = client.MigrateMySQLResponder(resp) 4656 if err != nil { 4657 err = autorest.NewErrorWithError(err, "web.AppsMigrateMySQLFuture", "Result", resp, "Failure responding to request") 4658 } 4659 return 4660} 4661 4662// AppsMigrateStorageFuture an abstraction for monitoring and retrieving the results of a long-running operation. 4663type AppsMigrateStorageFuture struct { 4664 azure.Future 4665 req *http.Request 4666} 4667 4668// Result returns the result of the asynchronous operation. 4669// If the operation has not completed it will return an error. 4670func (future AppsMigrateStorageFuture) Result(client AppsClient) (smr StorageMigrationResponse, err error) { 4671 var done bool 4672 done, err = future.Done(client) 4673 if err != nil { 4674 err = autorest.NewErrorWithError(err, "web.AppsMigrateStorageFuture", "Result", future.Response(), "Polling failure") 4675 return 4676 } 4677 if !done { 4678 return smr, azure.NewAsyncOpIncompleteError("web.AppsMigrateStorageFuture") 4679 } 4680 if future.PollingMethod() == azure.PollingLocation { 4681 smr, err = client.MigrateStorageResponder(future.Response()) 4682 if err != nil { 4683 err = autorest.NewErrorWithError(err, "web.AppsMigrateStorageFuture", "Result", future.Response(), "Failure responding to request") 4684 } 4685 return 4686 } 4687 var req *http.Request 4688 var resp *http.Response 4689 if future.PollingURL() != "" { 4690 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4691 if err != nil { 4692 return 4693 } 4694 } else { 4695 req = autorest.ChangeToGet(future.req) 4696 } 4697 resp, err = autorest.SendWithSender(client, req, 4698 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4699 if err != nil { 4700 err = autorest.NewErrorWithError(err, "web.AppsMigrateStorageFuture", "Result", resp, "Failure sending request") 4701 return 4702 } 4703 smr, err = client.MigrateStorageResponder(resp) 4704 if err != nil { 4705 err = autorest.NewErrorWithError(err, "web.AppsMigrateStorageFuture", "Result", resp, "Failure responding to request") 4706 } 4707 return 4708} 4709 4710// AppsRecoverFuture an abstraction for monitoring and retrieving the results of a long-running operation. 4711type AppsRecoverFuture struct { 4712 azure.Future 4713 req *http.Request 4714} 4715 4716// Result returns the result of the asynchronous operation. 4717// If the operation has not completed it will return an error. 4718func (future AppsRecoverFuture) Result(client AppsClient) (ar autorest.Response, err error) { 4719 var done bool 4720 done, err = future.Done(client) 4721 if err != nil { 4722 err = autorest.NewErrorWithError(err, "web.AppsRecoverFuture", "Result", future.Response(), "Polling failure") 4723 return 4724 } 4725 if !done { 4726 return ar, azure.NewAsyncOpIncompleteError("web.AppsRecoverFuture") 4727 } 4728 if future.PollingMethod() == azure.PollingLocation { 4729 ar, err = client.RecoverResponder(future.Response()) 4730 if err != nil { 4731 err = autorest.NewErrorWithError(err, "web.AppsRecoverFuture", "Result", future.Response(), "Failure responding to request") 4732 } 4733 return 4734 } 4735 var req *http.Request 4736 var resp *http.Response 4737 if future.PollingURL() != "" { 4738 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4739 if err != nil { 4740 return 4741 } 4742 } else { 4743 req = autorest.ChangeToGet(future.req) 4744 } 4745 resp, err = autorest.SendWithSender(client, req, 4746 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4747 if err != nil { 4748 err = autorest.NewErrorWithError(err, "web.AppsRecoverFuture", "Result", resp, "Failure sending request") 4749 return 4750 } 4751 ar, err = client.RecoverResponder(resp) 4752 if err != nil { 4753 err = autorest.NewErrorWithError(err, "web.AppsRecoverFuture", "Result", resp, "Failure responding to request") 4754 } 4755 return 4756} 4757 4758// AppsRecoverSlotFuture an abstraction for monitoring and retrieving the results of a long-running operation. 4759type AppsRecoverSlotFuture struct { 4760 azure.Future 4761 req *http.Request 4762} 4763 4764// Result returns the result of the asynchronous operation. 4765// If the operation has not completed it will return an error. 4766func (future AppsRecoverSlotFuture) Result(client AppsClient) (ar autorest.Response, err error) { 4767 var done bool 4768 done, err = future.Done(client) 4769 if err != nil { 4770 err = autorest.NewErrorWithError(err, "web.AppsRecoverSlotFuture", "Result", future.Response(), "Polling failure") 4771 return 4772 } 4773 if !done { 4774 return ar, azure.NewAsyncOpIncompleteError("web.AppsRecoverSlotFuture") 4775 } 4776 if future.PollingMethod() == azure.PollingLocation { 4777 ar, err = client.RecoverSlotResponder(future.Response()) 4778 if err != nil { 4779 err = autorest.NewErrorWithError(err, "web.AppsRecoverSlotFuture", "Result", future.Response(), "Failure responding to request") 4780 } 4781 return 4782 } 4783 var req *http.Request 4784 var resp *http.Response 4785 if future.PollingURL() != "" { 4786 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4787 if err != nil { 4788 return 4789 } 4790 } else { 4791 req = autorest.ChangeToGet(future.req) 4792 } 4793 resp, err = autorest.SendWithSender(client, req, 4794 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4795 if err != nil { 4796 err = autorest.NewErrorWithError(err, "web.AppsRecoverSlotFuture", "Result", resp, "Failure sending request") 4797 return 4798 } 4799 ar, err = client.RecoverSlotResponder(resp) 4800 if err != nil { 4801 err = autorest.NewErrorWithError(err, "web.AppsRecoverSlotFuture", "Result", resp, "Failure responding to request") 4802 } 4803 return 4804} 4805 4806// AppsRestoreFuture an abstraction for monitoring and retrieving the results of a long-running operation. 4807type AppsRestoreFuture struct { 4808 azure.Future 4809 req *http.Request 4810} 4811 4812// Result returns the result of the asynchronous operation. 4813// If the operation has not completed it will return an error. 4814func (future AppsRestoreFuture) Result(client AppsClient) (rr RestoreResponse, err error) { 4815 var done bool 4816 done, err = future.Done(client) 4817 if err != nil { 4818 err = autorest.NewErrorWithError(err, "web.AppsRestoreFuture", "Result", future.Response(), "Polling failure") 4819 return 4820 } 4821 if !done { 4822 return rr, azure.NewAsyncOpIncompleteError("web.AppsRestoreFuture") 4823 } 4824 if future.PollingMethod() == azure.PollingLocation { 4825 rr, err = client.RestoreResponder(future.Response()) 4826 if err != nil { 4827 err = autorest.NewErrorWithError(err, "web.AppsRestoreFuture", "Result", future.Response(), "Failure responding to request") 4828 } 4829 return 4830 } 4831 var req *http.Request 4832 var resp *http.Response 4833 if future.PollingURL() != "" { 4834 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4835 if err != nil { 4836 return 4837 } 4838 } else { 4839 req = autorest.ChangeToGet(future.req) 4840 } 4841 resp, err = autorest.SendWithSender(client, req, 4842 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4843 if err != nil { 4844 err = autorest.NewErrorWithError(err, "web.AppsRestoreFuture", "Result", resp, "Failure sending request") 4845 return 4846 } 4847 rr, err = client.RestoreResponder(resp) 4848 if err != nil { 4849 err = autorest.NewErrorWithError(err, "web.AppsRestoreFuture", "Result", resp, "Failure responding to request") 4850 } 4851 return 4852} 4853 4854// AppsRestoreSlotFuture an abstraction for monitoring and retrieving the results of a long-running operation. 4855type AppsRestoreSlotFuture struct { 4856 azure.Future 4857 req *http.Request 4858} 4859 4860// Result returns the result of the asynchronous operation. 4861// If the operation has not completed it will return an error. 4862func (future AppsRestoreSlotFuture) Result(client AppsClient) (rr RestoreResponse, err error) { 4863 var done bool 4864 done, err = future.Done(client) 4865 if err != nil { 4866 err = autorest.NewErrorWithError(err, "web.AppsRestoreSlotFuture", "Result", future.Response(), "Polling failure") 4867 return 4868 } 4869 if !done { 4870 return rr, azure.NewAsyncOpIncompleteError("web.AppsRestoreSlotFuture") 4871 } 4872 if future.PollingMethod() == azure.PollingLocation { 4873 rr, err = client.RestoreSlotResponder(future.Response()) 4874 if err != nil { 4875 err = autorest.NewErrorWithError(err, "web.AppsRestoreSlotFuture", "Result", future.Response(), "Failure responding to request") 4876 } 4877 return 4878 } 4879 var req *http.Request 4880 var resp *http.Response 4881 if future.PollingURL() != "" { 4882 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4883 if err != nil { 4884 return 4885 } 4886 } else { 4887 req = autorest.ChangeToGet(future.req) 4888 } 4889 resp, err = autorest.SendWithSender(client, req, 4890 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4891 if err != nil { 4892 err = autorest.NewErrorWithError(err, "web.AppsRestoreSlotFuture", "Result", resp, "Failure sending request") 4893 return 4894 } 4895 rr, err = client.RestoreSlotResponder(resp) 4896 if err != nil { 4897 err = autorest.NewErrorWithError(err, "web.AppsRestoreSlotFuture", "Result", resp, "Failure responding to request") 4898 } 4899 return 4900} 4901 4902// AppsSwapSlotSlotFuture an abstraction for monitoring and retrieving the results of a long-running operation. 4903type AppsSwapSlotSlotFuture struct { 4904 azure.Future 4905 req *http.Request 4906} 4907 4908// Result returns the result of the asynchronous operation. 4909// If the operation has not completed it will return an error. 4910func (future AppsSwapSlotSlotFuture) Result(client AppsClient) (ar autorest.Response, err error) { 4911 var done bool 4912 done, err = future.Done(client) 4913 if err != nil { 4914 err = autorest.NewErrorWithError(err, "web.AppsSwapSlotSlotFuture", "Result", future.Response(), "Polling failure") 4915 return 4916 } 4917 if !done { 4918 return ar, azure.NewAsyncOpIncompleteError("web.AppsSwapSlotSlotFuture") 4919 } 4920 if future.PollingMethod() == azure.PollingLocation { 4921 ar, err = client.SwapSlotSlotResponder(future.Response()) 4922 if err != nil { 4923 err = autorest.NewErrorWithError(err, "web.AppsSwapSlotSlotFuture", "Result", future.Response(), "Failure responding to request") 4924 } 4925 return 4926 } 4927 var req *http.Request 4928 var resp *http.Response 4929 if future.PollingURL() != "" { 4930 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4931 if err != nil { 4932 return 4933 } 4934 } else { 4935 req = autorest.ChangeToGet(future.req) 4936 } 4937 resp, err = autorest.SendWithSender(client, req, 4938 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4939 if err != nil { 4940 err = autorest.NewErrorWithError(err, "web.AppsSwapSlotSlotFuture", "Result", resp, "Failure sending request") 4941 return 4942 } 4943 ar, err = client.SwapSlotSlotResponder(resp) 4944 if err != nil { 4945 err = autorest.NewErrorWithError(err, "web.AppsSwapSlotSlotFuture", "Result", resp, "Failure responding to request") 4946 } 4947 return 4948} 4949 4950// AppsSwapSlotWithProductionFuture an abstraction for monitoring and retrieving the results of a long-running 4951// operation. 4952type AppsSwapSlotWithProductionFuture struct { 4953 azure.Future 4954 req *http.Request 4955} 4956 4957// Result returns the result of the asynchronous operation. 4958// If the operation has not completed it will return an error. 4959func (future AppsSwapSlotWithProductionFuture) Result(client AppsClient) (ar autorest.Response, err error) { 4960 var done bool 4961 done, err = future.Done(client) 4962 if err != nil { 4963 err = autorest.NewErrorWithError(err, "web.AppsSwapSlotWithProductionFuture", "Result", future.Response(), "Polling failure") 4964 return 4965 } 4966 if !done { 4967 return ar, azure.NewAsyncOpIncompleteError("web.AppsSwapSlotWithProductionFuture") 4968 } 4969 if future.PollingMethod() == azure.PollingLocation { 4970 ar, err = client.SwapSlotWithProductionResponder(future.Response()) 4971 if err != nil { 4972 err = autorest.NewErrorWithError(err, "web.AppsSwapSlotWithProductionFuture", "Result", future.Response(), "Failure responding to request") 4973 } 4974 return 4975 } 4976 var req *http.Request 4977 var resp *http.Response 4978 if future.PollingURL() != "" { 4979 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 4980 if err != nil { 4981 return 4982 } 4983 } else { 4984 req = autorest.ChangeToGet(future.req) 4985 } 4986 resp, err = autorest.SendWithSender(client, req, 4987 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 4988 if err != nil { 4989 err = autorest.NewErrorWithError(err, "web.AppsSwapSlotWithProductionFuture", "Result", resp, "Failure sending request") 4990 return 4991 } 4992 ar, err = client.SwapSlotWithProductionResponder(resp) 4993 if err != nil { 4994 err = autorest.NewErrorWithError(err, "web.AppsSwapSlotWithProductionFuture", "Result", resp, "Failure responding to request") 4995 } 4996 return 4997} 4998 4999// AutoHealActions actions which to take by the auto-heal module when a rule is triggered. 5000type AutoHealActions struct { 5001 // ActionType - Predefined action to be taken. Possible values include: 'Recycle', 'LogEvent', 'CustomAction' 5002 ActionType AutoHealActionType `json:"actionType,omitempty"` 5003 // CustomAction - Custom action to be taken. 5004 CustomAction *AutoHealCustomAction `json:"customAction,omitempty"` 5005 // MinProcessExecutionTime - Minimum time the process must execute 5006 // before taking the action 5007 MinProcessExecutionTime *string `json:"minProcessExecutionTime,omitempty"` 5008} 5009 5010// AutoHealCustomAction custom action to be executed 5011// when an auto heal rule is triggered. 5012type AutoHealCustomAction struct { 5013 // Exe - Executable to be run. 5014 Exe *string `json:"exe,omitempty"` 5015 // Parameters - Parameters for the executable. 5016 Parameters *string `json:"parameters,omitempty"` 5017} 5018 5019// AutoHealRules rules that can be defined for auto-heal. 5020type AutoHealRules struct { 5021 // Triggers - Conditions that describe when to execute the auto-heal actions. 5022 Triggers *AutoHealTriggers `json:"triggers,omitempty"` 5023 // Actions - Actions to be executed when a rule is triggered. 5024 Actions *AutoHealActions `json:"actions,omitempty"` 5025} 5026 5027// AutoHealTriggers triggers for auto-heal. 5028type AutoHealTriggers struct { 5029 // Requests - A rule based on total requests. 5030 Requests *RequestsBasedTrigger `json:"requests,omitempty"` 5031 // PrivateBytesInKB - A rule based on private bytes. 5032 PrivateBytesInKB *int32 `json:"privateBytesInKB,omitempty"` 5033 // StatusCodes - A rule based on status codes. 5034 StatusCodes *[]StatusCodesBasedTrigger `json:"statusCodes,omitempty"` 5035 // SlowRequests - A rule based on request execution time. 5036 SlowRequests *SlowRequestsBasedTrigger `json:"slowRequests,omitempty"` 5037} 5038 5039// AzureBlobStorageApplicationLogsConfig application logs azure blob storage configuration. 5040type AzureBlobStorageApplicationLogsConfig struct { 5041 // Level - Log level. Possible values include: 'Off', 'Verbose', 'Information', 'Warning', 'Error' 5042 Level LogLevel `json:"level,omitempty"` 5043 // SasURL - SAS url to a azure blob container with read/write/list/delete permissions. 5044 SasURL *string `json:"sasUrl,omitempty"` 5045 // RetentionInDays - Retention in days. 5046 // Remove blobs older than X days. 5047 // 0 or lower means no retention. 5048 RetentionInDays *int32 `json:"retentionInDays,omitempty"` 5049} 5050 5051// AzureBlobStorageHTTPLogsConfig http logs to azure blob storage configuration. 5052type AzureBlobStorageHTTPLogsConfig struct { 5053 // SasURL - SAS url to a azure blob container with read/write/list/delete permissions. 5054 SasURL *string `json:"sasUrl,omitempty"` 5055 // RetentionInDays - Retention in days. 5056 // Remove blobs older than X days. 5057 // 0 or lower means no retention. 5058 RetentionInDays *int32 `json:"retentionInDays,omitempty"` 5059 // Enabled - True if configuration is enabled, false if it is disabled and null if configuration is not set. 5060 Enabled *bool `json:"enabled,omitempty"` 5061} 5062 5063// AzureTableStorageApplicationLogsConfig application logs to Azure table storage configuration. 5064type AzureTableStorageApplicationLogsConfig struct { 5065 // Level - Log level. Possible values include: 'Off', 'Verbose', 'Information', 'Warning', 'Error' 5066 Level LogLevel `json:"level,omitempty"` 5067 // SasURL - SAS URL to an Azure table with add/query/delete permissions. 5068 SasURL *string `json:"sasUrl,omitempty"` 5069} 5070 5071// BackupItem backup description. 5072type BackupItem struct { 5073 autorest.Response `json:"-"` 5074 // BackupItemProperties - BackupItem resource specific properties 5075 *BackupItemProperties `json:"properties,omitempty"` 5076 // ID - Resource Id. 5077 ID *string `json:"id,omitempty"` 5078 // Name - Resource Name. 5079 Name *string `json:"name,omitempty"` 5080 // Kind - Kind of resource. 5081 Kind *string `json:"kind,omitempty"` 5082 // Type - Resource type. 5083 Type *string `json:"type,omitempty"` 5084} 5085 5086// MarshalJSON is the custom marshaler for BackupItem. 5087func (bi BackupItem) MarshalJSON() ([]byte, error) { 5088 objectMap := make(map[string]interface{}) 5089 if bi.BackupItemProperties != nil { 5090 objectMap["properties"] = bi.BackupItemProperties 5091 } 5092 if bi.ID != nil { 5093 objectMap["id"] = bi.ID 5094 } 5095 if bi.Name != nil { 5096 objectMap["name"] = bi.Name 5097 } 5098 if bi.Kind != nil { 5099 objectMap["kind"] = bi.Kind 5100 } 5101 if bi.Type != nil { 5102 objectMap["type"] = bi.Type 5103 } 5104 return json.Marshal(objectMap) 5105} 5106 5107// UnmarshalJSON is the custom unmarshaler for BackupItem struct. 5108func (bi *BackupItem) UnmarshalJSON(body []byte) error { 5109 var m map[string]*json.RawMessage 5110 err := json.Unmarshal(body, &m) 5111 if err != nil { 5112 return err 5113 } 5114 for k, v := range m { 5115 switch k { 5116 case "properties": 5117 if v != nil { 5118 var backupItemProperties BackupItemProperties 5119 err = json.Unmarshal(*v, &backupItemProperties) 5120 if err != nil { 5121 return err 5122 } 5123 bi.BackupItemProperties = &backupItemProperties 5124 } 5125 case "id": 5126 if v != nil { 5127 var ID string 5128 err = json.Unmarshal(*v, &ID) 5129 if err != nil { 5130 return err 5131 } 5132 bi.ID = &ID 5133 } 5134 case "name": 5135 if v != nil { 5136 var name string 5137 err = json.Unmarshal(*v, &name) 5138 if err != nil { 5139 return err 5140 } 5141 bi.Name = &name 5142 } 5143 case "kind": 5144 if v != nil { 5145 var kind string 5146 err = json.Unmarshal(*v, &kind) 5147 if err != nil { 5148 return err 5149 } 5150 bi.Kind = &kind 5151 } 5152 case "type": 5153 if v != nil { 5154 var typeVar string 5155 err = json.Unmarshal(*v, &typeVar) 5156 if err != nil { 5157 return err 5158 } 5159 bi.Type = &typeVar 5160 } 5161 } 5162 } 5163 5164 return nil 5165} 5166 5167// BackupItemCollection collection of backup items. 5168type BackupItemCollection struct { 5169 autorest.Response `json:"-"` 5170 // Value - Collection of resources. 5171 Value *[]BackupItem `json:"value,omitempty"` 5172 // NextLink - Link to next page of resources. 5173 NextLink *string `json:"nextLink,omitempty"` 5174} 5175 5176// BackupItemCollectionIterator provides access to a complete listing of BackupItem values. 5177type BackupItemCollectionIterator struct { 5178 i int 5179 page BackupItemCollectionPage 5180} 5181 5182// Next advances to the next value. If there was an error making 5183// the request the iterator does not advance and the error is returned. 5184func (iter *BackupItemCollectionIterator) Next() error { 5185 iter.i++ 5186 if iter.i < len(iter.page.Values()) { 5187 return nil 5188 } 5189 err := iter.page.Next() 5190 if err != nil { 5191 iter.i-- 5192 return err 5193 } 5194 iter.i = 0 5195 return nil 5196} 5197 5198// NotDone returns true if the enumeration should be started or is not yet complete. 5199func (iter BackupItemCollectionIterator) NotDone() bool { 5200 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 5201} 5202 5203// Response returns the raw server response from the last page request. 5204func (iter BackupItemCollectionIterator) Response() BackupItemCollection { 5205 return iter.page.Response() 5206} 5207 5208// Value returns the current value or a zero-initialized value if the 5209// iterator has advanced beyond the end of the collection. 5210func (iter BackupItemCollectionIterator) Value() BackupItem { 5211 if !iter.page.NotDone() { 5212 return BackupItem{} 5213 } 5214 return iter.page.Values()[iter.i] 5215} 5216 5217// IsEmpty returns true if the ListResult contains no values. 5218func (bic BackupItemCollection) IsEmpty() bool { 5219 return bic.Value == nil || len(*bic.Value) == 0 5220} 5221 5222// backupItemCollectionPreparer prepares a request to retrieve the next set of results. 5223// It returns nil if no more results exist. 5224func (bic BackupItemCollection) backupItemCollectionPreparer() (*http.Request, error) { 5225 if bic.NextLink == nil || len(to.String(bic.NextLink)) < 1 { 5226 return nil, nil 5227 } 5228 return autorest.Prepare(&http.Request{}, 5229 autorest.AsJSON(), 5230 autorest.AsGet(), 5231 autorest.WithBaseURL(to.String(bic.NextLink))) 5232} 5233 5234// BackupItemCollectionPage contains a page of BackupItem values. 5235type BackupItemCollectionPage struct { 5236 fn func(BackupItemCollection) (BackupItemCollection, error) 5237 bic BackupItemCollection 5238} 5239 5240// Next advances to the next page of values. If there was an error making 5241// the request the page does not advance and the error is returned. 5242func (page *BackupItemCollectionPage) Next() error { 5243 next, err := page.fn(page.bic) 5244 if err != nil { 5245 return err 5246 } 5247 page.bic = next 5248 return nil 5249} 5250 5251// NotDone returns true if the page enumeration should be started or is not yet complete. 5252func (page BackupItemCollectionPage) NotDone() bool { 5253 return !page.bic.IsEmpty() 5254} 5255 5256// Response returns the raw server response from the last page request. 5257func (page BackupItemCollectionPage) Response() BackupItemCollection { 5258 return page.bic 5259} 5260 5261// Values returns the slice of values for the current page or nil if there are no values. 5262func (page BackupItemCollectionPage) Values() []BackupItem { 5263 if page.bic.IsEmpty() { 5264 return nil 5265 } 5266 return *page.bic.Value 5267} 5268 5269// BackupItemProperties backupItem resource specific properties 5270type BackupItemProperties struct { 5271 // BackupID - Id of the backup. 5272 BackupID *int32 `json:"id,omitempty"` 5273 // StorageAccountURL - SAS URL for the storage account container which contains this backup. 5274 StorageAccountURL *string `json:"storageAccountUrl,omitempty"` 5275 // BlobName - Name of the blob which contains data for this backup. 5276 BlobName *string `json:"blobName,omitempty"` 5277 // Name - Name of this backup. 5278 Name *string `json:"name,omitempty"` 5279 // Status - Backup status. Possible values include: 'InProgress', 'Failed', 'Succeeded', 'TimedOut', 'Created', 'Skipped', 'PartiallySucceeded', 'DeleteInProgress', 'DeleteFailed', 'Deleted' 5280 Status BackupItemStatus `json:"status,omitempty"` 5281 // SizeInBytes - Size of the backup in bytes. 5282 SizeInBytes *int64 `json:"sizeInBytes,omitempty"` 5283 // Created - Timestamp of the backup creation. 5284 Created *date.Time `json:"created,omitempty"` 5285 // Log - Details regarding this backup. Might contain an error message. 5286 Log *string `json:"log,omitempty"` 5287 // Databases - List of databases included in the backup. 5288 Databases *[]DatabaseBackupSetting `json:"databases,omitempty"` 5289 // Scheduled - True if this backup has been created due to a schedule being triggered. 5290 Scheduled *bool `json:"scheduled,omitempty"` 5291 // LastRestoreTimeStamp - Timestamp of a last restore operation which used this backup. 5292 LastRestoreTimeStamp *date.Time `json:"lastRestoreTimeStamp,omitempty"` 5293 // FinishedTimeStamp - Timestamp when this backup finished. 5294 FinishedTimeStamp *date.Time `json:"finishedTimeStamp,omitempty"` 5295 // CorrelationID - Unique correlation identifier. Please use this along with the timestamp while communicating with Azure support. 5296 CorrelationID *string `json:"correlationId,omitempty"` 5297 // WebsiteSizeInBytes - Size of the original web app which has been backed up. 5298 WebsiteSizeInBytes *int64 `json:"websiteSizeInBytes,omitempty"` 5299} 5300 5301// BackupRequest description of a backup which will be performed. 5302type BackupRequest struct { 5303 autorest.Response `json:"-"` 5304 // BackupRequestProperties - BackupRequest resource specific properties 5305 *BackupRequestProperties `json:"properties,omitempty"` 5306 // ID - Resource Id. 5307 ID *string `json:"id,omitempty"` 5308 // Name - Resource Name. 5309 Name *string `json:"name,omitempty"` 5310 // Kind - Kind of resource. 5311 Kind *string `json:"kind,omitempty"` 5312 // Type - Resource type. 5313 Type *string `json:"type,omitempty"` 5314} 5315 5316// MarshalJSON is the custom marshaler for BackupRequest. 5317func (br BackupRequest) MarshalJSON() ([]byte, error) { 5318 objectMap := make(map[string]interface{}) 5319 if br.BackupRequestProperties != nil { 5320 objectMap["properties"] = br.BackupRequestProperties 5321 } 5322 if br.ID != nil { 5323 objectMap["id"] = br.ID 5324 } 5325 if br.Name != nil { 5326 objectMap["name"] = br.Name 5327 } 5328 if br.Kind != nil { 5329 objectMap["kind"] = br.Kind 5330 } 5331 if br.Type != nil { 5332 objectMap["type"] = br.Type 5333 } 5334 return json.Marshal(objectMap) 5335} 5336 5337// UnmarshalJSON is the custom unmarshaler for BackupRequest struct. 5338func (br *BackupRequest) UnmarshalJSON(body []byte) error { 5339 var m map[string]*json.RawMessage 5340 err := json.Unmarshal(body, &m) 5341 if err != nil { 5342 return err 5343 } 5344 for k, v := range m { 5345 switch k { 5346 case "properties": 5347 if v != nil { 5348 var backupRequestProperties BackupRequestProperties 5349 err = json.Unmarshal(*v, &backupRequestProperties) 5350 if err != nil { 5351 return err 5352 } 5353 br.BackupRequestProperties = &backupRequestProperties 5354 } 5355 case "id": 5356 if v != nil { 5357 var ID string 5358 err = json.Unmarshal(*v, &ID) 5359 if err != nil { 5360 return err 5361 } 5362 br.ID = &ID 5363 } 5364 case "name": 5365 if v != nil { 5366 var name string 5367 err = json.Unmarshal(*v, &name) 5368 if err != nil { 5369 return err 5370 } 5371 br.Name = &name 5372 } 5373 case "kind": 5374 if v != nil { 5375 var kind string 5376 err = json.Unmarshal(*v, &kind) 5377 if err != nil { 5378 return err 5379 } 5380 br.Kind = &kind 5381 } 5382 case "type": 5383 if v != nil { 5384 var typeVar string 5385 err = json.Unmarshal(*v, &typeVar) 5386 if err != nil { 5387 return err 5388 } 5389 br.Type = &typeVar 5390 } 5391 } 5392 } 5393 5394 return nil 5395} 5396 5397// BackupRequestProperties backupRequest resource specific properties 5398type BackupRequestProperties struct { 5399 // BackupRequestName - Name of the backup. 5400 BackupRequestName *string `json:"name,omitempty"` 5401 // Enabled - True if the backup schedule is enabled (must be included in that case), false if the backup schedule should be disabled. 5402 Enabled *bool `json:"enabled,omitempty"` 5403 // StorageAccountURL - SAS URL to the container. 5404 StorageAccountURL *string `json:"storageAccountUrl,omitempty"` 5405 // BackupSchedule - Schedule for the backup if it is executed periodically. 5406 BackupSchedule *BackupSchedule `json:"backupSchedule,omitempty"` 5407 // Databases - Databases included in the backup. 5408 Databases *[]DatabaseBackupSetting `json:"databases,omitempty"` 5409 // Type - Type of the backup. Possible values include: 'BackupRestoreOperationTypeDefault', 'BackupRestoreOperationTypeClone', 'BackupRestoreOperationTypeRelocation', 'BackupRestoreOperationTypeSnapshot' 5410 Type BackupRestoreOperationType `json:"type,omitempty"` 5411} 5412 5413// BackupSchedule description of a backup schedule. Describes how often should be the backup performed and what 5414// should be the retention policy. 5415type BackupSchedule struct { 5416 // 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) 5417 FrequencyInterval *int32 `json:"frequencyInterval,omitempty"` 5418 // 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' 5419 FrequencyUnit FrequencyUnit `json:"frequencyUnit,omitempty"` 5420 // KeepAtLeastOneBackup - True if the retention policy should always keep at least one backup in the storage account, regardless how old it is; false otherwise. 5421 KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty"` 5422 // RetentionPeriodInDays - After how many days backups should be deleted. 5423 RetentionPeriodInDays *int32 `json:"retentionPeriodInDays,omitempty"` 5424 // StartTime - When the schedule should start working. 5425 StartTime *date.Time `json:"startTime,omitempty"` 5426 // LastExecutionTime - Last time when this schedule was triggered. 5427 LastExecutionTime *date.Time `json:"lastExecutionTime,omitempty"` 5428} 5429 5430// BillingMeter app Service billing entity that contains information about meter which the Azure billing system 5431// utilizes to charge users for services. 5432type BillingMeter struct { 5433 // BillingMeterProperties - BillingMeter resource specific properties 5434 *BillingMeterProperties `json:"properties,omitempty"` 5435 // ID - Resource Id. 5436 ID *string `json:"id,omitempty"` 5437 // Name - Resource Name. 5438 Name *string `json:"name,omitempty"` 5439 // Kind - Kind of resource. 5440 Kind *string `json:"kind,omitempty"` 5441 // Type - Resource type. 5442 Type *string `json:"type,omitempty"` 5443} 5444 5445// MarshalJSON is the custom marshaler for BillingMeter. 5446func (bm BillingMeter) MarshalJSON() ([]byte, error) { 5447 objectMap := make(map[string]interface{}) 5448 if bm.BillingMeterProperties != nil { 5449 objectMap["properties"] = bm.BillingMeterProperties 5450 } 5451 if bm.ID != nil { 5452 objectMap["id"] = bm.ID 5453 } 5454 if bm.Name != nil { 5455 objectMap["name"] = bm.Name 5456 } 5457 if bm.Kind != nil { 5458 objectMap["kind"] = bm.Kind 5459 } 5460 if bm.Type != nil { 5461 objectMap["type"] = bm.Type 5462 } 5463 return json.Marshal(objectMap) 5464} 5465 5466// UnmarshalJSON is the custom unmarshaler for BillingMeter struct. 5467func (bm *BillingMeter) UnmarshalJSON(body []byte) error { 5468 var m map[string]*json.RawMessage 5469 err := json.Unmarshal(body, &m) 5470 if err != nil { 5471 return err 5472 } 5473 for k, v := range m { 5474 switch k { 5475 case "properties": 5476 if v != nil { 5477 var billingMeterProperties BillingMeterProperties 5478 err = json.Unmarshal(*v, &billingMeterProperties) 5479 if err != nil { 5480 return err 5481 } 5482 bm.BillingMeterProperties = &billingMeterProperties 5483 } 5484 case "id": 5485 if v != nil { 5486 var ID string 5487 err = json.Unmarshal(*v, &ID) 5488 if err != nil { 5489 return err 5490 } 5491 bm.ID = &ID 5492 } 5493 case "name": 5494 if v != nil { 5495 var name string 5496 err = json.Unmarshal(*v, &name) 5497 if err != nil { 5498 return err 5499 } 5500 bm.Name = &name 5501 } 5502 case "kind": 5503 if v != nil { 5504 var kind string 5505 err = json.Unmarshal(*v, &kind) 5506 if err != nil { 5507 return err 5508 } 5509 bm.Kind = &kind 5510 } 5511 case "type": 5512 if v != nil { 5513 var typeVar string 5514 err = json.Unmarshal(*v, &typeVar) 5515 if err != nil { 5516 return err 5517 } 5518 bm.Type = &typeVar 5519 } 5520 } 5521 } 5522 5523 return nil 5524} 5525 5526// BillingMeterCollection collection of Billing Meters 5527type BillingMeterCollection struct { 5528 autorest.Response `json:"-"` 5529 // Value - Collection of Billing Meters. 5530 Value *[]BillingMeter `json:"value,omitempty"` 5531 // NextLink - Link to next page of resources. 5532 NextLink *string `json:"nextLink,omitempty"` 5533} 5534 5535// BillingMeterCollectionIterator provides access to a complete listing of BillingMeter values. 5536type BillingMeterCollectionIterator struct { 5537 i int 5538 page BillingMeterCollectionPage 5539} 5540 5541// Next advances to the next value. If there was an error making 5542// the request the iterator does not advance and the error is returned. 5543func (iter *BillingMeterCollectionIterator) Next() error { 5544 iter.i++ 5545 if iter.i < len(iter.page.Values()) { 5546 return nil 5547 } 5548 err := iter.page.Next() 5549 if err != nil { 5550 iter.i-- 5551 return err 5552 } 5553 iter.i = 0 5554 return nil 5555} 5556 5557// NotDone returns true if the enumeration should be started or is not yet complete. 5558func (iter BillingMeterCollectionIterator) NotDone() bool { 5559 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 5560} 5561 5562// Response returns the raw server response from the last page request. 5563func (iter BillingMeterCollectionIterator) Response() BillingMeterCollection { 5564 return iter.page.Response() 5565} 5566 5567// Value returns the current value or a zero-initialized value if the 5568// iterator has advanced beyond the end of the collection. 5569func (iter BillingMeterCollectionIterator) Value() BillingMeter { 5570 if !iter.page.NotDone() { 5571 return BillingMeter{} 5572 } 5573 return iter.page.Values()[iter.i] 5574} 5575 5576// IsEmpty returns true if the ListResult contains no values. 5577func (bmc BillingMeterCollection) IsEmpty() bool { 5578 return bmc.Value == nil || len(*bmc.Value) == 0 5579} 5580 5581// billingMeterCollectionPreparer prepares a request to retrieve the next set of results. 5582// It returns nil if no more results exist. 5583func (bmc BillingMeterCollection) billingMeterCollectionPreparer() (*http.Request, error) { 5584 if bmc.NextLink == nil || len(to.String(bmc.NextLink)) < 1 { 5585 return nil, nil 5586 } 5587 return autorest.Prepare(&http.Request{}, 5588 autorest.AsJSON(), 5589 autorest.AsGet(), 5590 autorest.WithBaseURL(to.String(bmc.NextLink))) 5591} 5592 5593// BillingMeterCollectionPage contains a page of BillingMeter values. 5594type BillingMeterCollectionPage struct { 5595 fn func(BillingMeterCollection) (BillingMeterCollection, error) 5596 bmc BillingMeterCollection 5597} 5598 5599// Next advances to the next page of values. If there was an error making 5600// the request the page does not advance and the error is returned. 5601func (page *BillingMeterCollectionPage) Next() error { 5602 next, err := page.fn(page.bmc) 5603 if err != nil { 5604 return err 5605 } 5606 page.bmc = next 5607 return nil 5608} 5609 5610// NotDone returns true if the page enumeration should be started or is not yet complete. 5611func (page BillingMeterCollectionPage) NotDone() bool { 5612 return !page.bmc.IsEmpty() 5613} 5614 5615// Response returns the raw server response from the last page request. 5616func (page BillingMeterCollectionPage) Response() BillingMeterCollection { 5617 return page.bmc 5618} 5619 5620// Values returns the slice of values for the current page or nil if there are no values. 5621func (page BillingMeterCollectionPage) Values() []BillingMeter { 5622 if page.bmc.IsEmpty() { 5623 return nil 5624 } 5625 return *page.bmc.Value 5626} 5627 5628// BillingMeterProperties billingMeter resource specific properties 5629type BillingMeterProperties struct { 5630 // MeterID - Meter GUID onboarded in Commerce 5631 MeterID *string `json:"meterId,omitempty"` 5632 // BillingLocation - Azure Location of billable resource 5633 BillingLocation *string `json:"billingLocation,omitempty"` 5634 // ShortName - Short Name from App Service Azure pricing Page 5635 ShortName *string `json:"shortName,omitempty"` 5636 // FriendlyName - Friendly name of the meter 5637 FriendlyName *string `json:"friendlyName,omitempty"` 5638 // ResourceType - App Service resource type meter used for 5639 ResourceType *string `json:"resourceType,omitempty"` 5640} 5641 5642// Capability describes the capabilities/features allowed for a specific SKU. 5643type Capability struct { 5644 // Name - Name of the SKU capability. 5645 Name *string `json:"name,omitempty"` 5646 // Value - Value of the SKU capability. 5647 Value *string `json:"value,omitempty"` 5648 // Reason - Reason of the SKU capability. 5649 Reason *string `json:"reason,omitempty"` 5650} 5651 5652// Certificate SSL certificate for an app. 5653type Certificate struct { 5654 autorest.Response `json:"-"` 5655 // CertificateProperties - Certificate resource specific properties 5656 *CertificateProperties `json:"properties,omitempty"` 5657 // ID - Resource Id. 5658 ID *string `json:"id,omitempty"` 5659 // Name - Resource Name. 5660 Name *string `json:"name,omitempty"` 5661 // Kind - Kind of resource. 5662 Kind *string `json:"kind,omitempty"` 5663 // Location - Resource Location. 5664 Location *string `json:"location,omitempty"` 5665 // Type - Resource type. 5666 Type *string `json:"type,omitempty"` 5667 // Tags - Resource tags. 5668 Tags map[string]*string `json:"tags"` 5669} 5670 5671// MarshalJSON is the custom marshaler for Certificate. 5672func (c Certificate) MarshalJSON() ([]byte, error) { 5673 objectMap := make(map[string]interface{}) 5674 if c.CertificateProperties != nil { 5675 objectMap["properties"] = c.CertificateProperties 5676 } 5677 if c.ID != nil { 5678 objectMap["id"] = c.ID 5679 } 5680 if c.Name != nil { 5681 objectMap["name"] = c.Name 5682 } 5683 if c.Kind != nil { 5684 objectMap["kind"] = c.Kind 5685 } 5686 if c.Location != nil { 5687 objectMap["location"] = c.Location 5688 } 5689 if c.Type != nil { 5690 objectMap["type"] = c.Type 5691 } 5692 if c.Tags != nil { 5693 objectMap["tags"] = c.Tags 5694 } 5695 return json.Marshal(objectMap) 5696} 5697 5698// UnmarshalJSON is the custom unmarshaler for Certificate struct. 5699func (c *Certificate) UnmarshalJSON(body []byte) error { 5700 var m map[string]*json.RawMessage 5701 err := json.Unmarshal(body, &m) 5702 if err != nil { 5703 return err 5704 } 5705 for k, v := range m { 5706 switch k { 5707 case "properties": 5708 if v != nil { 5709 var certificateProperties CertificateProperties 5710 err = json.Unmarshal(*v, &certificateProperties) 5711 if err != nil { 5712 return err 5713 } 5714 c.CertificateProperties = &certificateProperties 5715 } 5716 case "id": 5717 if v != nil { 5718 var ID string 5719 err = json.Unmarshal(*v, &ID) 5720 if err != nil { 5721 return err 5722 } 5723 c.ID = &ID 5724 } 5725 case "name": 5726 if v != nil { 5727 var name string 5728 err = json.Unmarshal(*v, &name) 5729 if err != nil { 5730 return err 5731 } 5732 c.Name = &name 5733 } 5734 case "kind": 5735 if v != nil { 5736 var kind string 5737 err = json.Unmarshal(*v, &kind) 5738 if err != nil { 5739 return err 5740 } 5741 c.Kind = &kind 5742 } 5743 case "location": 5744 if v != nil { 5745 var location string 5746 err = json.Unmarshal(*v, &location) 5747 if err != nil { 5748 return err 5749 } 5750 c.Location = &location 5751 } 5752 case "type": 5753 if v != nil { 5754 var typeVar string 5755 err = json.Unmarshal(*v, &typeVar) 5756 if err != nil { 5757 return err 5758 } 5759 c.Type = &typeVar 5760 } 5761 case "tags": 5762 if v != nil { 5763 var tags map[string]*string 5764 err = json.Unmarshal(*v, &tags) 5765 if err != nil { 5766 return err 5767 } 5768 c.Tags = tags 5769 } 5770 } 5771 } 5772 5773 return nil 5774} 5775 5776// CertificateCollection collection of certificates. 5777type CertificateCollection struct { 5778 autorest.Response `json:"-"` 5779 // Value - Collection of resources. 5780 Value *[]Certificate `json:"value,omitempty"` 5781 // NextLink - Link to next page of resources. 5782 NextLink *string `json:"nextLink,omitempty"` 5783} 5784 5785// CertificateCollectionIterator provides access to a complete listing of Certificate values. 5786type CertificateCollectionIterator struct { 5787 i int 5788 page CertificateCollectionPage 5789} 5790 5791// Next advances to the next value. If there was an error making 5792// the request the iterator does not advance and the error is returned. 5793func (iter *CertificateCollectionIterator) Next() error { 5794 iter.i++ 5795 if iter.i < len(iter.page.Values()) { 5796 return nil 5797 } 5798 err := iter.page.Next() 5799 if err != nil { 5800 iter.i-- 5801 return err 5802 } 5803 iter.i = 0 5804 return nil 5805} 5806 5807// NotDone returns true if the enumeration should be started or is not yet complete. 5808func (iter CertificateCollectionIterator) NotDone() bool { 5809 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 5810} 5811 5812// Response returns the raw server response from the last page request. 5813func (iter CertificateCollectionIterator) Response() CertificateCollection { 5814 return iter.page.Response() 5815} 5816 5817// Value returns the current value or a zero-initialized value if the 5818// iterator has advanced beyond the end of the collection. 5819func (iter CertificateCollectionIterator) Value() Certificate { 5820 if !iter.page.NotDone() { 5821 return Certificate{} 5822 } 5823 return iter.page.Values()[iter.i] 5824} 5825 5826// IsEmpty returns true if the ListResult contains no values. 5827func (cc CertificateCollection) IsEmpty() bool { 5828 return cc.Value == nil || len(*cc.Value) == 0 5829} 5830 5831// certificateCollectionPreparer prepares a request to retrieve the next set of results. 5832// It returns nil if no more results exist. 5833func (cc CertificateCollection) certificateCollectionPreparer() (*http.Request, error) { 5834 if cc.NextLink == nil || len(to.String(cc.NextLink)) < 1 { 5835 return nil, nil 5836 } 5837 return autorest.Prepare(&http.Request{}, 5838 autorest.AsJSON(), 5839 autorest.AsGet(), 5840 autorest.WithBaseURL(to.String(cc.NextLink))) 5841} 5842 5843// CertificateCollectionPage contains a page of Certificate values. 5844type CertificateCollectionPage struct { 5845 fn func(CertificateCollection) (CertificateCollection, error) 5846 cc CertificateCollection 5847} 5848 5849// Next advances to the next page of values. If there was an error making 5850// the request the page does not advance and the error is returned. 5851func (page *CertificateCollectionPage) Next() error { 5852 next, err := page.fn(page.cc) 5853 if err != nil { 5854 return err 5855 } 5856 page.cc = next 5857 return nil 5858} 5859 5860// NotDone returns true if the page enumeration should be started or is not yet complete. 5861func (page CertificateCollectionPage) NotDone() bool { 5862 return !page.cc.IsEmpty() 5863} 5864 5865// Response returns the raw server response from the last page request. 5866func (page CertificateCollectionPage) Response() CertificateCollection { 5867 return page.cc 5868} 5869 5870// Values returns the slice of values for the current page or nil if there are no values. 5871func (page CertificateCollectionPage) Values() []Certificate { 5872 if page.cc.IsEmpty() { 5873 return nil 5874 } 5875 return *page.cc.Value 5876} 5877 5878// CertificateDetails SSL certificate details. 5879type CertificateDetails struct { 5880 // Version - Certificate Version. 5881 Version *int32 `json:"version,omitempty"` 5882 // SerialNumber - Certificate Serial Number. 5883 SerialNumber *string `json:"serialNumber,omitempty"` 5884 // Thumbprint - Certificate Thumbprint. 5885 Thumbprint *string `json:"thumbprint,omitempty"` 5886 // Subject - Certificate Subject. 5887 Subject *string `json:"subject,omitempty"` 5888 // NotBefore - Date Certificate is valid from. 5889 NotBefore *date.Time `json:"notBefore,omitempty"` 5890 // NotAfter - Date Certificate is valid to. 5891 NotAfter *date.Time `json:"notAfter,omitempty"` 5892 // SignatureAlgorithm - Certificate Signature algorithm. 5893 SignatureAlgorithm *string `json:"signatureAlgorithm,omitempty"` 5894 // Issuer - Certificate Issuer. 5895 Issuer *string `json:"issuer,omitempty"` 5896 // RawData - Raw certificate data. 5897 RawData *string `json:"rawData,omitempty"` 5898} 5899 5900// CertificateEmail SSL certificate email. 5901type CertificateEmail struct { 5902 // CertificateEmailProperties - CertificateEmail resource specific properties 5903 *CertificateEmailProperties `json:"properties,omitempty"` 5904 // ID - Resource Id. 5905 ID *string `json:"id,omitempty"` 5906 // Name - Resource Name. 5907 Name *string `json:"name,omitempty"` 5908 // Kind - Kind of resource. 5909 Kind *string `json:"kind,omitempty"` 5910 // Type - Resource type. 5911 Type *string `json:"type,omitempty"` 5912} 5913 5914// MarshalJSON is the custom marshaler for CertificateEmail. 5915func (ce CertificateEmail) MarshalJSON() ([]byte, error) { 5916 objectMap := make(map[string]interface{}) 5917 if ce.CertificateEmailProperties != nil { 5918 objectMap["properties"] = ce.CertificateEmailProperties 5919 } 5920 if ce.ID != nil { 5921 objectMap["id"] = ce.ID 5922 } 5923 if ce.Name != nil { 5924 objectMap["name"] = ce.Name 5925 } 5926 if ce.Kind != nil { 5927 objectMap["kind"] = ce.Kind 5928 } 5929 if ce.Type != nil { 5930 objectMap["type"] = ce.Type 5931 } 5932 return json.Marshal(objectMap) 5933} 5934 5935// UnmarshalJSON is the custom unmarshaler for CertificateEmail struct. 5936func (ce *CertificateEmail) UnmarshalJSON(body []byte) error { 5937 var m map[string]*json.RawMessage 5938 err := json.Unmarshal(body, &m) 5939 if err != nil { 5940 return err 5941 } 5942 for k, v := range m { 5943 switch k { 5944 case "properties": 5945 if v != nil { 5946 var certificateEmailProperties CertificateEmailProperties 5947 err = json.Unmarshal(*v, &certificateEmailProperties) 5948 if err != nil { 5949 return err 5950 } 5951 ce.CertificateEmailProperties = &certificateEmailProperties 5952 } 5953 case "id": 5954 if v != nil { 5955 var ID string 5956 err = json.Unmarshal(*v, &ID) 5957 if err != nil { 5958 return err 5959 } 5960 ce.ID = &ID 5961 } 5962 case "name": 5963 if v != nil { 5964 var name string 5965 err = json.Unmarshal(*v, &name) 5966 if err != nil { 5967 return err 5968 } 5969 ce.Name = &name 5970 } 5971 case "kind": 5972 if v != nil { 5973 var kind string 5974 err = json.Unmarshal(*v, &kind) 5975 if err != nil { 5976 return err 5977 } 5978 ce.Kind = &kind 5979 } 5980 case "type": 5981 if v != nil { 5982 var typeVar string 5983 err = json.Unmarshal(*v, &typeVar) 5984 if err != nil { 5985 return err 5986 } 5987 ce.Type = &typeVar 5988 } 5989 } 5990 } 5991 5992 return nil 5993} 5994 5995// CertificateEmailProperties certificateEmail resource specific properties 5996type CertificateEmailProperties struct { 5997 // EmailID - Email id. 5998 EmailID *string `json:"emailId,omitempty"` 5999 // TimeStamp - Time stamp. 6000 TimeStamp *date.Time `json:"timeStamp,omitempty"` 6001} 6002 6003// CertificateOrderAction certificate order action. 6004type CertificateOrderAction struct { 6005 // CertificateOrderActionProperties - CertificateOrderAction resource specific properties 6006 *CertificateOrderActionProperties `json:"properties,omitempty"` 6007 // ID - Resource Id. 6008 ID *string `json:"id,omitempty"` 6009 // Name - Resource Name. 6010 Name *string `json:"name,omitempty"` 6011 // Kind - Kind of resource. 6012 Kind *string `json:"kind,omitempty"` 6013 // Type - Resource type. 6014 Type *string `json:"type,omitempty"` 6015} 6016 6017// MarshalJSON is the custom marshaler for CertificateOrderAction. 6018func (coa CertificateOrderAction) MarshalJSON() ([]byte, error) { 6019 objectMap := make(map[string]interface{}) 6020 if coa.CertificateOrderActionProperties != nil { 6021 objectMap["properties"] = coa.CertificateOrderActionProperties 6022 } 6023 if coa.ID != nil { 6024 objectMap["id"] = coa.ID 6025 } 6026 if coa.Name != nil { 6027 objectMap["name"] = coa.Name 6028 } 6029 if coa.Kind != nil { 6030 objectMap["kind"] = coa.Kind 6031 } 6032 if coa.Type != nil { 6033 objectMap["type"] = coa.Type 6034 } 6035 return json.Marshal(objectMap) 6036} 6037 6038// UnmarshalJSON is the custom unmarshaler for CertificateOrderAction struct. 6039func (coa *CertificateOrderAction) UnmarshalJSON(body []byte) error { 6040 var m map[string]*json.RawMessage 6041 err := json.Unmarshal(body, &m) 6042 if err != nil { 6043 return err 6044 } 6045 for k, v := range m { 6046 switch k { 6047 case "properties": 6048 if v != nil { 6049 var certificateOrderActionProperties CertificateOrderActionProperties 6050 err = json.Unmarshal(*v, &certificateOrderActionProperties) 6051 if err != nil { 6052 return err 6053 } 6054 coa.CertificateOrderActionProperties = &certificateOrderActionProperties 6055 } 6056 case "id": 6057 if v != nil { 6058 var ID string 6059 err = json.Unmarshal(*v, &ID) 6060 if err != nil { 6061 return err 6062 } 6063 coa.ID = &ID 6064 } 6065 case "name": 6066 if v != nil { 6067 var name string 6068 err = json.Unmarshal(*v, &name) 6069 if err != nil { 6070 return err 6071 } 6072 coa.Name = &name 6073 } 6074 case "kind": 6075 if v != nil { 6076 var kind string 6077 err = json.Unmarshal(*v, &kind) 6078 if err != nil { 6079 return err 6080 } 6081 coa.Kind = &kind 6082 } 6083 case "type": 6084 if v != nil { 6085 var typeVar string 6086 err = json.Unmarshal(*v, &typeVar) 6087 if err != nil { 6088 return err 6089 } 6090 coa.Type = &typeVar 6091 } 6092 } 6093 } 6094 6095 return nil 6096} 6097 6098// CertificateOrderActionProperties certificateOrderAction resource specific properties 6099type CertificateOrderActionProperties struct { 6100 // Type - Action type. Possible values include: 'CertificateIssued', 'CertificateOrderCanceled', 'CertificateOrderCreated', 'CertificateRevoked', 'DomainValidationComplete', 'FraudDetected', 'OrgNameChange', 'OrgValidationComplete', 'SanDrop', 'FraudCleared', 'CertificateExpired', 'CertificateExpirationWarning', 'FraudDocumentationRequired', 'Unknown' 6101 Type CertificateOrderActionType `json:"type,omitempty"` 6102 // CreatedAt - Time at which the certificate action was performed. 6103 CreatedAt *date.Time `json:"createdAt,omitempty"` 6104} 6105 6106// CertificatePatchResource ARM resource for a certificate. 6107type CertificatePatchResource struct { 6108 // CertificatePatchResourceProperties - CertificatePatchResource resource specific properties 6109 *CertificatePatchResourceProperties `json:"properties,omitempty"` 6110 // ID - Resource Id. 6111 ID *string `json:"id,omitempty"` 6112 // Name - Resource Name. 6113 Name *string `json:"name,omitempty"` 6114 // Kind - Kind of resource. 6115 Kind *string `json:"kind,omitempty"` 6116 // Type - Resource type. 6117 Type *string `json:"type,omitempty"` 6118} 6119 6120// MarshalJSON is the custom marshaler for CertificatePatchResource. 6121func (cpr CertificatePatchResource) MarshalJSON() ([]byte, error) { 6122 objectMap := make(map[string]interface{}) 6123 if cpr.CertificatePatchResourceProperties != nil { 6124 objectMap["properties"] = cpr.CertificatePatchResourceProperties 6125 } 6126 if cpr.ID != nil { 6127 objectMap["id"] = cpr.ID 6128 } 6129 if cpr.Name != nil { 6130 objectMap["name"] = cpr.Name 6131 } 6132 if cpr.Kind != nil { 6133 objectMap["kind"] = cpr.Kind 6134 } 6135 if cpr.Type != nil { 6136 objectMap["type"] = cpr.Type 6137 } 6138 return json.Marshal(objectMap) 6139} 6140 6141// UnmarshalJSON is the custom unmarshaler for CertificatePatchResource struct. 6142func (cpr *CertificatePatchResource) UnmarshalJSON(body []byte) error { 6143 var m map[string]*json.RawMessage 6144 err := json.Unmarshal(body, &m) 6145 if err != nil { 6146 return err 6147 } 6148 for k, v := range m { 6149 switch k { 6150 case "properties": 6151 if v != nil { 6152 var certificatePatchResourceProperties CertificatePatchResourceProperties 6153 err = json.Unmarshal(*v, &certificatePatchResourceProperties) 6154 if err != nil { 6155 return err 6156 } 6157 cpr.CertificatePatchResourceProperties = &certificatePatchResourceProperties 6158 } 6159 case "id": 6160 if v != nil { 6161 var ID string 6162 err = json.Unmarshal(*v, &ID) 6163 if err != nil { 6164 return err 6165 } 6166 cpr.ID = &ID 6167 } 6168 case "name": 6169 if v != nil { 6170 var name string 6171 err = json.Unmarshal(*v, &name) 6172 if err != nil { 6173 return err 6174 } 6175 cpr.Name = &name 6176 } 6177 case "kind": 6178 if v != nil { 6179 var kind string 6180 err = json.Unmarshal(*v, &kind) 6181 if err != nil { 6182 return err 6183 } 6184 cpr.Kind = &kind 6185 } 6186 case "type": 6187 if v != nil { 6188 var typeVar string 6189 err = json.Unmarshal(*v, &typeVar) 6190 if err != nil { 6191 return err 6192 } 6193 cpr.Type = &typeVar 6194 } 6195 } 6196 } 6197 6198 return nil 6199} 6200 6201// CertificatePatchResourceProperties certificatePatchResource resource specific properties 6202type CertificatePatchResourceProperties struct { 6203 // FriendlyName - Friendly name of the certificate. 6204 FriendlyName *string `json:"friendlyName,omitempty"` 6205 // SubjectName - Subject name of the certificate. 6206 SubjectName *string `json:"subjectName,omitempty"` 6207 // HostNames - Host names the certificate applies to. 6208 HostNames *[]string `json:"hostNames,omitempty"` 6209 // PfxBlob - Pfx blob. 6210 PfxBlob *[]byte `json:"pfxBlob,omitempty"` 6211 // SiteName - App name. 6212 SiteName *string `json:"siteName,omitempty"` 6213 // SelfLink - Self link. 6214 SelfLink *string `json:"selfLink,omitempty"` 6215 // Issuer - Certificate issuer. 6216 Issuer *string `json:"issuer,omitempty"` 6217 // IssueDate - Certificate issue Date. 6218 IssueDate *date.Time `json:"issueDate,omitempty"` 6219 // ExpirationDate - Certificate expriration date. 6220 ExpirationDate *date.Time `json:"expirationDate,omitempty"` 6221 // Password - Certificate password. 6222 Password *string `json:"password,omitempty"` 6223 // Thumbprint - Certificate thumbprint. 6224 Thumbprint *string `json:"thumbprint,omitempty"` 6225 // Valid - Is the certificate valid?. 6226 Valid *bool `json:"valid,omitempty"` 6227 // CerBlob - Raw bytes of .cer file 6228 CerBlob *[]byte `json:"cerBlob,omitempty"` 6229 // PublicKeyHash - Public key hash. 6230 PublicKeyHash *string `json:"publicKeyHash,omitempty"` 6231 // HostingEnvironmentProfile - Specification for the App Service Environment to use for the certificate. 6232 HostingEnvironmentProfile *HostingEnvironmentProfile `json:"hostingEnvironmentProfile,omitempty"` 6233 // KeyVaultID - Key Vault Csm resource Id. 6234 KeyVaultID *string `json:"keyVaultId,omitempty"` 6235 // KeyVaultSecretName - Key Vault secret name. 6236 KeyVaultSecretName *string `json:"keyVaultSecretName,omitempty"` 6237 // KeyVaultSecretStatus - Status of the Key Vault secret. Possible values include: 'KeyVaultSecretStatusInitialized', 'KeyVaultSecretStatusWaitingOnCertificateOrder', 'KeyVaultSecretStatusSucceeded', 'KeyVaultSecretStatusCertificateOrderFailed', 'KeyVaultSecretStatusOperationNotPermittedOnKeyVault', 'KeyVaultSecretStatusAzureServiceUnauthorizedToAccessKeyVault', 'KeyVaultSecretStatusKeyVaultDoesNotExist', 'KeyVaultSecretStatusKeyVaultSecretDoesNotExist', 'KeyVaultSecretStatusUnknownError', 'KeyVaultSecretStatusExternalPrivateKey', 'KeyVaultSecretStatusUnknown' 6238 KeyVaultSecretStatus KeyVaultSecretStatus `json:"keyVaultSecretStatus,omitempty"` 6239 // GeoRegion - Region of the certificate. 6240 GeoRegion *string `json:"geoRegion,omitempty"` 6241 // ServerFarmID - Resource ID of the associated App Service plan, formatted as: "/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}". 6242 ServerFarmID *string `json:"serverFarmId,omitempty"` 6243} 6244 6245// CertificateProperties certificate resource specific properties 6246type CertificateProperties struct { 6247 // FriendlyName - Friendly name of the certificate. 6248 FriendlyName *string `json:"friendlyName,omitempty"` 6249 // SubjectName - Subject name of the certificate. 6250 SubjectName *string `json:"subjectName,omitempty"` 6251 // HostNames - Host names the certificate applies to. 6252 HostNames *[]string `json:"hostNames,omitempty"` 6253 // PfxBlob - Pfx blob. 6254 PfxBlob *[]byte `json:"pfxBlob,omitempty"` 6255 // SiteName - App name. 6256 SiteName *string `json:"siteName,omitempty"` 6257 // SelfLink - Self link. 6258 SelfLink *string `json:"selfLink,omitempty"` 6259 // Issuer - Certificate issuer. 6260 Issuer *string `json:"issuer,omitempty"` 6261 // IssueDate - Certificate issue Date. 6262 IssueDate *date.Time `json:"issueDate,omitempty"` 6263 // ExpirationDate - Certificate expriration date. 6264 ExpirationDate *date.Time `json:"expirationDate,omitempty"` 6265 // Password - Certificate password. 6266 Password *string `json:"password,omitempty"` 6267 // Thumbprint - Certificate thumbprint. 6268 Thumbprint *string `json:"thumbprint,omitempty"` 6269 // Valid - Is the certificate valid?. 6270 Valid *bool `json:"valid,omitempty"` 6271 // CerBlob - Raw bytes of .cer file 6272 CerBlob *[]byte `json:"cerBlob,omitempty"` 6273 // PublicKeyHash - Public key hash. 6274 PublicKeyHash *string `json:"publicKeyHash,omitempty"` 6275 // HostingEnvironmentProfile - Specification for the App Service Environment to use for the certificate. 6276 HostingEnvironmentProfile *HostingEnvironmentProfile `json:"hostingEnvironmentProfile,omitempty"` 6277 // KeyVaultID - Key Vault Csm resource Id. 6278 KeyVaultID *string `json:"keyVaultId,omitempty"` 6279 // KeyVaultSecretName - Key Vault secret name. 6280 KeyVaultSecretName *string `json:"keyVaultSecretName,omitempty"` 6281 // KeyVaultSecretStatus - Status of the Key Vault secret. Possible values include: 'KeyVaultSecretStatusInitialized', 'KeyVaultSecretStatusWaitingOnCertificateOrder', 'KeyVaultSecretStatusSucceeded', 'KeyVaultSecretStatusCertificateOrderFailed', 'KeyVaultSecretStatusOperationNotPermittedOnKeyVault', 'KeyVaultSecretStatusAzureServiceUnauthorizedToAccessKeyVault', 'KeyVaultSecretStatusKeyVaultDoesNotExist', 'KeyVaultSecretStatusKeyVaultSecretDoesNotExist', 'KeyVaultSecretStatusUnknownError', 'KeyVaultSecretStatusExternalPrivateKey', 'KeyVaultSecretStatusUnknown' 6282 KeyVaultSecretStatus KeyVaultSecretStatus `json:"keyVaultSecretStatus,omitempty"` 6283 // GeoRegion - Region of the certificate. 6284 GeoRegion *string `json:"geoRegion,omitempty"` 6285 // ServerFarmID - Resource ID of the associated App Service plan, formatted as: "/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}". 6286 ServerFarmID *string `json:"serverFarmId,omitempty"` 6287} 6288 6289// CloningInfo information needed for cloning operation. 6290type CloningInfo struct { 6291 // CorrelationID - Correlation ID of cloning operation. This ID ties multiple cloning operations 6292 // together to use the same snapshot. 6293 CorrelationID *uuid.UUID `json:"correlationId,omitempty"` 6294 // Overwrite - <code>true</code> to overwrite destination app; otherwise, <code>false</code>. 6295 Overwrite *bool `json:"overwrite,omitempty"` 6296 // CloneCustomHostNames - <code>true</code> to clone custom hostnames from source app; otherwise, <code>false</code>. 6297 CloneCustomHostNames *bool `json:"cloneCustomHostNames,omitempty"` 6298 // CloneSourceControl - <code>true</code> to clone source control from source app; otherwise, <code>false</code>. 6299 CloneSourceControl *bool `json:"cloneSourceControl,omitempty"` 6300 // SourceWebAppID - ARM resource ID of the source app. App resource ID is of the form 6301 // /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName} for production slots and 6302 // /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slotName} for other slots. 6303 SourceWebAppID *string `json:"sourceWebAppId,omitempty"` 6304 // HostingEnvironment - App Service Environment. 6305 HostingEnvironment *string `json:"hostingEnvironment,omitempty"` 6306 // AppSettingsOverrides - Application setting overrides for cloned app. If specified, these settings override the settings cloned 6307 // from source app. Otherwise, application settings from source app are retained. 6308 AppSettingsOverrides map[string]*string `json:"appSettingsOverrides"` 6309 // ConfigureLoadBalancing - <code>true</code> to configure load balancing for source and destination app. 6310 ConfigureLoadBalancing *bool `json:"configureLoadBalancing,omitempty"` 6311 // TrafficManagerProfileID - ARM resource ID of the Traffic Manager profile to use, if it exists. Traffic Manager resource ID is of the form 6312 // /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficManagerProfiles/{profileName}. 6313 TrafficManagerProfileID *string `json:"trafficManagerProfileId,omitempty"` 6314 // TrafficManagerProfileName - Name of Traffic Manager profile to create. This is only needed if Traffic Manager profile does not already exist. 6315 TrafficManagerProfileName *string `json:"trafficManagerProfileName,omitempty"` 6316 // IgnoreQuotas - <code>true</code> if quotas should be ignored; otherwise, <code>false</code>. 6317 IgnoreQuotas *bool `json:"ignoreQuotas,omitempty"` 6318} 6319 6320// MarshalJSON is the custom marshaler for CloningInfo. 6321func (ci CloningInfo) MarshalJSON() ([]byte, error) { 6322 objectMap := make(map[string]interface{}) 6323 if ci.CorrelationID != nil { 6324 objectMap["correlationId"] = ci.CorrelationID 6325 } 6326 if ci.Overwrite != nil { 6327 objectMap["overwrite"] = ci.Overwrite 6328 } 6329 if ci.CloneCustomHostNames != nil { 6330 objectMap["cloneCustomHostNames"] = ci.CloneCustomHostNames 6331 } 6332 if ci.CloneSourceControl != nil { 6333 objectMap["cloneSourceControl"] = ci.CloneSourceControl 6334 } 6335 if ci.SourceWebAppID != nil { 6336 objectMap["sourceWebAppId"] = ci.SourceWebAppID 6337 } 6338 if ci.HostingEnvironment != nil { 6339 objectMap["hostingEnvironment"] = ci.HostingEnvironment 6340 } 6341 if ci.AppSettingsOverrides != nil { 6342 objectMap["appSettingsOverrides"] = ci.AppSettingsOverrides 6343 } 6344 if ci.ConfigureLoadBalancing != nil { 6345 objectMap["configureLoadBalancing"] = ci.ConfigureLoadBalancing 6346 } 6347 if ci.TrafficManagerProfileID != nil { 6348 objectMap["trafficManagerProfileId"] = ci.TrafficManagerProfileID 6349 } 6350 if ci.TrafficManagerProfileName != nil { 6351 objectMap["trafficManagerProfileName"] = ci.TrafficManagerProfileName 6352 } 6353 if ci.IgnoreQuotas != nil { 6354 objectMap["ignoreQuotas"] = ci.IgnoreQuotas 6355 } 6356 return json.Marshal(objectMap) 6357} 6358 6359// ConnectionStringDictionary string dictionary resource. 6360type ConnectionStringDictionary struct { 6361 autorest.Response `json:"-"` 6362 // Properties - Connection strings. 6363 Properties map[string]*ConnStringValueTypePair `json:"properties"` 6364 // ID - Resource Id. 6365 ID *string `json:"id,omitempty"` 6366 // Name - Resource Name. 6367 Name *string `json:"name,omitempty"` 6368 // Kind - Kind of resource. 6369 Kind *string `json:"kind,omitempty"` 6370 // Type - Resource type. 6371 Type *string `json:"type,omitempty"` 6372} 6373 6374// MarshalJSON is the custom marshaler for ConnectionStringDictionary. 6375func (csd ConnectionStringDictionary) MarshalJSON() ([]byte, error) { 6376 objectMap := make(map[string]interface{}) 6377 if csd.Properties != nil { 6378 objectMap["properties"] = csd.Properties 6379 } 6380 if csd.ID != nil { 6381 objectMap["id"] = csd.ID 6382 } 6383 if csd.Name != nil { 6384 objectMap["name"] = csd.Name 6385 } 6386 if csd.Kind != nil { 6387 objectMap["kind"] = csd.Kind 6388 } 6389 if csd.Type != nil { 6390 objectMap["type"] = csd.Type 6391 } 6392 return json.Marshal(objectMap) 6393} 6394 6395// ConnStringInfo database connection string information. 6396type ConnStringInfo struct { 6397 // Name - Name of connection string. 6398 Name *string `json:"name,omitempty"` 6399 // ConnectionString - Connection string value. 6400 ConnectionString *string `json:"connectionString,omitempty"` 6401 // Type - Type of database. Possible values include: 'MySQL', 'SQLServer', 'SQLAzure', 'Custom', 'NotificationHub', 'ServiceBus', 'EventHub', 'APIHub', 'DocDb', 'RedisCache', 'PostgreSQL' 6402 Type ConnectionStringType `json:"type,omitempty"` 6403} 6404 6405// ConnStringValueTypePair database connection string value to type pair. 6406type ConnStringValueTypePair struct { 6407 // Value - Value of pair. 6408 Value *string `json:"value,omitempty"` 6409 // Type - Type of database. Possible values include: 'MySQL', 'SQLServer', 'SQLAzure', 'Custom', 'NotificationHub', 'ServiceBus', 'EventHub', 'APIHub', 'DocDb', 'RedisCache', 'PostgreSQL' 6410 Type ConnectionStringType `json:"type,omitempty"` 6411} 6412 6413// Contact contact information for domain registration. If 'Domain Privacy' option is not selected then the contact 6414// information is made publicly available through the Whois 6415// directories as per ICANN requirements. 6416type Contact struct { 6417 // AddressMailing - Mailing address. 6418 AddressMailing *Address `json:"addressMailing,omitempty"` 6419 // Email - Email address. 6420 Email *string `json:"email,omitempty"` 6421 // Fax - Fax number. 6422 Fax *string `json:"fax,omitempty"` 6423 // JobTitle - Job title. 6424 JobTitle *string `json:"jobTitle,omitempty"` 6425 // NameFirst - First name. 6426 NameFirst *string `json:"nameFirst,omitempty"` 6427 // NameLast - Last name. 6428 NameLast *string `json:"nameLast,omitempty"` 6429 // NameMiddle - Middle name. 6430 NameMiddle *string `json:"nameMiddle,omitempty"` 6431 // Organization - Organization contact belongs to. 6432 Organization *string `json:"organization,omitempty"` 6433 // Phone - Phone number. 6434 Phone *string `json:"phone,omitempty"` 6435} 6436 6437// ContinuousWebJob continuous Web Job Information. 6438type ContinuousWebJob struct { 6439 autorest.Response `json:"-"` 6440 // ContinuousWebJobProperties - ContinuousWebJob resource specific properties 6441 *ContinuousWebJobProperties `json:"properties,omitempty"` 6442 // ID - Resource Id. 6443 ID *string `json:"id,omitempty"` 6444 // Name - Resource Name. 6445 Name *string `json:"name,omitempty"` 6446 // Kind - Kind of resource. 6447 Kind *string `json:"kind,omitempty"` 6448 // Type - Resource type. 6449 Type *string `json:"type,omitempty"` 6450} 6451 6452// MarshalJSON is the custom marshaler for ContinuousWebJob. 6453func (cwj ContinuousWebJob) MarshalJSON() ([]byte, error) { 6454 objectMap := make(map[string]interface{}) 6455 if cwj.ContinuousWebJobProperties != nil { 6456 objectMap["properties"] = cwj.ContinuousWebJobProperties 6457 } 6458 if cwj.ID != nil { 6459 objectMap["id"] = cwj.ID 6460 } 6461 if cwj.Name != nil { 6462 objectMap["name"] = cwj.Name 6463 } 6464 if cwj.Kind != nil { 6465 objectMap["kind"] = cwj.Kind 6466 } 6467 if cwj.Type != nil { 6468 objectMap["type"] = cwj.Type 6469 } 6470 return json.Marshal(objectMap) 6471} 6472 6473// UnmarshalJSON is the custom unmarshaler for ContinuousWebJob struct. 6474func (cwj *ContinuousWebJob) UnmarshalJSON(body []byte) error { 6475 var m map[string]*json.RawMessage 6476 err := json.Unmarshal(body, &m) 6477 if err != nil { 6478 return err 6479 } 6480 for k, v := range m { 6481 switch k { 6482 case "properties": 6483 if v != nil { 6484 var continuousWebJobProperties ContinuousWebJobProperties 6485 err = json.Unmarshal(*v, &continuousWebJobProperties) 6486 if err != nil { 6487 return err 6488 } 6489 cwj.ContinuousWebJobProperties = &continuousWebJobProperties 6490 } 6491 case "id": 6492 if v != nil { 6493 var ID string 6494 err = json.Unmarshal(*v, &ID) 6495 if err != nil { 6496 return err 6497 } 6498 cwj.ID = &ID 6499 } 6500 case "name": 6501 if v != nil { 6502 var name string 6503 err = json.Unmarshal(*v, &name) 6504 if err != nil { 6505 return err 6506 } 6507 cwj.Name = &name 6508 } 6509 case "kind": 6510 if v != nil { 6511 var kind string 6512 err = json.Unmarshal(*v, &kind) 6513 if err != nil { 6514 return err 6515 } 6516 cwj.Kind = &kind 6517 } 6518 case "type": 6519 if v != nil { 6520 var typeVar string 6521 err = json.Unmarshal(*v, &typeVar) 6522 if err != nil { 6523 return err 6524 } 6525 cwj.Type = &typeVar 6526 } 6527 } 6528 } 6529 6530 return nil 6531} 6532 6533// ContinuousWebJobCollection collection of Kudu continuous web job information elements. 6534type ContinuousWebJobCollection struct { 6535 autorest.Response `json:"-"` 6536 // Value - Collection of resources. 6537 Value *[]ContinuousWebJob `json:"value,omitempty"` 6538 // NextLink - Link to next page of resources. 6539 NextLink *string `json:"nextLink,omitempty"` 6540} 6541 6542// ContinuousWebJobCollectionIterator provides access to a complete listing of ContinuousWebJob values. 6543type ContinuousWebJobCollectionIterator struct { 6544 i int 6545 page ContinuousWebJobCollectionPage 6546} 6547 6548// Next advances to the next value. If there was an error making 6549// the request the iterator does not advance and the error is returned. 6550func (iter *ContinuousWebJobCollectionIterator) Next() error { 6551 iter.i++ 6552 if iter.i < len(iter.page.Values()) { 6553 return nil 6554 } 6555 err := iter.page.Next() 6556 if err != nil { 6557 iter.i-- 6558 return err 6559 } 6560 iter.i = 0 6561 return nil 6562} 6563 6564// NotDone returns true if the enumeration should be started or is not yet complete. 6565func (iter ContinuousWebJobCollectionIterator) NotDone() bool { 6566 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 6567} 6568 6569// Response returns the raw server response from the last page request. 6570func (iter ContinuousWebJobCollectionIterator) Response() ContinuousWebJobCollection { 6571 return iter.page.Response() 6572} 6573 6574// Value returns the current value or a zero-initialized value if the 6575// iterator has advanced beyond the end of the collection. 6576func (iter ContinuousWebJobCollectionIterator) Value() ContinuousWebJob { 6577 if !iter.page.NotDone() { 6578 return ContinuousWebJob{} 6579 } 6580 return iter.page.Values()[iter.i] 6581} 6582 6583// IsEmpty returns true if the ListResult contains no values. 6584func (cwjc ContinuousWebJobCollection) IsEmpty() bool { 6585 return cwjc.Value == nil || len(*cwjc.Value) == 0 6586} 6587 6588// continuousWebJobCollectionPreparer prepares a request to retrieve the next set of results. 6589// It returns nil if no more results exist. 6590func (cwjc ContinuousWebJobCollection) continuousWebJobCollectionPreparer() (*http.Request, error) { 6591 if cwjc.NextLink == nil || len(to.String(cwjc.NextLink)) < 1 { 6592 return nil, nil 6593 } 6594 return autorest.Prepare(&http.Request{}, 6595 autorest.AsJSON(), 6596 autorest.AsGet(), 6597 autorest.WithBaseURL(to.String(cwjc.NextLink))) 6598} 6599 6600// ContinuousWebJobCollectionPage contains a page of ContinuousWebJob values. 6601type ContinuousWebJobCollectionPage struct { 6602 fn func(ContinuousWebJobCollection) (ContinuousWebJobCollection, error) 6603 cwjc ContinuousWebJobCollection 6604} 6605 6606// Next advances to the next page of values. If there was an error making 6607// the request the page does not advance and the error is returned. 6608func (page *ContinuousWebJobCollectionPage) Next() error { 6609 next, err := page.fn(page.cwjc) 6610 if err != nil { 6611 return err 6612 } 6613 page.cwjc = next 6614 return nil 6615} 6616 6617// NotDone returns true if the page enumeration should be started or is not yet complete. 6618func (page ContinuousWebJobCollectionPage) NotDone() bool { 6619 return !page.cwjc.IsEmpty() 6620} 6621 6622// Response returns the raw server response from the last page request. 6623func (page ContinuousWebJobCollectionPage) Response() ContinuousWebJobCollection { 6624 return page.cwjc 6625} 6626 6627// Values returns the slice of values for the current page or nil if there are no values. 6628func (page ContinuousWebJobCollectionPage) Values() []ContinuousWebJob { 6629 if page.cwjc.IsEmpty() { 6630 return nil 6631 } 6632 return *page.cwjc.Value 6633} 6634 6635// ContinuousWebJobProperties continuousWebJob resource specific properties 6636type ContinuousWebJobProperties struct { 6637 // Status - Job status. Possible values include: 'Initializing', 'Starting', 'Running', 'PendingRestart', 'Stopped' 6638 Status ContinuousWebJobStatus `json:"status,omitempty"` 6639 // DetailedStatus - Detailed status. 6640 DetailedStatus *string `json:"detailedStatus,omitempty"` 6641 // LogURL - Log URL. 6642 LogURL *string `json:"logUrl,omitempty"` 6643 // Name - Job name. Used as job identifier in ARM resource URI. 6644 Name *string `json:"name,omitempty"` 6645 // RunCommand - Run command. 6646 RunCommand *string `json:"runCommand,omitempty"` 6647 // URL - Job URL. 6648 URL *string `json:"url,omitempty"` 6649 // ExtraInfoURL - Extra Info URL. 6650 ExtraInfoURL *string `json:"extraInfoUrl,omitempty"` 6651 // JobType - Job type. Possible values include: 'Continuous', 'Triggered' 6652 JobType JobType `json:"jobType,omitempty"` 6653 // Error - Error information. 6654 Error *string `json:"error,omitempty"` 6655 // UsingSdk - Using SDK? 6656 UsingSdk *bool `json:"usingSdk,omitempty"` 6657 // Settings - Job settings. 6658 Settings map[string]interface{} `json:"settings"` 6659} 6660 6661// MarshalJSON is the custom marshaler for ContinuousWebJobProperties. 6662func (cwj ContinuousWebJobProperties) MarshalJSON() ([]byte, error) { 6663 objectMap := make(map[string]interface{}) 6664 if cwj.Status != "" { 6665 objectMap["status"] = cwj.Status 6666 } 6667 if cwj.DetailedStatus != nil { 6668 objectMap["detailedStatus"] = cwj.DetailedStatus 6669 } 6670 if cwj.LogURL != nil { 6671 objectMap["logUrl"] = cwj.LogURL 6672 } 6673 if cwj.Name != nil { 6674 objectMap["name"] = cwj.Name 6675 } 6676 if cwj.RunCommand != nil { 6677 objectMap["runCommand"] = cwj.RunCommand 6678 } 6679 if cwj.URL != nil { 6680 objectMap["url"] = cwj.URL 6681 } 6682 if cwj.ExtraInfoURL != nil { 6683 objectMap["extraInfoUrl"] = cwj.ExtraInfoURL 6684 } 6685 if cwj.JobType != "" { 6686 objectMap["jobType"] = cwj.JobType 6687 } 6688 if cwj.Error != nil { 6689 objectMap["error"] = cwj.Error 6690 } 6691 if cwj.UsingSdk != nil { 6692 objectMap["usingSdk"] = cwj.UsingSdk 6693 } 6694 if cwj.Settings != nil { 6695 objectMap["settings"] = cwj.Settings 6696 } 6697 return json.Marshal(objectMap) 6698} 6699 6700// CorsSettings cross-Origin Resource Sharing (CORS) settings for the app. 6701type CorsSettings struct { 6702 // AllowedOrigins - Gets or sets the list of origins that should be allowed to make cross-origin 6703 // calls (for example: http://example.com:12345). Use "*" to allow all. 6704 AllowedOrigins *[]string `json:"allowedOrigins,omitempty"` 6705} 6706 6707// CsmMoveResourceEnvelope object with a list of the resources that need to be moved and the resource group they 6708// should be moved to. 6709type CsmMoveResourceEnvelope struct { 6710 TargetResourceGroup *string `json:"targetResourceGroup,omitempty"` 6711 Resources *[]string `json:"resources,omitempty"` 6712} 6713 6714// CsmOperationCollection collection of Azure resource manager operation metadata. 6715type CsmOperationCollection struct { 6716 autorest.Response `json:"-"` 6717 // Value - Collection of resources. 6718 Value *[]CsmOperationDescription `json:"value,omitempty"` 6719 // NextLink - Link to next page of resources. 6720 NextLink *string `json:"nextLink,omitempty"` 6721} 6722 6723// CsmOperationCollectionIterator provides access to a complete listing of CsmOperationDescription values. 6724type CsmOperationCollectionIterator struct { 6725 i int 6726 page CsmOperationCollectionPage 6727} 6728 6729// Next advances to the next value. If there was an error making 6730// the request the iterator does not advance and the error is returned. 6731func (iter *CsmOperationCollectionIterator) Next() error { 6732 iter.i++ 6733 if iter.i < len(iter.page.Values()) { 6734 return nil 6735 } 6736 err := iter.page.Next() 6737 if err != nil { 6738 iter.i-- 6739 return err 6740 } 6741 iter.i = 0 6742 return nil 6743} 6744 6745// NotDone returns true if the enumeration should be started or is not yet complete. 6746func (iter CsmOperationCollectionIterator) NotDone() bool { 6747 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 6748} 6749 6750// Response returns the raw server response from the last page request. 6751func (iter CsmOperationCollectionIterator) Response() CsmOperationCollection { 6752 return iter.page.Response() 6753} 6754 6755// Value returns the current value or a zero-initialized value if the 6756// iterator has advanced beyond the end of the collection. 6757func (iter CsmOperationCollectionIterator) Value() CsmOperationDescription { 6758 if !iter.page.NotDone() { 6759 return CsmOperationDescription{} 6760 } 6761 return iter.page.Values()[iter.i] 6762} 6763 6764// IsEmpty returns true if the ListResult contains no values. 6765func (coc CsmOperationCollection) IsEmpty() bool { 6766 return coc.Value == nil || len(*coc.Value) == 0 6767} 6768 6769// csmOperationCollectionPreparer prepares a request to retrieve the next set of results. 6770// It returns nil if no more results exist. 6771func (coc CsmOperationCollection) csmOperationCollectionPreparer() (*http.Request, error) { 6772 if coc.NextLink == nil || len(to.String(coc.NextLink)) < 1 { 6773 return nil, nil 6774 } 6775 return autorest.Prepare(&http.Request{}, 6776 autorest.AsJSON(), 6777 autorest.AsGet(), 6778 autorest.WithBaseURL(to.String(coc.NextLink))) 6779} 6780 6781// CsmOperationCollectionPage contains a page of CsmOperationDescription values. 6782type CsmOperationCollectionPage struct { 6783 fn func(CsmOperationCollection) (CsmOperationCollection, error) 6784 coc CsmOperationCollection 6785} 6786 6787// Next advances to the next page of values. If there was an error making 6788// the request the page does not advance and the error is returned. 6789func (page *CsmOperationCollectionPage) Next() error { 6790 next, err := page.fn(page.coc) 6791 if err != nil { 6792 return err 6793 } 6794 page.coc = next 6795 return nil 6796} 6797 6798// NotDone returns true if the page enumeration should be started or is not yet complete. 6799func (page CsmOperationCollectionPage) NotDone() bool { 6800 return !page.coc.IsEmpty() 6801} 6802 6803// Response returns the raw server response from the last page request. 6804func (page CsmOperationCollectionPage) Response() CsmOperationCollection { 6805 return page.coc 6806} 6807 6808// Values returns the slice of values for the current page or nil if there are no values. 6809func (page CsmOperationCollectionPage) Values() []CsmOperationDescription { 6810 if page.coc.IsEmpty() { 6811 return nil 6812 } 6813 return *page.coc.Value 6814} 6815 6816// CsmOperationDescription description of an operation available for Microsoft.Web resource provider. 6817type CsmOperationDescription struct { 6818 Name *string `json:"name,omitempty"` 6819 Display *CsmOperationDisplay `json:"display,omitempty"` 6820 Origin *string `json:"origin,omitempty"` 6821 Properties *CsmOperationDescriptionProperties `json:"properties,omitempty"` 6822} 6823 6824// CsmOperationDescriptionProperties properties available for a Microsoft.Web resource provider operation. 6825type CsmOperationDescriptionProperties struct { 6826 ServiceSpecification *ServiceSpecification `json:"serviceSpecification,omitempty"` 6827} 6828 6829// CsmOperationDisplay meta data about operation used for display in portal. 6830type CsmOperationDisplay struct { 6831 Provider *string `json:"provider,omitempty"` 6832 Resource *string `json:"resource,omitempty"` 6833 Operation *string `json:"operation,omitempty"` 6834 Description *string `json:"description,omitempty"` 6835} 6836 6837// CsmPublishingProfileOptions publishing options for requested profile. 6838type CsmPublishingProfileOptions struct { 6839 // Format - Name of the format. Valid values are: 6840 // FileZilla3 6841 // WebDeploy -- default 6842 // Ftp. Possible values include: 'FileZilla3', 'WebDeploy', 'Ftp' 6843 Format PublishingProfileFormat `json:"format,omitempty"` 6844} 6845 6846// CsmSlotEntity deployment slot parameters. 6847type CsmSlotEntity struct { 6848 // TargetSlot - Destination deployment slot during swap operation. 6849 TargetSlot *string `json:"targetSlot,omitempty"` 6850 // PreserveVnet - <code>true</code> to preserve Virtual Network to the slot during swap; otherwise, <code>false</code>. 6851 PreserveVnet *bool `json:"preserveVnet,omitempty"` 6852} 6853 6854// CsmUsageQuota usage of the quota resource. 6855type CsmUsageQuota struct { 6856 // Unit - Units of measurement for the quota resourse. 6857 Unit *string `json:"unit,omitempty"` 6858 // NextResetTime - Next reset time for the resource counter. 6859 NextResetTime *date.Time `json:"nextResetTime,omitempty"` 6860 // CurrentValue - The current value of the resource counter. 6861 CurrentValue *int64 `json:"currentValue,omitempty"` 6862 // Limit - The resource limit. 6863 Limit *int64 `json:"limit,omitempty"` 6864 // Name - Quota name. 6865 Name *LocalizableString `json:"name,omitempty"` 6866} 6867 6868// CsmUsageQuotaCollection collection of CSM usage quotas. 6869type CsmUsageQuotaCollection struct { 6870 autorest.Response `json:"-"` 6871 // Value - Collection of resources. 6872 Value *[]CsmUsageQuota `json:"value,omitempty"` 6873 // NextLink - Link to next page of resources. 6874 NextLink *string `json:"nextLink,omitempty"` 6875} 6876 6877// CsmUsageQuotaCollectionIterator provides access to a complete listing of CsmUsageQuota values. 6878type CsmUsageQuotaCollectionIterator struct { 6879 i int 6880 page CsmUsageQuotaCollectionPage 6881} 6882 6883// Next advances to the next value. If there was an error making 6884// the request the iterator does not advance and the error is returned. 6885func (iter *CsmUsageQuotaCollectionIterator) Next() error { 6886 iter.i++ 6887 if iter.i < len(iter.page.Values()) { 6888 return nil 6889 } 6890 err := iter.page.Next() 6891 if err != nil { 6892 iter.i-- 6893 return err 6894 } 6895 iter.i = 0 6896 return nil 6897} 6898 6899// NotDone returns true if the enumeration should be started or is not yet complete. 6900func (iter CsmUsageQuotaCollectionIterator) NotDone() bool { 6901 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 6902} 6903 6904// Response returns the raw server response from the last page request. 6905func (iter CsmUsageQuotaCollectionIterator) Response() CsmUsageQuotaCollection { 6906 return iter.page.Response() 6907} 6908 6909// Value returns the current value or a zero-initialized value if the 6910// iterator has advanced beyond the end of the collection. 6911func (iter CsmUsageQuotaCollectionIterator) Value() CsmUsageQuota { 6912 if !iter.page.NotDone() { 6913 return CsmUsageQuota{} 6914 } 6915 return iter.page.Values()[iter.i] 6916} 6917 6918// IsEmpty returns true if the ListResult contains no values. 6919func (cuqc CsmUsageQuotaCollection) IsEmpty() bool { 6920 return cuqc.Value == nil || len(*cuqc.Value) == 0 6921} 6922 6923// csmUsageQuotaCollectionPreparer prepares a request to retrieve the next set of results. 6924// It returns nil if no more results exist. 6925func (cuqc CsmUsageQuotaCollection) csmUsageQuotaCollectionPreparer() (*http.Request, error) { 6926 if cuqc.NextLink == nil || len(to.String(cuqc.NextLink)) < 1 { 6927 return nil, nil 6928 } 6929 return autorest.Prepare(&http.Request{}, 6930 autorest.AsJSON(), 6931 autorest.AsGet(), 6932 autorest.WithBaseURL(to.String(cuqc.NextLink))) 6933} 6934 6935// CsmUsageQuotaCollectionPage contains a page of CsmUsageQuota values. 6936type CsmUsageQuotaCollectionPage struct { 6937 fn func(CsmUsageQuotaCollection) (CsmUsageQuotaCollection, error) 6938 cuqc CsmUsageQuotaCollection 6939} 6940 6941// Next advances to the next page of values. If there was an error making 6942// the request the page does not advance and the error is returned. 6943func (page *CsmUsageQuotaCollectionPage) Next() error { 6944 next, err := page.fn(page.cuqc) 6945 if err != nil { 6946 return err 6947 } 6948 page.cuqc = next 6949 return nil 6950} 6951 6952// NotDone returns true if the page enumeration should be started or is not yet complete. 6953func (page CsmUsageQuotaCollectionPage) NotDone() bool { 6954 return !page.cuqc.IsEmpty() 6955} 6956 6957// Response returns the raw server response from the last page request. 6958func (page CsmUsageQuotaCollectionPage) Response() CsmUsageQuotaCollection { 6959 return page.cuqc 6960} 6961 6962// Values returns the slice of values for the current page or nil if there are no values. 6963func (page CsmUsageQuotaCollectionPage) Values() []CsmUsageQuota { 6964 if page.cuqc.IsEmpty() { 6965 return nil 6966 } 6967 return *page.cuqc.Value 6968} 6969 6970// CustomHostnameAnalysisResult custom domain analysis. 6971type CustomHostnameAnalysisResult struct { 6972 autorest.Response `json:"-"` 6973 // CustomHostnameAnalysisResultProperties - CustomHostnameAnalysisResult resource specific properties 6974 *CustomHostnameAnalysisResultProperties `json:"properties,omitempty"` 6975 // ID - Resource Id. 6976 ID *string `json:"id,omitempty"` 6977 // Name - Resource Name. 6978 Name *string `json:"name,omitempty"` 6979 // Kind - Kind of resource. 6980 Kind *string `json:"kind,omitempty"` 6981 // Type - Resource type. 6982 Type *string `json:"type,omitempty"` 6983} 6984 6985// MarshalJSON is the custom marshaler for CustomHostnameAnalysisResult. 6986func (char CustomHostnameAnalysisResult) MarshalJSON() ([]byte, error) { 6987 objectMap := make(map[string]interface{}) 6988 if char.CustomHostnameAnalysisResultProperties != nil { 6989 objectMap["properties"] = char.CustomHostnameAnalysisResultProperties 6990 } 6991 if char.ID != nil { 6992 objectMap["id"] = char.ID 6993 } 6994 if char.Name != nil { 6995 objectMap["name"] = char.Name 6996 } 6997 if char.Kind != nil { 6998 objectMap["kind"] = char.Kind 6999 } 7000 if char.Type != nil { 7001 objectMap["type"] = char.Type 7002 } 7003 return json.Marshal(objectMap) 7004} 7005 7006// UnmarshalJSON is the custom unmarshaler for CustomHostnameAnalysisResult struct. 7007func (char *CustomHostnameAnalysisResult) UnmarshalJSON(body []byte) error { 7008 var m map[string]*json.RawMessage 7009 err := json.Unmarshal(body, &m) 7010 if err != nil { 7011 return err 7012 } 7013 for k, v := range m { 7014 switch k { 7015 case "properties": 7016 if v != nil { 7017 var customHostnameAnalysisResultProperties CustomHostnameAnalysisResultProperties 7018 err = json.Unmarshal(*v, &customHostnameAnalysisResultProperties) 7019 if err != nil { 7020 return err 7021 } 7022 char.CustomHostnameAnalysisResultProperties = &customHostnameAnalysisResultProperties 7023 } 7024 case "id": 7025 if v != nil { 7026 var ID string 7027 err = json.Unmarshal(*v, &ID) 7028 if err != nil { 7029 return err 7030 } 7031 char.ID = &ID 7032 } 7033 case "name": 7034 if v != nil { 7035 var name string 7036 err = json.Unmarshal(*v, &name) 7037 if err != nil { 7038 return err 7039 } 7040 char.Name = &name 7041 } 7042 case "kind": 7043 if v != nil { 7044 var kind string 7045 err = json.Unmarshal(*v, &kind) 7046 if err != nil { 7047 return err 7048 } 7049 char.Kind = &kind 7050 } 7051 case "type": 7052 if v != nil { 7053 var typeVar string 7054 err = json.Unmarshal(*v, &typeVar) 7055 if err != nil { 7056 return err 7057 } 7058 char.Type = &typeVar 7059 } 7060 } 7061 } 7062 7063 return nil 7064} 7065 7066// CustomHostnameAnalysisResultProperties customHostnameAnalysisResult resource specific properties 7067type CustomHostnameAnalysisResultProperties struct { 7068 // IsHostnameAlreadyVerified - <code>true</code> if hostname is already verified; otherwise, <code>false</code>. 7069 IsHostnameAlreadyVerified *bool `json:"isHostnameAlreadyVerified,omitempty"` 7070 // CustomDomainVerificationTest - DNS verification test result. Possible values include: 'DNSVerificationTestResultPassed', 'DNSVerificationTestResultFailed', 'DNSVerificationTestResultSkipped' 7071 CustomDomainVerificationTest DNSVerificationTestResult `json:"customDomainVerificationTest,omitempty"` 7072 // CustomDomainVerificationFailureInfo - Raw failure information if DNS verification fails. 7073 CustomDomainVerificationFailureInfo *ErrorEntity `json:"customDomainVerificationFailureInfo,omitempty"` 7074 // HasConflictOnScaleUnit - <code>true</code> if there is a conflict on a scale unit; otherwise, <code>false</code>. 7075 HasConflictOnScaleUnit *bool `json:"hasConflictOnScaleUnit,omitempty"` 7076 // HasConflictAcrossSubscription - <code>true</code> if htere is a conflict across subscriptions; otherwise, <code>false</code>. 7077 HasConflictAcrossSubscription *bool `json:"hasConflictAcrossSubscription,omitempty"` 7078 // ConflictingAppResourceID - Name of the conflicting app on scale unit if it's within the same subscription. 7079 ConflictingAppResourceID *string `json:"conflictingAppResourceId,omitempty"` 7080 // CNameRecords - CName records controller can see for this hostname. 7081 CNameRecords *[]string `json:"cNameRecords,omitempty"` 7082 // TxtRecords - TXT records controller can see for this hostname. 7083 TxtRecords *[]string `json:"txtRecords,omitempty"` 7084 // ARecords - A records controller can see for this hostname. 7085 ARecords *[]string `json:"aRecords,omitempty"` 7086 // AlternateCNameRecords - Alternate CName records controller can see for this hostname. 7087 AlternateCNameRecords *[]string `json:"alternateCNameRecords,omitempty"` 7088 // AlternateTxtRecords - Alternate TXT records controller can see for this hostname. 7089 AlternateTxtRecords *[]string `json:"alternateTxtRecords,omitempty"` 7090} 7091 7092// DatabaseBackupSetting database backup settings. 7093type DatabaseBackupSetting struct { 7094 // DatabaseType - Database type (e.g. SqlAzure / MySql). Possible values include: 'DatabaseTypeSQLAzure', 'DatabaseTypeMySQL', 'DatabaseTypeLocalMySQL', 'DatabaseTypePostgreSQL' 7095 DatabaseType DatabaseType `json:"databaseType,omitempty"` 7096 Name *string `json:"name,omitempty"` 7097 // ConnectionStringName - Contains a connection string name that is linked to the SiteConfig.ConnectionStrings. 7098 // This is used during restore with overwrite connection strings options. 7099 ConnectionStringName *string `json:"connectionStringName,omitempty"` 7100 // 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. 7101 ConnectionString *string `json:"connectionString,omitempty"` 7102} 7103 7104// DataSource class representing data source used by the detectors 7105type DataSource struct { 7106 // Instructions - Instrunctions if any for the data source 7107 Instructions *[]string `json:"instructions,omitempty"` 7108 // DataSourceURI - Datasource Uri Links 7109 DataSourceURI *[]NameValuePair `json:"dataSourceUri,omitempty"` 7110} 7111 7112// DataTableResponseColumn column definition 7113type DataTableResponseColumn struct { 7114 // ColumnName - Name of the column 7115 ColumnName *string `json:"columnName,omitempty"` 7116 // DataType - Data type which looks like 'String' or 'Int32'. 7117 DataType *string `json:"dataType,omitempty"` 7118 // ColumnType - Column Type 7119 ColumnType *string `json:"columnType,omitempty"` 7120} 7121 7122// DataTableResponseObject data Table which defines columns and raw row values 7123type DataTableResponseObject struct { 7124 // TableName - Name of the table 7125 TableName *string `json:"tableName,omitempty"` 7126 // Columns - List of columns with data types 7127 Columns *[]DataTableResponseColumn `json:"columns,omitempty"` 7128 // Rows - Raw row values 7129 Rows *[][]string `json:"rows,omitempty"` 7130} 7131 7132// DefaultErrorResponse app Service error response. 7133type DefaultErrorResponse struct { 7134 // Error - Error model. 7135 Error *DefaultErrorResponseError `json:"error,omitempty"` 7136} 7137 7138// DefaultErrorResponseError error model. 7139type DefaultErrorResponseError struct { 7140 // Code - Standardized string to programmatically identify the error. 7141 Code *string `json:"code,omitempty"` 7142 // Message - Detailed error description and debugging information. 7143 Message *string `json:"message,omitempty"` 7144 // Target - Detailed error description and debugging information. 7145 Target *string `json:"target,omitempty"` 7146 Details *[]DefaultErrorResponseErrorDetailsItem `json:"details,omitempty"` 7147 // Innererror - More information to debug error. 7148 Innererror *string `json:"innererror,omitempty"` 7149} 7150 7151// DefaultErrorResponseErrorDetailsItem detailed errors. 7152type DefaultErrorResponseErrorDetailsItem struct { 7153 // Code - Standardized string to programmatically identify the error. 7154 Code *string `json:"code,omitempty"` 7155 // Message - Detailed error description and debugging information. 7156 Message *string `json:"message,omitempty"` 7157 // Target - Detailed error description and debugging information. 7158 Target *string `json:"target,omitempty"` 7159} 7160 7161// DeletedSite a deleted app. 7162type DeletedSite struct { 7163 // ID - Numeric id for the deleted site 7164 ID *int32 `json:"id,omitempty"` 7165 // DeletedTimestamp - Time in UTC when the app was deleted. 7166 DeletedTimestamp *string `json:"deletedTimestamp,omitempty"` 7167 // Subscription - Subscription containing the deleted site 7168 Subscription *string `json:"subscription,omitempty"` 7169 // ResourceGroup - ResourceGroup that contained the deleted site 7170 ResourceGroup *string `json:"resourceGroup,omitempty"` 7171 // Name - Name of the deleted site 7172 Name *string `json:"name,omitempty"` 7173 // Slot - Slot of the deleted site 7174 Slot *string `json:"slot,omitempty"` 7175} 7176 7177// DeletedWebAppCollection collection of deleted apps. 7178type DeletedWebAppCollection struct { 7179 autorest.Response `json:"-"` 7180 // Value - Collection of resources. 7181 Value *[]DeletedSite `json:"value,omitempty"` 7182 // NextLink - Link to next page of resources. 7183 NextLink *string `json:"nextLink,omitempty"` 7184} 7185 7186// DeletedWebAppCollectionIterator provides access to a complete listing of DeletedSite values. 7187type DeletedWebAppCollectionIterator struct { 7188 i int 7189 page DeletedWebAppCollectionPage 7190} 7191 7192// Next advances to the next value. If there was an error making 7193// the request the iterator does not advance and the error is returned. 7194func (iter *DeletedWebAppCollectionIterator) Next() error { 7195 iter.i++ 7196 if iter.i < len(iter.page.Values()) { 7197 return nil 7198 } 7199 err := iter.page.Next() 7200 if err != nil { 7201 iter.i-- 7202 return err 7203 } 7204 iter.i = 0 7205 return nil 7206} 7207 7208// NotDone returns true if the enumeration should be started or is not yet complete. 7209func (iter DeletedWebAppCollectionIterator) NotDone() bool { 7210 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 7211} 7212 7213// Response returns the raw server response from the last page request. 7214func (iter DeletedWebAppCollectionIterator) Response() DeletedWebAppCollection { 7215 return iter.page.Response() 7216} 7217 7218// Value returns the current value or a zero-initialized value if the 7219// iterator has advanced beyond the end of the collection. 7220func (iter DeletedWebAppCollectionIterator) Value() DeletedSite { 7221 if !iter.page.NotDone() { 7222 return DeletedSite{} 7223 } 7224 return iter.page.Values()[iter.i] 7225} 7226 7227// IsEmpty returns true if the ListResult contains no values. 7228func (dwac DeletedWebAppCollection) IsEmpty() bool { 7229 return dwac.Value == nil || len(*dwac.Value) == 0 7230} 7231 7232// deletedWebAppCollectionPreparer prepares a request to retrieve the next set of results. 7233// It returns nil if no more results exist. 7234func (dwac DeletedWebAppCollection) deletedWebAppCollectionPreparer() (*http.Request, error) { 7235 if dwac.NextLink == nil || len(to.String(dwac.NextLink)) < 1 { 7236 return nil, nil 7237 } 7238 return autorest.Prepare(&http.Request{}, 7239 autorest.AsJSON(), 7240 autorest.AsGet(), 7241 autorest.WithBaseURL(to.String(dwac.NextLink))) 7242} 7243 7244// DeletedWebAppCollectionPage contains a page of DeletedSite values. 7245type DeletedWebAppCollectionPage struct { 7246 fn func(DeletedWebAppCollection) (DeletedWebAppCollection, error) 7247 dwac DeletedWebAppCollection 7248} 7249 7250// Next advances to the next page of values. If there was an error making 7251// the request the page does not advance and the error is returned. 7252func (page *DeletedWebAppCollectionPage) Next() error { 7253 next, err := page.fn(page.dwac) 7254 if err != nil { 7255 return err 7256 } 7257 page.dwac = next 7258 return nil 7259} 7260 7261// NotDone returns true if the page enumeration should be started or is not yet complete. 7262func (page DeletedWebAppCollectionPage) NotDone() bool { 7263 return !page.dwac.IsEmpty() 7264} 7265 7266// Response returns the raw server response from the last page request. 7267func (page DeletedWebAppCollectionPage) Response() DeletedWebAppCollection { 7268 return page.dwac 7269} 7270 7271// Values returns the slice of values for the current page or nil if there are no values. 7272func (page DeletedWebAppCollectionPage) Values() []DeletedSite { 7273 if page.dwac.IsEmpty() { 7274 return nil 7275 } 7276 return *page.dwac.Value 7277} 7278 7279// Deployment user crendentials used for publishing activity. 7280type Deployment struct { 7281 autorest.Response `json:"-"` 7282 // DeploymentProperties - Deployment resource specific properties 7283 *DeploymentProperties `json:"properties,omitempty"` 7284 // ID - Resource Id. 7285 ID *string `json:"id,omitempty"` 7286 // Name - Resource Name. 7287 Name *string `json:"name,omitempty"` 7288 // Kind - Kind of resource. 7289 Kind *string `json:"kind,omitempty"` 7290 // Type - Resource type. 7291 Type *string `json:"type,omitempty"` 7292} 7293 7294// MarshalJSON is the custom marshaler for Deployment. 7295func (d Deployment) MarshalJSON() ([]byte, error) { 7296 objectMap := make(map[string]interface{}) 7297 if d.DeploymentProperties != nil { 7298 objectMap["properties"] = d.DeploymentProperties 7299 } 7300 if d.ID != nil { 7301 objectMap["id"] = d.ID 7302 } 7303 if d.Name != nil { 7304 objectMap["name"] = d.Name 7305 } 7306 if d.Kind != nil { 7307 objectMap["kind"] = d.Kind 7308 } 7309 if d.Type != nil { 7310 objectMap["type"] = d.Type 7311 } 7312 return json.Marshal(objectMap) 7313} 7314 7315// UnmarshalJSON is the custom unmarshaler for Deployment struct. 7316func (d *Deployment) UnmarshalJSON(body []byte) error { 7317 var m map[string]*json.RawMessage 7318 err := json.Unmarshal(body, &m) 7319 if err != nil { 7320 return err 7321 } 7322 for k, v := range m { 7323 switch k { 7324 case "properties": 7325 if v != nil { 7326 var deploymentProperties DeploymentProperties 7327 err = json.Unmarshal(*v, &deploymentProperties) 7328 if err != nil { 7329 return err 7330 } 7331 d.DeploymentProperties = &deploymentProperties 7332 } 7333 case "id": 7334 if v != nil { 7335 var ID string 7336 err = json.Unmarshal(*v, &ID) 7337 if err != nil { 7338 return err 7339 } 7340 d.ID = &ID 7341 } 7342 case "name": 7343 if v != nil { 7344 var name string 7345 err = json.Unmarshal(*v, &name) 7346 if err != nil { 7347 return err 7348 } 7349 d.Name = &name 7350 } 7351 case "kind": 7352 if v != nil { 7353 var kind string 7354 err = json.Unmarshal(*v, &kind) 7355 if err != nil { 7356 return err 7357 } 7358 d.Kind = &kind 7359 } 7360 case "type": 7361 if v != nil { 7362 var typeVar string 7363 err = json.Unmarshal(*v, &typeVar) 7364 if err != nil { 7365 return err 7366 } 7367 d.Type = &typeVar 7368 } 7369 } 7370 } 7371 7372 return nil 7373} 7374 7375// DeploymentCollection collection of app deployments. 7376type DeploymentCollection struct { 7377 autorest.Response `json:"-"` 7378 // Value - Collection of resources. 7379 Value *[]Deployment `json:"value,omitempty"` 7380 // NextLink - Link to next page of resources. 7381 NextLink *string `json:"nextLink,omitempty"` 7382} 7383 7384// DeploymentCollectionIterator provides access to a complete listing of Deployment values. 7385type DeploymentCollectionIterator struct { 7386 i int 7387 page DeploymentCollectionPage 7388} 7389 7390// Next advances to the next value. If there was an error making 7391// the request the iterator does not advance and the error is returned. 7392func (iter *DeploymentCollectionIterator) Next() error { 7393 iter.i++ 7394 if iter.i < len(iter.page.Values()) { 7395 return nil 7396 } 7397 err := iter.page.Next() 7398 if err != nil { 7399 iter.i-- 7400 return err 7401 } 7402 iter.i = 0 7403 return nil 7404} 7405 7406// NotDone returns true if the enumeration should be started or is not yet complete. 7407func (iter DeploymentCollectionIterator) NotDone() bool { 7408 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 7409} 7410 7411// Response returns the raw server response from the last page request. 7412func (iter DeploymentCollectionIterator) Response() DeploymentCollection { 7413 return iter.page.Response() 7414} 7415 7416// Value returns the current value or a zero-initialized value if the 7417// iterator has advanced beyond the end of the collection. 7418func (iter DeploymentCollectionIterator) Value() Deployment { 7419 if !iter.page.NotDone() { 7420 return Deployment{} 7421 } 7422 return iter.page.Values()[iter.i] 7423} 7424 7425// IsEmpty returns true if the ListResult contains no values. 7426func (dc DeploymentCollection) IsEmpty() bool { 7427 return dc.Value == nil || len(*dc.Value) == 0 7428} 7429 7430// deploymentCollectionPreparer prepares a request to retrieve the next set of results. 7431// It returns nil if no more results exist. 7432func (dc DeploymentCollection) deploymentCollectionPreparer() (*http.Request, error) { 7433 if dc.NextLink == nil || len(to.String(dc.NextLink)) < 1 { 7434 return nil, nil 7435 } 7436 return autorest.Prepare(&http.Request{}, 7437 autorest.AsJSON(), 7438 autorest.AsGet(), 7439 autorest.WithBaseURL(to.String(dc.NextLink))) 7440} 7441 7442// DeploymentCollectionPage contains a page of Deployment values. 7443type DeploymentCollectionPage struct { 7444 fn func(DeploymentCollection) (DeploymentCollection, error) 7445 dc DeploymentCollection 7446} 7447 7448// Next advances to the next page of values. If there was an error making 7449// the request the page does not advance and the error is returned. 7450func (page *DeploymentCollectionPage) Next() error { 7451 next, err := page.fn(page.dc) 7452 if err != nil { 7453 return err 7454 } 7455 page.dc = next 7456 return nil 7457} 7458 7459// NotDone returns true if the page enumeration should be started or is not yet complete. 7460func (page DeploymentCollectionPage) NotDone() bool { 7461 return !page.dc.IsEmpty() 7462} 7463 7464// Response returns the raw server response from the last page request. 7465func (page DeploymentCollectionPage) Response() DeploymentCollection { 7466 return page.dc 7467} 7468 7469// Values returns the slice of values for the current page or nil if there are no values. 7470func (page DeploymentCollectionPage) Values() []Deployment { 7471 if page.dc.IsEmpty() { 7472 return nil 7473 } 7474 return *page.dc.Value 7475} 7476 7477// DeploymentLocations list of available locations (regions or App Service Environments) for 7478// deployment of App Service resources. 7479type DeploymentLocations struct { 7480 autorest.Response `json:"-"` 7481 // Locations - Available regions. 7482 Locations *[]GeoRegion `json:"locations,omitempty"` 7483 // HostingEnvironments - Available App Service Environments with full descriptions of the environments. 7484 HostingEnvironments *[]AppServiceEnvironment `json:"hostingEnvironments,omitempty"` 7485 // HostingEnvironmentDeploymentInfos - Available App Service Environments with basic information. 7486 HostingEnvironmentDeploymentInfos *[]HostingEnvironmentDeploymentInfo `json:"hostingEnvironmentDeploymentInfos,omitempty"` 7487} 7488 7489// DeploymentProperties deployment resource specific properties 7490type DeploymentProperties struct { 7491 // ID - Identifier for deployment. 7492 ID *string `json:"id,omitempty"` 7493 // Status - Deployment status. 7494 Status *int32 `json:"status,omitempty"` 7495 // Message - Details about deployment status. 7496 Message *string `json:"message,omitempty"` 7497 // Author - Who authored the deployment. 7498 Author *string `json:"author,omitempty"` 7499 // Deployer - Who performed the deployment. 7500 Deployer *string `json:"deployer,omitempty"` 7501 // AuthorEmail - Author email. 7502 AuthorEmail *string `json:"authorEmail,omitempty"` 7503 // StartTime - Start time. 7504 StartTime *date.Time `json:"startTime,omitempty"` 7505 // EndTime - End time. 7506 EndTime *date.Time `json:"endTime,omitempty"` 7507 // Active - True if deployment is currently active, false if completed and null if not started. 7508 Active *bool `json:"active,omitempty"` 7509 // Details - Details on deployment. 7510 Details *string `json:"details,omitempty"` 7511} 7512 7513// DetectorAbnormalTimePeriod class representing Abnormal Time Period detected. 7514type DetectorAbnormalTimePeriod struct { 7515 // StartTime - Start time of the corelated event 7516 StartTime *date.Time `json:"startTime,omitempty"` 7517 // EndTime - End time of the corelated event 7518 EndTime *date.Time `json:"endTime,omitempty"` 7519 // Message - Message describing the event 7520 Message *string `json:"message,omitempty"` 7521 // Source - Represents the name of the Detector 7522 Source *string `json:"source,omitempty"` 7523 // Priority - Represents the rank of the Detector 7524 Priority *float64 `json:"priority,omitempty"` 7525 // MetaData - Downtime metadata 7526 MetaData *[][]NameValuePair `json:"metaData,omitempty"` 7527 // Type - Represents the type of the Detector. Possible values include: 'ServiceIncident', 'AppDeployment', 'AppCrash', 'RuntimeIssueDetected', 'AseDeployment', 'UserIssue', 'PlatformIssue', 'Other' 7528 Type IssueType `json:"type,omitempty"` 7529 // Solutions - List of proposed solutions 7530 Solutions *[]Solution `json:"solutions,omitempty"` 7531} 7532 7533// DetectorDefinition class representing detector definition 7534type DetectorDefinition struct { 7535 // DetectorDefinitionProperties - DetectorDefinition resource specific properties 7536 *DetectorDefinitionProperties `json:"properties,omitempty"` 7537 // ID - Resource Id. 7538 ID *string `json:"id,omitempty"` 7539 // Name - Resource Name. 7540 Name *string `json:"name,omitempty"` 7541 // Kind - Kind of resource. 7542 Kind *string `json:"kind,omitempty"` 7543 // Type - Resource type. 7544 Type *string `json:"type,omitempty"` 7545} 7546 7547// MarshalJSON is the custom marshaler for DetectorDefinition. 7548func (dd DetectorDefinition) MarshalJSON() ([]byte, error) { 7549 objectMap := make(map[string]interface{}) 7550 if dd.DetectorDefinitionProperties != nil { 7551 objectMap["properties"] = dd.DetectorDefinitionProperties 7552 } 7553 if dd.ID != nil { 7554 objectMap["id"] = dd.ID 7555 } 7556 if dd.Name != nil { 7557 objectMap["name"] = dd.Name 7558 } 7559 if dd.Kind != nil { 7560 objectMap["kind"] = dd.Kind 7561 } 7562 if dd.Type != nil { 7563 objectMap["type"] = dd.Type 7564 } 7565 return json.Marshal(objectMap) 7566} 7567 7568// UnmarshalJSON is the custom unmarshaler for DetectorDefinition struct. 7569func (dd *DetectorDefinition) UnmarshalJSON(body []byte) error { 7570 var m map[string]*json.RawMessage 7571 err := json.Unmarshal(body, &m) 7572 if err != nil { 7573 return err 7574 } 7575 for k, v := range m { 7576 switch k { 7577 case "properties": 7578 if v != nil { 7579 var detectorDefinitionProperties DetectorDefinitionProperties 7580 err = json.Unmarshal(*v, &detectorDefinitionProperties) 7581 if err != nil { 7582 return err 7583 } 7584 dd.DetectorDefinitionProperties = &detectorDefinitionProperties 7585 } 7586 case "id": 7587 if v != nil { 7588 var ID string 7589 err = json.Unmarshal(*v, &ID) 7590 if err != nil { 7591 return err 7592 } 7593 dd.ID = &ID 7594 } 7595 case "name": 7596 if v != nil { 7597 var name string 7598 err = json.Unmarshal(*v, &name) 7599 if err != nil { 7600 return err 7601 } 7602 dd.Name = &name 7603 } 7604 case "kind": 7605 if v != nil { 7606 var kind string 7607 err = json.Unmarshal(*v, &kind) 7608 if err != nil { 7609 return err 7610 } 7611 dd.Kind = &kind 7612 } 7613 case "type": 7614 if v != nil { 7615 var typeVar string 7616 err = json.Unmarshal(*v, &typeVar) 7617 if err != nil { 7618 return err 7619 } 7620 dd.Type = &typeVar 7621 } 7622 } 7623 } 7624 7625 return nil 7626} 7627 7628// DetectorDefinitionProperties detectorDefinition resource specific properties 7629type DetectorDefinitionProperties struct { 7630 // DisplayName - Display name of the detector 7631 DisplayName *string `json:"displayName,omitempty"` 7632 // Description - Description of the detector 7633 Description *string `json:"description,omitempty"` 7634 // Rank - Detector Rank 7635 Rank *float64 `json:"rank,omitempty"` 7636 // IsEnabled - Flag representing whether detector is enabled or not. 7637 IsEnabled *bool `json:"isEnabled,omitempty"` 7638} 7639 7640// DetectorInfo definition of Detector 7641type DetectorInfo struct { 7642 // Description - Short description of the detector and its purpose 7643 Description *string `json:"description,omitempty"` 7644 // Category - Support Category 7645 Category *string `json:"category,omitempty"` 7646 // SubCategory - Support Sub Category 7647 SubCategory *string `json:"subCategory,omitempty"` 7648 // SupportTopicID - Support Topic Id 7649 SupportTopicID *string `json:"supportTopicId,omitempty"` 7650} 7651 7652// DetectorResponse class representing Response from Detector 7653type DetectorResponse struct { 7654 autorest.Response `json:"-"` 7655 // DetectorResponseProperties - DetectorResponse resource specific properties 7656 *DetectorResponseProperties `json:"properties,omitempty"` 7657 // ID - Resource Id. 7658 ID *string `json:"id,omitempty"` 7659 // Name - Resource Name. 7660 Name *string `json:"name,omitempty"` 7661 // Kind - Kind of resource. 7662 Kind *string `json:"kind,omitempty"` 7663 // Type - Resource type. 7664 Type *string `json:"type,omitempty"` 7665} 7666 7667// MarshalJSON is the custom marshaler for DetectorResponse. 7668func (dr DetectorResponse) MarshalJSON() ([]byte, error) { 7669 objectMap := make(map[string]interface{}) 7670 if dr.DetectorResponseProperties != nil { 7671 objectMap["properties"] = dr.DetectorResponseProperties 7672 } 7673 if dr.ID != nil { 7674 objectMap["id"] = dr.ID 7675 } 7676 if dr.Name != nil { 7677 objectMap["name"] = dr.Name 7678 } 7679 if dr.Kind != nil { 7680 objectMap["kind"] = dr.Kind 7681 } 7682 if dr.Type != nil { 7683 objectMap["type"] = dr.Type 7684 } 7685 return json.Marshal(objectMap) 7686} 7687 7688// UnmarshalJSON is the custom unmarshaler for DetectorResponse struct. 7689func (dr *DetectorResponse) UnmarshalJSON(body []byte) error { 7690 var m map[string]*json.RawMessage 7691 err := json.Unmarshal(body, &m) 7692 if err != nil { 7693 return err 7694 } 7695 for k, v := range m { 7696 switch k { 7697 case "properties": 7698 if v != nil { 7699 var detectorResponseProperties DetectorResponseProperties 7700 err = json.Unmarshal(*v, &detectorResponseProperties) 7701 if err != nil { 7702 return err 7703 } 7704 dr.DetectorResponseProperties = &detectorResponseProperties 7705 } 7706 case "id": 7707 if v != nil { 7708 var ID string 7709 err = json.Unmarshal(*v, &ID) 7710 if err != nil { 7711 return err 7712 } 7713 dr.ID = &ID 7714 } 7715 case "name": 7716 if v != nil { 7717 var name string 7718 err = json.Unmarshal(*v, &name) 7719 if err != nil { 7720 return err 7721 } 7722 dr.Name = &name 7723 } 7724 case "kind": 7725 if v != nil { 7726 var kind string 7727 err = json.Unmarshal(*v, &kind) 7728 if err != nil { 7729 return err 7730 } 7731 dr.Kind = &kind 7732 } 7733 case "type": 7734 if v != nil { 7735 var typeVar string 7736 err = json.Unmarshal(*v, &typeVar) 7737 if err != nil { 7738 return err 7739 } 7740 dr.Type = &typeVar 7741 } 7742 } 7743 } 7744 7745 return nil 7746} 7747 7748// DetectorResponseCollection collection of detector responses 7749type DetectorResponseCollection struct { 7750 autorest.Response `json:"-"` 7751 // Value - Collection of resources. 7752 Value *[]DetectorResponse `json:"value,omitempty"` 7753 // NextLink - Link to next page of resources. 7754 NextLink *string `json:"nextLink,omitempty"` 7755} 7756 7757// DetectorResponseCollectionIterator provides access to a complete listing of DetectorResponse values. 7758type DetectorResponseCollectionIterator struct { 7759 i int 7760 page DetectorResponseCollectionPage 7761} 7762 7763// Next advances to the next value. If there was an error making 7764// the request the iterator does not advance and the error is returned. 7765func (iter *DetectorResponseCollectionIterator) Next() error { 7766 iter.i++ 7767 if iter.i < len(iter.page.Values()) { 7768 return nil 7769 } 7770 err := iter.page.Next() 7771 if err != nil { 7772 iter.i-- 7773 return err 7774 } 7775 iter.i = 0 7776 return nil 7777} 7778 7779// NotDone returns true if the enumeration should be started or is not yet complete. 7780func (iter DetectorResponseCollectionIterator) NotDone() bool { 7781 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 7782} 7783 7784// Response returns the raw server response from the last page request. 7785func (iter DetectorResponseCollectionIterator) Response() DetectorResponseCollection { 7786 return iter.page.Response() 7787} 7788 7789// Value returns the current value or a zero-initialized value if the 7790// iterator has advanced beyond the end of the collection. 7791func (iter DetectorResponseCollectionIterator) Value() DetectorResponse { 7792 if !iter.page.NotDone() { 7793 return DetectorResponse{} 7794 } 7795 return iter.page.Values()[iter.i] 7796} 7797 7798// IsEmpty returns true if the ListResult contains no values. 7799func (drc DetectorResponseCollection) IsEmpty() bool { 7800 return drc.Value == nil || len(*drc.Value) == 0 7801} 7802 7803// detectorResponseCollectionPreparer prepares a request to retrieve the next set of results. 7804// It returns nil if no more results exist. 7805func (drc DetectorResponseCollection) detectorResponseCollectionPreparer() (*http.Request, error) { 7806 if drc.NextLink == nil || len(to.String(drc.NextLink)) < 1 { 7807 return nil, nil 7808 } 7809 return autorest.Prepare(&http.Request{}, 7810 autorest.AsJSON(), 7811 autorest.AsGet(), 7812 autorest.WithBaseURL(to.String(drc.NextLink))) 7813} 7814 7815// DetectorResponseCollectionPage contains a page of DetectorResponse values. 7816type DetectorResponseCollectionPage struct { 7817 fn func(DetectorResponseCollection) (DetectorResponseCollection, error) 7818 drc DetectorResponseCollection 7819} 7820 7821// Next advances to the next page of values. If there was an error making 7822// the request the page does not advance and the error is returned. 7823func (page *DetectorResponseCollectionPage) Next() error { 7824 next, err := page.fn(page.drc) 7825 if err != nil { 7826 return err 7827 } 7828 page.drc = next 7829 return nil 7830} 7831 7832// NotDone returns true if the page enumeration should be started or is not yet complete. 7833func (page DetectorResponseCollectionPage) NotDone() bool { 7834 return !page.drc.IsEmpty() 7835} 7836 7837// Response returns the raw server response from the last page request. 7838func (page DetectorResponseCollectionPage) Response() DetectorResponseCollection { 7839 return page.drc 7840} 7841 7842// Values returns the slice of values for the current page or nil if there are no values. 7843func (page DetectorResponseCollectionPage) Values() []DetectorResponse { 7844 if page.drc.IsEmpty() { 7845 return nil 7846 } 7847 return *page.drc.Value 7848} 7849 7850// DetectorResponseProperties detectorResponse resource specific properties 7851type DetectorResponseProperties struct { 7852 // Metadata - metadata for the detector 7853 Metadata *DetectorInfo `json:"metadata,omitempty"` 7854 // Dataset - Data Set 7855 Dataset *[]DiagnosticData `json:"dataset,omitempty"` 7856} 7857 7858// DiagnosticAnalysis class representing a diagnostic analysis done on an application 7859type DiagnosticAnalysis struct { 7860 autorest.Response `json:"-"` 7861 // DiagnosticAnalysisProperties - DiagnosticAnalysis resource specific properties 7862 *DiagnosticAnalysisProperties `json:"properties,omitempty"` 7863 // ID - Resource Id. 7864 ID *string `json:"id,omitempty"` 7865 // Name - Resource Name. 7866 Name *string `json:"name,omitempty"` 7867 // Kind - Kind of resource. 7868 Kind *string `json:"kind,omitempty"` 7869 // Type - Resource type. 7870 Type *string `json:"type,omitempty"` 7871} 7872 7873// MarshalJSON is the custom marshaler for DiagnosticAnalysis. 7874func (da DiagnosticAnalysis) MarshalJSON() ([]byte, error) { 7875 objectMap := make(map[string]interface{}) 7876 if da.DiagnosticAnalysisProperties != nil { 7877 objectMap["properties"] = da.DiagnosticAnalysisProperties 7878 } 7879 if da.ID != nil { 7880 objectMap["id"] = da.ID 7881 } 7882 if da.Name != nil { 7883 objectMap["name"] = da.Name 7884 } 7885 if da.Kind != nil { 7886 objectMap["kind"] = da.Kind 7887 } 7888 if da.Type != nil { 7889 objectMap["type"] = da.Type 7890 } 7891 return json.Marshal(objectMap) 7892} 7893 7894// UnmarshalJSON is the custom unmarshaler for DiagnosticAnalysis struct. 7895func (da *DiagnosticAnalysis) UnmarshalJSON(body []byte) error { 7896 var m map[string]*json.RawMessage 7897 err := json.Unmarshal(body, &m) 7898 if err != nil { 7899 return err 7900 } 7901 for k, v := range m { 7902 switch k { 7903 case "properties": 7904 if v != nil { 7905 var diagnosticAnalysisProperties DiagnosticAnalysisProperties 7906 err = json.Unmarshal(*v, &diagnosticAnalysisProperties) 7907 if err != nil { 7908 return err 7909 } 7910 da.DiagnosticAnalysisProperties = &diagnosticAnalysisProperties 7911 } 7912 case "id": 7913 if v != nil { 7914 var ID string 7915 err = json.Unmarshal(*v, &ID) 7916 if err != nil { 7917 return err 7918 } 7919 da.ID = &ID 7920 } 7921 case "name": 7922 if v != nil { 7923 var name string 7924 err = json.Unmarshal(*v, &name) 7925 if err != nil { 7926 return err 7927 } 7928 da.Name = &name 7929 } 7930 case "kind": 7931 if v != nil { 7932 var kind string 7933 err = json.Unmarshal(*v, &kind) 7934 if err != nil { 7935 return err 7936 } 7937 da.Kind = &kind 7938 } 7939 case "type": 7940 if v != nil { 7941 var typeVar string 7942 err = json.Unmarshal(*v, &typeVar) 7943 if err != nil { 7944 return err 7945 } 7946 da.Type = &typeVar 7947 } 7948 } 7949 } 7950 7951 return nil 7952} 7953 7954// DiagnosticAnalysisCollection collection of Diagnostic Analyses 7955type DiagnosticAnalysisCollection struct { 7956 autorest.Response `json:"-"` 7957 // Value - Collection of resources. 7958 Value *[]AnalysisDefinition `json:"value,omitempty"` 7959 // NextLink - Link to next page of resources. 7960 NextLink *string `json:"nextLink,omitempty"` 7961} 7962 7963// DiagnosticAnalysisCollectionIterator provides access to a complete listing of AnalysisDefinition values. 7964type DiagnosticAnalysisCollectionIterator struct { 7965 i int 7966 page DiagnosticAnalysisCollectionPage 7967} 7968 7969// Next advances to the next value. If there was an error making 7970// the request the iterator does not advance and the error is returned. 7971func (iter *DiagnosticAnalysisCollectionIterator) Next() error { 7972 iter.i++ 7973 if iter.i < len(iter.page.Values()) { 7974 return nil 7975 } 7976 err := iter.page.Next() 7977 if err != nil { 7978 iter.i-- 7979 return err 7980 } 7981 iter.i = 0 7982 return nil 7983} 7984 7985// NotDone returns true if the enumeration should be started or is not yet complete. 7986func (iter DiagnosticAnalysisCollectionIterator) NotDone() bool { 7987 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 7988} 7989 7990// Response returns the raw server response from the last page request. 7991func (iter DiagnosticAnalysisCollectionIterator) Response() DiagnosticAnalysisCollection { 7992 return iter.page.Response() 7993} 7994 7995// Value returns the current value or a zero-initialized value if the 7996// iterator has advanced beyond the end of the collection. 7997func (iter DiagnosticAnalysisCollectionIterator) Value() AnalysisDefinition { 7998 if !iter.page.NotDone() { 7999 return AnalysisDefinition{} 8000 } 8001 return iter.page.Values()[iter.i] 8002} 8003 8004// IsEmpty returns true if the ListResult contains no values. 8005func (dac DiagnosticAnalysisCollection) IsEmpty() bool { 8006 return dac.Value == nil || len(*dac.Value) == 0 8007} 8008 8009// diagnosticAnalysisCollectionPreparer prepares a request to retrieve the next set of results. 8010// It returns nil if no more results exist. 8011func (dac DiagnosticAnalysisCollection) diagnosticAnalysisCollectionPreparer() (*http.Request, error) { 8012 if dac.NextLink == nil || len(to.String(dac.NextLink)) < 1 { 8013 return nil, nil 8014 } 8015 return autorest.Prepare(&http.Request{}, 8016 autorest.AsJSON(), 8017 autorest.AsGet(), 8018 autorest.WithBaseURL(to.String(dac.NextLink))) 8019} 8020 8021// DiagnosticAnalysisCollectionPage contains a page of AnalysisDefinition values. 8022type DiagnosticAnalysisCollectionPage struct { 8023 fn func(DiagnosticAnalysisCollection) (DiagnosticAnalysisCollection, error) 8024 dac DiagnosticAnalysisCollection 8025} 8026 8027// Next advances to the next page of values. If there was an error making 8028// the request the page does not advance and the error is returned. 8029func (page *DiagnosticAnalysisCollectionPage) Next() error { 8030 next, err := page.fn(page.dac) 8031 if err != nil { 8032 return err 8033 } 8034 page.dac = next 8035 return nil 8036} 8037 8038// NotDone returns true if the page enumeration should be started or is not yet complete. 8039func (page DiagnosticAnalysisCollectionPage) NotDone() bool { 8040 return !page.dac.IsEmpty() 8041} 8042 8043// Response returns the raw server response from the last page request. 8044func (page DiagnosticAnalysisCollectionPage) Response() DiagnosticAnalysisCollection { 8045 return page.dac 8046} 8047 8048// Values returns the slice of values for the current page or nil if there are no values. 8049func (page DiagnosticAnalysisCollectionPage) Values() []AnalysisDefinition { 8050 if page.dac.IsEmpty() { 8051 return nil 8052 } 8053 return *page.dac.Value 8054} 8055 8056// DiagnosticAnalysisProperties diagnosticAnalysis resource specific properties 8057type DiagnosticAnalysisProperties struct { 8058 // StartTime - Start time of the period 8059 StartTime *date.Time `json:"startTime,omitempty"` 8060 // EndTime - End time of the period 8061 EndTime *date.Time `json:"endTime,omitempty"` 8062 // AbnormalTimePeriods - List of time periods. 8063 AbnormalTimePeriods *[]AbnormalTimePeriod `json:"abnormalTimePeriods,omitempty"` 8064 // Payload - Data by each detector 8065 Payload *[]AnalysisData `json:"payload,omitempty"` 8066 // NonCorrelatedDetectors - Data by each detector for detectors that did not corelate 8067 NonCorrelatedDetectors *[]DetectorDefinition `json:"nonCorrelatedDetectors,omitempty"` 8068} 8069 8070// DiagnosticCategory class representing detector definition 8071type DiagnosticCategory struct { 8072 autorest.Response `json:"-"` 8073 // DiagnosticCategoryProperties - DiagnosticCategory resource specific properties 8074 *DiagnosticCategoryProperties `json:"properties,omitempty"` 8075 // ID - Resource Id. 8076 ID *string `json:"id,omitempty"` 8077 // Name - Resource Name. 8078 Name *string `json:"name,omitempty"` 8079 // Kind - Kind of resource. 8080 Kind *string `json:"kind,omitempty"` 8081 // Type - Resource type. 8082 Type *string `json:"type,omitempty"` 8083} 8084 8085// MarshalJSON is the custom marshaler for DiagnosticCategory. 8086func (dc DiagnosticCategory) MarshalJSON() ([]byte, error) { 8087 objectMap := make(map[string]interface{}) 8088 if dc.DiagnosticCategoryProperties != nil { 8089 objectMap["properties"] = dc.DiagnosticCategoryProperties 8090 } 8091 if dc.ID != nil { 8092 objectMap["id"] = dc.ID 8093 } 8094 if dc.Name != nil { 8095 objectMap["name"] = dc.Name 8096 } 8097 if dc.Kind != nil { 8098 objectMap["kind"] = dc.Kind 8099 } 8100 if dc.Type != nil { 8101 objectMap["type"] = dc.Type 8102 } 8103 return json.Marshal(objectMap) 8104} 8105 8106// UnmarshalJSON is the custom unmarshaler for DiagnosticCategory struct. 8107func (dc *DiagnosticCategory) UnmarshalJSON(body []byte) error { 8108 var m map[string]*json.RawMessage 8109 err := json.Unmarshal(body, &m) 8110 if err != nil { 8111 return err 8112 } 8113 for k, v := range m { 8114 switch k { 8115 case "properties": 8116 if v != nil { 8117 var diagnosticCategoryProperties DiagnosticCategoryProperties 8118 err = json.Unmarshal(*v, &diagnosticCategoryProperties) 8119 if err != nil { 8120 return err 8121 } 8122 dc.DiagnosticCategoryProperties = &diagnosticCategoryProperties 8123 } 8124 case "id": 8125 if v != nil { 8126 var ID string 8127 err = json.Unmarshal(*v, &ID) 8128 if err != nil { 8129 return err 8130 } 8131 dc.ID = &ID 8132 } 8133 case "name": 8134 if v != nil { 8135 var name string 8136 err = json.Unmarshal(*v, &name) 8137 if err != nil { 8138 return err 8139 } 8140 dc.Name = &name 8141 } 8142 case "kind": 8143 if v != nil { 8144 var kind string 8145 err = json.Unmarshal(*v, &kind) 8146 if err != nil { 8147 return err 8148 } 8149 dc.Kind = &kind 8150 } 8151 case "type": 8152 if v != nil { 8153 var typeVar string 8154 err = json.Unmarshal(*v, &typeVar) 8155 if err != nil { 8156 return err 8157 } 8158 dc.Type = &typeVar 8159 } 8160 } 8161 } 8162 8163 return nil 8164} 8165 8166// DiagnosticCategoryCollection collection of Diagnostic Categories 8167type DiagnosticCategoryCollection struct { 8168 autorest.Response `json:"-"` 8169 // Value - Collection of resources. 8170 Value *[]DiagnosticCategory `json:"value,omitempty"` 8171 // NextLink - Link to next page of resources. 8172 NextLink *string `json:"nextLink,omitempty"` 8173} 8174 8175// DiagnosticCategoryCollectionIterator provides access to a complete listing of DiagnosticCategory values. 8176type DiagnosticCategoryCollectionIterator struct { 8177 i int 8178 page DiagnosticCategoryCollectionPage 8179} 8180 8181// Next advances to the next value. If there was an error making 8182// the request the iterator does not advance and the error is returned. 8183func (iter *DiagnosticCategoryCollectionIterator) Next() error { 8184 iter.i++ 8185 if iter.i < len(iter.page.Values()) { 8186 return nil 8187 } 8188 err := iter.page.Next() 8189 if err != nil { 8190 iter.i-- 8191 return err 8192 } 8193 iter.i = 0 8194 return nil 8195} 8196 8197// NotDone returns true if the enumeration should be started or is not yet complete. 8198func (iter DiagnosticCategoryCollectionIterator) NotDone() bool { 8199 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 8200} 8201 8202// Response returns the raw server response from the last page request. 8203func (iter DiagnosticCategoryCollectionIterator) Response() DiagnosticCategoryCollection { 8204 return iter.page.Response() 8205} 8206 8207// Value returns the current value or a zero-initialized value if the 8208// iterator has advanced beyond the end of the collection. 8209func (iter DiagnosticCategoryCollectionIterator) Value() DiagnosticCategory { 8210 if !iter.page.NotDone() { 8211 return DiagnosticCategory{} 8212 } 8213 return iter.page.Values()[iter.i] 8214} 8215 8216// IsEmpty returns true if the ListResult contains no values. 8217func (dcc DiagnosticCategoryCollection) IsEmpty() bool { 8218 return dcc.Value == nil || len(*dcc.Value) == 0 8219} 8220 8221// diagnosticCategoryCollectionPreparer prepares a request to retrieve the next set of results. 8222// It returns nil if no more results exist. 8223func (dcc DiagnosticCategoryCollection) diagnosticCategoryCollectionPreparer() (*http.Request, error) { 8224 if dcc.NextLink == nil || len(to.String(dcc.NextLink)) < 1 { 8225 return nil, nil 8226 } 8227 return autorest.Prepare(&http.Request{}, 8228 autorest.AsJSON(), 8229 autorest.AsGet(), 8230 autorest.WithBaseURL(to.String(dcc.NextLink))) 8231} 8232 8233// DiagnosticCategoryCollectionPage contains a page of DiagnosticCategory values. 8234type DiagnosticCategoryCollectionPage struct { 8235 fn func(DiagnosticCategoryCollection) (DiagnosticCategoryCollection, error) 8236 dcc DiagnosticCategoryCollection 8237} 8238 8239// Next advances to the next page of values. If there was an error making 8240// the request the page does not advance and the error is returned. 8241func (page *DiagnosticCategoryCollectionPage) Next() error { 8242 next, err := page.fn(page.dcc) 8243 if err != nil { 8244 return err 8245 } 8246 page.dcc = next 8247 return nil 8248} 8249 8250// NotDone returns true if the page enumeration should be started or is not yet complete. 8251func (page DiagnosticCategoryCollectionPage) NotDone() bool { 8252 return !page.dcc.IsEmpty() 8253} 8254 8255// Response returns the raw server response from the last page request. 8256func (page DiagnosticCategoryCollectionPage) Response() DiagnosticCategoryCollection { 8257 return page.dcc 8258} 8259 8260// Values returns the slice of values for the current page or nil if there are no values. 8261func (page DiagnosticCategoryCollectionPage) Values() []DiagnosticCategory { 8262 if page.dcc.IsEmpty() { 8263 return nil 8264 } 8265 return *page.dcc.Value 8266} 8267 8268// DiagnosticCategoryProperties diagnosticCategory resource specific properties 8269type DiagnosticCategoryProperties struct { 8270 // Description - Description of the diagnostic category 8271 Description *string `json:"description,omitempty"` 8272} 8273 8274// DiagnosticData set of data with rendering instructions 8275type DiagnosticData struct { 8276 // Table - Data in table form 8277 Table *DataTableResponseObject `json:"table,omitempty"` 8278 // RenderingProperties - Properties that describe how the table should be rendered 8279 RenderingProperties *Rendering `json:"renderingProperties,omitempty"` 8280} 8281 8282// DiagnosticDetectorCollection collection of Diagnostic Detectors 8283type DiagnosticDetectorCollection struct { 8284 autorest.Response `json:"-"` 8285 // Value - Collection of resources. 8286 Value *[]DetectorDefinition `json:"value,omitempty"` 8287 // NextLink - Link to next page of resources. 8288 NextLink *string `json:"nextLink,omitempty"` 8289} 8290 8291// DiagnosticDetectorCollectionIterator provides access to a complete listing of DetectorDefinition values. 8292type DiagnosticDetectorCollectionIterator struct { 8293 i int 8294 page DiagnosticDetectorCollectionPage 8295} 8296 8297// Next advances to the next value. If there was an error making 8298// the request the iterator does not advance and the error is returned. 8299func (iter *DiagnosticDetectorCollectionIterator) Next() error { 8300 iter.i++ 8301 if iter.i < len(iter.page.Values()) { 8302 return nil 8303 } 8304 err := iter.page.Next() 8305 if err != nil { 8306 iter.i-- 8307 return err 8308 } 8309 iter.i = 0 8310 return nil 8311} 8312 8313// NotDone returns true if the enumeration should be started or is not yet complete. 8314func (iter DiagnosticDetectorCollectionIterator) NotDone() bool { 8315 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 8316} 8317 8318// Response returns the raw server response from the last page request. 8319func (iter DiagnosticDetectorCollectionIterator) Response() DiagnosticDetectorCollection { 8320 return iter.page.Response() 8321} 8322 8323// Value returns the current value or a zero-initialized value if the 8324// iterator has advanced beyond the end of the collection. 8325func (iter DiagnosticDetectorCollectionIterator) Value() DetectorDefinition { 8326 if !iter.page.NotDone() { 8327 return DetectorDefinition{} 8328 } 8329 return iter.page.Values()[iter.i] 8330} 8331 8332// IsEmpty returns true if the ListResult contains no values. 8333func (ddc DiagnosticDetectorCollection) IsEmpty() bool { 8334 return ddc.Value == nil || len(*ddc.Value) == 0 8335} 8336 8337// diagnosticDetectorCollectionPreparer prepares a request to retrieve the next set of results. 8338// It returns nil if no more results exist. 8339func (ddc DiagnosticDetectorCollection) diagnosticDetectorCollectionPreparer() (*http.Request, error) { 8340 if ddc.NextLink == nil || len(to.String(ddc.NextLink)) < 1 { 8341 return nil, nil 8342 } 8343 return autorest.Prepare(&http.Request{}, 8344 autorest.AsJSON(), 8345 autorest.AsGet(), 8346 autorest.WithBaseURL(to.String(ddc.NextLink))) 8347} 8348 8349// DiagnosticDetectorCollectionPage contains a page of DetectorDefinition values. 8350type DiagnosticDetectorCollectionPage struct { 8351 fn func(DiagnosticDetectorCollection) (DiagnosticDetectorCollection, error) 8352 ddc DiagnosticDetectorCollection 8353} 8354 8355// Next advances to the next page of values. If there was an error making 8356// the request the page does not advance and the error is returned. 8357func (page *DiagnosticDetectorCollectionPage) Next() error { 8358 next, err := page.fn(page.ddc) 8359 if err != nil { 8360 return err 8361 } 8362 page.ddc = next 8363 return nil 8364} 8365 8366// NotDone returns true if the page enumeration should be started or is not yet complete. 8367func (page DiagnosticDetectorCollectionPage) NotDone() bool { 8368 return !page.ddc.IsEmpty() 8369} 8370 8371// Response returns the raw server response from the last page request. 8372func (page DiagnosticDetectorCollectionPage) Response() DiagnosticDetectorCollection { 8373 return page.ddc 8374} 8375 8376// Values returns the slice of values for the current page or nil if there are no values. 8377func (page DiagnosticDetectorCollectionPage) Values() []DetectorDefinition { 8378 if page.ddc.IsEmpty() { 8379 return nil 8380 } 8381 return *page.ddc.Value 8382} 8383 8384// DiagnosticDetectorResponse class representing Reponse from Diagnostic Detectors 8385type DiagnosticDetectorResponse struct { 8386 autorest.Response `json:"-"` 8387 // DiagnosticDetectorResponseProperties - DiagnosticDetectorResponse resource specific properties 8388 *DiagnosticDetectorResponseProperties `json:"properties,omitempty"` 8389 // ID - Resource Id. 8390 ID *string `json:"id,omitempty"` 8391 // Name - Resource Name. 8392 Name *string `json:"name,omitempty"` 8393 // Kind - Kind of resource. 8394 Kind *string `json:"kind,omitempty"` 8395 // Type - Resource type. 8396 Type *string `json:"type,omitempty"` 8397} 8398 8399// MarshalJSON is the custom marshaler for DiagnosticDetectorResponse. 8400func (ddr DiagnosticDetectorResponse) MarshalJSON() ([]byte, error) { 8401 objectMap := make(map[string]interface{}) 8402 if ddr.DiagnosticDetectorResponseProperties != nil { 8403 objectMap["properties"] = ddr.DiagnosticDetectorResponseProperties 8404 } 8405 if ddr.ID != nil { 8406 objectMap["id"] = ddr.ID 8407 } 8408 if ddr.Name != nil { 8409 objectMap["name"] = ddr.Name 8410 } 8411 if ddr.Kind != nil { 8412 objectMap["kind"] = ddr.Kind 8413 } 8414 if ddr.Type != nil { 8415 objectMap["type"] = ddr.Type 8416 } 8417 return json.Marshal(objectMap) 8418} 8419 8420// UnmarshalJSON is the custom unmarshaler for DiagnosticDetectorResponse struct. 8421func (ddr *DiagnosticDetectorResponse) UnmarshalJSON(body []byte) error { 8422 var m map[string]*json.RawMessage 8423 err := json.Unmarshal(body, &m) 8424 if err != nil { 8425 return err 8426 } 8427 for k, v := range m { 8428 switch k { 8429 case "properties": 8430 if v != nil { 8431 var diagnosticDetectorResponseProperties DiagnosticDetectorResponseProperties 8432 err = json.Unmarshal(*v, &diagnosticDetectorResponseProperties) 8433 if err != nil { 8434 return err 8435 } 8436 ddr.DiagnosticDetectorResponseProperties = &diagnosticDetectorResponseProperties 8437 } 8438 case "id": 8439 if v != nil { 8440 var ID string 8441 err = json.Unmarshal(*v, &ID) 8442 if err != nil { 8443 return err 8444 } 8445 ddr.ID = &ID 8446 } 8447 case "name": 8448 if v != nil { 8449 var name string 8450 err = json.Unmarshal(*v, &name) 8451 if err != nil { 8452 return err 8453 } 8454 ddr.Name = &name 8455 } 8456 case "kind": 8457 if v != nil { 8458 var kind string 8459 err = json.Unmarshal(*v, &kind) 8460 if err != nil { 8461 return err 8462 } 8463 ddr.Kind = &kind 8464 } 8465 case "type": 8466 if v != nil { 8467 var typeVar string 8468 err = json.Unmarshal(*v, &typeVar) 8469 if err != nil { 8470 return err 8471 } 8472 ddr.Type = &typeVar 8473 } 8474 } 8475 } 8476 8477 return nil 8478} 8479 8480// DiagnosticDetectorResponseProperties diagnosticDetectorResponse resource specific properties 8481type DiagnosticDetectorResponseProperties struct { 8482 // StartTime - Start time of the period 8483 StartTime *date.Time `json:"startTime,omitempty"` 8484 // EndTime - End time of the period 8485 EndTime *date.Time `json:"endTime,omitempty"` 8486 // IssueDetected - Flag representing Issue was detected. 8487 IssueDetected *bool `json:"issueDetected,omitempty"` 8488 // DetectorDefinition - Detector's definition 8489 DetectorDefinition *DetectorDefinition `json:"detectorDefinition,omitempty"` 8490 // Metrics - Metrics provided by the detector 8491 Metrics *[]DiagnosticMetricSet `json:"metrics,omitempty"` 8492 // AbnormalTimePeriods - List of Correlated events found by the detector 8493 AbnormalTimePeriods *[]DetectorAbnormalTimePeriod `json:"abnormalTimePeriods,omitempty"` 8494 // Data - Additional Data that detector wants to send. 8495 Data *[][]NameValuePair `json:"data,omitempty"` 8496 // ResponseMetaData - Meta Data 8497 ResponseMetaData *ResponseMetaData `json:"responseMetaData,omitempty"` 8498} 8499 8500// DiagnosticMetricSample class representing Diagnostic Metric 8501type DiagnosticMetricSample struct { 8502 // Timestamp - Time at which metric is measured 8503 Timestamp *date.Time `json:"timestamp,omitempty"` 8504 // RoleInstance - Role Instance. Null if this counter is not per instance 8505 // This is returned and should be whichever instance name we desire to be returned 8506 // i.e. CPU and Memory return RDWORKERNAME (LargeDed..._IN_0) 8507 // where RDWORKERNAME is Machine name below and RoleInstance name in parenthesis 8508 RoleInstance *string `json:"roleInstance,omitempty"` 8509 // Total - Total value of the metric. If multiple measurements are made this will have sum of all. 8510 Total *float64 `json:"total,omitempty"` 8511 // Maximum - Maximum of the metric sampled during the time period 8512 Maximum *float64 `json:"maximum,omitempty"` 8513 // Minimum - Minimum of the metric sampled during the time period 8514 Minimum *float64 `json:"minimum,omitempty"` 8515 // IsAggregated - Whether the values are aggregates across all workers or not 8516 IsAggregated *bool `json:"isAggregated,omitempty"` 8517} 8518 8519// DiagnosticMetricSet class representing Diagnostic Metric information 8520type DiagnosticMetricSet struct { 8521 // Name - Name of the metric 8522 Name *string `json:"name,omitempty"` 8523 // Unit - Metric's unit 8524 Unit *string `json:"unit,omitempty"` 8525 // StartTime - Start time of the period 8526 StartTime *date.Time `json:"startTime,omitempty"` 8527 // EndTime - End time of the period 8528 EndTime *date.Time `json:"endTime,omitempty"` 8529 // TimeGrain - Presented time grain. Supported grains at the moment are PT1M, PT1H, P1D 8530 TimeGrain *string `json:"timeGrain,omitempty"` 8531 // Values - Collection of metric values for the selected period based on the {Microsoft.Web.Hosting.Administration.DiagnosticMetricSet.TimeGrain} 8532 Values *[]DiagnosticMetricSample `json:"values,omitempty"` 8533} 8534 8535// Dimension dimension of a resource metric. For e.g. instance specific HTTP requests for a web app, 8536// where instance name is dimension of the metric HTTP request 8537type Dimension struct { 8538 Name *string `json:"name,omitempty"` 8539 DisplayName *string `json:"displayName,omitempty"` 8540 InternalName *string `json:"internalName,omitempty"` 8541 ToBeExportedForShoebox *bool `json:"toBeExportedForShoebox,omitempty"` 8542} 8543 8544// Domain information about a domain. 8545type Domain struct { 8546 autorest.Response `json:"-"` 8547 // DomainProperties - Domain resource specific properties 8548 *DomainProperties `json:"properties,omitempty"` 8549 // ID - Resource Id. 8550 ID *string `json:"id,omitempty"` 8551 // Name - Resource Name. 8552 Name *string `json:"name,omitempty"` 8553 // Kind - Kind of resource. 8554 Kind *string `json:"kind,omitempty"` 8555 // Location - Resource Location. 8556 Location *string `json:"location,omitempty"` 8557 // Type - Resource type. 8558 Type *string `json:"type,omitempty"` 8559 // Tags - Resource tags. 8560 Tags map[string]*string `json:"tags"` 8561} 8562 8563// MarshalJSON is the custom marshaler for Domain. 8564func (d Domain) MarshalJSON() ([]byte, error) { 8565 objectMap := make(map[string]interface{}) 8566 if d.DomainProperties != nil { 8567 objectMap["properties"] = d.DomainProperties 8568 } 8569 if d.ID != nil { 8570 objectMap["id"] = d.ID 8571 } 8572 if d.Name != nil { 8573 objectMap["name"] = d.Name 8574 } 8575 if d.Kind != nil { 8576 objectMap["kind"] = d.Kind 8577 } 8578 if d.Location != nil { 8579 objectMap["location"] = d.Location 8580 } 8581 if d.Type != nil { 8582 objectMap["type"] = d.Type 8583 } 8584 if d.Tags != nil { 8585 objectMap["tags"] = d.Tags 8586 } 8587 return json.Marshal(objectMap) 8588} 8589 8590// UnmarshalJSON is the custom unmarshaler for Domain struct. 8591func (d *Domain) UnmarshalJSON(body []byte) error { 8592 var m map[string]*json.RawMessage 8593 err := json.Unmarshal(body, &m) 8594 if err != nil { 8595 return err 8596 } 8597 for k, v := range m { 8598 switch k { 8599 case "properties": 8600 if v != nil { 8601 var domainProperties DomainProperties 8602 err = json.Unmarshal(*v, &domainProperties) 8603 if err != nil { 8604 return err 8605 } 8606 d.DomainProperties = &domainProperties 8607 } 8608 case "id": 8609 if v != nil { 8610 var ID string 8611 err = json.Unmarshal(*v, &ID) 8612 if err != nil { 8613 return err 8614 } 8615 d.ID = &ID 8616 } 8617 case "name": 8618 if v != nil { 8619 var name string 8620 err = json.Unmarshal(*v, &name) 8621 if err != nil { 8622 return err 8623 } 8624 d.Name = &name 8625 } 8626 case "kind": 8627 if v != nil { 8628 var kind string 8629 err = json.Unmarshal(*v, &kind) 8630 if err != nil { 8631 return err 8632 } 8633 d.Kind = &kind 8634 } 8635 case "location": 8636 if v != nil { 8637 var location string 8638 err = json.Unmarshal(*v, &location) 8639 if err != nil { 8640 return err 8641 } 8642 d.Location = &location 8643 } 8644 case "type": 8645 if v != nil { 8646 var typeVar string 8647 err = json.Unmarshal(*v, &typeVar) 8648 if err != nil { 8649 return err 8650 } 8651 d.Type = &typeVar 8652 } 8653 case "tags": 8654 if v != nil { 8655 var tags map[string]*string 8656 err = json.Unmarshal(*v, &tags) 8657 if err != nil { 8658 return err 8659 } 8660 d.Tags = tags 8661 } 8662 } 8663 } 8664 8665 return nil 8666} 8667 8668// DomainAvailablilityCheckResult domain availablility check result. 8669type DomainAvailablilityCheckResult struct { 8670 autorest.Response `json:"-"` 8671 // Name - Name of the domain. 8672 Name *string `json:"name,omitempty"` 8673 // Available - <code>true</code> if domain can be purchased using CreateDomain API; otherwise, <code>false</code>. 8674 Available *bool `json:"available,omitempty"` 8675 // 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' 8676 DomainType DomainType `json:"domainType,omitempty"` 8677} 8678 8679// DomainCollection collection of domains. 8680type DomainCollection struct { 8681 autorest.Response `json:"-"` 8682 // Value - Collection of resources. 8683 Value *[]Domain `json:"value,omitempty"` 8684 // NextLink - Link to next page of resources. 8685 NextLink *string `json:"nextLink,omitempty"` 8686} 8687 8688// DomainCollectionIterator provides access to a complete listing of Domain values. 8689type DomainCollectionIterator struct { 8690 i int 8691 page DomainCollectionPage 8692} 8693 8694// Next advances to the next value. If there was an error making 8695// the request the iterator does not advance and the error is returned. 8696func (iter *DomainCollectionIterator) Next() error { 8697 iter.i++ 8698 if iter.i < len(iter.page.Values()) { 8699 return nil 8700 } 8701 err := iter.page.Next() 8702 if err != nil { 8703 iter.i-- 8704 return err 8705 } 8706 iter.i = 0 8707 return nil 8708} 8709 8710// NotDone returns true if the enumeration should be started or is not yet complete. 8711func (iter DomainCollectionIterator) NotDone() bool { 8712 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 8713} 8714 8715// Response returns the raw server response from the last page request. 8716func (iter DomainCollectionIterator) Response() DomainCollection { 8717 return iter.page.Response() 8718} 8719 8720// Value returns the current value or a zero-initialized value if the 8721// iterator has advanced beyond the end of the collection. 8722func (iter DomainCollectionIterator) Value() Domain { 8723 if !iter.page.NotDone() { 8724 return Domain{} 8725 } 8726 return iter.page.Values()[iter.i] 8727} 8728 8729// IsEmpty returns true if the ListResult contains no values. 8730func (dc DomainCollection) IsEmpty() bool { 8731 return dc.Value == nil || len(*dc.Value) == 0 8732} 8733 8734// domainCollectionPreparer prepares a request to retrieve the next set of results. 8735// It returns nil if no more results exist. 8736func (dc DomainCollection) domainCollectionPreparer() (*http.Request, error) { 8737 if dc.NextLink == nil || len(to.String(dc.NextLink)) < 1 { 8738 return nil, nil 8739 } 8740 return autorest.Prepare(&http.Request{}, 8741 autorest.AsJSON(), 8742 autorest.AsGet(), 8743 autorest.WithBaseURL(to.String(dc.NextLink))) 8744} 8745 8746// DomainCollectionPage contains a page of Domain values. 8747type DomainCollectionPage struct { 8748 fn func(DomainCollection) (DomainCollection, error) 8749 dc DomainCollection 8750} 8751 8752// Next advances to the next page of values. If there was an error making 8753// the request the page does not advance and the error is returned. 8754func (page *DomainCollectionPage) Next() error { 8755 next, err := page.fn(page.dc) 8756 if err != nil { 8757 return err 8758 } 8759 page.dc = next 8760 return nil 8761} 8762 8763// NotDone returns true if the page enumeration should be started or is not yet complete. 8764func (page DomainCollectionPage) NotDone() bool { 8765 return !page.dc.IsEmpty() 8766} 8767 8768// Response returns the raw server response from the last page request. 8769func (page DomainCollectionPage) Response() DomainCollection { 8770 return page.dc 8771} 8772 8773// Values returns the slice of values for the current page or nil if there are no values. 8774func (page DomainCollectionPage) Values() []Domain { 8775 if page.dc.IsEmpty() { 8776 return nil 8777 } 8778 return *page.dc.Value 8779} 8780 8781// DomainControlCenterSsoRequest single sign-on request information for domain management. 8782type DomainControlCenterSsoRequest struct { 8783 autorest.Response `json:"-"` 8784 // URL - URL where the single sign-on request is to be made. 8785 URL *string `json:"url,omitempty"` 8786 // PostParameterKey - Post parameter key. 8787 PostParameterKey *string `json:"postParameterKey,omitempty"` 8788 // PostParameterValue - Post parameter value. Client should use 'application/x-www-form-urlencoded' encoding for this value. 8789 PostParameterValue *string `json:"postParameterValue,omitempty"` 8790} 8791 8792// DomainOwnershipIdentifier domain ownership Identifier. 8793type DomainOwnershipIdentifier struct { 8794 autorest.Response `json:"-"` 8795 // DomainOwnershipIdentifierProperties - DomainOwnershipIdentifier resource specific properties 8796 *DomainOwnershipIdentifierProperties `json:"properties,omitempty"` 8797 // ID - Resource Id. 8798 ID *string `json:"id,omitempty"` 8799 // Name - Resource Name. 8800 Name *string `json:"name,omitempty"` 8801 // Kind - Kind of resource. 8802 Kind *string `json:"kind,omitempty"` 8803 // Type - Resource type. 8804 Type *string `json:"type,omitempty"` 8805} 8806 8807// MarshalJSON is the custom marshaler for DomainOwnershipIdentifier. 8808func (doi DomainOwnershipIdentifier) MarshalJSON() ([]byte, error) { 8809 objectMap := make(map[string]interface{}) 8810 if doi.DomainOwnershipIdentifierProperties != nil { 8811 objectMap["properties"] = doi.DomainOwnershipIdentifierProperties 8812 } 8813 if doi.ID != nil { 8814 objectMap["id"] = doi.ID 8815 } 8816 if doi.Name != nil { 8817 objectMap["name"] = doi.Name 8818 } 8819 if doi.Kind != nil { 8820 objectMap["kind"] = doi.Kind 8821 } 8822 if doi.Type != nil { 8823 objectMap["type"] = doi.Type 8824 } 8825 return json.Marshal(objectMap) 8826} 8827 8828// UnmarshalJSON is the custom unmarshaler for DomainOwnershipIdentifier struct. 8829func (doi *DomainOwnershipIdentifier) UnmarshalJSON(body []byte) error { 8830 var m map[string]*json.RawMessage 8831 err := json.Unmarshal(body, &m) 8832 if err != nil { 8833 return err 8834 } 8835 for k, v := range m { 8836 switch k { 8837 case "properties": 8838 if v != nil { 8839 var domainOwnershipIdentifierProperties DomainOwnershipIdentifierProperties 8840 err = json.Unmarshal(*v, &domainOwnershipIdentifierProperties) 8841 if err != nil { 8842 return err 8843 } 8844 doi.DomainOwnershipIdentifierProperties = &domainOwnershipIdentifierProperties 8845 } 8846 case "id": 8847 if v != nil { 8848 var ID string 8849 err = json.Unmarshal(*v, &ID) 8850 if err != nil { 8851 return err 8852 } 8853 doi.ID = &ID 8854 } 8855 case "name": 8856 if v != nil { 8857 var name string 8858 err = json.Unmarshal(*v, &name) 8859 if err != nil { 8860 return err 8861 } 8862 doi.Name = &name 8863 } 8864 case "kind": 8865 if v != nil { 8866 var kind string 8867 err = json.Unmarshal(*v, &kind) 8868 if err != nil { 8869 return err 8870 } 8871 doi.Kind = &kind 8872 } 8873 case "type": 8874 if v != nil { 8875 var typeVar string 8876 err = json.Unmarshal(*v, &typeVar) 8877 if err != nil { 8878 return err 8879 } 8880 doi.Type = &typeVar 8881 } 8882 } 8883 } 8884 8885 return nil 8886} 8887 8888// DomainOwnershipIdentifierCollection collection of domain ownership identifiers. 8889type DomainOwnershipIdentifierCollection struct { 8890 autorest.Response `json:"-"` 8891 // Value - Collection of resources. 8892 Value *[]DomainOwnershipIdentifier `json:"value,omitempty"` 8893 // NextLink - Link to next page of resources. 8894 NextLink *string `json:"nextLink,omitempty"` 8895} 8896 8897// DomainOwnershipIdentifierCollectionIterator provides access to a complete listing of DomainOwnershipIdentifier 8898// values. 8899type DomainOwnershipIdentifierCollectionIterator struct { 8900 i int 8901 page DomainOwnershipIdentifierCollectionPage 8902} 8903 8904// Next advances to the next value. If there was an error making 8905// the request the iterator does not advance and the error is returned. 8906func (iter *DomainOwnershipIdentifierCollectionIterator) Next() error { 8907 iter.i++ 8908 if iter.i < len(iter.page.Values()) { 8909 return nil 8910 } 8911 err := iter.page.Next() 8912 if err != nil { 8913 iter.i-- 8914 return err 8915 } 8916 iter.i = 0 8917 return nil 8918} 8919 8920// NotDone returns true if the enumeration should be started or is not yet complete. 8921func (iter DomainOwnershipIdentifierCollectionIterator) NotDone() bool { 8922 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 8923} 8924 8925// Response returns the raw server response from the last page request. 8926func (iter DomainOwnershipIdentifierCollectionIterator) Response() DomainOwnershipIdentifierCollection { 8927 return iter.page.Response() 8928} 8929 8930// Value returns the current value or a zero-initialized value if the 8931// iterator has advanced beyond the end of the collection. 8932func (iter DomainOwnershipIdentifierCollectionIterator) Value() DomainOwnershipIdentifier { 8933 if !iter.page.NotDone() { 8934 return DomainOwnershipIdentifier{} 8935 } 8936 return iter.page.Values()[iter.i] 8937} 8938 8939// IsEmpty returns true if the ListResult contains no values. 8940func (doic DomainOwnershipIdentifierCollection) IsEmpty() bool { 8941 return doic.Value == nil || len(*doic.Value) == 0 8942} 8943 8944// domainOwnershipIdentifierCollectionPreparer prepares a request to retrieve the next set of results. 8945// It returns nil if no more results exist. 8946func (doic DomainOwnershipIdentifierCollection) domainOwnershipIdentifierCollectionPreparer() (*http.Request, error) { 8947 if doic.NextLink == nil || len(to.String(doic.NextLink)) < 1 { 8948 return nil, nil 8949 } 8950 return autorest.Prepare(&http.Request{}, 8951 autorest.AsJSON(), 8952 autorest.AsGet(), 8953 autorest.WithBaseURL(to.String(doic.NextLink))) 8954} 8955 8956// DomainOwnershipIdentifierCollectionPage contains a page of DomainOwnershipIdentifier values. 8957type DomainOwnershipIdentifierCollectionPage struct { 8958 fn func(DomainOwnershipIdentifierCollection) (DomainOwnershipIdentifierCollection, error) 8959 doic DomainOwnershipIdentifierCollection 8960} 8961 8962// Next advances to the next page of values. If there was an error making 8963// the request the page does not advance and the error is returned. 8964func (page *DomainOwnershipIdentifierCollectionPage) Next() error { 8965 next, err := page.fn(page.doic) 8966 if err != nil { 8967 return err 8968 } 8969 page.doic = next 8970 return nil 8971} 8972 8973// NotDone returns true if the page enumeration should be started or is not yet complete. 8974func (page DomainOwnershipIdentifierCollectionPage) NotDone() bool { 8975 return !page.doic.IsEmpty() 8976} 8977 8978// Response returns the raw server response from the last page request. 8979func (page DomainOwnershipIdentifierCollectionPage) Response() DomainOwnershipIdentifierCollection { 8980 return page.doic 8981} 8982 8983// Values returns the slice of values for the current page or nil if there are no values. 8984func (page DomainOwnershipIdentifierCollectionPage) Values() []DomainOwnershipIdentifier { 8985 if page.doic.IsEmpty() { 8986 return nil 8987 } 8988 return *page.doic.Value 8989} 8990 8991// DomainOwnershipIdentifierProperties domainOwnershipIdentifier resource specific properties 8992type DomainOwnershipIdentifierProperties struct { 8993 // OwnershipID - Ownership Id. 8994 OwnershipID *string `json:"ownershipId,omitempty"` 8995} 8996 8997// DomainPatchResource ARM resource for a domain. 8998type DomainPatchResource struct { 8999 // DomainPatchResourceProperties - DomainPatchResource resource specific properties 9000 *DomainPatchResourceProperties `json:"properties,omitempty"` 9001 // ID - Resource Id. 9002 ID *string `json:"id,omitempty"` 9003 // Name - Resource Name. 9004 Name *string `json:"name,omitempty"` 9005 // Kind - Kind of resource. 9006 Kind *string `json:"kind,omitempty"` 9007 // Type - Resource type. 9008 Type *string `json:"type,omitempty"` 9009} 9010 9011// MarshalJSON is the custom marshaler for DomainPatchResource. 9012func (dpr DomainPatchResource) MarshalJSON() ([]byte, error) { 9013 objectMap := make(map[string]interface{}) 9014 if dpr.DomainPatchResourceProperties != nil { 9015 objectMap["properties"] = dpr.DomainPatchResourceProperties 9016 } 9017 if dpr.ID != nil { 9018 objectMap["id"] = dpr.ID 9019 } 9020 if dpr.Name != nil { 9021 objectMap["name"] = dpr.Name 9022 } 9023 if dpr.Kind != nil { 9024 objectMap["kind"] = dpr.Kind 9025 } 9026 if dpr.Type != nil { 9027 objectMap["type"] = dpr.Type 9028 } 9029 return json.Marshal(objectMap) 9030} 9031 9032// UnmarshalJSON is the custom unmarshaler for DomainPatchResource struct. 9033func (dpr *DomainPatchResource) UnmarshalJSON(body []byte) error { 9034 var m map[string]*json.RawMessage 9035 err := json.Unmarshal(body, &m) 9036 if err != nil { 9037 return err 9038 } 9039 for k, v := range m { 9040 switch k { 9041 case "properties": 9042 if v != nil { 9043 var domainPatchResourceProperties DomainPatchResourceProperties 9044 err = json.Unmarshal(*v, &domainPatchResourceProperties) 9045 if err != nil { 9046 return err 9047 } 9048 dpr.DomainPatchResourceProperties = &domainPatchResourceProperties 9049 } 9050 case "id": 9051 if v != nil { 9052 var ID string 9053 err = json.Unmarshal(*v, &ID) 9054 if err != nil { 9055 return err 9056 } 9057 dpr.ID = &ID 9058 } 9059 case "name": 9060 if v != nil { 9061 var name string 9062 err = json.Unmarshal(*v, &name) 9063 if err != nil { 9064 return err 9065 } 9066 dpr.Name = &name 9067 } 9068 case "kind": 9069 if v != nil { 9070 var kind string 9071 err = json.Unmarshal(*v, &kind) 9072 if err != nil { 9073 return err 9074 } 9075 dpr.Kind = &kind 9076 } 9077 case "type": 9078 if v != nil { 9079 var typeVar string 9080 err = json.Unmarshal(*v, &typeVar) 9081 if err != nil { 9082 return err 9083 } 9084 dpr.Type = &typeVar 9085 } 9086 } 9087 } 9088 9089 return nil 9090} 9091 9092// DomainPatchResourceProperties domainPatchResource resource specific properties 9093type DomainPatchResourceProperties struct { 9094 // ContactAdmin - Administrative contact. 9095 ContactAdmin *Contact `json:"contactAdmin,omitempty"` 9096 // ContactBilling - Billing contact. 9097 ContactBilling *Contact `json:"contactBilling,omitempty"` 9098 // ContactRegistrant - Registrant contact. 9099 ContactRegistrant *Contact `json:"contactRegistrant,omitempty"` 9100 // ContactTech - Technical contact. 9101 ContactTech *Contact `json:"contactTech,omitempty"` 9102 // RegistrationStatus - 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' 9103 RegistrationStatus DomainStatus `json:"registrationStatus,omitempty"` 9104 // ProvisioningState - Domain provisioning state. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 9105 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 9106 // NameServers - Name servers. 9107 NameServers *[]string `json:"nameServers,omitempty"` 9108 // Privacy - <code>true</code> if domain privacy is enabled for this domain; otherwise, <code>false</code>. 9109 Privacy *bool `json:"privacy,omitempty"` 9110 // CreatedTime - Domain creation timestamp. 9111 CreatedTime *date.Time `json:"createdTime,omitempty"` 9112 // ExpirationTime - Domain expiration timestamp. 9113 ExpirationTime *date.Time `json:"expirationTime,omitempty"` 9114 // LastRenewedTime - Timestamp when the domain was renewed last time. 9115 LastRenewedTime *date.Time `json:"lastRenewedTime,omitempty"` 9116 // AutoRenew - <code>true</code> if the domain should be automatically renewed; otherwise, <code>false</code>. 9117 AutoRenew *bool `json:"autoRenew,omitempty"` 9118 // ReadyForDNSRecordManagement - <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 9119 // it is hosted on name servers Azure has programmatic access to. 9120 ReadyForDNSRecordManagement *bool `json:"readyForDnsRecordManagement,omitempty"` 9121 // ManagedHostNames - All hostnames derived from the domain and assigned to Azure resources. 9122 ManagedHostNames *[]HostName `json:"managedHostNames,omitempty"` 9123 // Consent - Legal agreement consent. 9124 Consent *DomainPurchaseConsent `json:"consent,omitempty"` 9125 // DomainNotRenewableReasons - Reasons why domain is not renewable. 9126 DomainNotRenewableReasons *[]string `json:"domainNotRenewableReasons,omitempty"` 9127 // DNSType - Current DNS type. Possible values include: 'AzureDNS', 'DefaultDomainRegistrarDNS' 9128 DNSType DNSType `json:"dnsType,omitempty"` 9129 // DNSZoneID - Azure DNS Zone to use 9130 DNSZoneID *string `json:"dnsZoneId,omitempty"` 9131 // TargetDNSType - Target DNS type (would be used for migration). Possible values include: 'AzureDNS', 'DefaultDomainRegistrarDNS' 9132 TargetDNSType DNSType `json:"targetDnsType,omitempty"` 9133 AuthCode *string `json:"authCode,omitempty"` 9134} 9135 9136// DomainProperties domain resource specific properties 9137type DomainProperties struct { 9138 // ContactAdmin - Administrative contact. 9139 ContactAdmin *Contact `json:"contactAdmin,omitempty"` 9140 // ContactBilling - Billing contact. 9141 ContactBilling *Contact `json:"contactBilling,omitempty"` 9142 // ContactRegistrant - Registrant contact. 9143 ContactRegistrant *Contact `json:"contactRegistrant,omitempty"` 9144 // ContactTech - Technical contact. 9145 ContactTech *Contact `json:"contactTech,omitempty"` 9146 // RegistrationStatus - 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' 9147 RegistrationStatus DomainStatus `json:"registrationStatus,omitempty"` 9148 // ProvisioningState - Domain provisioning state. Possible values include: 'ProvisioningStateSucceeded', 'ProvisioningStateFailed', 'ProvisioningStateCanceled', 'ProvisioningStateInProgress', 'ProvisioningStateDeleting' 9149 ProvisioningState ProvisioningState `json:"provisioningState,omitempty"` 9150 // NameServers - Name servers. 9151 NameServers *[]string `json:"nameServers,omitempty"` 9152 // Privacy - <code>true</code> if domain privacy is enabled for this domain; otherwise, <code>false</code>. 9153 Privacy *bool `json:"privacy,omitempty"` 9154 // CreatedTime - Domain creation timestamp. 9155 CreatedTime *date.Time `json:"createdTime,omitempty"` 9156 // ExpirationTime - Domain expiration timestamp. 9157 ExpirationTime *date.Time `json:"expirationTime,omitempty"` 9158 // LastRenewedTime - Timestamp when the domain was renewed last time. 9159 LastRenewedTime *date.Time `json:"lastRenewedTime,omitempty"` 9160 // AutoRenew - <code>true</code> if the domain should be automatically renewed; otherwise, <code>false</code>. 9161 AutoRenew *bool `json:"autoRenew,omitempty"` 9162 // ReadyForDNSRecordManagement - <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 9163 // it is hosted on name servers Azure has programmatic access to. 9164 ReadyForDNSRecordManagement *bool `json:"readyForDnsRecordManagement,omitempty"` 9165 // ManagedHostNames - All hostnames derived from the domain and assigned to Azure resources. 9166 ManagedHostNames *[]HostName `json:"managedHostNames,omitempty"` 9167 // Consent - Legal agreement consent. 9168 Consent *DomainPurchaseConsent `json:"consent,omitempty"` 9169 // DomainNotRenewableReasons - Reasons why domain is not renewable. 9170 DomainNotRenewableReasons *[]string `json:"domainNotRenewableReasons,omitempty"` 9171 // DNSType - Current DNS type. Possible values include: 'AzureDNS', 'DefaultDomainRegistrarDNS' 9172 DNSType DNSType `json:"dnsType,omitempty"` 9173 // DNSZoneID - Azure DNS Zone to use 9174 DNSZoneID *string `json:"dnsZoneId,omitempty"` 9175 // TargetDNSType - Target DNS type (would be used for migration). Possible values include: 'AzureDNS', 'DefaultDomainRegistrarDNS' 9176 TargetDNSType DNSType `json:"targetDnsType,omitempty"` 9177 AuthCode *string `json:"authCode,omitempty"` 9178} 9179 9180// DomainPurchaseConsent domain purchase consent object, representing acceptance of applicable legal agreements. 9181type DomainPurchaseConsent struct { 9182 // AgreementKeys - List of applicable legal agreement keys. This list can be retrieved using ListLegalAgreements API under <code>TopLevelDomain</code> resource. 9183 AgreementKeys *[]string `json:"agreementKeys,omitempty"` 9184 // AgreedBy - Client IP address. 9185 AgreedBy *string `json:"agreedBy,omitempty"` 9186 // AgreedAt - Timestamp when the agreements were accepted. 9187 AgreedAt *date.Time `json:"agreedAt,omitempty"` 9188} 9189 9190// DomainRecommendationSearchParameters domain recommendation search parameters. 9191type DomainRecommendationSearchParameters struct { 9192 // Keywords - Keywords to be used for generating domain recommendations. 9193 Keywords *string `json:"keywords,omitempty"` 9194 // MaxDomainRecommendations - Maximum number of recommendations. 9195 MaxDomainRecommendations *int32 `json:"maxDomainRecommendations,omitempty"` 9196} 9197 9198// DomainsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a long-running 9199// operation. 9200type DomainsCreateOrUpdateFuture struct { 9201 azure.Future 9202 req *http.Request 9203} 9204 9205// Result returns the result of the asynchronous operation. 9206// If the operation has not completed it will return an error. 9207func (future DomainsCreateOrUpdateFuture) Result(client DomainsClient) (d Domain, err error) { 9208 var done bool 9209 done, err = future.Done(client) 9210 if err != nil { 9211 err = autorest.NewErrorWithError(err, "web.DomainsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure") 9212 return 9213 } 9214 if !done { 9215 return d, azure.NewAsyncOpIncompleteError("web.DomainsCreateOrUpdateFuture") 9216 } 9217 if future.PollingMethod() == azure.PollingLocation { 9218 d, err = client.CreateOrUpdateResponder(future.Response()) 9219 if err != nil { 9220 err = autorest.NewErrorWithError(err, "web.DomainsCreateOrUpdateFuture", "Result", future.Response(), "Failure responding to request") 9221 } 9222 return 9223 } 9224 var req *http.Request 9225 var resp *http.Response 9226 if future.PollingURL() != "" { 9227 req, err = http.NewRequest(http.MethodGet, future.PollingURL(), nil) 9228 if err != nil { 9229 return 9230 } 9231 } else { 9232 req = autorest.ChangeToGet(future.req) 9233 } 9234 resp, err = autorest.SendWithSender(client, req, 9235 autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...)) 9236 if err != nil { 9237 err = autorest.NewErrorWithError(err, "web.DomainsCreateOrUpdateFuture", "Result", resp, "Failure sending request") 9238 return 9239 } 9240 d, err = client.CreateOrUpdateResponder(resp) 9241 if err != nil { 9242 err = autorest.NewErrorWithError(err, "web.DomainsCreateOrUpdateFuture", "Result", resp, "Failure responding to request") 9243 } 9244 return 9245} 9246 9247// EnabledConfig enabled configuration. 9248type EnabledConfig struct { 9249 // Enabled - True if configuration is enabled, false if it is disabled and null if configuration is not set. 9250 Enabled *bool `json:"enabled,omitempty"` 9251} 9252 9253// ErrorEntity body of the error response returned from the API. 9254type ErrorEntity struct { 9255 // ExtendedCode - Type of error. 9256 ExtendedCode *string `json:"extendedCode,omitempty"` 9257 // MessageTemplate - Message template. 9258 MessageTemplate *string `json:"messageTemplate,omitempty"` 9259 // Parameters - Parameters for the template. 9260 Parameters *[]string `json:"parameters,omitempty"` 9261 // InnerErrors - Inner errors. 9262 InnerErrors *[]ErrorEntity `json:"innerErrors,omitempty"` 9263 // Code - Basic error code. 9264 Code *string `json:"code,omitempty"` 9265 // Message - Any details of the error. 9266 Message *string `json:"message,omitempty"` 9267} 9268 9269// ErrorResponse error Response. 9270type ErrorResponse struct { 9271 // Code - Error code. 9272 Code *string `json:"code,omitempty"` 9273 // Message - Error message indicating why the operation failed. 9274 Message *string `json:"message,omitempty"` 9275} 9276 9277// Experiments routing rules in production experiments. 9278type Experiments struct { 9279 // RampUpRules - List of ramp-up rules. 9280 RampUpRules *[]RampUpRule `json:"rampUpRules,omitempty"` 9281} 9282 9283// FileSystemApplicationLogsConfig application logs to file system configuration. 9284type FileSystemApplicationLogsConfig struct { 9285 // Level - Log level. Possible values include: 'Off', 'Verbose', 'Information', 'Warning', 'Error' 9286 Level LogLevel `json:"level,omitempty"` 9287} 9288 9289// FileSystemHTTPLogsConfig http logs to file system configuration. 9290type FileSystemHTTPLogsConfig struct { 9291 // RetentionInMb - Maximum size in megabytes that http log files can use. 9292 // When reached old log files will be removed to make space for new ones. 9293 // Value can range between 25 and 100. 9294 RetentionInMb *int32 `json:"retentionInMb,omitempty"` 9295 // RetentionInDays - Retention in days. 9296 // Remove files older than X days. 9297 // 0 or lower means no retention. 9298 RetentionInDays *int32 `json:"retentionInDays,omitempty"` 9299 // Enabled - True if configuration is enabled, false if it is disabled and null if configuration is not set. 9300 Enabled *bool `json:"enabled,omitempty"` 9301} 9302 9303// FunctionEnvelope web Job Information. 9304type FunctionEnvelope struct { 9305 autorest.Response `json:"-"` 9306 // FunctionEnvelopeProperties - FunctionEnvelope resource specific properties 9307 *FunctionEnvelopeProperties `json:"properties,omitempty"` 9308 // ID - Resource Id. 9309 ID *string `json:"id,omitempty"` 9310 // Name - Resource Name. 9311 Name *string `json:"name,omitempty"` 9312 // Kind - Kind of resource. 9313 Kind *string `json:"kind,omitempty"` 9314 // Type - Resource type. 9315 Type *string `json:"type,omitempty"` 9316} 9317 9318// MarshalJSON is the custom marshaler for FunctionEnvelope. 9319func (fe FunctionEnvelope) MarshalJSON() ([]byte, error) { 9320 objectMap := make(map[string]interface{}) 9321 if fe.FunctionEnvelopeProperties != nil { 9322 objectMap["properties"] = fe.FunctionEnvelopeProperties 9323 } 9324 if fe.ID != nil { 9325 objectMap["id"] = fe.ID 9326 } 9327 if fe.Name != nil { 9328 objectMap["name"] = fe.Name 9329 } 9330 if fe.Kind != nil { 9331 objectMap["kind"] = fe.Kind 9332 } 9333 if fe.Type != nil { 9334 objectMap["type"] = fe.Type 9335 } 9336 return json.Marshal(objectMap) 9337} 9338 9339// UnmarshalJSON is the custom unmarshaler for FunctionEnvelope struct. 9340func (fe *FunctionEnvelope) UnmarshalJSON(body []byte) error { 9341 var m map[string]*json.RawMessage 9342 err := json.Unmarshal(body, &m) 9343 if err != nil { 9344 return err 9345 } 9346 for k, v := range m { 9347 switch k { 9348 case "properties": 9349 if v != nil { 9350 var functionEnvelopeProperties FunctionEnvelopeProperties 9351 err = json.Unmarshal(*v, &functionEnvelopeProperties) 9352 if err != nil { 9353 return err 9354 } 9355 fe.FunctionEnvelopeProperties = &functionEnvelopeProperties 9356 } 9357 case "id": 9358 if v != nil { 9359 var ID string 9360 err = json.Unmarshal(*v, &ID) 9361 if err != nil { 9362 return err 9363 } 9364 fe.ID = &ID 9365 } 9366 case "name": 9367 if v != nil { 9368 var name string 9369 err = json.Unmarshal(*v, &name) 9370 if err != nil { 9371 return err 9372 } 9373 fe.Name = &name 9374 } 9375 case "kind": 9376 if v != nil { 9377 var kind string 9378 err = json.Unmarshal(*v, &kind) 9379 if err != nil { 9380 return err 9381 } 9382 fe.Kind = &kind 9383 } 9384 case "type": 9385 if v != nil { 9386 var typeVar string 9387 err = json.Unmarshal(*v, &typeVar) 9388 if err != nil { 9389 return err 9390 } 9391 fe.Type = &typeVar 9392 } 9393 } 9394 } 9395 9396 return nil 9397} 9398 9399// FunctionEnvelopeCollection collection of Kudu function information elements. 9400type FunctionEnvelopeCollection struct { 9401 autorest.Response `json:"-"` 9402 // Value - Collection of resources. 9403 Value *[]FunctionEnvelope `json:"value,omitempty"` 9404 // NextLink - Link to next page of resources. 9405 NextLink *string `json:"nextLink,omitempty"` 9406} 9407 9408// FunctionEnvelopeCollectionIterator provides access to a complete listing of FunctionEnvelope values. 9409type FunctionEnvelopeCollectionIterator struct { 9410 i int 9411 page FunctionEnvelopeCollectionPage 9412} 9413 9414// Next advances to the next value. If there was an error making 9415// the request the iterator does not advance and the error is returned. 9416func (iter *FunctionEnvelopeCollectionIterator) Next() error { 9417 iter.i++ 9418 if iter.i < len(iter.page.Values()) { 9419 return nil 9420 } 9421 err := iter.page.Next() 9422 if err != nil { 9423 iter.i-- 9424 return err 9425 } 9426 iter.i = 0 9427 return nil 9428} 9429 9430// NotDone returns true if the enumeration should be started or is not yet complete. 9431func (iter FunctionEnvelopeCollectionIterator) NotDone() bool { 9432 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 9433} 9434 9435// Response returns the raw server response from the last page request. 9436func (iter FunctionEnvelopeCollectionIterator) Response() FunctionEnvelopeCollection { 9437 return iter.page.Response() 9438} 9439 9440// Value returns the current value or a zero-initialized value if the 9441// iterator has advanced beyond the end of the collection. 9442func (iter FunctionEnvelopeCollectionIterator) Value() FunctionEnvelope { 9443 if !iter.page.NotDone() { 9444 return FunctionEnvelope{} 9445 } 9446 return iter.page.Values()[iter.i] 9447} 9448 9449// IsEmpty returns true if the ListResult contains no values. 9450func (fec FunctionEnvelopeCollection) IsEmpty() bool { 9451 return fec.Value == nil || len(*fec.Value) == 0 9452} 9453 9454// functionEnvelopeCollectionPreparer prepares a request to retrieve the next set of results. 9455// It returns nil if no more results exist. 9456func (fec FunctionEnvelopeCollection) functionEnvelopeCollectionPreparer() (*http.Request, error) { 9457 if fec.NextLink == nil || len(to.String(fec.NextLink)) < 1 { 9458 return nil, nil 9459 } 9460 return autorest.Prepare(&http.Request{}, 9461 autorest.AsJSON(), 9462 autorest.AsGet(), 9463 autorest.WithBaseURL(to.String(fec.NextLink))) 9464} 9465 9466// FunctionEnvelopeCollectionPage contains a page of FunctionEnvelope values. 9467type FunctionEnvelopeCollectionPage struct { 9468 fn func(FunctionEnvelopeCollection) (FunctionEnvelopeCollection, error) 9469 fec FunctionEnvelopeCollection 9470} 9471 9472// Next advances to the next page of values. If there was an error making 9473// the request the page does not advance and the error is returned. 9474func (page *FunctionEnvelopeCollectionPage) Next() error { 9475 next, err := page.fn(page.fec) 9476 if err != nil { 9477 return err 9478 } 9479 page.fec = next 9480 return nil 9481} 9482 9483// NotDone returns true if the page enumeration should be started or is not yet complete. 9484func (page FunctionEnvelopeCollectionPage) NotDone() bool { 9485 return !page.fec.IsEmpty() 9486} 9487 9488// Response returns the raw server response from the last page request. 9489func (page FunctionEnvelopeCollectionPage) Response() FunctionEnvelopeCollection { 9490 return page.fec 9491} 9492 9493// Values returns the slice of values for the current page or nil if there are no values. 9494func (page FunctionEnvelopeCollectionPage) Values() []FunctionEnvelope { 9495 if page.fec.IsEmpty() { 9496 return nil 9497 } 9498 return *page.fec.Value 9499} 9500 9501// FunctionEnvelopeProperties functionEnvelope resource specific properties 9502type FunctionEnvelopeProperties struct { 9503 // Name - Function name. 9504 Name *string `json:"name,omitempty"` 9505 // FunctionAppID - Function App ID. 9506 FunctionAppID *string `json:"functionAppId,omitempty"` 9507 // ScriptRootPathHref - Script root path URI. 9508 ScriptRootPathHref *string `json:"scriptRootPathHref,omitempty"` 9509 // ScriptHref - Script URI. 9510 ScriptHref *string `json:"scriptHref,omitempty"` 9511 // ConfigHref - Config URI. 9512 ConfigHref *string `json:"configHref,omitempty"` 9513 // SecretsFileHref - Secrets file URI. 9514 SecretsFileHref *string `json:"secretsFileHref,omitempty"` 9515 // Href - Function URI. 9516 Href *string `json:"href,omitempty"` 9517 // Config - Config information. 9518 Config interface{} `json:"config,omitempty"` 9519 // Files - File list. 9520 Files map[string]*string `json:"files"` 9521 // TestData - Test data used when testing via the Azure Portal. 9522 TestData *string `json:"testData,omitempty"` 9523} 9524 9525// MarshalJSON is the custom marshaler for FunctionEnvelopeProperties. 9526func (fe FunctionEnvelopeProperties) MarshalJSON() ([]byte, error) { 9527 objectMap := make(map[string]interface{}) 9528 if fe.Name != nil { 9529 objectMap["name"] = fe.Name 9530 } 9531 if fe.FunctionAppID != nil { 9532 objectMap["functionAppId"] = fe.FunctionAppID 9533 } 9534 if fe.ScriptRootPathHref != nil { 9535 objectMap["scriptRootPathHref"] = fe.ScriptRootPathHref 9536 } 9537 if fe.ScriptHref != nil { 9538 objectMap["scriptHref"] = fe.ScriptHref 9539 } 9540 if fe.ConfigHref != nil { 9541 objectMap["configHref"] = fe.ConfigHref 9542 } 9543 if fe.SecretsFileHref != nil { 9544 objectMap["secretsFileHref"] = fe.SecretsFileHref 9545 } 9546 if fe.Href != nil { 9547 objectMap["href"] = fe.Href 9548 } 9549 objectMap["config"] = fe.Config 9550 if fe.Files != nil { 9551 objectMap["files"] = fe.Files 9552 } 9553 if fe.TestData != nil { 9554 objectMap["testData"] = fe.TestData 9555 } 9556 return json.Marshal(objectMap) 9557} 9558 9559// FunctionSecrets function secrets. 9560type FunctionSecrets struct { 9561 autorest.Response `json:"-"` 9562 // FunctionSecretsProperties - FunctionSecrets resource specific properties 9563 *FunctionSecretsProperties `json:"properties,omitempty"` 9564 // ID - Resource Id. 9565 ID *string `json:"id,omitempty"` 9566 // Name - Resource Name. 9567 Name *string `json:"name,omitempty"` 9568 // Kind - Kind of resource. 9569 Kind *string `json:"kind,omitempty"` 9570 // Type - Resource type. 9571 Type *string `json:"type,omitempty"` 9572} 9573 9574// MarshalJSON is the custom marshaler for FunctionSecrets. 9575func (fs FunctionSecrets) MarshalJSON() ([]byte, error) { 9576 objectMap := make(map[string]interface{}) 9577 if fs.FunctionSecretsProperties != nil { 9578 objectMap["properties"] = fs.FunctionSecretsProperties 9579 } 9580 if fs.ID != nil { 9581 objectMap["id"] = fs.ID 9582 } 9583 if fs.Name != nil { 9584 objectMap["name"] = fs.Name 9585 } 9586 if fs.Kind != nil { 9587 objectMap["kind"] = fs.Kind 9588 } 9589 if fs.Type != nil { 9590 objectMap["type"] = fs.Type 9591 } 9592 return json.Marshal(objectMap) 9593} 9594 9595// UnmarshalJSON is the custom unmarshaler for FunctionSecrets struct. 9596func (fs *FunctionSecrets) UnmarshalJSON(body []byte) error { 9597 var m map[string]*json.RawMessage 9598 err := json.Unmarshal(body, &m) 9599 if err != nil { 9600 return err 9601 } 9602 for k, v := range m { 9603 switch k { 9604 case "properties": 9605 if v != nil { 9606 var functionSecretsProperties FunctionSecretsProperties 9607 err = json.Unmarshal(*v, &functionSecretsProperties) 9608 if err != nil { 9609 return err 9610 } 9611 fs.FunctionSecretsProperties = &functionSecretsProperties 9612 } 9613 case "id": 9614 if v != nil { 9615 var ID string 9616 err = json.Unmarshal(*v, &ID) 9617 if err != nil { 9618 return err 9619 } 9620 fs.ID = &ID 9621 } 9622 case "name": 9623 if v != nil { 9624 var name string 9625 err = json.Unmarshal(*v, &name) 9626 if err != nil { 9627 return err 9628 } 9629 fs.Name = &name 9630 } 9631 case "kind": 9632 if v != nil { 9633 var kind string 9634 err = json.Unmarshal(*v, &kind) 9635 if err != nil { 9636 return err 9637 } 9638 fs.Kind = &kind 9639 } 9640 case "type": 9641 if v != nil { 9642 var typeVar string 9643 err = json.Unmarshal(*v, &typeVar) 9644 if err != nil { 9645 return err 9646 } 9647 fs.Type = &typeVar 9648 } 9649 } 9650 } 9651 9652 return nil 9653} 9654 9655// FunctionSecretsProperties functionSecrets resource specific properties 9656type FunctionSecretsProperties struct { 9657 // Key - Secret key. 9658 Key *string `json:"key,omitempty"` 9659 // TriggerURL - Trigger URL. 9660 TriggerURL *string `json:"triggerUrl,omitempty"` 9661} 9662 9663// GeoRegion geographical region. 9664type GeoRegion struct { 9665 // GeoRegionProperties - GeoRegion resource specific properties 9666 *GeoRegionProperties `json:"properties,omitempty"` 9667 // ID - Resource Id. 9668 ID *string `json:"id,omitempty"` 9669 // Name - Resource Name. 9670 Name *string `json:"name,omitempty"` 9671 // Kind - Kind of resource. 9672 Kind *string `json:"kind,omitempty"` 9673 // Type - Resource type. 9674 Type *string `json:"type,omitempty"` 9675} 9676 9677// MarshalJSON is the custom marshaler for GeoRegion. 9678func (gr GeoRegion) MarshalJSON() ([]byte, error) { 9679 objectMap := make(map[string]interface{}) 9680 if gr.GeoRegionProperties != nil { 9681 objectMap["properties"] = gr.GeoRegionProperties 9682 } 9683 if gr.ID != nil { 9684 objectMap["id"] = gr.ID 9685 } 9686 if gr.Name != nil { 9687 objectMap["name"] = gr.Name 9688 } 9689 if gr.Kind != nil { 9690 objectMap["kind"] = gr.Kind 9691 } 9692 if gr.Type != nil { 9693 objectMap["type"] = gr.Type 9694 } 9695 return json.Marshal(objectMap) 9696} 9697 9698// UnmarshalJSON is the custom unmarshaler for GeoRegion struct. 9699func (gr *GeoRegion) UnmarshalJSON(body []byte) error { 9700 var m map[string]*json.RawMessage 9701 err := json.Unmarshal(body, &m) 9702 if err != nil { 9703 return err 9704 } 9705 for k, v := range m { 9706 switch k { 9707 case "properties": 9708 if v != nil { 9709 var geoRegionProperties GeoRegionProperties 9710 err = json.Unmarshal(*v, &geoRegionProperties) 9711 if err != nil { 9712 return err 9713 } 9714 gr.GeoRegionProperties = &geoRegionProperties 9715 } 9716 case "id": 9717 if v != nil { 9718 var ID string 9719 err = json.Unmarshal(*v, &ID) 9720 if err != nil { 9721 return err 9722 } 9723 gr.ID = &ID 9724 } 9725 case "name": 9726 if v != nil { 9727 var name string 9728 err = json.Unmarshal(*v, &name) 9729 if err != nil { 9730 return err 9731 } 9732 gr.Name = &name 9733 } 9734 case "kind": 9735 if v != nil { 9736 var kind string 9737 err = json.Unmarshal(*v, &kind) 9738 if err != nil { 9739 return err 9740 } 9741 gr.Kind = &kind 9742 } 9743 case "type": 9744 if v != nil { 9745 var typeVar string 9746 err = json.Unmarshal(*v, &typeVar) 9747 if err != nil { 9748 return err 9749 } 9750 gr.Type = &typeVar 9751 } 9752 } 9753 } 9754 9755 return nil 9756} 9757 9758// GeoRegionCollection collection of geographical regions. 9759type GeoRegionCollection struct { 9760 autorest.Response `json:"-"` 9761 // Value - Collection of resources. 9762 Value *[]GeoRegion `json:"value,omitempty"` 9763 // NextLink - Link to next page of resources. 9764 NextLink *string `json:"nextLink,omitempty"` 9765} 9766 9767// GeoRegionCollectionIterator provides access to a complete listing of GeoRegion values. 9768type GeoRegionCollectionIterator struct { 9769 i int 9770 page GeoRegionCollectionPage 9771} 9772 9773// Next advances to the next value. If there was an error making 9774// the request the iterator does not advance and the error is returned. 9775func (iter *GeoRegionCollectionIterator) Next() error { 9776 iter.i++ 9777 if iter.i < len(iter.page.Values()) { 9778 return nil 9779 } 9780 err := iter.page.Next() 9781 if err != nil { 9782 iter.i-- 9783 return err 9784 } 9785 iter.i = 0 9786 return nil 9787} 9788 9789// NotDone returns true if the enumeration should be started or is not yet complete. 9790func (iter GeoRegionCollectionIterator) NotDone() bool { 9791 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 9792} 9793 9794// Response returns the raw server response from the last page request. 9795func (iter GeoRegionCollectionIterator) Response() GeoRegionCollection { 9796 return iter.page.Response() 9797} 9798 9799// Value returns the current value or a zero-initialized value if the 9800// iterator has advanced beyond the end of the collection. 9801func (iter GeoRegionCollectionIterator) Value() GeoRegion { 9802 if !iter.page.NotDone() { 9803 return GeoRegion{} 9804 } 9805 return iter.page.Values()[iter.i] 9806} 9807 9808// IsEmpty returns true if the ListResult contains no values. 9809func (grc GeoRegionCollection) IsEmpty() bool { 9810 return grc.Value == nil || len(*grc.Value) == 0 9811} 9812 9813// geoRegionCollectionPreparer prepares a request to retrieve the next set of results. 9814// It returns nil if no more results exist. 9815func (grc GeoRegionCollection) geoRegionCollectionPreparer() (*http.Request, error) { 9816 if grc.NextLink == nil || len(to.String(grc.NextLink)) < 1 { 9817 return nil, nil 9818 } 9819 return autorest.Prepare(&http.Request{}, 9820 autorest.AsJSON(), 9821 autorest.AsGet(), 9822 autorest.WithBaseURL(to.String(grc.NextLink))) 9823} 9824 9825// GeoRegionCollectionPage contains a page of GeoRegion values. 9826type GeoRegionCollectionPage struct { 9827 fn func(GeoRegionCollection) (GeoRegionCollection, error) 9828 grc GeoRegionCollection 9829} 9830 9831// Next advances to the next page of values. If there was an error making 9832// the request the page does not advance and the error is returned. 9833func (page *GeoRegionCollectionPage) Next() error { 9834 next, err := page.fn(page.grc) 9835 if err != nil { 9836 return err 9837 } 9838 page.grc = next 9839 return nil 9840} 9841 9842// NotDone returns true if the page enumeration should be started or is not yet complete. 9843func (page GeoRegionCollectionPage) NotDone() bool { 9844 return !page.grc.IsEmpty() 9845} 9846 9847// Response returns the raw server response from the last page request. 9848func (page GeoRegionCollectionPage) Response() GeoRegionCollection { 9849 return page.grc 9850} 9851 9852// Values returns the slice of values for the current page or nil if there are no values. 9853func (page GeoRegionCollectionPage) Values() []GeoRegion { 9854 if page.grc.IsEmpty() { 9855 return nil 9856 } 9857 return *page.grc.Value 9858} 9859 9860// GeoRegionProperties geoRegion resource specific properties 9861type GeoRegionProperties struct { 9862 // Name - Region name. 9863 Name *string `json:"name,omitempty"` 9864 // Description - Region description. 9865 Description *string `json:"description,omitempty"` 9866 // DisplayName - Display name for region. 9867 DisplayName *string `json:"displayName,omitempty"` 9868} 9869 9870// GlobalCsmSkuDescription a Global SKU Description. 9871type GlobalCsmSkuDescription struct { 9872 // Name - Name of the resource SKU. 9873 Name *string `json:"name,omitempty"` 9874 // Tier - Service Tier of the resource SKU. 9875 Tier *string `json:"tier,omitempty"` 9876 // Size - Size specifier of the resource SKU. 9877 Size *string `json:"size,omitempty"` 9878 // Family - Family code of the resource SKU. 9879 Family *string `json:"family,omitempty"` 9880 // Capacity - Min, max, and default scale values of the SKU. 9881 Capacity *SkuCapacity `json:"capacity,omitempty"` 9882 // Locations - Locations of the SKU. 9883 Locations *[]string `json:"locations,omitempty"` 9884 // Capabilities - Capabilities of the SKU, e.g., is traffic manager enabled? 9885 Capabilities *[]Capability `json:"capabilities,omitempty"` 9886} 9887 9888// HandlerMapping the IIS handler mappings used to define which handler processes HTTP requests with certain 9889// extension. 9890// For example, it is used to configure php-cgi.exe process to handle all HTTP requests with *.php extension. 9891type HandlerMapping struct { 9892 // Extension - Requests with this extension will be handled using the specified FastCGI application. 9893 Extension *string `json:"extension,omitempty"` 9894 // ScriptProcessor - The absolute path to the FastCGI application. 9895 ScriptProcessor *string `json:"scriptProcessor,omitempty"` 9896 // Arguments - Command-line arguments to be passed to the script processor. 9897 Arguments *string `json:"arguments,omitempty"` 9898} 9899 9900// HostingEnvironmentDeploymentInfo information needed to create resources on an App Service Environment. 9901type HostingEnvironmentDeploymentInfo struct { 9902 // Name - Name of the App Service Environment. 9903 Name *string `json:"name,omitempty"` 9904 // Location - Location of the App Service Environment. 9905 Location *string `json:"location,omitempty"` 9906} 9907 9908// HostingEnvironmentDiagnostics diagnostics for an App Service Environment. 9909type HostingEnvironmentDiagnostics struct { 9910 autorest.Response `json:"-"` 9911 // Name - Name/identifier of the diagnostics. 9912 Name *string `json:"name,omitempty"` 9913 // DiagnosicsOutput - Diagnostics output. 9914 DiagnosicsOutput *string `json:"diagnosicsOutput,omitempty"` 9915} 9916 9917// HostingEnvironmentProfile specification for an App Service Environment to use for this resource. 9918type HostingEnvironmentProfile struct { 9919 // ID - Resource ID of the App Service Environment. 9920 ID *string `json:"id,omitempty"` 9921 // Name - Name of the App Service Environment. 9922 Name *string `json:"name,omitempty"` 9923 // Type - Resource type of the App Service Environment. 9924 Type *string `json:"type,omitempty"` 9925} 9926 9927// HostName details of a hostname derived from a domain. 9928type HostName struct { 9929 // Name - Name of the hostname. 9930 Name *string `json:"name,omitempty"` 9931 // 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. 9932 SiteNames *[]string `json:"siteNames,omitempty"` 9933 // 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. 9934 AzureResourceName *string `json:"azureResourceName,omitempty"` 9935 // AzureResourceType - Type of the Azure resource the hostname is assigned to. Possible values include: 'Website', 'TrafficManager' 9936 AzureResourceType AzureResourceType `json:"azureResourceType,omitempty"` 9937 // CustomHostNameDNSRecordType - Type of the DNS record. Possible values include: 'CName', 'A' 9938 CustomHostNameDNSRecordType CustomHostNameDNSRecordType `json:"customHostNameDnsRecordType,omitempty"` 9939 // HostNameType - Type of the hostname. Possible values include: 'Verified', 'Managed' 9940 HostNameType HostNameType `json:"hostNameType,omitempty"` 9941} 9942 9943// HostNameBinding a hostname binding object. 9944type HostNameBinding struct { 9945 autorest.Response `json:"-"` 9946 // HostNameBindingProperties - HostNameBinding resource specific properties 9947 *HostNameBindingProperties `json:"properties,omitempty"` 9948 // ID - Resource Id. 9949 ID *string `json:"id,omitempty"` 9950 // Name - Resource Name. 9951 Name *string `json:"name,omitempty"` 9952 // Kind - Kind of resource. 9953 Kind *string `json:"kind,omitempty"` 9954 // Type - Resource type. 9955 Type *string `json:"type,omitempty"` 9956} 9957 9958// MarshalJSON is the custom marshaler for HostNameBinding. 9959func (hnb HostNameBinding) MarshalJSON() ([]byte, error) { 9960 objectMap := make(map[string]interface{}) 9961 if hnb.HostNameBindingProperties != nil { 9962 objectMap["properties"] = hnb.HostNameBindingProperties 9963 } 9964 if hnb.ID != nil { 9965 objectMap["id"] = hnb.ID 9966 } 9967 if hnb.Name != nil { 9968 objectMap["name"] = hnb.Name 9969 } 9970 if hnb.Kind != nil { 9971 objectMap["kind"] = hnb.Kind 9972 } 9973 if hnb.Type != nil { 9974 objectMap["type"] = hnb.Type 9975 } 9976 return json.Marshal(objectMap) 9977} 9978 9979// UnmarshalJSON is the custom unmarshaler for HostNameBinding struct. 9980func (hnb *HostNameBinding) UnmarshalJSON(body []byte) error { 9981 var m map[string]*json.RawMessage 9982 err := json.Unmarshal(body, &m) 9983 if err != nil { 9984 return err 9985 } 9986 for k, v := range m { 9987 switch k { 9988 case "properties": 9989 if v != nil { 9990 var hostNameBindingProperties HostNameBindingProperties 9991 err = json.Unmarshal(*v, &hostNameBindingProperties) 9992 if err != nil { 9993 return err 9994 } 9995 hnb.HostNameBindingProperties = &hostNameBindingProperties 9996 } 9997 case "id": 9998 if v != nil { 9999 var ID string 10000 err = json.Unmarshal(*v, &ID) 10001 if err != nil { 10002 return err 10003 } 10004 hnb.ID = &ID 10005 } 10006 case "name": 10007 if v != nil { 10008 var name string 10009 err = json.Unmarshal(*v, &name) 10010 if err != nil { 10011 return err 10012 } 10013 hnb.Name = &name 10014 } 10015 case "kind": 10016 if v != nil { 10017 var kind string 10018 err = json.Unmarshal(*v, &kind) 10019 if err != nil { 10020 return err 10021 } 10022 hnb.Kind = &kind 10023 } 10024 case "type": 10025 if v != nil { 10026 var typeVar string 10027 err = json.Unmarshal(*v, &typeVar) 10028 if err != nil { 10029 return err 10030 } 10031 hnb.Type = &typeVar 10032 } 10033 } 10034 } 10035 10036 return nil 10037} 10038 10039// HostNameBindingCollection collection of hostname bindings. 10040type HostNameBindingCollection struct { 10041 autorest.Response `json:"-"` 10042 // Value - Collection of resources. 10043 Value *[]HostNameBinding `json:"value,omitempty"` 10044 // NextLink - Link to next page of resources. 10045 NextLink *string `json:"nextLink,omitempty"` 10046} 10047 10048// HostNameBindingCollectionIterator provides access to a complete listing of HostNameBinding values. 10049type HostNameBindingCollectionIterator struct { 10050 i int 10051 page HostNameBindingCollectionPage 10052} 10053 10054// Next advances to the next value. If there was an error making 10055// the request the iterator does not advance and the error is returned. 10056func (iter *HostNameBindingCollectionIterator) Next() error { 10057 iter.i++ 10058 if iter.i < len(iter.page.Values()) { 10059 return nil 10060 } 10061 err := iter.page.Next() 10062 if err != nil { 10063 iter.i-- 10064 return err 10065 } 10066 iter.i = 0 10067 return nil 10068} 10069 10070// NotDone returns true if the enumeration should be started or is not yet complete. 10071func (iter HostNameBindingCollectionIterator) NotDone() bool { 10072 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 10073} 10074 10075// Response returns the raw server response from the last page request. 10076func (iter HostNameBindingCollectionIterator) Response() HostNameBindingCollection { 10077 return iter.page.Response() 10078} 10079 10080// Value returns the current value or a zero-initialized value if the 10081// iterator has advanced beyond the end of the collection. 10082func (iter HostNameBindingCollectionIterator) Value() HostNameBinding { 10083 if !iter.page.NotDone() { 10084 return HostNameBinding{} 10085 } 10086 return iter.page.Values()[iter.i] 10087} 10088 10089// IsEmpty returns true if the ListResult contains no values. 10090func (hnbc HostNameBindingCollection) IsEmpty() bool { 10091 return hnbc.Value == nil || len(*hnbc.Value) == 0 10092} 10093 10094// hostNameBindingCollectionPreparer prepares a request to retrieve the next set of results. 10095// It returns nil if no more results exist. 10096func (hnbc HostNameBindingCollection) hostNameBindingCollectionPreparer() (*http.Request, error) { 10097 if hnbc.NextLink == nil || len(to.String(hnbc.NextLink)) < 1 { 10098 return nil, nil 10099 } 10100 return autorest.Prepare(&http.Request{}, 10101 autorest.AsJSON(), 10102 autorest.AsGet(), 10103 autorest.WithBaseURL(to.String(hnbc.NextLink))) 10104} 10105 10106// HostNameBindingCollectionPage contains a page of HostNameBinding values. 10107type HostNameBindingCollectionPage struct { 10108 fn func(HostNameBindingCollection) (HostNameBindingCollection, error) 10109 hnbc HostNameBindingCollection 10110} 10111 10112// Next advances to the next page of values. If there was an error making 10113// the request the page does not advance and the error is returned. 10114func (page *HostNameBindingCollectionPage) Next() error { 10115 next, err := page.fn(page.hnbc) 10116 if err != nil { 10117 return err 10118 } 10119 page.hnbc = next 10120 return nil 10121} 10122 10123// NotDone returns true if the page enumeration should be started or is not yet complete. 10124func (page HostNameBindingCollectionPage) NotDone() bool { 10125 return !page.hnbc.IsEmpty() 10126} 10127 10128// Response returns the raw server response from the last page request. 10129func (page HostNameBindingCollectionPage) Response() HostNameBindingCollection { 10130 return page.hnbc 10131} 10132 10133// Values returns the slice of values for the current page or nil if there are no values. 10134func (page HostNameBindingCollectionPage) Values() []HostNameBinding { 10135 if page.hnbc.IsEmpty() { 10136 return nil 10137 } 10138 return *page.hnbc.Value 10139} 10140 10141// HostNameBindingProperties hostNameBinding resource specific properties 10142type HostNameBindingProperties struct { 10143 // SiteName - App Service app name. 10144 SiteName *string `json:"siteName,omitempty"` 10145 // DomainID - Fully qualified ARM domain resource URI. 10146 DomainID *string `json:"domainId,omitempty"` 10147 // AzureResourceName - Azure resource name. 10148 AzureResourceName *string `json:"azureResourceName,omitempty"` 10149 // AzureResourceType - Azure resource type. Possible values include: 'Website', 'TrafficManager' 10150 AzureResourceType AzureResourceType `json:"azureResourceType,omitempty"` 10151 // CustomHostNameDNSRecordType - Custom DNS record type. Possible values include: 'CName', 'A' 10152 CustomHostNameDNSRecordType CustomHostNameDNSRecordType `json:"customHostNameDnsRecordType,omitempty"` 10153 // HostNameType - Hostname type. Possible values include: 'Verified', 'Managed' 10154 HostNameType HostNameType `json:"hostNameType,omitempty"` 10155 // SslState - SSL type. Possible values include: 'Disabled', 'SniEnabled', 'IPBasedEnabled' 10156 SslState SslState `json:"sslState,omitempty"` 10157 // Thumbprint - SSL certificate thumbprint 10158 Thumbprint *string `json:"thumbprint,omitempty"` 10159 // VirtualIP - Virtual IP address assigned to the hostname if IP based SSL is enabled. 10160 VirtualIP *string `json:"virtualIP,omitempty"` 10161} 10162 10163// HostNameSslState SSL-enabled hostname. 10164type HostNameSslState struct { 10165 // Name - Hostname. 10166 Name *string `json:"name,omitempty"` 10167 // SslState - SSL type. Possible values include: 'Disabled', 'SniEnabled', 'IPBasedEnabled' 10168 SslState SslState `json:"sslState,omitempty"` 10169 // VirtualIP - Virtual IP address assigned to the hostname if IP based SSL is enabled. 10170 VirtualIP *string `json:"virtualIP,omitempty"` 10171 // Thumbprint - SSL certificate thumbprint. 10172 Thumbprint *string `json:"thumbprint,omitempty"` 10173 // ToUpdate - Set to <code>true</code> to update existing hostname. 10174 ToUpdate *bool `json:"toUpdate,omitempty"` 10175 // HostType - Indicates whether the hostname is a standard or repository hostname. Possible values include: 'HostTypeStandard', 'HostTypeRepository' 10176 HostType HostType `json:"hostType,omitempty"` 10177} 10178 10179// HTTPLogsConfig http logs configuration. 10180type HTTPLogsConfig struct { 10181 // FileSystem - Http logs to file system configuration. 10182 FileSystem *FileSystemHTTPLogsConfig `json:"fileSystem,omitempty"` 10183 // AzureBlobStorage - Http logs to azure blob storage configuration. 10184 AzureBlobStorage *AzureBlobStorageHTTPLogsConfig `json:"azureBlobStorage,omitempty"` 10185} 10186 10187// HybridConnection hybrid Connection contract. This is used to configure a Hybrid Connection. 10188type HybridConnection struct { 10189 autorest.Response `json:"-"` 10190 // HybridConnectionProperties - HybridConnection resource specific properties 10191 *HybridConnectionProperties `json:"properties,omitempty"` 10192 // ID - Resource Id. 10193 ID *string `json:"id,omitempty"` 10194 // Name - Resource Name. 10195 Name *string `json:"name,omitempty"` 10196 // Kind - Kind of resource. 10197 Kind *string `json:"kind,omitempty"` 10198 // Type - Resource type. 10199 Type *string `json:"type,omitempty"` 10200} 10201 10202// MarshalJSON is the custom marshaler for HybridConnection. 10203func (hc HybridConnection) MarshalJSON() ([]byte, error) { 10204 objectMap := make(map[string]interface{}) 10205 if hc.HybridConnectionProperties != nil { 10206 objectMap["properties"] = hc.HybridConnectionProperties 10207 } 10208 if hc.ID != nil { 10209 objectMap["id"] = hc.ID 10210 } 10211 if hc.Name != nil { 10212 objectMap["name"] = hc.Name 10213 } 10214 if hc.Kind != nil { 10215 objectMap["kind"] = hc.Kind 10216 } 10217 if hc.Type != nil { 10218 objectMap["type"] = hc.Type 10219 } 10220 return json.Marshal(objectMap) 10221} 10222 10223// UnmarshalJSON is the custom unmarshaler for HybridConnection struct. 10224func (hc *HybridConnection) UnmarshalJSON(body []byte) error { 10225 var m map[string]*json.RawMessage 10226 err := json.Unmarshal(body, &m) 10227 if err != nil { 10228 return err 10229 } 10230 for k, v := range m { 10231 switch k { 10232 case "properties": 10233 if v != nil { 10234 var hybridConnectionProperties HybridConnectionProperties 10235 err = json.Unmarshal(*v, &hybridConnectionProperties) 10236 if err != nil { 10237 return err 10238 } 10239 hc.HybridConnectionProperties = &hybridConnectionProperties 10240 } 10241 case "id": 10242 if v != nil { 10243 var ID string 10244 err = json.Unmarshal(*v, &ID) 10245 if err != nil { 10246 return err 10247 } 10248 hc.ID = &ID 10249 } 10250 case "name": 10251 if v != nil { 10252 var name string 10253 err = json.Unmarshal(*v, &name) 10254 if err != nil { 10255 return err 10256 } 10257 hc.Name = &name 10258 } 10259 case "kind": 10260 if v != nil { 10261 var kind string 10262 err = json.Unmarshal(*v, &kind) 10263 if err != nil { 10264 return err 10265 } 10266 hc.Kind = &kind 10267 } 10268 case "type": 10269 if v != nil { 10270 var typeVar string 10271 err = json.Unmarshal(*v, &typeVar) 10272 if err != nil { 10273 return err 10274 } 10275 hc.Type = &typeVar 10276 } 10277 } 10278 } 10279 10280 return nil 10281} 10282 10283// HybridConnectionCollection collection of hostname bindings. 10284type HybridConnectionCollection struct { 10285 autorest.Response `json:"-"` 10286 // Value - Collection of resources. 10287 Value *[]HybridConnection `json:"value,omitempty"` 10288 // NextLink - Link to next page of resources. 10289 NextLink *string `json:"nextLink,omitempty"` 10290} 10291 10292// HybridConnectionCollectionIterator provides access to a complete listing of HybridConnection values. 10293type HybridConnectionCollectionIterator struct { 10294 i int 10295 page HybridConnectionCollectionPage 10296} 10297 10298// Next advances to the next value. If there was an error making 10299// the request the iterator does not advance and the error is returned. 10300func (iter *HybridConnectionCollectionIterator) Next() error { 10301 iter.i++ 10302 if iter.i < len(iter.page.Values()) { 10303 return nil 10304 } 10305 err := iter.page.Next() 10306 if err != nil { 10307 iter.i-- 10308 return err 10309 } 10310 iter.i = 0 10311 return nil 10312} 10313 10314// NotDone returns true if the enumeration should be started or is not yet complete. 10315func (iter HybridConnectionCollectionIterator) NotDone() bool { 10316 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 10317} 10318 10319// Response returns the raw server response from the last page request. 10320func (iter HybridConnectionCollectionIterator) Response() HybridConnectionCollection { 10321 return iter.page.Response() 10322} 10323 10324// Value returns the current value or a zero-initialized value if the 10325// iterator has advanced beyond the end of the collection. 10326func (iter HybridConnectionCollectionIterator) Value() HybridConnection { 10327 if !iter.page.NotDone() { 10328 return HybridConnection{} 10329 } 10330 return iter.page.Values()[iter.i] 10331} 10332 10333// IsEmpty returns true if the ListResult contains no values. 10334func (hcc HybridConnectionCollection) IsEmpty() bool { 10335 return hcc.Value == nil || len(*hcc.Value) == 0 10336} 10337 10338// hybridConnectionCollectionPreparer prepares a request to retrieve the next set of results. 10339// It returns nil if no more results exist. 10340func (hcc HybridConnectionCollection) hybridConnectionCollectionPreparer() (*http.Request, error) { 10341 if hcc.NextLink == nil || len(to.String(hcc.NextLink)) < 1 { 10342 return nil, nil 10343 } 10344 return autorest.Prepare(&http.Request{}, 10345 autorest.AsJSON(), 10346 autorest.AsGet(), 10347 autorest.WithBaseURL(to.String(hcc.NextLink))) 10348} 10349 10350// HybridConnectionCollectionPage contains a page of HybridConnection values. 10351type HybridConnectionCollectionPage struct { 10352 fn func(HybridConnectionCollection) (HybridConnectionCollection, error) 10353 hcc HybridConnectionCollection 10354} 10355 10356// Next advances to the next page of values. If there was an error making 10357// the request the page does not advance and the error is returned. 10358func (page *HybridConnectionCollectionPage) Next() error { 10359 next, err := page.fn(page.hcc) 10360 if err != nil { 10361 return err 10362 } 10363 page.hcc = next 10364 return nil 10365} 10366 10367// NotDone returns true if the page enumeration should be started or is not yet complete. 10368func (page HybridConnectionCollectionPage) NotDone() bool { 10369 return !page.hcc.IsEmpty() 10370} 10371 10372// Response returns the raw server response from the last page request. 10373func (page HybridConnectionCollectionPage) Response() HybridConnectionCollection { 10374 return page.hcc 10375} 10376 10377// Values returns the slice of values for the current page or nil if there are no values. 10378func (page HybridConnectionCollectionPage) Values() []HybridConnection { 10379 if page.hcc.IsEmpty() { 10380 return nil 10381 } 10382 return *page.hcc.Value 10383} 10384 10385// HybridConnectionKey hybrid Connection key contract. This has the send key name and value for a Hybrid 10386// Connection. 10387type HybridConnectionKey struct { 10388 autorest.Response `json:"-"` 10389 // HybridConnectionKeyProperties - HybridConnectionKey resource specific properties 10390 *HybridConnectionKeyProperties `json:"properties,omitempty"` 10391 // ID - Resource Id. 10392 ID *string `json:"id,omitempty"` 10393 // Name - Resource Name. 10394 Name *string `json:"name,omitempty"` 10395 // Kind - Kind of resource. 10396 Kind *string `json:"kind,omitempty"` 10397 // Type - Resource type. 10398 Type *string `json:"type,omitempty"` 10399} 10400 10401// MarshalJSON is the custom marshaler for HybridConnectionKey. 10402func (hck HybridConnectionKey) MarshalJSON() ([]byte, error) { 10403 objectMap := make(map[string]interface{}) 10404 if hck.HybridConnectionKeyProperties != nil { 10405 objectMap["properties"] = hck.HybridConnectionKeyProperties 10406 } 10407 if hck.ID != nil { 10408 objectMap["id"] = hck.ID 10409 } 10410 if hck.Name != nil { 10411 objectMap["name"] = hck.Name 10412 } 10413 if hck.Kind != nil { 10414 objectMap["kind"] = hck.Kind 10415 } 10416 if hck.Type != nil { 10417 objectMap["type"] = hck.Type 10418 } 10419 return json.Marshal(objectMap) 10420} 10421 10422// UnmarshalJSON is the custom unmarshaler for HybridConnectionKey struct. 10423func (hck *HybridConnectionKey) UnmarshalJSON(body []byte) error { 10424 var m map[string]*json.RawMessage 10425 err := json.Unmarshal(body, &m) 10426 if err != nil { 10427 return err 10428 } 10429 for k, v := range m { 10430 switch k { 10431 case "properties": 10432 if v != nil { 10433 var hybridConnectionKeyProperties HybridConnectionKeyProperties 10434 err = json.Unmarshal(*v, &hybridConnectionKeyProperties) 10435 if err != nil { 10436 return err 10437 } 10438 hck.HybridConnectionKeyProperties = &hybridConnectionKeyProperties 10439 } 10440 case "id": 10441 if v != nil { 10442 var ID string 10443 err = json.Unmarshal(*v, &ID) 10444 if err != nil { 10445 return err 10446 } 10447 hck.ID = &ID 10448 } 10449 case "name": 10450 if v != nil { 10451 var name string 10452 err = json.Unmarshal(*v, &name) 10453 if err != nil { 10454 return err 10455 } 10456 hck.Name = &name 10457 } 10458 case "kind": 10459 if v != nil { 10460 var kind string 10461 err = json.Unmarshal(*v, &kind) 10462 if err != nil { 10463 return err 10464 } 10465 hck.Kind = &kind 10466 } 10467 case "type": 10468 if v != nil { 10469 var typeVar string 10470 err = json.Unmarshal(*v, &typeVar) 10471 if err != nil { 10472 return err 10473 } 10474 hck.Type = &typeVar 10475 } 10476 } 10477 } 10478 10479 return nil 10480} 10481 10482// HybridConnectionKeyProperties hybridConnectionKey resource specific properties 10483type HybridConnectionKeyProperties struct { 10484 // SendKeyName - The name of the send key. 10485 SendKeyName *string `json:"sendKeyName,omitempty"` 10486 // SendKeyValue - The value of the send key. 10487 SendKeyValue *string `json:"sendKeyValue,omitempty"` 10488} 10489 10490// HybridConnectionLimits hybrid Connection limits contract. This is used to return the plan limits of Hybrid 10491// Connections. 10492type HybridConnectionLimits struct { 10493 autorest.Response `json:"-"` 10494 // HybridConnectionLimitsProperties - HybridConnectionLimits resource specific properties 10495 *HybridConnectionLimitsProperties `json:"properties,omitempty"` 10496 // ID - Resource Id. 10497 ID *string `json:"id,omitempty"` 10498 // Name - Resource Name. 10499 Name *string `json:"name,omitempty"` 10500 // Kind - Kind of resource. 10501 Kind *string `json:"kind,omitempty"` 10502 // Type - Resource type. 10503 Type *string `json:"type,omitempty"` 10504} 10505 10506// MarshalJSON is the custom marshaler for HybridConnectionLimits. 10507func (hcl HybridConnectionLimits) MarshalJSON() ([]byte, error) { 10508 objectMap := make(map[string]interface{}) 10509 if hcl.HybridConnectionLimitsProperties != nil { 10510 objectMap["properties"] = hcl.HybridConnectionLimitsProperties 10511 } 10512 if hcl.ID != nil { 10513 objectMap["id"] = hcl.ID 10514 } 10515 if hcl.Name != nil { 10516 objectMap["name"] = hcl.Name 10517 } 10518 if hcl.Kind != nil { 10519 objectMap["kind"] = hcl.Kind 10520 } 10521 if hcl.Type != nil { 10522 objectMap["type"] = hcl.Type 10523 } 10524 return json.Marshal(objectMap) 10525} 10526 10527// UnmarshalJSON is the custom unmarshaler for HybridConnectionLimits struct. 10528func (hcl *HybridConnectionLimits) UnmarshalJSON(body []byte) error { 10529 var m map[string]*json.RawMessage 10530 err := json.Unmarshal(body, &m) 10531 if err != nil { 10532 return err 10533 } 10534 for k, v := range m { 10535 switch k { 10536 case "properties": 10537 if v != nil { 10538 var hybridConnectionLimitsProperties HybridConnectionLimitsProperties 10539 err = json.Unmarshal(*v, &hybridConnectionLimitsProperties) 10540 if err != nil { 10541 return err 10542 } 10543 hcl.HybridConnectionLimitsProperties = &hybridConnectionLimitsProperties 10544 } 10545 case "id": 10546 if v != nil { 10547 var ID string 10548 err = json.Unmarshal(*v, &ID) 10549 if err != nil { 10550 return err 10551 } 10552 hcl.ID = &ID 10553 } 10554 case "name": 10555 if v != nil { 10556 var name string 10557 err = json.Unmarshal(*v, &name) 10558 if err != nil { 10559 return err 10560 } 10561 hcl.Name = &name 10562 } 10563 case "kind": 10564 if v != nil { 10565 var kind string 10566 err = json.Unmarshal(*v, &kind) 10567 if err != nil { 10568 return err 10569 } 10570 hcl.Kind = &kind 10571 } 10572 case "type": 10573 if v != nil { 10574 var typeVar string 10575 err = json.Unmarshal(*v, &typeVar) 10576 if err != nil { 10577 return err 10578 } 10579 hcl.Type = &typeVar 10580 } 10581 } 10582 } 10583 10584 return nil 10585} 10586 10587// HybridConnectionLimitsProperties hybridConnectionLimits resource specific properties 10588type HybridConnectionLimitsProperties struct { 10589 // Current - The current number of Hybrid Connections. 10590 Current *int32 `json:"current,omitempty"` 10591 // Maximum - The maximum number of Hybrid Connections allowed. 10592 Maximum *int32 `json:"maximum,omitempty"` 10593} 10594 10595// HybridConnectionProperties hybridConnection resource specific properties 10596type HybridConnectionProperties struct { 10597 // ServiceBusNamespace - The name of the Service Bus namespace. 10598 ServiceBusNamespace *string `json:"serviceBusNamespace,omitempty"` 10599 // RelayName - The name of the Service Bus relay. 10600 RelayName *string `json:"relayName,omitempty"` 10601 // RelayArmURI - The ARM URI to the Service Bus relay. 10602 RelayArmURI *string `json:"relayArmUri,omitempty"` 10603 // Hostname - The hostname of the endpoint. 10604 Hostname *string `json:"hostname,omitempty"` 10605 // Port - The port of the endpoint. 10606 Port *int32 `json:"port,omitempty"` 10607 // SendKeyName - The name of the Service Bus key which has Send permissions. This is used to authenticate to Service Bus. 10608 SendKeyName *string `json:"sendKeyName,omitempty"` 10609 // SendKeyValue - The value of the Service Bus key. This is used to authenticate to Service Bus. In ARM this key will not be returned 10610 // normally, use the POST /listKeys API instead. 10611 SendKeyValue *string `json:"sendKeyValue,omitempty"` 10612 // ServiceBusSuffix - The suffix for the service bus endpoint. By default this is .servicebus.windows.net 10613 ServiceBusSuffix *string `json:"serviceBusSuffix,omitempty"` 10614} 10615 10616// Identifier a domain specific resource identifier. 10617type Identifier struct { 10618 autorest.Response `json:"-"` 10619 // IdentifierProperties - Identifier resource specific properties 10620 *IdentifierProperties `json:"properties,omitempty"` 10621 // ID - Resource Id. 10622 ID *string `json:"id,omitempty"` 10623 // Name - Resource Name. 10624 Name *string `json:"name,omitempty"` 10625 // Kind - Kind of resource. 10626 Kind *string `json:"kind,omitempty"` 10627 // Type - Resource type. 10628 Type *string `json:"type,omitempty"` 10629} 10630 10631// MarshalJSON is the custom marshaler for Identifier. 10632func (i Identifier) MarshalJSON() ([]byte, error) { 10633 objectMap := make(map[string]interface{}) 10634 if i.IdentifierProperties != nil { 10635 objectMap["properties"] = i.IdentifierProperties 10636 } 10637 if i.ID != nil { 10638 objectMap["id"] = i.ID 10639 } 10640 if i.Name != nil { 10641 objectMap["name"] = i.Name 10642 } 10643 if i.Kind != nil { 10644 objectMap["kind"] = i.Kind 10645 } 10646 if i.Type != nil { 10647 objectMap["type"] = i.Type 10648 } 10649 return json.Marshal(objectMap) 10650} 10651 10652// UnmarshalJSON is the custom unmarshaler for Identifier struct. 10653func (i *Identifier) UnmarshalJSON(body []byte) error { 10654 var m map[string]*json.RawMessage 10655 err := json.Unmarshal(body, &m) 10656 if err != nil { 10657 return err 10658 } 10659 for k, v := range m { 10660 switch k { 10661 case "properties": 10662 if v != nil { 10663 var identifierProperties IdentifierProperties 10664 err = json.Unmarshal(*v, &identifierProperties) 10665 if err != nil { 10666 return err 10667 } 10668 i.IdentifierProperties = &identifierProperties 10669 } 10670 case "id": 10671 if v != nil { 10672 var ID string 10673 err = json.Unmarshal(*v, &ID) 10674 if err != nil { 10675 return err 10676 } 10677 i.ID = &ID 10678 } 10679 case "name": 10680 if v != nil { 10681 var name string 10682 err = json.Unmarshal(*v, &name) 10683 if err != nil { 10684 return err 10685 } 10686 i.Name = &name 10687 } 10688 case "kind": 10689 if v != nil { 10690 var kind string 10691 err = json.Unmarshal(*v, &kind) 10692 if err != nil { 10693 return err 10694 } 10695 i.Kind = &kind 10696 } 10697 case "type": 10698 if v != nil { 10699 var typeVar string 10700 err = json.Unmarshal(*v, &typeVar) 10701 if err != nil { 10702 return err 10703 } 10704 i.Type = &typeVar 10705 } 10706 } 10707 } 10708 10709 return nil 10710} 10711 10712// IdentifierCollection collection of identifiers. 10713type IdentifierCollection struct { 10714 autorest.Response `json:"-"` 10715 // Value - Collection of resources. 10716 Value *[]Identifier `json:"value,omitempty"` 10717 // NextLink - Link to next page of resources. 10718 NextLink *string `json:"nextLink,omitempty"` 10719} 10720 10721// IdentifierCollectionIterator provides access to a complete listing of Identifier values. 10722type IdentifierCollectionIterator struct { 10723 i int 10724 page IdentifierCollectionPage 10725} 10726 10727// Next advances to the next value. If there was an error making 10728// the request the iterator does not advance and the error is returned. 10729func (iter *IdentifierCollectionIterator) Next() error { 10730 iter.i++ 10731 if iter.i < len(iter.page.Values()) { 10732 return nil 10733 } 10734 err := iter.page.Next() 10735 if err != nil { 10736 iter.i-- 10737 return err 10738 } 10739 iter.i = 0 10740 return nil 10741} 10742 10743// NotDone returns true if the enumeration should be started or is not yet complete. 10744func (iter IdentifierCollectionIterator) NotDone() bool { 10745 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 10746} 10747 10748// Response returns the raw server response from the last page request. 10749func (iter IdentifierCollectionIterator) Response() IdentifierCollection { 10750 return iter.page.Response() 10751} 10752 10753// Value returns the current value or a zero-initialized value if the 10754// iterator has advanced beyond the end of the collection. 10755func (iter IdentifierCollectionIterator) Value() Identifier { 10756 if !iter.page.NotDone() { 10757 return Identifier{} 10758 } 10759 return iter.page.Values()[iter.i] 10760} 10761 10762// IsEmpty returns true if the ListResult contains no values. 10763func (ic IdentifierCollection) IsEmpty() bool { 10764 return ic.Value == nil || len(*ic.Value) == 0 10765} 10766 10767// identifierCollectionPreparer prepares a request to retrieve the next set of results. 10768// It returns nil if no more results exist. 10769func (ic IdentifierCollection) identifierCollectionPreparer() (*http.Request, error) { 10770 if ic.NextLink == nil || len(to.String(ic.NextLink)) < 1 { 10771 return nil, nil 10772 } 10773 return autorest.Prepare(&http.Request{}, 10774 autorest.AsJSON(), 10775 autorest.AsGet(), 10776 autorest.WithBaseURL(to.String(ic.NextLink))) 10777} 10778 10779// IdentifierCollectionPage contains a page of Identifier values. 10780type IdentifierCollectionPage struct { 10781 fn func(IdentifierCollection) (IdentifierCollection, error) 10782 ic IdentifierCollection 10783} 10784 10785// Next advances to the next page of values. If there was an error making 10786// the request the page does not advance and the error is returned. 10787func (page *IdentifierCollectionPage) Next() error { 10788 next, err := page.fn(page.ic) 10789 if err != nil { 10790 return err 10791 } 10792 page.ic = next 10793 return nil 10794} 10795 10796// NotDone returns true if the page enumeration should be started or is not yet complete. 10797func (page IdentifierCollectionPage) NotDone() bool { 10798 return !page.ic.IsEmpty() 10799} 10800 10801// Response returns the raw server response from the last page request. 10802func (page IdentifierCollectionPage) Response() IdentifierCollection { 10803 return page.ic 10804} 10805 10806// Values returns the slice of values for the current page or nil if there are no values. 10807func (page IdentifierCollectionPage) Values() []Identifier { 10808 if page.ic.IsEmpty() { 10809 return nil 10810 } 10811 return *page.ic.Value 10812} 10813 10814// IdentifierProperties identifier resource specific properties 10815type IdentifierProperties struct { 10816 // ID - String representation of the identity. 10817 ID *string `json:"id,omitempty"` 10818} 10819 10820// IPSecurityRestriction IP security restriction on an app. 10821type IPSecurityRestriction struct { 10822 // IPAddress - IP address the security restriction is valid for. 10823 IPAddress *string `json:"ipAddress,omitempty"` 10824 // SubnetMask - Subnet mask for the range of IP addresses the restriction is valid for. 10825 SubnetMask *string `json:"subnetMask,omitempty"` 10826} 10827 10828// Job web Job Information. 10829type Job struct { 10830 autorest.Response `json:"-"` 10831 // JobProperties - WebJob resource specific properties 10832 *JobProperties `json:"properties,omitempty"` 10833 // ID - Resource Id. 10834 ID *string `json:"id,omitempty"` 10835 // Name - Resource Name. 10836 Name *string `json:"name,omitempty"` 10837 // Kind - Kind of resource. 10838 Kind *string `json:"kind,omitempty"` 10839 // Type - Resource type. 10840 Type *string `json:"type,omitempty"` 10841} 10842 10843// MarshalJSON is the custom marshaler for Job. 10844func (j Job) MarshalJSON() ([]byte, error) { 10845 objectMap := make(map[string]interface{}) 10846 if j.JobProperties != nil { 10847 objectMap["properties"] = j.JobProperties 10848 } 10849 if j.ID != nil { 10850 objectMap["id"] = j.ID 10851 } 10852 if j.Name != nil { 10853 objectMap["name"] = j.Name 10854 } 10855 if j.Kind != nil { 10856 objectMap["kind"] = j.Kind 10857 } 10858 if j.Type != nil { 10859 objectMap["type"] = j.Type 10860 } 10861 return json.Marshal(objectMap) 10862} 10863 10864// UnmarshalJSON is the custom unmarshaler for Job struct. 10865func (j *Job) UnmarshalJSON(body []byte) error { 10866 var m map[string]*json.RawMessage 10867 err := json.Unmarshal(body, &m) 10868 if err != nil { 10869 return err 10870 } 10871 for k, v := range m { 10872 switch k { 10873 case "properties": 10874 if v != nil { 10875 var jobProperties JobProperties 10876 err = json.Unmarshal(*v, &jobProperties) 10877 if err != nil { 10878 return err 10879 } 10880 j.JobProperties = &jobProperties 10881 } 10882 case "id": 10883 if v != nil { 10884 var ID string 10885 err = json.Unmarshal(*v, &ID) 10886 if err != nil { 10887 return err 10888 } 10889 j.ID = &ID 10890 } 10891 case "name": 10892 if v != nil { 10893 var name string 10894 err = json.Unmarshal(*v, &name) 10895 if err != nil { 10896 return err 10897 } 10898 j.Name = &name 10899 } 10900 case "kind": 10901 if v != nil { 10902 var kind string 10903 err = json.Unmarshal(*v, &kind) 10904 if err != nil { 10905 return err 10906 } 10907 j.Kind = &kind 10908 } 10909 case "type": 10910 if v != nil { 10911 var typeVar string 10912 err = json.Unmarshal(*v, &typeVar) 10913 if err != nil { 10914 return err 10915 } 10916 j.Type = &typeVar 10917 } 10918 } 10919 } 10920 10921 return nil 10922} 10923 10924// JobCollection collection of Kudu web job information elements. 10925type JobCollection struct { 10926 autorest.Response `json:"-"` 10927 // Value - Collection of resources. 10928 Value *[]Job `json:"value,omitempty"` 10929 // NextLink - Link to next page of resources. 10930 NextLink *string `json:"nextLink,omitempty"` 10931} 10932 10933// JobCollectionIterator provides access to a complete listing of Job values. 10934type JobCollectionIterator struct { 10935 i int 10936 page JobCollectionPage 10937} 10938 10939// Next advances to the next value. If there was an error making 10940// the request the iterator does not advance and the error is returned. 10941func (iter *JobCollectionIterator) Next() error { 10942 iter.i++ 10943 if iter.i < len(iter.page.Values()) { 10944 return nil 10945 } 10946 err := iter.page.Next() 10947 if err != nil { 10948 iter.i-- 10949 return err 10950 } 10951 iter.i = 0 10952 return nil 10953} 10954 10955// NotDone returns true if the enumeration should be started or is not yet complete. 10956func (iter JobCollectionIterator) NotDone() bool { 10957 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 10958} 10959 10960// Response returns the raw server response from the last page request. 10961func (iter JobCollectionIterator) Response() JobCollection { 10962 return iter.page.Response() 10963} 10964 10965// Value returns the current value or a zero-initialized value if the 10966// iterator has advanced beyond the end of the collection. 10967func (iter JobCollectionIterator) Value() Job { 10968 if !iter.page.NotDone() { 10969 return Job{} 10970 } 10971 return iter.page.Values()[iter.i] 10972} 10973 10974// IsEmpty returns true if the ListResult contains no values. 10975func (jc JobCollection) IsEmpty() bool { 10976 return jc.Value == nil || len(*jc.Value) == 0 10977} 10978 10979// jobCollectionPreparer prepares a request to retrieve the next set of results. 10980// It returns nil if no more results exist. 10981func (jc JobCollection) jobCollectionPreparer() (*http.Request, error) { 10982 if jc.NextLink == nil || len(to.String(jc.NextLink)) < 1 { 10983 return nil, nil 10984 } 10985 return autorest.Prepare(&http.Request{}, 10986 autorest.AsJSON(), 10987 autorest.AsGet(), 10988 autorest.WithBaseURL(to.String(jc.NextLink))) 10989} 10990 10991// JobCollectionPage contains a page of Job values. 10992type JobCollectionPage struct { 10993 fn func(JobCollection) (JobCollection, error) 10994 jc JobCollection 10995} 10996 10997// Next advances to the next page of values. If there was an error making 10998// the request the page does not advance and the error is returned. 10999func (page *JobCollectionPage) Next() error { 11000 next, err := page.fn(page.jc) 11001 if err != nil { 11002 return err 11003 } 11004 page.jc = next 11005 return nil 11006} 11007 11008// NotDone returns true if the page enumeration should be started or is not yet complete. 11009func (page JobCollectionPage) NotDone() bool { 11010 return !page.jc.IsEmpty() 11011} 11012 11013// Response returns the raw server response from the last page request. 11014func (page JobCollectionPage) Response() JobCollection { 11015 return page.jc 11016} 11017 11018// Values returns the slice of values for the current page or nil if there are no values. 11019func (page JobCollectionPage) Values() []Job { 11020 if page.jc.IsEmpty() { 11021 return nil 11022 } 11023 return *page.jc.Value 11024} 11025 11026// JobProperties webJob resource specific properties 11027type JobProperties struct { 11028 // Name - Job name. Used as job identifier in ARM resource URI. 11029 Name *string `json:"name,omitempty"` 11030 // RunCommand - Run command. 11031 RunCommand *string `json:"runCommand,omitempty"` 11032 // URL - Job URL. 11033 URL *string `json:"url,omitempty"` 11034 // ExtraInfoURL - Extra Info URL. 11035 ExtraInfoURL *string `json:"extraInfoUrl,omitempty"` 11036 // JobType - Job type. Possible values include: 'Continuous', 'Triggered' 11037 JobType JobType `json:"jobType,omitempty"` 11038 // Error - Error information. 11039 Error *string `json:"error,omitempty"` 11040 // UsingSdk - Using SDK? 11041 UsingSdk *bool `json:"usingSdk,omitempty"` 11042 // Settings - Job settings. 11043 Settings map[string]interface{} `json:"settings"` 11044} 11045 11046// MarshalJSON is the custom marshaler for JobProperties. 11047func (j JobProperties) MarshalJSON() ([]byte, error) { 11048 objectMap := make(map[string]interface{}) 11049 if j.Name != nil { 11050 objectMap["name"] = j.Name 11051 } 11052 if j.RunCommand != nil { 11053 objectMap["runCommand"] = j.RunCommand 11054 } 11055 if j.URL != nil { 11056 objectMap["url"] = j.URL 11057 } 11058 if j.ExtraInfoURL != nil { 11059 objectMap["extraInfoUrl"] = j.ExtraInfoURL 11060 } 11061 if j.JobType != "" { 11062 objectMap["jobType"] = j.JobType 11063 } 11064 if j.Error != nil { 11065 objectMap["error"] = j.Error 11066 } 11067 if j.UsingSdk != nil { 11068 objectMap["usingSdk"] = j.UsingSdk 11069 } 11070 if j.Settings != nil { 11071 objectMap["settings"] = j.Settings 11072 } 11073 return json.Marshal(objectMap) 11074} 11075 11076// ListCapability ... 11077type ListCapability struct { 11078 autorest.Response `json:"-"` 11079 Value *[]Capability `json:"value,omitempty"` 11080} 11081 11082// ListCertificateEmail ... 11083type ListCertificateEmail struct { 11084 autorest.Response `json:"-"` 11085 Value *[]CertificateEmail `json:"value,omitempty"` 11086} 11087 11088// ListCertificateOrderAction ... 11089type ListCertificateOrderAction struct { 11090 autorest.Response `json:"-"` 11091 Value *[]CertificateOrderAction `json:"value,omitempty"` 11092} 11093 11094// ListHostingEnvironmentDiagnostics ... 11095type ListHostingEnvironmentDiagnostics struct { 11096 autorest.Response `json:"-"` 11097 Value *[]HostingEnvironmentDiagnostics `json:"value,omitempty"` 11098} 11099 11100// ListOperation ... 11101type ListOperation struct { 11102 autorest.Response `json:"-"` 11103 Value *[]Operation `json:"value,omitempty"` 11104} 11105 11106// ListVnetInfo ... 11107type ListVnetInfo struct { 11108 autorest.Response `json:"-"` 11109 Value *[]VnetInfo `json:"value,omitempty"` 11110} 11111 11112// ListVnetRoute ... 11113type ListVnetRoute struct { 11114 autorest.Response `json:"-"` 11115 Value *[]VnetRoute `json:"value,omitempty"` 11116} 11117 11118// LocalizableString localizable string object containing the name and a localized value. 11119type LocalizableString struct { 11120 // Value - Non-localized name. 11121 Value *string `json:"value,omitempty"` 11122 // LocalizedValue - Localized name. 11123 LocalizedValue *string `json:"localizedValue,omitempty"` 11124} 11125 11126// ManagedServiceIdentity managed service identity. 11127type ManagedServiceIdentity struct { 11128 // Type - Type of managed service identity. Possible values include: 'SystemAssigned' 11129 Type ManagedServiceIdentityType `json:"type,omitempty"` 11130 // TenantID - Tenant of managed service identity. 11131 TenantID *string `json:"tenantId,omitempty"` 11132 // PrincipalID - Principal Id of managed service identity. 11133 PrincipalID *string `json:"principalId,omitempty"` 11134} 11135 11136// MetricAvailabilily metric availability and retention. 11137type MetricAvailabilily struct { 11138 // TimeGrain - Time grain. 11139 TimeGrain *string `json:"timeGrain,omitempty"` 11140 // Retention - Retention period for the current time grain. 11141 Retention *string `json:"retention,omitempty"` 11142} 11143 11144// MetricAvailability retention policy of a resource metric. 11145type MetricAvailability struct { 11146 TimeGrain *string `json:"timeGrain,omitempty"` 11147 BlobDuration *string `json:"blobDuration,omitempty"` 11148} 11149 11150// MetricDefinition metadata for a metric. 11151type MetricDefinition struct { 11152 autorest.Response `json:"-"` 11153 // MetricDefinitionProperties - MetricDefinition resource specific properties 11154 *MetricDefinitionProperties `json:"properties,omitempty"` 11155 // ID - Resource Id. 11156 ID *string `json:"id,omitempty"` 11157 // Name - Resource Name. 11158 Name *string `json:"name,omitempty"` 11159 // Kind - Kind of resource. 11160 Kind *string `json:"kind,omitempty"` 11161 // Type - Resource type. 11162 Type *string `json:"type,omitempty"` 11163} 11164 11165// MarshalJSON is the custom marshaler for MetricDefinition. 11166func (md MetricDefinition) MarshalJSON() ([]byte, error) { 11167 objectMap := make(map[string]interface{}) 11168 if md.MetricDefinitionProperties != nil { 11169 objectMap["properties"] = md.MetricDefinitionProperties 11170 } 11171 if md.ID != nil { 11172 objectMap["id"] = md.ID 11173 } 11174 if md.Name != nil { 11175 objectMap["name"] = md.Name 11176 } 11177 if md.Kind != nil { 11178 objectMap["kind"] = md.Kind 11179 } 11180 if md.Type != nil { 11181 objectMap["type"] = md.Type 11182 } 11183 return json.Marshal(objectMap) 11184} 11185 11186// UnmarshalJSON is the custom unmarshaler for MetricDefinition struct. 11187func (md *MetricDefinition) UnmarshalJSON(body []byte) error { 11188 var m map[string]*json.RawMessage 11189 err := json.Unmarshal(body, &m) 11190 if err != nil { 11191 return err 11192 } 11193 for k, v := range m { 11194 switch k { 11195 case "properties": 11196 if v != nil { 11197 var metricDefinitionProperties MetricDefinitionProperties 11198 err = json.Unmarshal(*v, &metricDefinitionProperties) 11199 if err != nil { 11200 return err 11201 } 11202 md.MetricDefinitionProperties = &metricDefinitionProperties 11203 } 11204 case "id": 11205 if v != nil { 11206 var ID string 11207 err = json.Unmarshal(*v, &ID) 11208 if err != nil { 11209 return err 11210 } 11211 md.ID = &ID 11212 } 11213 case "name": 11214 if v != nil { 11215 var name string 11216 err = json.Unmarshal(*v, &name) 11217 if err != nil { 11218 return err 11219 } 11220 md.Name = &name 11221 } 11222 case "kind": 11223 if v != nil { 11224 var kind string 11225 err = json.Unmarshal(*v, &kind) 11226 if err != nil { 11227 return err 11228 } 11229 md.Kind = &kind 11230 } 11231 case "type": 11232 if v != nil { 11233 var typeVar string 11234 err = json.Unmarshal(*v, &typeVar) 11235 if err != nil { 11236 return err 11237 } 11238 md.Type = &typeVar 11239 } 11240 } 11241 } 11242 11243 return nil 11244} 11245 11246// MetricDefinitionProperties metricDefinition resource specific properties 11247type MetricDefinitionProperties struct { 11248 // Name - Name of the metric. 11249 Name *string `json:"name,omitempty"` 11250 // Unit - Unit of the metric. 11251 Unit *string `json:"unit,omitempty"` 11252 // PrimaryAggregationType - Primary aggregation type. 11253 PrimaryAggregationType *string `json:"primaryAggregationType,omitempty"` 11254 // MetricAvailabilities - List of time grains supported for the metric together with retention period. 11255 MetricAvailabilities *[]MetricAvailabilily `json:"metricAvailabilities,omitempty"` 11256 // DisplayName - Friendly name shown in the UI. 11257 DisplayName *string `json:"displayName,omitempty"` 11258} 11259 11260// MetricSpecification definition of a single resource metric. 11261type MetricSpecification struct { 11262 Name *string `json:"name,omitempty"` 11263 DisplayName *string `json:"displayName,omitempty"` 11264 DisplayDescription *string `json:"displayDescription,omitempty"` 11265 Unit *string `json:"unit,omitempty"` 11266 AggregationType *string `json:"aggregationType,omitempty"` 11267 SupportsInstanceLevelAggregation *bool `json:"supportsInstanceLevelAggregation,omitempty"` 11268 EnableRegionalMdmAccount *bool `json:"enableRegionalMdmAccount,omitempty"` 11269 SourceMdmAccount *string `json:"sourceMdmAccount,omitempty"` 11270 SourceMdmNamespace *string `json:"sourceMdmNamespace,omitempty"` 11271 MetricFilterPattern *string `json:"metricFilterPattern,omitempty"` 11272 FillGapWithZero *bool `json:"fillGapWithZero,omitempty"` 11273 IsInternal *bool `json:"isInternal,omitempty"` 11274 Dimensions *[]Dimension `json:"dimensions,omitempty"` 11275 Category *string `json:"category,omitempty"` 11276 Availabilities *[]MetricAvailability `json:"availabilities,omitempty"` 11277} 11278 11279// MigrateMySQLRequest mySQL migration request. 11280type MigrateMySQLRequest struct { 11281 // MigrateMySQLRequestProperties - MigrateMySqlRequest resource specific properties 11282 *MigrateMySQLRequestProperties `json:"properties,omitempty"` 11283 // ID - Resource Id. 11284 ID *string `json:"id,omitempty"` 11285 // Name - Resource Name. 11286 Name *string `json:"name,omitempty"` 11287 // Kind - Kind of resource. 11288 Kind *string `json:"kind,omitempty"` 11289 // Type - Resource type. 11290 Type *string `json:"type,omitempty"` 11291} 11292 11293// MarshalJSON is the custom marshaler for MigrateMySQLRequest. 11294func (mmsr MigrateMySQLRequest) MarshalJSON() ([]byte, error) { 11295 objectMap := make(map[string]interface{}) 11296 if mmsr.MigrateMySQLRequestProperties != nil { 11297 objectMap["properties"] = mmsr.MigrateMySQLRequestProperties 11298 } 11299 if mmsr.ID != nil { 11300 objectMap["id"] = mmsr.ID 11301 } 11302 if mmsr.Name != nil { 11303 objectMap["name"] = mmsr.Name 11304 } 11305 if mmsr.Kind != nil { 11306 objectMap["kind"] = mmsr.Kind 11307 } 11308 if mmsr.Type != nil { 11309 objectMap["type"] = mmsr.Type 11310 } 11311 return json.Marshal(objectMap) 11312} 11313 11314// UnmarshalJSON is the custom unmarshaler for MigrateMySQLRequest struct. 11315func (mmsr *MigrateMySQLRequest) UnmarshalJSON(body []byte) error { 11316 var m map[string]*json.RawMessage 11317 err := json.Unmarshal(body, &m) 11318 if err != nil { 11319 return err 11320 } 11321 for k, v := range m { 11322 switch k { 11323 case "properties": 11324 if v != nil { 11325 var migrateMySQLRequestProperties MigrateMySQLRequestProperties 11326 err = json.Unmarshal(*v, &migrateMySQLRequestProperties) 11327 if err != nil { 11328 return err 11329 } 11330 mmsr.MigrateMySQLRequestProperties = &migrateMySQLRequestProperties 11331 } 11332 case "id": 11333 if v != nil { 11334 var ID string 11335 err = json.Unmarshal(*v, &ID) 11336 if err != nil { 11337 return err 11338 } 11339 mmsr.ID = &ID 11340 } 11341 case "name": 11342 if v != nil { 11343 var name string 11344 err = json.Unmarshal(*v, &name) 11345 if err != nil { 11346 return err 11347 } 11348 mmsr.Name = &name 11349 } 11350 case "kind": 11351 if v != nil { 11352 var kind string 11353 err = json.Unmarshal(*v, &kind) 11354 if err != nil { 11355 return err 11356 } 11357 mmsr.Kind = &kind 11358 } 11359 case "type": 11360 if v != nil { 11361 var typeVar string 11362 err = json.Unmarshal(*v, &typeVar) 11363 if err != nil { 11364 return err 11365 } 11366 mmsr.Type = &typeVar 11367 } 11368 } 11369 } 11370 11371 return nil 11372} 11373 11374// MigrateMySQLRequestProperties migrateMySqlRequest resource specific properties 11375type MigrateMySQLRequestProperties struct { 11376 // ConnectionString - Connection string to the remote MySQL database. 11377 ConnectionString *string `json:"connectionString,omitempty"` 11378 // MigrationType - The type of migration operation to be done. Possible values include: 'LocalToRemote', 'RemoteToLocal' 11379 MigrationType MySQLMigrationType `json:"migrationType,omitempty"` 11380} 11381 11382// MigrateMySQLStatus mySQL migration status. 11383type MigrateMySQLStatus struct { 11384 autorest.Response `json:"-"` 11385 // MigrateMySQLStatusProperties - MigrateMySqlStatus resource specific properties 11386 *MigrateMySQLStatusProperties `json:"properties,omitempty"` 11387 // ID - Resource Id. 11388 ID *string `json:"id,omitempty"` 11389 // Name - Resource Name. 11390 Name *string `json:"name,omitempty"` 11391 // Kind - Kind of resource. 11392 Kind *string `json:"kind,omitempty"` 11393 // Type - Resource type. 11394 Type *string `json:"type,omitempty"` 11395} 11396 11397// MarshalJSON is the custom marshaler for MigrateMySQLStatus. 11398func (mmss MigrateMySQLStatus) MarshalJSON() ([]byte, error) { 11399 objectMap := make(map[string]interface{}) 11400 if mmss.MigrateMySQLStatusProperties != nil { 11401 objectMap["properties"] = mmss.MigrateMySQLStatusProperties 11402 } 11403 if mmss.ID != nil { 11404 objectMap["id"] = mmss.ID 11405 } 11406 if mmss.Name != nil { 11407 objectMap["name"] = mmss.Name 11408 } 11409 if mmss.Kind != nil { 11410 objectMap["kind"] = mmss.Kind 11411 } 11412 if mmss.Type != nil { 11413 objectMap["type"] = mmss.Type 11414 } 11415 return json.Marshal(objectMap) 11416} 11417 11418// UnmarshalJSON is the custom unmarshaler for MigrateMySQLStatus struct. 11419func (mmss *MigrateMySQLStatus) UnmarshalJSON(body []byte) error { 11420 var m map[string]*json.RawMessage 11421 err := json.Unmarshal(body, &m) 11422 if err != nil { 11423 return err 11424 } 11425 for k, v := range m { 11426 switch k { 11427 case "properties": 11428 if v != nil { 11429 var migrateMySQLStatusProperties MigrateMySQLStatusProperties 11430 err = json.Unmarshal(*v, &migrateMySQLStatusProperties) 11431 if err != nil { 11432 return err 11433 } 11434 mmss.MigrateMySQLStatusProperties = &migrateMySQLStatusProperties 11435 } 11436 case "id": 11437 if v != nil { 11438 var ID string 11439 err = json.Unmarshal(*v, &ID) 11440 if err != nil { 11441 return err 11442 } 11443 mmss.ID = &ID 11444 } 11445 case "name": 11446 if v != nil { 11447 var name string 11448 err = json.Unmarshal(*v, &name) 11449 if err != nil { 11450 return err 11451 } 11452 mmss.Name = &name 11453 } 11454 case "kind": 11455 if v != nil { 11456 var kind string 11457 err = json.Unmarshal(*v, &kind) 11458 if err != nil { 11459 return err 11460 } 11461 mmss.Kind = &kind 11462 } 11463 case "type": 11464 if v != nil { 11465 var typeVar string 11466 err = json.Unmarshal(*v, &typeVar) 11467 if err != nil { 11468 return err 11469 } 11470 mmss.Type = &typeVar 11471 } 11472 } 11473 } 11474 11475 return nil 11476} 11477 11478// MigrateMySQLStatusProperties migrateMySqlStatus resource specific properties 11479type MigrateMySQLStatusProperties struct { 11480 // MigrationOperationStatus - Status of the migration task. Possible values include: 'OperationStatusInProgress', 'OperationStatusFailed', 'OperationStatusSucceeded', 'OperationStatusTimedOut', 'OperationStatusCreated' 11481 MigrationOperationStatus OperationStatus `json:"migrationOperationStatus,omitempty"` 11482 // OperationID - Operation ID for the migration task. 11483 OperationID *string `json:"operationId,omitempty"` 11484 // LocalMySQLEnabled - True if the web app has in app MySql enabled 11485 LocalMySQLEnabled *bool `json:"localMySqlEnabled,omitempty"` 11486} 11487 11488// MSDeploy mSDeploy ARM PUT information 11489type MSDeploy struct { 11490 // MSDeployCore - Core resource properties 11491 *MSDeployCore `json:"properties,omitempty"` 11492 // ID - Resource Id. 11493 ID *string `json:"id,omitempty"` 11494 // Name - Resource Name. 11495 Name *string `json:"name,omitempty"` 11496 // Kind - Kind of resource. 11497 Kind *string `json:"kind,omitempty"` 11498 // Type - Resource type. 11499 Type *string `json:"type,omitempty"` 11500} 11501 11502// MarshalJSON is the custom marshaler for MSDeploy. 11503func (md MSDeploy) MarshalJSON() ([]byte, error) { 11504 objectMap := make(map[string]interface{}) 11505 if md.MSDeployCore != nil { 11506 objectMap["properties"] = md.MSDeployCore 11507 } 11508 if md.ID != nil { 11509 objectMap["id"] = md.ID 11510 } 11511 if md.Name != nil { 11512 objectMap["name"] = md.Name 11513 } 11514 if md.Kind != nil { 11515 objectMap["kind"] = md.Kind 11516 } 11517 if md.Type != nil { 11518 objectMap["type"] = md.Type 11519 } 11520 return json.Marshal(objectMap) 11521} 11522 11523// UnmarshalJSON is the custom unmarshaler for MSDeploy struct. 11524func (md *MSDeploy) UnmarshalJSON(body []byte) error { 11525 var m map[string]*json.RawMessage 11526 err := json.Unmarshal(body, &m) 11527 if err != nil { 11528 return err 11529 } 11530 for k, v := range m { 11531 switch k { 11532 case "properties": 11533 if v != nil { 11534 var mSDeployCore MSDeployCore 11535 err = json.Unmarshal(*v, &mSDeployCore) 11536 if err != nil { 11537 return err 11538 } 11539 md.MSDeployCore = &mSDeployCore 11540 } 11541 case "id": 11542 if v != nil { 11543 var ID string 11544 err = json.Unmarshal(*v, &ID) 11545 if err != nil { 11546 return err 11547 } 11548 md.ID = &ID 11549 } 11550 case "name": 11551 if v != nil { 11552 var name string 11553 err = json.Unmarshal(*v, &name) 11554 if err != nil { 11555 return err 11556 } 11557 md.Name = &name 11558 } 11559 case "kind": 11560 if v != nil { 11561 var kind string 11562 err = json.Unmarshal(*v, &kind) 11563 if err != nil { 11564 return err 11565 } 11566 md.Kind = &kind 11567 } 11568 case "type": 11569 if v != nil { 11570 var typeVar string 11571 err = json.Unmarshal(*v, &typeVar) 11572 if err != nil { 11573 return err 11574 } 11575 md.Type = &typeVar 11576 } 11577 } 11578 } 11579 11580 return nil 11581} 11582 11583// MSDeployCore mSDeploy ARM PUT core information 11584type MSDeployCore struct { 11585 // PackageURI - Package URI 11586 PackageURI *string `json:"packageUri,omitempty"` 11587 // ConnectionString - SQL Connection String 11588 ConnectionString *string `json:"connectionString,omitempty"` 11589 // DbType - Database Type 11590 DbType *string `json:"dbType,omitempty"` 11591 // SetParametersXMLFileURI - URI of MSDeploy Parameters file. Must not be set if SetParameters is used. 11592 SetParametersXMLFileURI *string `json:"setParametersXmlFileUri,omitempty"` 11593 // SetParameters - MSDeploy Parameters. Must not be set if SetParametersXmlFileUri is used. 11594 SetParameters map[string]*string `json:"setParameters"` 11595 // SkipAppData - Controls whether the MSDeploy operation skips the App_Data directory. 11596 // If set to <code>true</code>, the existing App_Data directory on the destination 11597 // will not be deleted, and any App_Data directory in the source will be ignored. 11598 // Setting is <code>false</code> by default. 11599 SkipAppData *bool `json:"skipAppData,omitempty"` 11600 // AppOffline - Sets the AppOffline rule while the MSDeploy operation executes. 11601 // Setting is <code>false</code> by default. 11602 AppOffline *bool `json:"appOffline,omitempty"` 11603} 11604 11605// MarshalJSON is the custom marshaler for MSDeployCore. 11606func (mdc MSDeployCore) MarshalJSON() ([]byte, error) { 11607 objectMap := make(map[string]interface{}) 11608 if mdc.PackageURI != nil { 11609 objectMap["packageUri"] = mdc.PackageURI 11610 } 11611 if mdc.ConnectionString != nil { 11612 objectMap["connectionString"] = mdc.ConnectionString 11613 } 11614 if mdc.DbType != nil { 11615 objectMap["dbType"] = mdc.DbType 11616 } 11617 if mdc.SetParametersXMLFileURI != nil { 11618 objectMap["setParametersXmlFileUri"] = mdc.SetParametersXMLFileURI 11619 } 11620 if mdc.SetParameters != nil { 11621 objectMap["setParameters"] = mdc.SetParameters 11622 } 11623 if mdc.SkipAppData != nil { 11624 objectMap["skipAppData"] = mdc.SkipAppData 11625 } 11626 if mdc.AppOffline != nil { 11627 objectMap["appOffline"] = mdc.AppOffline 11628 } 11629 return json.Marshal(objectMap) 11630} 11631 11632// MSDeployLog mSDeploy log 11633type MSDeployLog struct { 11634 autorest.Response `json:"-"` 11635 // MSDeployLogProperties - MSDeployLog resource specific properties 11636 *MSDeployLogProperties `json:"properties,omitempty"` 11637 // ID - Resource Id. 11638 ID *string `json:"id,omitempty"` 11639 // Name - Resource Name. 11640 Name *string `json:"name,omitempty"` 11641 // Kind - Kind of resource. 11642 Kind *string `json:"kind,omitempty"` 11643 // Type - Resource type. 11644 Type *string `json:"type,omitempty"` 11645} 11646 11647// MarshalJSON is the custom marshaler for MSDeployLog. 11648func (mdl MSDeployLog) MarshalJSON() ([]byte, error) { 11649 objectMap := make(map[string]interface{}) 11650 if mdl.MSDeployLogProperties != nil { 11651 objectMap["properties"] = mdl.MSDeployLogProperties 11652 } 11653 if mdl.ID != nil { 11654 objectMap["id"] = mdl.ID 11655 } 11656 if mdl.Name != nil { 11657 objectMap["name"] = mdl.Name 11658 } 11659 if mdl.Kind != nil { 11660 objectMap["kind"] = mdl.Kind 11661 } 11662 if mdl.Type != nil { 11663 objectMap["type"] = mdl.Type 11664 } 11665 return json.Marshal(objectMap) 11666} 11667 11668// UnmarshalJSON is the custom unmarshaler for MSDeployLog struct. 11669func (mdl *MSDeployLog) UnmarshalJSON(body []byte) error { 11670 var m map[string]*json.RawMessage 11671 err := json.Unmarshal(body, &m) 11672 if err != nil { 11673 return err 11674 } 11675 for k, v := range m { 11676 switch k { 11677 case "properties": 11678 if v != nil { 11679 var mSDeployLogProperties MSDeployLogProperties 11680 err = json.Unmarshal(*v, &mSDeployLogProperties) 11681 if err != nil { 11682 return err 11683 } 11684 mdl.MSDeployLogProperties = &mSDeployLogProperties 11685 } 11686 case "id": 11687 if v != nil { 11688 var ID string 11689 err = json.Unmarshal(*v, &ID) 11690 if err != nil { 11691 return err 11692 } 11693 mdl.ID = &ID 11694 } 11695 case "name": 11696 if v != nil { 11697 var name string 11698 err = json.Unmarshal(*v, &name) 11699 if err != nil { 11700 return err 11701 } 11702 mdl.Name = &name 11703 } 11704 case "kind": 11705 if v != nil { 11706 var kind string 11707 err = json.Unmarshal(*v, &kind) 11708 if err != nil { 11709 return err 11710 } 11711 mdl.Kind = &kind 11712 } 11713 case "type": 11714 if v != nil { 11715 var typeVar string 11716 err = json.Unmarshal(*v, &typeVar) 11717 if err != nil { 11718 return err 11719 } 11720 mdl.Type = &typeVar 11721 } 11722 } 11723 } 11724 11725 return nil 11726} 11727 11728// MSDeployLogEntry mSDeploy log entry 11729type MSDeployLogEntry struct { 11730 // Time - Timestamp of log entry 11731 Time *date.Time `json:"time,omitempty"` 11732 // Type - Log entry type. Possible values include: 'MSDeployLogEntryTypeMessage', 'MSDeployLogEntryTypeWarning', 'MSDeployLogEntryTypeError' 11733 Type MSDeployLogEntryType `json:"type,omitempty"` 11734 // Message - Log entry message 11735 Message *string `json:"message,omitempty"` 11736} 11737 11738// MSDeployLogProperties mSDeployLog resource specific properties 11739type MSDeployLogProperties struct { 11740 // Entries - List of log entry messages 11741 Entries *[]MSDeployLogEntry `json:"entries,omitempty"` 11742} 11743 11744// MSDeployStatus mSDeploy ARM response 11745type MSDeployStatus struct { 11746 autorest.Response `json:"-"` 11747 // MSDeployStatusProperties - MSDeployStatus resource specific properties 11748 *MSDeployStatusProperties `json:"properties,omitempty"` 11749 // ID - Resource Id. 11750 ID *string `json:"id,omitempty"` 11751 // Name - Resource Name. 11752 Name *string `json:"name,omitempty"` 11753 // Kind - Kind of resource. 11754 Kind *string `json:"kind,omitempty"` 11755 // Type - Resource type. 11756 Type *string `json:"type,omitempty"` 11757} 11758 11759// MarshalJSON is the custom marshaler for MSDeployStatus. 11760func (mds MSDeployStatus) MarshalJSON() ([]byte, error) { 11761 objectMap := make(map[string]interface{}) 11762 if mds.MSDeployStatusProperties != nil { 11763 objectMap["properties"] = mds.MSDeployStatusProperties 11764 } 11765 if mds.ID != nil { 11766 objectMap["id"] = mds.ID 11767 } 11768 if mds.Name != nil { 11769 objectMap["name"] = mds.Name 11770 } 11771 if mds.Kind != nil { 11772 objectMap["kind"] = mds.Kind 11773 } 11774 if mds.Type != nil { 11775 objectMap["type"] = mds.Type 11776 } 11777 return json.Marshal(objectMap) 11778} 11779 11780// UnmarshalJSON is the custom unmarshaler for MSDeployStatus struct. 11781func (mds *MSDeployStatus) UnmarshalJSON(body []byte) error { 11782 var m map[string]*json.RawMessage 11783 err := json.Unmarshal(body, &m) 11784 if err != nil { 11785 return err 11786 } 11787 for k, v := range m { 11788 switch k { 11789 case "properties": 11790 if v != nil { 11791 var mSDeployStatusProperties MSDeployStatusProperties 11792 err = json.Unmarshal(*v, &mSDeployStatusProperties) 11793 if err != nil { 11794 return err 11795 } 11796 mds.MSDeployStatusProperties = &mSDeployStatusProperties 11797 } 11798 case "id": 11799 if v != nil { 11800 var ID string 11801 err = json.Unmarshal(*v, &ID) 11802 if err != nil { 11803 return err 11804 } 11805 mds.ID = &ID 11806 } 11807 case "name": 11808 if v != nil { 11809 var name string 11810 err = json.Unmarshal(*v, &name) 11811 if err != nil { 11812 return err 11813 } 11814 mds.Name = &name 11815 } 11816 case "kind": 11817 if v != nil { 11818 var kind string 11819 err = json.Unmarshal(*v, &kind) 11820 if err != nil { 11821 return err 11822 } 11823 mds.Kind = &kind 11824 } 11825 case "type": 11826 if v != nil { 11827 var typeVar string 11828 err = json.Unmarshal(*v, &typeVar) 11829 if err != nil { 11830 return err 11831 } 11832 mds.Type = &typeVar 11833 } 11834 } 11835 } 11836 11837 return nil 11838} 11839 11840// MSDeployStatusProperties mSDeployStatus resource specific properties 11841type MSDeployStatusProperties struct { 11842 // Deployer - Username of deployer 11843 Deployer *string `json:"deployer,omitempty"` 11844 // ProvisioningState - Provisioning state. Possible values include: 'MSDeployProvisioningStateAccepted', 'MSDeployProvisioningStateRunning', 'MSDeployProvisioningStateSucceeded', 'MSDeployProvisioningStateFailed', 'MSDeployProvisioningStateCanceled' 11845 ProvisioningState MSDeployProvisioningState `json:"provisioningState,omitempty"` 11846 // StartTime - Start time of deploy operation 11847 StartTime *date.Time `json:"startTime,omitempty"` 11848 // EndTime - End time of deploy operation 11849 EndTime *date.Time `json:"endTime,omitempty"` 11850 // Complete - Whether the deployment operation has completed 11851 Complete *bool `json:"complete,omitempty"` 11852} 11853 11854// NameIdentifier identifies an object. 11855type NameIdentifier struct { 11856 // Name - Name of the object. 11857 Name *string `json:"name,omitempty"` 11858} 11859 11860// NameIdentifierCollection collection of domain name identifiers. 11861type NameIdentifierCollection struct { 11862 autorest.Response `json:"-"` 11863 // Value - Collection of resources. 11864 Value *[]NameIdentifier `json:"value,omitempty"` 11865 // NextLink - Link to next page of resources. 11866 NextLink *string `json:"nextLink,omitempty"` 11867} 11868 11869// NameIdentifierCollectionIterator provides access to a complete listing of NameIdentifier values. 11870type NameIdentifierCollectionIterator struct { 11871 i int 11872 page NameIdentifierCollectionPage 11873} 11874 11875// Next advances to the next value. If there was an error making 11876// the request the iterator does not advance and the error is returned. 11877func (iter *NameIdentifierCollectionIterator) Next() error { 11878 iter.i++ 11879 if iter.i < len(iter.page.Values()) { 11880 return nil 11881 } 11882 err := iter.page.Next() 11883 if err != nil { 11884 iter.i-- 11885 return err 11886 } 11887 iter.i = 0 11888 return nil 11889} 11890 11891// NotDone returns true if the enumeration should be started or is not yet complete. 11892func (iter NameIdentifierCollectionIterator) NotDone() bool { 11893 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 11894} 11895 11896// Response returns the raw server response from the last page request. 11897func (iter NameIdentifierCollectionIterator) Response() NameIdentifierCollection { 11898 return iter.page.Response() 11899} 11900 11901// Value returns the current value or a zero-initialized value if the 11902// iterator has advanced beyond the end of the collection. 11903func (iter NameIdentifierCollectionIterator) Value() NameIdentifier { 11904 if !iter.page.NotDone() { 11905 return NameIdentifier{} 11906 } 11907 return iter.page.Values()[iter.i] 11908} 11909 11910// IsEmpty returns true if the ListResult contains no values. 11911func (nic NameIdentifierCollection) IsEmpty() bool { 11912 return nic.Value == nil || len(*nic.Value) == 0 11913} 11914 11915// nameIdentifierCollectionPreparer prepares a request to retrieve the next set of results. 11916// It returns nil if no more results exist. 11917func (nic NameIdentifierCollection) nameIdentifierCollectionPreparer() (*http.Request, error) { 11918 if nic.NextLink == nil || len(to.String(nic.NextLink)) < 1 { 11919 return nil, nil 11920 } 11921 return autorest.Prepare(&http.Request{}, 11922 autorest.AsJSON(), 11923 autorest.AsGet(), 11924 autorest.WithBaseURL(to.String(nic.NextLink))) 11925} 11926 11927// NameIdentifierCollectionPage contains a page of NameIdentifier values. 11928type NameIdentifierCollectionPage struct { 11929 fn func(NameIdentifierCollection) (NameIdentifierCollection, error) 11930 nic NameIdentifierCollection 11931} 11932 11933// Next advances to the next page of values. If there was an error making 11934// the request the page does not advance and the error is returned. 11935func (page *NameIdentifierCollectionPage) Next() error { 11936 next, err := page.fn(page.nic) 11937 if err != nil { 11938 return err 11939 } 11940 page.nic = next 11941 return nil 11942} 11943 11944// NotDone returns true if the page enumeration should be started or is not yet complete. 11945func (page NameIdentifierCollectionPage) NotDone() bool { 11946 return !page.nic.IsEmpty() 11947} 11948 11949// Response returns the raw server response from the last page request. 11950func (page NameIdentifierCollectionPage) Response() NameIdentifierCollection { 11951 return page.nic 11952} 11953 11954// Values returns the slice of values for the current page or nil if there are no values. 11955func (page NameIdentifierCollectionPage) Values() []NameIdentifier { 11956 if page.nic.IsEmpty() { 11957 return nil 11958 } 11959 return *page.nic.Value 11960} 11961 11962// NameValuePair name value pair. 11963type NameValuePair struct { 11964 // Name - Pair name. 11965 Name *string `json:"name,omitempty"` 11966 // Value - Pair value. 11967 Value *string `json:"value,omitempty"` 11968} 11969 11970// NetworkAccessControlEntry network access control entry. 11971type NetworkAccessControlEntry struct { 11972 // Action - Action object. Possible values include: 'Permit', 'Deny' 11973 Action AccessControlEntryAction `json:"action,omitempty"` 11974 // Description - Description of network access control entry. 11975 Description *string `json:"description,omitempty"` 11976 // Order - Order of precedence. 11977 Order *int32 `json:"order,omitempty"` 11978 // RemoteSubnet - Remote subnet. 11979 RemoteSubnet *string `json:"remoteSubnet,omitempty"` 11980} 11981 11982// NetworkFeatures full view of network features for an app (presently VNET integration and Hybrid Connections). 11983type NetworkFeatures struct { 11984 autorest.Response `json:"-"` 11985 // NetworkFeaturesProperties - NetworkFeatures resource specific properties 11986 *NetworkFeaturesProperties `json:"properties,omitempty"` 11987 // ID - Resource Id. 11988 ID *string `json:"id,omitempty"` 11989 // Name - Resource Name. 11990 Name *string `json:"name,omitempty"` 11991 // Kind - Kind of resource. 11992 Kind *string `json:"kind,omitempty"` 11993 // Type - Resource type. 11994 Type *string `json:"type,omitempty"` 11995} 11996 11997// MarshalJSON is the custom marshaler for NetworkFeatures. 11998func (nf NetworkFeatures) MarshalJSON() ([]byte, error) { 11999 objectMap := make(map[string]interface{}) 12000 if nf.NetworkFeaturesProperties != nil { 12001 objectMap["properties"] = nf.NetworkFeaturesProperties 12002 } 12003 if nf.ID != nil { 12004 objectMap["id"] = nf.ID 12005 } 12006 if nf.Name != nil { 12007 objectMap["name"] = nf.Name 12008 } 12009 if nf.Kind != nil { 12010 objectMap["kind"] = nf.Kind 12011 } 12012 if nf.Type != nil { 12013 objectMap["type"] = nf.Type 12014 } 12015 return json.Marshal(objectMap) 12016} 12017 12018// UnmarshalJSON is the custom unmarshaler for NetworkFeatures struct. 12019func (nf *NetworkFeatures) UnmarshalJSON(body []byte) error { 12020 var m map[string]*json.RawMessage 12021 err := json.Unmarshal(body, &m) 12022 if err != nil { 12023 return err 12024 } 12025 for k, v := range m { 12026 switch k { 12027 case "properties": 12028 if v != nil { 12029 var networkFeaturesProperties NetworkFeaturesProperties 12030 err = json.Unmarshal(*v, &networkFeaturesProperties) 12031 if err != nil { 12032 return err 12033 } 12034 nf.NetworkFeaturesProperties = &networkFeaturesProperties 12035 } 12036 case "id": 12037 if v != nil { 12038 var ID string 12039 err = json.Unmarshal(*v, &ID) 12040 if err != nil { 12041 return err 12042 } 12043 nf.ID = &ID 12044 } 12045 case "name": 12046 if v != nil { 12047 var name string 12048 err = json.Unmarshal(*v, &name) 12049 if err != nil { 12050 return err 12051 } 12052 nf.Name = &name 12053 } 12054 case "kind": 12055 if v != nil { 12056 var kind string 12057 err = json.Unmarshal(*v, &kind) 12058 if err != nil { 12059 return err 12060 } 12061 nf.Kind = &kind 12062 } 12063 case "type": 12064 if v != nil { 12065 var typeVar string 12066 err = json.Unmarshal(*v, &typeVar) 12067 if err != nil { 12068 return err 12069 } 12070 nf.Type = &typeVar 12071 } 12072 } 12073 } 12074 12075 return nil 12076} 12077 12078// NetworkFeaturesProperties networkFeatures resource specific properties 12079type NetworkFeaturesProperties struct { 12080 // VirtualNetworkName - The Virtual Network name. 12081 VirtualNetworkName *string `json:"virtualNetworkName,omitempty"` 12082 // VirtualNetworkConnection - The Virtual Network summary view. 12083 VirtualNetworkConnection *VnetInfo `json:"virtualNetworkConnection,omitempty"` 12084 // HybridConnections - The Hybrid Connections summary view. 12085 HybridConnections *[]RelayServiceConnectionEntity `json:"hybridConnections,omitempty"` 12086 // HybridConnectionsV2 - The Hybrid Connection V2 (Service Bus) view. 12087 HybridConnectionsV2 *[]HybridConnection `json:"hybridConnectionsV2,omitempty"` 12088} 12089 12090// Operation an operation on a resource. 12091type Operation struct { 12092 autorest.Response `json:"-"` 12093 // ID - Operation ID. 12094 ID *string `json:"id,omitempty"` 12095 // Name - Operation name. 12096 Name *string `json:"name,omitempty"` 12097 // Status - The current status of the operation. Possible values include: 'OperationStatusInProgress', 'OperationStatusFailed', 'OperationStatusSucceeded', 'OperationStatusTimedOut', 'OperationStatusCreated' 12098 Status OperationStatus `json:"status,omitempty"` 12099 // Errors - Any errors associate with the operation. 12100 Errors *[]ErrorEntity `json:"errors,omitempty"` 12101 // CreatedTime - Time when operation has started. 12102 CreatedTime *date.Time `json:"createdTime,omitempty"` 12103 // ModifiedTime - Time when operation has been updated. 12104 ModifiedTime *date.Time `json:"modifiedTime,omitempty"` 12105 // ExpirationTime - Time when operation will expire. 12106 ExpirationTime *date.Time `json:"expirationTime,omitempty"` 12107 // GeoMasterOperationID - Applicable only for stamp operation ids. 12108 GeoMasterOperationID *uuid.UUID `json:"geoMasterOperationId,omitempty"` 12109} 12110 12111// PerfMonCounterCollection collection of performance monitor counters. 12112type PerfMonCounterCollection struct { 12113 autorest.Response `json:"-"` 12114 // Value - Collection of resources. 12115 Value *[]PerfMonResponse `json:"value,omitempty"` 12116 // NextLink - Link to next page of resources. 12117 NextLink *string `json:"nextLink,omitempty"` 12118} 12119 12120// PerfMonCounterCollectionIterator provides access to a complete listing of PerfMonResponse values. 12121type PerfMonCounterCollectionIterator struct { 12122 i int 12123 page PerfMonCounterCollectionPage 12124} 12125 12126// Next advances to the next value. If there was an error making 12127// the request the iterator does not advance and the error is returned. 12128func (iter *PerfMonCounterCollectionIterator) Next() error { 12129 iter.i++ 12130 if iter.i < len(iter.page.Values()) { 12131 return nil 12132 } 12133 err := iter.page.Next() 12134 if err != nil { 12135 iter.i-- 12136 return err 12137 } 12138 iter.i = 0 12139 return nil 12140} 12141 12142// NotDone returns true if the enumeration should be started or is not yet complete. 12143func (iter PerfMonCounterCollectionIterator) NotDone() bool { 12144 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 12145} 12146 12147// Response returns the raw server response from the last page request. 12148func (iter PerfMonCounterCollectionIterator) Response() PerfMonCounterCollection { 12149 return iter.page.Response() 12150} 12151 12152// Value returns the current value or a zero-initialized value if the 12153// iterator has advanced beyond the end of the collection. 12154func (iter PerfMonCounterCollectionIterator) Value() PerfMonResponse { 12155 if !iter.page.NotDone() { 12156 return PerfMonResponse{} 12157 } 12158 return iter.page.Values()[iter.i] 12159} 12160 12161// IsEmpty returns true if the ListResult contains no values. 12162func (pmcc PerfMonCounterCollection) IsEmpty() bool { 12163 return pmcc.Value == nil || len(*pmcc.Value) == 0 12164} 12165 12166// perfMonCounterCollectionPreparer prepares a request to retrieve the next set of results. 12167// It returns nil if no more results exist. 12168func (pmcc PerfMonCounterCollection) perfMonCounterCollectionPreparer() (*http.Request, error) { 12169 if pmcc.NextLink == nil || len(to.String(pmcc.NextLink)) < 1 { 12170 return nil, nil 12171 } 12172 return autorest.Prepare(&http.Request{}, 12173 autorest.AsJSON(), 12174 autorest.AsGet(), 12175 autorest.WithBaseURL(to.String(pmcc.NextLink))) 12176} 12177 12178// PerfMonCounterCollectionPage contains a page of PerfMonResponse values. 12179type PerfMonCounterCollectionPage struct { 12180 fn func(PerfMonCounterCollection) (PerfMonCounterCollection, error) 12181 pmcc PerfMonCounterCollection 12182} 12183 12184// Next advances to the next page of values. If there was an error making 12185// the request the page does not advance and the error is returned. 12186func (page *PerfMonCounterCollectionPage) Next() error { 12187 next, err := page.fn(page.pmcc) 12188 if err != nil { 12189 return err 12190 } 12191 page.pmcc = next 12192 return nil 12193} 12194 12195// NotDone returns true if the page enumeration should be started or is not yet complete. 12196func (page PerfMonCounterCollectionPage) NotDone() bool { 12197 return !page.pmcc.IsEmpty() 12198} 12199 12200// Response returns the raw server response from the last page request. 12201func (page PerfMonCounterCollectionPage) Response() PerfMonCounterCollection { 12202 return page.pmcc 12203} 12204 12205// Values returns the slice of values for the current page or nil if there are no values. 12206func (page PerfMonCounterCollectionPage) Values() []PerfMonResponse { 12207 if page.pmcc.IsEmpty() { 12208 return nil 12209 } 12210 return *page.pmcc.Value 12211} 12212 12213// PerfMonResponse performance monitor API response. 12214type PerfMonResponse struct { 12215 // Code - The response code. 12216 Code *string `json:"code,omitempty"` 12217 // Message - The message. 12218 Message *string `json:"message,omitempty"` 12219 // Data - The performance monitor counters. 12220 Data *PerfMonSet `json:"data,omitempty"` 12221} 12222 12223// PerfMonSample performance monitor sample in a set. 12224type PerfMonSample struct { 12225 // Time - Point in time for which counter was measured. 12226 Time *date.Time `json:"time,omitempty"` 12227 // InstanceName - Name of the server on which the measurement is made. 12228 InstanceName *string `json:"instanceName,omitempty"` 12229 // Value - Value of counter at a certain time. 12230 Value *float64 `json:"value,omitempty"` 12231 // CoreCount - Core Count of worker. Not a data member 12232 CoreCount *int32 `json:"coreCount,omitempty"` 12233} 12234 12235// PerfMonSet metric information. 12236type PerfMonSet struct { 12237 // Name - Unique key name of the counter. 12238 Name *string `json:"name,omitempty"` 12239 // StartTime - Start time of the period. 12240 StartTime *date.Time `json:"startTime,omitempty"` 12241 // EndTime - End time of the period. 12242 EndTime *date.Time `json:"endTime,omitempty"` 12243 // TimeGrain - Presented time grain. 12244 TimeGrain *string `json:"timeGrain,omitempty"` 12245 // Values - Collection of workers that are active during this time. 12246 Values *[]PerfMonSample `json:"values,omitempty"` 12247} 12248 12249// PremierAddOn premier add-on. 12250type PremierAddOn struct { 12251 autorest.Response `json:"-"` 12252 // PremierAddOnProperties - PremierAddOn resource specific properties 12253 *PremierAddOnProperties `json:"properties,omitempty"` 12254 // ID - Resource Id. 12255 ID *string `json:"id,omitempty"` 12256 // Name - Resource Name. 12257 Name *string `json:"name,omitempty"` 12258 // Kind - Kind of resource. 12259 Kind *string `json:"kind,omitempty"` 12260 // Location - Resource Location. 12261 Location *string `json:"location,omitempty"` 12262 // Type - Resource type. 12263 Type *string `json:"type,omitempty"` 12264 // Tags - Resource tags. 12265 Tags map[string]*string `json:"tags"` 12266} 12267 12268// MarshalJSON is the custom marshaler for PremierAddOn. 12269func (pao PremierAddOn) MarshalJSON() ([]byte, error) { 12270 objectMap := make(map[string]interface{}) 12271 if pao.PremierAddOnProperties != nil { 12272 objectMap["properties"] = pao.PremierAddOnProperties 12273 } 12274 if pao.ID != nil { 12275 objectMap["id"] = pao.ID 12276 } 12277 if pao.Name != nil { 12278 objectMap["name"] = pao.Name 12279 } 12280 if pao.Kind != nil { 12281 objectMap["kind"] = pao.Kind 12282 } 12283 if pao.Location != nil { 12284 objectMap["location"] = pao.Location 12285 } 12286 if pao.Type != nil { 12287 objectMap["type"] = pao.Type 12288 } 12289 if pao.Tags != nil { 12290 objectMap["tags"] = pao.Tags 12291 } 12292 return json.Marshal(objectMap) 12293} 12294 12295// UnmarshalJSON is the custom unmarshaler for PremierAddOn struct. 12296func (pao *PremierAddOn) UnmarshalJSON(body []byte) error { 12297 var m map[string]*json.RawMessage 12298 err := json.Unmarshal(body, &m) 12299 if err != nil { 12300 return err 12301 } 12302 for k, v := range m { 12303 switch k { 12304 case "properties": 12305 if v != nil { 12306 var premierAddOnProperties PremierAddOnProperties 12307 err = json.Unmarshal(*v, &premierAddOnProperties) 12308 if err != nil { 12309 return err 12310 } 12311 pao.PremierAddOnProperties = &premierAddOnProperties 12312 } 12313 case "id": 12314 if v != nil { 12315 var ID string 12316 err = json.Unmarshal(*v, &ID) 12317 if err != nil { 12318 return err 12319 } 12320 pao.ID = &ID 12321 } 12322 case "name": 12323 if v != nil { 12324 var name string 12325 err = json.Unmarshal(*v, &name) 12326 if err != nil { 12327 return err 12328 } 12329 pao.Name = &name 12330 } 12331 case "kind": 12332 if v != nil { 12333 var kind string 12334 err = json.Unmarshal(*v, &kind) 12335 if err != nil { 12336 return err 12337 } 12338 pao.Kind = &kind 12339 } 12340 case "location": 12341 if v != nil { 12342 var location string 12343 err = json.Unmarshal(*v, &location) 12344 if err != nil { 12345 return err 12346 } 12347 pao.Location = &location 12348 } 12349 case "type": 12350 if v != nil { 12351 var typeVar string 12352 err = json.Unmarshal(*v, &typeVar) 12353 if err != nil { 12354 return err 12355 } 12356 pao.Type = &typeVar 12357 } 12358 case "tags": 12359 if v != nil { 12360 var tags map[string]*string 12361 err = json.Unmarshal(*v, &tags) 12362 if err != nil { 12363 return err 12364 } 12365 pao.Tags = tags 12366 } 12367 } 12368 } 12369 12370 return nil 12371} 12372 12373// PremierAddOnOffer premier add-on offer. 12374type PremierAddOnOffer struct { 12375 // PremierAddOnOfferProperties - PremierAddOnOffer resource specific properties 12376 *PremierAddOnOfferProperties `json:"properties,omitempty"` 12377 // ID - Resource Id. 12378 ID *string `json:"id,omitempty"` 12379 // Name - Resource Name. 12380 Name *string `json:"name,omitempty"` 12381 // Kind - Kind of resource. 12382 Kind *string `json:"kind,omitempty"` 12383 // Type - Resource type. 12384 Type *string `json:"type,omitempty"` 12385} 12386 12387// MarshalJSON is the custom marshaler for PremierAddOnOffer. 12388func (paoo PremierAddOnOffer) MarshalJSON() ([]byte, error) { 12389 objectMap := make(map[string]interface{}) 12390 if paoo.PremierAddOnOfferProperties != nil { 12391 objectMap["properties"] = paoo.PremierAddOnOfferProperties 12392 } 12393 if paoo.ID != nil { 12394 objectMap["id"] = paoo.ID 12395 } 12396 if paoo.Name != nil { 12397 objectMap["name"] = paoo.Name 12398 } 12399 if paoo.Kind != nil { 12400 objectMap["kind"] = paoo.Kind 12401 } 12402 if paoo.Type != nil { 12403 objectMap["type"] = paoo.Type 12404 } 12405 return json.Marshal(objectMap) 12406} 12407 12408// UnmarshalJSON is the custom unmarshaler for PremierAddOnOffer struct. 12409func (paoo *PremierAddOnOffer) UnmarshalJSON(body []byte) error { 12410 var m map[string]*json.RawMessage 12411 err := json.Unmarshal(body, &m) 12412 if err != nil { 12413 return err 12414 } 12415 for k, v := range m { 12416 switch k { 12417 case "properties": 12418 if v != nil { 12419 var premierAddOnOfferProperties PremierAddOnOfferProperties 12420 err = json.Unmarshal(*v, &premierAddOnOfferProperties) 12421 if err != nil { 12422 return err 12423 } 12424 paoo.PremierAddOnOfferProperties = &premierAddOnOfferProperties 12425 } 12426 case "id": 12427 if v != nil { 12428 var ID string 12429 err = json.Unmarshal(*v, &ID) 12430 if err != nil { 12431 return err 12432 } 12433 paoo.ID = &ID 12434 } 12435 case "name": 12436 if v != nil { 12437 var name string 12438 err = json.Unmarshal(*v, &name) 12439 if err != nil { 12440 return err 12441 } 12442 paoo.Name = &name 12443 } 12444 case "kind": 12445 if v != nil { 12446 var kind string 12447 err = json.Unmarshal(*v, &kind) 12448 if err != nil { 12449 return err 12450 } 12451 paoo.Kind = &kind 12452 } 12453 case "type": 12454 if v != nil { 12455 var typeVar string 12456 err = json.Unmarshal(*v, &typeVar) 12457 if err != nil { 12458 return err 12459 } 12460 paoo.Type = &typeVar 12461 } 12462 } 12463 } 12464 12465 return nil 12466} 12467 12468// PremierAddOnOfferCollection collection of premier add-on offers. 12469type PremierAddOnOfferCollection struct { 12470 autorest.Response `json:"-"` 12471 // Value - Collection of resources. 12472 Value *[]PremierAddOnOffer `json:"value,omitempty"` 12473 // NextLink - Link to next page of resources. 12474 NextLink *string `json:"nextLink,omitempty"` 12475} 12476 12477// PremierAddOnOfferCollectionIterator provides access to a complete listing of PremierAddOnOffer values. 12478type PremierAddOnOfferCollectionIterator struct { 12479 i int 12480 page PremierAddOnOfferCollectionPage 12481} 12482 12483// Next advances to the next value. If there was an error making 12484// the request the iterator does not advance and the error is returned. 12485func (iter *PremierAddOnOfferCollectionIterator) Next() error { 12486 iter.i++ 12487 if iter.i < len(iter.page.Values()) { 12488 return nil 12489 } 12490 err := iter.page.Next() 12491 if err != nil { 12492 iter.i-- 12493 return err 12494 } 12495 iter.i = 0 12496 return nil 12497} 12498 12499// NotDone returns true if the enumeration should be started or is not yet complete. 12500func (iter PremierAddOnOfferCollectionIterator) NotDone() bool { 12501 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 12502} 12503 12504// Response returns the raw server response from the last page request. 12505func (iter PremierAddOnOfferCollectionIterator) Response() PremierAddOnOfferCollection { 12506 return iter.page.Response() 12507} 12508 12509// Value returns the current value or a zero-initialized value if the 12510// iterator has advanced beyond the end of the collection. 12511func (iter PremierAddOnOfferCollectionIterator) Value() PremierAddOnOffer { 12512 if !iter.page.NotDone() { 12513 return PremierAddOnOffer{} 12514 } 12515 return iter.page.Values()[iter.i] 12516} 12517 12518// IsEmpty returns true if the ListResult contains no values. 12519func (paooc PremierAddOnOfferCollection) IsEmpty() bool { 12520 return paooc.Value == nil || len(*paooc.Value) == 0 12521} 12522 12523// premierAddOnOfferCollectionPreparer prepares a request to retrieve the next set of results. 12524// It returns nil if no more results exist. 12525func (paooc PremierAddOnOfferCollection) premierAddOnOfferCollectionPreparer() (*http.Request, error) { 12526 if paooc.NextLink == nil || len(to.String(paooc.NextLink)) < 1 { 12527 return nil, nil 12528 } 12529 return autorest.Prepare(&http.Request{}, 12530 autorest.AsJSON(), 12531 autorest.AsGet(), 12532 autorest.WithBaseURL(to.String(paooc.NextLink))) 12533} 12534 12535// PremierAddOnOfferCollectionPage contains a page of PremierAddOnOffer values. 12536type PremierAddOnOfferCollectionPage struct { 12537 fn func(PremierAddOnOfferCollection) (PremierAddOnOfferCollection, error) 12538 paooc PremierAddOnOfferCollection 12539} 12540 12541// Next advances to the next page of values. If there was an error making 12542// the request the page does not advance and the error is returned. 12543func (page *PremierAddOnOfferCollectionPage) Next() error { 12544 next, err := page.fn(page.paooc) 12545 if err != nil { 12546 return err 12547 } 12548 page.paooc = next 12549 return nil 12550} 12551 12552// NotDone returns true if the page enumeration should be started or is not yet complete. 12553func (page PremierAddOnOfferCollectionPage) NotDone() bool { 12554 return !page.paooc.IsEmpty() 12555} 12556 12557// Response returns the raw server response from the last page request. 12558func (page PremierAddOnOfferCollectionPage) Response() PremierAddOnOfferCollection { 12559 return page.paooc 12560} 12561 12562// Values returns the slice of values for the current page or nil if there are no values. 12563func (page PremierAddOnOfferCollectionPage) Values() []PremierAddOnOffer { 12564 if page.paooc.IsEmpty() { 12565 return nil 12566 } 12567 return *page.paooc.Value 12568} 12569 12570// PremierAddOnOfferProperties premierAddOnOffer resource specific properties 12571type PremierAddOnOfferProperties struct { 12572 // Sku - Premier add on SKU. 12573 Sku *string `json:"sku,omitempty"` 12574 // Product - Premier add on offer Product. 12575 Product *string `json:"product,omitempty"` 12576 // Vendor - Premier add on offer Vendor. 12577 Vendor *string `json:"vendor,omitempty"` 12578 // Name - Premier add on offer Name. 12579 Name *string `json:"name,omitempty"` 12580 // PromoCodeRequired - <code>true</code> if promotion code is required; otherwise, <code>false</code>. 12581 PromoCodeRequired *bool `json:"promoCodeRequired,omitempty"` 12582 // Quota - Premier add on offer Quota. 12583 Quota *int32 `json:"quota,omitempty"` 12584 // WebHostingPlanRestrictions - App Service plans this offer is restricted to. Possible values include: 'None', 'Free', 'Shared', 'Basic', 'Standard', 'Premium' 12585 WebHostingPlanRestrictions AppServicePlanRestrictions `json:"webHostingPlanRestrictions,omitempty"` 12586 // PrivacyPolicyURL - Privacy policy URL. 12587 PrivacyPolicyURL *string `json:"privacyPolicyUrl,omitempty"` 12588 // LegalTermsURL - Legal terms URL. 12589 LegalTermsURL *string `json:"legalTermsUrl,omitempty"` 12590 // MarketplacePublisher - Marketplace publisher. 12591 MarketplacePublisher *string `json:"marketplacePublisher,omitempty"` 12592 // MarketplaceOffer - Marketplace offer. 12593 MarketplaceOffer *string `json:"marketplaceOffer,omitempty"` 12594} 12595 12596// PremierAddOnProperties premierAddOn resource specific properties 12597type PremierAddOnProperties struct { 12598 // Sku - Premier add on SKU. 12599 Sku *string `json:"sku,omitempty"` 12600 // Product - Premier add on Product. 12601 Product *string `json:"product,omitempty"` 12602 // Vendor - Premier add on Vendor. 12603 Vendor *string `json:"vendor,omitempty"` 12604 // PremierAddOnName - Premier add on Name. 12605 PremierAddOnName *string `json:"name,omitempty"` 12606 // Location - Premier add on Location. 12607 Location *string `json:"location,omitempty"` 12608 // Tags - Premier add on Tags. 12609 Tags map[string]*string `json:"tags"` 12610 // MarketplacePublisher - Premier add on Marketplace publisher. 12611 MarketplacePublisher *string `json:"marketplacePublisher,omitempty"` 12612 // MarketplaceOffer - Premier add on Marketplace offer. 12613 MarketplaceOffer *string `json:"marketplaceOffer,omitempty"` 12614} 12615 12616// MarshalJSON is the custom marshaler for PremierAddOnProperties. 12617func (pao PremierAddOnProperties) MarshalJSON() ([]byte, error) { 12618 objectMap := make(map[string]interface{}) 12619 if pao.Sku != nil { 12620 objectMap["sku"] = pao.Sku 12621 } 12622 if pao.Product != nil { 12623 objectMap["product"] = pao.Product 12624 } 12625 if pao.Vendor != nil { 12626 objectMap["vendor"] = pao.Vendor 12627 } 12628 if pao.PremierAddOnName != nil { 12629 objectMap["name"] = pao.PremierAddOnName 12630 } 12631 if pao.Location != nil { 12632 objectMap["location"] = pao.Location 12633 } 12634 if pao.Tags != nil { 12635 objectMap["tags"] = pao.Tags 12636 } 12637 if pao.MarketplacePublisher != nil { 12638 objectMap["marketplacePublisher"] = pao.MarketplacePublisher 12639 } 12640 if pao.MarketplaceOffer != nil { 12641 objectMap["marketplaceOffer"] = pao.MarketplaceOffer 12642 } 12643 return json.Marshal(objectMap) 12644} 12645 12646// ProcessInfo process Information. 12647type ProcessInfo struct { 12648 autorest.Response `json:"-"` 12649 // ProcessInfoProperties - ProcessInfo resource specific properties 12650 *ProcessInfoProperties `json:"properties,omitempty"` 12651 // ID - Resource Id. 12652 ID *string `json:"id,omitempty"` 12653 // Name - Resource Name. 12654 Name *string `json:"name,omitempty"` 12655 // Kind - Kind of resource. 12656 Kind *string `json:"kind,omitempty"` 12657 // Type - Resource type. 12658 Type *string `json:"type,omitempty"` 12659} 12660 12661// MarshalJSON is the custom marshaler for ProcessInfo. 12662func (pi ProcessInfo) MarshalJSON() ([]byte, error) { 12663 objectMap := make(map[string]interface{}) 12664 if pi.ProcessInfoProperties != nil { 12665 objectMap["properties"] = pi.ProcessInfoProperties 12666 } 12667 if pi.ID != nil { 12668 objectMap["id"] = pi.ID 12669 } 12670 if pi.Name != nil { 12671 objectMap["name"] = pi.Name 12672 } 12673 if pi.Kind != nil { 12674 objectMap["kind"] = pi.Kind 12675 } 12676 if pi.Type != nil { 12677 objectMap["type"] = pi.Type 12678 } 12679 return json.Marshal(objectMap) 12680} 12681 12682// UnmarshalJSON is the custom unmarshaler for ProcessInfo struct. 12683func (pi *ProcessInfo) UnmarshalJSON(body []byte) error { 12684 var m map[string]*json.RawMessage 12685 err := json.Unmarshal(body, &m) 12686 if err != nil { 12687 return err 12688 } 12689 for k, v := range m { 12690 switch k { 12691 case "properties": 12692 if v != nil { 12693 var processInfoProperties ProcessInfoProperties 12694 err = json.Unmarshal(*v, &processInfoProperties) 12695 if err != nil { 12696 return err 12697 } 12698 pi.ProcessInfoProperties = &processInfoProperties 12699 } 12700 case "id": 12701 if v != nil { 12702 var ID string 12703 err = json.Unmarshal(*v, &ID) 12704 if err != nil { 12705 return err 12706 } 12707 pi.ID = &ID 12708 } 12709 case "name": 12710 if v != nil { 12711 var name string 12712 err = json.Unmarshal(*v, &name) 12713 if err != nil { 12714 return err 12715 } 12716 pi.Name = &name 12717 } 12718 case "kind": 12719 if v != nil { 12720 var kind string 12721 err = json.Unmarshal(*v, &kind) 12722 if err != nil { 12723 return err 12724 } 12725 pi.Kind = &kind 12726 } 12727 case "type": 12728 if v != nil { 12729 var typeVar string 12730 err = json.Unmarshal(*v, &typeVar) 12731 if err != nil { 12732 return err 12733 } 12734 pi.Type = &typeVar 12735 } 12736 } 12737 } 12738 12739 return nil 12740} 12741 12742// ProcessInfoCollection collection of Kudu process information elements. 12743type ProcessInfoCollection struct { 12744 autorest.Response `json:"-"` 12745 // Value - Collection of resources. 12746 Value *[]ProcessInfo `json:"value,omitempty"` 12747 // NextLink - Link to next page of resources. 12748 NextLink *string `json:"nextLink,omitempty"` 12749} 12750 12751// ProcessInfoCollectionIterator provides access to a complete listing of ProcessInfo values. 12752type ProcessInfoCollectionIterator struct { 12753 i int 12754 page ProcessInfoCollectionPage 12755} 12756 12757// Next advances to the next value. If there was an error making 12758// the request the iterator does not advance and the error is returned. 12759func (iter *ProcessInfoCollectionIterator) Next() error { 12760 iter.i++ 12761 if iter.i < len(iter.page.Values()) { 12762 return nil 12763 } 12764 err := iter.page.Next() 12765 if err != nil { 12766 iter.i-- 12767 return err 12768 } 12769 iter.i = 0 12770 return nil 12771} 12772 12773// NotDone returns true if the enumeration should be started or is not yet complete. 12774func (iter ProcessInfoCollectionIterator) NotDone() bool { 12775 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 12776} 12777 12778// Response returns the raw server response from the last page request. 12779func (iter ProcessInfoCollectionIterator) Response() ProcessInfoCollection { 12780 return iter.page.Response() 12781} 12782 12783// Value returns the current value or a zero-initialized value if the 12784// iterator has advanced beyond the end of the collection. 12785func (iter ProcessInfoCollectionIterator) Value() ProcessInfo { 12786 if !iter.page.NotDone() { 12787 return ProcessInfo{} 12788 } 12789 return iter.page.Values()[iter.i] 12790} 12791 12792// IsEmpty returns true if the ListResult contains no values. 12793func (pic ProcessInfoCollection) IsEmpty() bool { 12794 return pic.Value == nil || len(*pic.Value) == 0 12795} 12796 12797// processInfoCollectionPreparer prepares a request to retrieve the next set of results. 12798// It returns nil if no more results exist. 12799func (pic ProcessInfoCollection) processInfoCollectionPreparer() (*http.Request, error) { 12800 if pic.NextLink == nil || len(to.String(pic.NextLink)) < 1 { 12801 return nil, nil 12802 } 12803 return autorest.Prepare(&http.Request{}, 12804 autorest.AsJSON(), 12805 autorest.AsGet(), 12806 autorest.WithBaseURL(to.String(pic.NextLink))) 12807} 12808 12809// ProcessInfoCollectionPage contains a page of ProcessInfo values. 12810type ProcessInfoCollectionPage struct { 12811 fn func(ProcessInfoCollection) (ProcessInfoCollection, error) 12812 pic ProcessInfoCollection 12813} 12814 12815// Next advances to the next page of values. If there was an error making 12816// the request the page does not advance and the error is returned. 12817func (page *ProcessInfoCollectionPage) Next() error { 12818 next, err := page.fn(page.pic) 12819 if err != nil { 12820 return err 12821 } 12822 page.pic = next 12823 return nil 12824} 12825 12826// NotDone returns true if the page enumeration should be started or is not yet complete. 12827func (page ProcessInfoCollectionPage) NotDone() bool { 12828 return !page.pic.IsEmpty() 12829} 12830 12831// Response returns the raw server response from the last page request. 12832func (page ProcessInfoCollectionPage) Response() ProcessInfoCollection { 12833 return page.pic 12834} 12835 12836// Values returns the slice of values for the current page or nil if there are no values. 12837func (page ProcessInfoCollectionPage) Values() []ProcessInfo { 12838 if page.pic.IsEmpty() { 12839 return nil 12840 } 12841 return *page.pic.Value 12842} 12843 12844// ProcessInfoProperties processInfo resource specific properties 12845type ProcessInfoProperties struct { 12846 // ID - ARM Identifier for deployment. 12847 ID *int32 `json:"id,omitempty"` 12848 // Name - Deployment name. 12849 Name *string `json:"name,omitempty"` 12850 // Href - HRef URI. 12851 Href *string `json:"href,omitempty"` 12852 // MiniDump - Minidump URI. 12853 MiniDump *string `json:"miniDump,omitempty"` 12854 // IsProfileRunning - Is profile running? 12855 IsProfileRunning *bool `json:"isProfileRunning,omitempty"` 12856 // IsIisProfileRunning - Is the IIS Profile running? 12857 IsIisProfileRunning *bool `json:"isIisProfileRunning,omitempty"` 12858 // IisProfileTimeoutInSeconds - IIS Profile timeout (seconds). 12859 IisProfileTimeoutInSeconds *float64 `json:"iisProfileTimeoutInSeconds,omitempty"` 12860 // Parent - Parent process. 12861 Parent *string `json:"parent,omitempty"` 12862 // Children - Child process list. 12863 Children *[]string `json:"children,omitempty"` 12864 // Threads - Thread list. 12865 Threads *[]ProcessThreadInfo `json:"threads,omitempty"` 12866 // OpenFileHandles - List of open files. 12867 OpenFileHandles *[]string `json:"openFileHandles,omitempty"` 12868 // Modules - List of modules. 12869 Modules *[]ProcessModuleInfo `json:"modules,omitempty"` 12870 // FileName - File name of this process. 12871 FileName *string `json:"fileName,omitempty"` 12872 // CommandLine - Command line. 12873 CommandLine *string `json:"commandLine,omitempty"` 12874 // UserName - User name. 12875 UserName *string `json:"userName,omitempty"` 12876 // HandleCount - Handle count. 12877 HandleCount *int32 `json:"handleCount,omitempty"` 12878 // ModuleCount - Module count. 12879 ModuleCount *int32 `json:"moduleCount,omitempty"` 12880 // ThreadCount - Thread count. 12881 ThreadCount *int32 `json:"threadCount,omitempty"` 12882 // StartTime - Start time. 12883 StartTime *date.Time `json:"startTime,omitempty"` 12884 // TotalProcessorTime - Total CPU time. 12885 TotalProcessorTime *string `json:"totalProcessorTime,omitempty"` 12886 // UserProcessorTime - User CPU time. 12887 UserProcessorTime *string `json:"userProcessorTime,omitempty"` 12888 // PrivilegedProcessorTime - Privileged CPU time. 12889 PrivilegedProcessorTime *string `json:"privilegedProcessorTime,omitempty"` 12890 // WorkingSet64 - Working set. 12891 WorkingSet64 *int64 `json:"workingSet64,omitempty"` 12892 // PeakWorkingSet64 - Peak working set. 12893 PeakWorkingSet64 *int64 `json:"peakWorkingSet64,omitempty"` 12894 // PrivateMemorySize64 - Private memory size. 12895 PrivateMemorySize64 *int64 `json:"privateMemorySize64,omitempty"` 12896 // VirtualMemorySize64 - Virtual memory size. 12897 VirtualMemorySize64 *int64 `json:"virtualMemorySize64,omitempty"` 12898 // PeakVirtualMemorySize64 - Peak virtual memory usage. 12899 PeakVirtualMemorySize64 *int64 `json:"peakVirtualMemorySize64,omitempty"` 12900 // PagedSystemMemorySize64 - Paged system memory. 12901 PagedSystemMemorySize64 *int64 `json:"pagedSystemMemorySize64,omitempty"` 12902 // NonpagedSystemMemorySize64 - Non-paged system memory. 12903 NonpagedSystemMemorySize64 *int64 `json:"nonpagedSystemMemorySize64,omitempty"` 12904 // PagedMemorySize64 - Paged memory. 12905 PagedMemorySize64 *int64 `json:"pagedMemorySize64,omitempty"` 12906 // PeakPagedMemorySize64 - Peak paged memory. 12907 PeakPagedMemorySize64 *int64 `json:"peakPagedMemorySize64,omitempty"` 12908 // TimeStamp - Time stamp. 12909 TimeStamp *date.Time `json:"timeStamp,omitempty"` 12910 // EnvironmentVariables - List of environment variables. 12911 EnvironmentVariables map[string]*string `json:"environmentVariables"` 12912 // IsScmSite - Is this the SCM site? 12913 IsScmSite *bool `json:"isScmSite,omitempty"` 12914 // IsWebJob - Is this a Web Job? 12915 IsWebJob *bool `json:"isWebJob,omitempty"` 12916 // Description - Description of process. 12917 Description *string `json:"description,omitempty"` 12918} 12919 12920// MarshalJSON is the custom marshaler for ProcessInfoProperties. 12921func (pi ProcessInfoProperties) MarshalJSON() ([]byte, error) { 12922 objectMap := make(map[string]interface{}) 12923 if pi.ID != nil { 12924 objectMap["id"] = pi.ID 12925 } 12926 if pi.Name != nil { 12927 objectMap["name"] = pi.Name 12928 } 12929 if pi.Href != nil { 12930 objectMap["href"] = pi.Href 12931 } 12932 if pi.MiniDump != nil { 12933 objectMap["miniDump"] = pi.MiniDump 12934 } 12935 if pi.IsProfileRunning != nil { 12936 objectMap["isProfileRunning"] = pi.IsProfileRunning 12937 } 12938 if pi.IsIisProfileRunning != nil { 12939 objectMap["isIisProfileRunning"] = pi.IsIisProfileRunning 12940 } 12941 if pi.IisProfileTimeoutInSeconds != nil { 12942 objectMap["iisProfileTimeoutInSeconds"] = pi.IisProfileTimeoutInSeconds 12943 } 12944 if pi.Parent != nil { 12945 objectMap["parent"] = pi.Parent 12946 } 12947 if pi.Children != nil { 12948 objectMap["children"] = pi.Children 12949 } 12950 if pi.Threads != nil { 12951 objectMap["threads"] = pi.Threads 12952 } 12953 if pi.OpenFileHandles != nil { 12954 objectMap["openFileHandles"] = pi.OpenFileHandles 12955 } 12956 if pi.Modules != nil { 12957 objectMap["modules"] = pi.Modules 12958 } 12959 if pi.FileName != nil { 12960 objectMap["fileName"] = pi.FileName 12961 } 12962 if pi.CommandLine != nil { 12963 objectMap["commandLine"] = pi.CommandLine 12964 } 12965 if pi.UserName != nil { 12966 objectMap["userName"] = pi.UserName 12967 } 12968 if pi.HandleCount != nil { 12969 objectMap["handleCount"] = pi.HandleCount 12970 } 12971 if pi.ModuleCount != nil { 12972 objectMap["moduleCount"] = pi.ModuleCount 12973 } 12974 if pi.ThreadCount != nil { 12975 objectMap["threadCount"] = pi.ThreadCount 12976 } 12977 if pi.StartTime != nil { 12978 objectMap["startTime"] = pi.StartTime 12979 } 12980 if pi.TotalProcessorTime != nil { 12981 objectMap["totalProcessorTime"] = pi.TotalProcessorTime 12982 } 12983 if pi.UserProcessorTime != nil { 12984 objectMap["userProcessorTime"] = pi.UserProcessorTime 12985 } 12986 if pi.PrivilegedProcessorTime != nil { 12987 objectMap["privilegedProcessorTime"] = pi.PrivilegedProcessorTime 12988 } 12989 if pi.WorkingSet64 != nil { 12990 objectMap["workingSet64"] = pi.WorkingSet64 12991 } 12992 if pi.PeakWorkingSet64 != nil { 12993 objectMap["peakWorkingSet64"] = pi.PeakWorkingSet64 12994 } 12995 if pi.PrivateMemorySize64 != nil { 12996 objectMap["privateMemorySize64"] = pi.PrivateMemorySize64 12997 } 12998 if pi.VirtualMemorySize64 != nil { 12999 objectMap["virtualMemorySize64"] = pi.VirtualMemorySize64 13000 } 13001 if pi.PeakVirtualMemorySize64 != nil { 13002 objectMap["peakVirtualMemorySize64"] = pi.PeakVirtualMemorySize64 13003 } 13004 if pi.PagedSystemMemorySize64 != nil { 13005 objectMap["pagedSystemMemorySize64"] = pi.PagedSystemMemorySize64 13006 } 13007 if pi.NonpagedSystemMemorySize64 != nil { 13008 objectMap["nonpagedSystemMemorySize64"] = pi.NonpagedSystemMemorySize64 13009 } 13010 if pi.PagedMemorySize64 != nil { 13011 objectMap["pagedMemorySize64"] = pi.PagedMemorySize64 13012 } 13013 if pi.PeakPagedMemorySize64 != nil { 13014 objectMap["peakPagedMemorySize64"] = pi.PeakPagedMemorySize64 13015 } 13016 if pi.TimeStamp != nil { 13017 objectMap["timeStamp"] = pi.TimeStamp 13018 } 13019 if pi.EnvironmentVariables != nil { 13020 objectMap["environmentVariables"] = pi.EnvironmentVariables 13021 } 13022 if pi.IsScmSite != nil { 13023 objectMap["isScmSite"] = pi.IsScmSite 13024 } 13025 if pi.IsWebJob != nil { 13026 objectMap["isWebJob"] = pi.IsWebJob 13027 } 13028 if pi.Description != nil { 13029 objectMap["description"] = pi.Description 13030 } 13031 return json.Marshal(objectMap) 13032} 13033 13034// ProcessModuleInfo process Module Information. 13035type ProcessModuleInfo struct { 13036 autorest.Response `json:"-"` 13037 // ProcessModuleInfoProperties - ProcessModuleInfo resource specific properties 13038 *ProcessModuleInfoProperties `json:"properties,omitempty"` 13039 // ID - Resource Id. 13040 ID *string `json:"id,omitempty"` 13041 // Name - Resource Name. 13042 Name *string `json:"name,omitempty"` 13043 // Kind - Kind of resource. 13044 Kind *string `json:"kind,omitempty"` 13045 // Type - Resource type. 13046 Type *string `json:"type,omitempty"` 13047} 13048 13049// MarshalJSON is the custom marshaler for ProcessModuleInfo. 13050func (pmi ProcessModuleInfo) MarshalJSON() ([]byte, error) { 13051 objectMap := make(map[string]interface{}) 13052 if pmi.ProcessModuleInfoProperties != nil { 13053 objectMap["properties"] = pmi.ProcessModuleInfoProperties 13054 } 13055 if pmi.ID != nil { 13056 objectMap["id"] = pmi.ID 13057 } 13058 if pmi.Name != nil { 13059 objectMap["name"] = pmi.Name 13060 } 13061 if pmi.Kind != nil { 13062 objectMap["kind"] = pmi.Kind 13063 } 13064 if pmi.Type != nil { 13065 objectMap["type"] = pmi.Type 13066 } 13067 return json.Marshal(objectMap) 13068} 13069 13070// UnmarshalJSON is the custom unmarshaler for ProcessModuleInfo struct. 13071func (pmi *ProcessModuleInfo) UnmarshalJSON(body []byte) error { 13072 var m map[string]*json.RawMessage 13073 err := json.Unmarshal(body, &m) 13074 if err != nil { 13075 return err 13076 } 13077 for k, v := range m { 13078 switch k { 13079 case "properties": 13080 if v != nil { 13081 var processModuleInfoProperties ProcessModuleInfoProperties 13082 err = json.Unmarshal(*v, &processModuleInfoProperties) 13083 if err != nil { 13084 return err 13085 } 13086 pmi.ProcessModuleInfoProperties = &processModuleInfoProperties 13087 } 13088 case "id": 13089 if v != nil { 13090 var ID string 13091 err = json.Unmarshal(*v, &ID) 13092 if err != nil { 13093 return err 13094 } 13095 pmi.ID = &ID 13096 } 13097 case "name": 13098 if v != nil { 13099 var name string 13100 err = json.Unmarshal(*v, &name) 13101 if err != nil { 13102 return err 13103 } 13104 pmi.Name = &name 13105 } 13106 case "kind": 13107 if v != nil { 13108 var kind string 13109 err = json.Unmarshal(*v, &kind) 13110 if err != nil { 13111 return err 13112 } 13113 pmi.Kind = &kind 13114 } 13115 case "type": 13116 if v != nil { 13117 var typeVar string 13118 err = json.Unmarshal(*v, &typeVar) 13119 if err != nil { 13120 return err 13121 } 13122 pmi.Type = &typeVar 13123 } 13124 } 13125 } 13126 13127 return nil 13128} 13129 13130// ProcessModuleInfoCollection collection of Kudu thread information elements. 13131type ProcessModuleInfoCollection struct { 13132 autorest.Response `json:"-"` 13133 // Value - Collection of resources. 13134 Value *[]ProcessModuleInfo `json:"value,omitempty"` 13135 // NextLink - Link to next page of resources. 13136 NextLink *string `json:"nextLink,omitempty"` 13137} 13138 13139// ProcessModuleInfoCollectionIterator provides access to a complete listing of ProcessModuleInfo values. 13140type ProcessModuleInfoCollectionIterator struct { 13141 i int 13142 page ProcessModuleInfoCollectionPage 13143} 13144 13145// Next advances to the next value. If there was an error making 13146// the request the iterator does not advance and the error is returned. 13147func (iter *ProcessModuleInfoCollectionIterator) Next() error { 13148 iter.i++ 13149 if iter.i < len(iter.page.Values()) { 13150 return nil 13151 } 13152 err := iter.page.Next() 13153 if err != nil { 13154 iter.i-- 13155 return err 13156 } 13157 iter.i = 0 13158 return nil 13159} 13160 13161// NotDone returns true if the enumeration should be started or is not yet complete. 13162func (iter ProcessModuleInfoCollectionIterator) NotDone() bool { 13163 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 13164} 13165 13166// Response returns the raw server response from the last page request. 13167func (iter ProcessModuleInfoCollectionIterator) Response() ProcessModuleInfoCollection { 13168 return iter.page.Response() 13169} 13170 13171// Value returns the current value or a zero-initialized value if the 13172// iterator has advanced beyond the end of the collection. 13173func (iter ProcessModuleInfoCollectionIterator) Value() ProcessModuleInfo { 13174 if !iter.page.NotDone() { 13175 return ProcessModuleInfo{} 13176 } 13177 return iter.page.Values()[iter.i] 13178} 13179 13180// IsEmpty returns true if the ListResult contains no values. 13181func (pmic ProcessModuleInfoCollection) IsEmpty() bool { 13182 return pmic.Value == nil || len(*pmic.Value) == 0 13183} 13184 13185// processModuleInfoCollectionPreparer prepares a request to retrieve the next set of results. 13186// It returns nil if no more results exist. 13187func (pmic ProcessModuleInfoCollection) processModuleInfoCollectionPreparer() (*http.Request, error) { 13188 if pmic.NextLink == nil || len(to.String(pmic.NextLink)) < 1 { 13189 return nil, nil 13190 } 13191 return autorest.Prepare(&http.Request{}, 13192 autorest.AsJSON(), 13193 autorest.AsGet(), 13194 autorest.WithBaseURL(to.String(pmic.NextLink))) 13195} 13196 13197// ProcessModuleInfoCollectionPage contains a page of ProcessModuleInfo values. 13198type ProcessModuleInfoCollectionPage struct { 13199 fn func(ProcessModuleInfoCollection) (ProcessModuleInfoCollection, error) 13200 pmic ProcessModuleInfoCollection 13201} 13202 13203// Next advances to the next page of values. If there was an error making 13204// the request the page does not advance and the error is returned. 13205func (page *ProcessModuleInfoCollectionPage) Next() error { 13206 next, err := page.fn(page.pmic) 13207 if err != nil { 13208 return err 13209 } 13210 page.pmic = next 13211 return nil 13212} 13213 13214// NotDone returns true if the page enumeration should be started or is not yet complete. 13215func (page ProcessModuleInfoCollectionPage) NotDone() bool { 13216 return !page.pmic.IsEmpty() 13217} 13218 13219// Response returns the raw server response from the last page request. 13220func (page ProcessModuleInfoCollectionPage) Response() ProcessModuleInfoCollection { 13221 return page.pmic 13222} 13223 13224// Values returns the slice of values for the current page or nil if there are no values. 13225func (page ProcessModuleInfoCollectionPage) Values() []ProcessModuleInfo { 13226 if page.pmic.IsEmpty() { 13227 return nil 13228 } 13229 return *page.pmic.Value 13230} 13231 13232// ProcessModuleInfoProperties processModuleInfo resource specific properties 13233type ProcessModuleInfoProperties struct { 13234 // BaseAddress - Base address. Used as module identifier in ARM resource URI. 13235 BaseAddress *string `json:"baseAddress,omitempty"` 13236 // FileName - File name. 13237 FileName *string `json:"fileName,omitempty"` 13238 // Href - HRef URI. 13239 Href *string `json:"href,omitempty"` 13240 // FilePath - File path. 13241 FilePath *string `json:"filePath,omitempty"` 13242 // ModuleMemorySize - Module memory size. 13243 ModuleMemorySize *int32 `json:"moduleMemorySize,omitempty"` 13244 // FileVersion - File version. 13245 FileVersion *string `json:"fileVersion,omitempty"` 13246 // FileDescription - File description. 13247 FileDescription *string `json:"fileDescription,omitempty"` 13248 // Product - Product name. 13249 Product *string `json:"product,omitempty"` 13250 // ProductVersion - Product version. 13251 ProductVersion *string `json:"productVersion,omitempty"` 13252 // IsDebug - Is debug? 13253 IsDebug *bool `json:"isDebug,omitempty"` 13254 // Language - Module language (locale). 13255 Language *string `json:"language,omitempty"` 13256} 13257 13258// ProcessThreadInfo process Thread Information. 13259type ProcessThreadInfo struct { 13260 autorest.Response `json:"-"` 13261 // ProcessThreadInfoProperties - ProcessThreadInfo resource specific properties 13262 *ProcessThreadInfoProperties `json:"properties,omitempty"` 13263 // ID - Resource Id. 13264 ID *string `json:"id,omitempty"` 13265 // Name - Resource Name. 13266 Name *string `json:"name,omitempty"` 13267 // Kind - Kind of resource. 13268 Kind *string `json:"kind,omitempty"` 13269 // Type - Resource type. 13270 Type *string `json:"type,omitempty"` 13271} 13272 13273// MarshalJSON is the custom marshaler for ProcessThreadInfo. 13274func (pti ProcessThreadInfo) MarshalJSON() ([]byte, error) { 13275 objectMap := make(map[string]interface{}) 13276 if pti.ProcessThreadInfoProperties != nil { 13277 objectMap["properties"] = pti.ProcessThreadInfoProperties 13278 } 13279 if pti.ID != nil { 13280 objectMap["id"] = pti.ID 13281 } 13282 if pti.Name != nil { 13283 objectMap["name"] = pti.Name 13284 } 13285 if pti.Kind != nil { 13286 objectMap["kind"] = pti.Kind 13287 } 13288 if pti.Type != nil { 13289 objectMap["type"] = pti.Type 13290 } 13291 return json.Marshal(objectMap) 13292} 13293 13294// UnmarshalJSON is the custom unmarshaler for ProcessThreadInfo struct. 13295func (pti *ProcessThreadInfo) UnmarshalJSON(body []byte) error { 13296 var m map[string]*json.RawMessage 13297 err := json.Unmarshal(body, &m) 13298 if err != nil { 13299 return err 13300 } 13301 for k, v := range m { 13302 switch k { 13303 case "properties": 13304 if v != nil { 13305 var processThreadInfoProperties ProcessThreadInfoProperties 13306 err = json.Unmarshal(*v, &processThreadInfoProperties) 13307 if err != nil { 13308 return err 13309 } 13310 pti.ProcessThreadInfoProperties = &processThreadInfoProperties 13311 } 13312 case "id": 13313 if v != nil { 13314 var ID string 13315 err = json.Unmarshal(*v, &ID) 13316 if err != nil { 13317 return err 13318 } 13319 pti.ID = &ID 13320 } 13321 case "name": 13322 if v != nil { 13323 var name string 13324 err = json.Unmarshal(*v, &name) 13325 if err != nil { 13326 return err 13327 } 13328 pti.Name = &name 13329 } 13330 case "kind": 13331 if v != nil { 13332 var kind string 13333 err = json.Unmarshal(*v, &kind) 13334 if err != nil { 13335 return err 13336 } 13337 pti.Kind = &kind 13338 } 13339 case "type": 13340 if v != nil { 13341 var typeVar string 13342 err = json.Unmarshal(*v, &typeVar) 13343 if err != nil { 13344 return err 13345 } 13346 pti.Type = &typeVar 13347 } 13348 } 13349 } 13350 13351 return nil 13352} 13353 13354// ProcessThreadInfoCollection collection of Kudu thread information elements. 13355type ProcessThreadInfoCollection struct { 13356 autorest.Response `json:"-"` 13357 // Value - Collection of resources. 13358 Value *[]ProcessThreadInfo `json:"value,omitempty"` 13359 // NextLink - Link to next page of resources. 13360 NextLink *string `json:"nextLink,omitempty"` 13361} 13362 13363// ProcessThreadInfoCollectionIterator provides access to a complete listing of ProcessThreadInfo values. 13364type ProcessThreadInfoCollectionIterator struct { 13365 i int 13366 page ProcessThreadInfoCollectionPage 13367} 13368 13369// Next advances to the next value. If there was an error making 13370// the request the iterator does not advance and the error is returned. 13371func (iter *ProcessThreadInfoCollectionIterator) Next() error { 13372 iter.i++ 13373 if iter.i < len(iter.page.Values()) { 13374 return nil 13375 } 13376 err := iter.page.Next() 13377 if err != nil { 13378 iter.i-- 13379 return err 13380 } 13381 iter.i = 0 13382 return nil 13383} 13384 13385// NotDone returns true if the enumeration should be started or is not yet complete. 13386func (iter ProcessThreadInfoCollectionIterator) NotDone() bool { 13387 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 13388} 13389 13390// Response returns the raw server response from the last page request. 13391func (iter ProcessThreadInfoCollectionIterator) Response() ProcessThreadInfoCollection { 13392 return iter.page.Response() 13393} 13394 13395// Value returns the current value or a zero-initialized value if the 13396// iterator has advanced beyond the end of the collection. 13397func (iter ProcessThreadInfoCollectionIterator) Value() ProcessThreadInfo { 13398 if !iter.page.NotDone() { 13399 return ProcessThreadInfo{} 13400 } 13401 return iter.page.Values()[iter.i] 13402} 13403 13404// IsEmpty returns true if the ListResult contains no values. 13405func (ptic ProcessThreadInfoCollection) IsEmpty() bool { 13406 return ptic.Value == nil || len(*ptic.Value) == 0 13407} 13408 13409// processThreadInfoCollectionPreparer prepares a request to retrieve the next set of results. 13410// It returns nil if no more results exist. 13411func (ptic ProcessThreadInfoCollection) processThreadInfoCollectionPreparer() (*http.Request, error) { 13412 if ptic.NextLink == nil || len(to.String(ptic.NextLink)) < 1 { 13413 return nil, nil 13414 } 13415 return autorest.Prepare(&http.Request{}, 13416 autorest.AsJSON(), 13417 autorest.AsGet(), 13418 autorest.WithBaseURL(to.String(ptic.NextLink))) 13419} 13420 13421// ProcessThreadInfoCollectionPage contains a page of ProcessThreadInfo values. 13422type ProcessThreadInfoCollectionPage struct { 13423 fn func(ProcessThreadInfoCollection) (ProcessThreadInfoCollection, error) 13424 ptic ProcessThreadInfoCollection 13425} 13426 13427// Next advances to the next page of values. If there was an error making 13428// the request the page does not advance and the error is returned. 13429func (page *ProcessThreadInfoCollectionPage) Next() error { 13430 next, err := page.fn(page.ptic) 13431 if err != nil { 13432 return err 13433 } 13434 page.ptic = next 13435 return nil 13436} 13437 13438// NotDone returns true if the page enumeration should be started or is not yet complete. 13439func (page ProcessThreadInfoCollectionPage) NotDone() bool { 13440 return !page.ptic.IsEmpty() 13441} 13442 13443// Response returns the raw server response from the last page request. 13444func (page ProcessThreadInfoCollectionPage) Response() ProcessThreadInfoCollection { 13445 return page.ptic 13446} 13447 13448// Values returns the slice of values for the current page or nil if there are no values. 13449func (page ProcessThreadInfoCollectionPage) Values() []ProcessThreadInfo { 13450 if page.ptic.IsEmpty() { 13451 return nil 13452 } 13453 return *page.ptic.Value 13454} 13455 13456// ProcessThreadInfoProperties processThreadInfo resource specific properties 13457type ProcessThreadInfoProperties struct { 13458 // ID - ARM Identifier for deployment. 13459 ID *int32 `json:"id,omitempty"` 13460 // Href - HRef URI. 13461 Href *string `json:"href,omitempty"` 13462 // Process - Process URI. 13463 Process *string `json:"process,omitempty"` 13464 // StartAddress - Start address. 13465 StartAddress *string `json:"startAddress,omitempty"` 13466 // CurrentPriority - Current thread priority. 13467 CurrentPriority *int32 `json:"currentPriority,omitempty"` 13468 // PriorityLevel - Thread priority level. 13469 PriorityLevel *string `json:"priorityLevel,omitempty"` 13470 // BasePriority - Base priority. 13471 BasePriority *int32 `json:"basePriority,omitempty"` 13472 // StartTime - Start time. 13473 StartTime *date.Time `json:"startTime,omitempty"` 13474 // TotalProcessorTime - Total processor time. 13475 TotalProcessorTime *string `json:"totalProcessorTime,omitempty"` 13476 // UserProcessorTime - User processor time. 13477 UserProcessorTime *string `json:"userProcessorTime,omitempty"` 13478 // PriviledgedProcessorTime - Priviledged processor time. 13479 PriviledgedProcessorTime *string `json:"priviledgedProcessorTime,omitempty"` 13480 // State - Thread state. 13481 State *string `json:"state,omitempty"` 13482 // WaitReason - Wait reason. 13483 WaitReason *string `json:"waitReason,omitempty"` 13484} 13485 13486// ProxyOnlyResource azure proxy only resource. This resource is not tracked by Azure Resource Manager. 13487type ProxyOnlyResource struct { 13488 // ID - Resource Id. 13489 ID *string `json:"id,omitempty"` 13490 // Name - Resource Name. 13491 Name *string `json:"name,omitempty"` 13492 // Kind - Kind of resource. 13493 Kind *string `json:"kind,omitempty"` 13494 // Type - Resource type. 13495 Type *string `json:"type,omitempty"` 13496} 13497 13498// PublicCertificate public certificate object 13499type PublicCertificate struct { 13500 autorest.Response `json:"-"` 13501 // PublicCertificateProperties - PublicCertificate resource specific properties 13502 *PublicCertificateProperties `json:"properties,omitempty"` 13503 // ID - Resource Id. 13504 ID *string `json:"id,omitempty"` 13505 // Name - Resource Name. 13506 Name *string `json:"name,omitempty"` 13507 // Kind - Kind of resource. 13508 Kind *string `json:"kind,omitempty"` 13509 // Type - Resource type. 13510 Type *string `json:"type,omitempty"` 13511} 13512 13513// MarshalJSON is the custom marshaler for PublicCertificate. 13514func (pc PublicCertificate) MarshalJSON() ([]byte, error) { 13515 objectMap := make(map[string]interface{}) 13516 if pc.PublicCertificateProperties != nil { 13517 objectMap["properties"] = pc.PublicCertificateProperties 13518 } 13519 if pc.ID != nil { 13520 objectMap["id"] = pc.ID 13521 } 13522 if pc.Name != nil { 13523 objectMap["name"] = pc.Name 13524 } 13525 if pc.Kind != nil { 13526 objectMap["kind"] = pc.Kind 13527 } 13528 if pc.Type != nil { 13529 objectMap["type"] = pc.Type 13530 } 13531 return json.Marshal(objectMap) 13532} 13533 13534// UnmarshalJSON is the custom unmarshaler for PublicCertificate struct. 13535func (pc *PublicCertificate) UnmarshalJSON(body []byte) error { 13536 var m map[string]*json.RawMessage 13537 err := json.Unmarshal(body, &m) 13538 if err != nil { 13539 return err 13540 } 13541 for k, v := range m { 13542 switch k { 13543 case "properties": 13544 if v != nil { 13545 var publicCertificateProperties PublicCertificateProperties 13546 err = json.Unmarshal(*v, &publicCertificateProperties) 13547 if err != nil { 13548 return err 13549 } 13550 pc.PublicCertificateProperties = &publicCertificateProperties 13551 } 13552 case "id": 13553 if v != nil { 13554 var ID string 13555 err = json.Unmarshal(*v, &ID) 13556 if err != nil { 13557 return err 13558 } 13559 pc.ID = &ID 13560 } 13561 case "name": 13562 if v != nil { 13563 var name string 13564 err = json.Unmarshal(*v, &name) 13565 if err != nil { 13566 return err 13567 } 13568 pc.Name = &name 13569 } 13570 case "kind": 13571 if v != nil { 13572 var kind string 13573 err = json.Unmarshal(*v, &kind) 13574 if err != nil { 13575 return err 13576 } 13577 pc.Kind = &kind 13578 } 13579 case "type": 13580 if v != nil { 13581 var typeVar string 13582 err = json.Unmarshal(*v, &typeVar) 13583 if err != nil { 13584 return err 13585 } 13586 pc.Type = &typeVar 13587 } 13588 } 13589 } 13590 13591 return nil 13592} 13593 13594// PublicCertificateCollection collection of public certificates 13595type PublicCertificateCollection struct { 13596 autorest.Response `json:"-"` 13597 // Value - Collection of resources. 13598 Value *[]PublicCertificate `json:"value,omitempty"` 13599 // NextLink - Link to next page of resources. 13600 NextLink *string `json:"nextLink,omitempty"` 13601} 13602 13603// PublicCertificateCollectionIterator provides access to a complete listing of PublicCertificate values. 13604type PublicCertificateCollectionIterator struct { 13605 i int 13606 page PublicCertificateCollectionPage 13607} 13608 13609// Next advances to the next value. If there was an error making 13610// the request the iterator does not advance and the error is returned. 13611func (iter *PublicCertificateCollectionIterator) Next() error { 13612 iter.i++ 13613 if iter.i < len(iter.page.Values()) { 13614 return nil 13615 } 13616 err := iter.page.Next() 13617 if err != nil { 13618 iter.i-- 13619 return err 13620 } 13621 iter.i = 0 13622 return nil 13623} 13624 13625// NotDone returns true if the enumeration should be started or is not yet complete. 13626func (iter PublicCertificateCollectionIterator) NotDone() bool { 13627 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 13628} 13629 13630// Response returns the raw server response from the last page request. 13631func (iter PublicCertificateCollectionIterator) Response() PublicCertificateCollection { 13632 return iter.page.Response() 13633} 13634 13635// Value returns the current value or a zero-initialized value if the 13636// iterator has advanced beyond the end of the collection. 13637func (iter PublicCertificateCollectionIterator) Value() PublicCertificate { 13638 if !iter.page.NotDone() { 13639 return PublicCertificate{} 13640 } 13641 return iter.page.Values()[iter.i] 13642} 13643 13644// IsEmpty returns true if the ListResult contains no values. 13645func (pcc PublicCertificateCollection) IsEmpty() bool { 13646 return pcc.Value == nil || len(*pcc.Value) == 0 13647} 13648 13649// publicCertificateCollectionPreparer prepares a request to retrieve the next set of results. 13650// It returns nil if no more results exist. 13651func (pcc PublicCertificateCollection) publicCertificateCollectionPreparer() (*http.Request, error) { 13652 if pcc.NextLink == nil || len(to.String(pcc.NextLink)) < 1 { 13653 return nil, nil 13654 } 13655 return autorest.Prepare(&http.Request{}, 13656 autorest.AsJSON(), 13657 autorest.AsGet(), 13658 autorest.WithBaseURL(to.String(pcc.NextLink))) 13659} 13660 13661// PublicCertificateCollectionPage contains a page of PublicCertificate values. 13662type PublicCertificateCollectionPage struct { 13663 fn func(PublicCertificateCollection) (PublicCertificateCollection, error) 13664 pcc PublicCertificateCollection 13665} 13666 13667// Next advances to the next page of values. If there was an error making 13668// the request the page does not advance and the error is returned. 13669func (page *PublicCertificateCollectionPage) Next() error { 13670 next, err := page.fn(page.pcc) 13671 if err != nil { 13672 return err 13673 } 13674 page.pcc = next 13675 return nil 13676} 13677 13678// NotDone returns true if the page enumeration should be started or is not yet complete. 13679func (page PublicCertificateCollectionPage) NotDone() bool { 13680 return !page.pcc.IsEmpty() 13681} 13682 13683// Response returns the raw server response from the last page request. 13684func (page PublicCertificateCollectionPage) Response() PublicCertificateCollection { 13685 return page.pcc 13686} 13687 13688// Values returns the slice of values for the current page or nil if there are no values. 13689func (page PublicCertificateCollectionPage) Values() []PublicCertificate { 13690 if page.pcc.IsEmpty() { 13691 return nil 13692 } 13693 return *page.pcc.Value 13694} 13695 13696// PublicCertificateProperties publicCertificate resource specific properties 13697type PublicCertificateProperties struct { 13698 // Blob - Public Certificate byte array 13699 Blob *[]byte `json:"blob,omitempty"` 13700 // PublicCertificateLocation - Public Certificate Location. Possible values include: 'PublicCertificateLocationCurrentUserMy', 'PublicCertificateLocationLocalMachineMy', 'PublicCertificateLocationUnknown' 13701 PublicCertificateLocation PublicCertificateLocation `json:"publicCertificateLocation,omitempty"` 13702 // Thumbprint - Certificate Thumbprint 13703 Thumbprint *string `json:"thumbprint,omitempty"` 13704} 13705 13706// PushSettings push settings for the App. 13707type PushSettings struct { 13708 autorest.Response `json:"-"` 13709 // PushSettingsProperties - PushSettings resource specific properties 13710 *PushSettingsProperties `json:"properties,omitempty"` 13711 // ID - Resource Id. 13712 ID *string `json:"id,omitempty"` 13713 // Name - Resource Name. 13714 Name *string `json:"name,omitempty"` 13715 // Kind - Kind of resource. 13716 Kind *string `json:"kind,omitempty"` 13717 // Type - Resource type. 13718 Type *string `json:"type,omitempty"` 13719} 13720 13721// MarshalJSON is the custom marshaler for PushSettings. 13722func (ps PushSettings) MarshalJSON() ([]byte, error) { 13723 objectMap := make(map[string]interface{}) 13724 if ps.PushSettingsProperties != nil { 13725 objectMap["properties"] = ps.PushSettingsProperties 13726 } 13727 if ps.ID != nil { 13728 objectMap["id"] = ps.ID 13729 } 13730 if ps.Name != nil { 13731 objectMap["name"] = ps.Name 13732 } 13733 if ps.Kind != nil { 13734 objectMap["kind"] = ps.Kind 13735 } 13736 if ps.Type != nil { 13737 objectMap["type"] = ps.Type 13738 } 13739 return json.Marshal(objectMap) 13740} 13741 13742// UnmarshalJSON is the custom unmarshaler for PushSettings struct. 13743func (ps *PushSettings) UnmarshalJSON(body []byte) error { 13744 var m map[string]*json.RawMessage 13745 err := json.Unmarshal(body, &m) 13746 if err != nil { 13747 return err 13748 } 13749 for k, v := range m { 13750 switch k { 13751 case "properties": 13752 if v != nil { 13753 var pushSettingsProperties PushSettingsProperties 13754 err = json.Unmarshal(*v, &pushSettingsProperties) 13755 if err != nil { 13756 return err 13757 } 13758 ps.PushSettingsProperties = &pushSettingsProperties 13759 } 13760 case "id": 13761 if v != nil { 13762 var ID string 13763 err = json.Unmarshal(*v, &ID) 13764 if err != nil { 13765 return err 13766 } 13767 ps.ID = &ID 13768 } 13769 case "name": 13770 if v != nil { 13771 var name string 13772 err = json.Unmarshal(*v, &name) 13773 if err != nil { 13774 return err 13775 } 13776 ps.Name = &name 13777 } 13778 case "kind": 13779 if v != nil { 13780 var kind string 13781 err = json.Unmarshal(*v, &kind) 13782 if err != nil { 13783 return err 13784 } 13785 ps.Kind = &kind 13786 } 13787 case "type": 13788 if v != nil { 13789 var typeVar string 13790 err = json.Unmarshal(*v, &typeVar) 13791 if err != nil { 13792 return err 13793 } 13794 ps.Type = &typeVar 13795 } 13796 } 13797 } 13798 13799 return nil 13800} 13801 13802// PushSettingsProperties pushSettings resource specific properties 13803type PushSettingsProperties struct { 13804 // IsPushEnabled - Gets or sets a flag indicating whether the Push endpoint is enabled. 13805 IsPushEnabled *bool `json:"isPushEnabled,omitempty"` 13806 // TagWhitelistJSON - Gets or sets a JSON string containing a list of tags that are whitelisted for use by the push registration endpoint. 13807 TagWhitelistJSON *string `json:"tagWhitelistJson,omitempty"` 13808 // TagsRequiringAuth - Gets or sets a JSON string containing a list of tags that require user authentication to be used in the push registration endpoint. 13809 // Tags can consist of alphanumeric characters and the following: 13810 // '_', '@', '#', '.', ':', '-'. 13811 // Validation should be performed at the PushRequestHandler. 13812 TagsRequiringAuth *string `json:"tagsRequiringAuth,omitempty"` 13813 // 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. 13814 DynamicTagsJSON *string `json:"dynamicTagsJson,omitempty"` 13815} 13816 13817// RampUpRule routing rules for ramp up testing. This rule allows to redirect static traffic % to a slot or to 13818// gradually change routing % based on performance. 13819type RampUpRule struct { 13820 // ActionHostName - Hostname of a slot to which the traffic will be redirected if decided to. E.g. myapp-stage.azurewebsites.net. 13821 ActionHostName *string `json:"actionHostName,omitempty"` 13822 // ReroutePercentage - Percentage of the traffic which will be redirected to <code>ActionHostName</code>. 13823 ReroutePercentage *float64 `json:"reroutePercentage,omitempty"` 13824 // ChangeStep - In auto ramp up scenario this is the step to to add/remove from <code>ReroutePercentage</code> until it reaches 13825 // <code>MinReroutePercentage</code> or <code>MaxReroutePercentage</code>. Site metrics are checked every N minutes specificed in <code>ChangeIntervalInMinutes</code>. 13826 // Custom decision algorithm can be provided in TiPCallback site extension which URL can be specified in <code>ChangeDecisionCallbackUrl</code>. 13827 ChangeStep *float64 `json:"changeStep,omitempty"` 13828 // ChangeIntervalInMinutes - Specifies interval in mimuntes to reevaluate ReroutePercentage. 13829 ChangeIntervalInMinutes *int32 `json:"changeIntervalInMinutes,omitempty"` 13830 // MinReroutePercentage - Specifies lower boundary above which ReroutePercentage will stay. 13831 MinReroutePercentage *float64 `json:"minReroutePercentage,omitempty"` 13832 // MaxReroutePercentage - Specifies upper boundary below which ReroutePercentage will stay. 13833 MaxReroutePercentage *float64 `json:"maxReroutePercentage,omitempty"` 13834 // 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. 13835 // https://www.siteextensions.net/packages/TiPCallback/ 13836 ChangeDecisionCallbackURL *string `json:"changeDecisionCallbackUrl,omitempty"` 13837 // Name - Name of the routing rule. The recommended name would be to point to the slot which will receive the traffic in the experiment. 13838 Name *string `json:"name,omitempty"` 13839} 13840 13841// ReadCloser ... 13842type ReadCloser struct { 13843 autorest.Response `json:"-"` 13844 Value *io.ReadCloser `json:"value,omitempty"` 13845} 13846 13847// Recommendation represents a recommendation result generated by the recommendation engine. 13848type Recommendation struct { 13849 // RecommendationProperties - Recommendation resource specific properties 13850 *RecommendationProperties `json:"properties,omitempty"` 13851 // ID - Resource Id. 13852 ID *string `json:"id,omitempty"` 13853 // Name - Resource Name. 13854 Name *string `json:"name,omitempty"` 13855 // Kind - Kind of resource. 13856 Kind *string `json:"kind,omitempty"` 13857 // Type - Resource type. 13858 Type *string `json:"type,omitempty"` 13859} 13860 13861// MarshalJSON is the custom marshaler for Recommendation. 13862func (r Recommendation) MarshalJSON() ([]byte, error) { 13863 objectMap := make(map[string]interface{}) 13864 if r.RecommendationProperties != nil { 13865 objectMap["properties"] = r.RecommendationProperties 13866 } 13867 if r.ID != nil { 13868 objectMap["id"] = r.ID 13869 } 13870 if r.Name != nil { 13871 objectMap["name"] = r.Name 13872 } 13873 if r.Kind != nil { 13874 objectMap["kind"] = r.Kind 13875 } 13876 if r.Type != nil { 13877 objectMap["type"] = r.Type 13878 } 13879 return json.Marshal(objectMap) 13880} 13881 13882// UnmarshalJSON is the custom unmarshaler for Recommendation struct. 13883func (r *Recommendation) UnmarshalJSON(body []byte) error { 13884 var m map[string]*json.RawMessage 13885 err := json.Unmarshal(body, &m) 13886 if err != nil { 13887 return err 13888 } 13889 for k, v := range m { 13890 switch k { 13891 case "properties": 13892 if v != nil { 13893 var recommendationProperties RecommendationProperties 13894 err = json.Unmarshal(*v, &recommendationProperties) 13895 if err != nil { 13896 return err 13897 } 13898 r.RecommendationProperties = &recommendationProperties 13899 } 13900 case "id": 13901 if v != nil { 13902 var ID string 13903 err = json.Unmarshal(*v, &ID) 13904 if err != nil { 13905 return err 13906 } 13907 r.ID = &ID 13908 } 13909 case "name": 13910 if v != nil { 13911 var name string 13912 err = json.Unmarshal(*v, &name) 13913 if err != nil { 13914 return err 13915 } 13916 r.Name = &name 13917 } 13918 case "kind": 13919 if v != nil { 13920 var kind string 13921 err = json.Unmarshal(*v, &kind) 13922 if err != nil { 13923 return err 13924 } 13925 r.Kind = &kind 13926 } 13927 case "type": 13928 if v != nil { 13929 var typeVar string 13930 err = json.Unmarshal(*v, &typeVar) 13931 if err != nil { 13932 return err 13933 } 13934 r.Type = &typeVar 13935 } 13936 } 13937 } 13938 13939 return nil 13940} 13941 13942// RecommendationCollection collection of recommendations. 13943type RecommendationCollection struct { 13944 autorest.Response `json:"-"` 13945 // Value - Collection of resources. 13946 Value *[]Recommendation `json:"value,omitempty"` 13947 // NextLink - Link to next page of resources. 13948 NextLink *string `json:"nextLink,omitempty"` 13949} 13950 13951// RecommendationCollectionIterator provides access to a complete listing of Recommendation values. 13952type RecommendationCollectionIterator struct { 13953 i int 13954 page RecommendationCollectionPage 13955} 13956 13957// Next advances to the next value. If there was an error making 13958// the request the iterator does not advance and the error is returned. 13959func (iter *RecommendationCollectionIterator) Next() error { 13960 iter.i++ 13961 if iter.i < len(iter.page.Values()) { 13962 return nil 13963 } 13964 err := iter.page.Next() 13965 if err != nil { 13966 iter.i-- 13967 return err 13968 } 13969 iter.i = 0 13970 return nil 13971} 13972 13973// NotDone returns true if the enumeration should be started or is not yet complete. 13974func (iter RecommendationCollectionIterator) NotDone() bool { 13975 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 13976} 13977 13978// Response returns the raw server response from the last page request. 13979func (iter RecommendationCollectionIterator) Response() RecommendationCollection { 13980 return iter.page.Response() 13981} 13982 13983// Value returns the current value or a zero-initialized value if the 13984// iterator has advanced beyond the end of the collection. 13985func (iter RecommendationCollectionIterator) Value() Recommendation { 13986 if !iter.page.NotDone() { 13987 return Recommendation{} 13988 } 13989 return iter.page.Values()[iter.i] 13990} 13991 13992// IsEmpty returns true if the ListResult contains no values. 13993func (rc RecommendationCollection) IsEmpty() bool { 13994 return rc.Value == nil || len(*rc.Value) == 0 13995} 13996 13997// recommendationCollectionPreparer prepares a request to retrieve the next set of results. 13998// It returns nil if no more results exist. 13999func (rc RecommendationCollection) recommendationCollectionPreparer() (*http.Request, error) { 14000 if rc.NextLink == nil || len(to.String(rc.NextLink)) < 1 { 14001 return nil, nil 14002 } 14003 return autorest.Prepare(&http.Request{}, 14004 autorest.AsJSON(), 14005 autorest.AsGet(), 14006 autorest.WithBaseURL(to.String(rc.NextLink))) 14007} 14008 14009// RecommendationCollectionPage contains a page of Recommendation values. 14010type RecommendationCollectionPage struct { 14011 fn func(RecommendationCollection) (RecommendationCollection, error) 14012 rc RecommendationCollection 14013} 14014 14015// Next advances to the next page of values. If there was an error making 14016// the request the page does not advance and the error is returned. 14017func (page *RecommendationCollectionPage) Next() error { 14018 next, err := page.fn(page.rc) 14019 if err != nil { 14020 return err 14021 } 14022 page.rc = next 14023 return nil 14024} 14025 14026// NotDone returns true if the page enumeration should be started or is not yet complete. 14027func (page RecommendationCollectionPage) NotDone() bool { 14028 return !page.rc.IsEmpty() 14029} 14030 14031// Response returns the raw server response from the last page request. 14032func (page RecommendationCollectionPage) Response() RecommendationCollection { 14033 return page.rc 14034} 14035 14036// Values returns the slice of values for the current page or nil if there are no values. 14037func (page RecommendationCollectionPage) Values() []Recommendation { 14038 if page.rc.IsEmpty() { 14039 return nil 14040 } 14041 return *page.rc.Value 14042} 14043 14044// RecommendationProperties recommendation resource specific properties 14045type RecommendationProperties struct { 14046 // CreationTime - Timestamp when this instance was created. 14047 CreationTime *date.Time `json:"creationTime,omitempty"` 14048 // RecommendationID - A GUID value that each recommendation object is associated with. 14049 RecommendationID *uuid.UUID `json:"recommendationId,omitempty"` 14050 // ResourceID - Full ARM resource ID string that this recommendation object is associated with. 14051 ResourceID *string `json:"resourceId,omitempty"` 14052 // ResourceScope - Name of a resource type this recommendation applies, e.g. Subscription, ServerFarm, Site. Possible values include: 'ServerFarm', 'Subscription', 'WebSite' 14053 ResourceScope ResourceScopeType `json:"resourceScope,omitempty"` 14054 // RuleName - Unique name of the rule. 14055 RuleName *string `json:"ruleName,omitempty"` 14056 // DisplayName - UI friendly name of the rule (may not be unique). 14057 DisplayName *string `json:"displayName,omitempty"` 14058 // Message - Recommendation text. 14059 Message *string `json:"message,omitempty"` 14060 // Level - Level indicating how critical this recommendation can impact. Possible values include: 'NotificationLevelCritical', 'NotificationLevelWarning', 'NotificationLevelInformation', 'NotificationLevelNonUrgentSuggestion' 14061 Level NotificationLevel `json:"level,omitempty"` 14062 // Channels - List of channels that this recommendation can apply. Possible values include: 'Notification', 'API', 'Email', 'Webhook', 'All' 14063 Channels Channels `json:"channels,omitempty"` 14064 // Tags - The list of category tags that this recommendation belongs to. 14065 Tags *[]string `json:"tags,omitempty"` 14066 // ActionName - Name of action recommended by this object. 14067 ActionName *string `json:"actionName,omitempty"` 14068 // StartTime - The beginning time in UTC of a range that the recommendation refers to. 14069 StartTime *date.Time `json:"startTime,omitempty"` 14070 // EndTime - The end time in UTC of a range that the recommendation refers to. 14071 EndTime *date.Time `json:"endTime,omitempty"` 14072 // NextNotificationTime - When to notify this recommendation next in UTC. Null means that this will never be notified anymore. 14073 NextNotificationTime *date.Time `json:"nextNotificationTime,omitempty"` 14074 // NotificationExpirationTime - Date and time in UTC when this notification expires. 14075 NotificationExpirationTime *date.Time `json:"notificationExpirationTime,omitempty"` 14076 // NotifiedTime - Last timestamp in UTC this instance was actually notified. Null means that this recommendation hasn't been notified yet. 14077 NotifiedTime *date.Time `json:"notifiedTime,omitempty"` 14078 // Score - A metric value measured by the rule. 14079 Score *float64 `json:"score,omitempty"` 14080 // IsDynamic - True if this is associated with a dynamically added rule 14081 IsDynamic *bool `json:"isDynamic,omitempty"` 14082 // ExtensionName - Extension name of the portal if exists. 14083 ExtensionName *string `json:"extensionName,omitempty"` 14084 // BladeName - Deep link to a blade on the portal. 14085 BladeName *string `json:"bladeName,omitempty"` 14086 // ForwardLink - Forward link to an external document associated with the rule. 14087 ForwardLink *string `json:"forwardLink,omitempty"` 14088} 14089 14090// RecommendationRule represents a recommendation rule that the recommendation engine can perform. 14091type RecommendationRule struct { 14092 autorest.Response `json:"-"` 14093 // RecommendationRuleProperties - RecommendationRule resource specific properties 14094 *RecommendationRuleProperties `json:"properties,omitempty"` 14095 // ID - Resource Id. 14096 ID *string `json:"id,omitempty"` 14097 // Name - Resource Name. 14098 Name *string `json:"name,omitempty"` 14099 // Kind - Kind of resource. 14100 Kind *string `json:"kind,omitempty"` 14101 // Type - Resource type. 14102 Type *string `json:"type,omitempty"` 14103} 14104 14105// MarshalJSON is the custom marshaler for RecommendationRule. 14106func (rr RecommendationRule) MarshalJSON() ([]byte, error) { 14107 objectMap := make(map[string]interface{}) 14108 if rr.RecommendationRuleProperties != nil { 14109 objectMap["properties"] = rr.RecommendationRuleProperties 14110 } 14111 if rr.ID != nil { 14112 objectMap["id"] = rr.ID 14113 } 14114 if rr.Name != nil { 14115 objectMap["name"] = rr.Name 14116 } 14117 if rr.Kind != nil { 14118 objectMap["kind"] = rr.Kind 14119 } 14120 if rr.Type != nil { 14121 objectMap["type"] = rr.Type 14122 } 14123 return json.Marshal(objectMap) 14124} 14125 14126// UnmarshalJSON is the custom unmarshaler for RecommendationRule struct. 14127func (rr *RecommendationRule) UnmarshalJSON(body []byte) error { 14128 var m map[string]*json.RawMessage 14129 err := json.Unmarshal(body, &m) 14130 if err != nil { 14131 return err 14132 } 14133 for k, v := range m { 14134 switch k { 14135 case "properties": 14136 if v != nil { 14137 var recommendationRuleProperties RecommendationRuleProperties 14138 err = json.Unmarshal(*v, &recommendationRuleProperties) 14139 if err != nil { 14140 return err 14141 } 14142 rr.RecommendationRuleProperties = &recommendationRuleProperties 14143 } 14144 case "id": 14145 if v != nil { 14146 var ID string 14147 err = json.Unmarshal(*v, &ID) 14148 if err != nil { 14149 return err 14150 } 14151 rr.ID = &ID 14152 } 14153 case "name": 14154 if v != nil { 14155 var name string 14156 err = json.Unmarshal(*v, &name) 14157 if err != nil { 14158 return err 14159 } 14160 rr.Name = &name 14161 } 14162 case "kind": 14163 if v != nil { 14164 var kind string 14165 err = json.Unmarshal(*v, &kind) 14166 if err != nil { 14167 return err 14168 } 14169 rr.Kind = &kind 14170 } 14171 case "type": 14172 if v != nil { 14173 var typeVar string 14174 err = json.Unmarshal(*v, &typeVar) 14175 if err != nil { 14176 return err 14177 } 14178 rr.Type = &typeVar 14179 } 14180 } 14181 } 14182 14183 return nil 14184} 14185 14186// RecommendationRuleProperties recommendationRule resource specific properties 14187type RecommendationRuleProperties struct { 14188 // Name - Unique name of the rule. 14189 Name *string `json:"name,omitempty"` 14190 // DisplayName - UI friendly name of the rule. 14191 DisplayName *string `json:"displayName,omitempty"` 14192 // Message - Localized name of the rule (Good for UI). 14193 Message *string `json:"message,omitempty"` 14194 // RecommendationID - Recommendation ID of an associated recommendation object tied to the rule, if exists. 14195 // If such an object doesn't exist, it is set to null. 14196 RecommendationID *uuid.UUID `json:"recommendationId,omitempty"` 14197 // Description - Localized detailed description of the rule. 14198 Description *string `json:"description,omitempty"` 14199 // ActionName - Name of action that is recommended by this rule in string. 14200 ActionName *string `json:"actionName,omitempty"` 14201 // Level - Level of impact indicating how critical this rule is. Possible values include: 'NotificationLevelCritical', 'NotificationLevelWarning', 'NotificationLevelInformation', 'NotificationLevelNonUrgentSuggestion' 14202 Level NotificationLevel `json:"level,omitempty"` 14203 // Channels - List of available channels that this rule applies. Possible values include: 'Notification', 'API', 'Email', 'Webhook', 'All' 14204 Channels Channels `json:"channels,omitempty"` 14205 // Tags - An array of category tags that the rule contains. 14206 Tags *[]string `json:"tags,omitempty"` 14207 // IsDynamic - True if this is associated with a dynamically added rule 14208 IsDynamic *bool `json:"isDynamic,omitempty"` 14209 // ExtensionName - Extension name of the portal if exists. Applicable to dynamic rule only. 14210 ExtensionName *string `json:"extensionName,omitempty"` 14211 // BladeName - Deep link to a blade on the portal. Applicable to dynamic rule only. 14212 BladeName *string `json:"bladeName,omitempty"` 14213 // ForwardLink - Forward link to an external document associated with the rule. Applicable to dynamic rule only. 14214 ForwardLink *string `json:"forwardLink,omitempty"` 14215} 14216 14217// ReissueCertificateOrderRequest class representing certificate reissue request. 14218type ReissueCertificateOrderRequest struct { 14219 // ReissueCertificateOrderRequestProperties - ReissueCertificateOrderRequest resource specific properties 14220 *ReissueCertificateOrderRequestProperties `json:"properties,omitempty"` 14221 // ID - Resource Id. 14222 ID *string `json:"id,omitempty"` 14223 // Name - Resource Name. 14224 Name *string `json:"name,omitempty"` 14225 // Kind - Kind of resource. 14226 Kind *string `json:"kind,omitempty"` 14227 // Type - Resource type. 14228 Type *string `json:"type,omitempty"` 14229} 14230 14231// MarshalJSON is the custom marshaler for ReissueCertificateOrderRequest. 14232func (rcor ReissueCertificateOrderRequest) MarshalJSON() ([]byte, error) { 14233 objectMap := make(map[string]interface{}) 14234 if rcor.ReissueCertificateOrderRequestProperties != nil { 14235 objectMap["properties"] = rcor.ReissueCertificateOrderRequestProperties 14236 } 14237 if rcor.ID != nil { 14238 objectMap["id"] = rcor.ID 14239 } 14240 if rcor.Name != nil { 14241 objectMap["name"] = rcor.Name 14242 } 14243 if rcor.Kind != nil { 14244 objectMap["kind"] = rcor.Kind 14245 } 14246 if rcor.Type != nil { 14247 objectMap["type"] = rcor.Type 14248 } 14249 return json.Marshal(objectMap) 14250} 14251 14252// UnmarshalJSON is the custom unmarshaler for ReissueCertificateOrderRequest struct. 14253func (rcor *ReissueCertificateOrderRequest) UnmarshalJSON(body []byte) error { 14254 var m map[string]*json.RawMessage 14255 err := json.Unmarshal(body, &m) 14256 if err != nil { 14257 return err 14258 } 14259 for k, v := range m { 14260 switch k { 14261 case "properties": 14262 if v != nil { 14263 var reissueCertificateOrderRequestProperties ReissueCertificateOrderRequestProperties 14264 err = json.Unmarshal(*v, &reissueCertificateOrderRequestProperties) 14265 if err != nil { 14266 return err 14267 } 14268 rcor.ReissueCertificateOrderRequestProperties = &reissueCertificateOrderRequestProperties 14269 } 14270 case "id": 14271 if v != nil { 14272 var ID string 14273 err = json.Unmarshal(*v, &ID) 14274 if err != nil { 14275 return err 14276 } 14277 rcor.ID = &ID 14278 } 14279 case "name": 14280 if v != nil { 14281 var name string 14282 err = json.Unmarshal(*v, &name) 14283 if err != nil { 14284 return err 14285 } 14286 rcor.Name = &name 14287 } 14288 case "kind": 14289 if v != nil { 14290 var kind string 14291 err = json.Unmarshal(*v, &kind) 14292 if err != nil { 14293 return err 14294 } 14295 rcor.Kind = &kind 14296 } 14297 case "type": 14298 if v != nil { 14299 var typeVar string 14300 err = json.Unmarshal(*v, &typeVar) 14301 if err != nil { 14302 return err 14303 } 14304 rcor.Type = &typeVar 14305 } 14306 } 14307 } 14308 14309 return nil 14310} 14311 14312// ReissueCertificateOrderRequestProperties reissueCertificateOrderRequest resource specific properties 14313type ReissueCertificateOrderRequestProperties struct { 14314 // KeySize - Certificate Key Size. 14315 KeySize *int32 `json:"keySize,omitempty"` 14316 // DelayExistingRevokeInHours - Delay in hours to revoke existing certificate after the new certificate is issued. 14317 DelayExistingRevokeInHours *int32 `json:"delayExistingRevokeInHours,omitempty"` 14318 // Csr - Csr to be used for re-key operation. 14319 Csr *string `json:"csr,omitempty"` 14320 // IsPrivateKeyExternal - Should we change the ASC type (from managed private key to external private key and vice versa). 14321 IsPrivateKeyExternal *bool `json:"isPrivateKeyExternal,omitempty"` 14322} 14323 14324// RelayServiceConnectionEntity hybrid Connection for an App Service app. 14325type RelayServiceConnectionEntity struct { 14326 autorest.Response `json:"-"` 14327 // RelayServiceConnectionEntityProperties - RelayServiceConnectionEntity resource specific properties 14328 *RelayServiceConnectionEntityProperties `json:"properties,omitempty"` 14329 // ID - Resource Id. 14330 ID *string `json:"id,omitempty"` 14331 // Name - Resource Name. 14332 Name *string `json:"name,omitempty"` 14333 // Kind - Kind of resource. 14334 Kind *string `json:"kind,omitempty"` 14335 // Type - Resource type. 14336 Type *string `json:"type,omitempty"` 14337} 14338 14339// MarshalJSON is the custom marshaler for RelayServiceConnectionEntity. 14340func (rsce RelayServiceConnectionEntity) MarshalJSON() ([]byte, error) { 14341 objectMap := make(map[string]interface{}) 14342 if rsce.RelayServiceConnectionEntityProperties != nil { 14343 objectMap["properties"] = rsce.RelayServiceConnectionEntityProperties 14344 } 14345 if rsce.ID != nil { 14346 objectMap["id"] = rsce.ID 14347 } 14348 if rsce.Name != nil { 14349 objectMap["name"] = rsce.Name 14350 } 14351 if rsce.Kind != nil { 14352 objectMap["kind"] = rsce.Kind 14353 } 14354 if rsce.Type != nil { 14355 objectMap["type"] = rsce.Type 14356 } 14357 return json.Marshal(objectMap) 14358} 14359 14360// UnmarshalJSON is the custom unmarshaler for RelayServiceConnectionEntity struct. 14361func (rsce *RelayServiceConnectionEntity) UnmarshalJSON(body []byte) error { 14362 var m map[string]*json.RawMessage 14363 err := json.Unmarshal(body, &m) 14364 if err != nil { 14365 return err 14366 } 14367 for k, v := range m { 14368 switch k { 14369 case "properties": 14370 if v != nil { 14371 var relayServiceConnectionEntityProperties RelayServiceConnectionEntityProperties 14372 err = json.Unmarshal(*v, &relayServiceConnectionEntityProperties) 14373 if err != nil { 14374 return err 14375 } 14376 rsce.RelayServiceConnectionEntityProperties = &relayServiceConnectionEntityProperties 14377 } 14378 case "id": 14379 if v != nil { 14380 var ID string 14381 err = json.Unmarshal(*v, &ID) 14382 if err != nil { 14383 return err 14384 } 14385 rsce.ID = &ID 14386 } 14387 case "name": 14388 if v != nil { 14389 var name string 14390 err = json.Unmarshal(*v, &name) 14391 if err != nil { 14392 return err 14393 } 14394 rsce.Name = &name 14395 } 14396 case "kind": 14397 if v != nil { 14398 var kind string 14399 err = json.Unmarshal(*v, &kind) 14400 if err != nil { 14401 return err 14402 } 14403 rsce.Kind = &kind 14404 } 14405 case "type": 14406 if v != nil { 14407 var typeVar string 14408 err = json.Unmarshal(*v, &typeVar) 14409 if err != nil { 14410 return err 14411 } 14412 rsce.Type = &typeVar 14413 } 14414 } 14415 } 14416 14417 return nil 14418} 14419 14420// RelayServiceConnectionEntityProperties relayServiceConnectionEntity resource specific properties 14421type RelayServiceConnectionEntityProperties struct { 14422 EntityName *string `json:"entityName,omitempty"` 14423 EntityConnectionString *string `json:"entityConnectionString,omitempty"` 14424 ResourceType *string `json:"resourceType,omitempty"` 14425 ResourceConnectionString *string `json:"resourceConnectionString,omitempty"` 14426 Hostname *string `json:"hostname,omitempty"` 14427 Port *int32 `json:"port,omitempty"` 14428 BiztalkURI *string `json:"biztalkUri,omitempty"` 14429} 14430 14431// Rendering instructions for rendering the data 14432type Rendering struct { 14433 // RenderingType - Rendering Type. Possible values include: 'NoGraph', 'Table', 'TimeSeries', 'TimeSeriesPerInstance' 14434 RenderingType RenderingType `json:"renderingType,omitempty"` 14435 // Title - Title of data 14436 Title *string `json:"title,omitempty"` 14437 // Description - Description of the data that will help it be interpreted 14438 Description *string `json:"description,omitempty"` 14439} 14440 14441// RenewCertificateOrderRequest class representing certificate renew request. 14442type RenewCertificateOrderRequest struct { 14443 // RenewCertificateOrderRequestProperties - RenewCertificateOrderRequest resource specific properties 14444 *RenewCertificateOrderRequestProperties `json:"properties,omitempty"` 14445 // ID - Resource Id. 14446 ID *string `json:"id,omitempty"` 14447 // Name - Resource Name. 14448 Name *string `json:"name,omitempty"` 14449 // Kind - Kind of resource. 14450 Kind *string `json:"kind,omitempty"` 14451 // Type - Resource type. 14452 Type *string `json:"type,omitempty"` 14453} 14454 14455// MarshalJSON is the custom marshaler for RenewCertificateOrderRequest. 14456func (rcor RenewCertificateOrderRequest) MarshalJSON() ([]byte, error) { 14457 objectMap := make(map[string]interface{}) 14458 if rcor.RenewCertificateOrderRequestProperties != nil { 14459 objectMap["properties"] = rcor.RenewCertificateOrderRequestProperties 14460 } 14461 if rcor.ID != nil { 14462 objectMap["id"] = rcor.ID 14463 } 14464 if rcor.Name != nil { 14465 objectMap["name"] = rcor.Name 14466 } 14467 if rcor.Kind != nil { 14468 objectMap["kind"] = rcor.Kind 14469 } 14470 if rcor.Type != nil { 14471 objectMap["type"] = rcor.Type 14472 } 14473 return json.Marshal(objectMap) 14474} 14475 14476// UnmarshalJSON is the custom unmarshaler for RenewCertificateOrderRequest struct. 14477func (rcor *RenewCertificateOrderRequest) UnmarshalJSON(body []byte) error { 14478 var m map[string]*json.RawMessage 14479 err := json.Unmarshal(body, &m) 14480 if err != nil { 14481 return err 14482 } 14483 for k, v := range m { 14484 switch k { 14485 case "properties": 14486 if v != nil { 14487 var renewCertificateOrderRequestProperties RenewCertificateOrderRequestProperties 14488 err = json.Unmarshal(*v, &renewCertificateOrderRequestProperties) 14489 if err != nil { 14490 return err 14491 } 14492 rcor.RenewCertificateOrderRequestProperties = &renewCertificateOrderRequestProperties 14493 } 14494 case "id": 14495 if v != nil { 14496 var ID string 14497 err = json.Unmarshal(*v, &ID) 14498 if err != nil { 14499 return err 14500 } 14501 rcor.ID = &ID 14502 } 14503 case "name": 14504 if v != nil { 14505 var name string 14506 err = json.Unmarshal(*v, &name) 14507 if err != nil { 14508 return err 14509 } 14510 rcor.Name = &name 14511 } 14512 case "kind": 14513 if v != nil { 14514 var kind string 14515 err = json.Unmarshal(*v, &kind) 14516 if err != nil { 14517 return err 14518 } 14519 rcor.Kind = &kind 14520 } 14521 case "type": 14522 if v != nil { 14523 var typeVar string 14524 err = json.Unmarshal(*v, &typeVar) 14525 if err != nil { 14526 return err 14527 } 14528 rcor.Type = &typeVar 14529 } 14530 } 14531 } 14532 14533 return nil 14534} 14535 14536// RenewCertificateOrderRequestProperties renewCertificateOrderRequest resource specific properties 14537type RenewCertificateOrderRequestProperties struct { 14538 // KeySize - Certificate Key Size. 14539 KeySize *int32 `json:"keySize,omitempty"` 14540 // Csr - Csr to be used for re-key operation. 14541 Csr *string `json:"csr,omitempty"` 14542 // IsPrivateKeyExternal - Should we change the ASC type (from managed private key to external private key and vice versa). 14543 IsPrivateKeyExternal *bool `json:"isPrivateKeyExternal,omitempty"` 14544} 14545 14546// RequestsBasedTrigger trigger based on total requests. 14547type RequestsBasedTrigger struct { 14548 // Count - Request Count. 14549 Count *int32 `json:"count,omitempty"` 14550 // TimeInterval - Time interval. 14551 TimeInterval *string `json:"timeInterval,omitempty"` 14552} 14553 14554// Resource azure resource. This resource is tracked in Azure Resource Manager 14555type Resource struct { 14556 // ID - Resource Id. 14557 ID *string `json:"id,omitempty"` 14558 // Name - Resource Name. 14559 Name *string `json:"name,omitempty"` 14560 // Kind - Kind of resource. 14561 Kind *string `json:"kind,omitempty"` 14562 // Location - Resource Location. 14563 Location *string `json:"location,omitempty"` 14564 // Type - Resource type. 14565 Type *string `json:"type,omitempty"` 14566 // Tags - Resource tags. 14567 Tags map[string]*string `json:"tags"` 14568} 14569 14570// MarshalJSON is the custom marshaler for Resource. 14571func (r Resource) MarshalJSON() ([]byte, error) { 14572 objectMap := make(map[string]interface{}) 14573 if r.ID != nil { 14574 objectMap["id"] = r.ID 14575 } 14576 if r.Name != nil { 14577 objectMap["name"] = r.Name 14578 } 14579 if r.Kind != nil { 14580 objectMap["kind"] = r.Kind 14581 } 14582 if r.Location != nil { 14583 objectMap["location"] = r.Location 14584 } 14585 if r.Type != nil { 14586 objectMap["type"] = r.Type 14587 } 14588 if r.Tags != nil { 14589 objectMap["tags"] = r.Tags 14590 } 14591 return json.Marshal(objectMap) 14592} 14593 14594// ResourceCollection collection of resources. 14595type ResourceCollection struct { 14596 autorest.Response `json:"-"` 14597 // Value - Collection of resources. 14598 Value *[]string `json:"value,omitempty"` 14599 // NextLink - Link to next page of resources. 14600 NextLink *string `json:"nextLink,omitempty"` 14601} 14602 14603// ResourceCollectionIterator provides access to a complete listing of string values. 14604type ResourceCollectionIterator struct { 14605 i int 14606 page ResourceCollectionPage 14607} 14608 14609// Next advances to the next value. If there was an error making 14610// the request the iterator does not advance and the error is returned. 14611func (iter *ResourceCollectionIterator) Next() error { 14612 iter.i++ 14613 if iter.i < len(iter.page.Values()) { 14614 return nil 14615 } 14616 err := iter.page.Next() 14617 if err != nil { 14618 iter.i-- 14619 return err 14620 } 14621 iter.i = 0 14622 return nil 14623} 14624 14625// NotDone returns true if the enumeration should be started or is not yet complete. 14626func (iter ResourceCollectionIterator) NotDone() bool { 14627 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 14628} 14629 14630// Response returns the raw server response from the last page request. 14631func (iter ResourceCollectionIterator) Response() ResourceCollection { 14632 return iter.page.Response() 14633} 14634 14635// Value returns the current value or a zero-initialized value if the 14636// iterator has advanced beyond the end of the collection. 14637func (iter ResourceCollectionIterator) Value() string { 14638 if !iter.page.NotDone() { 14639 return "" 14640 } 14641 return iter.page.Values()[iter.i] 14642} 14643 14644// IsEmpty returns true if the ListResult contains no values. 14645func (rc ResourceCollection) IsEmpty() bool { 14646 return rc.Value == nil || len(*rc.Value) == 0 14647} 14648 14649// resourceCollectionPreparer prepares a request to retrieve the next set of results. 14650// It returns nil if no more results exist. 14651func (rc ResourceCollection) resourceCollectionPreparer() (*http.Request, error) { 14652 if rc.NextLink == nil || len(to.String(rc.NextLink)) < 1 { 14653 return nil, nil 14654 } 14655 return autorest.Prepare(&http.Request{}, 14656 autorest.AsJSON(), 14657 autorest.AsGet(), 14658 autorest.WithBaseURL(to.String(rc.NextLink))) 14659} 14660 14661// ResourceCollectionPage contains a page of string values. 14662type ResourceCollectionPage struct { 14663 fn func(ResourceCollection) (ResourceCollection, error) 14664 rc ResourceCollection 14665} 14666 14667// Next advances to the next page of values. If there was an error making 14668// the request the page does not advance and the error is returned. 14669func (page *ResourceCollectionPage) Next() error { 14670 next, err := page.fn(page.rc) 14671 if err != nil { 14672 return err 14673 } 14674 page.rc = next 14675 return nil 14676} 14677 14678// NotDone returns true if the page enumeration should be started or is not yet complete. 14679func (page ResourceCollectionPage) NotDone() bool { 14680 return !page.rc.IsEmpty() 14681} 14682 14683// Response returns the raw server response from the last page request. 14684func (page ResourceCollectionPage) Response() ResourceCollection { 14685 return page.rc 14686} 14687 14688// Values returns the slice of values for the current page or nil if there are no values. 14689func (page ResourceCollectionPage) Values() []string { 14690 if page.rc.IsEmpty() { 14691 return nil 14692 } 14693 return *page.rc.Value 14694} 14695 14696// ResourceHealthMetadata used for getting ResourceHealthCheck settings. 14697type ResourceHealthMetadata struct { 14698 autorest.Response `json:"-"` 14699 // ResourceHealthMetadataProperties - ResourceHealthMetadata resource specific properties 14700 *ResourceHealthMetadataProperties `json:"properties,omitempty"` 14701 // ID - Resource Id. 14702 ID *string `json:"id,omitempty"` 14703 // Name - Resource Name. 14704 Name *string `json:"name,omitempty"` 14705 // Kind - Kind of resource. 14706 Kind *string `json:"kind,omitempty"` 14707 // Type - Resource type. 14708 Type *string `json:"type,omitempty"` 14709} 14710 14711// MarshalJSON is the custom marshaler for ResourceHealthMetadata. 14712func (rhm ResourceHealthMetadata) MarshalJSON() ([]byte, error) { 14713 objectMap := make(map[string]interface{}) 14714 if rhm.ResourceHealthMetadataProperties != nil { 14715 objectMap["properties"] = rhm.ResourceHealthMetadataProperties 14716 } 14717 if rhm.ID != nil { 14718 objectMap["id"] = rhm.ID 14719 } 14720 if rhm.Name != nil { 14721 objectMap["name"] = rhm.Name 14722 } 14723 if rhm.Kind != nil { 14724 objectMap["kind"] = rhm.Kind 14725 } 14726 if rhm.Type != nil { 14727 objectMap["type"] = rhm.Type 14728 } 14729 return json.Marshal(objectMap) 14730} 14731 14732// UnmarshalJSON is the custom unmarshaler for ResourceHealthMetadata struct. 14733func (rhm *ResourceHealthMetadata) UnmarshalJSON(body []byte) error { 14734 var m map[string]*json.RawMessage 14735 err := json.Unmarshal(body, &m) 14736 if err != nil { 14737 return err 14738 } 14739 for k, v := range m { 14740 switch k { 14741 case "properties": 14742 if v != nil { 14743 var resourceHealthMetadataProperties ResourceHealthMetadataProperties 14744 err = json.Unmarshal(*v, &resourceHealthMetadataProperties) 14745 if err != nil { 14746 return err 14747 } 14748 rhm.ResourceHealthMetadataProperties = &resourceHealthMetadataProperties 14749 } 14750 case "id": 14751 if v != nil { 14752 var ID string 14753 err = json.Unmarshal(*v, &ID) 14754 if err != nil { 14755 return err 14756 } 14757 rhm.ID = &ID 14758 } 14759 case "name": 14760 if v != nil { 14761 var name string 14762 err = json.Unmarshal(*v, &name) 14763 if err != nil { 14764 return err 14765 } 14766 rhm.Name = &name 14767 } 14768 case "kind": 14769 if v != nil { 14770 var kind string 14771 err = json.Unmarshal(*v, &kind) 14772 if err != nil { 14773 return err 14774 } 14775 rhm.Kind = &kind 14776 } 14777 case "type": 14778 if v != nil { 14779 var typeVar string 14780 err = json.Unmarshal(*v, &typeVar) 14781 if err != nil { 14782 return err 14783 } 14784 rhm.Type = &typeVar 14785 } 14786 } 14787 } 14788 14789 return nil 14790} 14791 14792// ResourceHealthMetadataCollection collection of resource health metadata. 14793type ResourceHealthMetadataCollection struct { 14794 autorest.Response `json:"-"` 14795 // Value - Collection of resources. 14796 Value *[]ResourceHealthMetadata `json:"value,omitempty"` 14797 // NextLink - Link to next page of resources. 14798 NextLink *string `json:"nextLink,omitempty"` 14799} 14800 14801// ResourceHealthMetadataCollectionIterator provides access to a complete listing of ResourceHealthMetadata values. 14802type ResourceHealthMetadataCollectionIterator struct { 14803 i int 14804 page ResourceHealthMetadataCollectionPage 14805} 14806 14807// Next advances to the next value. If there was an error making 14808// the request the iterator does not advance and the error is returned. 14809func (iter *ResourceHealthMetadataCollectionIterator) Next() error { 14810 iter.i++ 14811 if iter.i < len(iter.page.Values()) { 14812 return nil 14813 } 14814 err := iter.page.Next() 14815 if err != nil { 14816 iter.i-- 14817 return err 14818 } 14819 iter.i = 0 14820 return nil 14821} 14822 14823// NotDone returns true if the enumeration should be started or is not yet complete. 14824func (iter ResourceHealthMetadataCollectionIterator) NotDone() bool { 14825 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 14826} 14827 14828// Response returns the raw server response from the last page request. 14829func (iter ResourceHealthMetadataCollectionIterator) Response() ResourceHealthMetadataCollection { 14830 return iter.page.Response() 14831} 14832 14833// Value returns the current value or a zero-initialized value if the 14834// iterator has advanced beyond the end of the collection. 14835func (iter ResourceHealthMetadataCollectionIterator) Value() ResourceHealthMetadata { 14836 if !iter.page.NotDone() { 14837 return ResourceHealthMetadata{} 14838 } 14839 return iter.page.Values()[iter.i] 14840} 14841 14842// IsEmpty returns true if the ListResult contains no values. 14843func (rhmc ResourceHealthMetadataCollection) IsEmpty() bool { 14844 return rhmc.Value == nil || len(*rhmc.Value) == 0 14845} 14846 14847// resourceHealthMetadataCollectionPreparer prepares a request to retrieve the next set of results. 14848// It returns nil if no more results exist. 14849func (rhmc ResourceHealthMetadataCollection) resourceHealthMetadataCollectionPreparer() (*http.Request, error) { 14850 if rhmc.NextLink == nil || len(to.String(rhmc.NextLink)) < 1 { 14851 return nil, nil 14852 } 14853 return autorest.Prepare(&http.Request{}, 14854 autorest.AsJSON(), 14855 autorest.AsGet(), 14856 autorest.WithBaseURL(to.String(rhmc.NextLink))) 14857} 14858 14859// ResourceHealthMetadataCollectionPage contains a page of ResourceHealthMetadata values. 14860type ResourceHealthMetadataCollectionPage struct { 14861 fn func(ResourceHealthMetadataCollection) (ResourceHealthMetadataCollection, error) 14862 rhmc ResourceHealthMetadataCollection 14863} 14864 14865// Next advances to the next page of values. If there was an error making 14866// the request the page does not advance and the error is returned. 14867func (page *ResourceHealthMetadataCollectionPage) Next() error { 14868 next, err := page.fn(page.rhmc) 14869 if err != nil { 14870 return err 14871 } 14872 page.rhmc = next 14873 return nil 14874} 14875 14876// NotDone returns true if the page enumeration should be started or is not yet complete. 14877func (page ResourceHealthMetadataCollectionPage) NotDone() bool { 14878 return !page.rhmc.IsEmpty() 14879} 14880 14881// Response returns the raw server response from the last page request. 14882func (page ResourceHealthMetadataCollectionPage) Response() ResourceHealthMetadataCollection { 14883 return page.rhmc 14884} 14885 14886// Values returns the slice of values for the current page or nil if there are no values. 14887func (page ResourceHealthMetadataCollectionPage) Values() []ResourceHealthMetadata { 14888 if page.rhmc.IsEmpty() { 14889 return nil 14890 } 14891 return *page.rhmc.Value 14892} 14893 14894// ResourceHealthMetadataProperties resourceHealthMetadata resource specific properties 14895type ResourceHealthMetadataProperties struct { 14896 // Category - The category that the resource matches in the RHC Policy File 14897 Category *string `json:"category,omitempty"` 14898 // SignalAvailability - Is there a health signal for the resource 14899 SignalAvailability *bool `json:"signalAvailability,omitempty"` 14900} 14901 14902// ResourceMetric object representing a metric for any resource . 14903type ResourceMetric struct { 14904 // Name - Name of metric. 14905 Name *ResourceMetricName `json:"name,omitempty"` 14906 // Unit - Metric unit. 14907 Unit *string `json:"unit,omitempty"` 14908 // TimeGrain - Metric granularity. E.g PT1H, PT5M, P1D 14909 TimeGrain *string `json:"timeGrain,omitempty"` 14910 // StartTime - Metric start time. 14911 StartTime *date.Time `json:"startTime,omitempty"` 14912 // EndTime - Metric end time. 14913 EndTime *date.Time `json:"endTime,omitempty"` 14914 // ResourceID - Metric resource Id. 14915 ResourceID *string `json:"resourceId,omitempty"` 14916 // ID - Resource Id. 14917 ID *string `json:"id,omitempty"` 14918 // MetricValues - Metric values. 14919 MetricValues *[]ResourceMetricValue `json:"metricValues,omitempty"` 14920 // Properties - Resource metric properties collection. 14921 Properties *[]ResourceMetricProperty `json:"properties,omitempty"` 14922} 14923 14924// ResourceMetricAvailability metrics availability and retention. 14925type ResourceMetricAvailability struct { 14926 // TimeGrain - Time grain . 14927 TimeGrain *string `json:"timeGrain,omitempty"` 14928 // Retention - Retention period for the current time grain. 14929 Retention *string `json:"retention,omitempty"` 14930} 14931 14932// ResourceMetricCollection collection of metric responses. 14933type ResourceMetricCollection struct { 14934 autorest.Response `json:"-"` 14935 // Value - Collection of resources. 14936 Value *[]ResourceMetric `json:"value,omitempty"` 14937 // NextLink - Link to next page of resources. 14938 NextLink *string `json:"nextLink,omitempty"` 14939} 14940 14941// ResourceMetricCollectionIterator provides access to a complete listing of ResourceMetric values. 14942type ResourceMetricCollectionIterator struct { 14943 i int 14944 page ResourceMetricCollectionPage 14945} 14946 14947// Next advances to the next value. If there was an error making 14948// the request the iterator does not advance and the error is returned. 14949func (iter *ResourceMetricCollectionIterator) Next() error { 14950 iter.i++ 14951 if iter.i < len(iter.page.Values()) { 14952 return nil 14953 } 14954 err := iter.page.Next() 14955 if err != nil { 14956 iter.i-- 14957 return err 14958 } 14959 iter.i = 0 14960 return nil 14961} 14962 14963// NotDone returns true if the enumeration should be started or is not yet complete. 14964func (iter ResourceMetricCollectionIterator) NotDone() bool { 14965 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 14966} 14967 14968// Response returns the raw server response from the last page request. 14969func (iter ResourceMetricCollectionIterator) Response() ResourceMetricCollection { 14970 return iter.page.Response() 14971} 14972 14973// Value returns the current value or a zero-initialized value if the 14974// iterator has advanced beyond the end of the collection. 14975func (iter ResourceMetricCollectionIterator) Value() ResourceMetric { 14976 if !iter.page.NotDone() { 14977 return ResourceMetric{} 14978 } 14979 return iter.page.Values()[iter.i] 14980} 14981 14982// IsEmpty returns true if the ListResult contains no values. 14983func (rmc ResourceMetricCollection) IsEmpty() bool { 14984 return rmc.Value == nil || len(*rmc.Value) == 0 14985} 14986 14987// resourceMetricCollectionPreparer prepares a request to retrieve the next set of results. 14988// It returns nil if no more results exist. 14989func (rmc ResourceMetricCollection) resourceMetricCollectionPreparer() (*http.Request, error) { 14990 if rmc.NextLink == nil || len(to.String(rmc.NextLink)) < 1 { 14991 return nil, nil 14992 } 14993 return autorest.Prepare(&http.Request{}, 14994 autorest.AsJSON(), 14995 autorest.AsGet(), 14996 autorest.WithBaseURL(to.String(rmc.NextLink))) 14997} 14998 14999// ResourceMetricCollectionPage contains a page of ResourceMetric values. 15000type ResourceMetricCollectionPage struct { 15001 fn func(ResourceMetricCollection) (ResourceMetricCollection, error) 15002 rmc ResourceMetricCollection 15003} 15004 15005// Next advances to the next page of values. If there was an error making 15006// the request the page does not advance and the error is returned. 15007func (page *ResourceMetricCollectionPage) Next() error { 15008 next, err := page.fn(page.rmc) 15009 if err != nil { 15010 return err 15011 } 15012 page.rmc = next 15013 return nil 15014} 15015 15016// NotDone returns true if the page enumeration should be started or is not yet complete. 15017func (page ResourceMetricCollectionPage) NotDone() bool { 15018 return !page.rmc.IsEmpty() 15019} 15020 15021// Response returns the raw server response from the last page request. 15022func (page ResourceMetricCollectionPage) Response() ResourceMetricCollection { 15023 return page.rmc 15024} 15025 15026// Values returns the slice of values for the current page or nil if there are no values. 15027func (page ResourceMetricCollectionPage) Values() []ResourceMetric { 15028 if page.rmc.IsEmpty() { 15029 return nil 15030 } 15031 return *page.rmc.Value 15032} 15033 15034// ResourceMetricDefinition metadata for the metrics. 15035type ResourceMetricDefinition struct { 15036 // ResourceMetricDefinitionProperties - ResourceMetricDefinition resource specific properties 15037 *ResourceMetricDefinitionProperties `json:"properties,omitempty"` 15038 // ID - Resource Id. 15039 ID *string `json:"id,omitempty"` 15040 // Name - Resource Name. 15041 Name *string `json:"name,omitempty"` 15042 // Kind - Kind of resource. 15043 Kind *string `json:"kind,omitempty"` 15044 // Type - Resource type. 15045 Type *string `json:"type,omitempty"` 15046} 15047 15048// MarshalJSON is the custom marshaler for ResourceMetricDefinition. 15049func (rmd ResourceMetricDefinition) MarshalJSON() ([]byte, error) { 15050 objectMap := make(map[string]interface{}) 15051 if rmd.ResourceMetricDefinitionProperties != nil { 15052 objectMap["properties"] = rmd.ResourceMetricDefinitionProperties 15053 } 15054 if rmd.ID != nil { 15055 objectMap["id"] = rmd.ID 15056 } 15057 if rmd.Name != nil { 15058 objectMap["name"] = rmd.Name 15059 } 15060 if rmd.Kind != nil { 15061 objectMap["kind"] = rmd.Kind 15062 } 15063 if rmd.Type != nil { 15064 objectMap["type"] = rmd.Type 15065 } 15066 return json.Marshal(objectMap) 15067} 15068 15069// UnmarshalJSON is the custom unmarshaler for ResourceMetricDefinition struct. 15070func (rmd *ResourceMetricDefinition) UnmarshalJSON(body []byte) error { 15071 var m map[string]*json.RawMessage 15072 err := json.Unmarshal(body, &m) 15073 if err != nil { 15074 return err 15075 } 15076 for k, v := range m { 15077 switch k { 15078 case "properties": 15079 if v != nil { 15080 var resourceMetricDefinitionProperties ResourceMetricDefinitionProperties 15081 err = json.Unmarshal(*v, &resourceMetricDefinitionProperties) 15082 if err != nil { 15083 return err 15084 } 15085 rmd.ResourceMetricDefinitionProperties = &resourceMetricDefinitionProperties 15086 } 15087 case "id": 15088 if v != nil { 15089 var ID string 15090 err = json.Unmarshal(*v, &ID) 15091 if err != nil { 15092 return err 15093 } 15094 rmd.ID = &ID 15095 } 15096 case "name": 15097 if v != nil { 15098 var name string 15099 err = json.Unmarshal(*v, &name) 15100 if err != nil { 15101 return err 15102 } 15103 rmd.Name = &name 15104 } 15105 case "kind": 15106 if v != nil { 15107 var kind string 15108 err = json.Unmarshal(*v, &kind) 15109 if err != nil { 15110 return err 15111 } 15112 rmd.Kind = &kind 15113 } 15114 case "type": 15115 if v != nil { 15116 var typeVar string 15117 err = json.Unmarshal(*v, &typeVar) 15118 if err != nil { 15119 return err 15120 } 15121 rmd.Type = &typeVar 15122 } 15123 } 15124 } 15125 15126 return nil 15127} 15128 15129// ResourceMetricDefinitionCollection collection of metric definitions. 15130type ResourceMetricDefinitionCollection struct { 15131 autorest.Response `json:"-"` 15132 // Value - Collection of resources. 15133 Value *[]ResourceMetricDefinition `json:"value,omitempty"` 15134 // NextLink - Link to next page of resources. 15135 NextLink *string `json:"nextLink,omitempty"` 15136} 15137 15138// ResourceMetricDefinitionCollectionIterator provides access to a complete listing of ResourceMetricDefinition 15139// values. 15140type ResourceMetricDefinitionCollectionIterator struct { 15141 i int 15142 page ResourceMetricDefinitionCollectionPage 15143} 15144 15145// Next advances to the next value. If there was an error making 15146// the request the iterator does not advance and the error is returned. 15147func (iter *ResourceMetricDefinitionCollectionIterator) Next() error { 15148 iter.i++ 15149 if iter.i < len(iter.page.Values()) { 15150 return nil 15151 } 15152 err := iter.page.Next() 15153 if err != nil { 15154 iter.i-- 15155 return err 15156 } 15157 iter.i = 0 15158 return nil 15159} 15160 15161// NotDone returns true if the enumeration should be started or is not yet complete. 15162func (iter ResourceMetricDefinitionCollectionIterator) NotDone() bool { 15163 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 15164} 15165 15166// Response returns the raw server response from the last page request. 15167func (iter ResourceMetricDefinitionCollectionIterator) Response() ResourceMetricDefinitionCollection { 15168 return iter.page.Response() 15169} 15170 15171// Value returns the current value or a zero-initialized value if the 15172// iterator has advanced beyond the end of the collection. 15173func (iter ResourceMetricDefinitionCollectionIterator) Value() ResourceMetricDefinition { 15174 if !iter.page.NotDone() { 15175 return ResourceMetricDefinition{} 15176 } 15177 return iter.page.Values()[iter.i] 15178} 15179 15180// IsEmpty returns true if the ListResult contains no values. 15181func (rmdc ResourceMetricDefinitionCollection) IsEmpty() bool { 15182 return rmdc.Value == nil || len(*rmdc.Value) == 0 15183} 15184 15185// resourceMetricDefinitionCollectionPreparer prepares a request to retrieve the next set of results. 15186// It returns nil if no more results exist. 15187func (rmdc ResourceMetricDefinitionCollection) resourceMetricDefinitionCollectionPreparer() (*http.Request, error) { 15188 if rmdc.NextLink == nil || len(to.String(rmdc.NextLink)) < 1 { 15189 return nil, nil 15190 } 15191 return autorest.Prepare(&http.Request{}, 15192 autorest.AsJSON(), 15193 autorest.AsGet(), 15194 autorest.WithBaseURL(to.String(rmdc.NextLink))) 15195} 15196 15197// ResourceMetricDefinitionCollectionPage contains a page of ResourceMetricDefinition values. 15198type ResourceMetricDefinitionCollectionPage struct { 15199 fn func(ResourceMetricDefinitionCollection) (ResourceMetricDefinitionCollection, error) 15200 rmdc ResourceMetricDefinitionCollection 15201} 15202 15203// Next advances to the next page of values. If there was an error making 15204// the request the page does not advance and the error is returned. 15205func (page *ResourceMetricDefinitionCollectionPage) Next() error { 15206 next, err := page.fn(page.rmdc) 15207 if err != nil { 15208 return err 15209 } 15210 page.rmdc = next 15211 return nil 15212} 15213 15214// NotDone returns true if the page enumeration should be started or is not yet complete. 15215func (page ResourceMetricDefinitionCollectionPage) NotDone() bool { 15216 return !page.rmdc.IsEmpty() 15217} 15218 15219// Response returns the raw server response from the last page request. 15220func (page ResourceMetricDefinitionCollectionPage) Response() ResourceMetricDefinitionCollection { 15221 return page.rmdc 15222} 15223 15224// Values returns the slice of values for the current page or nil if there are no values. 15225func (page ResourceMetricDefinitionCollectionPage) Values() []ResourceMetricDefinition { 15226 if page.rmdc.IsEmpty() { 15227 return nil 15228 } 15229 return *page.rmdc.Value 15230} 15231 15232// ResourceMetricDefinitionProperties resourceMetricDefinition resource specific properties 15233type ResourceMetricDefinitionProperties struct { 15234 // Name - Name of the metric. 15235 Name *ResourceMetricName `json:"name,omitempty"` 15236 // Unit - Unit of the metric. 15237 Unit *string `json:"unit,omitempty"` 15238 // PrimaryAggregationType - Primary aggregation type. 15239 PrimaryAggregationType *string `json:"primaryAggregationType,omitempty"` 15240 // MetricAvailabilities - List of time grains supported for the metric together with retention period. 15241 MetricAvailabilities *[]ResourceMetricAvailability `json:"metricAvailabilities,omitempty"` 15242 // ResourceURI - Resource URI. 15243 ResourceURI *string `json:"resourceUri,omitempty"` 15244 // ID - Resource ID. 15245 ID *string `json:"id,omitempty"` 15246 // Properties - Resource metric definition properties. 15247 Properties map[string]*string `json:"properties"` 15248} 15249 15250// MarshalJSON is the custom marshaler for ResourceMetricDefinitionProperties. 15251func (rmd ResourceMetricDefinitionProperties) MarshalJSON() ([]byte, error) { 15252 objectMap := make(map[string]interface{}) 15253 if rmd.Name != nil { 15254 objectMap["name"] = rmd.Name 15255 } 15256 if rmd.Unit != nil { 15257 objectMap["unit"] = rmd.Unit 15258 } 15259 if rmd.PrimaryAggregationType != nil { 15260 objectMap["primaryAggregationType"] = rmd.PrimaryAggregationType 15261 } 15262 if rmd.MetricAvailabilities != nil { 15263 objectMap["metricAvailabilities"] = rmd.MetricAvailabilities 15264 } 15265 if rmd.ResourceURI != nil { 15266 objectMap["resourceUri"] = rmd.ResourceURI 15267 } 15268 if rmd.ID != nil { 15269 objectMap["id"] = rmd.ID 15270 } 15271 if rmd.Properties != nil { 15272 objectMap["properties"] = rmd.Properties 15273 } 15274 return json.Marshal(objectMap) 15275} 15276 15277// ResourceMetricName name of a metric for any resource . 15278type ResourceMetricName struct { 15279 // Value - metric name value. 15280 Value *string `json:"value,omitempty"` 15281 // LocalizedValue - Localized metric name value. 15282 LocalizedValue *string `json:"localizedValue,omitempty"` 15283} 15284 15285// ResourceMetricProperty resource metric property. 15286type ResourceMetricProperty struct { 15287 // Key - Key for resource metric property. 15288 Key *string `json:"key,omitempty"` 15289 // Value - Value of pair. 15290 Value *string `json:"value,omitempty"` 15291} 15292 15293// ResourceMetricValue value of resource metric. 15294type ResourceMetricValue struct { 15295 // Timestamp - Value timestamp. 15296 Timestamp *string `json:"timestamp,omitempty"` 15297 // Average - Value average. 15298 Average *float64 `json:"average,omitempty"` 15299 // Minimum - Value minimum. 15300 Minimum *float64 `json:"minimum,omitempty"` 15301 // Maximum - Value maximum. 15302 Maximum *float64 `json:"maximum,omitempty"` 15303 // Total - Value total. 15304 Total *float64 `json:"total,omitempty"` 15305 // Count - Value count. 15306 Count *float64 `json:"count,omitempty"` 15307 // Properties - Resource metric properties collection. 15308 Properties *[]ResourceMetricProperty `json:"properties,omitempty"` 15309} 15310 15311// ResourceNameAvailability information regarding availbility of a resource name. 15312type ResourceNameAvailability struct { 15313 autorest.Response `json:"-"` 15314 // NameAvailable - <code>true</code> indicates name is valid and available. <code>false</code> indicates the name is invalid, unavailable, or both. 15315 NameAvailable *bool `json:"nameAvailable,omitempty"` 15316 // 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' 15317 Reason InAvailabilityReasonType `json:"reason,omitempty"` 15318 // 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. 15319 Message *string `json:"message,omitempty"` 15320} 15321 15322// ResourceNameAvailabilityRequest resource name availability request content. 15323type ResourceNameAvailabilityRequest struct { 15324 // Name - Resource name to verify. 15325 Name *string `json:"name,omitempty"` 15326 // Type - Resource type used for verification. Possible values include: 'CheckNameResourceTypesSite', 'CheckNameResourceTypesSlot', 'CheckNameResourceTypesHostingEnvironment', 'CheckNameResourceTypesPublishingUser', 'CheckNameResourceTypesMicrosoftWebsites', 'CheckNameResourceTypesMicrosoftWebsitesslots', 'CheckNameResourceTypesMicrosoftWebhostingEnvironments', 'CheckNameResourceTypesMicrosoftWebpublishingUsers' 15327 Type CheckNameResourceTypes `json:"type,omitempty"` 15328 // IsFqdn - Is fully qualified domain name. 15329 IsFqdn *bool `json:"isFqdn,omitempty"` 15330} 15331 15332// ResponseMetaData ... 15333type ResponseMetaData struct { 15334 // DataSource - Source of the Data 15335 DataSource *DataSource `json:"dataSource,omitempty"` 15336} 15337 15338// RestoreRequest description of a restore request. 15339type RestoreRequest struct { 15340 autorest.Response `json:"-"` 15341 // RestoreRequestProperties - RestoreRequest resource specific properties 15342 *RestoreRequestProperties `json:"properties,omitempty"` 15343 // ID - Resource Id. 15344 ID *string `json:"id,omitempty"` 15345 // Name - Resource Name. 15346 Name *string `json:"name,omitempty"` 15347 // Kind - Kind of resource. 15348 Kind *string `json:"kind,omitempty"` 15349 // Type - Resource type. 15350 Type *string `json:"type,omitempty"` 15351} 15352 15353// MarshalJSON is the custom marshaler for RestoreRequest. 15354func (rr RestoreRequest) MarshalJSON() ([]byte, error) { 15355 objectMap := make(map[string]interface{}) 15356 if rr.RestoreRequestProperties != nil { 15357 objectMap["properties"] = rr.RestoreRequestProperties 15358 } 15359 if rr.ID != nil { 15360 objectMap["id"] = rr.ID 15361 } 15362 if rr.Name != nil { 15363 objectMap["name"] = rr.Name 15364 } 15365 if rr.Kind != nil { 15366 objectMap["kind"] = rr.Kind 15367 } 15368 if rr.Type != nil { 15369 objectMap["type"] = rr.Type 15370 } 15371 return json.Marshal(objectMap) 15372} 15373 15374// UnmarshalJSON is the custom unmarshaler for RestoreRequest struct. 15375func (rr *RestoreRequest) UnmarshalJSON(body []byte) error { 15376 var m map[string]*json.RawMessage 15377 err := json.Unmarshal(body, &m) 15378 if err != nil { 15379 return err 15380 } 15381 for k, v := range m { 15382 switch k { 15383 case "properties": 15384 if v != nil { 15385 var restoreRequestProperties RestoreRequestProperties 15386 err = json.Unmarshal(*v, &restoreRequestProperties) 15387 if err != nil { 15388 return err 15389 } 15390 rr.RestoreRequestProperties = &restoreRequestProperties 15391 } 15392 case "id": 15393 if v != nil { 15394 var ID string 15395 err = json.Unmarshal(*v, &ID) 15396 if err != nil { 15397 return err 15398 } 15399 rr.ID = &ID 15400 } 15401 case "name": 15402 if v != nil { 15403 var name string 15404 err = json.Unmarshal(*v, &name) 15405 if err != nil { 15406 return err 15407 } 15408 rr.Name = &name 15409 } 15410 case "kind": 15411 if v != nil { 15412 var kind string 15413 err = json.Unmarshal(*v, &kind) 15414 if err != nil { 15415 return err 15416 } 15417 rr.Kind = &kind 15418 } 15419 case "type": 15420 if v != nil { 15421 var typeVar string 15422 err = json.Unmarshal(*v, &typeVar) 15423 if err != nil { 15424 return err 15425 } 15426 rr.Type = &typeVar 15427 } 15428 } 15429 } 15430 15431 return nil 15432} 15433 15434// RestoreRequestProperties restoreRequest resource specific properties 15435type RestoreRequestProperties struct { 15436 // StorageAccountURL - SAS URL to the container. 15437 StorageAccountURL *string `json:"storageAccountUrl,omitempty"` 15438 // BlobName - Name of a blob which contains the backup. 15439 BlobName *string `json:"blobName,omitempty"` 15440 // 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. 15441 Overwrite *bool `json:"overwrite,omitempty"` 15442 // SiteName - Name of an app. 15443 SiteName *string `json:"siteName,omitempty"` 15444 // Databases - Collection of databases which should be restored. This list has to match the list of databases included in the backup. 15445 Databases *[]DatabaseBackupSetting `json:"databases,omitempty"` 15446 // 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 15447 // the app's object when it is being restored, but that might fail due to conflicts during the operation. 15448 IgnoreConflictingHostNames *bool `json:"ignoreConflictingHostNames,omitempty"` 15449 // IgnoreDatabases - Ignore the databases and only restore the site content 15450 IgnoreDatabases *bool `json:"ignoreDatabases,omitempty"` 15451 // AppServicePlan - Specify app service plan that will own restored site. 15452 AppServicePlan *string `json:"appServicePlan,omitempty"` 15453 // OperationType - Operation type. Possible values include: 'BackupRestoreOperationTypeDefault', 'BackupRestoreOperationTypeClone', 'BackupRestoreOperationTypeRelocation', 'BackupRestoreOperationTypeSnapshot' 15454 OperationType BackupRestoreOperationType `json:"operationType,omitempty"` 15455 // AdjustConnectionStrings - <code>true</code> if SiteConfig.ConnectionStrings should be set in new app; otherwise, <code>false</code>. 15456 AdjustConnectionStrings *bool `json:"adjustConnectionStrings,omitempty"` 15457 // HostingEnvironment - App Service Environment name, if needed (only when restoring an app to an App Service Environment). 15458 HostingEnvironment *string `json:"hostingEnvironment,omitempty"` 15459} 15460 15461// RestoreResponse response for an app restore request. 15462type RestoreResponse struct { 15463 autorest.Response `json:"-"` 15464 // RestoreResponseProperties - RestoreResponse resource specific properties 15465 *RestoreResponseProperties `json:"properties,omitempty"` 15466 // ID - Resource Id. 15467 ID *string `json:"id,omitempty"` 15468 // Name - Resource Name. 15469 Name *string `json:"name,omitempty"` 15470 // Kind - Kind of resource. 15471 Kind *string `json:"kind,omitempty"` 15472 // Type - Resource type. 15473 Type *string `json:"type,omitempty"` 15474} 15475 15476// MarshalJSON is the custom marshaler for RestoreResponse. 15477func (rr RestoreResponse) MarshalJSON() ([]byte, error) { 15478 objectMap := make(map[string]interface{}) 15479 if rr.RestoreResponseProperties != nil { 15480 objectMap["properties"] = rr.RestoreResponseProperties 15481 } 15482 if rr.ID != nil { 15483 objectMap["id"] = rr.ID 15484 } 15485 if rr.Name != nil { 15486 objectMap["name"] = rr.Name 15487 } 15488 if rr.Kind != nil { 15489 objectMap["kind"] = rr.Kind 15490 } 15491 if rr.Type != nil { 15492 objectMap["type"] = rr.Type 15493 } 15494 return json.Marshal(objectMap) 15495} 15496 15497// UnmarshalJSON is the custom unmarshaler for RestoreResponse struct. 15498func (rr *RestoreResponse) UnmarshalJSON(body []byte) error { 15499 var m map[string]*json.RawMessage 15500 err := json.Unmarshal(body, &m) 15501 if err != nil { 15502 return err 15503 } 15504 for k, v := range m { 15505 switch k { 15506 case "properties": 15507 if v != nil { 15508 var restoreResponseProperties RestoreResponseProperties 15509 err = json.Unmarshal(*v, &restoreResponseProperties) 15510 if err != nil { 15511 return err 15512 } 15513 rr.RestoreResponseProperties = &restoreResponseProperties 15514 } 15515 case "id": 15516 if v != nil { 15517 var ID string 15518 err = json.Unmarshal(*v, &ID) 15519 if err != nil { 15520 return err 15521 } 15522 rr.ID = &ID 15523 } 15524 case "name": 15525 if v != nil { 15526 var name string 15527 err = json.Unmarshal(*v, &name) 15528 if err != nil { 15529 return err 15530 } 15531 rr.Name = &name 15532 } 15533 case "kind": 15534 if v != nil { 15535 var kind string 15536 err = json.Unmarshal(*v, &kind) 15537 if err != nil { 15538 return err 15539 } 15540 rr.Kind = &kind 15541 } 15542 case "type": 15543 if v != nil { 15544 var typeVar string 15545 err = json.Unmarshal(*v, &typeVar) 15546 if err != nil { 15547 return err 15548 } 15549 rr.Type = &typeVar 15550 } 15551 } 15552 } 15553 15554 return nil 15555} 15556 15557// RestoreResponseProperties restoreResponse resource specific properties 15558type RestoreResponseProperties struct { 15559 // OperationID - When server starts the restore process, it will return an operation ID identifying that particular restore operation. 15560 OperationID *string `json:"operationId,omitempty"` 15561} 15562 15563// ServiceSpecification resource metrics service provided by Microsoft.Insights resource provider. 15564type ServiceSpecification struct { 15565 MetricSpecifications *[]MetricSpecification `json:"metricSpecifications,omitempty"` 15566} 15567 15568// SetObject ... 15569type SetObject struct { 15570 autorest.Response `json:"-"` 15571 Value interface{} `json:"value,omitempty"` 15572} 15573 15574// Site a web app, a mobile app backend, or an API app. 15575type Site struct { 15576 autorest.Response `json:"-"` 15577 // SiteProperties - Site resource specific properties 15578 *SiteProperties `json:"properties,omitempty"` 15579 Identity *ManagedServiceIdentity `json:"identity,omitempty"` 15580 // ID - Resource Id. 15581 ID *string `json:"id,omitempty"` 15582 // Name - Resource Name. 15583 Name *string `json:"name,omitempty"` 15584 // Kind - Kind of resource. 15585 Kind *string `json:"kind,omitempty"` 15586 // Location - Resource Location. 15587 Location *string `json:"location,omitempty"` 15588 // Type - Resource type. 15589 Type *string `json:"type,omitempty"` 15590 // Tags - Resource tags. 15591 Tags map[string]*string `json:"tags"` 15592} 15593 15594// MarshalJSON is the custom marshaler for Site. 15595func (s Site) MarshalJSON() ([]byte, error) { 15596 objectMap := make(map[string]interface{}) 15597 if s.SiteProperties != nil { 15598 objectMap["properties"] = s.SiteProperties 15599 } 15600 if s.Identity != nil { 15601 objectMap["identity"] = s.Identity 15602 } 15603 if s.ID != nil { 15604 objectMap["id"] = s.ID 15605 } 15606 if s.Name != nil { 15607 objectMap["name"] = s.Name 15608 } 15609 if s.Kind != nil { 15610 objectMap["kind"] = s.Kind 15611 } 15612 if s.Location != nil { 15613 objectMap["location"] = s.Location 15614 } 15615 if s.Type != nil { 15616 objectMap["type"] = s.Type 15617 } 15618 if s.Tags != nil { 15619 objectMap["tags"] = s.Tags 15620 } 15621 return json.Marshal(objectMap) 15622} 15623 15624// UnmarshalJSON is the custom unmarshaler for Site struct. 15625func (s *Site) UnmarshalJSON(body []byte) error { 15626 var m map[string]*json.RawMessage 15627 err := json.Unmarshal(body, &m) 15628 if err != nil { 15629 return err 15630 } 15631 for k, v := range m { 15632 switch k { 15633 case "properties": 15634 if v != nil { 15635 var siteProperties SiteProperties 15636 err = json.Unmarshal(*v, &siteProperties) 15637 if err != nil { 15638 return err 15639 } 15640 s.SiteProperties = &siteProperties 15641 } 15642 case "identity": 15643 if v != nil { 15644 var identity ManagedServiceIdentity 15645 err = json.Unmarshal(*v, &identity) 15646 if err != nil { 15647 return err 15648 } 15649 s.Identity = &identity 15650 } 15651 case "id": 15652 if v != nil { 15653 var ID string 15654 err = json.Unmarshal(*v, &ID) 15655 if err != nil { 15656 return err 15657 } 15658 s.ID = &ID 15659 } 15660 case "name": 15661 if v != nil { 15662 var name string 15663 err = json.Unmarshal(*v, &name) 15664 if err != nil { 15665 return err 15666 } 15667 s.Name = &name 15668 } 15669 case "kind": 15670 if v != nil { 15671 var kind string 15672 err = json.Unmarshal(*v, &kind) 15673 if err != nil { 15674 return err 15675 } 15676 s.Kind = &kind 15677 } 15678 case "location": 15679 if v != nil { 15680 var location string 15681 err = json.Unmarshal(*v, &location) 15682 if err != nil { 15683 return err 15684 } 15685 s.Location = &location 15686 } 15687 case "type": 15688 if v != nil { 15689 var typeVar string 15690 err = json.Unmarshal(*v, &typeVar) 15691 if err != nil { 15692 return err 15693 } 15694 s.Type = &typeVar 15695 } 15696 case "tags": 15697 if v != nil { 15698 var tags map[string]*string 15699 err = json.Unmarshal(*v, &tags) 15700 if err != nil { 15701 return err 15702 } 15703 s.Tags = tags 15704 } 15705 } 15706 } 15707 15708 return nil 15709} 15710 15711// SiteAuthSettings configuration settings for the Azure App Service Authentication / Authorization feature. 15712type SiteAuthSettings struct { 15713 autorest.Response `json:"-"` 15714 // SiteAuthSettingsProperties - SiteAuthSettings resource specific properties 15715 *SiteAuthSettingsProperties `json:"properties,omitempty"` 15716 // ID - Resource Id. 15717 ID *string `json:"id,omitempty"` 15718 // Name - Resource Name. 15719 Name *string `json:"name,omitempty"` 15720 // Kind - Kind of resource. 15721 Kind *string `json:"kind,omitempty"` 15722 // Type - Resource type. 15723 Type *string `json:"type,omitempty"` 15724} 15725 15726// MarshalJSON is the custom marshaler for SiteAuthSettings. 15727func (sas SiteAuthSettings) MarshalJSON() ([]byte, error) { 15728 objectMap := make(map[string]interface{}) 15729 if sas.SiteAuthSettingsProperties != nil { 15730 objectMap["properties"] = sas.SiteAuthSettingsProperties 15731 } 15732 if sas.ID != nil { 15733 objectMap["id"] = sas.ID 15734 } 15735 if sas.Name != nil { 15736 objectMap["name"] = sas.Name 15737 } 15738 if sas.Kind != nil { 15739 objectMap["kind"] = sas.Kind 15740 } 15741 if sas.Type != nil { 15742 objectMap["type"] = sas.Type 15743 } 15744 return json.Marshal(objectMap) 15745} 15746 15747// UnmarshalJSON is the custom unmarshaler for SiteAuthSettings struct. 15748func (sas *SiteAuthSettings) UnmarshalJSON(body []byte) error { 15749 var m map[string]*json.RawMessage 15750 err := json.Unmarshal(body, &m) 15751 if err != nil { 15752 return err 15753 } 15754 for k, v := range m { 15755 switch k { 15756 case "properties": 15757 if v != nil { 15758 var siteAuthSettingsProperties SiteAuthSettingsProperties 15759 err = json.Unmarshal(*v, &siteAuthSettingsProperties) 15760 if err != nil { 15761 return err 15762 } 15763 sas.SiteAuthSettingsProperties = &siteAuthSettingsProperties 15764 } 15765 case "id": 15766 if v != nil { 15767 var ID string 15768 err = json.Unmarshal(*v, &ID) 15769 if err != nil { 15770 return err 15771 } 15772 sas.ID = &ID 15773 } 15774 case "name": 15775 if v != nil { 15776 var name string 15777 err = json.Unmarshal(*v, &name) 15778 if err != nil { 15779 return err 15780 } 15781 sas.Name = &name 15782 } 15783 case "kind": 15784 if v != nil { 15785 var kind string 15786 err = json.Unmarshal(*v, &kind) 15787 if err != nil { 15788 return err 15789 } 15790 sas.Kind = &kind 15791 } 15792 case "type": 15793 if v != nil { 15794 var typeVar string 15795 err = json.Unmarshal(*v, &typeVar) 15796 if err != nil { 15797 return err 15798 } 15799 sas.Type = &typeVar 15800 } 15801 } 15802 } 15803 15804 return nil 15805} 15806 15807// SiteAuthSettingsProperties siteAuthSettings resource specific properties 15808type SiteAuthSettingsProperties struct { 15809 // Enabled - <code>true</code> if the Authentication / Authorization feature is enabled for the current app; otherwise, <code>false</code>. 15810 Enabled *bool `json:"enabled,omitempty"` 15811 // RuntimeVersion - The RuntimeVersion of the Authentication / Authorization feature in use for the current app. 15812 // The setting in this value can control the behavior of certain features in the Authentication / Authorization module. 15813 RuntimeVersion *string `json:"runtimeVersion,omitempty"` 15814 // UnauthenticatedClientAction - The action to take when an unauthenticated client attempts to access the app. Possible values include: 'RedirectToLoginPage', 'AllowAnonymous' 15815 UnauthenticatedClientAction UnauthenticatedClientAction `json:"unauthenticatedClientAction,omitempty"` 15816 // TokenStoreEnabled - <code>true</code> to durably store platform-specific security tokens that are obtained during login flows; otherwise, <code>false</code>. 15817 // The default is <code>false</code>. 15818 TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty"` 15819 // 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. 15820 // This is an advanced setting typically only needed by Windows Store application backends. 15821 // Note that URLs within the current domain are always implicitly allowed. 15822 AllowedExternalRedirectUrls *[]string `json:"allowedExternalRedirectUrls,omitempty"` 15823 // DefaultProvider - The default authentication provider to use when multiple providers are configured. 15824 // This setting is only needed if multiple providers are configured and the unauthenticated client 15825 // action is set to "RedirectToLoginPage". Possible values include: 'AzureActiveDirectory', 'Facebook', 'Google', 'MicrosoftAccount', 'Twitter' 15826 DefaultProvider BuiltInAuthenticationProvider `json:"defaultProvider,omitempty"` 15827 // TokenRefreshExtensionHours - The number of hours after session token expiration that a session token can be used to 15828 // call the token refresh API. The default is 72 hours. 15829 TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty"` 15830 // ClientID - The Client ID of this relying party application, known as the client_id. 15831 // This setting is required for enabling OpenID Connection authentication with Azure Active Directory or 15832 // other 3rd party OpenID Connect providers. 15833 // More information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html 15834 ClientID *string `json:"clientId,omitempty"` 15835 // ClientSecret - The Client Secret of this relying party application (in Azure Active Directory, this is also referred to as the Key). 15836 // This setting is optional. If no client secret is configured, the OpenID Connect implicit auth flow is used to authenticate end users. 15837 // Otherwise, the OpenID Connect Authorization Code Flow is used to authenticate end users. 15838 // More information on OpenID Connect: http://openid.net/specs/openid-connect-core-1_0.html 15839 ClientSecret *string `json:"clientSecret,omitempty"` 15840 // Issuer - The OpenID Connect Issuer URI that represents the entity which issues access tokens for this application. 15841 // When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/. 15842 // This URI is a case-sensitive identifier for the token issuer. 15843 // More information on OpenID Connect Discovery: http://openid.net/specs/openid-connect-discovery-1_0.html 15844 Issuer *string `json:"issuer,omitempty"` 15845 // AllowedAudiences - Allowed audience values to consider when validating JWTs issued by 15846 // Azure Active Directory. Note that the <code>ClientID</code> value is always considered an 15847 // allowed audience, regardless of this setting. 15848 AllowedAudiences *[]string `json:"allowedAudiences,omitempty"` 15849 // AdditionalLoginParams - Login parameters to send to the OpenID Connect authorization endpoint when 15850 // a user logs in. Each parameter must be in the form "key=value". 15851 AdditionalLoginParams *[]string `json:"additionalLoginParams,omitempty"` 15852 // GoogleClientID - The OpenID Connect Client ID for the Google web application. 15853 // This setting is required for enabling Google Sign-In. 15854 // Google Sign-In documentation: https://developers.google.com/identity/sign-in/web/ 15855 GoogleClientID *string `json:"googleClientId,omitempty"` 15856 // GoogleClientSecret - The client secret associated with the Google web application. 15857 // This setting is required for enabling Google Sign-In. 15858 // Google Sign-In documentation: https://developers.google.com/identity/sign-in/web/ 15859 GoogleClientSecret *string `json:"googleClientSecret,omitempty"` 15860 // GoogleOAuthScopes - The OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. 15861 // This setting is optional. If not specified, "openid", "profile", and "email" are used as default scopes. 15862 // Google Sign-In documentation: https://developers.google.com/identity/sign-in/web/ 15863 GoogleOAuthScopes *[]string `json:"googleOAuthScopes,omitempty"` 15864 // FacebookAppID - The App ID of the Facebook app used for login. 15865 // This setting is required for enabling Facebook Login. 15866 // Facebook Login documentation: https://developers.facebook.com/docs/facebook-login 15867 FacebookAppID *string `json:"facebookAppId,omitempty"` 15868 // FacebookAppSecret - The App Secret of the Facebook app used for Facebook Login. 15869 // This setting is required for enabling Facebook Login. 15870 // Facebook Login documentation: https://developers.facebook.com/docs/facebook-login 15871 FacebookAppSecret *string `json:"facebookAppSecret,omitempty"` 15872 // FacebookOAuthScopes - The OAuth 2.0 scopes that will be requested as part of Facebook Login authentication. 15873 // This setting is optional. 15874 // Facebook Login documentation: https://developers.facebook.com/docs/facebook-login 15875 FacebookOAuthScopes *[]string `json:"facebookOAuthScopes,omitempty"` 15876 // TwitterConsumerKey - The OAuth 1.0a consumer key of the Twitter application used for sign-in. 15877 // This setting is required for enabling Twitter Sign-In. 15878 // Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in 15879 TwitterConsumerKey *string `json:"twitterConsumerKey,omitempty"` 15880 // TwitterConsumerSecret - The OAuth 1.0a consumer secret of the Twitter application used for sign-in. 15881 // This setting is required for enabling Twitter Sign-In. 15882 // Twitter Sign-In documentation: https://dev.twitter.com/web/sign-in 15883 TwitterConsumerSecret *string `json:"twitterConsumerSecret,omitempty"` 15884 // MicrosoftAccountClientID - The OAuth 2.0 client ID that was created for the app used for authentication. 15885 // This setting is required for enabling Microsoft Account authentication. 15886 // Microsoft Account OAuth documentation: https://dev.onedrive.com/auth/msa_oauth.htm 15887 MicrosoftAccountClientID *string `json:"microsoftAccountClientId,omitempty"` 15888 // MicrosoftAccountClientSecret - The OAuth 2.0 client secret that was created for the app used for authentication. 15889 // This setting is required for enabling Microsoft Account authentication. 15890 // Microsoft Account OAuth documentation: https://dev.onedrive.com/auth/msa_oauth.htm 15891 MicrosoftAccountClientSecret *string `json:"microsoftAccountClientSecret,omitempty"` 15892 // MicrosoftAccountOAuthScopes - The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. 15893 // This setting is optional. If not specified, "wl.basic" is used as the default scope. 15894 // Microsoft Account Scopes and permissions documentation: https://msdn.microsoft.com/en-us/library/dn631845.aspx 15895 MicrosoftAccountOAuthScopes *[]string `json:"microsoftAccountOAuthScopes,omitempty"` 15896} 15897 15898// SiteCloneability represents whether or not an app is cloneable. 15899type SiteCloneability struct { 15900 autorest.Response `json:"-"` 15901 // Result - Name of app. Possible values include: 'Cloneable', 'PartiallyCloneable', 'NotCloneable' 15902 Result CloneAbilityResult `json:"result,omitempty"` 15903 // BlockingFeatures - List of features enabled on app that prevent cloning. 15904 BlockingFeatures *[]SiteCloneabilityCriterion `json:"blockingFeatures,omitempty"` 15905 // UnsupportedFeatures - List of features enabled on app that are non-blocking but cannot be cloned. The app can still be cloned 15906 // but the features in this list will not be set up on cloned app. 15907 UnsupportedFeatures *[]SiteCloneabilityCriterion `json:"unsupportedFeatures,omitempty"` 15908 // BlockingCharacteristics - List of blocking application characteristics. 15909 BlockingCharacteristics *[]SiteCloneabilityCriterion `json:"blockingCharacteristics,omitempty"` 15910} 15911 15912// SiteCloneabilityCriterion an app cloneability criterion. 15913type SiteCloneabilityCriterion struct { 15914 // Name - Name of criterion. 15915 Name *string `json:"name,omitempty"` 15916 // Description - Description of criterion. 15917 Description *string `json:"description,omitempty"` 15918} 15919 15920// SiteConfig configuration of an App Service app. 15921type SiteConfig struct { 15922 // NumberOfWorkers - Number of workers. 15923 NumberOfWorkers *int32 `json:"numberOfWorkers,omitempty"` 15924 // DefaultDocuments - Default documents. 15925 DefaultDocuments *[]string `json:"defaultDocuments,omitempty"` 15926 // NetFrameworkVersion - .NET Framework version. 15927 NetFrameworkVersion *string `json:"netFrameworkVersion,omitempty"` 15928 // PhpVersion - Version of PHP. 15929 PhpVersion *string `json:"phpVersion,omitempty"` 15930 // PythonVersion - Version of Python. 15931 PythonVersion *string `json:"pythonVersion,omitempty"` 15932 // NodeVersion - Version of Node.js. 15933 NodeVersion *string `json:"nodeVersion,omitempty"` 15934 // LinuxFxVersion - Linux App Framework and version 15935 LinuxFxVersion *string `json:"linuxFxVersion,omitempty"` 15936 // RequestTracingEnabled - <code>true</code> if request tracing is enabled; otherwise, <code>false</code>. 15937 RequestTracingEnabled *bool `json:"requestTracingEnabled,omitempty"` 15938 // RequestTracingExpirationTime - Request tracing expiration time. 15939 RequestTracingExpirationTime *date.Time `json:"requestTracingExpirationTime,omitempty"` 15940 // RemoteDebuggingEnabled - <code>true</code> if remote debugging is enabled; otherwise, <code>false</code>. 15941 RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty"` 15942 // RemoteDebuggingVersion - Remote debugging version. 15943 RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty"` 15944 // HTTPLoggingEnabled - <code>true</code> if HTTP logging is enabled; otherwise, <code>false</code>. 15945 HTTPLoggingEnabled *bool `json:"httpLoggingEnabled,omitempty"` 15946 // LogsDirectorySizeLimit - HTTP logs directory size limit. 15947 LogsDirectorySizeLimit *int32 `json:"logsDirectorySizeLimit,omitempty"` 15948 // DetailedErrorLoggingEnabled - <code>true</code> if detailed error logging is enabled; otherwise, <code>false</code>. 15949 DetailedErrorLoggingEnabled *bool `json:"detailedErrorLoggingEnabled,omitempty"` 15950 // PublishingUsername - Publishing user name. 15951 PublishingUsername *string `json:"publishingUsername,omitempty"` 15952 // AppSettings - Application settings. 15953 AppSettings *[]NameValuePair `json:"appSettings,omitempty"` 15954 // ConnectionStrings - Connection strings. 15955 ConnectionStrings *[]ConnStringInfo `json:"connectionStrings,omitempty"` 15956 // MachineKey - Site MachineKey. 15957 MachineKey *SiteMachineKey `json:"machineKey,omitempty"` 15958 // HandlerMappings - Handler mappings. 15959 HandlerMappings *[]HandlerMapping `json:"handlerMappings,omitempty"` 15960 // DocumentRoot - Document root. 15961 DocumentRoot *string `json:"documentRoot,omitempty"` 15962 // ScmType - SCM type. Possible values include: 'ScmTypeNone', 'ScmTypeDropbox', 'ScmTypeTfs', 'ScmTypeLocalGit', 'ScmTypeGitHub', 'ScmTypeCodePlexGit', 'ScmTypeCodePlexHg', 'ScmTypeBitbucketGit', 'ScmTypeBitbucketHg', 'ScmTypeExternalGit', 'ScmTypeExternalHg', 'ScmTypeOneDrive', 'ScmTypeVSO' 15963 ScmType ScmType `json:"scmType,omitempty"` 15964 // Use32BitWorkerProcess - <code>true</code> to use 32-bit worker process; otherwise, <code>false</code>. 15965 Use32BitWorkerProcess *bool `json:"use32BitWorkerProcess,omitempty"` 15966 // WebSocketsEnabled - <code>true</code> if WebSocket is enabled; otherwise, <code>false</code>. 15967 WebSocketsEnabled *bool `json:"webSocketsEnabled,omitempty"` 15968 // AlwaysOn - <code>true</code> if Always On is enabled; otherwise, <code>false</code>. 15969 AlwaysOn *bool `json:"alwaysOn,omitempty"` 15970 // JavaVersion - Java version. 15971 JavaVersion *string `json:"javaVersion,omitempty"` 15972 // JavaContainer - Java container. 15973 JavaContainer *string `json:"javaContainer,omitempty"` 15974 // JavaContainerVersion - Java container version. 15975 JavaContainerVersion *string `json:"javaContainerVersion,omitempty"` 15976 // AppCommandLine - App command line to launch. 15977 AppCommandLine *string `json:"appCommandLine,omitempty"` 15978 // ManagedPipelineMode - Managed pipeline mode. Possible values include: 'Integrated', 'Classic' 15979 ManagedPipelineMode ManagedPipelineMode `json:"managedPipelineMode,omitempty"` 15980 // VirtualApplications - Virtual applications. 15981 VirtualApplications *[]VirtualApplication `json:"virtualApplications,omitempty"` 15982 // LoadBalancing - Site load balancing. Possible values include: 'WeightedRoundRobin', 'LeastRequests', 'LeastResponseTime', 'WeightedTotalTraffic', 'RequestHash' 15983 LoadBalancing SiteLoadBalancing `json:"loadBalancing,omitempty"` 15984 // Experiments - This is work around for polymophic types. 15985 Experiments *Experiments `json:"experiments,omitempty"` 15986 // Limits - Site limits. 15987 Limits *SiteLimits `json:"limits,omitempty"` 15988 // AutoHealEnabled - <code>true</code> if Auto Heal is enabled; otherwise, <code>false</code>. 15989 AutoHealEnabled *bool `json:"autoHealEnabled,omitempty"` 15990 // AutoHealRules - Auto Heal rules. 15991 AutoHealRules *AutoHealRules `json:"autoHealRules,omitempty"` 15992 // TracingOptions - Tracing options. 15993 TracingOptions *string `json:"tracingOptions,omitempty"` 15994 // VnetName - Virtual Network name. 15995 VnetName *string `json:"vnetName,omitempty"` 15996 // Cors - Cross-Origin Resource Sharing (CORS) settings. 15997 Cors *CorsSettings `json:"cors,omitempty"` 15998 // Push - Push endpoint settings. 15999 Push *PushSettings `json:"push,omitempty"` 16000 // APIDefinition - Information about the formal API definition for the app. 16001 APIDefinition *APIDefinitionInfo `json:"apiDefinition,omitempty"` 16002 // AutoSwapSlotName - Auto-swap slot name. 16003 AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty"` 16004 // LocalMySQLEnabled - <code>true</code> to enable local MySQL; otherwise, <code>false</code>. 16005 LocalMySQLEnabled *bool `json:"localMySqlEnabled,omitempty"` 16006 // IPSecurityRestrictions - IP security restrictions. 16007 IPSecurityRestrictions *[]IPSecurityRestriction `json:"ipSecurityRestrictions,omitempty"` 16008 // HTTP20Enabled - Http20Enabled: configures a web site to allow clients to connect over http2.0 16009 HTTP20Enabled *bool `json:"http20Enabled,omitempty"` 16010 // MinTLSVersion - MinTlsVersion: configures the minimum version of TLS required for SSL requests. Possible values include: 'OneFullStopZero', 'OneFullStopOne', 'OneFullStopTwo' 16011 MinTLSVersion SupportedTLSVersions `json:"minTlsVersion,omitempty"` 16012} 16013 16014// SiteConfigResource web app configuration ARM resource. 16015type SiteConfigResource struct { 16016 autorest.Response `json:"-"` 16017 // SiteConfig - Core resource properties 16018 *SiteConfig `json:"properties,omitempty"` 16019 // ID - Resource Id. 16020 ID *string `json:"id,omitempty"` 16021 // Name - Resource Name. 16022 Name *string `json:"name,omitempty"` 16023 // Kind - Kind of resource. 16024 Kind *string `json:"kind,omitempty"` 16025 // Type - Resource type. 16026 Type *string `json:"type,omitempty"` 16027} 16028 16029// MarshalJSON is the custom marshaler for SiteConfigResource. 16030func (scr SiteConfigResource) MarshalJSON() ([]byte, error) { 16031 objectMap := make(map[string]interface{}) 16032 if scr.SiteConfig != nil { 16033 objectMap["properties"] = scr.SiteConfig 16034 } 16035 if scr.ID != nil { 16036 objectMap["id"] = scr.ID 16037 } 16038 if scr.Name != nil { 16039 objectMap["name"] = scr.Name 16040 } 16041 if scr.Kind != nil { 16042 objectMap["kind"] = scr.Kind 16043 } 16044 if scr.Type != nil { 16045 objectMap["type"] = scr.Type 16046 } 16047 return json.Marshal(objectMap) 16048} 16049 16050// UnmarshalJSON is the custom unmarshaler for SiteConfigResource struct. 16051func (scr *SiteConfigResource) UnmarshalJSON(body []byte) error { 16052 var m map[string]*json.RawMessage 16053 err := json.Unmarshal(body, &m) 16054 if err != nil { 16055 return err 16056 } 16057 for k, v := range m { 16058 switch k { 16059 case "properties": 16060 if v != nil { 16061 var siteConfig SiteConfig 16062 err = json.Unmarshal(*v, &siteConfig) 16063 if err != nil { 16064 return err 16065 } 16066 scr.SiteConfig = &siteConfig 16067 } 16068 case "id": 16069 if v != nil { 16070 var ID string 16071 err = json.Unmarshal(*v, &ID) 16072 if err != nil { 16073 return err 16074 } 16075 scr.ID = &ID 16076 } 16077 case "name": 16078 if v != nil { 16079 var name string 16080 err = json.Unmarshal(*v, &name) 16081 if err != nil { 16082 return err 16083 } 16084 scr.Name = &name 16085 } 16086 case "kind": 16087 if v != nil { 16088 var kind string 16089 err = json.Unmarshal(*v, &kind) 16090 if err != nil { 16091 return err 16092 } 16093 scr.Kind = &kind 16094 } 16095 case "type": 16096 if v != nil { 16097 var typeVar string 16098 err = json.Unmarshal(*v, &typeVar) 16099 if err != nil { 16100 return err 16101 } 16102 scr.Type = &typeVar 16103 } 16104 } 16105 } 16106 16107 return nil 16108} 16109 16110// SiteConfigResourceCollection collection of site configurations. 16111type SiteConfigResourceCollection struct { 16112 autorest.Response `json:"-"` 16113 // Value - Collection of resources. 16114 Value *[]SiteConfigResource `json:"value,omitempty"` 16115 // NextLink - Link to next page of resources. 16116 NextLink *string `json:"nextLink,omitempty"` 16117} 16118 16119// SiteConfigResourceCollectionIterator provides access to a complete listing of SiteConfigResource values. 16120type SiteConfigResourceCollectionIterator struct { 16121 i int 16122 page SiteConfigResourceCollectionPage 16123} 16124 16125// Next advances to the next value. If there was an error making 16126// the request the iterator does not advance and the error is returned. 16127func (iter *SiteConfigResourceCollectionIterator) Next() error { 16128 iter.i++ 16129 if iter.i < len(iter.page.Values()) { 16130 return nil 16131 } 16132 err := iter.page.Next() 16133 if err != nil { 16134 iter.i-- 16135 return err 16136 } 16137 iter.i = 0 16138 return nil 16139} 16140 16141// NotDone returns true if the enumeration should be started or is not yet complete. 16142func (iter SiteConfigResourceCollectionIterator) NotDone() bool { 16143 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 16144} 16145 16146// Response returns the raw server response from the last page request. 16147func (iter SiteConfigResourceCollectionIterator) Response() SiteConfigResourceCollection { 16148 return iter.page.Response() 16149} 16150 16151// Value returns the current value or a zero-initialized value if the 16152// iterator has advanced beyond the end of the collection. 16153func (iter SiteConfigResourceCollectionIterator) Value() SiteConfigResource { 16154 if !iter.page.NotDone() { 16155 return SiteConfigResource{} 16156 } 16157 return iter.page.Values()[iter.i] 16158} 16159 16160// IsEmpty returns true if the ListResult contains no values. 16161func (scrc SiteConfigResourceCollection) IsEmpty() bool { 16162 return scrc.Value == nil || len(*scrc.Value) == 0 16163} 16164 16165// siteConfigResourceCollectionPreparer prepares a request to retrieve the next set of results. 16166// It returns nil if no more results exist. 16167func (scrc SiteConfigResourceCollection) siteConfigResourceCollectionPreparer() (*http.Request, error) { 16168 if scrc.NextLink == nil || len(to.String(scrc.NextLink)) < 1 { 16169 return nil, nil 16170 } 16171 return autorest.Prepare(&http.Request{}, 16172 autorest.AsJSON(), 16173 autorest.AsGet(), 16174 autorest.WithBaseURL(to.String(scrc.NextLink))) 16175} 16176 16177// SiteConfigResourceCollectionPage contains a page of SiteConfigResource values. 16178type SiteConfigResourceCollectionPage struct { 16179 fn func(SiteConfigResourceCollection) (SiteConfigResourceCollection, error) 16180 scrc SiteConfigResourceCollection 16181} 16182 16183// Next advances to the next page of values. If there was an error making 16184// the request the page does not advance and the error is returned. 16185func (page *SiteConfigResourceCollectionPage) Next() error { 16186 next, err := page.fn(page.scrc) 16187 if err != nil { 16188 return err 16189 } 16190 page.scrc = next 16191 return nil 16192} 16193 16194// NotDone returns true if the page enumeration should be started or is not yet complete. 16195func (page SiteConfigResourceCollectionPage) NotDone() bool { 16196 return !page.scrc.IsEmpty() 16197} 16198 16199// Response returns the raw server response from the last page request. 16200func (page SiteConfigResourceCollectionPage) Response() SiteConfigResourceCollection { 16201 return page.scrc 16202} 16203 16204// Values returns the slice of values for the current page or nil if there are no values. 16205func (page SiteConfigResourceCollectionPage) Values() []SiteConfigResource { 16206 if page.scrc.IsEmpty() { 16207 return nil 16208 } 16209 return *page.scrc.Value 16210} 16211 16212// SiteConfigurationSnapshotInfo a snapshot of a web app configuration. 16213type SiteConfigurationSnapshotInfo struct { 16214 // SiteConfigurationSnapshotInfoProperties - SiteConfigurationSnapshotInfo resource specific properties 16215 *SiteConfigurationSnapshotInfoProperties `json:"properties,omitempty"` 16216 // ID - Resource Id. 16217 ID *string `json:"id,omitempty"` 16218 // Name - Resource Name. 16219 Name *string `json:"name,omitempty"` 16220 // Kind - Kind of resource. 16221 Kind *string `json:"kind,omitempty"` 16222 // Type - Resource type. 16223 Type *string `json:"type,omitempty"` 16224} 16225 16226// MarshalJSON is the custom marshaler for SiteConfigurationSnapshotInfo. 16227func (scsi SiteConfigurationSnapshotInfo) MarshalJSON() ([]byte, error) { 16228 objectMap := make(map[string]interface{}) 16229 if scsi.SiteConfigurationSnapshotInfoProperties != nil { 16230 objectMap["properties"] = scsi.SiteConfigurationSnapshotInfoProperties 16231 } 16232 if scsi.ID != nil { 16233 objectMap["id"] = scsi.ID 16234 } 16235 if scsi.Name != nil { 16236 objectMap["name"] = scsi.Name 16237 } 16238 if scsi.Kind != nil { 16239 objectMap["kind"] = scsi.Kind 16240 } 16241 if scsi.Type != nil { 16242 objectMap["type"] = scsi.Type 16243 } 16244 return json.Marshal(objectMap) 16245} 16246 16247// UnmarshalJSON is the custom unmarshaler for SiteConfigurationSnapshotInfo struct. 16248func (scsi *SiteConfigurationSnapshotInfo) UnmarshalJSON(body []byte) error { 16249 var m map[string]*json.RawMessage 16250 err := json.Unmarshal(body, &m) 16251 if err != nil { 16252 return err 16253 } 16254 for k, v := range m { 16255 switch k { 16256 case "properties": 16257 if v != nil { 16258 var siteConfigurationSnapshotInfoProperties SiteConfigurationSnapshotInfoProperties 16259 err = json.Unmarshal(*v, &siteConfigurationSnapshotInfoProperties) 16260 if err != nil { 16261 return err 16262 } 16263 scsi.SiteConfigurationSnapshotInfoProperties = &siteConfigurationSnapshotInfoProperties 16264 } 16265 case "id": 16266 if v != nil { 16267 var ID string 16268 err = json.Unmarshal(*v, &ID) 16269 if err != nil { 16270 return err 16271 } 16272 scsi.ID = &ID 16273 } 16274 case "name": 16275 if v != nil { 16276 var name string 16277 err = json.Unmarshal(*v, &name) 16278 if err != nil { 16279 return err 16280 } 16281 scsi.Name = &name 16282 } 16283 case "kind": 16284 if v != nil { 16285 var kind string 16286 err = json.Unmarshal(*v, &kind) 16287 if err != nil { 16288 return err 16289 } 16290 scsi.Kind = &kind 16291 } 16292 case "type": 16293 if v != nil { 16294 var typeVar string 16295 err = json.Unmarshal(*v, &typeVar) 16296 if err != nil { 16297 return err 16298 } 16299 scsi.Type = &typeVar 16300 } 16301 } 16302 } 16303 16304 return nil 16305} 16306 16307// SiteConfigurationSnapshotInfoCollection collection of metadata for the app configuration snapshots that can be 16308// restored. 16309type SiteConfigurationSnapshotInfoCollection struct { 16310 autorest.Response `json:"-"` 16311 // Value - Collection of resources. 16312 Value *[]SiteConfigurationSnapshotInfo `json:"value,omitempty"` 16313 // NextLink - Link to next page of resources. 16314 NextLink *string `json:"nextLink,omitempty"` 16315} 16316 16317// SiteConfigurationSnapshotInfoCollectionIterator provides access to a complete listing of 16318// SiteConfigurationSnapshotInfo values. 16319type SiteConfigurationSnapshotInfoCollectionIterator struct { 16320 i int 16321 page SiteConfigurationSnapshotInfoCollectionPage 16322} 16323 16324// Next advances to the next value. If there was an error making 16325// the request the iterator does not advance and the error is returned. 16326func (iter *SiteConfigurationSnapshotInfoCollectionIterator) Next() error { 16327 iter.i++ 16328 if iter.i < len(iter.page.Values()) { 16329 return nil 16330 } 16331 err := iter.page.Next() 16332 if err != nil { 16333 iter.i-- 16334 return err 16335 } 16336 iter.i = 0 16337 return nil 16338} 16339 16340// NotDone returns true if the enumeration should be started or is not yet complete. 16341func (iter SiteConfigurationSnapshotInfoCollectionIterator) NotDone() bool { 16342 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 16343} 16344 16345// Response returns the raw server response from the last page request. 16346func (iter SiteConfigurationSnapshotInfoCollectionIterator) Response() SiteConfigurationSnapshotInfoCollection { 16347 return iter.page.Response() 16348} 16349 16350// Value returns the current value or a zero-initialized value if the 16351// iterator has advanced beyond the end of the collection. 16352func (iter SiteConfigurationSnapshotInfoCollectionIterator) Value() SiteConfigurationSnapshotInfo { 16353 if !iter.page.NotDone() { 16354 return SiteConfigurationSnapshotInfo{} 16355 } 16356 return iter.page.Values()[iter.i] 16357} 16358 16359// IsEmpty returns true if the ListResult contains no values. 16360func (scsic SiteConfigurationSnapshotInfoCollection) IsEmpty() bool { 16361 return scsic.Value == nil || len(*scsic.Value) == 0 16362} 16363 16364// siteConfigurationSnapshotInfoCollectionPreparer prepares a request to retrieve the next set of results. 16365// It returns nil if no more results exist. 16366func (scsic SiteConfigurationSnapshotInfoCollection) siteConfigurationSnapshotInfoCollectionPreparer() (*http.Request, error) { 16367 if scsic.NextLink == nil || len(to.String(scsic.NextLink)) < 1 { 16368 return nil, nil 16369 } 16370 return autorest.Prepare(&http.Request{}, 16371 autorest.AsJSON(), 16372 autorest.AsGet(), 16373 autorest.WithBaseURL(to.String(scsic.NextLink))) 16374} 16375 16376// SiteConfigurationSnapshotInfoCollectionPage contains a page of SiteConfigurationSnapshotInfo values. 16377type SiteConfigurationSnapshotInfoCollectionPage struct { 16378 fn func(SiteConfigurationSnapshotInfoCollection) (SiteConfigurationSnapshotInfoCollection, error) 16379 scsic SiteConfigurationSnapshotInfoCollection 16380} 16381 16382// Next advances to the next page of values. If there was an error making 16383// the request the page does not advance and the error is returned. 16384func (page *SiteConfigurationSnapshotInfoCollectionPage) Next() error { 16385 next, err := page.fn(page.scsic) 16386 if err != nil { 16387 return err 16388 } 16389 page.scsic = next 16390 return nil 16391} 16392 16393// NotDone returns true if the page enumeration should be started or is not yet complete. 16394func (page SiteConfigurationSnapshotInfoCollectionPage) NotDone() bool { 16395 return !page.scsic.IsEmpty() 16396} 16397 16398// Response returns the raw server response from the last page request. 16399func (page SiteConfigurationSnapshotInfoCollectionPage) Response() SiteConfigurationSnapshotInfoCollection { 16400 return page.scsic 16401} 16402 16403// Values returns the slice of values for the current page or nil if there are no values. 16404func (page SiteConfigurationSnapshotInfoCollectionPage) Values() []SiteConfigurationSnapshotInfo { 16405 if page.scsic.IsEmpty() { 16406 return nil 16407 } 16408 return *page.scsic.Value 16409} 16410 16411// SiteConfigurationSnapshotInfoProperties siteConfigurationSnapshotInfo resource specific properties 16412type SiteConfigurationSnapshotInfoProperties struct { 16413 // Time - The time the snapshot was taken. 16414 Time *date.Time `json:"time,omitempty"` 16415 // ID - The id of the snapshot 16416 ID *int32 `json:"id,omitempty"` 16417} 16418 16419// SiteExtensionInfo site Extension Information. 16420type SiteExtensionInfo struct { 16421 autorest.Response `json:"-"` 16422 // SiteExtensionInfoProperties - SiteExtensionInfo resource specific properties 16423 *SiteExtensionInfoProperties `json:"properties,omitempty"` 16424 // ID - Resource Id. 16425 ID *string `json:"id,omitempty"` 16426 // Name - Resource Name. 16427 Name *string `json:"name,omitempty"` 16428 // Kind - Kind of resource. 16429 Kind *string `json:"kind,omitempty"` 16430 // Type - Resource type. 16431 Type *string `json:"type,omitempty"` 16432} 16433 16434// MarshalJSON is the custom marshaler for SiteExtensionInfo. 16435func (sei SiteExtensionInfo) MarshalJSON() ([]byte, error) { 16436 objectMap := make(map[string]interface{}) 16437 if sei.SiteExtensionInfoProperties != nil { 16438 objectMap["properties"] = sei.SiteExtensionInfoProperties 16439 } 16440 if sei.ID != nil { 16441 objectMap["id"] = sei.ID 16442 } 16443 if sei.Name != nil { 16444 objectMap["name"] = sei.Name 16445 } 16446 if sei.Kind != nil { 16447 objectMap["kind"] = sei.Kind 16448 } 16449 if sei.Type != nil { 16450 objectMap["type"] = sei.Type 16451 } 16452 return json.Marshal(objectMap) 16453} 16454 16455// UnmarshalJSON is the custom unmarshaler for SiteExtensionInfo struct. 16456func (sei *SiteExtensionInfo) UnmarshalJSON(body []byte) error { 16457 var m map[string]*json.RawMessage 16458 err := json.Unmarshal(body, &m) 16459 if err != nil { 16460 return err 16461 } 16462 for k, v := range m { 16463 switch k { 16464 case "properties": 16465 if v != nil { 16466 var siteExtensionInfoProperties SiteExtensionInfoProperties 16467 err = json.Unmarshal(*v, &siteExtensionInfoProperties) 16468 if err != nil { 16469 return err 16470 } 16471 sei.SiteExtensionInfoProperties = &siteExtensionInfoProperties 16472 } 16473 case "id": 16474 if v != nil { 16475 var ID string 16476 err = json.Unmarshal(*v, &ID) 16477 if err != nil { 16478 return err 16479 } 16480 sei.ID = &ID 16481 } 16482 case "name": 16483 if v != nil { 16484 var name string 16485 err = json.Unmarshal(*v, &name) 16486 if err != nil { 16487 return err 16488 } 16489 sei.Name = &name 16490 } 16491 case "kind": 16492 if v != nil { 16493 var kind string 16494 err = json.Unmarshal(*v, &kind) 16495 if err != nil { 16496 return err 16497 } 16498 sei.Kind = &kind 16499 } 16500 case "type": 16501 if v != nil { 16502 var typeVar string 16503 err = json.Unmarshal(*v, &typeVar) 16504 if err != nil { 16505 return err 16506 } 16507 sei.Type = &typeVar 16508 } 16509 } 16510 } 16511 16512 return nil 16513} 16514 16515// SiteExtensionInfoCollection collection of Kudu site extension information elements. 16516type SiteExtensionInfoCollection struct { 16517 autorest.Response `json:"-"` 16518 // Value - Collection of resources. 16519 Value *[]SiteExtensionInfo `json:"value,omitempty"` 16520 // NextLink - Link to next page of resources. 16521 NextLink *string `json:"nextLink,omitempty"` 16522} 16523 16524// SiteExtensionInfoCollectionIterator provides access to a complete listing of SiteExtensionInfo values. 16525type SiteExtensionInfoCollectionIterator struct { 16526 i int 16527 page SiteExtensionInfoCollectionPage 16528} 16529 16530// Next advances to the next value. If there was an error making 16531// the request the iterator does not advance and the error is returned. 16532func (iter *SiteExtensionInfoCollectionIterator) Next() error { 16533 iter.i++ 16534 if iter.i < len(iter.page.Values()) { 16535 return nil 16536 } 16537 err := iter.page.Next() 16538 if err != nil { 16539 iter.i-- 16540 return err 16541 } 16542 iter.i = 0 16543 return nil 16544} 16545 16546// NotDone returns true if the enumeration should be started or is not yet complete. 16547func (iter SiteExtensionInfoCollectionIterator) NotDone() bool { 16548 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 16549} 16550 16551// Response returns the raw server response from the last page request. 16552func (iter SiteExtensionInfoCollectionIterator) Response() SiteExtensionInfoCollection { 16553 return iter.page.Response() 16554} 16555 16556// Value returns the current value or a zero-initialized value if the 16557// iterator has advanced beyond the end of the collection. 16558func (iter SiteExtensionInfoCollectionIterator) Value() SiteExtensionInfo { 16559 if !iter.page.NotDone() { 16560 return SiteExtensionInfo{} 16561 } 16562 return iter.page.Values()[iter.i] 16563} 16564 16565// IsEmpty returns true if the ListResult contains no values. 16566func (seic SiteExtensionInfoCollection) IsEmpty() bool { 16567 return seic.Value == nil || len(*seic.Value) == 0 16568} 16569 16570// siteExtensionInfoCollectionPreparer prepares a request to retrieve the next set of results. 16571// It returns nil if no more results exist. 16572func (seic SiteExtensionInfoCollection) siteExtensionInfoCollectionPreparer() (*http.Request, error) { 16573 if seic.NextLink == nil || len(to.String(seic.NextLink)) < 1 { 16574 return nil, nil 16575 } 16576 return autorest.Prepare(&http.Request{}, 16577 autorest.AsJSON(), 16578 autorest.AsGet(), 16579 autorest.WithBaseURL(to.String(seic.NextLink))) 16580} 16581 16582// SiteExtensionInfoCollectionPage contains a page of SiteExtensionInfo values. 16583type SiteExtensionInfoCollectionPage struct { 16584 fn func(SiteExtensionInfoCollection) (SiteExtensionInfoCollection, error) 16585 seic SiteExtensionInfoCollection 16586} 16587 16588// Next advances to the next page of values. If there was an error making 16589// the request the page does not advance and the error is returned. 16590func (page *SiteExtensionInfoCollectionPage) Next() error { 16591 next, err := page.fn(page.seic) 16592 if err != nil { 16593 return err 16594 } 16595 page.seic = next 16596 return nil 16597} 16598 16599// NotDone returns true if the page enumeration should be started or is not yet complete. 16600func (page SiteExtensionInfoCollectionPage) NotDone() bool { 16601 return !page.seic.IsEmpty() 16602} 16603 16604// Response returns the raw server response from the last page request. 16605func (page SiteExtensionInfoCollectionPage) Response() SiteExtensionInfoCollection { 16606 return page.seic 16607} 16608 16609// Values returns the slice of values for the current page or nil if there are no values. 16610func (page SiteExtensionInfoCollectionPage) Values() []SiteExtensionInfo { 16611 if page.seic.IsEmpty() { 16612 return nil 16613 } 16614 return *page.seic.Value 16615} 16616 16617// SiteExtensionInfoProperties siteExtensionInfo resource specific properties 16618type SiteExtensionInfoProperties struct { 16619 // ID - Site extension ID. 16620 ID *string `json:"id,omitempty"` 16621 // Title - Site extension title. 16622 Title *string `json:"title,omitempty"` 16623 // Type - Site extension type. Possible values include: 'Gallery', 'WebRoot' 16624 Type SiteExtensionType `json:"type,omitempty"` 16625 // Summary - Summary description. 16626 Summary *string `json:"summary,omitempty"` 16627 // Description - Detailed description. 16628 Description *string `json:"description,omitempty"` 16629 // Version - Version information. 16630 Version *string `json:"version,omitempty"` 16631 // ExtensionURL - Extension URL. 16632 ExtensionURL *string `json:"extensionUrl,omitempty"` 16633 // ProjectURL - Project URL. 16634 ProjectURL *string `json:"projectUrl,omitempty"` 16635 // IconURL - Icon URL. 16636 IconURL *string `json:"iconUrl,omitempty"` 16637 // LicenseURL - License URL. 16638 LicenseURL *string `json:"licenseUrl,omitempty"` 16639 // FeedURL - Feed URL. 16640 FeedURL *string `json:"feedUrl,omitempty"` 16641 // Authors - List of authors. 16642 Authors *[]string `json:"authors,omitempty"` 16643 // InstallationArgs - Installer command line parameters. 16644 InstallationArgs *string `json:"installationArgs,omitempty"` 16645 // PublishedDateTime - Published timestamp. 16646 PublishedDateTime *date.Time `json:"publishedDateTime,omitempty"` 16647 // DownloadCount - Count of downloads. 16648 DownloadCount *int32 `json:"downloadCount,omitempty"` 16649 // LocalIsLatestVersion - <code>true</code> if the local version is the latest version; <code>false</code> otherwise. 16650 LocalIsLatestVersion *bool `json:"localIsLatestVersion,omitempty"` 16651 // LocalPath - Local path. 16652 LocalPath *string `json:"localPath,omitempty"` 16653 // InstalledDateTime - Installed timestamp. 16654 InstalledDateTime *date.Time `json:"installedDateTime,omitempty"` 16655 // ProvisioningState - Provisioning state. 16656 ProvisioningState *string `json:"provisioningState,omitempty"` 16657 // Comment - Site Extension comment. 16658 Comment *string `json:"comment,omitempty"` 16659} 16660 16661// SiteInstance instance of an app. 16662type SiteInstance struct { 16663 // SiteInstanceProperties - SiteInstance resource specific properties 16664 *SiteInstanceProperties `json:"properties,omitempty"` 16665 // ID - Resource Id. 16666 ID *string `json:"id,omitempty"` 16667 // Name - Resource Name. 16668 Name *string `json:"name,omitempty"` 16669 // Kind - Kind of resource. 16670 Kind *string `json:"kind,omitempty"` 16671 // Type - Resource type. 16672 Type *string `json:"type,omitempty"` 16673} 16674 16675// MarshalJSON is the custom marshaler for SiteInstance. 16676func (si SiteInstance) MarshalJSON() ([]byte, error) { 16677 objectMap := make(map[string]interface{}) 16678 if si.SiteInstanceProperties != nil { 16679 objectMap["properties"] = si.SiteInstanceProperties 16680 } 16681 if si.ID != nil { 16682 objectMap["id"] = si.ID 16683 } 16684 if si.Name != nil { 16685 objectMap["name"] = si.Name 16686 } 16687 if si.Kind != nil { 16688 objectMap["kind"] = si.Kind 16689 } 16690 if si.Type != nil { 16691 objectMap["type"] = si.Type 16692 } 16693 return json.Marshal(objectMap) 16694} 16695 16696// UnmarshalJSON is the custom unmarshaler for SiteInstance struct. 16697func (si *SiteInstance) UnmarshalJSON(body []byte) error { 16698 var m map[string]*json.RawMessage 16699 err := json.Unmarshal(body, &m) 16700 if err != nil { 16701 return err 16702 } 16703 for k, v := range m { 16704 switch k { 16705 case "properties": 16706 if v != nil { 16707 var siteInstanceProperties SiteInstanceProperties 16708 err = json.Unmarshal(*v, &siteInstanceProperties) 16709 if err != nil { 16710 return err 16711 } 16712 si.SiteInstanceProperties = &siteInstanceProperties 16713 } 16714 case "id": 16715 if v != nil { 16716 var ID string 16717 err = json.Unmarshal(*v, &ID) 16718 if err != nil { 16719 return err 16720 } 16721 si.ID = &ID 16722 } 16723 case "name": 16724 if v != nil { 16725 var name string 16726 err = json.Unmarshal(*v, &name) 16727 if err != nil { 16728 return err 16729 } 16730 si.Name = &name 16731 } 16732 case "kind": 16733 if v != nil { 16734 var kind string 16735 err = json.Unmarshal(*v, &kind) 16736 if err != nil { 16737 return err 16738 } 16739 si.Kind = &kind 16740 } 16741 case "type": 16742 if v != nil { 16743 var typeVar string 16744 err = json.Unmarshal(*v, &typeVar) 16745 if err != nil { 16746 return err 16747 } 16748 si.Type = &typeVar 16749 } 16750 } 16751 } 16752 16753 return nil 16754} 16755 16756// SiteInstanceProperties siteInstance resource specific properties 16757type SiteInstanceProperties struct { 16758 // Name - Name of instance. 16759 Name *string `json:"name,omitempty"` 16760} 16761 16762// SiteLimits metric limits set on an app. 16763type SiteLimits struct { 16764 // MaxPercentageCPU - Maximum allowed CPU usage percentage. 16765 MaxPercentageCPU *float64 `json:"maxPercentageCpu,omitempty"` 16766 // MaxMemoryInMb - Maximum allowed memory usage in MB. 16767 MaxMemoryInMb *int64 `json:"maxMemoryInMb,omitempty"` 16768 // MaxDiskSizeInMb - Maximum allowed disk size usage in MB. 16769 MaxDiskSizeInMb *int64 `json:"maxDiskSizeInMb,omitempty"` 16770} 16771 16772// SiteLogsConfig configuration of App Service site logs. 16773type SiteLogsConfig struct { 16774 autorest.Response `json:"-"` 16775 // SiteLogsConfigProperties - SiteLogsConfig resource specific properties 16776 *SiteLogsConfigProperties `json:"properties,omitempty"` 16777 // ID - Resource Id. 16778 ID *string `json:"id,omitempty"` 16779 // Name - Resource Name. 16780 Name *string `json:"name,omitempty"` 16781 // Kind - Kind of resource. 16782 Kind *string `json:"kind,omitempty"` 16783 // Type - Resource type. 16784 Type *string `json:"type,omitempty"` 16785} 16786 16787// MarshalJSON is the custom marshaler for SiteLogsConfig. 16788func (slc SiteLogsConfig) MarshalJSON() ([]byte, error) { 16789 objectMap := make(map[string]interface{}) 16790 if slc.SiteLogsConfigProperties != nil { 16791 objectMap["properties"] = slc.SiteLogsConfigProperties 16792 } 16793 if slc.ID != nil { 16794 objectMap["id"] = slc.ID 16795 } 16796 if slc.Name != nil { 16797 objectMap["name"] = slc.Name 16798 } 16799 if slc.Kind != nil { 16800 objectMap["kind"] = slc.Kind 16801 } 16802 if slc.Type != nil { 16803 objectMap["type"] = slc.Type 16804 } 16805 return json.Marshal(objectMap) 16806} 16807 16808// UnmarshalJSON is the custom unmarshaler for SiteLogsConfig struct. 16809func (slc *SiteLogsConfig) UnmarshalJSON(body []byte) error { 16810 var m map[string]*json.RawMessage 16811 err := json.Unmarshal(body, &m) 16812 if err != nil { 16813 return err 16814 } 16815 for k, v := range m { 16816 switch k { 16817 case "properties": 16818 if v != nil { 16819 var siteLogsConfigProperties SiteLogsConfigProperties 16820 err = json.Unmarshal(*v, &siteLogsConfigProperties) 16821 if err != nil { 16822 return err 16823 } 16824 slc.SiteLogsConfigProperties = &siteLogsConfigProperties 16825 } 16826 case "id": 16827 if v != nil { 16828 var ID string 16829 err = json.Unmarshal(*v, &ID) 16830 if err != nil { 16831 return err 16832 } 16833 slc.ID = &ID 16834 } 16835 case "name": 16836 if v != nil { 16837 var name string 16838 err = json.Unmarshal(*v, &name) 16839 if err != nil { 16840 return err 16841 } 16842 slc.Name = &name 16843 } 16844 case "kind": 16845 if v != nil { 16846 var kind string 16847 err = json.Unmarshal(*v, &kind) 16848 if err != nil { 16849 return err 16850 } 16851 slc.Kind = &kind 16852 } 16853 case "type": 16854 if v != nil { 16855 var typeVar string 16856 err = json.Unmarshal(*v, &typeVar) 16857 if err != nil { 16858 return err 16859 } 16860 slc.Type = &typeVar 16861 } 16862 } 16863 } 16864 16865 return nil 16866} 16867 16868// SiteLogsConfigProperties siteLogsConfig resource specific properties 16869type SiteLogsConfigProperties struct { 16870 // ApplicationLogs - Application logs configuration. 16871 ApplicationLogs *ApplicationLogsConfig `json:"applicationLogs,omitempty"` 16872 // HTTPLogs - HTTP logs configuration. 16873 HTTPLogs *HTTPLogsConfig `json:"httpLogs,omitempty"` 16874 // FailedRequestsTracing - Failed requests tracing configuration. 16875 FailedRequestsTracing *EnabledConfig `json:"failedRequestsTracing,omitempty"` 16876 // DetailedErrorMessages - Detailed error messages configuration. 16877 DetailedErrorMessages *EnabledConfig `json:"detailedErrorMessages,omitempty"` 16878} 16879 16880// SiteMachineKey machineKey of an app. 16881type SiteMachineKey struct { 16882 // Validation - MachineKey validation. 16883 Validation *string `json:"validation,omitempty"` 16884 // ValidationKey - Validation key. 16885 ValidationKey *string `json:"validationKey,omitempty"` 16886 // Decryption - Algorithm used for decryption. 16887 Decryption *string `json:"decryption,omitempty"` 16888 // DecryptionKey - Decryption key. 16889 DecryptionKey *string `json:"decryptionKey,omitempty"` 16890} 16891 16892// SitePatchResource ARM resource for a site. 16893type SitePatchResource struct { 16894 // SitePatchResourceProperties - SitePatchResource resource specific properties 16895 *SitePatchResourceProperties `json:"properties,omitempty"` 16896 // ID - Resource Id. 16897 ID *string `json:"id,omitempty"` 16898 // Name - Resource Name. 16899 Name *string `json:"name,omitempty"` 16900 // Kind - Kind of resource. 16901 Kind *string `json:"kind,omitempty"` 16902 // Type - Resource type. 16903 Type *string `json:"type,omitempty"` 16904} 16905 16906// MarshalJSON is the custom marshaler for SitePatchResource. 16907func (spr SitePatchResource) MarshalJSON() ([]byte, error) { 16908 objectMap := make(map[string]interface{}) 16909 if spr.SitePatchResourceProperties != nil { 16910 objectMap["properties"] = spr.SitePatchResourceProperties 16911 } 16912 if spr.ID != nil { 16913 objectMap["id"] = spr.ID 16914 } 16915 if spr.Name != nil { 16916 objectMap["name"] = spr.Name 16917 } 16918 if spr.Kind != nil { 16919 objectMap["kind"] = spr.Kind 16920 } 16921 if spr.Type != nil { 16922 objectMap["type"] = spr.Type 16923 } 16924 return json.Marshal(objectMap) 16925} 16926 16927// UnmarshalJSON is the custom unmarshaler for SitePatchResource struct. 16928func (spr *SitePatchResource) UnmarshalJSON(body []byte) error { 16929 var m map[string]*json.RawMessage 16930 err := json.Unmarshal(body, &m) 16931 if err != nil { 16932 return err 16933 } 16934 for k, v := range m { 16935 switch k { 16936 case "properties": 16937 if v != nil { 16938 var sitePatchResourceProperties SitePatchResourceProperties 16939 err = json.Unmarshal(*v, &sitePatchResourceProperties) 16940 if err != nil { 16941 return err 16942 } 16943 spr.SitePatchResourceProperties = &sitePatchResourceProperties 16944 } 16945 case "id": 16946 if v != nil { 16947 var ID string 16948 err = json.Unmarshal(*v, &ID) 16949 if err != nil { 16950 return err 16951 } 16952 spr.ID = &ID 16953 } 16954 case "name": 16955 if v != nil { 16956 var name string 16957 err = json.Unmarshal(*v, &name) 16958 if err != nil { 16959 return err 16960 } 16961 spr.Name = &name 16962 } 16963 case "kind": 16964 if v != nil { 16965 var kind string 16966 err = json.Unmarshal(*v, &kind) 16967 if err != nil { 16968 return err 16969 } 16970 spr.Kind = &kind 16971 } 16972 case "type": 16973 if v != nil { 16974 var typeVar string 16975 err = json.Unmarshal(*v, &typeVar) 16976 if err != nil { 16977 return err 16978 } 16979 spr.Type = &typeVar 16980 } 16981 } 16982 } 16983 16984 return nil 16985} 16986 16987// SitePatchResourceProperties sitePatchResource resource specific properties 16988type SitePatchResourceProperties struct { 16989 // State - Current state of the app. 16990 State *string `json:"state,omitempty"` 16991 // HostNames - Hostnames associated with the app. 16992 HostNames *[]string `json:"hostNames,omitempty"` 16993 // RepositorySiteName - Name of the repository site. 16994 RepositorySiteName *string `json:"repositorySiteName,omitempty"` 16995 // UsageState - State indicating whether the app has exceeded its quota usage. Read-only. Possible values include: 'UsageStateNormal', 'UsageStateExceeded' 16996 UsageState UsageState `json:"usageState,omitempty"` 16997 // 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). 16998 Enabled *bool `json:"enabled,omitempty"` 16999 // EnabledHostNames - Enabled hostnames for the app.Hostnames need to be assigned (see HostNames) AND enabled. Otherwise, 17000 // the app is not served on those hostnames. 17001 EnabledHostNames *[]string `json:"enabledHostNames,omitempty"` 17002 // AvailabilityState - Management information availability state for the app. Possible values include: 'Normal', 'Limited', 'DisasterRecoveryMode' 17003 AvailabilityState SiteAvailabilityState `json:"availabilityState,omitempty"` 17004 // HostNameSslStates - Hostname SSL states are used to manage the SSL bindings for app's hostnames. 17005 HostNameSslStates *[]HostNameSslState `json:"hostNameSslStates,omitempty"` 17006 // ServerFarmID - Resource ID of the associated App Service plan, formatted as: "/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}". 17007 ServerFarmID *string `json:"serverFarmId,omitempty"` 17008 // Reserved - <code>true</code> if reserved; otherwise, <code>false</code>. 17009 Reserved *bool `json:"reserved,omitempty"` 17010 // LastModifiedTimeUtc - Last time the app was modified, in UTC. Read-only. 17011 LastModifiedTimeUtc *date.Time `json:"lastModifiedTimeUtc,omitempty"` 17012 // SiteConfig - Configuration of the app. 17013 SiteConfig *SiteConfig `json:"siteConfig,omitempty"` 17014 // TrafficManagerHostNames - Azure Traffic Manager hostnames associated with the app. Read-only. 17015 TrafficManagerHostNames *[]string `json:"trafficManagerHostNames,omitempty"` 17016 // ScmSiteAlsoStopped - <code>true</code> to stop SCM (KUDU) site when the app is stopped; otherwise, <code>false</code>. The default is <code>false</code>. 17017 ScmSiteAlsoStopped *bool `json:"scmSiteAlsoStopped,omitempty"` 17018 // TargetSwapSlot - Specifies which deployment slot this app will swap into. Read-only. 17019 TargetSwapSlot *string `json:"targetSwapSlot,omitempty"` 17020 // HostingEnvironmentProfile - App Service Environment to use for the app. 17021 HostingEnvironmentProfile *HostingEnvironmentProfile `json:"hostingEnvironmentProfile,omitempty"` 17022 // 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>. 17023 ClientAffinityEnabled *bool `json:"clientAffinityEnabled,omitempty"` 17024 // ClientCertEnabled - <code>true</code> to enable client certificate authentication (TLS mutual authentication); otherwise, <code>false</code>. Default is <code>false</code>. 17025 ClientCertEnabled *bool `json:"clientCertEnabled,omitempty"` 17026 // HostNamesDisabled - <code>true</code> to disable the public hostnames of the app; otherwise, <code>false</code>. 17027 // If <code>true</code>, the app is only accessible via API management process. 17028 HostNamesDisabled *bool `json:"hostNamesDisabled,omitempty"` 17029 // OutboundIPAddresses - 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. 17030 OutboundIPAddresses *string `json:"outboundIpAddresses,omitempty"` 17031 // PossibleOutboundIPAddresses - List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from all tenants. Read-only. 17032 PossibleOutboundIPAddresses *string `json:"possibleOutboundIpAddresses,omitempty"` 17033 // ContainerSize - Size of the function container. 17034 ContainerSize *int32 `json:"containerSize,omitempty"` 17035 // DailyMemoryTimeQuota - Maximum allowed daily memory-time quota (applicable on dynamic apps only). 17036 DailyMemoryTimeQuota *int32 `json:"dailyMemoryTimeQuota,omitempty"` 17037 // SuspendedTill - App suspended till in case memory-time quota is exceeded. 17038 SuspendedTill *date.Time `json:"suspendedTill,omitempty"` 17039 // MaxNumberOfWorkers - Maximum number of workers. 17040 // This only applies to Functions container. 17041 MaxNumberOfWorkers *int32 `json:"maxNumberOfWorkers,omitempty"` 17042 // CloningInfo - If specified during app creation, the app is cloned from a source app. 17043 CloningInfo *CloningInfo `json:"cloningInfo,omitempty"` 17044 // SnapshotInfo - If specified during app creation, the app is created from a previous snapshot. 17045 SnapshotInfo *SnapshotRecoveryRequest `json:"snapshotInfo,omitempty"` 17046 // ResourceGroup - Name of the resource group the app belongs to. Read-only. 17047 ResourceGroup *string `json:"resourceGroup,omitempty"` 17048 // IsDefaultContainer - <code>true</code> if the app is a default container; otherwise, <code>false</code>. 17049 IsDefaultContainer *bool `json:"isDefaultContainer,omitempty"` 17050 // DefaultHostName - Default hostname of the app. Read-only. 17051 DefaultHostName *string `json:"defaultHostName,omitempty"` 17052 // SlotSwapStatus - Status of the last deployment slot swap operation. 17053 SlotSwapStatus *SlotSwapStatus `json:"slotSwapStatus,omitempty"` 17054 // HTTPSOnly - HttpsOnly: configures a web site to accept only https requests. Issues redirect for 17055 // http requests 17056 HTTPSOnly *bool `json:"httpsOnly,omitempty"` 17057} 17058 17059// SitePhpErrorLogFlag used for getting PHP error logging flag. 17060type SitePhpErrorLogFlag struct { 17061 autorest.Response `json:"-"` 17062 // SitePhpErrorLogFlagProperties - SitePhpErrorLogFlag resource specific properties 17063 *SitePhpErrorLogFlagProperties `json:"properties,omitempty"` 17064 // ID - Resource Id. 17065 ID *string `json:"id,omitempty"` 17066 // Name - Resource Name. 17067 Name *string `json:"name,omitempty"` 17068 // Kind - Kind of resource. 17069 Kind *string `json:"kind,omitempty"` 17070 // Type - Resource type. 17071 Type *string `json:"type,omitempty"` 17072} 17073 17074// MarshalJSON is the custom marshaler for SitePhpErrorLogFlag. 17075func (spelf SitePhpErrorLogFlag) MarshalJSON() ([]byte, error) { 17076 objectMap := make(map[string]interface{}) 17077 if spelf.SitePhpErrorLogFlagProperties != nil { 17078 objectMap["properties"] = spelf.SitePhpErrorLogFlagProperties 17079 } 17080 if spelf.ID != nil { 17081 objectMap["id"] = spelf.ID 17082 } 17083 if spelf.Name != nil { 17084 objectMap["name"] = spelf.Name 17085 } 17086 if spelf.Kind != nil { 17087 objectMap["kind"] = spelf.Kind 17088 } 17089 if spelf.Type != nil { 17090 objectMap["type"] = spelf.Type 17091 } 17092 return json.Marshal(objectMap) 17093} 17094 17095// UnmarshalJSON is the custom unmarshaler for SitePhpErrorLogFlag struct. 17096func (spelf *SitePhpErrorLogFlag) UnmarshalJSON(body []byte) error { 17097 var m map[string]*json.RawMessage 17098 err := json.Unmarshal(body, &m) 17099 if err != nil { 17100 return err 17101 } 17102 for k, v := range m { 17103 switch k { 17104 case "properties": 17105 if v != nil { 17106 var sitePhpErrorLogFlagProperties SitePhpErrorLogFlagProperties 17107 err = json.Unmarshal(*v, &sitePhpErrorLogFlagProperties) 17108 if err != nil { 17109 return err 17110 } 17111 spelf.SitePhpErrorLogFlagProperties = &sitePhpErrorLogFlagProperties 17112 } 17113 case "id": 17114 if v != nil { 17115 var ID string 17116 err = json.Unmarshal(*v, &ID) 17117 if err != nil { 17118 return err 17119 } 17120 spelf.ID = &ID 17121 } 17122 case "name": 17123 if v != nil { 17124 var name string 17125 err = json.Unmarshal(*v, &name) 17126 if err != nil { 17127 return err 17128 } 17129 spelf.Name = &name 17130 } 17131 case "kind": 17132 if v != nil { 17133 var kind string 17134 err = json.Unmarshal(*v, &kind) 17135 if err != nil { 17136 return err 17137 } 17138 spelf.Kind = &kind 17139 } 17140 case "type": 17141 if v != nil { 17142 var typeVar string 17143 err = json.Unmarshal(*v, &typeVar) 17144 if err != nil { 17145 return err 17146 } 17147 spelf.Type = &typeVar 17148 } 17149 } 17150 } 17151 17152 return nil 17153} 17154 17155// SitePhpErrorLogFlagProperties sitePhpErrorLogFlag resource specific properties 17156type SitePhpErrorLogFlagProperties struct { 17157 // LocalLogErrors - Local log_errors setting. 17158 LocalLogErrors *string `json:"localLogErrors,omitempty"` 17159 // MasterLogErrors - Master log_errors setting. 17160 MasterLogErrors *string `json:"masterLogErrors,omitempty"` 17161 // LocalLogErrorsMaxLength - Local log_errors_max_len setting. 17162 LocalLogErrorsMaxLength *string `json:"localLogErrorsMaxLength,omitempty"` 17163 // MasterLogErrorsMaxLength - Master log_errors_max_len setting. 17164 MasterLogErrorsMaxLength *string `json:"masterLogErrorsMaxLength,omitempty"` 17165} 17166 17167// SiteProperties site resource specific properties 17168type SiteProperties struct { 17169 // State - Current state of the app. 17170 State *string `json:"state,omitempty"` 17171 // HostNames - Hostnames associated with the app. 17172 HostNames *[]string `json:"hostNames,omitempty"` 17173 // RepositorySiteName - Name of the repository site. 17174 RepositorySiteName *string `json:"repositorySiteName,omitempty"` 17175 // UsageState - State indicating whether the app has exceeded its quota usage. Read-only. Possible values include: 'UsageStateNormal', 'UsageStateExceeded' 17176 UsageState UsageState `json:"usageState,omitempty"` 17177 // 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). 17178 Enabled *bool `json:"enabled,omitempty"` 17179 // EnabledHostNames - Enabled hostnames for the app.Hostnames need to be assigned (see HostNames) AND enabled. Otherwise, 17180 // the app is not served on those hostnames. 17181 EnabledHostNames *[]string `json:"enabledHostNames,omitempty"` 17182 // AvailabilityState - Management information availability state for the app. Possible values include: 'Normal', 'Limited', 'DisasterRecoveryMode' 17183 AvailabilityState SiteAvailabilityState `json:"availabilityState,omitempty"` 17184 // HostNameSslStates - Hostname SSL states are used to manage the SSL bindings for app's hostnames. 17185 HostNameSslStates *[]HostNameSslState `json:"hostNameSslStates,omitempty"` 17186 // ServerFarmID - Resource ID of the associated App Service plan, formatted as: "/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}". 17187 ServerFarmID *string `json:"serverFarmId,omitempty"` 17188 // Reserved - <code>true</code> if reserved; otherwise, <code>false</code>. 17189 Reserved *bool `json:"reserved,omitempty"` 17190 // LastModifiedTimeUtc - Last time the app was modified, in UTC. Read-only. 17191 LastModifiedTimeUtc *date.Time `json:"lastModifiedTimeUtc,omitempty"` 17192 // SiteConfig - Configuration of the app. 17193 SiteConfig *SiteConfig `json:"siteConfig,omitempty"` 17194 // TrafficManagerHostNames - Azure Traffic Manager hostnames associated with the app. Read-only. 17195 TrafficManagerHostNames *[]string `json:"trafficManagerHostNames,omitempty"` 17196 // ScmSiteAlsoStopped - <code>true</code> to stop SCM (KUDU) site when the app is stopped; otherwise, <code>false</code>. The default is <code>false</code>. 17197 ScmSiteAlsoStopped *bool `json:"scmSiteAlsoStopped,omitempty"` 17198 // TargetSwapSlot - Specifies which deployment slot this app will swap into. Read-only. 17199 TargetSwapSlot *string `json:"targetSwapSlot,omitempty"` 17200 // HostingEnvironmentProfile - App Service Environment to use for the app. 17201 HostingEnvironmentProfile *HostingEnvironmentProfile `json:"hostingEnvironmentProfile,omitempty"` 17202 // 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>. 17203 ClientAffinityEnabled *bool `json:"clientAffinityEnabled,omitempty"` 17204 // ClientCertEnabled - <code>true</code> to enable client certificate authentication (TLS mutual authentication); otherwise, <code>false</code>. Default is <code>false</code>. 17205 ClientCertEnabled *bool `json:"clientCertEnabled,omitempty"` 17206 // HostNamesDisabled - <code>true</code> to disable the public hostnames of the app; otherwise, <code>false</code>. 17207 // If <code>true</code>, the app is only accessible via API management process. 17208 HostNamesDisabled *bool `json:"hostNamesDisabled,omitempty"` 17209 // OutboundIPAddresses - 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. 17210 OutboundIPAddresses *string `json:"outboundIpAddresses,omitempty"` 17211 // PossibleOutboundIPAddresses - List of IP addresses that the app uses for outbound connections (e.g. database access). Includes VIPs from all tenants. Read-only. 17212 PossibleOutboundIPAddresses *string `json:"possibleOutboundIpAddresses,omitempty"` 17213 // ContainerSize - Size of the function container. 17214 ContainerSize *int32 `json:"containerSize,omitempty"` 17215 // DailyMemoryTimeQuota - Maximum allowed daily memory-time quota (applicable on dynamic apps only). 17216 DailyMemoryTimeQuota *int32 `json:"dailyMemoryTimeQuota,omitempty"` 17217 // SuspendedTill - App suspended till in case memory-time quota is exceeded. 17218 SuspendedTill *date.Time `json:"suspendedTill,omitempty"` 17219 // MaxNumberOfWorkers - Maximum number of workers. 17220 // This only applies to Functions container. 17221 MaxNumberOfWorkers *int32 `json:"maxNumberOfWorkers,omitempty"` 17222 // CloningInfo - If specified during app creation, the app is cloned from a source app. 17223 CloningInfo *CloningInfo `json:"cloningInfo,omitempty"` 17224 // SnapshotInfo - If specified during app creation, the app is created from a previous snapshot. 17225 SnapshotInfo *SnapshotRecoveryRequest `json:"snapshotInfo,omitempty"` 17226 // ResourceGroup - Name of the resource group the app belongs to. Read-only. 17227 ResourceGroup *string `json:"resourceGroup,omitempty"` 17228 // IsDefaultContainer - <code>true</code> if the app is a default container; otherwise, <code>false</code>. 17229 IsDefaultContainer *bool `json:"isDefaultContainer,omitempty"` 17230 // DefaultHostName - Default hostname of the app. Read-only. 17231 DefaultHostName *string `json:"defaultHostName,omitempty"` 17232 // SlotSwapStatus - Status of the last deployment slot swap operation. 17233 SlotSwapStatus *SlotSwapStatus `json:"slotSwapStatus,omitempty"` 17234 // HTTPSOnly - HttpsOnly: configures a web site to accept only https requests. Issues redirect for 17235 // http requests 17236 HTTPSOnly *bool `json:"httpsOnly,omitempty"` 17237} 17238 17239// SiteSeal site seal 17240type SiteSeal struct { 17241 autorest.Response `json:"-"` 17242 // HTML - HTML snippet 17243 HTML *string `json:"html,omitempty"` 17244} 17245 17246// SiteSealRequest site seal request. 17247type SiteSealRequest struct { 17248 // LightTheme - If <code>true</code> use the light color theme for site seal; otherwise, use the default color theme. 17249 LightTheme *bool `json:"lightTheme,omitempty"` 17250 // Locale - Locale of site seal. 17251 Locale *string `json:"locale,omitempty"` 17252} 17253 17254// SiteSourceControl source control configuration for an app. 17255type SiteSourceControl struct { 17256 autorest.Response `json:"-"` 17257 // SiteSourceControlProperties - SiteSourceControl resource specific properties 17258 *SiteSourceControlProperties `json:"properties,omitempty"` 17259 // ID - Resource Id. 17260 ID *string `json:"id,omitempty"` 17261 // Name - Resource Name. 17262 Name *string `json:"name,omitempty"` 17263 // Kind - Kind of resource. 17264 Kind *string `json:"kind,omitempty"` 17265 // Type - Resource type. 17266 Type *string `json:"type,omitempty"` 17267} 17268 17269// MarshalJSON is the custom marshaler for SiteSourceControl. 17270func (ssc SiteSourceControl) MarshalJSON() ([]byte, error) { 17271 objectMap := make(map[string]interface{}) 17272 if ssc.SiteSourceControlProperties != nil { 17273 objectMap["properties"] = ssc.SiteSourceControlProperties 17274 } 17275 if ssc.ID != nil { 17276 objectMap["id"] = ssc.ID 17277 } 17278 if ssc.Name != nil { 17279 objectMap["name"] = ssc.Name 17280 } 17281 if ssc.Kind != nil { 17282 objectMap["kind"] = ssc.Kind 17283 } 17284 if ssc.Type != nil { 17285 objectMap["type"] = ssc.Type 17286 } 17287 return json.Marshal(objectMap) 17288} 17289 17290// UnmarshalJSON is the custom unmarshaler for SiteSourceControl struct. 17291func (ssc *SiteSourceControl) UnmarshalJSON(body []byte) error { 17292 var m map[string]*json.RawMessage 17293 err := json.Unmarshal(body, &m) 17294 if err != nil { 17295 return err 17296 } 17297 for k, v := range m { 17298 switch k { 17299 case "properties": 17300 if v != nil { 17301 var siteSourceControlProperties SiteSourceControlProperties 17302 err = json.Unmarshal(*v, &siteSourceControlProperties) 17303 if err != nil { 17304 return err 17305 } 17306 ssc.SiteSourceControlProperties = &siteSourceControlProperties 17307 } 17308 case "id": 17309 if v != nil { 17310 var ID string 17311 err = json.Unmarshal(*v, &ID) 17312 if err != nil { 17313 return err 17314 } 17315 ssc.ID = &ID 17316 } 17317 case "name": 17318 if v != nil { 17319 var name string 17320 err = json.Unmarshal(*v, &name) 17321 if err != nil { 17322 return err 17323 } 17324 ssc.Name = &name 17325 } 17326 case "kind": 17327 if v != nil { 17328 var kind string 17329 err = json.Unmarshal(*v, &kind) 17330 if err != nil { 17331 return err 17332 } 17333 ssc.Kind = &kind 17334 } 17335 case "type": 17336 if v != nil { 17337 var typeVar string 17338 err = json.Unmarshal(*v, &typeVar) 17339 if err != nil { 17340 return err 17341 } 17342 ssc.Type = &typeVar 17343 } 17344 } 17345 } 17346 17347 return nil 17348} 17349 17350// SiteSourceControlProperties siteSourceControl resource specific properties 17351type SiteSourceControlProperties struct { 17352 // RepoURL - Repository or source control URL. 17353 RepoURL *string `json:"repoUrl,omitempty"` 17354 // Branch - Name of branch to use for deployment. 17355 Branch *string `json:"branch,omitempty"` 17356 // IsManualIntegration - <code>true</code> to limit to manual integration; <code>false</code> to enable continuous integration (which configures webhooks into online repos like GitHub). 17357 IsManualIntegration *bool `json:"isManualIntegration,omitempty"` 17358 // DeploymentRollbackEnabled - <code>true</code> to enable deployment rollback; otherwise, <code>false</code>. 17359 DeploymentRollbackEnabled *bool `json:"deploymentRollbackEnabled,omitempty"` 17360 // IsMercurial - <code>true</code> for a Mercurial repository; <code>false</code> for a Git repository. 17361 IsMercurial *bool `json:"isMercurial,omitempty"` 17362} 17363 17364// SkuCapacity description of the App Service plan scale options. 17365type SkuCapacity struct { 17366 // Minimum - Minimum number of workers for this App Service plan SKU. 17367 Minimum *int32 `json:"minimum,omitempty"` 17368 // Maximum - Maximum number of workers for this App Service plan SKU. 17369 Maximum *int32 `json:"maximum,omitempty"` 17370 // Default - Default number of workers for this App Service plan SKU. 17371 Default *int32 `json:"default,omitempty"` 17372 // ScaleType - Available scale configurations for an App Service plan. 17373 ScaleType *string `json:"scaleType,omitempty"` 17374} 17375 17376// SkuDescription description of a SKU for a scalable resource. 17377type SkuDescription struct { 17378 // Name - Name of the resource SKU. 17379 Name *string `json:"name,omitempty"` 17380 // Tier - Service tier of the resource SKU. 17381 Tier *string `json:"tier,omitempty"` 17382 // Size - Size specifier of the resource SKU. 17383 Size *string `json:"size,omitempty"` 17384 // Family - Family code of the resource SKU. 17385 Family *string `json:"family,omitempty"` 17386 // Capacity - Current number of instances assigned to the resource. 17387 Capacity *int32 `json:"capacity,omitempty"` 17388 // SkuCapacity - Min, max, and default scale values of the SKU. 17389 SkuCapacity *SkuCapacity `json:"skuCapacity,omitempty"` 17390 // Locations - Locations of the SKU. 17391 Locations *[]string `json:"locations,omitempty"` 17392 // Capabilities - Capabilities of the SKU, e.g., is traffic manager enabled? 17393 Capabilities *[]Capability `json:"capabilities,omitempty"` 17394} 17395 17396// SkuInfo SKU discovery information. 17397type SkuInfo struct { 17398 // ResourceType - Resource type that this SKU applies to. 17399 ResourceType *string `json:"resourceType,omitempty"` 17400 // Sku - Name and tier of the SKU. 17401 Sku *SkuDescription `json:"sku,omitempty"` 17402 // Capacity - Min, max, and default scale values of the SKU. 17403 Capacity *SkuCapacity `json:"capacity,omitempty"` 17404} 17405 17406// SkuInfoCollection collection of SKU information. 17407type SkuInfoCollection struct { 17408 autorest.Response `json:"-"` 17409 // Value - Collection of resources. 17410 Value *[]SkuInfo `json:"value,omitempty"` 17411 // NextLink - Link to next page of resources. 17412 NextLink *string `json:"nextLink,omitempty"` 17413} 17414 17415// SkuInfoCollectionIterator provides access to a complete listing of SkuInfo values. 17416type SkuInfoCollectionIterator struct { 17417 i int 17418 page SkuInfoCollectionPage 17419} 17420 17421// Next advances to the next value. If there was an error making 17422// the request the iterator does not advance and the error is returned. 17423func (iter *SkuInfoCollectionIterator) Next() error { 17424 iter.i++ 17425 if iter.i < len(iter.page.Values()) { 17426 return nil 17427 } 17428 err := iter.page.Next() 17429 if err != nil { 17430 iter.i-- 17431 return err 17432 } 17433 iter.i = 0 17434 return nil 17435} 17436 17437// NotDone returns true if the enumeration should be started or is not yet complete. 17438func (iter SkuInfoCollectionIterator) NotDone() bool { 17439 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 17440} 17441 17442// Response returns the raw server response from the last page request. 17443func (iter SkuInfoCollectionIterator) Response() SkuInfoCollection { 17444 return iter.page.Response() 17445} 17446 17447// Value returns the current value or a zero-initialized value if the 17448// iterator has advanced beyond the end of the collection. 17449func (iter SkuInfoCollectionIterator) Value() SkuInfo { 17450 if !iter.page.NotDone() { 17451 return SkuInfo{} 17452 } 17453 return iter.page.Values()[iter.i] 17454} 17455 17456// IsEmpty returns true if the ListResult contains no values. 17457func (sic SkuInfoCollection) IsEmpty() bool { 17458 return sic.Value == nil || len(*sic.Value) == 0 17459} 17460 17461// skuInfoCollectionPreparer prepares a request to retrieve the next set of results. 17462// It returns nil if no more results exist. 17463func (sic SkuInfoCollection) skuInfoCollectionPreparer() (*http.Request, error) { 17464 if sic.NextLink == nil || len(to.String(sic.NextLink)) < 1 { 17465 return nil, nil 17466 } 17467 return autorest.Prepare(&http.Request{}, 17468 autorest.AsJSON(), 17469 autorest.AsGet(), 17470 autorest.WithBaseURL(to.String(sic.NextLink))) 17471} 17472 17473// SkuInfoCollectionPage contains a page of SkuInfo values. 17474type SkuInfoCollectionPage struct { 17475 fn func(SkuInfoCollection) (SkuInfoCollection, error) 17476 sic SkuInfoCollection 17477} 17478 17479// Next advances to the next page of values. If there was an error making 17480// the request the page does not advance and the error is returned. 17481func (page *SkuInfoCollectionPage) Next() error { 17482 next, err := page.fn(page.sic) 17483 if err != nil { 17484 return err 17485 } 17486 page.sic = next 17487 return nil 17488} 17489 17490// NotDone returns true if the page enumeration should be started or is not yet complete. 17491func (page SkuInfoCollectionPage) NotDone() bool { 17492 return !page.sic.IsEmpty() 17493} 17494 17495// Response returns the raw server response from the last page request. 17496func (page SkuInfoCollectionPage) Response() SkuInfoCollection { 17497 return page.sic 17498} 17499 17500// Values returns the slice of values for the current page or nil if there are no values. 17501func (page SkuInfoCollectionPage) Values() []SkuInfo { 17502 if page.sic.IsEmpty() { 17503 return nil 17504 } 17505 return *page.sic.Value 17506} 17507 17508// SkuInfos collection of SKU information. 17509type SkuInfos struct { 17510 autorest.Response `json:"-"` 17511 // ResourceType - Resource type that this SKU applies to. 17512 ResourceType *string `json:"resourceType,omitempty"` 17513 // Skus - List of SKUs the subscription is able to use. 17514 Skus *[]GlobalCsmSkuDescription `json:"skus,omitempty"` 17515} 17516 17517// SlotConfigNames names for connection strings and application settings to be marked as sticky to the deployment 17518// slot and not moved during a swap operation. 17519// This is valid for all deployment slots in an app. 17520type SlotConfigNames struct { 17521 // ConnectionStringNames - List of connection string names. 17522 ConnectionStringNames *[]string `json:"connectionStringNames,omitempty"` 17523 // AppSettingNames - List of application settings names. 17524 AppSettingNames *[]string `json:"appSettingNames,omitempty"` 17525} 17526 17527// SlotConfigNamesResource slot Config names azure resource. 17528type SlotConfigNamesResource struct { 17529 autorest.Response `json:"-"` 17530 // SlotConfigNames - Core resource properties 17531 *SlotConfigNames `json:"properties,omitempty"` 17532 // ID - Resource Id. 17533 ID *string `json:"id,omitempty"` 17534 // Name - Resource Name. 17535 Name *string `json:"name,omitempty"` 17536 // Kind - Kind of resource. 17537 Kind *string `json:"kind,omitempty"` 17538 // Type - Resource type. 17539 Type *string `json:"type,omitempty"` 17540} 17541 17542// MarshalJSON is the custom marshaler for SlotConfigNamesResource. 17543func (scnr SlotConfigNamesResource) MarshalJSON() ([]byte, error) { 17544 objectMap := make(map[string]interface{}) 17545 if scnr.SlotConfigNames != nil { 17546 objectMap["properties"] = scnr.SlotConfigNames 17547 } 17548 if scnr.ID != nil { 17549 objectMap["id"] = scnr.ID 17550 } 17551 if scnr.Name != nil { 17552 objectMap["name"] = scnr.Name 17553 } 17554 if scnr.Kind != nil { 17555 objectMap["kind"] = scnr.Kind 17556 } 17557 if scnr.Type != nil { 17558 objectMap["type"] = scnr.Type 17559 } 17560 return json.Marshal(objectMap) 17561} 17562 17563// UnmarshalJSON is the custom unmarshaler for SlotConfigNamesResource struct. 17564func (scnr *SlotConfigNamesResource) UnmarshalJSON(body []byte) error { 17565 var m map[string]*json.RawMessage 17566 err := json.Unmarshal(body, &m) 17567 if err != nil { 17568 return err 17569 } 17570 for k, v := range m { 17571 switch k { 17572 case "properties": 17573 if v != nil { 17574 var slotConfigNames SlotConfigNames 17575 err = json.Unmarshal(*v, &slotConfigNames) 17576 if err != nil { 17577 return err 17578 } 17579 scnr.SlotConfigNames = &slotConfigNames 17580 } 17581 case "id": 17582 if v != nil { 17583 var ID string 17584 err = json.Unmarshal(*v, &ID) 17585 if err != nil { 17586 return err 17587 } 17588 scnr.ID = &ID 17589 } 17590 case "name": 17591 if v != nil { 17592 var name string 17593 err = json.Unmarshal(*v, &name) 17594 if err != nil { 17595 return err 17596 } 17597 scnr.Name = &name 17598 } 17599 case "kind": 17600 if v != nil { 17601 var kind string 17602 err = json.Unmarshal(*v, &kind) 17603 if err != nil { 17604 return err 17605 } 17606 scnr.Kind = &kind 17607 } 17608 case "type": 17609 if v != nil { 17610 var typeVar string 17611 err = json.Unmarshal(*v, &typeVar) 17612 if err != nil { 17613 return err 17614 } 17615 scnr.Type = &typeVar 17616 } 17617 } 17618 } 17619 17620 return nil 17621} 17622 17623// SlotDifference a setting difference between two deployment slots of an app. 17624type SlotDifference struct { 17625 // SlotDifferenceProperties - SlotDifference resource specific properties 17626 *SlotDifferenceProperties `json:"properties,omitempty"` 17627 // ID - Resource Id. 17628 ID *string `json:"id,omitempty"` 17629 // Name - Resource Name. 17630 Name *string `json:"name,omitempty"` 17631 // Kind - Kind of resource. 17632 Kind *string `json:"kind,omitempty"` 17633 // Type - Resource type. 17634 Type *string `json:"type,omitempty"` 17635} 17636 17637// MarshalJSON is the custom marshaler for SlotDifference. 17638func (sd SlotDifference) MarshalJSON() ([]byte, error) { 17639 objectMap := make(map[string]interface{}) 17640 if sd.SlotDifferenceProperties != nil { 17641 objectMap["properties"] = sd.SlotDifferenceProperties 17642 } 17643 if sd.ID != nil { 17644 objectMap["id"] = sd.ID 17645 } 17646 if sd.Name != nil { 17647 objectMap["name"] = sd.Name 17648 } 17649 if sd.Kind != nil { 17650 objectMap["kind"] = sd.Kind 17651 } 17652 if sd.Type != nil { 17653 objectMap["type"] = sd.Type 17654 } 17655 return json.Marshal(objectMap) 17656} 17657 17658// UnmarshalJSON is the custom unmarshaler for SlotDifference struct. 17659func (sd *SlotDifference) UnmarshalJSON(body []byte) error { 17660 var m map[string]*json.RawMessage 17661 err := json.Unmarshal(body, &m) 17662 if err != nil { 17663 return err 17664 } 17665 for k, v := range m { 17666 switch k { 17667 case "properties": 17668 if v != nil { 17669 var slotDifferenceProperties SlotDifferenceProperties 17670 err = json.Unmarshal(*v, &slotDifferenceProperties) 17671 if err != nil { 17672 return err 17673 } 17674 sd.SlotDifferenceProperties = &slotDifferenceProperties 17675 } 17676 case "id": 17677 if v != nil { 17678 var ID string 17679 err = json.Unmarshal(*v, &ID) 17680 if err != nil { 17681 return err 17682 } 17683 sd.ID = &ID 17684 } 17685 case "name": 17686 if v != nil { 17687 var name string 17688 err = json.Unmarshal(*v, &name) 17689 if err != nil { 17690 return err 17691 } 17692 sd.Name = &name 17693 } 17694 case "kind": 17695 if v != nil { 17696 var kind string 17697 err = json.Unmarshal(*v, &kind) 17698 if err != nil { 17699 return err 17700 } 17701 sd.Kind = &kind 17702 } 17703 case "type": 17704 if v != nil { 17705 var typeVar string 17706 err = json.Unmarshal(*v, &typeVar) 17707 if err != nil { 17708 return err 17709 } 17710 sd.Type = &typeVar 17711 } 17712 } 17713 } 17714 17715 return nil 17716} 17717 17718// SlotDifferenceCollection collection of slot differences. 17719type SlotDifferenceCollection struct { 17720 autorest.Response `json:"-"` 17721 // Value - Collection of resources. 17722 Value *[]SlotDifference `json:"value,omitempty"` 17723 // NextLink - Link to next page of resources. 17724 NextLink *string `json:"nextLink,omitempty"` 17725} 17726 17727// SlotDifferenceCollectionIterator provides access to a complete listing of SlotDifference values. 17728type SlotDifferenceCollectionIterator struct { 17729 i int 17730 page SlotDifferenceCollectionPage 17731} 17732 17733// Next advances to the next value. If there was an error making 17734// the request the iterator does not advance and the error is returned. 17735func (iter *SlotDifferenceCollectionIterator) Next() error { 17736 iter.i++ 17737 if iter.i < len(iter.page.Values()) { 17738 return nil 17739 } 17740 err := iter.page.Next() 17741 if err != nil { 17742 iter.i-- 17743 return err 17744 } 17745 iter.i = 0 17746 return nil 17747} 17748 17749// NotDone returns true if the enumeration should be started or is not yet complete. 17750func (iter SlotDifferenceCollectionIterator) NotDone() bool { 17751 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 17752} 17753 17754// Response returns the raw server response from the last page request. 17755func (iter SlotDifferenceCollectionIterator) Response() SlotDifferenceCollection { 17756 return iter.page.Response() 17757} 17758 17759// Value returns the current value or a zero-initialized value if the 17760// iterator has advanced beyond the end of the collection. 17761func (iter SlotDifferenceCollectionIterator) Value() SlotDifference { 17762 if !iter.page.NotDone() { 17763 return SlotDifference{} 17764 } 17765 return iter.page.Values()[iter.i] 17766} 17767 17768// IsEmpty returns true if the ListResult contains no values. 17769func (sdc SlotDifferenceCollection) IsEmpty() bool { 17770 return sdc.Value == nil || len(*sdc.Value) == 0 17771} 17772 17773// slotDifferenceCollectionPreparer prepares a request to retrieve the next set of results. 17774// It returns nil if no more results exist. 17775func (sdc SlotDifferenceCollection) slotDifferenceCollectionPreparer() (*http.Request, error) { 17776 if sdc.NextLink == nil || len(to.String(sdc.NextLink)) < 1 { 17777 return nil, nil 17778 } 17779 return autorest.Prepare(&http.Request{}, 17780 autorest.AsJSON(), 17781 autorest.AsGet(), 17782 autorest.WithBaseURL(to.String(sdc.NextLink))) 17783} 17784 17785// SlotDifferenceCollectionPage contains a page of SlotDifference values. 17786type SlotDifferenceCollectionPage struct { 17787 fn func(SlotDifferenceCollection) (SlotDifferenceCollection, error) 17788 sdc SlotDifferenceCollection 17789} 17790 17791// Next advances to the next page of values. If there was an error making 17792// the request the page does not advance and the error is returned. 17793func (page *SlotDifferenceCollectionPage) Next() error { 17794 next, err := page.fn(page.sdc) 17795 if err != nil { 17796 return err 17797 } 17798 page.sdc = next 17799 return nil 17800} 17801 17802// NotDone returns true if the page enumeration should be started or is not yet complete. 17803func (page SlotDifferenceCollectionPage) NotDone() bool { 17804 return !page.sdc.IsEmpty() 17805} 17806 17807// Response returns the raw server response from the last page request. 17808func (page SlotDifferenceCollectionPage) Response() SlotDifferenceCollection { 17809 return page.sdc 17810} 17811 17812// Values returns the slice of values for the current page or nil if there are no values. 17813func (page SlotDifferenceCollectionPage) Values() []SlotDifference { 17814 if page.sdc.IsEmpty() { 17815 return nil 17816 } 17817 return *page.sdc.Value 17818} 17819 17820// SlotDifferenceProperties slotDifference resource specific properties 17821type SlotDifferenceProperties struct { 17822 // Type - Type of the difference: Information, Warning or Error. 17823 Type *string `json:"type,omitempty"` 17824 // SettingType - The type of the setting: General, AppSetting or ConnectionString. 17825 SettingType *string `json:"settingType,omitempty"` 17826 // DiffRule - Rule that describes how to process the setting difference during a slot swap. 17827 DiffRule *string `json:"diffRule,omitempty"` 17828 // SettingName - Name of the setting. 17829 SettingName *string `json:"settingName,omitempty"` 17830 // ValueInCurrentSlot - Value of the setting in the current slot. 17831 ValueInCurrentSlot *string `json:"valueInCurrentSlot,omitempty"` 17832 // ValueInTargetSlot - Value of the setting in the target slot. 17833 ValueInTargetSlot *string `json:"valueInTargetSlot,omitempty"` 17834 // Description - Description of the setting difference. 17835 Description *string `json:"description,omitempty"` 17836} 17837 17838// SlotSwapStatus the status of the last successfull slot swap operation. 17839type SlotSwapStatus struct { 17840 // TimestampUtc - The time the last successful slot swap completed. 17841 TimestampUtc *date.Time `json:"timestampUtc,omitempty"` 17842 // SourceSlotName - The source slot of the last swap operation. 17843 SourceSlotName *string `json:"sourceSlotName,omitempty"` 17844 // DestinationSlotName - The destination slot of the last swap operation. 17845 DestinationSlotName *string `json:"destinationSlotName,omitempty"` 17846} 17847 17848// SlowRequestsBasedTrigger trigger based on request execution time. 17849type SlowRequestsBasedTrigger struct { 17850 // TimeTaken - Time taken. 17851 TimeTaken *string `json:"timeTaken,omitempty"` 17852 // Count - Request Count. 17853 Count *int32 `json:"count,omitempty"` 17854 // TimeInterval - Time interval. 17855 TimeInterval *string `json:"timeInterval,omitempty"` 17856} 17857 17858// Snapshot a snapshot of an app. 17859type Snapshot struct { 17860 // SnapshotProperties - Snapshot resource specific properties 17861 *SnapshotProperties `json:"properties,omitempty"` 17862 // ID - Resource Id. 17863 ID *string `json:"id,omitempty"` 17864 // Name - Resource Name. 17865 Name *string `json:"name,omitempty"` 17866 // Kind - Kind of resource. 17867 Kind *string `json:"kind,omitempty"` 17868 // Type - Resource type. 17869 Type *string `json:"type,omitempty"` 17870} 17871 17872// MarshalJSON is the custom marshaler for Snapshot. 17873func (s Snapshot) MarshalJSON() ([]byte, error) { 17874 objectMap := make(map[string]interface{}) 17875 if s.SnapshotProperties != nil { 17876 objectMap["properties"] = s.SnapshotProperties 17877 } 17878 if s.ID != nil { 17879 objectMap["id"] = s.ID 17880 } 17881 if s.Name != nil { 17882 objectMap["name"] = s.Name 17883 } 17884 if s.Kind != nil { 17885 objectMap["kind"] = s.Kind 17886 } 17887 if s.Type != nil { 17888 objectMap["type"] = s.Type 17889 } 17890 return json.Marshal(objectMap) 17891} 17892 17893// UnmarshalJSON is the custom unmarshaler for Snapshot struct. 17894func (s *Snapshot) UnmarshalJSON(body []byte) error { 17895 var m map[string]*json.RawMessage 17896 err := json.Unmarshal(body, &m) 17897 if err != nil { 17898 return err 17899 } 17900 for k, v := range m { 17901 switch k { 17902 case "properties": 17903 if v != nil { 17904 var snapshotProperties SnapshotProperties 17905 err = json.Unmarshal(*v, &snapshotProperties) 17906 if err != nil { 17907 return err 17908 } 17909 s.SnapshotProperties = &snapshotProperties 17910 } 17911 case "id": 17912 if v != nil { 17913 var ID string 17914 err = json.Unmarshal(*v, &ID) 17915 if err != nil { 17916 return err 17917 } 17918 s.ID = &ID 17919 } 17920 case "name": 17921 if v != nil { 17922 var name string 17923 err = json.Unmarshal(*v, &name) 17924 if err != nil { 17925 return err 17926 } 17927 s.Name = &name 17928 } 17929 case "kind": 17930 if v != nil { 17931 var kind string 17932 err = json.Unmarshal(*v, &kind) 17933 if err != nil { 17934 return err 17935 } 17936 s.Kind = &kind 17937 } 17938 case "type": 17939 if v != nil { 17940 var typeVar string 17941 err = json.Unmarshal(*v, &typeVar) 17942 if err != nil { 17943 return err 17944 } 17945 s.Type = &typeVar 17946 } 17947 } 17948 } 17949 17950 return nil 17951} 17952 17953// SnapshotCollection collection of snapshots which can be used to revert an app to a previous time. 17954type SnapshotCollection struct { 17955 autorest.Response `json:"-"` 17956 // Value - Collection of resources. 17957 Value *[]Snapshot `json:"value,omitempty"` 17958 // NextLink - Link to next page of resources. 17959 NextLink *string `json:"nextLink,omitempty"` 17960} 17961 17962// SnapshotCollectionIterator provides access to a complete listing of Snapshot values. 17963type SnapshotCollectionIterator struct { 17964 i int 17965 page SnapshotCollectionPage 17966} 17967 17968// Next advances to the next value. If there was an error making 17969// the request the iterator does not advance and the error is returned. 17970func (iter *SnapshotCollectionIterator) Next() error { 17971 iter.i++ 17972 if iter.i < len(iter.page.Values()) { 17973 return nil 17974 } 17975 err := iter.page.Next() 17976 if err != nil { 17977 iter.i-- 17978 return err 17979 } 17980 iter.i = 0 17981 return nil 17982} 17983 17984// NotDone returns true if the enumeration should be started or is not yet complete. 17985func (iter SnapshotCollectionIterator) NotDone() bool { 17986 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 17987} 17988 17989// Response returns the raw server response from the last page request. 17990func (iter SnapshotCollectionIterator) Response() SnapshotCollection { 17991 return iter.page.Response() 17992} 17993 17994// Value returns the current value or a zero-initialized value if the 17995// iterator has advanced beyond the end of the collection. 17996func (iter SnapshotCollectionIterator) Value() Snapshot { 17997 if !iter.page.NotDone() { 17998 return Snapshot{} 17999 } 18000 return iter.page.Values()[iter.i] 18001} 18002 18003// IsEmpty returns true if the ListResult contains no values. 18004func (sc SnapshotCollection) IsEmpty() bool { 18005 return sc.Value == nil || len(*sc.Value) == 0 18006} 18007 18008// snapshotCollectionPreparer prepares a request to retrieve the next set of results. 18009// It returns nil if no more results exist. 18010func (sc SnapshotCollection) snapshotCollectionPreparer() (*http.Request, error) { 18011 if sc.NextLink == nil || len(to.String(sc.NextLink)) < 1 { 18012 return nil, nil 18013 } 18014 return autorest.Prepare(&http.Request{}, 18015 autorest.AsJSON(), 18016 autorest.AsGet(), 18017 autorest.WithBaseURL(to.String(sc.NextLink))) 18018} 18019 18020// SnapshotCollectionPage contains a page of Snapshot values. 18021type SnapshotCollectionPage struct { 18022 fn func(SnapshotCollection) (SnapshotCollection, error) 18023 sc SnapshotCollection 18024} 18025 18026// Next advances to the next page of values. If there was an error making 18027// the request the page does not advance and the error is returned. 18028func (page *SnapshotCollectionPage) Next() error { 18029 next, err := page.fn(page.sc) 18030 if err != nil { 18031 return err 18032 } 18033 page.sc = next 18034 return nil 18035} 18036 18037// NotDone returns true if the page enumeration should be started or is not yet complete. 18038func (page SnapshotCollectionPage) NotDone() bool { 18039 return !page.sc.IsEmpty() 18040} 18041 18042// Response returns the raw server response from the last page request. 18043func (page SnapshotCollectionPage) Response() SnapshotCollection { 18044 return page.sc 18045} 18046 18047// Values returns the slice of values for the current page or nil if there are no values. 18048func (page SnapshotCollectionPage) Values() []Snapshot { 18049 if page.sc.IsEmpty() { 18050 return nil 18051 } 18052 return *page.sc.Value 18053} 18054 18055// SnapshotProperties snapshot resource specific properties 18056type SnapshotProperties struct { 18057 // Time - The time the snapshot was taken. 18058 Time *string `json:"time,omitempty"` 18059} 18060 18061// SnapshotRecoveryRequest details about app recovery operation. 18062type SnapshotRecoveryRequest struct { 18063 // SnapshotRecoveryRequestProperties - SnapshotRecoveryRequest resource specific properties 18064 *SnapshotRecoveryRequestProperties `json:"properties,omitempty"` 18065 // ID - Resource Id. 18066 ID *string `json:"id,omitempty"` 18067 // Name - Resource Name. 18068 Name *string `json:"name,omitempty"` 18069 // Kind - Kind of resource. 18070 Kind *string `json:"kind,omitempty"` 18071 // Type - Resource type. 18072 Type *string `json:"type,omitempty"` 18073} 18074 18075// MarshalJSON is the custom marshaler for SnapshotRecoveryRequest. 18076func (srr SnapshotRecoveryRequest) MarshalJSON() ([]byte, error) { 18077 objectMap := make(map[string]interface{}) 18078 if srr.SnapshotRecoveryRequestProperties != nil { 18079 objectMap["properties"] = srr.SnapshotRecoveryRequestProperties 18080 } 18081 if srr.ID != nil { 18082 objectMap["id"] = srr.ID 18083 } 18084 if srr.Name != nil { 18085 objectMap["name"] = srr.Name 18086 } 18087 if srr.Kind != nil { 18088 objectMap["kind"] = srr.Kind 18089 } 18090 if srr.Type != nil { 18091 objectMap["type"] = srr.Type 18092 } 18093 return json.Marshal(objectMap) 18094} 18095 18096// UnmarshalJSON is the custom unmarshaler for SnapshotRecoveryRequest struct. 18097func (srr *SnapshotRecoveryRequest) UnmarshalJSON(body []byte) error { 18098 var m map[string]*json.RawMessage 18099 err := json.Unmarshal(body, &m) 18100 if err != nil { 18101 return err 18102 } 18103 for k, v := range m { 18104 switch k { 18105 case "properties": 18106 if v != nil { 18107 var snapshotRecoveryRequestProperties SnapshotRecoveryRequestProperties 18108 err = json.Unmarshal(*v, &snapshotRecoveryRequestProperties) 18109 if err != nil { 18110 return err 18111 } 18112 srr.SnapshotRecoveryRequestProperties = &snapshotRecoveryRequestProperties 18113 } 18114 case "id": 18115 if v != nil { 18116 var ID string 18117 err = json.Unmarshal(*v, &ID) 18118 if err != nil { 18119 return err 18120 } 18121 srr.ID = &ID 18122 } 18123 case "name": 18124 if v != nil { 18125 var name string 18126 err = json.Unmarshal(*v, &name) 18127 if err != nil { 18128 return err 18129 } 18130 srr.Name = &name 18131 } 18132 case "kind": 18133 if v != nil { 18134 var kind string 18135 err = json.Unmarshal(*v, &kind) 18136 if err != nil { 18137 return err 18138 } 18139 srr.Kind = &kind 18140 } 18141 case "type": 18142 if v != nil { 18143 var typeVar string 18144 err = json.Unmarshal(*v, &typeVar) 18145 if err != nil { 18146 return err 18147 } 18148 srr.Type = &typeVar 18149 } 18150 } 18151 } 18152 18153 return nil 18154} 18155 18156// SnapshotRecoveryRequestProperties snapshotRecoveryRequest resource specific properties 18157type SnapshotRecoveryRequestProperties struct { 18158 // SnapshotTime - Point in time in which the app recovery should be attempted, formatted as a DateTime string. 18159 SnapshotTime *string `json:"snapshotTime,omitempty"` 18160 // RecoveryTarget - Specifies the web app that snapshot contents will be written to. 18161 RecoveryTarget *SnapshotRecoveryTarget `json:"recoveryTarget,omitempty"` 18162 // Overwrite - If <code>true</code> the recovery operation can overwrite source app; otherwise, <code>false</code>. 18163 Overwrite *bool `json:"overwrite,omitempty"` 18164 // RecoverConfiguration - If true, site configuration, in addition to content, will be reverted. 18165 RecoverConfiguration *bool `json:"recoverConfiguration,omitempty"` 18166 // IgnoreConflictingHostNames - If true, custom hostname conflicts will be ignored when recovering to a target web app. 18167 // This setting is only necessary when RecoverConfiguration is enabled. 18168 IgnoreConflictingHostNames *bool `json:"ignoreConflictingHostNames,omitempty"` 18169} 18170 18171// SnapshotRecoveryTarget specifies the web app that snapshot contents will be written to. 18172type SnapshotRecoveryTarget struct { 18173 // Location - Geographical location of the target web app, e.g. SouthEastAsia, SouthCentralUS 18174 Location *string `json:"location,omitempty"` 18175 // ID - ARM resource ID of the target app. 18176 // /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName} for production slots and 18177 // /subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slotName} for other slots. 18178 ID *string `json:"id,omitempty"` 18179} 18180 18181// Solution class Representing Solution for problems detected. 18182type Solution struct { 18183 // ID - Solution Id. 18184 ID *float64 `json:"id,omitempty"` 18185 // DisplayName - Display Name of the solution 18186 DisplayName *string `json:"displayName,omitempty"` 18187 // Order - Order of the solution. 18188 Order *float64 `json:"order,omitempty"` 18189 // Description - Description of the solution 18190 Description *string `json:"description,omitempty"` 18191 // Type - Type of Solution. Possible values include: 'QuickSolution', 'DeepInvestigation', 'BestPractices' 18192 Type SolutionType `json:"type,omitempty"` 18193 // Data - Solution Data. 18194 Data *[][]NameValuePair `json:"data,omitempty"` 18195 // Metadata - Solution Metadata. 18196 Metadata *[][]NameValuePair `json:"metadata,omitempty"` 18197} 18198 18199// SourceControl the source control OAuth token. 18200type SourceControl struct { 18201 autorest.Response `json:"-"` 18202 // SourceControlProperties - SourceControl resource specific properties 18203 *SourceControlProperties `json:"properties,omitempty"` 18204 // ID - Resource Id. 18205 ID *string `json:"id,omitempty"` 18206 // Name - Resource Name. 18207 Name *string `json:"name,omitempty"` 18208 // Kind - Kind of resource. 18209 Kind *string `json:"kind,omitempty"` 18210 // Type - Resource type. 18211 Type *string `json:"type,omitempty"` 18212} 18213 18214// MarshalJSON is the custom marshaler for SourceControl. 18215func (sc SourceControl) MarshalJSON() ([]byte, error) { 18216 objectMap := make(map[string]interface{}) 18217 if sc.SourceControlProperties != nil { 18218 objectMap["properties"] = sc.SourceControlProperties 18219 } 18220 if sc.ID != nil { 18221 objectMap["id"] = sc.ID 18222 } 18223 if sc.Name != nil { 18224 objectMap["name"] = sc.Name 18225 } 18226 if sc.Kind != nil { 18227 objectMap["kind"] = sc.Kind 18228 } 18229 if sc.Type != nil { 18230 objectMap["type"] = sc.Type 18231 } 18232 return json.Marshal(objectMap) 18233} 18234 18235// UnmarshalJSON is the custom unmarshaler for SourceControl struct. 18236func (sc *SourceControl) UnmarshalJSON(body []byte) error { 18237 var m map[string]*json.RawMessage 18238 err := json.Unmarshal(body, &m) 18239 if err != nil { 18240 return err 18241 } 18242 for k, v := range m { 18243 switch k { 18244 case "properties": 18245 if v != nil { 18246 var sourceControlProperties SourceControlProperties 18247 err = json.Unmarshal(*v, &sourceControlProperties) 18248 if err != nil { 18249 return err 18250 } 18251 sc.SourceControlProperties = &sourceControlProperties 18252 } 18253 case "id": 18254 if v != nil { 18255 var ID string 18256 err = json.Unmarshal(*v, &ID) 18257 if err != nil { 18258 return err 18259 } 18260 sc.ID = &ID 18261 } 18262 case "name": 18263 if v != nil { 18264 var name string 18265 err = json.Unmarshal(*v, &name) 18266 if err != nil { 18267 return err 18268 } 18269 sc.Name = &name 18270 } 18271 case "kind": 18272 if v != nil { 18273 var kind string 18274 err = json.Unmarshal(*v, &kind) 18275 if err != nil { 18276 return err 18277 } 18278 sc.Kind = &kind 18279 } 18280 case "type": 18281 if v != nil { 18282 var typeVar string 18283 err = json.Unmarshal(*v, &typeVar) 18284 if err != nil { 18285 return err 18286 } 18287 sc.Type = &typeVar 18288 } 18289 } 18290 } 18291 18292 return nil 18293} 18294 18295// SourceControlCollection collection of source controls. 18296type SourceControlCollection struct { 18297 autorest.Response `json:"-"` 18298 // Value - Collection of resources. 18299 Value *[]SourceControl `json:"value,omitempty"` 18300 // NextLink - Link to next page of resources. 18301 NextLink *string `json:"nextLink,omitempty"` 18302} 18303 18304// SourceControlCollectionIterator provides access to a complete listing of SourceControl values. 18305type SourceControlCollectionIterator struct { 18306 i int 18307 page SourceControlCollectionPage 18308} 18309 18310// Next advances to the next value. If there was an error making 18311// the request the iterator does not advance and the error is returned. 18312func (iter *SourceControlCollectionIterator) Next() error { 18313 iter.i++ 18314 if iter.i < len(iter.page.Values()) { 18315 return nil 18316 } 18317 err := iter.page.Next() 18318 if err != nil { 18319 iter.i-- 18320 return err 18321 } 18322 iter.i = 0 18323 return nil 18324} 18325 18326// NotDone returns true if the enumeration should be started or is not yet complete. 18327func (iter SourceControlCollectionIterator) NotDone() bool { 18328 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 18329} 18330 18331// Response returns the raw server response from the last page request. 18332func (iter SourceControlCollectionIterator) Response() SourceControlCollection { 18333 return iter.page.Response() 18334} 18335 18336// Value returns the current value or a zero-initialized value if the 18337// iterator has advanced beyond the end of the collection. 18338func (iter SourceControlCollectionIterator) Value() SourceControl { 18339 if !iter.page.NotDone() { 18340 return SourceControl{} 18341 } 18342 return iter.page.Values()[iter.i] 18343} 18344 18345// IsEmpty returns true if the ListResult contains no values. 18346func (scc SourceControlCollection) IsEmpty() bool { 18347 return scc.Value == nil || len(*scc.Value) == 0 18348} 18349 18350// sourceControlCollectionPreparer prepares a request to retrieve the next set of results. 18351// It returns nil if no more results exist. 18352func (scc SourceControlCollection) sourceControlCollectionPreparer() (*http.Request, error) { 18353 if scc.NextLink == nil || len(to.String(scc.NextLink)) < 1 { 18354 return nil, nil 18355 } 18356 return autorest.Prepare(&http.Request{}, 18357 autorest.AsJSON(), 18358 autorest.AsGet(), 18359 autorest.WithBaseURL(to.String(scc.NextLink))) 18360} 18361 18362// SourceControlCollectionPage contains a page of SourceControl values. 18363type SourceControlCollectionPage struct { 18364 fn func(SourceControlCollection) (SourceControlCollection, error) 18365 scc SourceControlCollection 18366} 18367 18368// Next advances to the next page of values. If there was an error making 18369// the request the page does not advance and the error is returned. 18370func (page *SourceControlCollectionPage) Next() error { 18371 next, err := page.fn(page.scc) 18372 if err != nil { 18373 return err 18374 } 18375 page.scc = next 18376 return nil 18377} 18378 18379// NotDone returns true if the page enumeration should be started or is not yet complete. 18380func (page SourceControlCollectionPage) NotDone() bool { 18381 return !page.scc.IsEmpty() 18382} 18383 18384// Response returns the raw server response from the last page request. 18385func (page SourceControlCollectionPage) Response() SourceControlCollection { 18386 return page.scc 18387} 18388 18389// Values returns the slice of values for the current page or nil if there are no values. 18390func (page SourceControlCollectionPage) Values() []SourceControl { 18391 if page.scc.IsEmpty() { 18392 return nil 18393 } 18394 return *page.scc.Value 18395} 18396 18397// SourceControlProperties sourceControl resource specific properties 18398type SourceControlProperties struct { 18399 // Name - Name or source control type. 18400 Name *string `json:"name,omitempty"` 18401 // Token - OAuth access token. 18402 Token *string `json:"token,omitempty"` 18403 // TokenSecret - OAuth access token secret. 18404 TokenSecret *string `json:"tokenSecret,omitempty"` 18405 // RefreshToken - OAuth refresh token. 18406 RefreshToken *string `json:"refreshToken,omitempty"` 18407 // ExpirationTime - OAuth token expiration. 18408 ExpirationTime *date.Time `json:"expirationTime,omitempty"` 18409} 18410 18411// StackMajorVersion application stack major version. 18412type StackMajorVersion struct { 18413 // DisplayVersion - Application stack major version (display only). 18414 DisplayVersion *string `json:"displayVersion,omitempty"` 18415 // RuntimeVersion - Application stack major version (runtime only). 18416 RuntimeVersion *string `json:"runtimeVersion,omitempty"` 18417 // IsDefault - <code>true</code> if this is the default major version; otherwise, <code>false</code>. 18418 IsDefault *bool `json:"isDefault,omitempty"` 18419 // MinorVersions - Minor versions associated with the major version. 18420 MinorVersions *[]StackMinorVersion `json:"minorVersions,omitempty"` 18421} 18422 18423// StackMinorVersion application stack minor version. 18424type StackMinorVersion struct { 18425 // DisplayVersion - Application stack minor version (display only). 18426 DisplayVersion *string `json:"displayVersion,omitempty"` 18427 // RuntimeVersion - Application stack minor version (runtime only). 18428 RuntimeVersion *string `json:"runtimeVersion,omitempty"` 18429 // IsDefault - <code>true</code> if this is the default minor version; otherwise, <code>false</code>. 18430 IsDefault *bool `json:"isDefault,omitempty"` 18431} 18432 18433// StampCapacity stamp capacity information. 18434type StampCapacity struct { 18435 // Name - Name of the stamp. 18436 Name *string `json:"name,omitempty"` 18437 // AvailableCapacity - Available capacity (# of machines, bytes of storage etc...). 18438 AvailableCapacity *int64 `json:"availableCapacity,omitempty"` 18439 // TotalCapacity - Total capacity (# of machines, bytes of storage etc...). 18440 TotalCapacity *int64 `json:"totalCapacity,omitempty"` 18441 // Unit - Name of the unit. 18442 Unit *string `json:"unit,omitempty"` 18443 // ComputeMode - Shared/dedicated workers. Possible values include: 'ComputeModeOptionsShared', 'ComputeModeOptionsDedicated', 'ComputeModeOptionsDynamic' 18444 ComputeMode ComputeModeOptions `json:"computeMode,omitempty"` 18445 // WorkerSize - Size of the machines. Possible values include: 'Default', 'Small', 'Medium', 'Large', 'D1', 'D2', 'D3' 18446 WorkerSize WorkerSizeOptions `json:"workerSize,omitempty"` 18447 // WorkerSizeID - Size ID of machines: 18448 // 0 - Small 18449 // 1 - Medium 18450 // 2 - Large 18451 WorkerSizeID *int32 `json:"workerSizeId,omitempty"` 18452 // ExcludeFromCapacityAllocation - If <code>true</code>, it includes basic apps. 18453 // Basic apps are not used for capacity allocation. 18454 ExcludeFromCapacityAllocation *bool `json:"excludeFromCapacityAllocation,omitempty"` 18455 // IsApplicableForAllComputeModes - <code>true</code> if capacity is applicable for all apps; otherwise, <code>false</code>. 18456 IsApplicableForAllComputeModes *bool `json:"isApplicableForAllComputeModes,omitempty"` 18457 // SiteMode - Shared or Dedicated. 18458 SiteMode *string `json:"siteMode,omitempty"` 18459} 18460 18461// StampCapacityCollection collection of stamp capacities. 18462type StampCapacityCollection struct { 18463 autorest.Response `json:"-"` 18464 // Value - Collection of resources. 18465 Value *[]StampCapacity `json:"value,omitempty"` 18466 // NextLink - Link to next page of resources. 18467 NextLink *string `json:"nextLink,omitempty"` 18468} 18469 18470// StampCapacityCollectionIterator provides access to a complete listing of StampCapacity values. 18471type StampCapacityCollectionIterator struct { 18472 i int 18473 page StampCapacityCollectionPage 18474} 18475 18476// Next advances to the next value. If there was an error making 18477// the request the iterator does not advance and the error is returned. 18478func (iter *StampCapacityCollectionIterator) Next() error { 18479 iter.i++ 18480 if iter.i < len(iter.page.Values()) { 18481 return nil 18482 } 18483 err := iter.page.Next() 18484 if err != nil { 18485 iter.i-- 18486 return err 18487 } 18488 iter.i = 0 18489 return nil 18490} 18491 18492// NotDone returns true if the enumeration should be started or is not yet complete. 18493func (iter StampCapacityCollectionIterator) NotDone() bool { 18494 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 18495} 18496 18497// Response returns the raw server response from the last page request. 18498func (iter StampCapacityCollectionIterator) Response() StampCapacityCollection { 18499 return iter.page.Response() 18500} 18501 18502// Value returns the current value or a zero-initialized value if the 18503// iterator has advanced beyond the end of the collection. 18504func (iter StampCapacityCollectionIterator) Value() StampCapacity { 18505 if !iter.page.NotDone() { 18506 return StampCapacity{} 18507 } 18508 return iter.page.Values()[iter.i] 18509} 18510 18511// IsEmpty returns true if the ListResult contains no values. 18512func (scc StampCapacityCollection) IsEmpty() bool { 18513 return scc.Value == nil || len(*scc.Value) == 0 18514} 18515 18516// stampCapacityCollectionPreparer prepares a request to retrieve the next set of results. 18517// It returns nil if no more results exist. 18518func (scc StampCapacityCollection) stampCapacityCollectionPreparer() (*http.Request, error) { 18519 if scc.NextLink == nil || len(to.String(scc.NextLink)) < 1 { 18520 return nil, nil 18521 } 18522 return autorest.Prepare(&http.Request{}, 18523 autorest.AsJSON(), 18524 autorest.AsGet(), 18525 autorest.WithBaseURL(to.String(scc.NextLink))) 18526} 18527 18528// StampCapacityCollectionPage contains a page of StampCapacity values. 18529type StampCapacityCollectionPage struct { 18530 fn func(StampCapacityCollection) (StampCapacityCollection, error) 18531 scc StampCapacityCollection 18532} 18533 18534// Next advances to the next page of values. If there was an error making 18535// the request the page does not advance and the error is returned. 18536func (page *StampCapacityCollectionPage) Next() error { 18537 next, err := page.fn(page.scc) 18538 if err != nil { 18539 return err 18540 } 18541 page.scc = next 18542 return nil 18543} 18544 18545// NotDone returns true if the page enumeration should be started or is not yet complete. 18546func (page StampCapacityCollectionPage) NotDone() bool { 18547 return !page.scc.IsEmpty() 18548} 18549 18550// Response returns the raw server response from the last page request. 18551func (page StampCapacityCollectionPage) Response() StampCapacityCollection { 18552 return page.scc 18553} 18554 18555// Values returns the slice of values for the current page or nil if there are no values. 18556func (page StampCapacityCollectionPage) Values() []StampCapacity { 18557 if page.scc.IsEmpty() { 18558 return nil 18559 } 18560 return *page.scc.Value 18561} 18562 18563// StatusCodesBasedTrigger trigger based on status code. 18564type StatusCodesBasedTrigger struct { 18565 // Status - HTTP status code. 18566 Status *int32 `json:"status,omitempty"` 18567 // SubStatus - Request Sub Status. 18568 SubStatus *int32 `json:"subStatus,omitempty"` 18569 // Win32Status - Win32 error code. 18570 Win32Status *int32 `json:"win32Status,omitempty"` 18571 // Count - Request Count. 18572 Count *int32 `json:"count,omitempty"` 18573 // TimeInterval - Time interval. 18574 TimeInterval *string `json:"timeInterval,omitempty"` 18575} 18576 18577// StorageMigrationOptions options for app content migration. 18578type StorageMigrationOptions struct { 18579 // StorageMigrationOptionsProperties - StorageMigrationOptions resource specific properties 18580 *StorageMigrationOptionsProperties `json:"properties,omitempty"` 18581 // ID - Resource Id. 18582 ID *string `json:"id,omitempty"` 18583 // Name - Resource Name. 18584 Name *string `json:"name,omitempty"` 18585 // Kind - Kind of resource. 18586 Kind *string `json:"kind,omitempty"` 18587 // Type - Resource type. 18588 Type *string `json:"type,omitempty"` 18589} 18590 18591// MarshalJSON is the custom marshaler for StorageMigrationOptions. 18592func (smo StorageMigrationOptions) MarshalJSON() ([]byte, error) { 18593 objectMap := make(map[string]interface{}) 18594 if smo.StorageMigrationOptionsProperties != nil { 18595 objectMap["properties"] = smo.StorageMigrationOptionsProperties 18596 } 18597 if smo.ID != nil { 18598 objectMap["id"] = smo.ID 18599 } 18600 if smo.Name != nil { 18601 objectMap["name"] = smo.Name 18602 } 18603 if smo.Kind != nil { 18604 objectMap["kind"] = smo.Kind 18605 } 18606 if smo.Type != nil { 18607 objectMap["type"] = smo.Type 18608 } 18609 return json.Marshal(objectMap) 18610} 18611 18612// UnmarshalJSON is the custom unmarshaler for StorageMigrationOptions struct. 18613func (smo *StorageMigrationOptions) UnmarshalJSON(body []byte) error { 18614 var m map[string]*json.RawMessage 18615 err := json.Unmarshal(body, &m) 18616 if err != nil { 18617 return err 18618 } 18619 for k, v := range m { 18620 switch k { 18621 case "properties": 18622 if v != nil { 18623 var storageMigrationOptionsProperties StorageMigrationOptionsProperties 18624 err = json.Unmarshal(*v, &storageMigrationOptionsProperties) 18625 if err != nil { 18626 return err 18627 } 18628 smo.StorageMigrationOptionsProperties = &storageMigrationOptionsProperties 18629 } 18630 case "id": 18631 if v != nil { 18632 var ID string 18633 err = json.Unmarshal(*v, &ID) 18634 if err != nil { 18635 return err 18636 } 18637 smo.ID = &ID 18638 } 18639 case "name": 18640 if v != nil { 18641 var name string 18642 err = json.Unmarshal(*v, &name) 18643 if err != nil { 18644 return err 18645 } 18646 smo.Name = &name 18647 } 18648 case "kind": 18649 if v != nil { 18650 var kind string 18651 err = json.Unmarshal(*v, &kind) 18652 if err != nil { 18653 return err 18654 } 18655 smo.Kind = &kind 18656 } 18657 case "type": 18658 if v != nil { 18659 var typeVar string 18660 err = json.Unmarshal(*v, &typeVar) 18661 if err != nil { 18662 return err 18663 } 18664 smo.Type = &typeVar 18665 } 18666 } 18667 } 18668 18669 return nil 18670} 18671 18672// StorageMigrationOptionsProperties storageMigrationOptions resource specific properties 18673type StorageMigrationOptionsProperties struct { 18674 // AzurefilesConnectionString - AzureFiles connection string. 18675 AzurefilesConnectionString *string `json:"azurefilesConnectionString,omitempty"` 18676 // AzurefilesShare - AzureFiles share. 18677 AzurefilesShare *string `json:"azurefilesShare,omitempty"` 18678 // SwitchSiteAfterMigration - <code>true</code>if the app should be switched over; otherwise, <code>false</code>. 18679 SwitchSiteAfterMigration *bool `json:"switchSiteAfterMigration,omitempty"` 18680 // BlockWriteAccessToSite - <code>true</code> if the app should be read only during copy operation; otherwise, <code>false</code>. 18681 BlockWriteAccessToSite *bool `json:"blockWriteAccessToSite,omitempty"` 18682} 18683 18684// StorageMigrationResponse response for a migration of app content request. 18685type StorageMigrationResponse struct { 18686 autorest.Response `json:"-"` 18687 // StorageMigrationResponseProperties - StorageMigrationResponse resource specific properties 18688 *StorageMigrationResponseProperties `json:"properties,omitempty"` 18689 // ID - Resource Id. 18690 ID *string `json:"id,omitempty"` 18691 // Name - Resource Name. 18692 Name *string `json:"name,omitempty"` 18693 // Kind - Kind of resource. 18694 Kind *string `json:"kind,omitempty"` 18695 // Type - Resource type. 18696 Type *string `json:"type,omitempty"` 18697} 18698 18699// MarshalJSON is the custom marshaler for StorageMigrationResponse. 18700func (smr StorageMigrationResponse) MarshalJSON() ([]byte, error) { 18701 objectMap := make(map[string]interface{}) 18702 if smr.StorageMigrationResponseProperties != nil { 18703 objectMap["properties"] = smr.StorageMigrationResponseProperties 18704 } 18705 if smr.ID != nil { 18706 objectMap["id"] = smr.ID 18707 } 18708 if smr.Name != nil { 18709 objectMap["name"] = smr.Name 18710 } 18711 if smr.Kind != nil { 18712 objectMap["kind"] = smr.Kind 18713 } 18714 if smr.Type != nil { 18715 objectMap["type"] = smr.Type 18716 } 18717 return json.Marshal(objectMap) 18718} 18719 18720// UnmarshalJSON is the custom unmarshaler for StorageMigrationResponse struct. 18721func (smr *StorageMigrationResponse) UnmarshalJSON(body []byte) error { 18722 var m map[string]*json.RawMessage 18723 err := json.Unmarshal(body, &m) 18724 if err != nil { 18725 return err 18726 } 18727 for k, v := range m { 18728 switch k { 18729 case "properties": 18730 if v != nil { 18731 var storageMigrationResponseProperties StorageMigrationResponseProperties 18732 err = json.Unmarshal(*v, &storageMigrationResponseProperties) 18733 if err != nil { 18734 return err 18735 } 18736 smr.StorageMigrationResponseProperties = &storageMigrationResponseProperties 18737 } 18738 case "id": 18739 if v != nil { 18740 var ID string 18741 err = json.Unmarshal(*v, &ID) 18742 if err != nil { 18743 return err 18744 } 18745 smr.ID = &ID 18746 } 18747 case "name": 18748 if v != nil { 18749 var name string 18750 err = json.Unmarshal(*v, &name) 18751 if err != nil { 18752 return err 18753 } 18754 smr.Name = &name 18755 } 18756 case "kind": 18757 if v != nil { 18758 var kind string 18759 err = json.Unmarshal(*v, &kind) 18760 if err != nil { 18761 return err 18762 } 18763 smr.Kind = &kind 18764 } 18765 case "type": 18766 if v != nil { 18767 var typeVar string 18768 err = json.Unmarshal(*v, &typeVar) 18769 if err != nil { 18770 return err 18771 } 18772 smr.Type = &typeVar 18773 } 18774 } 18775 } 18776 18777 return nil 18778} 18779 18780// StorageMigrationResponseProperties storageMigrationResponse resource specific properties 18781type StorageMigrationResponseProperties struct { 18782 // OperationID - When server starts the migration process, it will return an operation ID identifying that particular migration operation. 18783 OperationID *string `json:"operationId,omitempty"` 18784} 18785 18786// String ... 18787type String struct { 18788 autorest.Response `json:"-"` 18789 Value *string `json:"value,omitempty"` 18790} 18791 18792// StringDictionary string dictionary resource. 18793type StringDictionary struct { 18794 autorest.Response `json:"-"` 18795 // Properties - Settings. 18796 Properties map[string]*string `json:"properties"` 18797 // ID - Resource Id. 18798 ID *string `json:"id,omitempty"` 18799 // Name - Resource Name. 18800 Name *string `json:"name,omitempty"` 18801 // Kind - Kind of resource. 18802 Kind *string `json:"kind,omitempty"` 18803 // Type - Resource type. 18804 Type *string `json:"type,omitempty"` 18805} 18806 18807// MarshalJSON is the custom marshaler for StringDictionary. 18808func (sd StringDictionary) MarshalJSON() ([]byte, error) { 18809 objectMap := make(map[string]interface{}) 18810 if sd.Properties != nil { 18811 objectMap["properties"] = sd.Properties 18812 } 18813 if sd.ID != nil { 18814 objectMap["id"] = sd.ID 18815 } 18816 if sd.Name != nil { 18817 objectMap["name"] = sd.Name 18818 } 18819 if sd.Kind != nil { 18820 objectMap["kind"] = sd.Kind 18821 } 18822 if sd.Type != nil { 18823 objectMap["type"] = sd.Type 18824 } 18825 return json.Marshal(objectMap) 18826} 18827 18828// TldLegalAgreement legal agreement for a top level domain. 18829type TldLegalAgreement struct { 18830 // AgreementKey - Unique identifier for the agreement. 18831 AgreementKey *string `json:"agreementKey,omitempty"` 18832 // Title - Agreement title. 18833 Title *string `json:"title,omitempty"` 18834 // Content - Agreement details. 18835 Content *string `json:"content,omitempty"` 18836 // URL - URL where a copy of the agreement details is hosted. 18837 URL *string `json:"url,omitempty"` 18838} 18839 18840// TldLegalAgreementCollection collection of top-level domain legal agreements. 18841type TldLegalAgreementCollection struct { 18842 autorest.Response `json:"-"` 18843 // Value - Collection of resources. 18844 Value *[]TldLegalAgreement `json:"value,omitempty"` 18845 // NextLink - Link to next page of resources. 18846 NextLink *string `json:"nextLink,omitempty"` 18847} 18848 18849// TldLegalAgreementCollectionIterator provides access to a complete listing of TldLegalAgreement values. 18850type TldLegalAgreementCollectionIterator struct { 18851 i int 18852 page TldLegalAgreementCollectionPage 18853} 18854 18855// Next advances to the next value. If there was an error making 18856// the request the iterator does not advance and the error is returned. 18857func (iter *TldLegalAgreementCollectionIterator) Next() error { 18858 iter.i++ 18859 if iter.i < len(iter.page.Values()) { 18860 return nil 18861 } 18862 err := iter.page.Next() 18863 if err != nil { 18864 iter.i-- 18865 return err 18866 } 18867 iter.i = 0 18868 return nil 18869} 18870 18871// NotDone returns true if the enumeration should be started or is not yet complete. 18872func (iter TldLegalAgreementCollectionIterator) NotDone() bool { 18873 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 18874} 18875 18876// Response returns the raw server response from the last page request. 18877func (iter TldLegalAgreementCollectionIterator) Response() TldLegalAgreementCollection { 18878 return iter.page.Response() 18879} 18880 18881// Value returns the current value or a zero-initialized value if the 18882// iterator has advanced beyond the end of the collection. 18883func (iter TldLegalAgreementCollectionIterator) Value() TldLegalAgreement { 18884 if !iter.page.NotDone() { 18885 return TldLegalAgreement{} 18886 } 18887 return iter.page.Values()[iter.i] 18888} 18889 18890// IsEmpty returns true if the ListResult contains no values. 18891func (tlac TldLegalAgreementCollection) IsEmpty() bool { 18892 return tlac.Value == nil || len(*tlac.Value) == 0 18893} 18894 18895// tldLegalAgreementCollectionPreparer prepares a request to retrieve the next set of results. 18896// It returns nil if no more results exist. 18897func (tlac TldLegalAgreementCollection) tldLegalAgreementCollectionPreparer() (*http.Request, error) { 18898 if tlac.NextLink == nil || len(to.String(tlac.NextLink)) < 1 { 18899 return nil, nil 18900 } 18901 return autorest.Prepare(&http.Request{}, 18902 autorest.AsJSON(), 18903 autorest.AsGet(), 18904 autorest.WithBaseURL(to.String(tlac.NextLink))) 18905} 18906 18907// TldLegalAgreementCollectionPage contains a page of TldLegalAgreement values. 18908type TldLegalAgreementCollectionPage struct { 18909 fn func(TldLegalAgreementCollection) (TldLegalAgreementCollection, error) 18910 tlac TldLegalAgreementCollection 18911} 18912 18913// Next advances to the next page of values. If there was an error making 18914// the request the page does not advance and the error is returned. 18915func (page *TldLegalAgreementCollectionPage) Next() error { 18916 next, err := page.fn(page.tlac) 18917 if err != nil { 18918 return err 18919 } 18920 page.tlac = next 18921 return nil 18922} 18923 18924// NotDone returns true if the page enumeration should be started or is not yet complete. 18925func (page TldLegalAgreementCollectionPage) NotDone() bool { 18926 return !page.tlac.IsEmpty() 18927} 18928 18929// Response returns the raw server response from the last page request. 18930func (page TldLegalAgreementCollectionPage) Response() TldLegalAgreementCollection { 18931 return page.tlac 18932} 18933 18934// Values returns the slice of values for the current page or nil if there are no values. 18935func (page TldLegalAgreementCollectionPage) Values() []TldLegalAgreement { 18936 if page.tlac.IsEmpty() { 18937 return nil 18938 } 18939 return *page.tlac.Value 18940} 18941 18942// TopLevelDomain a top level domain object. 18943type TopLevelDomain struct { 18944 autorest.Response `json:"-"` 18945 // TopLevelDomainProperties - TopLevelDomain resource specific properties 18946 *TopLevelDomainProperties `json:"properties,omitempty"` 18947 // ID - Resource Id. 18948 ID *string `json:"id,omitempty"` 18949 // Name - Resource Name. 18950 Name *string `json:"name,omitempty"` 18951 // Kind - Kind of resource. 18952 Kind *string `json:"kind,omitempty"` 18953 // Type - Resource type. 18954 Type *string `json:"type,omitempty"` 18955} 18956 18957// MarshalJSON is the custom marshaler for TopLevelDomain. 18958func (tld TopLevelDomain) MarshalJSON() ([]byte, error) { 18959 objectMap := make(map[string]interface{}) 18960 if tld.TopLevelDomainProperties != nil { 18961 objectMap["properties"] = tld.TopLevelDomainProperties 18962 } 18963 if tld.ID != nil { 18964 objectMap["id"] = tld.ID 18965 } 18966 if tld.Name != nil { 18967 objectMap["name"] = tld.Name 18968 } 18969 if tld.Kind != nil { 18970 objectMap["kind"] = tld.Kind 18971 } 18972 if tld.Type != nil { 18973 objectMap["type"] = tld.Type 18974 } 18975 return json.Marshal(objectMap) 18976} 18977 18978// UnmarshalJSON is the custom unmarshaler for TopLevelDomain struct. 18979func (tld *TopLevelDomain) UnmarshalJSON(body []byte) error { 18980 var m map[string]*json.RawMessage 18981 err := json.Unmarshal(body, &m) 18982 if err != nil { 18983 return err 18984 } 18985 for k, v := range m { 18986 switch k { 18987 case "properties": 18988 if v != nil { 18989 var topLevelDomainProperties TopLevelDomainProperties 18990 err = json.Unmarshal(*v, &topLevelDomainProperties) 18991 if err != nil { 18992 return err 18993 } 18994 tld.TopLevelDomainProperties = &topLevelDomainProperties 18995 } 18996 case "id": 18997 if v != nil { 18998 var ID string 18999 err = json.Unmarshal(*v, &ID) 19000 if err != nil { 19001 return err 19002 } 19003 tld.ID = &ID 19004 } 19005 case "name": 19006 if v != nil { 19007 var name string 19008 err = json.Unmarshal(*v, &name) 19009 if err != nil { 19010 return err 19011 } 19012 tld.Name = &name 19013 } 19014 case "kind": 19015 if v != nil { 19016 var kind string 19017 err = json.Unmarshal(*v, &kind) 19018 if err != nil { 19019 return err 19020 } 19021 tld.Kind = &kind 19022 } 19023 case "type": 19024 if v != nil { 19025 var typeVar string 19026 err = json.Unmarshal(*v, &typeVar) 19027 if err != nil { 19028 return err 19029 } 19030 tld.Type = &typeVar 19031 } 19032 } 19033 } 19034 19035 return nil 19036} 19037 19038// TopLevelDomainAgreementOption options for retrieving the list of top level domain legal agreements. 19039type TopLevelDomainAgreementOption struct { 19040 // IncludePrivacy - If <code>true</code>, then the list of agreements will include agreements for domain privacy as well; otherwise, <code>false</code>. 19041 IncludePrivacy *bool `json:"includePrivacy,omitempty"` 19042 // ForTransfer - If <code>true</code>, then the list of agreements will include agreements for domain transfer as well; otherwise, <code>false</code>. 19043 ForTransfer *bool `json:"forTransfer,omitempty"` 19044} 19045 19046// TopLevelDomainCollection collection of Top-level domains. 19047type TopLevelDomainCollection struct { 19048 autorest.Response `json:"-"` 19049 // Value - Collection of resources. 19050 Value *[]TopLevelDomain `json:"value,omitempty"` 19051 // NextLink - Link to next page of resources. 19052 NextLink *string `json:"nextLink,omitempty"` 19053} 19054 19055// TopLevelDomainCollectionIterator provides access to a complete listing of TopLevelDomain values. 19056type TopLevelDomainCollectionIterator struct { 19057 i int 19058 page TopLevelDomainCollectionPage 19059} 19060 19061// Next advances to the next value. If there was an error making 19062// the request the iterator does not advance and the error is returned. 19063func (iter *TopLevelDomainCollectionIterator) Next() error { 19064 iter.i++ 19065 if iter.i < len(iter.page.Values()) { 19066 return nil 19067 } 19068 err := iter.page.Next() 19069 if err != nil { 19070 iter.i-- 19071 return err 19072 } 19073 iter.i = 0 19074 return nil 19075} 19076 19077// NotDone returns true if the enumeration should be started or is not yet complete. 19078func (iter TopLevelDomainCollectionIterator) NotDone() bool { 19079 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 19080} 19081 19082// Response returns the raw server response from the last page request. 19083func (iter TopLevelDomainCollectionIterator) Response() TopLevelDomainCollection { 19084 return iter.page.Response() 19085} 19086 19087// Value returns the current value or a zero-initialized value if the 19088// iterator has advanced beyond the end of the collection. 19089func (iter TopLevelDomainCollectionIterator) Value() TopLevelDomain { 19090 if !iter.page.NotDone() { 19091 return TopLevelDomain{} 19092 } 19093 return iter.page.Values()[iter.i] 19094} 19095 19096// IsEmpty returns true if the ListResult contains no values. 19097func (tldc TopLevelDomainCollection) IsEmpty() bool { 19098 return tldc.Value == nil || len(*tldc.Value) == 0 19099} 19100 19101// topLevelDomainCollectionPreparer prepares a request to retrieve the next set of results. 19102// It returns nil if no more results exist. 19103func (tldc TopLevelDomainCollection) topLevelDomainCollectionPreparer() (*http.Request, error) { 19104 if tldc.NextLink == nil || len(to.String(tldc.NextLink)) < 1 { 19105 return nil, nil 19106 } 19107 return autorest.Prepare(&http.Request{}, 19108 autorest.AsJSON(), 19109 autorest.AsGet(), 19110 autorest.WithBaseURL(to.String(tldc.NextLink))) 19111} 19112 19113// TopLevelDomainCollectionPage contains a page of TopLevelDomain values. 19114type TopLevelDomainCollectionPage struct { 19115 fn func(TopLevelDomainCollection) (TopLevelDomainCollection, error) 19116 tldc TopLevelDomainCollection 19117} 19118 19119// Next advances to the next page of values. If there was an error making 19120// the request the page does not advance and the error is returned. 19121func (page *TopLevelDomainCollectionPage) Next() error { 19122 next, err := page.fn(page.tldc) 19123 if err != nil { 19124 return err 19125 } 19126 page.tldc = next 19127 return nil 19128} 19129 19130// NotDone returns true if the page enumeration should be started or is not yet complete. 19131func (page TopLevelDomainCollectionPage) NotDone() bool { 19132 return !page.tldc.IsEmpty() 19133} 19134 19135// Response returns the raw server response from the last page request. 19136func (page TopLevelDomainCollectionPage) Response() TopLevelDomainCollection { 19137 return page.tldc 19138} 19139 19140// Values returns the slice of values for the current page or nil if there are no values. 19141func (page TopLevelDomainCollectionPage) Values() []TopLevelDomain { 19142 if page.tldc.IsEmpty() { 19143 return nil 19144 } 19145 return *page.tldc.Value 19146} 19147 19148// TopLevelDomainProperties topLevelDomain resource specific properties 19149type TopLevelDomainProperties struct { 19150 // DomainName - Name of the top level domain. 19151 DomainName *string `json:"name,omitempty"` 19152 // Privacy - If <code>true</code>, then the top level domain supports domain privacy; otherwise, <code>false</code>. 19153 Privacy *bool `json:"privacy,omitempty"` 19154} 19155 19156// TriggeredJobHistory triggered Web Job History. List of Triggered Web Job Run Information elements. 19157type TriggeredJobHistory struct { 19158 autorest.Response `json:"-"` 19159 // TriggeredJobHistoryProperties - TriggeredJobHistory resource specific properties 19160 *TriggeredJobHistoryProperties `json:"properties,omitempty"` 19161 // ID - Resource Id. 19162 ID *string `json:"id,omitempty"` 19163 // Name - Resource Name. 19164 Name *string `json:"name,omitempty"` 19165 // Kind - Kind of resource. 19166 Kind *string `json:"kind,omitempty"` 19167 // Type - Resource type. 19168 Type *string `json:"type,omitempty"` 19169} 19170 19171// MarshalJSON is the custom marshaler for TriggeredJobHistory. 19172func (tjh TriggeredJobHistory) MarshalJSON() ([]byte, error) { 19173 objectMap := make(map[string]interface{}) 19174 if tjh.TriggeredJobHistoryProperties != nil { 19175 objectMap["properties"] = tjh.TriggeredJobHistoryProperties 19176 } 19177 if tjh.ID != nil { 19178 objectMap["id"] = tjh.ID 19179 } 19180 if tjh.Name != nil { 19181 objectMap["name"] = tjh.Name 19182 } 19183 if tjh.Kind != nil { 19184 objectMap["kind"] = tjh.Kind 19185 } 19186 if tjh.Type != nil { 19187 objectMap["type"] = tjh.Type 19188 } 19189 return json.Marshal(objectMap) 19190} 19191 19192// UnmarshalJSON is the custom unmarshaler for TriggeredJobHistory struct. 19193func (tjh *TriggeredJobHistory) 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 triggeredJobHistoryProperties TriggeredJobHistoryProperties 19204 err = json.Unmarshal(*v, &triggeredJobHistoryProperties) 19205 if err != nil { 19206 return err 19207 } 19208 tjh.TriggeredJobHistoryProperties = &triggeredJobHistoryProperties 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 tjh.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 tjh.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 tjh.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 tjh.Type = &typeVar 19245 } 19246 } 19247 } 19248 19249 return nil 19250} 19251 19252// TriggeredJobHistoryCollection collection of Kudu continuous web job information elements. 19253type TriggeredJobHistoryCollection struct { 19254 autorest.Response `json:"-"` 19255 // Value - Collection of resources. 19256 Value *[]TriggeredJobHistory `json:"value,omitempty"` 19257 // NextLink - Link to next page of resources. 19258 NextLink *string `json:"nextLink,omitempty"` 19259} 19260 19261// TriggeredJobHistoryCollectionIterator provides access to a complete listing of TriggeredJobHistory values. 19262type TriggeredJobHistoryCollectionIterator struct { 19263 i int 19264 page TriggeredJobHistoryCollectionPage 19265} 19266 19267// Next advances to the next value. If there was an error making 19268// the request the iterator does not advance and the error is returned. 19269func (iter *TriggeredJobHistoryCollectionIterator) Next() error { 19270 iter.i++ 19271 if iter.i < len(iter.page.Values()) { 19272 return nil 19273 } 19274 err := iter.page.Next() 19275 if err != nil { 19276 iter.i-- 19277 return err 19278 } 19279 iter.i = 0 19280 return nil 19281} 19282 19283// NotDone returns true if the enumeration should be started or is not yet complete. 19284func (iter TriggeredJobHistoryCollectionIterator) NotDone() bool { 19285 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 19286} 19287 19288// Response returns the raw server response from the last page request. 19289func (iter TriggeredJobHistoryCollectionIterator) Response() TriggeredJobHistoryCollection { 19290 return iter.page.Response() 19291} 19292 19293// Value returns the current value or a zero-initialized value if the 19294// iterator has advanced beyond the end of the collection. 19295func (iter TriggeredJobHistoryCollectionIterator) Value() TriggeredJobHistory { 19296 if !iter.page.NotDone() { 19297 return TriggeredJobHistory{} 19298 } 19299 return iter.page.Values()[iter.i] 19300} 19301 19302// IsEmpty returns true if the ListResult contains no values. 19303func (tjhc TriggeredJobHistoryCollection) IsEmpty() bool { 19304 return tjhc.Value == nil || len(*tjhc.Value) == 0 19305} 19306 19307// triggeredJobHistoryCollectionPreparer prepares a request to retrieve the next set of results. 19308// It returns nil if no more results exist. 19309func (tjhc TriggeredJobHistoryCollection) triggeredJobHistoryCollectionPreparer() (*http.Request, error) { 19310 if tjhc.NextLink == nil || len(to.String(tjhc.NextLink)) < 1 { 19311 return nil, nil 19312 } 19313 return autorest.Prepare(&http.Request{}, 19314 autorest.AsJSON(), 19315 autorest.AsGet(), 19316 autorest.WithBaseURL(to.String(tjhc.NextLink))) 19317} 19318 19319// TriggeredJobHistoryCollectionPage contains a page of TriggeredJobHistory values. 19320type TriggeredJobHistoryCollectionPage struct { 19321 fn func(TriggeredJobHistoryCollection) (TriggeredJobHistoryCollection, error) 19322 tjhc TriggeredJobHistoryCollection 19323} 19324 19325// Next advances to the next page of values. If there was an error making 19326// the request the page does not advance and the error is returned. 19327func (page *TriggeredJobHistoryCollectionPage) Next() error { 19328 next, err := page.fn(page.tjhc) 19329 if err != nil { 19330 return err 19331 } 19332 page.tjhc = next 19333 return nil 19334} 19335 19336// NotDone returns true if the page enumeration should be started or is not yet complete. 19337func (page TriggeredJobHistoryCollectionPage) NotDone() bool { 19338 return !page.tjhc.IsEmpty() 19339} 19340 19341// Response returns the raw server response from the last page request. 19342func (page TriggeredJobHistoryCollectionPage) Response() TriggeredJobHistoryCollection { 19343 return page.tjhc 19344} 19345 19346// Values returns the slice of values for the current page or nil if there are no values. 19347func (page TriggeredJobHistoryCollectionPage) Values() []TriggeredJobHistory { 19348 if page.tjhc.IsEmpty() { 19349 return nil 19350 } 19351 return *page.tjhc.Value 19352} 19353 19354// TriggeredJobHistoryProperties triggeredJobHistory resource specific properties 19355type TriggeredJobHistoryProperties struct { 19356 // TriggeredJobRuns - List of triggered web job runs. 19357 TriggeredJobRuns *[]TriggeredJobRun `json:"triggeredJobRuns,omitempty"` 19358} 19359 19360// TriggeredJobRun triggered Web Job Run Information. 19361type TriggeredJobRun struct { 19362 // TriggeredJobRunProperties - TriggeredJobRun resource specific properties 19363 *TriggeredJobRunProperties `json:"properties,omitempty"` 19364 // ID - Resource Id. 19365 ID *string `json:"id,omitempty"` 19366 // Name - Resource Name. 19367 Name *string `json:"name,omitempty"` 19368 // Kind - Kind of resource. 19369 Kind *string `json:"kind,omitempty"` 19370 // Type - Resource type. 19371 Type *string `json:"type,omitempty"` 19372} 19373 19374// MarshalJSON is the custom marshaler for TriggeredJobRun. 19375func (tjr TriggeredJobRun) MarshalJSON() ([]byte, error) { 19376 objectMap := make(map[string]interface{}) 19377 if tjr.TriggeredJobRunProperties != nil { 19378 objectMap["properties"] = tjr.TriggeredJobRunProperties 19379 } 19380 if tjr.ID != nil { 19381 objectMap["id"] = tjr.ID 19382 } 19383 if tjr.Name != nil { 19384 objectMap["name"] = tjr.Name 19385 } 19386 if tjr.Kind != nil { 19387 objectMap["kind"] = tjr.Kind 19388 } 19389 if tjr.Type != nil { 19390 objectMap["type"] = tjr.Type 19391 } 19392 return json.Marshal(objectMap) 19393} 19394 19395// UnmarshalJSON is the custom unmarshaler for TriggeredJobRun struct. 19396func (tjr *TriggeredJobRun) UnmarshalJSON(body []byte) error { 19397 var m map[string]*json.RawMessage 19398 err := json.Unmarshal(body, &m) 19399 if err != nil { 19400 return err 19401 } 19402 for k, v := range m { 19403 switch k { 19404 case "properties": 19405 if v != nil { 19406 var triggeredJobRunProperties TriggeredJobRunProperties 19407 err = json.Unmarshal(*v, &triggeredJobRunProperties) 19408 if err != nil { 19409 return err 19410 } 19411 tjr.TriggeredJobRunProperties = &triggeredJobRunProperties 19412 } 19413 case "id": 19414 if v != nil { 19415 var ID string 19416 err = json.Unmarshal(*v, &ID) 19417 if err != nil { 19418 return err 19419 } 19420 tjr.ID = &ID 19421 } 19422 case "name": 19423 if v != nil { 19424 var name string 19425 err = json.Unmarshal(*v, &name) 19426 if err != nil { 19427 return err 19428 } 19429 tjr.Name = &name 19430 } 19431 case "kind": 19432 if v != nil { 19433 var kind string 19434 err = json.Unmarshal(*v, &kind) 19435 if err != nil { 19436 return err 19437 } 19438 tjr.Kind = &kind 19439 } 19440 case "type": 19441 if v != nil { 19442 var typeVar string 19443 err = json.Unmarshal(*v, &typeVar) 19444 if err != nil { 19445 return err 19446 } 19447 tjr.Type = &typeVar 19448 } 19449 } 19450 } 19451 19452 return nil 19453} 19454 19455// TriggeredJobRunProperties triggeredJobRun resource specific properties 19456type TriggeredJobRunProperties struct { 19457 // ID - Job ID. 19458 ID *string `json:"id,omitempty"` 19459 // Name - Job name. 19460 Name *string `json:"name,omitempty"` 19461 // Status - Job status. Possible values include: 'TriggeredWebJobStatusSuccess', 'TriggeredWebJobStatusFailed', 'TriggeredWebJobStatusError' 19462 Status TriggeredWebJobStatus `json:"status,omitempty"` 19463 // StartTime - Start time. 19464 StartTime *date.Time `json:"startTime,omitempty"` 19465 // EndTime - End time. 19466 EndTime *date.Time `json:"endTime,omitempty"` 19467 // Duration - Job duration. 19468 Duration *string `json:"duration,omitempty"` 19469 // OutputURL - Output URL. 19470 OutputURL *string `json:"outputUrl,omitempty"` 19471 // ErrorURL - Error URL. 19472 ErrorURL *string `json:"errorUrl,omitempty"` 19473 // URL - Job URL. 19474 URL *string `json:"url,omitempty"` 19475 // JobName - Job name. 19476 JobName *string `json:"jobName,omitempty"` 19477 // Trigger - Job trigger. 19478 Trigger *string `json:"trigger,omitempty"` 19479} 19480 19481// TriggeredWebJob triggered Web Job Information. 19482type TriggeredWebJob struct { 19483 autorest.Response `json:"-"` 19484 // TriggeredWebJobProperties - TriggeredWebJob resource specific properties 19485 *TriggeredWebJobProperties `json:"properties,omitempty"` 19486 // ID - Resource Id. 19487 ID *string `json:"id,omitempty"` 19488 // Name - Resource Name. 19489 Name *string `json:"name,omitempty"` 19490 // Kind - Kind of resource. 19491 Kind *string `json:"kind,omitempty"` 19492 // Type - Resource type. 19493 Type *string `json:"type,omitempty"` 19494} 19495 19496// MarshalJSON is the custom marshaler for TriggeredWebJob. 19497func (twj TriggeredWebJob) MarshalJSON() ([]byte, error) { 19498 objectMap := make(map[string]interface{}) 19499 if twj.TriggeredWebJobProperties != nil { 19500 objectMap["properties"] = twj.TriggeredWebJobProperties 19501 } 19502 if twj.ID != nil { 19503 objectMap["id"] = twj.ID 19504 } 19505 if twj.Name != nil { 19506 objectMap["name"] = twj.Name 19507 } 19508 if twj.Kind != nil { 19509 objectMap["kind"] = twj.Kind 19510 } 19511 if twj.Type != nil { 19512 objectMap["type"] = twj.Type 19513 } 19514 return json.Marshal(objectMap) 19515} 19516 19517// UnmarshalJSON is the custom unmarshaler for TriggeredWebJob struct. 19518func (twj *TriggeredWebJob) UnmarshalJSON(body []byte) error { 19519 var m map[string]*json.RawMessage 19520 err := json.Unmarshal(body, &m) 19521 if err != nil { 19522 return err 19523 } 19524 for k, v := range m { 19525 switch k { 19526 case "properties": 19527 if v != nil { 19528 var triggeredWebJobProperties TriggeredWebJobProperties 19529 err = json.Unmarshal(*v, &triggeredWebJobProperties) 19530 if err != nil { 19531 return err 19532 } 19533 twj.TriggeredWebJobProperties = &triggeredWebJobProperties 19534 } 19535 case "id": 19536 if v != nil { 19537 var ID string 19538 err = json.Unmarshal(*v, &ID) 19539 if err != nil { 19540 return err 19541 } 19542 twj.ID = &ID 19543 } 19544 case "name": 19545 if v != nil { 19546 var name string 19547 err = json.Unmarshal(*v, &name) 19548 if err != nil { 19549 return err 19550 } 19551 twj.Name = &name 19552 } 19553 case "kind": 19554 if v != nil { 19555 var kind string 19556 err = json.Unmarshal(*v, &kind) 19557 if err != nil { 19558 return err 19559 } 19560 twj.Kind = &kind 19561 } 19562 case "type": 19563 if v != nil { 19564 var typeVar string 19565 err = json.Unmarshal(*v, &typeVar) 19566 if err != nil { 19567 return err 19568 } 19569 twj.Type = &typeVar 19570 } 19571 } 19572 } 19573 19574 return nil 19575} 19576 19577// TriggeredWebJobCollection collection of Kudu continuous web job information elements. 19578type TriggeredWebJobCollection struct { 19579 autorest.Response `json:"-"` 19580 // Value - Collection of resources. 19581 Value *[]TriggeredWebJob `json:"value,omitempty"` 19582 // NextLink - Link to next page of resources. 19583 NextLink *string `json:"nextLink,omitempty"` 19584} 19585 19586// TriggeredWebJobCollectionIterator provides access to a complete listing of TriggeredWebJob values. 19587type TriggeredWebJobCollectionIterator struct { 19588 i int 19589 page TriggeredWebJobCollectionPage 19590} 19591 19592// Next advances to the next value. If there was an error making 19593// the request the iterator does not advance and the error is returned. 19594func (iter *TriggeredWebJobCollectionIterator) Next() error { 19595 iter.i++ 19596 if iter.i < len(iter.page.Values()) { 19597 return nil 19598 } 19599 err := iter.page.Next() 19600 if err != nil { 19601 iter.i-- 19602 return err 19603 } 19604 iter.i = 0 19605 return nil 19606} 19607 19608// NotDone returns true if the enumeration should be started or is not yet complete. 19609func (iter TriggeredWebJobCollectionIterator) NotDone() bool { 19610 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 19611} 19612 19613// Response returns the raw server response from the last page request. 19614func (iter TriggeredWebJobCollectionIterator) Response() TriggeredWebJobCollection { 19615 return iter.page.Response() 19616} 19617 19618// Value returns the current value or a zero-initialized value if the 19619// iterator has advanced beyond the end of the collection. 19620func (iter TriggeredWebJobCollectionIterator) Value() TriggeredWebJob { 19621 if !iter.page.NotDone() { 19622 return TriggeredWebJob{} 19623 } 19624 return iter.page.Values()[iter.i] 19625} 19626 19627// IsEmpty returns true if the ListResult contains no values. 19628func (twjc TriggeredWebJobCollection) IsEmpty() bool { 19629 return twjc.Value == nil || len(*twjc.Value) == 0 19630} 19631 19632// triggeredWebJobCollectionPreparer prepares a request to retrieve the next set of results. 19633// It returns nil if no more results exist. 19634func (twjc TriggeredWebJobCollection) triggeredWebJobCollectionPreparer() (*http.Request, error) { 19635 if twjc.NextLink == nil || len(to.String(twjc.NextLink)) < 1 { 19636 return nil, nil 19637 } 19638 return autorest.Prepare(&http.Request{}, 19639 autorest.AsJSON(), 19640 autorest.AsGet(), 19641 autorest.WithBaseURL(to.String(twjc.NextLink))) 19642} 19643 19644// TriggeredWebJobCollectionPage contains a page of TriggeredWebJob values. 19645type TriggeredWebJobCollectionPage struct { 19646 fn func(TriggeredWebJobCollection) (TriggeredWebJobCollection, error) 19647 twjc TriggeredWebJobCollection 19648} 19649 19650// Next advances to the next page of values. If there was an error making 19651// the request the page does not advance and the error is returned. 19652func (page *TriggeredWebJobCollectionPage) Next() error { 19653 next, err := page.fn(page.twjc) 19654 if err != nil { 19655 return err 19656 } 19657 page.twjc = next 19658 return nil 19659} 19660 19661// NotDone returns true if the page enumeration should be started or is not yet complete. 19662func (page TriggeredWebJobCollectionPage) NotDone() bool { 19663 return !page.twjc.IsEmpty() 19664} 19665 19666// Response returns the raw server response from the last page request. 19667func (page TriggeredWebJobCollectionPage) Response() TriggeredWebJobCollection { 19668 return page.twjc 19669} 19670 19671// Values returns the slice of values for the current page or nil if there are no values. 19672func (page TriggeredWebJobCollectionPage) Values() []TriggeredWebJob { 19673 if page.twjc.IsEmpty() { 19674 return nil 19675 } 19676 return *page.twjc.Value 19677} 19678 19679// TriggeredWebJobProperties triggeredWebJob resource specific properties 19680type TriggeredWebJobProperties struct { 19681 // LatestRun - Latest job run information. 19682 LatestRun *TriggeredJobRun `json:"latestRun,omitempty"` 19683 // HistoryURL - History URL. 19684 HistoryURL *string `json:"historyUrl,omitempty"` 19685 // SchedulerLogsURL - Scheduler Logs URL. 19686 SchedulerLogsURL *string `json:"schedulerLogsUrl,omitempty"` 19687 // Name - Job name. Used as job identifier in ARM resource URI. 19688 Name *string `json:"name,omitempty"` 19689 // RunCommand - Run command. 19690 RunCommand *string `json:"runCommand,omitempty"` 19691 // URL - Job URL. 19692 URL *string `json:"url,omitempty"` 19693 // ExtraInfoURL - Extra Info URL. 19694 ExtraInfoURL *string `json:"extraInfoUrl,omitempty"` 19695 // JobType - Job type. Possible values include: 'Continuous', 'Triggered' 19696 JobType JobType `json:"jobType,omitempty"` 19697 // Error - Error information. 19698 Error *string `json:"error,omitempty"` 19699 // UsingSdk - Using SDK? 19700 UsingSdk *bool `json:"usingSdk,omitempty"` 19701 // Settings - Job settings. 19702 Settings map[string]interface{} `json:"settings"` 19703} 19704 19705// MarshalJSON is the custom marshaler for TriggeredWebJobProperties. 19706func (twj TriggeredWebJobProperties) MarshalJSON() ([]byte, error) { 19707 objectMap := make(map[string]interface{}) 19708 if twj.LatestRun != nil { 19709 objectMap["latestRun"] = twj.LatestRun 19710 } 19711 if twj.HistoryURL != nil { 19712 objectMap["historyUrl"] = twj.HistoryURL 19713 } 19714 if twj.SchedulerLogsURL != nil { 19715 objectMap["schedulerLogsUrl"] = twj.SchedulerLogsURL 19716 } 19717 if twj.Name != nil { 19718 objectMap["name"] = twj.Name 19719 } 19720 if twj.RunCommand != nil { 19721 objectMap["runCommand"] = twj.RunCommand 19722 } 19723 if twj.URL != nil { 19724 objectMap["url"] = twj.URL 19725 } 19726 if twj.ExtraInfoURL != nil { 19727 objectMap["extraInfoUrl"] = twj.ExtraInfoURL 19728 } 19729 if twj.JobType != "" { 19730 objectMap["jobType"] = twj.JobType 19731 } 19732 if twj.Error != nil { 19733 objectMap["error"] = twj.Error 19734 } 19735 if twj.UsingSdk != nil { 19736 objectMap["usingSdk"] = twj.UsingSdk 19737 } 19738 if twj.Settings != nil { 19739 objectMap["settings"] = twj.Settings 19740 } 19741 return json.Marshal(objectMap) 19742} 19743 19744// Usage usage of the quota resource. 19745type Usage struct { 19746 // UsageProperties - Usage resource specific properties 19747 *UsageProperties `json:"properties,omitempty"` 19748 // ID - Resource Id. 19749 ID *string `json:"id,omitempty"` 19750 // Name - Resource Name. 19751 Name *string `json:"name,omitempty"` 19752 // Kind - Kind of resource. 19753 Kind *string `json:"kind,omitempty"` 19754 // Type - Resource type. 19755 Type *string `json:"type,omitempty"` 19756} 19757 19758// MarshalJSON is the custom marshaler for Usage. 19759func (u Usage) MarshalJSON() ([]byte, error) { 19760 objectMap := make(map[string]interface{}) 19761 if u.UsageProperties != nil { 19762 objectMap["properties"] = u.UsageProperties 19763 } 19764 if u.ID != nil { 19765 objectMap["id"] = u.ID 19766 } 19767 if u.Name != nil { 19768 objectMap["name"] = u.Name 19769 } 19770 if u.Kind != nil { 19771 objectMap["kind"] = u.Kind 19772 } 19773 if u.Type != nil { 19774 objectMap["type"] = u.Type 19775 } 19776 return json.Marshal(objectMap) 19777} 19778 19779// UnmarshalJSON is the custom unmarshaler for Usage struct. 19780func (u *Usage) UnmarshalJSON(body []byte) error { 19781 var m map[string]*json.RawMessage 19782 err := json.Unmarshal(body, &m) 19783 if err != nil { 19784 return err 19785 } 19786 for k, v := range m { 19787 switch k { 19788 case "properties": 19789 if v != nil { 19790 var usageProperties UsageProperties 19791 err = json.Unmarshal(*v, &usageProperties) 19792 if err != nil { 19793 return err 19794 } 19795 u.UsageProperties = &usageProperties 19796 } 19797 case "id": 19798 if v != nil { 19799 var ID string 19800 err = json.Unmarshal(*v, &ID) 19801 if err != nil { 19802 return err 19803 } 19804 u.ID = &ID 19805 } 19806 case "name": 19807 if v != nil { 19808 var name string 19809 err = json.Unmarshal(*v, &name) 19810 if err != nil { 19811 return err 19812 } 19813 u.Name = &name 19814 } 19815 case "kind": 19816 if v != nil { 19817 var kind string 19818 err = json.Unmarshal(*v, &kind) 19819 if err != nil { 19820 return err 19821 } 19822 u.Kind = &kind 19823 } 19824 case "type": 19825 if v != nil { 19826 var typeVar string 19827 err = json.Unmarshal(*v, &typeVar) 19828 if err != nil { 19829 return err 19830 } 19831 u.Type = &typeVar 19832 } 19833 } 19834 } 19835 19836 return nil 19837} 19838 19839// UsageCollection collection of usages. 19840type UsageCollection struct { 19841 autorest.Response `json:"-"` 19842 // Value - Collection of resources. 19843 Value *[]Usage `json:"value,omitempty"` 19844 // NextLink - Link to next page of resources. 19845 NextLink *string `json:"nextLink,omitempty"` 19846} 19847 19848// UsageCollectionIterator provides access to a complete listing of Usage values. 19849type UsageCollectionIterator struct { 19850 i int 19851 page UsageCollectionPage 19852} 19853 19854// Next advances to the next value. If there was an error making 19855// the request the iterator does not advance and the error is returned. 19856func (iter *UsageCollectionIterator) Next() error { 19857 iter.i++ 19858 if iter.i < len(iter.page.Values()) { 19859 return nil 19860 } 19861 err := iter.page.Next() 19862 if err != nil { 19863 iter.i-- 19864 return err 19865 } 19866 iter.i = 0 19867 return nil 19868} 19869 19870// NotDone returns true if the enumeration should be started or is not yet complete. 19871func (iter UsageCollectionIterator) NotDone() bool { 19872 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 19873} 19874 19875// Response returns the raw server response from the last page request. 19876func (iter UsageCollectionIterator) Response() UsageCollection { 19877 return iter.page.Response() 19878} 19879 19880// Value returns the current value or a zero-initialized value if the 19881// iterator has advanced beyond the end of the collection. 19882func (iter UsageCollectionIterator) Value() Usage { 19883 if !iter.page.NotDone() { 19884 return Usage{} 19885 } 19886 return iter.page.Values()[iter.i] 19887} 19888 19889// IsEmpty returns true if the ListResult contains no values. 19890func (uc UsageCollection) IsEmpty() bool { 19891 return uc.Value == nil || len(*uc.Value) == 0 19892} 19893 19894// usageCollectionPreparer prepares a request to retrieve the next set of results. 19895// It returns nil if no more results exist. 19896func (uc UsageCollection) usageCollectionPreparer() (*http.Request, error) { 19897 if uc.NextLink == nil || len(to.String(uc.NextLink)) < 1 { 19898 return nil, nil 19899 } 19900 return autorest.Prepare(&http.Request{}, 19901 autorest.AsJSON(), 19902 autorest.AsGet(), 19903 autorest.WithBaseURL(to.String(uc.NextLink))) 19904} 19905 19906// UsageCollectionPage contains a page of Usage values. 19907type UsageCollectionPage struct { 19908 fn func(UsageCollection) (UsageCollection, error) 19909 uc UsageCollection 19910} 19911 19912// Next advances to the next page of values. If there was an error making 19913// the request the page does not advance and the error is returned. 19914func (page *UsageCollectionPage) Next() error { 19915 next, err := page.fn(page.uc) 19916 if err != nil { 19917 return err 19918 } 19919 page.uc = next 19920 return nil 19921} 19922 19923// NotDone returns true if the page enumeration should be started or is not yet complete. 19924func (page UsageCollectionPage) NotDone() bool { 19925 return !page.uc.IsEmpty() 19926} 19927 19928// Response returns the raw server response from the last page request. 19929func (page UsageCollectionPage) Response() UsageCollection { 19930 return page.uc 19931} 19932 19933// Values returns the slice of values for the current page or nil if there are no values. 19934func (page UsageCollectionPage) Values() []Usage { 19935 if page.uc.IsEmpty() { 19936 return nil 19937 } 19938 return *page.uc.Value 19939} 19940 19941// UsageProperties usage resource specific properties 19942type UsageProperties struct { 19943 // DisplayName - Friendly name shown in the UI. 19944 DisplayName *string `json:"displayName,omitempty"` 19945 // Name - Name of the quota. 19946 Name *string `json:"name,omitempty"` 19947 // ResourceName - Name of the quota resource. 19948 ResourceName *string `json:"resourceName,omitempty"` 19949 // Unit - Units of measurement for the quota resource. 19950 Unit *string `json:"unit,omitempty"` 19951 // CurrentValue - The current value of the resource counter. 19952 CurrentValue *int64 `json:"currentValue,omitempty"` 19953 // Limit - The resource limit. 19954 Limit *int64 `json:"limit,omitempty"` 19955 // NextResetTime - Next reset time for the resource counter. 19956 NextResetTime *date.Time `json:"nextResetTime,omitempty"` 19957 // ComputeMode - Compute mode used for this usage. Possible values include: 'ComputeModeOptionsShared', 'ComputeModeOptionsDedicated', 'ComputeModeOptionsDynamic' 19958 ComputeMode ComputeModeOptions `json:"computeMode,omitempty"` 19959 // SiteMode - Site mode used for this usage. 19960 SiteMode *string `json:"siteMode,omitempty"` 19961} 19962 19963// User user crendentials used for publishing activity. 19964type User struct { 19965 autorest.Response `json:"-"` 19966 // UserProperties - User resource specific properties 19967 *UserProperties `json:"properties,omitempty"` 19968 // ID - Resource Id. 19969 ID *string `json:"id,omitempty"` 19970 // Name - Resource Name. 19971 Name *string `json:"name,omitempty"` 19972 // Kind - Kind of resource. 19973 Kind *string `json:"kind,omitempty"` 19974 // Type - Resource type. 19975 Type *string `json:"type,omitempty"` 19976} 19977 19978// MarshalJSON is the custom marshaler for User. 19979func (u User) MarshalJSON() ([]byte, error) { 19980 objectMap := make(map[string]interface{}) 19981 if u.UserProperties != nil { 19982 objectMap["properties"] = u.UserProperties 19983 } 19984 if u.ID != nil { 19985 objectMap["id"] = u.ID 19986 } 19987 if u.Name != nil { 19988 objectMap["name"] = u.Name 19989 } 19990 if u.Kind != nil { 19991 objectMap["kind"] = u.Kind 19992 } 19993 if u.Type != nil { 19994 objectMap["type"] = u.Type 19995 } 19996 return json.Marshal(objectMap) 19997} 19998 19999// UnmarshalJSON is the custom unmarshaler for User struct. 20000func (u *User) UnmarshalJSON(body []byte) error { 20001 var m map[string]*json.RawMessage 20002 err := json.Unmarshal(body, &m) 20003 if err != nil { 20004 return err 20005 } 20006 for k, v := range m { 20007 switch k { 20008 case "properties": 20009 if v != nil { 20010 var userProperties UserProperties 20011 err = json.Unmarshal(*v, &userProperties) 20012 if err != nil { 20013 return err 20014 } 20015 u.UserProperties = &userProperties 20016 } 20017 case "id": 20018 if v != nil { 20019 var ID string 20020 err = json.Unmarshal(*v, &ID) 20021 if err != nil { 20022 return err 20023 } 20024 u.ID = &ID 20025 } 20026 case "name": 20027 if v != nil { 20028 var name string 20029 err = json.Unmarshal(*v, &name) 20030 if err != nil { 20031 return err 20032 } 20033 u.Name = &name 20034 } 20035 case "kind": 20036 if v != nil { 20037 var kind string 20038 err = json.Unmarshal(*v, &kind) 20039 if err != nil { 20040 return err 20041 } 20042 u.Kind = &kind 20043 } 20044 case "type": 20045 if v != nil { 20046 var typeVar string 20047 err = json.Unmarshal(*v, &typeVar) 20048 if err != nil { 20049 return err 20050 } 20051 u.Type = &typeVar 20052 } 20053 } 20054 } 20055 20056 return nil 20057} 20058 20059// UserProperties user resource specific properties 20060type UserProperties struct { 20061 // UserName - Username 20062 UserName *string `json:"name,omitempty"` 20063 // PublishingUserName - Username used for publishing. 20064 PublishingUserName *string `json:"publishingUserName,omitempty"` 20065 // PublishingPassword - Password used for publishing. 20066 PublishingPassword *string `json:"publishingPassword,omitempty"` 20067 // PublishingPasswordHash - Password hash used for publishing. 20068 PublishingPasswordHash *string `json:"publishingPasswordHash,omitempty"` 20069 // PublishingPasswordHashSalt - Password hash salt used for publishing. 20070 PublishingPasswordHashSalt *string `json:"publishingPasswordHashSalt,omitempty"` 20071} 20072 20073// ValidateProperties app properties used for validation. 20074type ValidateProperties struct { 20075 // ServerFarmID - ARM resource ID of an App Service plan that would host the app. 20076 ServerFarmID *string `json:"serverFarmId,omitempty"` 20077 // SkuName - Name of the target SKU for the App Service plan. 20078 SkuName *string `json:"skuName,omitempty"` 20079 // NeedLinuxWorkers - <code>true</code> if App Service plan is for Linux workers; otherwise, <code>false</code>. 20080 NeedLinuxWorkers *bool `json:"needLinuxWorkers,omitempty"` 20081 // IsSpot - <code>true</code> if App Service plan is for Spot instances; otherwise, <code>false</code>. 20082 IsSpot *bool `json:"isSpot,omitempty"` 20083 // Capacity - Target capacity of the App Service plan (number of VM's). 20084 Capacity *int32 `json:"capacity,omitempty"` 20085 // HostingEnvironment - Name of App Service Environment where app or App Service plan should be created. 20086 HostingEnvironment *string `json:"hostingEnvironment,omitempty"` 20087} 20088 20089// ValidateRequest resource validation request content. 20090type ValidateRequest struct { 20091 // Name - Resource name to verify. 20092 Name *string `json:"name,omitempty"` 20093 // Type - Resource type used for verification. Possible values include: 'ValidateResourceTypesServerFarm', 'ValidateResourceTypesSite' 20094 Type ValidateResourceTypes `json:"type,omitempty"` 20095 // Location - Expected location of the resource. 20096 Location *string `json:"location,omitempty"` 20097 // ValidateProperties - Properties of the resource to validate. 20098 *ValidateProperties `json:"properties,omitempty"` 20099} 20100 20101// MarshalJSON is the custom marshaler for ValidateRequest. 20102func (vr ValidateRequest) MarshalJSON() ([]byte, error) { 20103 objectMap := make(map[string]interface{}) 20104 if vr.Name != nil { 20105 objectMap["name"] = vr.Name 20106 } 20107 if vr.Type != "" { 20108 objectMap["type"] = vr.Type 20109 } 20110 if vr.Location != nil { 20111 objectMap["location"] = vr.Location 20112 } 20113 if vr.ValidateProperties != nil { 20114 objectMap["properties"] = vr.ValidateProperties 20115 } 20116 return json.Marshal(objectMap) 20117} 20118 20119// UnmarshalJSON is the custom unmarshaler for ValidateRequest struct. 20120func (vr *ValidateRequest) UnmarshalJSON(body []byte) error { 20121 var m map[string]*json.RawMessage 20122 err := json.Unmarshal(body, &m) 20123 if err != nil { 20124 return err 20125 } 20126 for k, v := range m { 20127 switch k { 20128 case "name": 20129 if v != nil { 20130 var name string 20131 err = json.Unmarshal(*v, &name) 20132 if err != nil { 20133 return err 20134 } 20135 vr.Name = &name 20136 } 20137 case "type": 20138 if v != nil { 20139 var typeVar ValidateResourceTypes 20140 err = json.Unmarshal(*v, &typeVar) 20141 if err != nil { 20142 return err 20143 } 20144 vr.Type = typeVar 20145 } 20146 case "location": 20147 if v != nil { 20148 var location string 20149 err = json.Unmarshal(*v, &location) 20150 if err != nil { 20151 return err 20152 } 20153 vr.Location = &location 20154 } 20155 case "properties": 20156 if v != nil { 20157 var validateProperties ValidateProperties 20158 err = json.Unmarshal(*v, &validateProperties) 20159 if err != nil { 20160 return err 20161 } 20162 vr.ValidateProperties = &validateProperties 20163 } 20164 } 20165 } 20166 20167 return nil 20168} 20169 20170// ValidateResponse describes the result of resource validation. 20171type ValidateResponse struct { 20172 autorest.Response `json:"-"` 20173 // Status - Result of validation. 20174 Status *string `json:"status,omitempty"` 20175 // Error - Error details for the case when validation fails. 20176 Error *ValidateResponseError `json:"error,omitempty"` 20177} 20178 20179// ValidateResponseError error details for when validation fails. 20180type ValidateResponseError struct { 20181 // Code - Validation error code. 20182 Code *string `json:"code,omitempty"` 20183 // Message - Validation error message. 20184 Message *string `json:"message,omitempty"` 20185} 20186 20187// VirtualApplication virtual application in an app. 20188type VirtualApplication struct { 20189 // VirtualPath - Virtual path. 20190 VirtualPath *string `json:"virtualPath,omitempty"` 20191 // PhysicalPath - Physical path. 20192 PhysicalPath *string `json:"physicalPath,omitempty"` 20193 // PreloadEnabled - <code>true</code> if preloading is enabled; otherwise, <code>false</code>. 20194 PreloadEnabled *bool `json:"preloadEnabled,omitempty"` 20195 // VirtualDirectories - Virtual directories for virtual application. 20196 VirtualDirectories *[]VirtualDirectory `json:"virtualDirectories,omitempty"` 20197} 20198 20199// VirtualDirectory directory for virtual application. 20200type VirtualDirectory struct { 20201 // VirtualPath - Path to virtual application. 20202 VirtualPath *string `json:"virtualPath,omitempty"` 20203 // PhysicalPath - Physical path. 20204 PhysicalPath *string `json:"physicalPath,omitempty"` 20205} 20206 20207// VirtualIPMapping virtual IP mapping. 20208type VirtualIPMapping struct { 20209 // VirtualIP - Virtual IP address. 20210 VirtualIP *string `json:"virtualIP,omitempty"` 20211 // InternalHTTPPort - Internal HTTP port. 20212 InternalHTTPPort *int32 `json:"internalHttpPort,omitempty"` 20213 // InternalHTTPSPort - Internal HTTPS port. 20214 InternalHTTPSPort *int32 `json:"internalHttpsPort,omitempty"` 20215 // InUse - Is virtual IP mapping in use. 20216 InUse *bool `json:"inUse,omitempty"` 20217} 20218 20219// VirtualNetworkProfile specification for using a Virtual Network. 20220type VirtualNetworkProfile struct { 20221 // ID - Resource id of the Virtual Network. 20222 ID *string `json:"id,omitempty"` 20223 // Name - Name of the Virtual Network (read-only). 20224 Name *string `json:"name,omitempty"` 20225 // Type - Resource type of the Virtual Network (read-only). 20226 Type *string `json:"type,omitempty"` 20227 // Subnet - Subnet within the Virtual Network. 20228 Subnet *string `json:"subnet,omitempty"` 20229} 20230 20231// VnetGateway the Virtual Network gateway contract. This is used to give the Virtual Network gateway access to the 20232// VPN package. 20233type VnetGateway struct { 20234 autorest.Response `json:"-"` 20235 // VnetGatewayProperties - VnetGateway resource specific properties 20236 *VnetGatewayProperties `json:"properties,omitempty"` 20237 // ID - Resource Id. 20238 ID *string `json:"id,omitempty"` 20239 // Name - Resource Name. 20240 Name *string `json:"name,omitempty"` 20241 // Kind - Kind of resource. 20242 Kind *string `json:"kind,omitempty"` 20243 // Type - Resource type. 20244 Type *string `json:"type,omitempty"` 20245} 20246 20247// MarshalJSON is the custom marshaler for VnetGateway. 20248func (vg VnetGateway) MarshalJSON() ([]byte, error) { 20249 objectMap := make(map[string]interface{}) 20250 if vg.VnetGatewayProperties != nil { 20251 objectMap["properties"] = vg.VnetGatewayProperties 20252 } 20253 if vg.ID != nil { 20254 objectMap["id"] = vg.ID 20255 } 20256 if vg.Name != nil { 20257 objectMap["name"] = vg.Name 20258 } 20259 if vg.Kind != nil { 20260 objectMap["kind"] = vg.Kind 20261 } 20262 if vg.Type != nil { 20263 objectMap["type"] = vg.Type 20264 } 20265 return json.Marshal(objectMap) 20266} 20267 20268// UnmarshalJSON is the custom unmarshaler for VnetGateway struct. 20269func (vg *VnetGateway) UnmarshalJSON(body []byte) error { 20270 var m map[string]*json.RawMessage 20271 err := json.Unmarshal(body, &m) 20272 if err != nil { 20273 return err 20274 } 20275 for k, v := range m { 20276 switch k { 20277 case "properties": 20278 if v != nil { 20279 var vnetGatewayProperties VnetGatewayProperties 20280 err = json.Unmarshal(*v, &vnetGatewayProperties) 20281 if err != nil { 20282 return err 20283 } 20284 vg.VnetGatewayProperties = &vnetGatewayProperties 20285 } 20286 case "id": 20287 if v != nil { 20288 var ID string 20289 err = json.Unmarshal(*v, &ID) 20290 if err != nil { 20291 return err 20292 } 20293 vg.ID = &ID 20294 } 20295 case "name": 20296 if v != nil { 20297 var name string 20298 err = json.Unmarshal(*v, &name) 20299 if err != nil { 20300 return err 20301 } 20302 vg.Name = &name 20303 } 20304 case "kind": 20305 if v != nil { 20306 var kind string 20307 err = json.Unmarshal(*v, &kind) 20308 if err != nil { 20309 return err 20310 } 20311 vg.Kind = &kind 20312 } 20313 case "type": 20314 if v != nil { 20315 var typeVar string 20316 err = json.Unmarshal(*v, &typeVar) 20317 if err != nil { 20318 return err 20319 } 20320 vg.Type = &typeVar 20321 } 20322 } 20323 } 20324 20325 return nil 20326} 20327 20328// VnetGatewayProperties vnetGateway resource specific properties 20329type VnetGatewayProperties struct { 20330 // VnetName - The Virtual Network name. 20331 VnetName *string `json:"vnetName,omitempty"` 20332 // VpnPackageURI - The URI where the VPN package can be downloaded. 20333 VpnPackageURI *string `json:"vpnPackageUri,omitempty"` 20334} 20335 20336// VnetInfo virtual Network information contract. 20337type VnetInfo struct { 20338 autorest.Response `json:"-"` 20339 // VnetInfoProperties - VnetInfo resource specific properties 20340 *VnetInfoProperties `json:"properties,omitempty"` 20341 // ID - Resource Id. 20342 ID *string `json:"id,omitempty"` 20343 // Name - Resource Name. 20344 Name *string `json:"name,omitempty"` 20345 // Kind - Kind of resource. 20346 Kind *string `json:"kind,omitempty"` 20347 // Type - Resource type. 20348 Type *string `json:"type,omitempty"` 20349} 20350 20351// MarshalJSON is the custom marshaler for VnetInfo. 20352func (vi VnetInfo) MarshalJSON() ([]byte, error) { 20353 objectMap := make(map[string]interface{}) 20354 if vi.VnetInfoProperties != nil { 20355 objectMap["properties"] = vi.VnetInfoProperties 20356 } 20357 if vi.ID != nil { 20358 objectMap["id"] = vi.ID 20359 } 20360 if vi.Name != nil { 20361 objectMap["name"] = vi.Name 20362 } 20363 if vi.Kind != nil { 20364 objectMap["kind"] = vi.Kind 20365 } 20366 if vi.Type != nil { 20367 objectMap["type"] = vi.Type 20368 } 20369 return json.Marshal(objectMap) 20370} 20371 20372// UnmarshalJSON is the custom unmarshaler for VnetInfo struct. 20373func (vi *VnetInfo) UnmarshalJSON(body []byte) error { 20374 var m map[string]*json.RawMessage 20375 err := json.Unmarshal(body, &m) 20376 if err != nil { 20377 return err 20378 } 20379 for k, v := range m { 20380 switch k { 20381 case "properties": 20382 if v != nil { 20383 var vnetInfoProperties VnetInfoProperties 20384 err = json.Unmarshal(*v, &vnetInfoProperties) 20385 if err != nil { 20386 return err 20387 } 20388 vi.VnetInfoProperties = &vnetInfoProperties 20389 } 20390 case "id": 20391 if v != nil { 20392 var ID string 20393 err = json.Unmarshal(*v, &ID) 20394 if err != nil { 20395 return err 20396 } 20397 vi.ID = &ID 20398 } 20399 case "name": 20400 if v != nil { 20401 var name string 20402 err = json.Unmarshal(*v, &name) 20403 if err != nil { 20404 return err 20405 } 20406 vi.Name = &name 20407 } 20408 case "kind": 20409 if v != nil { 20410 var kind string 20411 err = json.Unmarshal(*v, &kind) 20412 if err != nil { 20413 return err 20414 } 20415 vi.Kind = &kind 20416 } 20417 case "type": 20418 if v != nil { 20419 var typeVar string 20420 err = json.Unmarshal(*v, &typeVar) 20421 if err != nil { 20422 return err 20423 } 20424 vi.Type = &typeVar 20425 } 20426 } 20427 } 20428 20429 return nil 20430} 20431 20432// VnetInfoProperties vnetInfo resource specific properties 20433type VnetInfoProperties struct { 20434 // VnetResourceID - The Virtual Network's resource ID. 20435 VnetResourceID *string `json:"vnetResourceId,omitempty"` 20436 // CertThumbprint - The client certificate thumbprint. 20437 CertThumbprint *string `json:"certThumbprint,omitempty"` 20438 // CertBlob - A certificate file (.cer) blob containing the public key of the private key used to authenticate a 20439 // Point-To-Site VPN connection. 20440 CertBlob *[]byte `json:"certBlob,omitempty"` 20441 // Routes - The routes that this Virtual Network connection uses. 20442 Routes *[]VnetRoute `json:"routes,omitempty"` 20443 // ResyncRequired - <code>true</code> if a resync is required; otherwise, <code>false</code>. 20444 ResyncRequired *bool `json:"resyncRequired,omitempty"` 20445 // DNSServers - DNS servers to be used by this Virtual Network. This should be a comma-separated list of IP addresses. 20446 DNSServers *string `json:"dnsServers,omitempty"` 20447} 20448 20449// VnetParameters the required set of inputs to validate a VNET 20450type VnetParameters struct { 20451 // VnetParametersProperties - VnetParameters resource specific properties 20452 *VnetParametersProperties `json:"properties,omitempty"` 20453 // ID - Resource Id. 20454 ID *string `json:"id,omitempty"` 20455 // Name - Resource Name. 20456 Name *string `json:"name,omitempty"` 20457 // Kind - Kind of resource. 20458 Kind *string `json:"kind,omitempty"` 20459 // Type - Resource type. 20460 Type *string `json:"type,omitempty"` 20461} 20462 20463// MarshalJSON is the custom marshaler for VnetParameters. 20464func (vp VnetParameters) MarshalJSON() ([]byte, error) { 20465 objectMap := make(map[string]interface{}) 20466 if vp.VnetParametersProperties != nil { 20467 objectMap["properties"] = vp.VnetParametersProperties 20468 } 20469 if vp.ID != nil { 20470 objectMap["id"] = vp.ID 20471 } 20472 if vp.Name != nil { 20473 objectMap["name"] = vp.Name 20474 } 20475 if vp.Kind != nil { 20476 objectMap["kind"] = vp.Kind 20477 } 20478 if vp.Type != nil { 20479 objectMap["type"] = vp.Type 20480 } 20481 return json.Marshal(objectMap) 20482} 20483 20484// UnmarshalJSON is the custom unmarshaler for VnetParameters struct. 20485func (vp *VnetParameters) UnmarshalJSON(body []byte) error { 20486 var m map[string]*json.RawMessage 20487 err := json.Unmarshal(body, &m) 20488 if err != nil { 20489 return err 20490 } 20491 for k, v := range m { 20492 switch k { 20493 case "properties": 20494 if v != nil { 20495 var vnetParametersProperties VnetParametersProperties 20496 err = json.Unmarshal(*v, &vnetParametersProperties) 20497 if err != nil { 20498 return err 20499 } 20500 vp.VnetParametersProperties = &vnetParametersProperties 20501 } 20502 case "id": 20503 if v != nil { 20504 var ID string 20505 err = json.Unmarshal(*v, &ID) 20506 if err != nil { 20507 return err 20508 } 20509 vp.ID = &ID 20510 } 20511 case "name": 20512 if v != nil { 20513 var name string 20514 err = json.Unmarshal(*v, &name) 20515 if err != nil { 20516 return err 20517 } 20518 vp.Name = &name 20519 } 20520 case "kind": 20521 if v != nil { 20522 var kind string 20523 err = json.Unmarshal(*v, &kind) 20524 if err != nil { 20525 return err 20526 } 20527 vp.Kind = &kind 20528 } 20529 case "type": 20530 if v != nil { 20531 var typeVar string 20532 err = json.Unmarshal(*v, &typeVar) 20533 if err != nil { 20534 return err 20535 } 20536 vp.Type = &typeVar 20537 } 20538 } 20539 } 20540 20541 return nil 20542} 20543 20544// VnetParametersProperties vnetParameters resource specific properties 20545type VnetParametersProperties struct { 20546 // VnetResourceGroup - The Resource Group of the VNET to be validated 20547 VnetResourceGroup *string `json:"vnetResourceGroup,omitempty"` 20548 // VnetName - The name of the VNET to be validated 20549 VnetName *string `json:"vnetName,omitempty"` 20550 // VnetSubnetName - The subnet name to be validated 20551 VnetSubnetName *string `json:"vnetSubnetName,omitempty"` 20552} 20553 20554// VnetRoute virtual Network route contract used to pass routing information for a Virtual Network. 20555type VnetRoute struct { 20556 autorest.Response `json:"-"` 20557 // VnetRouteProperties - VnetRoute resource specific properties 20558 *VnetRouteProperties `json:"properties,omitempty"` 20559 // ID - Resource Id. 20560 ID *string `json:"id,omitempty"` 20561 // Name - Resource Name. 20562 Name *string `json:"name,omitempty"` 20563 // Kind - Kind of resource. 20564 Kind *string `json:"kind,omitempty"` 20565 // Type - Resource type. 20566 Type *string `json:"type,omitempty"` 20567} 20568 20569// MarshalJSON is the custom marshaler for VnetRoute. 20570func (vr VnetRoute) MarshalJSON() ([]byte, error) { 20571 objectMap := make(map[string]interface{}) 20572 if vr.VnetRouteProperties != nil { 20573 objectMap["properties"] = vr.VnetRouteProperties 20574 } 20575 if vr.ID != nil { 20576 objectMap["id"] = vr.ID 20577 } 20578 if vr.Name != nil { 20579 objectMap["name"] = vr.Name 20580 } 20581 if vr.Kind != nil { 20582 objectMap["kind"] = vr.Kind 20583 } 20584 if vr.Type != nil { 20585 objectMap["type"] = vr.Type 20586 } 20587 return json.Marshal(objectMap) 20588} 20589 20590// UnmarshalJSON is the custom unmarshaler for VnetRoute struct. 20591func (vr *VnetRoute) UnmarshalJSON(body []byte) error { 20592 var m map[string]*json.RawMessage 20593 err := json.Unmarshal(body, &m) 20594 if err != nil { 20595 return err 20596 } 20597 for k, v := range m { 20598 switch k { 20599 case "properties": 20600 if v != nil { 20601 var vnetRouteProperties VnetRouteProperties 20602 err = json.Unmarshal(*v, &vnetRouteProperties) 20603 if err != nil { 20604 return err 20605 } 20606 vr.VnetRouteProperties = &vnetRouteProperties 20607 } 20608 case "id": 20609 if v != nil { 20610 var ID string 20611 err = json.Unmarshal(*v, &ID) 20612 if err != nil { 20613 return err 20614 } 20615 vr.ID = &ID 20616 } 20617 case "name": 20618 if v != nil { 20619 var name string 20620 err = json.Unmarshal(*v, &name) 20621 if err != nil { 20622 return err 20623 } 20624 vr.Name = &name 20625 } 20626 case "kind": 20627 if v != nil { 20628 var kind string 20629 err = json.Unmarshal(*v, &kind) 20630 if err != nil { 20631 return err 20632 } 20633 vr.Kind = &kind 20634 } 20635 case "type": 20636 if v != nil { 20637 var typeVar string 20638 err = json.Unmarshal(*v, &typeVar) 20639 if err != nil { 20640 return err 20641 } 20642 vr.Type = &typeVar 20643 } 20644 } 20645 } 20646 20647 return nil 20648} 20649 20650// VnetRouteProperties vnetRoute resource specific properties 20651type VnetRouteProperties struct { 20652 // VnetRouteName - The name of this route. This is only returned by the server and does not need to be set by the client. 20653 VnetRouteName *string `json:"name,omitempty"` 20654 // StartAddress - The starting address for this route. This may also include a CIDR notation, in which case the end address must not be specified. 20655 StartAddress *string `json:"startAddress,omitempty"` 20656 // EndAddress - The ending address for this route. If the start address is specified in CIDR notation, this must be omitted. 20657 EndAddress *string `json:"endAddress,omitempty"` 20658 // RouteType - The type of route this is: 20659 // DEFAULT - By default, every app has routes to the local address ranges specified by RFC1918 20660 // INHERITED - Routes inherited from the real Virtual Network routes 20661 // STATIC - Static route set on the app only 20662 // These values will be used for syncing an app's routes with those from a Virtual Network. Possible values include: 'DEFAULT', 'INHERITED', 'STATIC' 20663 RouteType RouteType `json:"routeType,omitempty"` 20664} 20665 20666// VnetValidationFailureDetails a class that describes the reason for a validation failure. 20667type VnetValidationFailureDetails struct { 20668 autorest.Response `json:"-"` 20669 // VnetValidationFailureDetailsProperties - VnetValidationFailureDetails resource specific properties 20670 *VnetValidationFailureDetailsProperties `json:"properties,omitempty"` 20671 // ID - Resource Id. 20672 ID *string `json:"id,omitempty"` 20673 // Name - Resource Name. 20674 Name *string `json:"name,omitempty"` 20675 // Kind - Kind of resource. 20676 Kind *string `json:"kind,omitempty"` 20677 // Type - Resource type. 20678 Type *string `json:"type,omitempty"` 20679} 20680 20681// MarshalJSON is the custom marshaler for VnetValidationFailureDetails. 20682func (vvfd VnetValidationFailureDetails) MarshalJSON() ([]byte, error) { 20683 objectMap := make(map[string]interface{}) 20684 if vvfd.VnetValidationFailureDetailsProperties != nil { 20685 objectMap["properties"] = vvfd.VnetValidationFailureDetailsProperties 20686 } 20687 if vvfd.ID != nil { 20688 objectMap["id"] = vvfd.ID 20689 } 20690 if vvfd.Name != nil { 20691 objectMap["name"] = vvfd.Name 20692 } 20693 if vvfd.Kind != nil { 20694 objectMap["kind"] = vvfd.Kind 20695 } 20696 if vvfd.Type != nil { 20697 objectMap["type"] = vvfd.Type 20698 } 20699 return json.Marshal(objectMap) 20700} 20701 20702// UnmarshalJSON is the custom unmarshaler for VnetValidationFailureDetails struct. 20703func (vvfd *VnetValidationFailureDetails) UnmarshalJSON(body []byte) error { 20704 var m map[string]*json.RawMessage 20705 err := json.Unmarshal(body, &m) 20706 if err != nil { 20707 return err 20708 } 20709 for k, v := range m { 20710 switch k { 20711 case "properties": 20712 if v != nil { 20713 var vnetValidationFailureDetailsProperties VnetValidationFailureDetailsProperties 20714 err = json.Unmarshal(*v, &vnetValidationFailureDetailsProperties) 20715 if err != nil { 20716 return err 20717 } 20718 vvfd.VnetValidationFailureDetailsProperties = &vnetValidationFailureDetailsProperties 20719 } 20720 case "id": 20721 if v != nil { 20722 var ID string 20723 err = json.Unmarshal(*v, &ID) 20724 if err != nil { 20725 return err 20726 } 20727 vvfd.ID = &ID 20728 } 20729 case "name": 20730 if v != nil { 20731 var name string 20732 err = json.Unmarshal(*v, &name) 20733 if err != nil { 20734 return err 20735 } 20736 vvfd.Name = &name 20737 } 20738 case "kind": 20739 if v != nil { 20740 var kind string 20741 err = json.Unmarshal(*v, &kind) 20742 if err != nil { 20743 return err 20744 } 20745 vvfd.Kind = &kind 20746 } 20747 case "type": 20748 if v != nil { 20749 var typeVar string 20750 err = json.Unmarshal(*v, &typeVar) 20751 if err != nil { 20752 return err 20753 } 20754 vvfd.Type = &typeVar 20755 } 20756 } 20757 } 20758 20759 return nil 20760} 20761 20762// VnetValidationFailureDetailsProperties vnetValidationFailureDetails resource specific properties 20763type VnetValidationFailureDetailsProperties struct { 20764 // Failed - A flag describing whether or not validation failed. 20765 Failed *bool `json:"failed,omitempty"` 20766 // FailedTests - A list of tests that failed in the validation. 20767 FailedTests *[]VnetValidationTestFailure `json:"failedTests,omitempty"` 20768} 20769 20770// VnetValidationTestFailure a class that describes a test that failed during NSG and UDR validation. 20771type VnetValidationTestFailure struct { 20772 // VnetValidationTestFailureProperties - VnetValidationTestFailure resource specific properties 20773 *VnetValidationTestFailureProperties `json:"properties,omitempty"` 20774 // ID - Resource Id. 20775 ID *string `json:"id,omitempty"` 20776 // Name - Resource Name. 20777 Name *string `json:"name,omitempty"` 20778 // Kind - Kind of resource. 20779 Kind *string `json:"kind,omitempty"` 20780 // Type - Resource type. 20781 Type *string `json:"type,omitempty"` 20782} 20783 20784// MarshalJSON is the custom marshaler for VnetValidationTestFailure. 20785func (vvtf VnetValidationTestFailure) MarshalJSON() ([]byte, error) { 20786 objectMap := make(map[string]interface{}) 20787 if vvtf.VnetValidationTestFailureProperties != nil { 20788 objectMap["properties"] = vvtf.VnetValidationTestFailureProperties 20789 } 20790 if vvtf.ID != nil { 20791 objectMap["id"] = vvtf.ID 20792 } 20793 if vvtf.Name != nil { 20794 objectMap["name"] = vvtf.Name 20795 } 20796 if vvtf.Kind != nil { 20797 objectMap["kind"] = vvtf.Kind 20798 } 20799 if vvtf.Type != nil { 20800 objectMap["type"] = vvtf.Type 20801 } 20802 return json.Marshal(objectMap) 20803} 20804 20805// UnmarshalJSON is the custom unmarshaler for VnetValidationTestFailure struct. 20806func (vvtf *VnetValidationTestFailure) UnmarshalJSON(body []byte) error { 20807 var m map[string]*json.RawMessage 20808 err := json.Unmarshal(body, &m) 20809 if err != nil { 20810 return err 20811 } 20812 for k, v := range m { 20813 switch k { 20814 case "properties": 20815 if v != nil { 20816 var vnetValidationTestFailureProperties VnetValidationTestFailureProperties 20817 err = json.Unmarshal(*v, &vnetValidationTestFailureProperties) 20818 if err != nil { 20819 return err 20820 } 20821 vvtf.VnetValidationTestFailureProperties = &vnetValidationTestFailureProperties 20822 } 20823 case "id": 20824 if v != nil { 20825 var ID string 20826 err = json.Unmarshal(*v, &ID) 20827 if err != nil { 20828 return err 20829 } 20830 vvtf.ID = &ID 20831 } 20832 case "name": 20833 if v != nil { 20834 var name string 20835 err = json.Unmarshal(*v, &name) 20836 if err != nil { 20837 return err 20838 } 20839 vvtf.Name = &name 20840 } 20841 case "kind": 20842 if v != nil { 20843 var kind string 20844 err = json.Unmarshal(*v, &kind) 20845 if err != nil { 20846 return err 20847 } 20848 vvtf.Kind = &kind 20849 } 20850 case "type": 20851 if v != nil { 20852 var typeVar string 20853 err = json.Unmarshal(*v, &typeVar) 20854 if err != nil { 20855 return err 20856 } 20857 vvtf.Type = &typeVar 20858 } 20859 } 20860 } 20861 20862 return nil 20863} 20864 20865// VnetValidationTestFailureProperties vnetValidationTestFailure resource specific properties 20866type VnetValidationTestFailureProperties struct { 20867 // TestName - The name of the test that failed. 20868 TestName *string `json:"testName,omitempty"` 20869 // Details - The details of what caused the failure, e.g. the blocking rule name, etc. 20870 Details *string `json:"details,omitempty"` 20871} 20872 20873// WorkerPool worker pool of an App Service Environment. 20874type WorkerPool struct { 20875 // WorkerSizeID - Worker size ID for referencing this worker pool. 20876 WorkerSizeID *int32 `json:"workerSizeId,omitempty"` 20877 // ComputeMode - Shared or dedicated app hosting. Possible values include: 'ComputeModeOptionsShared', 'ComputeModeOptionsDedicated', 'ComputeModeOptionsDynamic' 20878 ComputeMode ComputeModeOptions `json:"computeMode,omitempty"` 20879 // WorkerSize - VM size of the worker pool instances. 20880 WorkerSize *string `json:"workerSize,omitempty"` 20881 // WorkerCount - Number of instances in the worker pool. 20882 WorkerCount *int32 `json:"workerCount,omitempty"` 20883 // InstanceNames - Names of all instances in the worker pool (read only). 20884 InstanceNames *[]string `json:"instanceNames,omitempty"` 20885} 20886 20887// WorkerPoolCollection collection of worker pools. 20888type WorkerPoolCollection struct { 20889 autorest.Response `json:"-"` 20890 // Value - Collection of resources. 20891 Value *[]WorkerPoolResource `json:"value,omitempty"` 20892 // NextLink - Link to next page of resources. 20893 NextLink *string `json:"nextLink,omitempty"` 20894} 20895 20896// WorkerPoolCollectionIterator provides access to a complete listing of WorkerPoolResource values. 20897type WorkerPoolCollectionIterator struct { 20898 i int 20899 page WorkerPoolCollectionPage 20900} 20901 20902// Next advances to the next value. If there was an error making 20903// the request the iterator does not advance and the error is returned. 20904func (iter *WorkerPoolCollectionIterator) Next() error { 20905 iter.i++ 20906 if iter.i < len(iter.page.Values()) { 20907 return nil 20908 } 20909 err := iter.page.Next() 20910 if err != nil { 20911 iter.i-- 20912 return err 20913 } 20914 iter.i = 0 20915 return nil 20916} 20917 20918// NotDone returns true if the enumeration should be started or is not yet complete. 20919func (iter WorkerPoolCollectionIterator) NotDone() bool { 20920 return iter.page.NotDone() && iter.i < len(iter.page.Values()) 20921} 20922 20923// Response returns the raw server response from the last page request. 20924func (iter WorkerPoolCollectionIterator) Response() WorkerPoolCollection { 20925 return iter.page.Response() 20926} 20927 20928// Value returns the current value or a zero-initialized value if the 20929// iterator has advanced beyond the end of the collection. 20930func (iter WorkerPoolCollectionIterator) Value() WorkerPoolResource { 20931 if !iter.page.NotDone() { 20932 return WorkerPoolResource{} 20933 } 20934 return iter.page.Values()[iter.i] 20935} 20936 20937// IsEmpty returns true if the ListResult contains no values. 20938func (wpc WorkerPoolCollection) IsEmpty() bool { 20939 return wpc.Value == nil || len(*wpc.Value) == 0 20940} 20941 20942// workerPoolCollectionPreparer prepares a request to retrieve the next set of results. 20943// It returns nil if no more results exist. 20944func (wpc WorkerPoolCollection) workerPoolCollectionPreparer() (*http.Request, error) { 20945 if wpc.NextLink == nil || len(to.String(wpc.NextLink)) < 1 { 20946 return nil, nil 20947 } 20948 return autorest.Prepare(&http.Request{}, 20949 autorest.AsJSON(), 20950 autorest.AsGet(), 20951 autorest.WithBaseURL(to.String(wpc.NextLink))) 20952} 20953 20954// WorkerPoolCollectionPage contains a page of WorkerPoolResource values. 20955type WorkerPoolCollectionPage struct { 20956 fn func(WorkerPoolCollection) (WorkerPoolCollection, error) 20957 wpc WorkerPoolCollection 20958} 20959 20960// Next advances to the next page of values. If there was an error making 20961// the request the page does not advance and the error is returned. 20962func (page *WorkerPoolCollectionPage) Next() error { 20963 next, err := page.fn(page.wpc) 20964 if err != nil { 20965 return err 20966 } 20967 page.wpc = next 20968 return nil 20969} 20970 20971// NotDone returns true if the page enumeration should be started or is not yet complete. 20972func (page WorkerPoolCollectionPage) NotDone() bool { 20973 return !page.wpc.IsEmpty() 20974} 20975 20976// Response returns the raw server response from the last page request. 20977func (page WorkerPoolCollectionPage) Response() WorkerPoolCollection { 20978 return page.wpc 20979} 20980 20981// Values returns the slice of values for the current page or nil if there are no values. 20982func (page WorkerPoolCollectionPage) Values() []WorkerPoolResource { 20983 if page.wpc.IsEmpty() { 20984 return nil 20985 } 20986 return *page.wpc.Value 20987} 20988 20989// WorkerPoolResource worker pool of an App Service Environment ARM resource. 20990type WorkerPoolResource struct { 20991 autorest.Response `json:"-"` 20992 // WorkerPool - Core resource properties 20993 *WorkerPool `json:"properties,omitempty"` 20994 Sku *SkuDescription `json:"sku,omitempty"` 20995 // ID - Resource Id. 20996 ID *string `json:"id,omitempty"` 20997 // Name - Resource Name. 20998 Name *string `json:"name,omitempty"` 20999 // Kind - Kind of resource. 21000 Kind *string `json:"kind,omitempty"` 21001 // Type - Resource type. 21002 Type *string `json:"type,omitempty"` 21003} 21004 21005// MarshalJSON is the custom marshaler for WorkerPoolResource. 21006func (wpr WorkerPoolResource) MarshalJSON() ([]byte, error) { 21007 objectMap := make(map[string]interface{}) 21008 if wpr.WorkerPool != nil { 21009 objectMap["properties"] = wpr.WorkerPool 21010 } 21011 if wpr.Sku != nil { 21012 objectMap["sku"] = wpr.Sku 21013 } 21014 if wpr.ID != nil { 21015 objectMap["id"] = wpr.ID 21016 } 21017 if wpr.Name != nil { 21018 objectMap["name"] = wpr.Name 21019 } 21020 if wpr.Kind != nil { 21021 objectMap["kind"] = wpr.Kind 21022 } 21023 if wpr.Type != nil { 21024 objectMap["type"] = wpr.Type 21025 } 21026 return json.Marshal(objectMap) 21027} 21028 21029// UnmarshalJSON is the custom unmarshaler for WorkerPoolResource struct. 21030func (wpr *WorkerPoolResource) UnmarshalJSON(body []byte) error { 21031 var m map[string]*json.RawMessage 21032 err := json.Unmarshal(body, &m) 21033 if err != nil { 21034 return err 21035 } 21036 for k, v := range m { 21037 switch k { 21038 case "properties": 21039 if v != nil { 21040 var workerPool WorkerPool 21041 err = json.Unmarshal(*v, &workerPool) 21042 if err != nil { 21043 return err 21044 } 21045 wpr.WorkerPool = &workerPool 21046 } 21047 case "sku": 21048 if v != nil { 21049 var sku SkuDescription 21050 err = json.Unmarshal(*v, &sku) 21051 if err != nil { 21052 return err 21053 } 21054 wpr.Sku = &sku 21055 } 21056 case "id": 21057 if v != nil { 21058 var ID string 21059 err = json.Unmarshal(*v, &ID) 21060 if err != nil { 21061 return err 21062 } 21063 wpr.ID = &ID 21064 } 21065 case "name": 21066 if v != nil { 21067 var name string 21068 err = json.Unmarshal(*v, &name) 21069 if err != nil { 21070 return err 21071 } 21072 wpr.Name = &name 21073 } 21074 case "kind": 21075 if v != nil { 21076 var kind string 21077 err = json.Unmarshal(*v, &kind) 21078 if err != nil { 21079 return err 21080 } 21081 wpr.Kind = &kind 21082 } 21083 case "type": 21084 if v != nil { 21085 var typeVar string 21086 err = json.Unmarshal(*v, &typeVar) 21087 if err != nil { 21088 return err 21089 } 21090 wpr.Type = &typeVar 21091 } 21092 } 21093 } 21094 21095 return nil 21096} 21097