diff --git a/azurerm/internal/services/eventgrid/client/client.go b/azurerm/internal/services/eventgrid/client/client.go
index e32a89cac3b4..2e74b0c0f3c0 100644
--- a/azurerm/internal/services/eventgrid/client/client.go
+++ b/azurerm/internal/services/eventgrid/client/client.go
@@ -1,7 +1,7 @@
package client
import (
- "github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid"
+ "github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/common"
)
diff --git a/azurerm/internal/services/eventgrid/eventgrid_domain_resource.go b/azurerm/internal/services/eventgrid/eventgrid_domain_resource.go
index 6330b171cf83..dbf0683d5def 100644
--- a/azurerm/internal/services/eventgrid/eventgrid_domain_resource.go
+++ b/azurerm/internal/services/eventgrid/eventgrid_domain_resource.go
@@ -5,7 +5,7 @@ import (
"log"
"time"
- "github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid"
+ "github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid"
"github.com/hashicorp/go-azure-helpers/response"
"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
"github.com/hashicorp/terraform-plugin-sdk/helper/validation"
@@ -13,7 +13,9 @@ import (
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/helpers/tf"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/clients"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/features"
+ "github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/services/eventgrid/parse"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/tags"
+ azSchema "github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/tf/schema"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/timeouts"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/utils"
)
@@ -24,9 +26,6 @@ func resourceArmEventGridDomain() *schema.Resource {
Read: resourceArmEventGridDomainRead,
Update: resourceArmEventGridDomainCreateUpdate,
Delete: resourceArmEventGridDomainDelete,
- Importer: &schema.ResourceImporter{
- State: schema.ImportStatePassthrough,
- },
Timeouts: &schema.ResourceTimeout{
Create: schema.DefaultTimeout(30 * time.Minute),
@@ -35,6 +34,11 @@ func resourceArmEventGridDomain() *schema.Resource {
Delete: schema.DefaultTimeout(30 * time.Minute),
},
+ Importer: azSchema.ValidateResourceIDPriorToImport(func(id string) error {
+ _, err := parse.EventGridDomainID(id)
+ return err
+ }),
+
Schema: map[string]*schema.Schema{
"name": {
Type: schema.TypeString,
@@ -54,7 +58,7 @@ func resourceArmEventGridDomain() *schema.Resource {
Default: string(eventgrid.InputSchemaEventGridSchema),
ForceNew: true,
ValidateFunc: validation.StringInSlice([]string{
- string(eventgrid.InputSchemaCloudEventV01Schema),
+ string(eventgrid.InputSchemaCloudEventSchemaV10),
string(eventgrid.InputSchemaCustomEventSchema),
string(eventgrid.InputSchemaEventGridSchema),
}, false),
@@ -211,26 +215,24 @@ func resourceArmEventGridDomainRead(d *schema.ResourceData, meta interface{}) er
ctx, cancel := timeouts.ForRead(meta.(*clients.Client).StopContext, d)
defer cancel()
- id, err := azure.ParseAzureResourceID(d.Id())
+ id, err := parse.EventGridDomainID(d.Id())
if err != nil {
return err
}
- resourceGroup := id.ResourceGroup
- name := id.Path["domains"]
- resp, err := client.Get(ctx, resourceGroup, name)
+ resp, err := client.Get(ctx, id.ResourceGroup, id.Name)
if err != nil {
if utils.ResponseWasNotFound(resp.Response) {
- log.Printf("[WARN] EventGrid Domain %q was not found (Resource Group %q)", name, resourceGroup)
+ log.Printf("[WARN] EventGrid Domain %q was not found (Resource Group %q)", id.Name, id.ResourceGroup)
d.SetId("")
return nil
}
- return fmt.Errorf("Error making Read request on EventGrid Domain %q: %+v", name, err)
+ return fmt.Errorf("Error making Read request on EventGrid Domain %q: %+v", id.Name, err)
}
d.Set("name", resp.Name)
- d.Set("resource_group_name", resourceGroup)
+ d.Set("resource_group_name", id.ResourceGroup)
if location := resp.Location; location != nil {
d.Set("location", azure.NormalizeLocation(*location))
}
@@ -242,24 +244,24 @@ func resourceArmEventGridDomainRead(d *schema.ResourceData, meta interface{}) er
inputMappingFields, err := flattenAzureRmEventgridDomainInputMapping(props.InputSchemaMapping)
if err != nil {
- return fmt.Errorf("Unable to flatten `input_schema_mapping_fields` for EventGrid Domain %q (Resource Group %q): %s", name, resourceGroup, err)
+ return fmt.Errorf("Unable to flatten `input_schema_mapping_fields` for EventGrid Domain %q (Resource Group %q): %s", id.Name, id.ResourceGroup, err)
}
if err := d.Set("input_mapping_fields", inputMappingFields); err != nil {
- return fmt.Errorf("Error setting `input_schema_mapping_fields` for EventGrid Domain %q (Resource Group %q): %s", name, resourceGroup, err)
+ return fmt.Errorf("Error setting `input_schema_mapping_fields` for EventGrid Domain %q (Resource Group %q): %s", id.Name, id.ResourceGroup, err)
}
inputMappingDefaultValues, err := flattenAzureRmEventgridDomainInputMappingDefaultValues(props.InputSchemaMapping)
if err != nil {
- return fmt.Errorf("Unable to flatten `input_schema_mapping_default_values` for EventGrid Domain %q (Resource Group %q): %s", name, resourceGroup, err)
+ return fmt.Errorf("Unable to flatten `input_schema_mapping_default_values` for EventGrid Domain %q (Resource Group %q): %s", id.Name, id.ResourceGroup, err)
}
if err := d.Set("input_mapping_default_values", inputMappingDefaultValues); err != nil {
- return fmt.Errorf("Error setting `input_schema_mapping_fields` for EventGrid Domain %q (Resource Group %q): %s", name, resourceGroup, err)
+ return fmt.Errorf("Error setting `input_schema_mapping_fields` for EventGrid Domain %q (Resource Group %q): %s", id.Name, id.ResourceGroup, err)
}
}
- keys, err := client.ListSharedAccessKeys(ctx, resourceGroup, name)
+ keys, err := client.ListSharedAccessKeys(ctx, id.ResourceGroup, id.Name)
if err != nil {
- return fmt.Errorf("Error retrieving Shared Access Keys for EventGrid Domain %q: %+v", name, err)
+ return fmt.Errorf("Error retrieving Shared Access Keys for EventGrid Domain %q: %+v", id.Name, err)
}
d.Set("primary_access_key", keys.Key1)
d.Set("secondary_access_key", keys.Key2)
@@ -272,26 +274,24 @@ func resourceArmEventGridDomainDelete(d *schema.ResourceData, meta interface{})
ctx, cancel := timeouts.ForDelete(meta.(*clients.Client).StopContext, d)
defer cancel()
- id, err := azure.ParseAzureResourceID(d.Id())
+ id, err := parse.EventGridDomainID(d.Id())
if err != nil {
return err
}
- resGroup := id.ResourceGroup
- name := id.Path["domains"]
- future, err := client.Delete(ctx, resGroup, name)
+ future, err := client.Delete(ctx, id.ResourceGroup, id.Name)
if err != nil {
if response.WasNotFound(future.Response()) {
return nil
}
- return fmt.Errorf("Error deleting Event Grid Domain %q: %+v", name, err)
+ return fmt.Errorf("Error deleting Event Grid Domain %q: %+v", id.Name, err)
}
if err = future.WaitForCompletionRef(ctx, client.Client); err != nil {
if response.WasNotFound(future.Response()) {
return nil
}
- return fmt.Errorf("Error deleting Event Grid Domain %q: %+v", name, err)
+ return fmt.Errorf("Error deleting Event Grid Domain %q: %+v", id.Name, err)
}
return nil
diff --git a/azurerm/internal/services/eventgrid/eventgrid_event_subscription_resource.go b/azurerm/internal/services/eventgrid/eventgrid_event_subscription_resource.go
index e78ec1676ce0..a19f6c9f7ded 100644
--- a/azurerm/internal/services/eventgrid/eventgrid_event_subscription_resource.go
+++ b/azurerm/internal/services/eventgrid/eventgrid_event_subscription_resource.go
@@ -3,10 +3,9 @@ package eventgrid
import (
"fmt"
"log"
- "strings"
"time"
- "github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid"
+ "github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid"
"github.com/hashicorp/go-azure-helpers/response"
"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
"github.com/hashicorp/terraform-plugin-sdk/helper/validation"
@@ -14,19 +13,22 @@ import (
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/helpers/tf"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/clients"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/features"
+ "github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/services/eventgrid/parse"
+ azSchema "github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/tf/schema"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/timeouts"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/utils"
)
+func getEnpointTypes() []string {
+ return []string{"webhook_endpoint", "storage_queue_endpoint", "eventhub_endpoint", "hybrid_connection_endpoint"}
+}
+
func resourceArmEventGridEventSubscription() *schema.Resource {
return &schema.Resource{
Create: resourceArmEventGridEventSubscriptionCreateUpdate,
Read: resourceArmEventGridEventSubscriptionRead,
Update: resourceArmEventGridEventSubscriptionCreateUpdate,
Delete: resourceArmEventGridEventSubscriptionDelete,
- Importer: &schema.ResourceImporter{
- State: schema.ImportStatePassthrough,
- },
Timeouts: &schema.ResourceTimeout{
Create: schema.DefaultTimeout(30 * time.Minute),
@@ -35,6 +37,11 @@ func resourceArmEventGridEventSubscription() *schema.Resource {
Delete: schema.DefaultTimeout(30 * time.Minute),
},
+ Importer: azSchema.ValidateResourceIDPriorToImport(func(id string) error {
+ _, err := parse.EventGridEventSubscriptionID(id)
+ return err
+ }),
+
Schema: map[string]*schema.Schema{
"name": {
Type: schema.TypeString,
@@ -56,9 +63,9 @@ func resourceArmEventGridEventSubscription() *schema.Resource {
ForceNew: true,
Default: string(eventgrid.EventGridSchema),
ValidateFunc: validation.StringInSlice([]string{
- string(eventgrid.CloudEventV01Schema),
- string(eventgrid.CustomInputSchema),
string(eventgrid.EventGridSchema),
+ string(eventgrid.CloudEventSchemaV10),
+ string(eventgrid.CustomInputSchema),
}, false),
},
@@ -72,7 +79,7 @@ func resourceArmEventGridEventSubscription() *schema.Resource {
Type: schema.TypeList,
MaxItems: 1,
Optional: true,
- ConflictsWith: []string{"eventhub_endpoint", "hybrid_connection_endpoint", "webhook_endpoint"},
+ ConflictsWith: utils.RemoveFromStringArray(getEnpointTypes(), "storage_queue_endpoint"),
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
"storage_account_id": {
@@ -93,7 +100,7 @@ func resourceArmEventGridEventSubscription() *schema.Resource {
Type: schema.TypeList,
MaxItems: 1,
Optional: true,
- ConflictsWith: []string{"storage_queue_endpoint", "hybrid_connection_endpoint", "webhook_endpoint"},
+ ConflictsWith: utils.RemoveFromStringArray(getEnpointTypes(), "eventhub_endpoint"),
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
"eventhub_id": {
@@ -109,7 +116,7 @@ func resourceArmEventGridEventSubscription() *schema.Resource {
Type: schema.TypeList,
MaxItems: 1,
Optional: true,
- ConflictsWith: []string{"storage_queue_endpoint", "eventhub_endpoint", "webhook_endpoint"},
+ ConflictsWith: utils.RemoveFromStringArray(getEnpointTypes(), "hybrid_connection_endpoint"),
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
"hybrid_connection_id": {
@@ -125,7 +132,7 @@ func resourceArmEventGridEventSubscription() *schema.Resource {
Type: schema.TypeList,
MaxItems: 1,
Optional: true,
- ConflictsWith: []string{"storage_queue_endpoint", "eventhub_endpoint", "hybrid_connection_endpoint"},
+ ConflictsWith: utils.RemoveFromStringArray(getEnpointTypes(), "webhook_endpoint"),
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
"url": {
@@ -142,7 +149,8 @@ func resourceArmEventGridEventSubscription() *schema.Resource {
Optional: true,
Computed: true,
Elem: &schema.Schema{
- Type: schema.TypeString,
+ Type: schema.TypeString,
+ ValidateFunc: validation.StringIsNotEmpty,
},
},
@@ -243,22 +251,20 @@ func resourceArmEventGridEventSubscriptionCreateUpdate(d *schema.ResourceData, m
destination := expandEventGridEventSubscriptionDestination(d)
if destination == nil {
- return fmt.Errorf("One of `webhook_endpoint`, eventhub_endpoint` `hybrid_connection_endpoint` or `storage_queue_endpoint` must be specificed to create an EventGrid Event Subscription")
+ return fmt.Errorf("One of the following endpoint types must be specificed to create an EventGrid Event Subscription: %q", getEnpointTypes())
}
+ filter := expandEventGridEventSubscriptionFilter(d)
+
eventSubscriptionProperties := eventgrid.EventSubscriptionProperties{
Destination: destination,
- Filter: expandEventGridEventSubscriptionFilter(d),
+ Filter: filter,
DeadLetterDestination: expandEventGridEventSubscriptionStorageBlobDeadLetterDestination(d),
RetryPolicy: expandEventGridEventSubscriptionRetryPolicy(d),
Labels: utils.ExpandStringSlice(d.Get("labels").([]interface{})),
EventDeliverySchema: eventgrid.EventDeliverySchema(d.Get("event_delivery_schema").(string)),
}
- if v, ok := d.GetOk("topic_name"); ok {
- eventSubscriptionProperties.Topic = utils.String(v.(string))
- }
-
eventSubscription := eventgrid.EventSubscription{
EventSubscriptionProperties: &eventSubscriptionProperties,
}
@@ -292,7 +298,7 @@ func resourceArmEventGridEventSubscriptionRead(d *schema.ResourceData, meta inte
ctx, cancel := timeouts.ForRead(meta.(*clients.Client).StopContext, d)
defer cancel()
- id, err := parseAzureEventGridEventSubscriptionID(d.Id())
+ id, err := parse.EventGridEventSubscriptionID(d.Id())
if err != nil {
return err
}
@@ -377,7 +383,7 @@ func resourceArmEventGridEventSubscriptionDelete(d *schema.ResourceData, meta in
ctx, cancel := timeouts.ForDelete(meta.(*clients.Client).StopContext, d)
defer cancel()
- id, err := parseAzureEventGridEventSubscriptionID(d.Id())
+ id, err := parse.EventGridEventSubscriptionID(d.Id())
if err != nil {
return err
}
@@ -400,26 +406,6 @@ func resourceArmEventGridEventSubscriptionDelete(d *schema.ResourceData, meta in
return nil
}
-type AzureEventGridEventSubscriptionID struct {
- Scope string
- Name string
-}
-
-func parseAzureEventGridEventSubscriptionID(id string) (*AzureEventGridEventSubscriptionID, error) {
- segments := strings.Split(id, "/providers/Microsoft.EventGrid/eventSubscriptions/")
- if len(segments) != 2 {
- return nil, fmt.Errorf("Expected ID to be in the format `{scope}/providers/Microsoft.EventGrid/eventSubscriptions/{name} - got %d segments", len(segments))
- }
-
- scope := segments[0]
- name := segments[1]
- eventSubscriptionID := AzureEventGridEventSubscriptionID{
- Scope: scope,
- Name: name,
- }
- return &eventSubscriptionID, nil
-}
-
func expandEventGridEventSubscriptionDestination(d *schema.ResourceData) eventgrid.BasicEventSubscriptionDestination {
if _, ok := d.GetOk("storage_queue_endpoint"); ok {
return expandEventGridEventSubscriptionStorageQueueEndpoint(d)
diff --git a/azurerm/internal/services/eventgrid/eventgrid_topic_resource.go b/azurerm/internal/services/eventgrid/eventgrid_topic_resource.go
index 1272e8314483..be5f023e351f 100644
--- a/azurerm/internal/services/eventgrid/eventgrid_topic_resource.go
+++ b/azurerm/internal/services/eventgrid/eventgrid_topic_resource.go
@@ -5,7 +5,7 @@ import (
"log"
"time"
- "github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid"
+ "github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid"
"github.com/hashicorp/go-azure-helpers/response"
"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
"github.com/hashicorp/terraform-plugin-sdk/helper/validation"
@@ -13,7 +13,9 @@ import (
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/helpers/tf"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/clients"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/features"
+ "github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/services/eventgrid/parse"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/tags"
+ azSchema "github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/tf/schema"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/timeouts"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/utils"
)
@@ -24,9 +26,6 @@ func resourceArmEventGridTopic() *schema.Resource {
Read: resourceArmEventGridTopicRead,
Update: resourceArmEventGridTopicCreateUpdate,
Delete: resourceArmEventGridTopicDelete,
- Importer: &schema.ResourceImporter{
- State: schema.ImportStatePassthrough,
- },
Timeouts: &schema.ResourceTimeout{
Create: schema.DefaultTimeout(30 * time.Minute),
@@ -35,6 +34,11 @@ func resourceArmEventGridTopic() *schema.Resource {
Delete: schema.DefaultTimeout(30 * time.Minute),
},
+ Importer: azSchema.ValidateResourceIDPriorToImport(func(id string) error {
+ _, err := parse.EventGridTopicID(id)
+ return err
+ }),
+
Schema: map[string]*schema.Schema{
"name": {
Type: schema.TypeString,
@@ -128,31 +132,29 @@ func resourceArmEventGridTopicRead(d *schema.ResourceData, meta interface{}) err
ctx, cancel := timeouts.ForRead(meta.(*clients.Client).StopContext, d)
defer cancel()
- id, err := azure.ParseAzureResourceID(d.Id())
+ id, err := parse.EventGridTopicID(d.Id())
if err != nil {
return err
}
- resourceGroup := id.ResourceGroup
- name := id.Path["topics"]
- resp, err := client.Get(ctx, resourceGroup, name)
+ resp, err := client.Get(ctx, id.ResourceGroup, id.Name)
if err != nil {
if utils.ResponseWasNotFound(resp.Response) {
- log.Printf("[WARN] EventGrid Topic '%s' was not found (resource group '%s')", name, resourceGroup)
+ log.Printf("[WARN] EventGrid Topic '%s' was not found (resource group '%s')", id.Name, id.ResourceGroup)
d.SetId("")
return nil
}
- return fmt.Errorf("Error making Read request on EventGrid Topic '%s': %+v", name, err)
+ return fmt.Errorf("Error making Read request on EventGrid Topic '%s': %+v", id.Name, err)
}
- keys, err := client.ListSharedAccessKeys(ctx, resourceGroup, name)
+ keys, err := client.ListSharedAccessKeys(ctx, id.ResourceGroup, id.Name)
if err != nil {
- return fmt.Errorf("Error retrieving Shared Access Keys for EventGrid Topic '%s': %+v", name, err)
+ return fmt.Errorf("Error retrieving Shared Access Keys for EventGrid Topic '%s': %+v", id.Name, err)
}
d.Set("name", resp.Name)
- d.Set("resource_group_name", resourceGroup)
+ d.Set("resource_group_name", id.ResourceGroup)
if location := resp.Location; location != nil {
d.Set("location", azure.NormalizeLocation(*location))
}
@@ -172,26 +174,24 @@ func resourceArmEventGridTopicDelete(d *schema.ResourceData, meta interface{}) e
ctx, cancel := timeouts.ForDelete(meta.(*clients.Client).StopContext, d)
defer cancel()
- id, err := azure.ParseAzureResourceID(d.Id())
+ id, err := parse.EventGridTopicID(d.Id())
if err != nil {
return err
}
- resGroup := id.ResourceGroup
- name := id.Path["topics"]
- future, err := client.Delete(ctx, resGroup, name)
+ future, err := client.Delete(ctx, id.ResourceGroup, id.Name)
if err != nil {
if response.WasNotFound(future.Response()) {
return nil
}
- return fmt.Errorf("Error deleting Event Grid Topic %q: %+v", name, err)
+ return fmt.Errorf("Error deleting EventGrid Topic %q: %+v", id.Name, err)
}
if err = future.WaitForCompletionRef(ctx, client.Client); err != nil {
if response.WasNotFound(future.Response()) {
return nil
}
- return fmt.Errorf("Error deleting Event Grid Topic %q: %+v", name, err)
+ return fmt.Errorf("Error deleting EventGrid Topic %q: %+v", id.Name, err)
}
return nil
diff --git a/azurerm/internal/services/eventgrid/parse/eventgrid_domain.go b/azurerm/internal/services/eventgrid/parse/eventgrid_domain.go
new file mode 100644
index 000000000000..f6db8c651fb8
--- /dev/null
+++ b/azurerm/internal/services/eventgrid/parse/eventgrid_domain.go
@@ -0,0 +1,33 @@
+package parse
+
+import (
+ "fmt"
+
+ "github.com/terraform-providers/terraform-provider-azurerm/azurerm/helpers/azure"
+)
+
+type EventGridDomainId struct {
+ ResourceGroup string
+ Name string
+}
+
+func EventGridDomainID(input string) (*EventGridDomainId, error) {
+ id, err := azure.ParseAzureResourceID(input)
+ if err != nil {
+ return nil, fmt.Errorf("[ERROR] Unable to parse EventGrid Domain ID %q: %+v", input, err)
+ }
+
+ domain := EventGridDomainId{
+ ResourceGroup: id.ResourceGroup,
+ }
+
+ if domain.Name, err = id.PopSegment("domains"); err != nil {
+ return nil, err
+ }
+
+ if err := id.ValidateNoEmptySegments(input); err != nil {
+ return nil, err
+ }
+
+ return &domain, nil
+}
diff --git a/azurerm/internal/services/eventgrid/parse/eventgrid_event_subscription.go b/azurerm/internal/services/eventgrid/parse/eventgrid_event_subscription.go
new file mode 100644
index 000000000000..a36965dafa3b
--- /dev/null
+++ b/azurerm/internal/services/eventgrid/parse/eventgrid_event_subscription.go
@@ -0,0 +1,39 @@
+package parse
+
+import (
+ "fmt"
+ "strings"
+
+ "github.com/terraform-providers/terraform-provider-azurerm/azurerm/helpers/azure"
+)
+
+type EventGridEventSubscriptionId struct {
+ Scope string
+ Name string
+}
+
+func EventGridEventSubscriptionID(input string) (*EventGridEventSubscriptionId, error) {
+ id, err := azure.ParseAzureResourceID(input)
+ if err != nil {
+ return nil, fmt.Errorf("[ERROR] Unable to parse EventGrid Event Subscription ID %q: %+v", input, err)
+ }
+
+ segments := strings.Split(input, "/providers/Microsoft.EventGrid/eventSubscriptions/")
+ if len(segments) != 2 {
+ return nil, fmt.Errorf("Expected ID to be in the format `{scope}/providers/Microsoft.EventGrid/eventSubscriptions/{name} - got %d segments", len(segments))
+ }
+
+ eventSubscription := EventGridEventSubscriptionId{
+ Scope: segments[0],
+ }
+
+ if eventSubscription.Name, err = id.PopSegment("eventSubscriptions"); err != nil {
+ return nil, err
+ }
+
+ if err := id.ValidateNoEmptySegments(input); err != nil {
+ return nil, err
+ }
+
+ return &eventSubscription, nil
+}
diff --git a/azurerm/internal/services/eventgrid/parse/eventgrid_topic.go b/azurerm/internal/services/eventgrid/parse/eventgrid_topic.go
new file mode 100644
index 000000000000..ad95e0312846
--- /dev/null
+++ b/azurerm/internal/services/eventgrid/parse/eventgrid_topic.go
@@ -0,0 +1,33 @@
+package parse
+
+import (
+ "fmt"
+
+ "github.com/terraform-providers/terraform-provider-azurerm/azurerm/helpers/azure"
+)
+
+type EventGridTopicId struct {
+ ResourceGroup string
+ Name string
+}
+
+func EventGridTopicID(input string) (*EventGridTopicId, error) {
+ id, err := azure.ParseAzureResourceID(input)
+ if err != nil {
+ return nil, fmt.Errorf("[ERROR] Unable to parse EventGrid Topic ID %q: %+v", input, err)
+ }
+
+ topic := EventGridTopicId{
+ ResourceGroup: id.ResourceGroup,
+ }
+
+ if topic.Name, err = id.PopSegment("topics"); err != nil {
+ return nil, err
+ }
+
+ if err := id.ValidateNoEmptySegments(input); err != nil {
+ return nil, err
+ }
+
+ return &topic, nil
+}
diff --git a/azurerm/internal/services/eventgrid/tests/eventgrid_domain_resource_test.go b/azurerm/internal/services/eventgrid/tests/eventgrid_domain_resource_test.go
index 3dd1e68cfccc..1a406056fc4b 100644
--- a/azurerm/internal/services/eventgrid/tests/eventgrid_domain_resource_test.go
+++ b/azurerm/internal/services/eventgrid/tests/eventgrid_domain_resource_test.go
@@ -9,6 +9,7 @@ import (
"github.com/hashicorp/terraform-plugin-sdk/terraform"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/acceptance"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/clients"
+ "github.com/terraform-providers/terraform-provider-azurerm/azurerm/internal/features"
"github.com/terraform-providers/terraform-provider-azurerm/azurerm/utils"
)
@@ -34,6 +35,33 @@ func TestAccAzureRMEventGridDomain_basic(t *testing.T) {
})
}
+func TestAccAzureRMEventGridDomain_requiresImport(t *testing.T) {
+ if !features.ShouldResourcesBeImported() {
+ t.Skip("Skipping since resources aren't required to be imported")
+ return
+ }
+
+ data := acceptance.BuildTestData(t, "azurerm_eventgrid_domain", "test")
+
+ resource.ParallelTest(t, resource.TestCase{
+ PreCheck: func() { acceptance.PreCheck(t) },
+ Providers: acceptance.SupportedProviders,
+ CheckDestroy: testCheckAzureRMEventGridDomainDestroy,
+ Steps: []resource.TestStep{
+ {
+ Config: testAccAzureRMEventGridDomain_basic(data),
+ Check: resource.ComposeTestCheckFunc(
+ testCheckAzureRMEventGridDomainExists(data.ResourceName),
+ ),
+ },
+ {
+ Config: testAccAzureRMEventGridDomain_requiresImport(data),
+ ExpectError: acceptance.RequiresImportError("azurerm_eventgrid_domain"),
+ },
+ },
+ })
+}
+
func TestAccAzureRMEventGridDomain_mapping(t *testing.T) {
data := acceptance.BuildTestData(t, "azurerm_eventgrid_domain", "test")
@@ -156,6 +184,19 @@ resource "azurerm_eventgrid_domain" "test" {
`, data.RandomInteger, data.Locations.Primary, data.RandomInteger)
}
+func testAccAzureRMEventGridDomain_requiresImport(data acceptance.TestData) string {
+ template := testAccAzureRMEventGridDomain_basic(data)
+ return fmt.Sprintf(`
+%s
+
+resource "azurerm_eventgrid_domain" "import" {
+ name = azurerm_eventgrid_domain.test.name
+ location = azurerm_eventgrid_domain.test.location
+ resource_group_name = azurerm_eventgrid_domain.test.resource_group_name
+}
+`, template)
+}
+
func testAccAzureRMEventGridDomain_mapping(data acceptance.TestData) string {
return fmt.Sprintf(`
provider "azurerm" {
diff --git a/azurerm/internal/services/eventgrid/tests/eventgrid_event_subscription_resource_test.go b/azurerm/internal/services/eventgrid/tests/eventgrid_event_subscription_resource_test.go
index 5d0000541e6d..32ef7d96271e 100644
--- a/azurerm/internal/services/eventgrid/tests/eventgrid_event_subscription_resource_test.go
+++ b/azurerm/internal/services/eventgrid/tests/eventgrid_event_subscription_resource_test.go
@@ -44,7 +44,7 @@ func TestAccAzureRMEventGridEventSubscription_eventhub(t *testing.T) {
Config: testAccAzureRMEventGridEventSubscription_eventhub(data),
Check: resource.ComposeTestCheckFunc(
testCheckAzureRMEventGridEventSubscriptionExists(data.ResourceName),
- resource.TestCheckResourceAttr(data.ResourceName, "event_delivery_schema", "CloudEventV01Schema"),
+ resource.TestCheckResourceAttr(data.ResourceName, "event_delivery_schema", "CloudEventSchemaV1_0"),
resource.TestCheckResourceAttr(data.ResourceName, "eventhub_endpoint.#", "1"),
),
},
@@ -346,7 +346,7 @@ resource "azurerm_eventhub" "test" {
resource "azurerm_eventgrid_event_subscription" "test" {
name = "acctesteg-%d"
scope = azurerm_resource_group.test.id
- event_delivery_schema = "CloudEventV01Schema"
+ event_delivery_schema = "CloudEventSchemaV1_0"
eventhub_endpoint {
eventhub_id = azurerm_eventhub.test.id
diff --git a/azurerm/utils/array.go b/azurerm/utils/array.go
new file mode 100644
index 000000000000..24a4c6a713db
--- /dev/null
+++ b/azurerm/utils/array.go
@@ -0,0 +1,11 @@
+package utils
+
+// RemoveFromStringArray removes all matching values from a string array
+func RemoveFromStringArray(elements []string, remove string) []string {
+ for i, v := range elements {
+ if v == remove {
+ return append(elements[:i], elements[i+1:]...)
+ }
+ }
+ return elements
+}
diff --git a/go.sum b/go.sum
index 73c819a2062a..5232a314397d 100644
--- a/go.sum
+++ b/go.sum
@@ -308,6 +308,7 @@ golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBn
golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
+golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0 h1:Dh6fw+p6FyRl5x/FvNswO1ji0lIGzm3KP8Y9VkS9PTE=
golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc=
google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE=
google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M=
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/domaintopics.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/domaintopics.go
deleted file mode 100644
index 0c8b9214eaa8..000000000000
--- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/domaintopics.go
+++ /dev/null
@@ -1,196 +0,0 @@
-package eventgrid
-
-// Copyright (c) Microsoft and contributors. All rights reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//
-// See the License for the specific language governing permissions and
-// limitations under the License.
-//
-// Code generated by Microsoft (R) AutoRest Code Generator.
-// Changes may cause incorrect behavior and will be lost if the code is regenerated.
-
-import (
- "context"
- "github.com/Azure/go-autorest/autorest"
- "github.com/Azure/go-autorest/autorest/azure"
- "github.com/Azure/go-autorest/tracing"
- "net/http"
-)
-
-// DomainTopicsClient is the azure EventGrid Management Client
-type DomainTopicsClient struct {
- BaseClient
-}
-
-// NewDomainTopicsClient creates an instance of the DomainTopicsClient client.
-func NewDomainTopicsClient(subscriptionID string) DomainTopicsClient {
- return NewDomainTopicsClientWithBaseURI(DefaultBaseURI, subscriptionID)
-}
-
-// NewDomainTopicsClientWithBaseURI creates an instance of the DomainTopicsClient client using a custom endpoint. Use
-// this when interacting with an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure stack).
-func NewDomainTopicsClientWithBaseURI(baseURI string, subscriptionID string) DomainTopicsClient {
- return DomainTopicsClient{NewWithBaseURI(baseURI, subscriptionID)}
-}
-
-// Get get properties of a domain topic
-// Parameters:
-// resourceGroupName - the name of the resource group within the user's subscription.
-// domainName - name of the domain
-// topicName - name of the topic
-func (client DomainTopicsClient) Get(ctx context.Context, resourceGroupName string, domainName string, topicName string) (result DomainTopic, err error) {
- if tracing.IsEnabled() {
- ctx = tracing.StartSpan(ctx, fqdn+"/DomainTopicsClient.Get")
- defer func() {
- sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
- }
- tracing.EndSpan(ctx, sc, err)
- }()
- }
- req, err := client.GetPreparer(ctx, resourceGroupName, domainName, topicName)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "Get", nil, "Failure preparing request")
- return
- }
-
- resp, err := client.GetSender(req)
- if err != nil {
- result.Response = autorest.Response{Response: resp}
- err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "Get", resp, "Failure sending request")
- return
- }
-
- result, err = client.GetResponder(resp)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "Get", resp, "Failure responding to request")
- }
-
- return
-}
-
-// GetPreparer prepares the Get request.
-func (client DomainTopicsClient) GetPreparer(ctx context.Context, resourceGroupName string, domainName string, topicName string) (*http.Request, error) {
- pathParameters := map[string]interface{}{
- "domainName": autorest.Encode("path", domainName),
- "resourceGroupName": autorest.Encode("path", resourceGroupName),
- "subscriptionId": autorest.Encode("path", client.SubscriptionID),
- "topicName": autorest.Encode("path", topicName),
- }
-
- const APIVersion = "2018-09-15-preview"
- queryParameters := map[string]interface{}{
- "api-version": APIVersion,
- }
-
- preparer := autorest.CreatePreparer(
- autorest.AsGet(),
- autorest.WithBaseURL(client.BaseURI),
- autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics/{topicName}", pathParameters),
- autorest.WithQueryParameters(queryParameters))
- return preparer.Prepare((&http.Request{}).WithContext(ctx))
-}
-
-// GetSender sends the Get request. The method will close the
-// http.Response Body if it receives an error.
-func (client DomainTopicsClient) GetSender(req *http.Request) (*http.Response, error) {
- return client.Send(req, azure.DoRetryWithRegistration(client.Client))
-}
-
-// GetResponder handles the response to the Get request. The method always
-// closes the http.Response Body.
-func (client DomainTopicsClient) GetResponder(resp *http.Response) (result DomainTopic, err error) {
- err = autorest.Respond(
- resp,
- client.ByInspecting(),
- azure.WithErrorUnlessStatusCode(http.StatusOK),
- autorest.ByUnmarshallingJSON(&result),
- autorest.ByClosing())
- result.Response = autorest.Response{Response: resp}
- return
-}
-
-// ListByDomain list all the topics in a domain.
-// Parameters:
-// resourceGroupName - the name of the resource group within the user's subscription.
-// domainName - domain name.
-func (client DomainTopicsClient) ListByDomain(ctx context.Context, resourceGroupName string, domainName string) (result DomainTopicsListResult, err error) {
- if tracing.IsEnabled() {
- ctx = tracing.StartSpan(ctx, fqdn+"/DomainTopicsClient.ListByDomain")
- defer func() {
- sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
- }
- tracing.EndSpan(ctx, sc, err)
- }()
- }
- req, err := client.ListByDomainPreparer(ctx, resourceGroupName, domainName)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "ListByDomain", nil, "Failure preparing request")
- return
- }
-
- resp, err := client.ListByDomainSender(req)
- if err != nil {
- result.Response = autorest.Response{Response: resp}
- err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "ListByDomain", resp, "Failure sending request")
- return
- }
-
- result, err = client.ListByDomainResponder(resp)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "ListByDomain", resp, "Failure responding to request")
- }
-
- return
-}
-
-// ListByDomainPreparer prepares the ListByDomain request.
-func (client DomainTopicsClient) ListByDomainPreparer(ctx context.Context, resourceGroupName string, domainName string) (*http.Request, error) {
- pathParameters := map[string]interface{}{
- "domainName": autorest.Encode("path", domainName),
- "resourceGroupName": autorest.Encode("path", resourceGroupName),
- "subscriptionId": autorest.Encode("path", client.SubscriptionID),
- }
-
- const APIVersion = "2018-09-15-preview"
- queryParameters := map[string]interface{}{
- "api-version": APIVersion,
- }
-
- preparer := autorest.CreatePreparer(
- autorest.AsGet(),
- autorest.WithBaseURL(client.BaseURI),
- autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics", pathParameters),
- autorest.WithQueryParameters(queryParameters))
- return preparer.Prepare((&http.Request{}).WithContext(ctx))
-}
-
-// ListByDomainSender sends the ListByDomain request. The method will close the
-// http.Response Body if it receives an error.
-func (client DomainTopicsClient) ListByDomainSender(req *http.Request) (*http.Response, error) {
- return client.Send(req, azure.DoRetryWithRegistration(client.Client))
-}
-
-// ListByDomainResponder handles the response to the ListByDomain request. The method always
-// closes the http.Response Body.
-func (client DomainTopicsClient) ListByDomainResponder(resp *http.Response) (result DomainTopicsListResult, err error) {
- err = autorest.Respond(
- resp,
- client.ByInspecting(),
- azure.WithErrorUnlessStatusCode(http.StatusOK),
- autorest.ByUnmarshallingJSON(&result),
- autorest.ByClosing())
- result.Response = autorest.Response{Response: resp}
- return
-}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/models.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/models.go
deleted file mode 100644
index 53c8b1cb83ea..000000000000
--- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/models.go
+++ /dev/null
@@ -1,3712 +0,0 @@
-package eventgrid
-
-// Copyright (c) Microsoft and contributors. All rights reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//
-// See the License for the specific language governing permissions and
-// limitations under the License.
-//
-// Code generated by Microsoft (R) AutoRest Code Generator.
-// Changes may cause incorrect behavior and will be lost if the code is regenerated.
-
-import (
- "context"
- "encoding/json"
- "github.com/Azure/go-autorest/autorest"
- "github.com/Azure/go-autorest/autorest/azure"
- "github.com/Azure/go-autorest/autorest/date"
- "net/http"
-)
-
-// The package's fully qualified name.
-const fqdn = "github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid"
-
-// DomainProvisioningState enumerates the values for domain provisioning state.
-type DomainProvisioningState string
-
-const (
- // Canceled ...
- Canceled DomainProvisioningState = "Canceled"
- // Creating ...
- Creating DomainProvisioningState = "Creating"
- // Deleting ...
- Deleting DomainProvisioningState = "Deleting"
- // Failed ...
- Failed DomainProvisioningState = "Failed"
- // Succeeded ...
- Succeeded DomainProvisioningState = "Succeeded"
- // Updating ...
- Updating DomainProvisioningState = "Updating"
-)
-
-// PossibleDomainProvisioningStateValues returns an array of possible values for the DomainProvisioningState const type.
-func PossibleDomainProvisioningStateValues() []DomainProvisioningState {
- return []DomainProvisioningState{Canceled, Creating, Deleting, Failed, Succeeded, Updating}
-}
-
-// EndpointType enumerates the values for endpoint type.
-type EndpointType string
-
-const (
- // EndpointTypeEventHub ...
- EndpointTypeEventHub EndpointType = "EventHub"
- // EndpointTypeEventSubscriptionDestination ...
- EndpointTypeEventSubscriptionDestination EndpointType = "EventSubscriptionDestination"
- // EndpointTypeHybridConnection ...
- EndpointTypeHybridConnection EndpointType = "HybridConnection"
- // EndpointTypeStorageQueue ...
- EndpointTypeStorageQueue EndpointType = "StorageQueue"
- // EndpointTypeWebHook ...
- EndpointTypeWebHook EndpointType = "WebHook"
-)
-
-// PossibleEndpointTypeValues returns an array of possible values for the EndpointType const type.
-func PossibleEndpointTypeValues() []EndpointType {
- return []EndpointType{EndpointTypeEventHub, EndpointTypeEventSubscriptionDestination, EndpointTypeHybridConnection, EndpointTypeStorageQueue, EndpointTypeWebHook}
-}
-
-// EndpointTypeBasicDeadLetterDestination enumerates the values for endpoint type basic dead letter
-// destination.
-type EndpointTypeBasicDeadLetterDestination string
-
-const (
- // EndpointTypeDeadLetterDestination ...
- EndpointTypeDeadLetterDestination EndpointTypeBasicDeadLetterDestination = "DeadLetterDestination"
- // EndpointTypeStorageBlob ...
- EndpointTypeStorageBlob EndpointTypeBasicDeadLetterDestination = "StorageBlob"
-)
-
-// PossibleEndpointTypeBasicDeadLetterDestinationValues returns an array of possible values for the EndpointTypeBasicDeadLetterDestination const type.
-func PossibleEndpointTypeBasicDeadLetterDestinationValues() []EndpointTypeBasicDeadLetterDestination {
- return []EndpointTypeBasicDeadLetterDestination{EndpointTypeDeadLetterDestination, EndpointTypeStorageBlob}
-}
-
-// EventDeliverySchema enumerates the values for event delivery schema.
-type EventDeliverySchema string
-
-const (
- // CloudEventV01Schema ...
- CloudEventV01Schema EventDeliverySchema = "CloudEventV01Schema"
- // CustomInputSchema ...
- CustomInputSchema EventDeliverySchema = "CustomInputSchema"
- // EventGridSchema ...
- EventGridSchema EventDeliverySchema = "EventGridSchema"
-)
-
-// PossibleEventDeliverySchemaValues returns an array of possible values for the EventDeliverySchema const type.
-func PossibleEventDeliverySchemaValues() []EventDeliverySchema {
- return []EventDeliverySchema{CloudEventV01Schema, CustomInputSchema, EventGridSchema}
-}
-
-// EventSubscriptionProvisioningState enumerates the values for event subscription provisioning state.
-type EventSubscriptionProvisioningState string
-
-const (
- // EventSubscriptionProvisioningStateAwaitingManualAction ...
- EventSubscriptionProvisioningStateAwaitingManualAction EventSubscriptionProvisioningState = "AwaitingManualAction"
- // EventSubscriptionProvisioningStateCanceled ...
- EventSubscriptionProvisioningStateCanceled EventSubscriptionProvisioningState = "Canceled"
- // EventSubscriptionProvisioningStateCreating ...
- EventSubscriptionProvisioningStateCreating EventSubscriptionProvisioningState = "Creating"
- // EventSubscriptionProvisioningStateDeleting ...
- EventSubscriptionProvisioningStateDeleting EventSubscriptionProvisioningState = "Deleting"
- // EventSubscriptionProvisioningStateFailed ...
- EventSubscriptionProvisioningStateFailed EventSubscriptionProvisioningState = "Failed"
- // EventSubscriptionProvisioningStateSucceeded ...
- EventSubscriptionProvisioningStateSucceeded EventSubscriptionProvisioningState = "Succeeded"
- // EventSubscriptionProvisioningStateUpdating ...
- EventSubscriptionProvisioningStateUpdating EventSubscriptionProvisioningState = "Updating"
-)
-
-// PossibleEventSubscriptionProvisioningStateValues returns an array of possible values for the EventSubscriptionProvisioningState const type.
-func PossibleEventSubscriptionProvisioningStateValues() []EventSubscriptionProvisioningState {
- return []EventSubscriptionProvisioningState{EventSubscriptionProvisioningStateAwaitingManualAction, EventSubscriptionProvisioningStateCanceled, EventSubscriptionProvisioningStateCreating, EventSubscriptionProvisioningStateDeleting, EventSubscriptionProvisioningStateFailed, EventSubscriptionProvisioningStateSucceeded, EventSubscriptionProvisioningStateUpdating}
-}
-
-// InputSchema enumerates the values for input schema.
-type InputSchema string
-
-const (
- // InputSchemaCloudEventV01Schema ...
- InputSchemaCloudEventV01Schema InputSchema = "CloudEventV01Schema"
- // InputSchemaCustomEventSchema ...
- InputSchemaCustomEventSchema InputSchema = "CustomEventSchema"
- // InputSchemaEventGridSchema ...
- InputSchemaEventGridSchema InputSchema = "EventGridSchema"
-)
-
-// PossibleInputSchemaValues returns an array of possible values for the InputSchema const type.
-func PossibleInputSchemaValues() []InputSchema {
- return []InputSchema{InputSchemaCloudEventV01Schema, InputSchemaCustomEventSchema, InputSchemaEventGridSchema}
-}
-
-// InputSchemaMappingType enumerates the values for input schema mapping type.
-type InputSchemaMappingType string
-
-const (
- // InputSchemaMappingTypeInputSchemaMapping ...
- InputSchemaMappingTypeInputSchemaMapping InputSchemaMappingType = "InputSchemaMapping"
- // InputSchemaMappingTypeJSON ...
- InputSchemaMappingTypeJSON InputSchemaMappingType = "Json"
-)
-
-// PossibleInputSchemaMappingTypeValues returns an array of possible values for the InputSchemaMappingType const type.
-func PossibleInputSchemaMappingTypeValues() []InputSchemaMappingType {
- return []InputSchemaMappingType{InputSchemaMappingTypeInputSchemaMapping, InputSchemaMappingTypeJSON}
-}
-
-// OperatorType enumerates the values for operator type.
-type OperatorType string
-
-const (
- // OperatorTypeAdvancedFilter ...
- OperatorTypeAdvancedFilter OperatorType = "AdvancedFilter"
- // OperatorTypeBoolEquals ...
- OperatorTypeBoolEquals OperatorType = "BoolEquals"
- // OperatorTypeNumberGreaterThan ...
- OperatorTypeNumberGreaterThan OperatorType = "NumberGreaterThan"
- // OperatorTypeNumberGreaterThanOrEquals ...
- OperatorTypeNumberGreaterThanOrEquals OperatorType = "NumberGreaterThanOrEquals"
- // OperatorTypeNumberIn ...
- OperatorTypeNumberIn OperatorType = "NumberIn"
- // OperatorTypeNumberLessThan ...
- OperatorTypeNumberLessThan OperatorType = "NumberLessThan"
- // OperatorTypeNumberLessThanOrEquals ...
- OperatorTypeNumberLessThanOrEquals OperatorType = "NumberLessThanOrEquals"
- // OperatorTypeNumberNotIn ...
- OperatorTypeNumberNotIn OperatorType = "NumberNotIn"
- // OperatorTypeStringBeginsWith ...
- OperatorTypeStringBeginsWith OperatorType = "StringBeginsWith"
- // OperatorTypeStringContains ...
- OperatorTypeStringContains OperatorType = "StringContains"
- // OperatorTypeStringEndsWith ...
- OperatorTypeStringEndsWith OperatorType = "StringEndsWith"
- // OperatorTypeStringIn ...
- OperatorTypeStringIn OperatorType = "StringIn"
- // OperatorTypeStringNotIn ...
- OperatorTypeStringNotIn OperatorType = "StringNotIn"
-)
-
-// PossibleOperatorTypeValues returns an array of possible values for the OperatorType const type.
-func PossibleOperatorTypeValues() []OperatorType {
- return []OperatorType{OperatorTypeAdvancedFilter, OperatorTypeBoolEquals, OperatorTypeNumberGreaterThan, OperatorTypeNumberGreaterThanOrEquals, OperatorTypeNumberIn, OperatorTypeNumberLessThan, OperatorTypeNumberLessThanOrEquals, OperatorTypeNumberNotIn, OperatorTypeStringBeginsWith, OperatorTypeStringContains, OperatorTypeStringEndsWith, OperatorTypeStringIn, OperatorTypeStringNotIn}
-}
-
-// ResourceRegionType enumerates the values for resource region type.
-type ResourceRegionType string
-
-const (
- // GlobalResource ...
- GlobalResource ResourceRegionType = "GlobalResource"
- // RegionalResource ...
- RegionalResource ResourceRegionType = "RegionalResource"
-)
-
-// PossibleResourceRegionTypeValues returns an array of possible values for the ResourceRegionType const type.
-func PossibleResourceRegionTypeValues() []ResourceRegionType {
- return []ResourceRegionType{GlobalResource, RegionalResource}
-}
-
-// TopicProvisioningState enumerates the values for topic provisioning state.
-type TopicProvisioningState string
-
-const (
- // TopicProvisioningStateCanceled ...
- TopicProvisioningStateCanceled TopicProvisioningState = "Canceled"
- // TopicProvisioningStateCreating ...
- TopicProvisioningStateCreating TopicProvisioningState = "Creating"
- // TopicProvisioningStateDeleting ...
- TopicProvisioningStateDeleting TopicProvisioningState = "Deleting"
- // TopicProvisioningStateFailed ...
- TopicProvisioningStateFailed TopicProvisioningState = "Failed"
- // TopicProvisioningStateSucceeded ...
- TopicProvisioningStateSucceeded TopicProvisioningState = "Succeeded"
- // TopicProvisioningStateUpdating ...
- TopicProvisioningStateUpdating TopicProvisioningState = "Updating"
-)
-
-// PossibleTopicProvisioningStateValues returns an array of possible values for the TopicProvisioningState const type.
-func PossibleTopicProvisioningStateValues() []TopicProvisioningState {
- return []TopicProvisioningState{TopicProvisioningStateCanceled, TopicProvisioningStateCreating, TopicProvisioningStateDeleting, TopicProvisioningStateFailed, TopicProvisioningStateSucceeded, TopicProvisioningStateUpdating}
-}
-
-// TopicTypeProvisioningState enumerates the values for topic type provisioning state.
-type TopicTypeProvisioningState string
-
-const (
- // TopicTypeProvisioningStateCanceled ...
- TopicTypeProvisioningStateCanceled TopicTypeProvisioningState = "Canceled"
- // TopicTypeProvisioningStateCreating ...
- TopicTypeProvisioningStateCreating TopicTypeProvisioningState = "Creating"
- // TopicTypeProvisioningStateDeleting ...
- TopicTypeProvisioningStateDeleting TopicTypeProvisioningState = "Deleting"
- // TopicTypeProvisioningStateFailed ...
- TopicTypeProvisioningStateFailed TopicTypeProvisioningState = "Failed"
- // TopicTypeProvisioningStateSucceeded ...
- TopicTypeProvisioningStateSucceeded TopicTypeProvisioningState = "Succeeded"
- // TopicTypeProvisioningStateUpdating ...
- TopicTypeProvisioningStateUpdating TopicTypeProvisioningState = "Updating"
-)
-
-// PossibleTopicTypeProvisioningStateValues returns an array of possible values for the TopicTypeProvisioningState const type.
-func PossibleTopicTypeProvisioningStateValues() []TopicTypeProvisioningState {
- return []TopicTypeProvisioningState{TopicTypeProvisioningStateCanceled, TopicTypeProvisioningStateCreating, TopicTypeProvisioningStateDeleting, TopicTypeProvisioningStateFailed, TopicTypeProvisioningStateSucceeded, TopicTypeProvisioningStateUpdating}
-}
-
-// BasicAdvancedFilter represents an advanced filter that can be used to filter events based on various event
-// envelope/data fields.
-type BasicAdvancedFilter interface {
- AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool)
- AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool)
- AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool)
- AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool)
- AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool)
- AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool)
- AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool)
- AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool)
- AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool)
- AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool)
- AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool)
- AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool)
- AsAdvancedFilter() (*AdvancedFilter, bool)
-}
-
-// AdvancedFilter represents an advanced filter that can be used to filter events based on various event
-// envelope/data fields.
-type AdvancedFilter struct {
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-func unmarshalBasicAdvancedFilter(body []byte) (BasicAdvancedFilter, error) {
- var m map[string]interface{}
- err := json.Unmarshal(body, &m)
- if err != nil {
- return nil, err
- }
-
- switch m["operatorType"] {
- case string(OperatorTypeNumberIn):
- var niaf NumberInAdvancedFilter
- err := json.Unmarshal(body, &niaf)
- return niaf, err
- case string(OperatorTypeNumberNotIn):
- var nniaf NumberNotInAdvancedFilter
- err := json.Unmarshal(body, &nniaf)
- return nniaf, err
- case string(OperatorTypeNumberLessThan):
- var nltaf NumberLessThanAdvancedFilter
- err := json.Unmarshal(body, &nltaf)
- return nltaf, err
- case string(OperatorTypeNumberGreaterThan):
- var ngtaf NumberGreaterThanAdvancedFilter
- err := json.Unmarshal(body, &ngtaf)
- return ngtaf, err
- case string(OperatorTypeNumberLessThanOrEquals):
- var nltoeaf NumberLessThanOrEqualsAdvancedFilter
- err := json.Unmarshal(body, &nltoeaf)
- return nltoeaf, err
- case string(OperatorTypeNumberGreaterThanOrEquals):
- var ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter
- err := json.Unmarshal(body, &ngtoeaf)
- return ngtoeaf, err
- case string(OperatorTypeBoolEquals):
- var beaf BoolEqualsAdvancedFilter
- err := json.Unmarshal(body, &beaf)
- return beaf, err
- case string(OperatorTypeStringIn):
- var siaf StringInAdvancedFilter
- err := json.Unmarshal(body, &siaf)
- return siaf, err
- case string(OperatorTypeStringNotIn):
- var sniaf StringNotInAdvancedFilter
- err := json.Unmarshal(body, &sniaf)
- return sniaf, err
- case string(OperatorTypeStringBeginsWith):
- var sbwaf StringBeginsWithAdvancedFilter
- err := json.Unmarshal(body, &sbwaf)
- return sbwaf, err
- case string(OperatorTypeStringEndsWith):
- var sewaf StringEndsWithAdvancedFilter
- err := json.Unmarshal(body, &sewaf)
- return sewaf, err
- case string(OperatorTypeStringContains):
- var scaf StringContainsAdvancedFilter
- err := json.Unmarshal(body, &scaf)
- return scaf, err
- default:
- var af AdvancedFilter
- err := json.Unmarshal(body, &af)
- return af, err
- }
-}
-func unmarshalBasicAdvancedFilterArray(body []byte) ([]BasicAdvancedFilter, error) {
- var rawMessages []*json.RawMessage
- err := json.Unmarshal(body, &rawMessages)
- if err != nil {
- return nil, err
- }
-
- afArray := make([]BasicAdvancedFilter, len(rawMessages))
-
- for index, rawMessage := range rawMessages {
- af, err := unmarshalBasicAdvancedFilter(*rawMessage)
- if err != nil {
- return nil, err
- }
- afArray[index] = af
- }
- return afArray, nil
-}
-
-// MarshalJSON is the custom marshaler for AdvancedFilter.
-func (af AdvancedFilter) MarshalJSON() ([]byte, error) {
- af.OperatorType = OperatorTypeAdvancedFilter
- objectMap := make(map[string]interface{})
- if af.Key != nil {
- objectMap["key"] = af.Key
- }
- if af.OperatorType != "" {
- objectMap["operatorType"] = af.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return &af, true
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
-func (af AdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &af, true
-}
-
-// BoolEqualsAdvancedFilter boolEquals Filter
-type BoolEqualsAdvancedFilter struct {
- // Value - The filter value
- Value *bool `json:"value,omitempty"`
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) MarshalJSON() ([]byte, error) {
- beaf.OperatorType = OperatorTypeBoolEquals
- objectMap := make(map[string]interface{})
- if beaf.Value != nil {
- objectMap["value"] = beaf.Value
- }
- if beaf.Key != nil {
- objectMap["key"] = beaf.Key
- }
- if beaf.OperatorType != "" {
- objectMap["operatorType"] = beaf.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return &beaf, true
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
-func (beaf BoolEqualsAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &beaf, true
-}
-
-// BasicDeadLetterDestination information about the dead letter destination for an event subscription. To configure a
-// deadletter destination, do not directly instantiate an object of this class. Instead, instantiate an object of a
-// derived class. Currently, StorageBlobDeadLetterDestination is the only class that derives from this class.
-type BasicDeadLetterDestination interface {
- AsStorageBlobDeadLetterDestination() (*StorageBlobDeadLetterDestination, bool)
- AsDeadLetterDestination() (*DeadLetterDestination, bool)
-}
-
-// DeadLetterDestination information about the dead letter destination for an event subscription. To configure
-// a deadletter destination, do not directly instantiate an object of this class. Instead, instantiate an
-// object of a derived class. Currently, StorageBlobDeadLetterDestination is the only class that derives from
-// this class.
-type DeadLetterDestination struct {
- // EndpointType - Possible values include: 'EndpointTypeDeadLetterDestination', 'EndpointTypeStorageBlob'
- EndpointType EndpointTypeBasicDeadLetterDestination `json:"endpointType,omitempty"`
-}
-
-func unmarshalBasicDeadLetterDestination(body []byte) (BasicDeadLetterDestination, error) {
- var m map[string]interface{}
- err := json.Unmarshal(body, &m)
- if err != nil {
- return nil, err
- }
-
- switch m["endpointType"] {
- case string(EndpointTypeStorageBlob):
- var sbdld StorageBlobDeadLetterDestination
- err := json.Unmarshal(body, &sbdld)
- return sbdld, err
- default:
- var dld DeadLetterDestination
- err := json.Unmarshal(body, &dld)
- return dld, err
- }
-}
-func unmarshalBasicDeadLetterDestinationArray(body []byte) ([]BasicDeadLetterDestination, error) {
- var rawMessages []*json.RawMessage
- err := json.Unmarshal(body, &rawMessages)
- if err != nil {
- return nil, err
- }
-
- dldArray := make([]BasicDeadLetterDestination, len(rawMessages))
-
- for index, rawMessage := range rawMessages {
- dld, err := unmarshalBasicDeadLetterDestination(*rawMessage)
- if err != nil {
- return nil, err
- }
- dldArray[index] = dld
- }
- return dldArray, nil
-}
-
-// MarshalJSON is the custom marshaler for DeadLetterDestination.
-func (dld DeadLetterDestination) MarshalJSON() ([]byte, error) {
- dld.EndpointType = EndpointTypeDeadLetterDestination
- objectMap := make(map[string]interface{})
- if dld.EndpointType != "" {
- objectMap["endpointType"] = dld.EndpointType
- }
- return json.Marshal(objectMap)
-}
-
-// AsStorageBlobDeadLetterDestination is the BasicDeadLetterDestination implementation for DeadLetterDestination.
-func (dld DeadLetterDestination) AsStorageBlobDeadLetterDestination() (*StorageBlobDeadLetterDestination, bool) {
- return nil, false
-}
-
-// AsDeadLetterDestination is the BasicDeadLetterDestination implementation for DeadLetterDestination.
-func (dld DeadLetterDestination) AsDeadLetterDestination() (*DeadLetterDestination, bool) {
- return &dld, true
-}
-
-// AsBasicDeadLetterDestination is the BasicDeadLetterDestination implementation for DeadLetterDestination.
-func (dld DeadLetterDestination) AsBasicDeadLetterDestination() (BasicDeadLetterDestination, bool) {
- return &dld, true
-}
-
-// Domain eventGrid Domain
-type Domain struct {
- autorest.Response `json:"-"`
- // DomainProperties - Properties of the domain
- *DomainProperties `json:"properties,omitempty"`
- // Location - Location of the resource
- Location *string `json:"location,omitempty"`
- // Tags - Tags of the resource
- Tags map[string]*string `json:"tags"`
- // ID - READ-ONLY; Fully qualified identifier of the resource
- ID *string `json:"id,omitempty"`
- // Name - READ-ONLY; Name of the resource
- Name *string `json:"name,omitempty"`
- // Type - READ-ONLY; Type of the resource
- Type *string `json:"type,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for Domain.
-func (d Domain) MarshalJSON() ([]byte, error) {
- objectMap := make(map[string]interface{})
- if d.DomainProperties != nil {
- objectMap["properties"] = d.DomainProperties
- }
- if d.Location != nil {
- objectMap["location"] = d.Location
- }
- if d.Tags != nil {
- objectMap["tags"] = d.Tags
- }
- return json.Marshal(objectMap)
-}
-
-// UnmarshalJSON is the custom unmarshaler for Domain struct.
-func (d *Domain) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "properties":
- if v != nil {
- var domainProperties DomainProperties
- err = json.Unmarshal(*v, &domainProperties)
- if err != nil {
- return err
- }
- d.DomainProperties = &domainProperties
- }
- case "location":
- if v != nil {
- var location string
- err = json.Unmarshal(*v, &location)
- if err != nil {
- return err
- }
- d.Location = &location
- }
- case "tags":
- if v != nil {
- var tags map[string]*string
- err = json.Unmarshal(*v, &tags)
- if err != nil {
- return err
- }
- d.Tags = tags
- }
- case "id":
- if v != nil {
- var ID string
- err = json.Unmarshal(*v, &ID)
- if err != nil {
- return err
- }
- d.ID = &ID
- }
- case "name":
- if v != nil {
- var name string
- err = json.Unmarshal(*v, &name)
- if err != nil {
- return err
- }
- d.Name = &name
- }
- case "type":
- if v != nil {
- var typeVar string
- err = json.Unmarshal(*v, &typeVar)
- if err != nil {
- return err
- }
- d.Type = &typeVar
- }
- }
- }
-
- return nil
-}
-
-// DomainProperties properties of the Domain
-type DomainProperties struct {
- // ProvisioningState - READ-ONLY; Provisioning state of the domain. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed'
- ProvisioningState DomainProvisioningState `json:"provisioningState,omitempty"`
- // Endpoint - READ-ONLY; Endpoint for the domain.
- Endpoint *string `json:"endpoint,omitempty"`
- // InputSchema - This determines the format that Event Grid should expect for incoming events published to the domain. Possible values include: 'InputSchemaEventGridSchema', 'InputSchemaCustomEventSchema', 'InputSchemaCloudEventV01Schema'
- InputSchema InputSchema `json:"inputSchema,omitempty"`
- // InputSchemaMapping - Information about the InputSchemaMapping which specified the info about mapping event payload.
- InputSchemaMapping BasicInputSchemaMapping `json:"inputSchemaMapping,omitempty"`
-}
-
-// UnmarshalJSON is the custom unmarshaler for DomainProperties struct.
-func (dp *DomainProperties) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "provisioningState":
- if v != nil {
- var provisioningState DomainProvisioningState
- err = json.Unmarshal(*v, &provisioningState)
- if err != nil {
- return err
- }
- dp.ProvisioningState = provisioningState
- }
- case "endpoint":
- if v != nil {
- var endpoint string
- err = json.Unmarshal(*v, &endpoint)
- if err != nil {
- return err
- }
- dp.Endpoint = &endpoint
- }
- case "inputSchema":
- if v != nil {
- var inputSchema InputSchema
- err = json.Unmarshal(*v, &inputSchema)
- if err != nil {
- return err
- }
- dp.InputSchema = inputSchema
- }
- case "inputSchemaMapping":
- if v != nil {
- inputSchemaMapping, err := unmarshalBasicInputSchemaMapping(*v)
- if err != nil {
- return err
- }
- dp.InputSchemaMapping = inputSchemaMapping
- }
- }
- }
-
- return nil
-}
-
-// DomainRegenerateKeyRequest domain regenerate share access key request
-type DomainRegenerateKeyRequest struct {
- // KeyName - Key name to regenerate key1 or key2
- KeyName *string `json:"keyName,omitempty"`
-}
-
-// DomainsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a long-running
-// operation.
-type DomainsCreateOrUpdateFuture struct {
- azure.Future
-}
-
-// Result returns the result of the asynchronous operation.
-// If the operation has not completed it will return an error.
-func (future *DomainsCreateOrUpdateFuture) Result(client DomainsClient) (d Domain, err error) {
- var done bool
- done, err = future.DoneWithContext(context.Background(), client)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.DomainsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure")
- return
- }
- if !done {
- err = azure.NewAsyncOpIncompleteError("eventgrid.DomainsCreateOrUpdateFuture")
- return
- }
- sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
- if d.Response.Response, err = future.GetResult(sender); err == nil && d.Response.Response.StatusCode != http.StatusNoContent {
- d, err = client.CreateOrUpdateResponder(d.Response.Response)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.DomainsCreateOrUpdateFuture", "Result", d.Response.Response, "Failure responding to request")
- }
- }
- return
-}
-
-// DomainsDeleteFuture an abstraction for monitoring and retrieving the results of a long-running
-// operation.
-type DomainsDeleteFuture struct {
- azure.Future
-}
-
-// Result returns the result of the asynchronous operation.
-// If the operation has not completed it will return an error.
-func (future *DomainsDeleteFuture) Result(client DomainsClient) (ar autorest.Response, err error) {
- var done bool
- done, err = future.DoneWithContext(context.Background(), client)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.DomainsDeleteFuture", "Result", future.Response(), "Polling failure")
- return
- }
- if !done {
- err = azure.NewAsyncOpIncompleteError("eventgrid.DomainsDeleteFuture")
- return
- }
- ar.Response = future.Response()
- return
-}
-
-// DomainSharedAccessKeys shared access keys of the Domain
-type DomainSharedAccessKeys struct {
- autorest.Response `json:"-"`
- // Key1 - Shared access key1 for the domain.
- Key1 *string `json:"key1,omitempty"`
- // Key2 - Shared access key2 for the domain.
- Key2 *string `json:"key2,omitempty"`
-}
-
-// DomainsListResult result of the List Domains operation
-type DomainsListResult struct {
- autorest.Response `json:"-"`
- // Value - A collection of Domains
- Value *[]Domain `json:"value,omitempty"`
-}
-
-// DomainsUpdateFuture an abstraction for monitoring and retrieving the results of a long-running
-// operation.
-type DomainsUpdateFuture struct {
- azure.Future
-}
-
-// Result returns the result of the asynchronous operation.
-// If the operation has not completed it will return an error.
-func (future *DomainsUpdateFuture) Result(client DomainsClient) (d Domain, err error) {
- var done bool
- done, err = future.DoneWithContext(context.Background(), client)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.DomainsUpdateFuture", "Result", future.Response(), "Polling failure")
- return
- }
- if !done {
- err = azure.NewAsyncOpIncompleteError("eventgrid.DomainsUpdateFuture")
- return
- }
- sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
- if d.Response.Response, err = future.GetResult(sender); err == nil && d.Response.Response.StatusCode != http.StatusNoContent {
- d, err = client.UpdateResponder(d.Response.Response)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.DomainsUpdateFuture", "Result", d.Response.Response, "Failure responding to request")
- }
- }
- return
-}
-
-// DomainTopic domain Topic
-type DomainTopic struct {
- autorest.Response `json:"-"`
- // ID - READ-ONLY; Fully qualified identifier of the resource
- ID *string `json:"id,omitempty"`
- // Name - READ-ONLY; Name of the resource
- Name *string `json:"name,omitempty"`
- // Type - READ-ONLY; Type of the resource
- Type *string `json:"type,omitempty"`
-}
-
-// DomainTopicsListResult result of the List Domain Topics operation
-type DomainTopicsListResult struct {
- autorest.Response `json:"-"`
- // Value - A collection of Domain Topics
- Value *[]DomainTopic `json:"value,omitempty"`
-}
-
-// DomainUpdateParameters properties of the Domain update
-type DomainUpdateParameters struct {
- // Tags - Tags of the domains resource
- Tags map[string]*string `json:"tags"`
-}
-
-// MarshalJSON is the custom marshaler for DomainUpdateParameters.
-func (dup DomainUpdateParameters) MarshalJSON() ([]byte, error) {
- objectMap := make(map[string]interface{})
- if dup.Tags != nil {
- objectMap["tags"] = dup.Tags
- }
- return json.Marshal(objectMap)
-}
-
-// EventHubEventSubscriptionDestination information about the event hub destination for an event
-// subscription
-type EventHubEventSubscriptionDestination struct {
- // EventHubEventSubscriptionDestinationProperties - Event Hub Properties of the event subscription destination
- *EventHubEventSubscriptionDestinationProperties `json:"properties,omitempty"`
- // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection'
- EndpointType EndpointType `json:"endpointType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for EventHubEventSubscriptionDestination.
-func (ehesd EventHubEventSubscriptionDestination) MarshalJSON() ([]byte, error) {
- ehesd.EndpointType = EndpointTypeEventHub
- objectMap := make(map[string]interface{})
- if ehesd.EventHubEventSubscriptionDestinationProperties != nil {
- objectMap["properties"] = ehesd.EventHubEventSubscriptionDestinationProperties
- }
- if ehesd.EndpointType != "" {
- objectMap["endpointType"] = ehesd.EndpointType
- }
- return json.Marshal(objectMap)
-}
-
-// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
-func (ehesd EventHubEventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
-func (ehesd EventHubEventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
- return &ehesd, true
-}
-
-// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
-func (ehesd EventHubEventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
-func (ehesd EventHubEventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
-func (ehesd EventHubEventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
-func (ehesd EventHubEventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
- return &ehesd, true
-}
-
-// UnmarshalJSON is the custom unmarshaler for EventHubEventSubscriptionDestination struct.
-func (ehesd *EventHubEventSubscriptionDestination) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "properties":
- if v != nil {
- var eventHubEventSubscriptionDestinationProperties EventHubEventSubscriptionDestinationProperties
- err = json.Unmarshal(*v, &eventHubEventSubscriptionDestinationProperties)
- if err != nil {
- return err
- }
- ehesd.EventHubEventSubscriptionDestinationProperties = &eventHubEventSubscriptionDestinationProperties
- }
- case "endpointType":
- if v != nil {
- var endpointType EndpointType
- err = json.Unmarshal(*v, &endpointType)
- if err != nil {
- return err
- }
- ehesd.EndpointType = endpointType
- }
- }
- }
-
- return nil
-}
-
-// EventHubEventSubscriptionDestinationProperties the properties for a event hub destination.
-type EventHubEventSubscriptionDestinationProperties struct {
- // ResourceID - The Azure Resource Id that represents the endpoint of an Event Hub destination of an event subscription.
- ResourceID *string `json:"resourceId,omitempty"`
-}
-
-// EventSubscription event Subscription
-type EventSubscription struct {
- autorest.Response `json:"-"`
- // EventSubscriptionProperties - Properties of the event subscription
- *EventSubscriptionProperties `json:"properties,omitempty"`
- // ID - READ-ONLY; Fully qualified identifier of the resource
- ID *string `json:"id,omitempty"`
- // Name - READ-ONLY; Name of the resource
- Name *string `json:"name,omitempty"`
- // Type - READ-ONLY; Type of the resource
- Type *string `json:"type,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for EventSubscription.
-func (es EventSubscription) MarshalJSON() ([]byte, error) {
- objectMap := make(map[string]interface{})
- if es.EventSubscriptionProperties != nil {
- objectMap["properties"] = es.EventSubscriptionProperties
- }
- return json.Marshal(objectMap)
-}
-
-// UnmarshalJSON is the custom unmarshaler for EventSubscription struct.
-func (es *EventSubscription) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "properties":
- if v != nil {
- var eventSubscriptionProperties EventSubscriptionProperties
- err = json.Unmarshal(*v, &eventSubscriptionProperties)
- if err != nil {
- return err
- }
- es.EventSubscriptionProperties = &eventSubscriptionProperties
- }
- case "id":
- if v != nil {
- var ID string
- err = json.Unmarshal(*v, &ID)
- if err != nil {
- return err
- }
- es.ID = &ID
- }
- case "name":
- if v != nil {
- var name string
- err = json.Unmarshal(*v, &name)
- if err != nil {
- return err
- }
- es.Name = &name
- }
- case "type":
- if v != nil {
- var typeVar string
- err = json.Unmarshal(*v, &typeVar)
- if err != nil {
- return err
- }
- es.Type = &typeVar
- }
- }
- }
-
- return nil
-}
-
-// BasicEventSubscriptionDestination information about the destination for an event subscription
-type BasicEventSubscriptionDestination interface {
- AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool)
- AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool)
- AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool)
- AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool)
- AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool)
-}
-
-// EventSubscriptionDestination information about the destination for an event subscription
-type EventSubscriptionDestination struct {
- // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection'
- EndpointType EndpointType `json:"endpointType,omitempty"`
-}
-
-func unmarshalBasicEventSubscriptionDestination(body []byte) (BasicEventSubscriptionDestination, error) {
- var m map[string]interface{}
- err := json.Unmarshal(body, &m)
- if err != nil {
- return nil, err
- }
-
- switch m["endpointType"] {
- case string(EndpointTypeWebHook):
- var whesd WebHookEventSubscriptionDestination
- err := json.Unmarshal(body, &whesd)
- return whesd, err
- case string(EndpointTypeEventHub):
- var ehesd EventHubEventSubscriptionDestination
- err := json.Unmarshal(body, &ehesd)
- return ehesd, err
- case string(EndpointTypeStorageQueue):
- var sqesd StorageQueueEventSubscriptionDestination
- err := json.Unmarshal(body, &sqesd)
- return sqesd, err
- case string(EndpointTypeHybridConnection):
- var hcesd HybridConnectionEventSubscriptionDestination
- err := json.Unmarshal(body, &hcesd)
- return hcesd, err
- default:
- var esd EventSubscriptionDestination
- err := json.Unmarshal(body, &esd)
- return esd, err
- }
-}
-func unmarshalBasicEventSubscriptionDestinationArray(body []byte) ([]BasicEventSubscriptionDestination, error) {
- var rawMessages []*json.RawMessage
- err := json.Unmarshal(body, &rawMessages)
- if err != nil {
- return nil, err
- }
-
- esdArray := make([]BasicEventSubscriptionDestination, len(rawMessages))
-
- for index, rawMessage := range rawMessages {
- esd, err := unmarshalBasicEventSubscriptionDestination(*rawMessage)
- if err != nil {
- return nil, err
- }
- esdArray[index] = esd
- }
- return esdArray, nil
-}
-
-// MarshalJSON is the custom marshaler for EventSubscriptionDestination.
-func (esd EventSubscriptionDestination) MarshalJSON() ([]byte, error) {
- esd.EndpointType = EndpointTypeEventSubscriptionDestination
- objectMap := make(map[string]interface{})
- if esd.EndpointType != "" {
- objectMap["endpointType"] = esd.EndpointType
- }
- return json.Marshal(objectMap)
-}
-
-// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
-func (esd EventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
-func (esd EventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
-func (esd EventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
-func (esd EventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
-func (esd EventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
- return &esd, true
-}
-
-// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
-func (esd EventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
- return &esd, true
-}
-
-// EventSubscriptionFilter filter for the Event Subscription
-type EventSubscriptionFilter struct {
- // SubjectBeginsWith - An optional string to filter events for an event subscription based on a resource path prefix.
- // The format of this depends on the publisher of the events.
- // Wildcard characters are not supported in this path.
- SubjectBeginsWith *string `json:"subjectBeginsWith,omitempty"`
- // SubjectEndsWith - An optional string to filter events for an event subscription based on a resource path suffix.
- // Wildcard characters are not supported in this path.
- SubjectEndsWith *string `json:"subjectEndsWith,omitempty"`
- // IncludedEventTypes - A list of applicable event types that need to be part of the event subscription.
- // If it is desired to subscribe to all event types, the string "all" needs to be specified as an element in this list.
- IncludedEventTypes *[]string `json:"includedEventTypes,omitempty"`
- // IsSubjectCaseSensitive - Specifies if the SubjectBeginsWith and SubjectEndsWith properties of the filter
- // should be compared in a case sensitive manner.
- IsSubjectCaseSensitive *bool `json:"isSubjectCaseSensitive,omitempty"`
- // AdvancedFilters - A list of advanced filters.
- AdvancedFilters *[]BasicAdvancedFilter `json:"advancedFilters,omitempty"`
-}
-
-// UnmarshalJSON is the custom unmarshaler for EventSubscriptionFilter struct.
-func (esf *EventSubscriptionFilter) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "subjectBeginsWith":
- if v != nil {
- var subjectBeginsWith string
- err = json.Unmarshal(*v, &subjectBeginsWith)
- if err != nil {
- return err
- }
- esf.SubjectBeginsWith = &subjectBeginsWith
- }
- case "subjectEndsWith":
- if v != nil {
- var subjectEndsWith string
- err = json.Unmarshal(*v, &subjectEndsWith)
- if err != nil {
- return err
- }
- esf.SubjectEndsWith = &subjectEndsWith
- }
- case "includedEventTypes":
- if v != nil {
- var includedEventTypes []string
- err = json.Unmarshal(*v, &includedEventTypes)
- if err != nil {
- return err
- }
- esf.IncludedEventTypes = &includedEventTypes
- }
- case "isSubjectCaseSensitive":
- if v != nil {
- var isSubjectCaseSensitive bool
- err = json.Unmarshal(*v, &isSubjectCaseSensitive)
- if err != nil {
- return err
- }
- esf.IsSubjectCaseSensitive = &isSubjectCaseSensitive
- }
- case "advancedFilters":
- if v != nil {
- advancedFilters, err := unmarshalBasicAdvancedFilterArray(*v)
- if err != nil {
- return err
- }
- esf.AdvancedFilters = &advancedFilters
- }
- }
- }
-
- return nil
-}
-
-// EventSubscriptionFullURL full endpoint url of an event subscription
-type EventSubscriptionFullURL struct {
- autorest.Response `json:"-"`
- // EndpointURL - The URL that represents the endpoint of the destination of an event subscription.
- EndpointURL *string `json:"endpointUrl,omitempty"`
-}
-
-// EventSubscriptionProperties properties of the Event Subscription
-type EventSubscriptionProperties struct {
- // Topic - READ-ONLY; Name of the topic of the event subscription.
- Topic *string `json:"topic,omitempty"`
- // ProvisioningState - READ-ONLY; Provisioning state of the event subscription. Possible values include: 'EventSubscriptionProvisioningStateCreating', 'EventSubscriptionProvisioningStateUpdating', 'EventSubscriptionProvisioningStateDeleting', 'EventSubscriptionProvisioningStateSucceeded', 'EventSubscriptionProvisioningStateCanceled', 'EventSubscriptionProvisioningStateFailed', 'EventSubscriptionProvisioningStateAwaitingManualAction'
- ProvisioningState EventSubscriptionProvisioningState `json:"provisioningState,omitempty"`
- // Destination - Information about the destination where events have to be delivered for the event subscription.
- Destination BasicEventSubscriptionDestination `json:"destination,omitempty"`
- // Filter - Information about the filter for the event subscription.
- Filter *EventSubscriptionFilter `json:"filter,omitempty"`
- // Labels - List of user defined labels.
- Labels *[]string `json:"labels,omitempty"`
- // ExpirationTimeUtc - Expiration time of the event subscription.
- ExpirationTimeUtc *date.Time `json:"expirationTimeUtc,omitempty"`
- // EventDeliverySchema - The event delivery schema for the event subscription. Possible values include: 'EventGridSchema', 'CloudEventV01Schema', 'CustomInputSchema'
- EventDeliverySchema EventDeliverySchema `json:"eventDeliverySchema,omitempty"`
- // RetryPolicy - The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events.
- RetryPolicy *RetryPolicy `json:"retryPolicy,omitempty"`
- // DeadLetterDestination - The DeadLetter destination of the event subscription.
- DeadLetterDestination BasicDeadLetterDestination `json:"deadLetterDestination,omitempty"`
-}
-
-// UnmarshalJSON is the custom unmarshaler for EventSubscriptionProperties struct.
-func (esp *EventSubscriptionProperties) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "topic":
- if v != nil {
- var topic string
- err = json.Unmarshal(*v, &topic)
- if err != nil {
- return err
- }
- esp.Topic = &topic
- }
- case "provisioningState":
- if v != nil {
- var provisioningState EventSubscriptionProvisioningState
- err = json.Unmarshal(*v, &provisioningState)
- if err != nil {
- return err
- }
- esp.ProvisioningState = provisioningState
- }
- case "destination":
- if v != nil {
- destination, err := unmarshalBasicEventSubscriptionDestination(*v)
- if err != nil {
- return err
- }
- esp.Destination = destination
- }
- case "filter":
- if v != nil {
- var filter EventSubscriptionFilter
- err = json.Unmarshal(*v, &filter)
- if err != nil {
- return err
- }
- esp.Filter = &filter
- }
- case "labels":
- if v != nil {
- var labels []string
- err = json.Unmarshal(*v, &labels)
- if err != nil {
- return err
- }
- esp.Labels = &labels
- }
- case "expirationTimeUtc":
- if v != nil {
- var expirationTimeUtc date.Time
- err = json.Unmarshal(*v, &expirationTimeUtc)
- if err != nil {
- return err
- }
- esp.ExpirationTimeUtc = &expirationTimeUtc
- }
- case "eventDeliverySchema":
- if v != nil {
- var eventDeliverySchema EventDeliverySchema
- err = json.Unmarshal(*v, &eventDeliverySchema)
- if err != nil {
- return err
- }
- esp.EventDeliverySchema = eventDeliverySchema
- }
- case "retryPolicy":
- if v != nil {
- var retryPolicy RetryPolicy
- err = json.Unmarshal(*v, &retryPolicy)
- if err != nil {
- return err
- }
- esp.RetryPolicy = &retryPolicy
- }
- case "deadLetterDestination":
- if v != nil {
- deadLetterDestination, err := unmarshalBasicDeadLetterDestination(*v)
- if err != nil {
- return err
- }
- esp.DeadLetterDestination = deadLetterDestination
- }
- }
- }
-
- return nil
-}
-
-// EventSubscriptionsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a
-// long-running operation.
-type EventSubscriptionsCreateOrUpdateFuture struct {
- azure.Future
-}
-
-// Result returns the result of the asynchronous operation.
-// If the operation has not completed it will return an error.
-func (future *EventSubscriptionsCreateOrUpdateFuture) Result(client EventSubscriptionsClient) (es EventSubscription, err error) {
- var done bool
- done, err = future.DoneWithContext(context.Background(), client)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure")
- return
- }
- if !done {
- err = azure.NewAsyncOpIncompleteError("eventgrid.EventSubscriptionsCreateOrUpdateFuture")
- return
- }
- sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
- if es.Response.Response, err = future.GetResult(sender); err == nil && es.Response.Response.StatusCode != http.StatusNoContent {
- es, err = client.CreateOrUpdateResponder(es.Response.Response)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsCreateOrUpdateFuture", "Result", es.Response.Response, "Failure responding to request")
- }
- }
- return
-}
-
-// EventSubscriptionsDeleteFuture an abstraction for monitoring and retrieving the results of a
-// long-running operation.
-type EventSubscriptionsDeleteFuture struct {
- azure.Future
-}
-
-// Result returns the result of the asynchronous operation.
-// If the operation has not completed it will return an error.
-func (future *EventSubscriptionsDeleteFuture) Result(client EventSubscriptionsClient) (ar autorest.Response, err error) {
- var done bool
- done, err = future.DoneWithContext(context.Background(), client)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsDeleteFuture", "Result", future.Response(), "Polling failure")
- return
- }
- if !done {
- err = azure.NewAsyncOpIncompleteError("eventgrid.EventSubscriptionsDeleteFuture")
- return
- }
- ar.Response = future.Response()
- return
-}
-
-// EventSubscriptionsListResult result of the List EventSubscriptions operation
-type EventSubscriptionsListResult struct {
- autorest.Response `json:"-"`
- // Value - A collection of EventSubscriptions
- Value *[]EventSubscription `json:"value,omitempty"`
-}
-
-// EventSubscriptionsUpdateFuture an abstraction for monitoring and retrieving the results of a
-// long-running operation.
-type EventSubscriptionsUpdateFuture struct {
- azure.Future
-}
-
-// Result returns the result of the asynchronous operation.
-// If the operation has not completed it will return an error.
-func (future *EventSubscriptionsUpdateFuture) Result(client EventSubscriptionsClient) (es EventSubscription, err error) {
- var done bool
- done, err = future.DoneWithContext(context.Background(), client)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsUpdateFuture", "Result", future.Response(), "Polling failure")
- return
- }
- if !done {
- err = azure.NewAsyncOpIncompleteError("eventgrid.EventSubscriptionsUpdateFuture")
- return
- }
- sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
- if es.Response.Response, err = future.GetResult(sender); err == nil && es.Response.Response.StatusCode != http.StatusNoContent {
- es, err = client.UpdateResponder(es.Response.Response)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsUpdateFuture", "Result", es.Response.Response, "Failure responding to request")
- }
- }
- return
-}
-
-// EventSubscriptionUpdateParameters properties of the Event Subscription update
-type EventSubscriptionUpdateParameters struct {
- // Destination - Information about the destination where events have to be delivered for the event subscription.
- Destination BasicEventSubscriptionDestination `json:"destination,omitempty"`
- // Filter - Information about the filter for the event subscription.
- Filter *EventSubscriptionFilter `json:"filter,omitempty"`
- // Labels - List of user defined labels.
- Labels *[]string `json:"labels,omitempty"`
- // ExpirationTimeUtc - Information about the expiration time for the event subscription.
- ExpirationTimeUtc *date.Time `json:"expirationTimeUtc,omitempty"`
- // EventDeliverySchema - The event delivery schema for the event subscription. Possible values include: 'EventGridSchema', 'CloudEventV01Schema', 'CustomInputSchema'
- EventDeliverySchema EventDeliverySchema `json:"eventDeliverySchema,omitempty"`
- // RetryPolicy - The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events.
- RetryPolicy *RetryPolicy `json:"retryPolicy,omitempty"`
- // DeadLetterDestination - The DeadLetter destination of the event subscription.
- DeadLetterDestination BasicDeadLetterDestination `json:"deadLetterDestination,omitempty"`
-}
-
-// UnmarshalJSON is the custom unmarshaler for EventSubscriptionUpdateParameters struct.
-func (esup *EventSubscriptionUpdateParameters) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "destination":
- if v != nil {
- destination, err := unmarshalBasicEventSubscriptionDestination(*v)
- if err != nil {
- return err
- }
- esup.Destination = destination
- }
- case "filter":
- if v != nil {
- var filter EventSubscriptionFilter
- err = json.Unmarshal(*v, &filter)
- if err != nil {
- return err
- }
- esup.Filter = &filter
- }
- case "labels":
- if v != nil {
- var labels []string
- err = json.Unmarshal(*v, &labels)
- if err != nil {
- return err
- }
- esup.Labels = &labels
- }
- case "expirationTimeUtc":
- if v != nil {
- var expirationTimeUtc date.Time
- err = json.Unmarshal(*v, &expirationTimeUtc)
- if err != nil {
- return err
- }
- esup.ExpirationTimeUtc = &expirationTimeUtc
- }
- case "eventDeliverySchema":
- if v != nil {
- var eventDeliverySchema EventDeliverySchema
- err = json.Unmarshal(*v, &eventDeliverySchema)
- if err != nil {
- return err
- }
- esup.EventDeliverySchema = eventDeliverySchema
- }
- case "retryPolicy":
- if v != nil {
- var retryPolicy RetryPolicy
- err = json.Unmarshal(*v, &retryPolicy)
- if err != nil {
- return err
- }
- esup.RetryPolicy = &retryPolicy
- }
- case "deadLetterDestination":
- if v != nil {
- deadLetterDestination, err := unmarshalBasicDeadLetterDestination(*v)
- if err != nil {
- return err
- }
- esup.DeadLetterDestination = deadLetterDestination
- }
- }
- }
-
- return nil
-}
-
-// EventType event Type for a subject under a topic
-type EventType struct {
- // EventTypeProperties - Properties of the event type.
- *EventTypeProperties `json:"properties,omitempty"`
- // ID - READ-ONLY; Fully qualified identifier of the resource
- ID *string `json:"id,omitempty"`
- // Name - READ-ONLY; Name of the resource
- Name *string `json:"name,omitempty"`
- // Type - READ-ONLY; Type of the resource
- Type *string `json:"type,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for EventType.
-func (et EventType) MarshalJSON() ([]byte, error) {
- objectMap := make(map[string]interface{})
- if et.EventTypeProperties != nil {
- objectMap["properties"] = et.EventTypeProperties
- }
- return json.Marshal(objectMap)
-}
-
-// UnmarshalJSON is the custom unmarshaler for EventType struct.
-func (et *EventType) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "properties":
- if v != nil {
- var eventTypeProperties EventTypeProperties
- err = json.Unmarshal(*v, &eventTypeProperties)
- if err != nil {
- return err
- }
- et.EventTypeProperties = &eventTypeProperties
- }
- case "id":
- if v != nil {
- var ID string
- err = json.Unmarshal(*v, &ID)
- if err != nil {
- return err
- }
- et.ID = &ID
- }
- case "name":
- if v != nil {
- var name string
- err = json.Unmarshal(*v, &name)
- if err != nil {
- return err
- }
- et.Name = &name
- }
- case "type":
- if v != nil {
- var typeVar string
- err = json.Unmarshal(*v, &typeVar)
- if err != nil {
- return err
- }
- et.Type = &typeVar
- }
- }
- }
-
- return nil
-}
-
-// EventTypeProperties properties of the event type
-type EventTypeProperties struct {
- // DisplayName - Display name of the event type.
- DisplayName *string `json:"displayName,omitempty"`
- // Description - Description of the event type.
- Description *string `json:"description,omitempty"`
- // SchemaURL - Url of the schema for this event type.
- SchemaURL *string `json:"schemaUrl,omitempty"`
-}
-
-// EventTypesListResult result of the List Event Types operation
-type EventTypesListResult struct {
- autorest.Response `json:"-"`
- // Value - A collection of event types
- Value *[]EventType `json:"value,omitempty"`
-}
-
-// HybridConnectionEventSubscriptionDestination information about the HybridConnection destination for an
-// event subscription.
-type HybridConnectionEventSubscriptionDestination struct {
- // HybridConnectionEventSubscriptionDestinationProperties - Hybrid connection Properties of the event subscription destination
- *HybridConnectionEventSubscriptionDestinationProperties `json:"properties,omitempty"`
- // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection'
- EndpointType EndpointType `json:"endpointType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for HybridConnectionEventSubscriptionDestination.
-func (hcesd HybridConnectionEventSubscriptionDestination) MarshalJSON() ([]byte, error) {
- hcesd.EndpointType = EndpointTypeHybridConnection
- objectMap := make(map[string]interface{})
- if hcesd.HybridConnectionEventSubscriptionDestinationProperties != nil {
- objectMap["properties"] = hcesd.HybridConnectionEventSubscriptionDestinationProperties
- }
- if hcesd.EndpointType != "" {
- objectMap["endpointType"] = hcesd.EndpointType
- }
- return json.Marshal(objectMap)
-}
-
-// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
-func (hcesd HybridConnectionEventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
-func (hcesd HybridConnectionEventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
-func (hcesd HybridConnectionEventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
-func (hcesd HybridConnectionEventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
- return &hcesd, true
-}
-
-// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
-func (hcesd HybridConnectionEventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
-func (hcesd HybridConnectionEventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
- return &hcesd, true
-}
-
-// UnmarshalJSON is the custom unmarshaler for HybridConnectionEventSubscriptionDestination struct.
-func (hcesd *HybridConnectionEventSubscriptionDestination) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "properties":
- if v != nil {
- var hybridConnectionEventSubscriptionDestinationProperties HybridConnectionEventSubscriptionDestinationProperties
- err = json.Unmarshal(*v, &hybridConnectionEventSubscriptionDestinationProperties)
- if err != nil {
- return err
- }
- hcesd.HybridConnectionEventSubscriptionDestinationProperties = &hybridConnectionEventSubscriptionDestinationProperties
- }
- case "endpointType":
- if v != nil {
- var endpointType EndpointType
- err = json.Unmarshal(*v, &endpointType)
- if err != nil {
- return err
- }
- hcesd.EndpointType = endpointType
- }
- }
- }
-
- return nil
-}
-
-// HybridConnectionEventSubscriptionDestinationProperties the properties for a hybrid connection
-// destination.
-type HybridConnectionEventSubscriptionDestinationProperties struct {
- // ResourceID - The Azure Resource ID of an hybrid connection that is the destination of an event subscription.
- ResourceID *string `json:"resourceId,omitempty"`
-}
-
-// BasicInputSchemaMapping by default, Event Grid expects events to be in the Event Grid event schema. Specifying an
-// input schema mapping enables publishing to Event Grid using a custom input schema. Currently, the only supported
-// type of InputSchemaMapping is 'JsonInputSchemaMapping'.
-type BasicInputSchemaMapping interface {
- AsJSONInputSchemaMapping() (*JSONInputSchemaMapping, bool)
- AsInputSchemaMapping() (*InputSchemaMapping, bool)
-}
-
-// InputSchemaMapping by default, Event Grid expects events to be in the Event Grid event schema. Specifying an
-// input schema mapping enables publishing to Event Grid using a custom input schema. Currently, the only
-// supported type of InputSchemaMapping is 'JsonInputSchemaMapping'.
-type InputSchemaMapping struct {
- // InputSchemaMappingType - Possible values include: 'InputSchemaMappingTypeInputSchemaMapping', 'InputSchemaMappingTypeJSON'
- InputSchemaMappingType InputSchemaMappingType `json:"inputSchemaMappingType,omitempty"`
-}
-
-func unmarshalBasicInputSchemaMapping(body []byte) (BasicInputSchemaMapping, error) {
- var m map[string]interface{}
- err := json.Unmarshal(body, &m)
- if err != nil {
- return nil, err
- }
-
- switch m["inputSchemaMappingType"] {
- case string(InputSchemaMappingTypeJSON):
- var jism JSONInputSchemaMapping
- err := json.Unmarshal(body, &jism)
- return jism, err
- default:
- var ism InputSchemaMapping
- err := json.Unmarshal(body, &ism)
- return ism, err
- }
-}
-func unmarshalBasicInputSchemaMappingArray(body []byte) ([]BasicInputSchemaMapping, error) {
- var rawMessages []*json.RawMessage
- err := json.Unmarshal(body, &rawMessages)
- if err != nil {
- return nil, err
- }
-
- ismArray := make([]BasicInputSchemaMapping, len(rawMessages))
-
- for index, rawMessage := range rawMessages {
- ism, err := unmarshalBasicInputSchemaMapping(*rawMessage)
- if err != nil {
- return nil, err
- }
- ismArray[index] = ism
- }
- return ismArray, nil
-}
-
-// MarshalJSON is the custom marshaler for InputSchemaMapping.
-func (ism InputSchemaMapping) MarshalJSON() ([]byte, error) {
- ism.InputSchemaMappingType = InputSchemaMappingTypeInputSchemaMapping
- objectMap := make(map[string]interface{})
- if ism.InputSchemaMappingType != "" {
- objectMap["inputSchemaMappingType"] = ism.InputSchemaMappingType
- }
- return json.Marshal(objectMap)
-}
-
-// AsJSONInputSchemaMapping is the BasicInputSchemaMapping implementation for InputSchemaMapping.
-func (ism InputSchemaMapping) AsJSONInputSchemaMapping() (*JSONInputSchemaMapping, bool) {
- return nil, false
-}
-
-// AsInputSchemaMapping is the BasicInputSchemaMapping implementation for InputSchemaMapping.
-func (ism InputSchemaMapping) AsInputSchemaMapping() (*InputSchemaMapping, bool) {
- return &ism, true
-}
-
-// AsBasicInputSchemaMapping is the BasicInputSchemaMapping implementation for InputSchemaMapping.
-func (ism InputSchemaMapping) AsBasicInputSchemaMapping() (BasicInputSchemaMapping, bool) {
- return &ism, true
-}
-
-// JSONField this is used to express the source of an input schema mapping for a single target field in the
-// Event Grid Event schema. This is currently used in the mappings for the 'id','topic' and 'eventTime'
-// properties. This represents a field in the input event schema.
-type JSONField struct {
- // SourceField - Name of a field in the input event schema that's to be used as the source of a mapping.
- SourceField *string `json:"sourceField,omitempty"`
-}
-
-// JSONFieldWithDefault this is used to express the source of an input schema mapping for a single target
-// field in the Event Grid Event schema. This is currently used in the mappings for the
-// 'subject','eventType' and 'dataVersion' properties. This represents a field in the input event schema
-// along with a default value to be used, and at least one of these two properties should be provided.
-type JSONFieldWithDefault struct {
- // SourceField - Name of a field in the input event schema that's to be used as the source of a mapping.
- SourceField *string `json:"sourceField,omitempty"`
- // DefaultValue - The default value to be used for mapping when a SourceField is not provided or if there's no property with the specified name in the published JSON event payload.
- DefaultValue *string `json:"defaultValue,omitempty"`
-}
-
-// JSONInputSchemaMapping this enables publishing to Event Grid using a custom input schema. This can be
-// used to map properties from a custom input JSON schema to the Event Grid event schema.
-type JSONInputSchemaMapping struct {
- // JSONInputSchemaMappingProperties - JSON Properties of the input schema mapping
- *JSONInputSchemaMappingProperties `json:"properties,omitempty"`
- // InputSchemaMappingType - Possible values include: 'InputSchemaMappingTypeInputSchemaMapping', 'InputSchemaMappingTypeJSON'
- InputSchemaMappingType InputSchemaMappingType `json:"inputSchemaMappingType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for JSONInputSchemaMapping.
-func (jism JSONInputSchemaMapping) MarshalJSON() ([]byte, error) {
- jism.InputSchemaMappingType = InputSchemaMappingTypeJSON
- objectMap := make(map[string]interface{})
- if jism.JSONInputSchemaMappingProperties != nil {
- objectMap["properties"] = jism.JSONInputSchemaMappingProperties
- }
- if jism.InputSchemaMappingType != "" {
- objectMap["inputSchemaMappingType"] = jism.InputSchemaMappingType
- }
- return json.Marshal(objectMap)
-}
-
-// AsJSONInputSchemaMapping is the BasicInputSchemaMapping implementation for JSONInputSchemaMapping.
-func (jism JSONInputSchemaMapping) AsJSONInputSchemaMapping() (*JSONInputSchemaMapping, bool) {
- return &jism, true
-}
-
-// AsInputSchemaMapping is the BasicInputSchemaMapping implementation for JSONInputSchemaMapping.
-func (jism JSONInputSchemaMapping) AsInputSchemaMapping() (*InputSchemaMapping, bool) {
- return nil, false
-}
-
-// AsBasicInputSchemaMapping is the BasicInputSchemaMapping implementation for JSONInputSchemaMapping.
-func (jism JSONInputSchemaMapping) AsBasicInputSchemaMapping() (BasicInputSchemaMapping, bool) {
- return &jism, true
-}
-
-// UnmarshalJSON is the custom unmarshaler for JSONInputSchemaMapping struct.
-func (jism *JSONInputSchemaMapping) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "properties":
- if v != nil {
- var JSONInputSchemaMappingProperties JSONInputSchemaMappingProperties
- err = json.Unmarshal(*v, &JSONInputSchemaMappingProperties)
- if err != nil {
- return err
- }
- jism.JSONInputSchemaMappingProperties = &JSONInputSchemaMappingProperties
- }
- case "inputSchemaMappingType":
- if v != nil {
- var inputSchemaMappingType InputSchemaMappingType
- err = json.Unmarshal(*v, &inputSchemaMappingType)
- if err != nil {
- return err
- }
- jism.InputSchemaMappingType = inputSchemaMappingType
- }
- }
- }
-
- return nil
-}
-
-// JSONInputSchemaMappingProperties this can be used to map properties of a source schema (or default
-// values, for certain supported properties) to properties of the EventGridEvent schema.
-type JSONInputSchemaMappingProperties struct {
- // ID - The mapping information for the Id property of the Event Grid Event.
- ID *JSONField `json:"id,omitempty"`
- // Topic - The mapping information for the Topic property of the Event Grid Event.
- Topic *JSONField `json:"topic,omitempty"`
- // EventTime - The mapping information for the EventTime property of the Event Grid Event.
- EventTime *JSONField `json:"eventTime,omitempty"`
- // EventType - The mapping information for the EventType property of the Event Grid Event.
- EventType *JSONFieldWithDefault `json:"eventType,omitempty"`
- // Subject - The mapping information for the Subject property of the Event Grid Event.
- Subject *JSONFieldWithDefault `json:"subject,omitempty"`
- // DataVersion - The mapping information for the DataVersion property of the Event Grid Event.
- DataVersion *JSONFieldWithDefault `json:"dataVersion,omitempty"`
-}
-
-// NumberGreaterThanAdvancedFilter numberGreaterThan Filter
-type NumberGreaterThanAdvancedFilter struct {
- // Value - The filter value
- Value *float64 `json:"value,omitempty"`
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) MarshalJSON() ([]byte, error) {
- ngtaf.OperatorType = OperatorTypeNumberGreaterThan
- objectMap := make(map[string]interface{})
- if ngtaf.Value != nil {
- objectMap["value"] = ngtaf.Value
- }
- if ngtaf.Key != nil {
- objectMap["key"] = ngtaf.Key
- }
- if ngtaf.OperatorType != "" {
- objectMap["operatorType"] = ngtaf.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return &ngtaf, true
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
-func (ngtaf NumberGreaterThanAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &ngtaf, true
-}
-
-// NumberGreaterThanOrEqualsAdvancedFilter numberGreaterThanOrEquals Filter
-type NumberGreaterThanOrEqualsAdvancedFilter struct {
- // Value - The filter value
- Value *float64 `json:"value,omitempty"`
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) MarshalJSON() ([]byte, error) {
- ngtoeaf.OperatorType = OperatorTypeNumberGreaterThanOrEquals
- objectMap := make(map[string]interface{})
- if ngtoeaf.Value != nil {
- objectMap["value"] = ngtoeaf.Value
- }
- if ngtoeaf.Key != nil {
- objectMap["key"] = ngtoeaf.Key
- }
- if ngtoeaf.OperatorType != "" {
- objectMap["operatorType"] = ngtoeaf.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return &ngtoeaf, true
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
-func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &ngtoeaf, true
-}
-
-// NumberInAdvancedFilter numberIn filter
-type NumberInAdvancedFilter struct {
- // Values - The set of filter values
- Values *[]float64 `json:"values,omitempty"`
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) MarshalJSON() ([]byte, error) {
- niaf.OperatorType = OperatorTypeNumberIn
- objectMap := make(map[string]interface{})
- if niaf.Values != nil {
- objectMap["values"] = niaf.Values
- }
- if niaf.Key != nil {
- objectMap["key"] = niaf.Key
- }
- if niaf.OperatorType != "" {
- objectMap["operatorType"] = niaf.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return &niaf, true
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
-func (niaf NumberInAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &niaf, true
-}
-
-// NumberLessThanAdvancedFilter numberLessThan Filter
-type NumberLessThanAdvancedFilter struct {
- // Value - The filter value
- Value *float64 `json:"value,omitempty"`
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) MarshalJSON() ([]byte, error) {
- nltaf.OperatorType = OperatorTypeNumberLessThan
- objectMap := make(map[string]interface{})
- if nltaf.Value != nil {
- objectMap["value"] = nltaf.Value
- }
- if nltaf.Key != nil {
- objectMap["key"] = nltaf.Key
- }
- if nltaf.OperatorType != "" {
- objectMap["operatorType"] = nltaf.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return &nltaf, true
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
-func (nltaf NumberLessThanAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &nltaf, true
-}
-
-// NumberLessThanOrEqualsAdvancedFilter numberLessThanOrEquals Filter
-type NumberLessThanOrEqualsAdvancedFilter struct {
- // Value - The filter value
- Value *float64 `json:"value,omitempty"`
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) MarshalJSON() ([]byte, error) {
- nltoeaf.OperatorType = OperatorTypeNumberLessThanOrEquals
- objectMap := make(map[string]interface{})
- if nltoeaf.Value != nil {
- objectMap["value"] = nltoeaf.Value
- }
- if nltoeaf.Key != nil {
- objectMap["key"] = nltoeaf.Key
- }
- if nltoeaf.OperatorType != "" {
- objectMap["operatorType"] = nltoeaf.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return &nltoeaf, true
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
-func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &nltoeaf, true
-}
-
-// NumberNotInAdvancedFilter numberNotIn Filter
-type NumberNotInAdvancedFilter struct {
- // Values - The set of filter values
- Values *[]float64 `json:"values,omitempty"`
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) MarshalJSON() ([]byte, error) {
- nniaf.OperatorType = OperatorTypeNumberNotIn
- objectMap := make(map[string]interface{})
- if nniaf.Values != nil {
- objectMap["values"] = nniaf.Values
- }
- if nniaf.Key != nil {
- objectMap["key"] = nniaf.Key
- }
- if nniaf.OperatorType != "" {
- objectMap["operatorType"] = nniaf.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return &nniaf, true
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
-func (nniaf NumberNotInAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &nniaf, true
-}
-
-// Operation represents an operation returned by the GetOperations request
-type Operation struct {
- // Name - Name of the operation
- Name *string `json:"name,omitempty"`
- // Display - Display name of the operation
- Display *OperationInfo `json:"display,omitempty"`
- // Origin - Origin of the operation
- Origin *string `json:"origin,omitempty"`
- // Properties - Properties of the operation
- Properties interface{} `json:"properties,omitempty"`
-}
-
-// OperationInfo information about an operation
-type OperationInfo struct {
- // Provider - Name of the provider
- Provider *string `json:"provider,omitempty"`
- // Resource - Name of the resource type
- Resource *string `json:"resource,omitempty"`
- // Operation - Name of the operation
- Operation *string `json:"operation,omitempty"`
- // Description - Description of the operation
- Description *string `json:"description,omitempty"`
-}
-
-// OperationsListResult result of the List Operations operation
-type OperationsListResult struct {
- autorest.Response `json:"-"`
- // Value - A collection of operations
- Value *[]Operation `json:"value,omitempty"`
-}
-
-// Resource definition of a Resource
-type Resource struct {
- // ID - READ-ONLY; Fully qualified identifier of the resource
- ID *string `json:"id,omitempty"`
- // Name - READ-ONLY; Name of the resource
- Name *string `json:"name,omitempty"`
- // Type - READ-ONLY; Type of the resource
- Type *string `json:"type,omitempty"`
-}
-
-// RetryPolicy information about the retry policy for an event subscription
-type RetryPolicy struct {
- // MaxDeliveryAttempts - Maximum number of delivery retry attempts for events.
- MaxDeliveryAttempts *int32 `json:"maxDeliveryAttempts,omitempty"`
- // EventTimeToLiveInMinutes - Time To Live (in minutes) for events.
- EventTimeToLiveInMinutes *int32 `json:"eventTimeToLiveInMinutes,omitempty"`
-}
-
-// StorageBlobDeadLetterDestination information about the storage blob based dead letter destination.
-type StorageBlobDeadLetterDestination struct {
- // StorageBlobDeadLetterDestinationProperties - The properties of the Storage Blob based deadletter destination
- *StorageBlobDeadLetterDestinationProperties `json:"properties,omitempty"`
- // EndpointType - Possible values include: 'EndpointTypeDeadLetterDestination', 'EndpointTypeStorageBlob'
- EndpointType EndpointTypeBasicDeadLetterDestination `json:"endpointType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for StorageBlobDeadLetterDestination.
-func (sbdld StorageBlobDeadLetterDestination) MarshalJSON() ([]byte, error) {
- sbdld.EndpointType = EndpointTypeStorageBlob
- objectMap := make(map[string]interface{})
- if sbdld.StorageBlobDeadLetterDestinationProperties != nil {
- objectMap["properties"] = sbdld.StorageBlobDeadLetterDestinationProperties
- }
- if sbdld.EndpointType != "" {
- objectMap["endpointType"] = sbdld.EndpointType
- }
- return json.Marshal(objectMap)
-}
-
-// AsStorageBlobDeadLetterDestination is the BasicDeadLetterDestination implementation for StorageBlobDeadLetterDestination.
-func (sbdld StorageBlobDeadLetterDestination) AsStorageBlobDeadLetterDestination() (*StorageBlobDeadLetterDestination, bool) {
- return &sbdld, true
-}
-
-// AsDeadLetterDestination is the BasicDeadLetterDestination implementation for StorageBlobDeadLetterDestination.
-func (sbdld StorageBlobDeadLetterDestination) AsDeadLetterDestination() (*DeadLetterDestination, bool) {
- return nil, false
-}
-
-// AsBasicDeadLetterDestination is the BasicDeadLetterDestination implementation for StorageBlobDeadLetterDestination.
-func (sbdld StorageBlobDeadLetterDestination) AsBasicDeadLetterDestination() (BasicDeadLetterDestination, bool) {
- return &sbdld, true
-}
-
-// UnmarshalJSON is the custom unmarshaler for StorageBlobDeadLetterDestination struct.
-func (sbdld *StorageBlobDeadLetterDestination) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "properties":
- if v != nil {
- var storageBlobDeadLetterDestinationProperties StorageBlobDeadLetterDestinationProperties
- err = json.Unmarshal(*v, &storageBlobDeadLetterDestinationProperties)
- if err != nil {
- return err
- }
- sbdld.StorageBlobDeadLetterDestinationProperties = &storageBlobDeadLetterDestinationProperties
- }
- case "endpointType":
- if v != nil {
- var endpointType EndpointTypeBasicDeadLetterDestination
- err = json.Unmarshal(*v, &endpointType)
- if err != nil {
- return err
- }
- sbdld.EndpointType = endpointType
- }
- }
- }
-
- return nil
-}
-
-// StorageBlobDeadLetterDestinationProperties properties of the storage blob based dead letter destination.
-type StorageBlobDeadLetterDestinationProperties struct {
- // ResourceID - The Azure Resource ID of the storage account that is the destination of the deadletter events
- ResourceID *string `json:"resourceId,omitempty"`
- // BlobContainerName - The name of the Storage blob container that is the destination of the deadletter events
- BlobContainerName *string `json:"blobContainerName,omitempty"`
-}
-
-// StorageQueueEventSubscriptionDestination information about the storage queue destination for an event
-// subscription.
-type StorageQueueEventSubscriptionDestination struct {
- // StorageQueueEventSubscriptionDestinationProperties - Storage Queue Properties of the event subscription destination
- *StorageQueueEventSubscriptionDestinationProperties `json:"properties,omitempty"`
- // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection'
- EndpointType EndpointType `json:"endpointType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for StorageQueueEventSubscriptionDestination.
-func (sqesd StorageQueueEventSubscriptionDestination) MarshalJSON() ([]byte, error) {
- sqesd.EndpointType = EndpointTypeStorageQueue
- objectMap := make(map[string]interface{})
- if sqesd.StorageQueueEventSubscriptionDestinationProperties != nil {
- objectMap["properties"] = sqesd.StorageQueueEventSubscriptionDestinationProperties
- }
- if sqesd.EndpointType != "" {
- objectMap["endpointType"] = sqesd.EndpointType
- }
- return json.Marshal(objectMap)
-}
-
-// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
-func (sqesd StorageQueueEventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
-func (sqesd StorageQueueEventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
-func (sqesd StorageQueueEventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
- return &sqesd, true
-}
-
-// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
-func (sqesd StorageQueueEventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
-func (sqesd StorageQueueEventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
-func (sqesd StorageQueueEventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
- return &sqesd, true
-}
-
-// UnmarshalJSON is the custom unmarshaler for StorageQueueEventSubscriptionDestination struct.
-func (sqesd *StorageQueueEventSubscriptionDestination) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "properties":
- if v != nil {
- var storageQueueEventSubscriptionDestinationProperties StorageQueueEventSubscriptionDestinationProperties
- err = json.Unmarshal(*v, &storageQueueEventSubscriptionDestinationProperties)
- if err != nil {
- return err
- }
- sqesd.StorageQueueEventSubscriptionDestinationProperties = &storageQueueEventSubscriptionDestinationProperties
- }
- case "endpointType":
- if v != nil {
- var endpointType EndpointType
- err = json.Unmarshal(*v, &endpointType)
- if err != nil {
- return err
- }
- sqesd.EndpointType = endpointType
- }
- }
- }
-
- return nil
-}
-
-// StorageQueueEventSubscriptionDestinationProperties the properties for a storage queue destination.
-type StorageQueueEventSubscriptionDestinationProperties struct {
- // ResourceID - The Azure Resource ID of the storage account that contains the queue that is the destination of an event subscription.
- ResourceID *string `json:"resourceId,omitempty"`
- // QueueName - The name of the Storage queue under a storage account that is the destination of an event subscription.
- QueueName *string `json:"queueName,omitempty"`
-}
-
-// StringBeginsWithAdvancedFilter stringBeginsWith Filter
-type StringBeginsWithAdvancedFilter struct {
- // Values - The set of filter values
- Values *[]string `json:"values,omitempty"`
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) MarshalJSON() ([]byte, error) {
- sbwaf.OperatorType = OperatorTypeStringBeginsWith
- objectMap := make(map[string]interface{})
- if sbwaf.Values != nil {
- objectMap["values"] = sbwaf.Values
- }
- if sbwaf.Key != nil {
- objectMap["key"] = sbwaf.Key
- }
- if sbwaf.OperatorType != "" {
- objectMap["operatorType"] = sbwaf.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return &sbwaf, true
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
-func (sbwaf StringBeginsWithAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &sbwaf, true
-}
-
-// StringContainsAdvancedFilter stringContains Filter
-type StringContainsAdvancedFilter struct {
- // Values - The set of filter values
- Values *[]string `json:"values,omitempty"`
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) MarshalJSON() ([]byte, error) {
- scaf.OperatorType = OperatorTypeStringContains
- objectMap := make(map[string]interface{})
- if scaf.Values != nil {
- objectMap["values"] = scaf.Values
- }
- if scaf.Key != nil {
- objectMap["key"] = scaf.Key
- }
- if scaf.OperatorType != "" {
- objectMap["operatorType"] = scaf.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return &scaf, true
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
-func (scaf StringContainsAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &scaf, true
-}
-
-// StringEndsWithAdvancedFilter stringEndsWith Filter
-type StringEndsWithAdvancedFilter struct {
- // Values - The set of filter values
- Values *[]string `json:"values,omitempty"`
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) MarshalJSON() ([]byte, error) {
- sewaf.OperatorType = OperatorTypeStringEndsWith
- objectMap := make(map[string]interface{})
- if sewaf.Values != nil {
- objectMap["values"] = sewaf.Values
- }
- if sewaf.Key != nil {
- objectMap["key"] = sewaf.Key
- }
- if sewaf.OperatorType != "" {
- objectMap["operatorType"] = sewaf.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return &sewaf, true
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
-func (sewaf StringEndsWithAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &sewaf, true
-}
-
-// StringInAdvancedFilter stringIn Filter
-type StringInAdvancedFilter struct {
- // Values - The set of filter values
- Values *[]string `json:"values,omitempty"`
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) MarshalJSON() ([]byte, error) {
- siaf.OperatorType = OperatorTypeStringIn
- objectMap := make(map[string]interface{})
- if siaf.Values != nil {
- objectMap["values"] = siaf.Values
- }
- if siaf.Key != nil {
- objectMap["key"] = siaf.Key
- }
- if siaf.OperatorType != "" {
- objectMap["operatorType"] = siaf.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return &siaf, true
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
-func (siaf StringInAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &siaf, true
-}
-
-// StringNotInAdvancedFilter stringNotIn Filter
-type StringNotInAdvancedFilter struct {
- // Values - The set of filter values
- Values *[]string `json:"values,omitempty"`
- // Key - The filter key. Represents an event property with up to two levels of nesting.
- Key *string `json:"key,omitempty"`
- // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
- OperatorType OperatorType `json:"operatorType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) MarshalJSON() ([]byte, error) {
- sniaf.OperatorType = OperatorTypeStringNotIn
- objectMap := make(map[string]interface{})
- if sniaf.Values != nil {
- objectMap["values"] = sniaf.Values
- }
- if sniaf.Key != nil {
- objectMap["key"] = sniaf.Key
- }
- if sniaf.OperatorType != "" {
- objectMap["operatorType"] = sniaf.OperatorType
- }
- return json.Marshal(objectMap)
-}
-
-// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
- return &sniaf, true
-}
-
-// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
- return nil, false
-}
-
-// AsAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
- return nil, false
-}
-
-// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
-func (sniaf StringNotInAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
- return &sniaf, true
-}
-
-// Topic eventGrid Topic
-type Topic struct {
- autorest.Response `json:"-"`
- // TopicProperties - Properties of the topic
- *TopicProperties `json:"properties,omitempty"`
- // Location - Location of the resource
- Location *string `json:"location,omitempty"`
- // Tags - Tags of the resource
- Tags map[string]*string `json:"tags"`
- // ID - READ-ONLY; Fully qualified identifier of the resource
- ID *string `json:"id,omitempty"`
- // Name - READ-ONLY; Name of the resource
- Name *string `json:"name,omitempty"`
- // Type - READ-ONLY; Type of the resource
- Type *string `json:"type,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for Topic.
-func (t Topic) MarshalJSON() ([]byte, error) {
- objectMap := make(map[string]interface{})
- if t.TopicProperties != nil {
- objectMap["properties"] = t.TopicProperties
- }
- if t.Location != nil {
- objectMap["location"] = t.Location
- }
- if t.Tags != nil {
- objectMap["tags"] = t.Tags
- }
- return json.Marshal(objectMap)
-}
-
-// UnmarshalJSON is the custom unmarshaler for Topic struct.
-func (t *Topic) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "properties":
- if v != nil {
- var topicProperties TopicProperties
- err = json.Unmarshal(*v, &topicProperties)
- if err != nil {
- return err
- }
- t.TopicProperties = &topicProperties
- }
- case "location":
- if v != nil {
- var location string
- err = json.Unmarshal(*v, &location)
- if err != nil {
- return err
- }
- t.Location = &location
- }
- case "tags":
- if v != nil {
- var tags map[string]*string
- err = json.Unmarshal(*v, &tags)
- if err != nil {
- return err
- }
- t.Tags = tags
- }
- case "id":
- if v != nil {
- var ID string
- err = json.Unmarshal(*v, &ID)
- if err != nil {
- return err
- }
- t.ID = &ID
- }
- case "name":
- if v != nil {
- var name string
- err = json.Unmarshal(*v, &name)
- if err != nil {
- return err
- }
- t.Name = &name
- }
- case "type":
- if v != nil {
- var typeVar string
- err = json.Unmarshal(*v, &typeVar)
- if err != nil {
- return err
- }
- t.Type = &typeVar
- }
- }
- }
-
- return nil
-}
-
-// TopicProperties properties of the Topic
-type TopicProperties struct {
- // ProvisioningState - READ-ONLY; Provisioning state of the topic. Possible values include: 'TopicProvisioningStateCreating', 'TopicProvisioningStateUpdating', 'TopicProvisioningStateDeleting', 'TopicProvisioningStateSucceeded', 'TopicProvisioningStateCanceled', 'TopicProvisioningStateFailed'
- ProvisioningState TopicProvisioningState `json:"provisioningState,omitempty"`
- // Endpoint - READ-ONLY; Endpoint for the topic.
- Endpoint *string `json:"endpoint,omitempty"`
- // InputSchema - This determines the format that Event Grid should expect for incoming events published to the topic. Possible values include: 'InputSchemaEventGridSchema', 'InputSchemaCustomEventSchema', 'InputSchemaCloudEventV01Schema'
- InputSchema InputSchema `json:"inputSchema,omitempty"`
- // InputSchemaMapping - This enables publishing using custom event schemas. An InputSchemaMapping can be specified to map various properties of a source schema to various required properties of the EventGridEvent schema.
- InputSchemaMapping BasicInputSchemaMapping `json:"inputSchemaMapping,omitempty"`
-}
-
-// UnmarshalJSON is the custom unmarshaler for TopicProperties struct.
-func (tp *TopicProperties) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "provisioningState":
- if v != nil {
- var provisioningState TopicProvisioningState
- err = json.Unmarshal(*v, &provisioningState)
- if err != nil {
- return err
- }
- tp.ProvisioningState = provisioningState
- }
- case "endpoint":
- if v != nil {
- var endpoint string
- err = json.Unmarshal(*v, &endpoint)
- if err != nil {
- return err
- }
- tp.Endpoint = &endpoint
- }
- case "inputSchema":
- if v != nil {
- var inputSchema InputSchema
- err = json.Unmarshal(*v, &inputSchema)
- if err != nil {
- return err
- }
- tp.InputSchema = inputSchema
- }
- case "inputSchemaMapping":
- if v != nil {
- inputSchemaMapping, err := unmarshalBasicInputSchemaMapping(*v)
- if err != nil {
- return err
- }
- tp.InputSchemaMapping = inputSchemaMapping
- }
- }
- }
-
- return nil
-}
-
-// TopicRegenerateKeyRequest topic regenerate share access key request
-type TopicRegenerateKeyRequest struct {
- // KeyName - Key name to regenerate key1 or key2
- KeyName *string `json:"keyName,omitempty"`
-}
-
-// TopicsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a long-running
-// operation.
-type TopicsCreateOrUpdateFuture struct {
- azure.Future
-}
-
-// Result returns the result of the asynchronous operation.
-// If the operation has not completed it will return an error.
-func (future *TopicsCreateOrUpdateFuture) Result(client TopicsClient) (t Topic, err error) {
- var done bool
- done, err = future.DoneWithContext(context.Background(), client)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.TopicsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure")
- return
- }
- if !done {
- err = azure.NewAsyncOpIncompleteError("eventgrid.TopicsCreateOrUpdateFuture")
- return
- }
- sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
- if t.Response.Response, err = future.GetResult(sender); err == nil && t.Response.Response.StatusCode != http.StatusNoContent {
- t, err = client.CreateOrUpdateResponder(t.Response.Response)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.TopicsCreateOrUpdateFuture", "Result", t.Response.Response, "Failure responding to request")
- }
- }
- return
-}
-
-// TopicsDeleteFuture an abstraction for monitoring and retrieving the results of a long-running operation.
-type TopicsDeleteFuture struct {
- azure.Future
-}
-
-// Result returns the result of the asynchronous operation.
-// If the operation has not completed it will return an error.
-func (future *TopicsDeleteFuture) Result(client TopicsClient) (ar autorest.Response, err error) {
- var done bool
- done, err = future.DoneWithContext(context.Background(), client)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.TopicsDeleteFuture", "Result", future.Response(), "Polling failure")
- return
- }
- if !done {
- err = azure.NewAsyncOpIncompleteError("eventgrid.TopicsDeleteFuture")
- return
- }
- ar.Response = future.Response()
- return
-}
-
-// TopicSharedAccessKeys shared access keys of the Topic
-type TopicSharedAccessKeys struct {
- autorest.Response `json:"-"`
- // Key1 - Shared access key1 for the topic.
- Key1 *string `json:"key1,omitempty"`
- // Key2 - Shared access key2 for the topic.
- Key2 *string `json:"key2,omitempty"`
-}
-
-// TopicsListResult result of the List Topics operation
-type TopicsListResult struct {
- autorest.Response `json:"-"`
- // Value - A collection of Topics
- Value *[]Topic `json:"value,omitempty"`
-}
-
-// TopicsUpdateFuture an abstraction for monitoring and retrieving the results of a long-running operation.
-type TopicsUpdateFuture struct {
- azure.Future
-}
-
-// Result returns the result of the asynchronous operation.
-// If the operation has not completed it will return an error.
-func (future *TopicsUpdateFuture) Result(client TopicsClient) (t Topic, err error) {
- var done bool
- done, err = future.DoneWithContext(context.Background(), client)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.TopicsUpdateFuture", "Result", future.Response(), "Polling failure")
- return
- }
- if !done {
- err = azure.NewAsyncOpIncompleteError("eventgrid.TopicsUpdateFuture")
- return
- }
- sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
- if t.Response.Response, err = future.GetResult(sender); err == nil && t.Response.Response.StatusCode != http.StatusNoContent {
- t, err = client.UpdateResponder(t.Response.Response)
- if err != nil {
- err = autorest.NewErrorWithError(err, "eventgrid.TopicsUpdateFuture", "Result", t.Response.Response, "Failure responding to request")
- }
- }
- return
-}
-
-// TopicTypeInfo properties of a topic type info.
-type TopicTypeInfo struct {
- autorest.Response `json:"-"`
- // TopicTypeProperties - Properties of the topic type info
- *TopicTypeProperties `json:"properties,omitempty"`
- // ID - READ-ONLY; Fully qualified identifier of the resource
- ID *string `json:"id,omitempty"`
- // Name - READ-ONLY; Name of the resource
- Name *string `json:"name,omitempty"`
- // Type - READ-ONLY; Type of the resource
- Type *string `json:"type,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for TopicTypeInfo.
-func (tti TopicTypeInfo) MarshalJSON() ([]byte, error) {
- objectMap := make(map[string]interface{})
- if tti.TopicTypeProperties != nil {
- objectMap["properties"] = tti.TopicTypeProperties
- }
- return json.Marshal(objectMap)
-}
-
-// UnmarshalJSON is the custom unmarshaler for TopicTypeInfo struct.
-func (tti *TopicTypeInfo) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "properties":
- if v != nil {
- var topicTypeProperties TopicTypeProperties
- err = json.Unmarshal(*v, &topicTypeProperties)
- if err != nil {
- return err
- }
- tti.TopicTypeProperties = &topicTypeProperties
- }
- case "id":
- if v != nil {
- var ID string
- err = json.Unmarshal(*v, &ID)
- if err != nil {
- return err
- }
- tti.ID = &ID
- }
- case "name":
- if v != nil {
- var name string
- err = json.Unmarshal(*v, &name)
- if err != nil {
- return err
- }
- tti.Name = &name
- }
- case "type":
- if v != nil {
- var typeVar string
- err = json.Unmarshal(*v, &typeVar)
- if err != nil {
- return err
- }
- tti.Type = &typeVar
- }
- }
- }
-
- return nil
-}
-
-// TopicTypeProperties properties of a topic type.
-type TopicTypeProperties struct {
- // Provider - Namespace of the provider of the topic type.
- Provider *string `json:"provider,omitempty"`
- // DisplayName - Display Name for the topic type.
- DisplayName *string `json:"displayName,omitempty"`
- // Description - Description of the topic type.
- Description *string `json:"description,omitempty"`
- // ResourceRegionType - Region type of the resource. Possible values include: 'RegionalResource', 'GlobalResource'
- ResourceRegionType ResourceRegionType `json:"resourceRegionType,omitempty"`
- // ProvisioningState - Provisioning state of the topic type. Possible values include: 'TopicTypeProvisioningStateCreating', 'TopicTypeProvisioningStateUpdating', 'TopicTypeProvisioningStateDeleting', 'TopicTypeProvisioningStateSucceeded', 'TopicTypeProvisioningStateCanceled', 'TopicTypeProvisioningStateFailed'
- ProvisioningState TopicTypeProvisioningState `json:"provisioningState,omitempty"`
- // SupportedLocations - List of locations supported by this topic type.
- SupportedLocations *[]string `json:"supportedLocations,omitempty"`
-}
-
-// TopicTypesListResult result of the List Topic Types operation
-type TopicTypesListResult struct {
- autorest.Response `json:"-"`
- // Value - A collection of topic types
- Value *[]TopicTypeInfo `json:"value,omitempty"`
-}
-
-// TopicUpdateParameters properties of the Topic update
-type TopicUpdateParameters struct {
- // Tags - Tags of the resource
- Tags map[string]*string `json:"tags"`
-}
-
-// MarshalJSON is the custom marshaler for TopicUpdateParameters.
-func (tup TopicUpdateParameters) MarshalJSON() ([]byte, error) {
- objectMap := make(map[string]interface{})
- if tup.Tags != nil {
- objectMap["tags"] = tup.Tags
- }
- return json.Marshal(objectMap)
-}
-
-// TrackedResource definition of a Tracked Resource
-type TrackedResource struct {
- // Location - Location of the resource
- Location *string `json:"location,omitempty"`
- // Tags - Tags of the resource
- Tags map[string]*string `json:"tags"`
- // ID - READ-ONLY; Fully qualified identifier of the resource
- ID *string `json:"id,omitempty"`
- // Name - READ-ONLY; Name of the resource
- Name *string `json:"name,omitempty"`
- // Type - READ-ONLY; Type of the resource
- Type *string `json:"type,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for TrackedResource.
-func (tr TrackedResource) MarshalJSON() ([]byte, error) {
- objectMap := make(map[string]interface{})
- if tr.Location != nil {
- objectMap["location"] = tr.Location
- }
- if tr.Tags != nil {
- objectMap["tags"] = tr.Tags
- }
- return json.Marshal(objectMap)
-}
-
-// WebHookEventSubscriptionDestination information about the webhook destination for an event subscription
-type WebHookEventSubscriptionDestination struct {
- // WebHookEventSubscriptionDestinationProperties - WebHook Properties of the event subscription destination
- *WebHookEventSubscriptionDestinationProperties `json:"properties,omitempty"`
- // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection'
- EndpointType EndpointType `json:"endpointType,omitempty"`
-}
-
-// MarshalJSON is the custom marshaler for WebHookEventSubscriptionDestination.
-func (whesd WebHookEventSubscriptionDestination) MarshalJSON() ([]byte, error) {
- whesd.EndpointType = EndpointTypeWebHook
- objectMap := make(map[string]interface{})
- if whesd.WebHookEventSubscriptionDestinationProperties != nil {
- objectMap["properties"] = whesd.WebHookEventSubscriptionDestinationProperties
- }
- if whesd.EndpointType != "" {
- objectMap["endpointType"] = whesd.EndpointType
- }
- return json.Marshal(objectMap)
-}
-
-// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
-func (whesd WebHookEventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
- return &whesd, true
-}
-
-// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
-func (whesd WebHookEventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
-func (whesd WebHookEventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
-func (whesd WebHookEventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
-func (whesd WebHookEventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
- return nil, false
-}
-
-// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
-func (whesd WebHookEventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
- return &whesd, true
-}
-
-// UnmarshalJSON is the custom unmarshaler for WebHookEventSubscriptionDestination struct.
-func (whesd *WebHookEventSubscriptionDestination) UnmarshalJSON(body []byte) error {
- var m map[string]*json.RawMessage
- err := json.Unmarshal(body, &m)
- if err != nil {
- return err
- }
- for k, v := range m {
- switch k {
- case "properties":
- if v != nil {
- var webHookEventSubscriptionDestinationProperties WebHookEventSubscriptionDestinationProperties
- err = json.Unmarshal(*v, &webHookEventSubscriptionDestinationProperties)
- if err != nil {
- return err
- }
- whesd.WebHookEventSubscriptionDestinationProperties = &webHookEventSubscriptionDestinationProperties
- }
- case "endpointType":
- if v != nil {
- var endpointType EndpointType
- err = json.Unmarshal(*v, &endpointType)
- if err != nil {
- return err
- }
- whesd.EndpointType = endpointType
- }
- }
- }
-
- return nil
-}
-
-// WebHookEventSubscriptionDestinationProperties information about the webhook destination properties for
-// an event subscription.
-type WebHookEventSubscriptionDestinationProperties struct {
- // EndpointURL - The URL that represents the endpoint of the destination of an event subscription.
- EndpointURL *string `json:"endpointUrl,omitempty"`
- // EndpointBaseURL - READ-ONLY; The base URL that represents the endpoint of the destination of an event subscription.
- EndpointBaseURL *string `json:"endpointBaseUrl,omitempty"`
-}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/client.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/client.go
similarity index 98%
rename from vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/client.go
rename to vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/client.go
index 05818ba810a5..08ddae2a2e79 100644
--- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/client.go
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/client.go
@@ -1,4 +1,4 @@
-// Package eventgrid implements the Azure ARM Eventgrid service API version 2018-09-15-preview.
+// Package eventgrid implements the Azure ARM Eventgrid service API version 2020-04-01-preview.
//
// Azure EventGrid Management Client
package eventgrid
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/domains.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/domains.go
similarity index 78%
rename from vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/domains.go
rename to vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/domains.go
index 1dbd761b7bfa..23426c11b011 100644
--- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/domains.go
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/domains.go
@@ -42,11 +42,11 @@ func NewDomainsClientWithBaseURI(baseURI string, subscriptionID string) DomainsC
return DomainsClient{NewWithBaseURI(baseURI, subscriptionID)}
}
-// CreateOrUpdate asynchronously creates a new domain with the specified parameters.
+// CreateOrUpdate asynchronously creates or updates a new domain with the specified parameters.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// domainName - name of the domain
-// domainInfo - domain information
+// domainName - name of the domain.
+// domainInfo - domain information.
func (client DomainsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, domainName string, domainInfo Domain) (result DomainsCreateOrUpdateFuture, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/DomainsClient.CreateOrUpdate")
@@ -81,7 +81,7 @@ func (client DomainsClient) CreateOrUpdatePreparer(ctx context.Context, resource
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -121,10 +121,10 @@ func (client DomainsClient) CreateOrUpdateResponder(resp *http.Response) (result
return
}
-// Delete delete existing domain
+// Delete delete existing domain.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// domainName - name of the domain
+// domainName - name of the domain.
func (client DomainsClient) Delete(ctx context.Context, resourceGroupName string, domainName string) (result DomainsDeleteFuture, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/DomainsClient.Delete")
@@ -159,7 +159,7 @@ func (client DomainsClient) DeletePreparer(ctx context.Context, resourceGroupNam
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -196,10 +196,10 @@ func (client DomainsClient) DeleteResponder(resp *http.Response) (result autores
return
}
-// Get get properties of a domain
+// Get get properties of a domain.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// domainName - name of the domain
+// domainName - name of the domain.
func (client DomainsClient) Get(ctx context.Context, resourceGroupName string, domainName string) (result Domain, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/DomainsClient.Get")
@@ -240,7 +240,7 @@ func (client DomainsClient) GetPreparer(ctx context.Context, resourceGroupName s
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -272,21 +272,30 @@ func (client DomainsClient) GetResponder(resp *http.Response) (result Domain, er
return
}
-// ListByResourceGroup list all the domains under a resource group
+// ListByResourceGroup list all the domains under a resource group.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-func (client DomainsClient) ListByResourceGroup(ctx context.Context, resourceGroupName string) (result DomainsListResult, err error) {
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client DomainsClient) ListByResourceGroup(ctx context.Context, resourceGroupName string, filter string, top *int32) (result DomainsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/DomainsClient.ListByResourceGroup")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.dlr.Response.Response != nil {
+ sc = result.dlr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListByResourceGroupPreparer(ctx, resourceGroupName)
+ result.fn = client.listByResourceGroupNextResults
+ req, err := client.ListByResourceGroupPreparer(ctx, resourceGroupName, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.DomainsClient", "ListByResourceGroup", nil, "Failure preparing request")
return
@@ -294,12 +303,12 @@ func (client DomainsClient) ListByResourceGroup(ctx context.Context, resourceGro
resp, err := client.ListByResourceGroupSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.dlr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.DomainsClient", "ListByResourceGroup", resp, "Failure sending request")
return
}
- result, err = client.ListByResourceGroupResponder(resp)
+ result.dlr, err = client.ListByResourceGroupResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.DomainsClient", "ListByResourceGroup", resp, "Failure responding to request")
}
@@ -308,16 +317,22 @@ func (client DomainsClient) ListByResourceGroup(ctx context.Context, resourceGro
}
// ListByResourceGroupPreparer prepares the ListByResourceGroup request.
-func (client DomainsClient) ListByResourceGroupPreparer(ctx context.Context, resourceGroupName string) (*http.Request, error) {
+func (client DomainsClient) ListByResourceGroupPreparer(ctx context.Context, resourceGroupName string, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"resourceGroupName": autorest.Encode("path", resourceGroupName),
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -346,19 +361,66 @@ func (client DomainsClient) ListByResourceGroupResponder(resp *http.Response) (r
return
}
-// ListBySubscription list all the domains under an Azure subscription
-func (client DomainsClient) ListBySubscription(ctx context.Context) (result DomainsListResult, err error) {
+// listByResourceGroupNextResults retrieves the next set of results, if any.
+func (client DomainsClient) listByResourceGroupNextResults(ctx context.Context, lastResults DomainsListResult) (result DomainsListResult, err error) {
+ req, err := lastResults.domainsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.DomainsClient", "listByResourceGroupNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByResourceGroupSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.DomainsClient", "listByResourceGroupNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByResourceGroupResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainsClient", "listByResourceGroupNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByResourceGroupComplete enumerates all values, automatically crossing page boundaries as required.
+func (client DomainsClient) ListByResourceGroupComplete(ctx context.Context, resourceGroupName string, filter string, top *int32) (result DomainsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/DomainsClient.ListByResourceGroup")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByResourceGroup(ctx, resourceGroupName, filter, top)
+ return
+}
+
+// ListBySubscription list all the domains under an Azure subscription.
+// Parameters:
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client DomainsClient) ListBySubscription(ctx context.Context, filter string, top *int32) (result DomainsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/DomainsClient.ListBySubscription")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.dlr.Response.Response != nil {
+ sc = result.dlr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListBySubscriptionPreparer(ctx)
+ result.fn = client.listBySubscriptionNextResults
+ req, err := client.ListBySubscriptionPreparer(ctx, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.DomainsClient", "ListBySubscription", nil, "Failure preparing request")
return
@@ -366,12 +428,12 @@ func (client DomainsClient) ListBySubscription(ctx context.Context) (result Doma
resp, err := client.ListBySubscriptionSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.dlr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.DomainsClient", "ListBySubscription", resp, "Failure sending request")
return
}
- result, err = client.ListBySubscriptionResponder(resp)
+ result.dlr, err = client.ListBySubscriptionResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.DomainsClient", "ListBySubscription", resp, "Failure responding to request")
}
@@ -380,15 +442,21 @@ func (client DomainsClient) ListBySubscription(ctx context.Context) (result Doma
}
// ListBySubscriptionPreparer prepares the ListBySubscription request.
-func (client DomainsClient) ListBySubscriptionPreparer(ctx context.Context) (*http.Request, error) {
+func (client DomainsClient) ListBySubscriptionPreparer(ctx context.Context, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -417,10 +485,47 @@ func (client DomainsClient) ListBySubscriptionResponder(resp *http.Response) (re
return
}
-// ListSharedAccessKeys list the two keys used to publish to a domain
+// listBySubscriptionNextResults retrieves the next set of results, if any.
+func (client DomainsClient) listBySubscriptionNextResults(ctx context.Context, lastResults DomainsListResult) (result DomainsListResult, err error) {
+ req, err := lastResults.domainsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.DomainsClient", "listBySubscriptionNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListBySubscriptionSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.DomainsClient", "listBySubscriptionNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListBySubscriptionResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainsClient", "listBySubscriptionNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListBySubscriptionComplete enumerates all values, automatically crossing page boundaries as required.
+func (client DomainsClient) ListBySubscriptionComplete(ctx context.Context, filter string, top *int32) (result DomainsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/DomainsClient.ListBySubscription")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListBySubscription(ctx, filter, top)
+ return
+}
+
+// ListSharedAccessKeys list the two keys used to publish to a domain.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// domainName - name of the domain
+// domainName - name of the domain.
func (client DomainsClient) ListSharedAccessKeys(ctx context.Context, resourceGroupName string, domainName string) (result DomainSharedAccessKeys, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/DomainsClient.ListSharedAccessKeys")
@@ -461,7 +566,7 @@ func (client DomainsClient) ListSharedAccessKeysPreparer(ctx context.Context, re
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -493,11 +598,11 @@ func (client DomainsClient) ListSharedAccessKeysResponder(resp *http.Response) (
return
}
-// RegenerateKey regenerate a shared access key for a domain
+// RegenerateKey regenerate a shared access key for a domain.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// domainName - name of the domain
-// regenerateKeyRequest - request body to regenerate key
+// domainName - name of the domain.
+// regenerateKeyRequest - request body to regenerate key.
func (client DomainsClient) RegenerateKey(ctx context.Context, resourceGroupName string, domainName string, regenerateKeyRequest DomainRegenerateKeyRequest) (result DomainSharedAccessKeys, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/DomainsClient.RegenerateKey")
@@ -544,7 +649,7 @@ func (client DomainsClient) RegenerateKeyPreparer(ctx context.Context, resourceG
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -581,8 +686,8 @@ func (client DomainsClient) RegenerateKeyResponder(resp *http.Response) (result
// Update asynchronously updates a domain with the specified parameters.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// domainName - name of the domain
-// domainUpdateParameters - domain update information
+// domainName - name of the domain.
+// domainUpdateParameters - domain update information.
func (client DomainsClient) Update(ctx context.Context, resourceGroupName string, domainName string, domainUpdateParameters DomainUpdateParameters) (result DomainsUpdateFuture, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/DomainsClient.Update")
@@ -617,7 +722,7 @@ func (client DomainsClient) UpdatePreparer(ctx context.Context, resourceGroupNam
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/domaintopics.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/domaintopics.go
new file mode 100644
index 000000000000..c077e5d534ba
--- /dev/null
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/domaintopics.go
@@ -0,0 +1,403 @@
+package eventgrid
+
+// Copyright (c) Microsoft and contributors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+ "context"
+ "github.com/Azure/go-autorest/autorest"
+ "github.com/Azure/go-autorest/autorest/azure"
+ "github.com/Azure/go-autorest/tracing"
+ "net/http"
+)
+
+// DomainTopicsClient is the azure EventGrid Management Client
+type DomainTopicsClient struct {
+ BaseClient
+}
+
+// NewDomainTopicsClient creates an instance of the DomainTopicsClient client.
+func NewDomainTopicsClient(subscriptionID string) DomainTopicsClient {
+ return NewDomainTopicsClientWithBaseURI(DefaultBaseURI, subscriptionID)
+}
+
+// NewDomainTopicsClientWithBaseURI creates an instance of the DomainTopicsClient client using a custom endpoint. Use
+// this when interacting with an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure stack).
+func NewDomainTopicsClientWithBaseURI(baseURI string, subscriptionID string) DomainTopicsClient {
+ return DomainTopicsClient{NewWithBaseURI(baseURI, subscriptionID)}
+}
+
+// CreateOrUpdate asynchronously creates or updates a new domain topic with the specified parameters.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// domainName - name of the domain.
+// domainTopicName - name of the domain topic.
+func (client DomainTopicsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, domainName string, domainTopicName string) (result DomainTopicsCreateOrUpdateFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/DomainTopicsClient.CreateOrUpdate")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.CreateOrUpdatePreparer(ctx, resourceGroupName, domainName, domainTopicName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "CreateOrUpdate", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.CreateOrUpdateSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "CreateOrUpdate", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// CreateOrUpdatePreparer prepares the CreateOrUpdate request.
+func (client DomainTopicsClient) CreateOrUpdatePreparer(ctx context.Context, resourceGroupName string, domainName string, domainTopicName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "domainName": autorest.Encode("path", domainName),
+ "domainTopicName": autorest.Encode("path", domainTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsPut(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics/{domainTopicName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the
+// http.Response Body if it receives an error.
+func (client DomainTopicsClient) CreateOrUpdateSender(req *http.Request) (future DomainTopicsCreateOrUpdateFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always
+// closes the http.Response Body.
+func (client DomainTopicsClient) CreateOrUpdateResponder(resp *http.Response) (result DomainTopic, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// Delete delete existing domain topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// domainName - name of the domain.
+// domainTopicName - name of the domain topic.
+func (client DomainTopicsClient) Delete(ctx context.Context, resourceGroupName string, domainName string, domainTopicName string) (result DomainTopicsDeleteFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/DomainTopicsClient.Delete")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.DeletePreparer(ctx, resourceGroupName, domainName, domainTopicName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "Delete", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.DeleteSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "Delete", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// DeletePreparer prepares the Delete request.
+func (client DomainTopicsClient) DeletePreparer(ctx context.Context, resourceGroupName string, domainName string, domainTopicName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "domainName": autorest.Encode("path", domainName),
+ "domainTopicName": autorest.Encode("path", domainTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsDelete(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics/{domainTopicName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// DeleteSender sends the Delete request. The method will close the
+// http.Response Body if it receives an error.
+func (client DomainTopicsClient) DeleteSender(req *http.Request) (future DomainTopicsDeleteFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// DeleteResponder handles the response to the Delete request. The method always
+// closes the http.Response Body.
+func (client DomainTopicsClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent),
+ autorest.ByClosing())
+ result.Response = resp
+ return
+}
+
+// Get get properties of a domain topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// domainName - name of the domain.
+// domainTopicName - name of the topic.
+func (client DomainTopicsClient) Get(ctx context.Context, resourceGroupName string, domainName string, domainTopicName string) (result DomainTopic, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/DomainTopicsClient.Get")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetPreparer(ctx, resourceGroupName, domainName, domainTopicName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "Get", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "Get", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "Get", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetPreparer prepares the Get request.
+func (client DomainTopicsClient) GetPreparer(ctx context.Context, resourceGroupName string, domainName string, domainTopicName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "domainName": autorest.Encode("path", domainName),
+ "domainTopicName": autorest.Encode("path", domainTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics/{domainTopicName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetSender sends the Get request. The method will close the
+// http.Response Body if it receives an error.
+func (client DomainTopicsClient) GetSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// GetResponder handles the response to the Get request. The method always
+// closes the http.Response Body.
+func (client DomainTopicsClient) GetResponder(resp *http.Response) (result DomainTopic, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// ListByDomain list all the topics in a domain.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// domainName - domain name.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client DomainTopicsClient) ListByDomain(ctx context.Context, resourceGroupName string, domainName string, filter string, top *int32) (result DomainTopicsListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/DomainTopicsClient.ListByDomain")
+ defer func() {
+ sc := -1
+ if result.dtlr.Response.Response != nil {
+ sc = result.dtlr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listByDomainNextResults
+ req, err := client.ListByDomainPreparer(ctx, resourceGroupName, domainName, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "ListByDomain", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListByDomainSender(req)
+ if err != nil {
+ result.dtlr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "ListByDomain", resp, "Failure sending request")
+ return
+ }
+
+ result.dtlr, err = client.ListByDomainResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "ListByDomain", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListByDomainPreparer prepares the ListByDomain request.
+func (client DomainTopicsClient) ListByDomainPreparer(ctx context.Context, resourceGroupName string, domainName string, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "domainName": autorest.Encode("path", domainName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListByDomainSender sends the ListByDomain request. The method will close the
+// http.Response Body if it receives an error.
+func (client DomainTopicsClient) ListByDomainSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListByDomainResponder handles the response to the ListByDomain request. The method always
+// closes the http.Response Body.
+func (client DomainTopicsClient) ListByDomainResponder(resp *http.Response) (result DomainTopicsListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listByDomainNextResults retrieves the next set of results, if any.
+func (client DomainTopicsClient) listByDomainNextResults(ctx context.Context, lastResults DomainTopicsListResult) (result DomainTopicsListResult, err error) {
+ req, err := lastResults.domainTopicsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "listByDomainNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByDomainSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "listByDomainNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByDomainResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsClient", "listByDomainNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByDomainComplete enumerates all values, automatically crossing page boundaries as required.
+func (client DomainTopicsClient) ListByDomainComplete(ctx context.Context, resourceGroupName string, domainName string, filter string, top *int32) (result DomainTopicsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/DomainTopicsClient.ListByDomain")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByDomain(ctx, resourceGroupName, domainName, filter, top)
+ return
+}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/eventchannels.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/eventchannels.go
new file mode 100644
index 000000000000..a177d56b9af7
--- /dev/null
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/eventchannels.go
@@ -0,0 +1,406 @@
+package eventgrid
+
+// Copyright (c) Microsoft and contributors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+ "context"
+ "github.com/Azure/go-autorest/autorest"
+ "github.com/Azure/go-autorest/autorest/azure"
+ "github.com/Azure/go-autorest/tracing"
+ "net/http"
+)
+
+// EventChannelsClient is the azure EventGrid Management Client
+type EventChannelsClient struct {
+ BaseClient
+}
+
+// NewEventChannelsClient creates an instance of the EventChannelsClient client.
+func NewEventChannelsClient(subscriptionID string) EventChannelsClient {
+ return NewEventChannelsClientWithBaseURI(DefaultBaseURI, subscriptionID)
+}
+
+// NewEventChannelsClientWithBaseURI creates an instance of the EventChannelsClient client using a custom endpoint.
+// Use this when interacting with an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure stack).
+func NewEventChannelsClientWithBaseURI(baseURI string, subscriptionID string) EventChannelsClient {
+ return EventChannelsClient{NewWithBaseURI(baseURI, subscriptionID)}
+}
+
+// CreateOrUpdate asynchronously creates a new event channel with the specified parameters.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerNamespaceName - name of the partner namespace.
+// eventChannelName - name of the event channel.
+// eventChannelInfo - eventChannel information.
+func (client EventChannelsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, partnerNamespaceName string, eventChannelName string, eventChannelInfo EventChannel) (result EventChannel, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventChannelsClient.CreateOrUpdate")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.CreateOrUpdatePreparer(ctx, resourceGroupName, partnerNamespaceName, eventChannelName, eventChannelInfo)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "CreateOrUpdate", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.CreateOrUpdateSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "CreateOrUpdate", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.CreateOrUpdateResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "CreateOrUpdate", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// CreateOrUpdatePreparer prepares the CreateOrUpdate request.
+func (client EventChannelsClient) CreateOrUpdatePreparer(ctx context.Context, resourceGroupName string, partnerNamespaceName string, eventChannelName string, eventChannelInfo EventChannel) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventChannelName": autorest.Encode("path", eventChannelName),
+ "partnerNamespaceName": autorest.Encode("path", partnerNamespaceName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPut(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}/eventChannels/{eventChannelName}", pathParameters),
+ autorest.WithJSON(eventChannelInfo),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the
+// http.Response Body if it receives an error.
+func (client EventChannelsClient) CreateOrUpdateSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always
+// closes the http.Response Body.
+func (client EventChannelsClient) CreateOrUpdateResponder(resp *http.Response) (result EventChannel, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// Delete delete existing event channel.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerNamespaceName - name of the partner namespace.
+// eventChannelName - name of the event channel.
+func (client EventChannelsClient) Delete(ctx context.Context, resourceGroupName string, partnerNamespaceName string, eventChannelName string) (result EventChannelsDeleteFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventChannelsClient.Delete")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.DeletePreparer(ctx, resourceGroupName, partnerNamespaceName, eventChannelName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "Delete", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.DeleteSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "Delete", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// DeletePreparer prepares the Delete request.
+func (client EventChannelsClient) DeletePreparer(ctx context.Context, resourceGroupName string, partnerNamespaceName string, eventChannelName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventChannelName": autorest.Encode("path", eventChannelName),
+ "partnerNamespaceName": autorest.Encode("path", partnerNamespaceName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsDelete(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}/eventChannels/{eventChannelName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// DeleteSender sends the Delete request. The method will close the
+// http.Response Body if it receives an error.
+func (client EventChannelsClient) DeleteSender(req *http.Request) (future EventChannelsDeleteFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// DeleteResponder handles the response to the Delete request. The method always
+// closes the http.Response Body.
+func (client EventChannelsClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent),
+ autorest.ByClosing())
+ result.Response = resp
+ return
+}
+
+// Get get properties of an event channel.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerNamespaceName - name of the partner namespace.
+// eventChannelName - name of the event channel.
+func (client EventChannelsClient) Get(ctx context.Context, resourceGroupName string, partnerNamespaceName string, eventChannelName string) (result EventChannel, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventChannelsClient.Get")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetPreparer(ctx, resourceGroupName, partnerNamespaceName, eventChannelName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "Get", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "Get", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "Get", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetPreparer prepares the Get request.
+func (client EventChannelsClient) GetPreparer(ctx context.Context, resourceGroupName string, partnerNamespaceName string, eventChannelName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventChannelName": autorest.Encode("path", eventChannelName),
+ "partnerNamespaceName": autorest.Encode("path", partnerNamespaceName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}/eventChannels/{eventChannelName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetSender sends the Get request. The method will close the
+// http.Response Body if it receives an error.
+func (client EventChannelsClient) GetSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// GetResponder handles the response to the Get request. The method always
+// closes the http.Response Body.
+func (client EventChannelsClient) GetResponder(resp *http.Response) (result EventChannel, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// ListByPartnerNamespace list all the event channels in a partner namespace.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerNamespaceName - name of the partner namespace.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client EventChannelsClient) ListByPartnerNamespace(ctx context.Context, resourceGroupName string, partnerNamespaceName string, filter string, top *int32) (result EventChannelsListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventChannelsClient.ListByPartnerNamespace")
+ defer func() {
+ sc := -1
+ if result.eclr.Response.Response != nil {
+ sc = result.eclr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listByPartnerNamespaceNextResults
+ req, err := client.ListByPartnerNamespacePreparer(ctx, resourceGroupName, partnerNamespaceName, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "ListByPartnerNamespace", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListByPartnerNamespaceSender(req)
+ if err != nil {
+ result.eclr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "ListByPartnerNamespace", resp, "Failure sending request")
+ return
+ }
+
+ result.eclr, err = client.ListByPartnerNamespaceResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "ListByPartnerNamespace", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListByPartnerNamespacePreparer prepares the ListByPartnerNamespace request.
+func (client EventChannelsClient) ListByPartnerNamespacePreparer(ctx context.Context, resourceGroupName string, partnerNamespaceName string, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerNamespaceName": autorest.Encode("path", partnerNamespaceName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}/eventChannels", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListByPartnerNamespaceSender sends the ListByPartnerNamespace request. The method will close the
+// http.Response Body if it receives an error.
+func (client EventChannelsClient) ListByPartnerNamespaceSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListByPartnerNamespaceResponder handles the response to the ListByPartnerNamespace request. The method always
+// closes the http.Response Body.
+func (client EventChannelsClient) ListByPartnerNamespaceResponder(resp *http.Response) (result EventChannelsListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listByPartnerNamespaceNextResults retrieves the next set of results, if any.
+func (client EventChannelsClient) listByPartnerNamespaceNextResults(ctx context.Context, lastResults EventChannelsListResult) (result EventChannelsListResult, err error) {
+ req, err := lastResults.eventChannelsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "listByPartnerNamespaceNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByPartnerNamespaceSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "listByPartnerNamespaceNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByPartnerNamespaceResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsClient", "listByPartnerNamespaceNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByPartnerNamespaceComplete enumerates all values, automatically crossing page boundaries as required.
+func (client EventChannelsClient) ListByPartnerNamespaceComplete(ctx context.Context, resourceGroupName string, partnerNamespaceName string, filter string, top *int32) (result EventChannelsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventChannelsClient.ListByPartnerNamespace")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByPartnerNamespace(ctx, resourceGroupName, partnerNamespaceName, filter, top)
+ return
+}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/eventsubscriptions.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/eventsubscriptions.go
similarity index 59%
rename from vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/eventsubscriptions.go
rename to vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/eventsubscriptions.go
index a3ade990e8c7..a5330daea217 100644
--- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/eventsubscriptions.go
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/eventsubscriptions.go
@@ -55,7 +55,7 @@ func NewEventSubscriptionsClientWithBaseURI(baseURI string, subscriptionID strin
// for an EventGrid topic.
// eventSubscriptionName - name of the event subscription. Event subscription names must be between 3 and 64
// characters in length and should use alphanumeric letters only.
-// eventSubscriptionInfo - event subscription properties containing the destination and filter information
+// eventSubscriptionInfo - event subscription properties containing the destination and filter information.
func (client EventSubscriptionsClient) CreateOrUpdate(ctx context.Context, scope string, eventSubscriptionName string, eventSubscriptionInfo EventSubscription) (result EventSubscriptionsCreateOrUpdateFuture, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.CreateOrUpdate")
@@ -89,7 +89,7 @@ func (client EventSubscriptionsClient) CreateOrUpdatePreparer(ctx context.Contex
"scope": scope,
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -129,7 +129,7 @@ func (client EventSubscriptionsClient) CreateOrUpdateResponder(resp *http.Respon
return
}
-// Delete delete an existing event subscription
+// Delete delete an existing event subscription.
// Parameters:
// scope - the scope of the event subscription. The scope can be a subscription, or a resource group, or a top
// level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use
@@ -139,7 +139,7 @@ func (client EventSubscriptionsClient) CreateOrUpdateResponder(resp *http.Respon
// for a resource, and
// '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}'
// for an EventGrid topic.
-// eventSubscriptionName - name of the event subscription
+// eventSubscriptionName - name of the event subscription.
func (client EventSubscriptionsClient) Delete(ctx context.Context, scope string, eventSubscriptionName string) (result EventSubscriptionsDeleteFuture, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.Delete")
@@ -173,7 +173,7 @@ func (client EventSubscriptionsClient) DeletePreparer(ctx context.Context, scope
"scope": scope,
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -210,7 +210,7 @@ func (client EventSubscriptionsClient) DeleteResponder(resp *http.Response) (res
return
}
-// Get get properties of an event subscription
+// Get get properties of an event subscription.
// Parameters:
// scope - the scope of the event subscription. The scope can be a subscription, or a resource group, or a top
// level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use
@@ -220,7 +220,7 @@ func (client EventSubscriptionsClient) DeleteResponder(resp *http.Response) (res
// for a resource, and
// '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}'
// for an EventGrid topic.
-// eventSubscriptionName - name of the event subscription
+// eventSubscriptionName - name of the event subscription.
func (client EventSubscriptionsClient) Get(ctx context.Context, scope string, eventSubscriptionName string) (result EventSubscription, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.Get")
@@ -260,7 +260,7 @@ func (client EventSubscriptionsClient) GetPreparer(ctx context.Context, scope st
"scope": scope,
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -292,7 +292,7 @@ func (client EventSubscriptionsClient) GetResponder(resp *http.Response) (result
return
}
-// GetFullURL get the full endpoint URL for an event subscription
+// GetFullURL get the full endpoint URL for an event subscription.
// Parameters:
// scope - the scope of the event subscription. The scope can be a subscription, or a resource group, or a top
// level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use
@@ -302,7 +302,7 @@ func (client EventSubscriptionsClient) GetResponder(resp *http.Response) (result
// for a resource, and
// '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}'
// for an EventGrid topic.
-// eventSubscriptionName - name of the event subscription
+// eventSubscriptionName - name of the event subscription.
func (client EventSubscriptionsClient) GetFullURL(ctx context.Context, scope string, eventSubscriptionName string) (result EventSubscriptionFullURL, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.GetFullURL")
@@ -342,7 +342,7 @@ func (client EventSubscriptionsClient) GetFullURLPreparer(ctx context.Context, s
"scope": scope,
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -374,23 +374,32 @@ func (client EventSubscriptionsClient) GetFullURLResponder(resp *http.Response)
return
}
-// ListByDomainTopic list all event subscriptions that have been created for a specific domain topic
+// ListByDomainTopic list all event subscriptions that have been created for a specific domain topic.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// domainName - name of the top level domain
-// topicName - name of the domain topic
-func (client EventSubscriptionsClient) ListByDomainTopic(ctx context.Context, resourceGroupName string, domainName string, topicName string) (result EventSubscriptionsListResult, err error) {
+// domainName - name of the top level domain.
+// topicName - name of the domain topic.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client EventSubscriptionsClient) ListByDomainTopic(ctx context.Context, resourceGroupName string, domainName string, topicName string, filter string, top *int32) (result EventSubscriptionsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListByDomainTopic")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.eslr.Response.Response != nil {
+ sc = result.eslr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListByDomainTopicPreparer(ctx, resourceGroupName, domainName, topicName)
+ result.fn = client.listByDomainTopicNextResults
+ req, err := client.ListByDomainTopicPreparer(ctx, resourceGroupName, domainName, topicName, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListByDomainTopic", nil, "Failure preparing request")
return
@@ -398,12 +407,12 @@ func (client EventSubscriptionsClient) ListByDomainTopic(ctx context.Context, re
resp, err := client.ListByDomainTopicSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.eslr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListByDomainTopic", resp, "Failure sending request")
return
}
- result, err = client.ListByDomainTopicResponder(resp)
+ result.eslr, err = client.ListByDomainTopicResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListByDomainTopic", resp, "Failure responding to request")
}
@@ -412,7 +421,7 @@ func (client EventSubscriptionsClient) ListByDomainTopic(ctx context.Context, re
}
// ListByDomainTopicPreparer prepares the ListByDomainTopic request.
-func (client EventSubscriptionsClient) ListByDomainTopicPreparer(ctx context.Context, resourceGroupName string, domainName string, topicName string) (*http.Request, error) {
+func (client EventSubscriptionsClient) ListByDomainTopicPreparer(ctx context.Context, resourceGroupName string, domainName string, topicName string, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"domainName": autorest.Encode("path", domainName),
"resourceGroupName": autorest.Encode("path", resourceGroupName),
@@ -420,10 +429,16 @@ func (client EventSubscriptionsClient) ListByDomainTopicPreparer(ctx context.Con
"topicName": autorest.Encode("path", topicName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -452,24 +467,70 @@ func (client EventSubscriptionsClient) ListByDomainTopicResponder(resp *http.Res
return
}
-// ListByResource list all event subscriptions that have been created for a specific topic
+// listByDomainTopicNextResults retrieves the next set of results, if any.
+func (client EventSubscriptionsClient) listByDomainTopicNextResults(ctx context.Context, lastResults EventSubscriptionsListResult) (result EventSubscriptionsListResult, err error) {
+ req, err := lastResults.eventSubscriptionsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listByDomainTopicNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByDomainTopicSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listByDomainTopicNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByDomainTopicResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listByDomainTopicNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByDomainTopicComplete enumerates all values, automatically crossing page boundaries as required.
+func (client EventSubscriptionsClient) ListByDomainTopicComplete(ctx context.Context, resourceGroupName string, domainName string, topicName string, filter string, top *int32) (result EventSubscriptionsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListByDomainTopic")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByDomainTopic(ctx, resourceGroupName, domainName, topicName, filter, top)
+ return
+}
+
+// ListByResource list all event subscriptions that have been created for a specific topic.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// providerNamespace - namespace of the provider of the topic
-// resourceTypeName - name of the resource type
-// resourceName - name of the resource
-func (client EventSubscriptionsClient) ListByResource(ctx context.Context, resourceGroupName string, providerNamespace string, resourceTypeName string, resourceName string) (result EventSubscriptionsListResult, err error) {
+// providerNamespace - namespace of the provider of the topic.
+// resourceTypeName - name of the resource type.
+// resourceName - name of the resource.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client EventSubscriptionsClient) ListByResource(ctx context.Context, resourceGroupName string, providerNamespace string, resourceTypeName string, resourceName string, filter string, top *int32) (result EventSubscriptionsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListByResource")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.eslr.Response.Response != nil {
+ sc = result.eslr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListByResourcePreparer(ctx, resourceGroupName, providerNamespace, resourceTypeName, resourceName)
+ result.fn = client.listByResourceNextResults
+ req, err := client.ListByResourcePreparer(ctx, resourceGroupName, providerNamespace, resourceTypeName, resourceName, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListByResource", nil, "Failure preparing request")
return
@@ -477,12 +538,12 @@ func (client EventSubscriptionsClient) ListByResource(ctx context.Context, resou
resp, err := client.ListByResourceSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.eslr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListByResource", resp, "Failure sending request")
return
}
- result, err = client.ListByResourceResponder(resp)
+ result.eslr, err = client.ListByResourceResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListByResource", resp, "Failure responding to request")
}
@@ -491,7 +552,7 @@ func (client EventSubscriptionsClient) ListByResource(ctx context.Context, resou
}
// ListByResourcePreparer prepares the ListByResource request.
-func (client EventSubscriptionsClient) ListByResourcePreparer(ctx context.Context, resourceGroupName string, providerNamespace string, resourceTypeName string, resourceName string) (*http.Request, error) {
+func (client EventSubscriptionsClient) ListByResourcePreparer(ctx context.Context, resourceGroupName string, providerNamespace string, resourceTypeName string, resourceName string, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"providerNamespace": autorest.Encode("path", providerNamespace),
"resourceGroupName": autorest.Encode("path", resourceGroupName),
@@ -500,10 +561,16 @@ func (client EventSubscriptionsClient) ListByResourcePreparer(ctx context.Contex
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -532,21 +599,68 @@ func (client EventSubscriptionsClient) ListByResourceResponder(resp *http.Respon
return
}
-// ListGlobalByResourceGroup list all global event subscriptions under a specific Azure subscription and resource group
+// listByResourceNextResults retrieves the next set of results, if any.
+func (client EventSubscriptionsClient) listByResourceNextResults(ctx context.Context, lastResults EventSubscriptionsListResult) (result EventSubscriptionsListResult, err error) {
+ req, err := lastResults.eventSubscriptionsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listByResourceNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByResourceSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listByResourceNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByResourceResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listByResourceNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByResourceComplete enumerates all values, automatically crossing page boundaries as required.
+func (client EventSubscriptionsClient) ListByResourceComplete(ctx context.Context, resourceGroupName string, providerNamespace string, resourceTypeName string, resourceName string, filter string, top *int32) (result EventSubscriptionsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListByResource")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByResource(ctx, resourceGroupName, providerNamespace, resourceTypeName, resourceName, filter, top)
+ return
+}
+
+// ListGlobalByResourceGroup list all global event subscriptions under a specific Azure subscription and resource
+// group.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-func (client EventSubscriptionsClient) ListGlobalByResourceGroup(ctx context.Context, resourceGroupName string) (result EventSubscriptionsListResult, err error) {
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client EventSubscriptionsClient) ListGlobalByResourceGroup(ctx context.Context, resourceGroupName string, filter string, top *int32) (result EventSubscriptionsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListGlobalByResourceGroup")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.eslr.Response.Response != nil {
+ sc = result.eslr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListGlobalByResourceGroupPreparer(ctx, resourceGroupName)
+ result.fn = client.listGlobalByResourceGroupNextResults
+ req, err := client.ListGlobalByResourceGroupPreparer(ctx, resourceGroupName, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListGlobalByResourceGroup", nil, "Failure preparing request")
return
@@ -554,12 +668,12 @@ func (client EventSubscriptionsClient) ListGlobalByResourceGroup(ctx context.Con
resp, err := client.ListGlobalByResourceGroupSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.eslr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListGlobalByResourceGroup", resp, "Failure sending request")
return
}
- result, err = client.ListGlobalByResourceGroupResponder(resp)
+ result.eslr, err = client.ListGlobalByResourceGroupResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListGlobalByResourceGroup", resp, "Failure responding to request")
}
@@ -568,16 +682,22 @@ func (client EventSubscriptionsClient) ListGlobalByResourceGroup(ctx context.Con
}
// ListGlobalByResourceGroupPreparer prepares the ListGlobalByResourceGroup request.
-func (client EventSubscriptionsClient) ListGlobalByResourceGroupPreparer(ctx context.Context, resourceGroupName string) (*http.Request, error) {
+func (client EventSubscriptionsClient) ListGlobalByResourceGroupPreparer(ctx context.Context, resourceGroupName string, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"resourceGroupName": autorest.Encode("path", resourceGroupName),
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -606,23 +726,69 @@ func (client EventSubscriptionsClient) ListGlobalByResourceGroupResponder(resp *
return
}
+// listGlobalByResourceGroupNextResults retrieves the next set of results, if any.
+func (client EventSubscriptionsClient) listGlobalByResourceGroupNextResults(ctx context.Context, lastResults EventSubscriptionsListResult) (result EventSubscriptionsListResult, err error) {
+ req, err := lastResults.eventSubscriptionsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listGlobalByResourceGroupNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListGlobalByResourceGroupSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listGlobalByResourceGroupNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListGlobalByResourceGroupResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listGlobalByResourceGroupNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListGlobalByResourceGroupComplete enumerates all values, automatically crossing page boundaries as required.
+func (client EventSubscriptionsClient) ListGlobalByResourceGroupComplete(ctx context.Context, resourceGroupName string, filter string, top *int32) (result EventSubscriptionsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListGlobalByResourceGroup")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListGlobalByResourceGroup(ctx, resourceGroupName, filter, top)
+ return
+}
+
// ListGlobalByResourceGroupForTopicType list all global event subscriptions under a resource group for a specific
// topic type.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// topicTypeName - name of the topic type
-func (client EventSubscriptionsClient) ListGlobalByResourceGroupForTopicType(ctx context.Context, resourceGroupName string, topicTypeName string) (result EventSubscriptionsListResult, err error) {
+// topicTypeName - name of the topic type.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client EventSubscriptionsClient) ListGlobalByResourceGroupForTopicType(ctx context.Context, resourceGroupName string, topicTypeName string, filter string, top *int32) (result EventSubscriptionsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListGlobalByResourceGroupForTopicType")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.eslr.Response.Response != nil {
+ sc = result.eslr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListGlobalByResourceGroupForTopicTypePreparer(ctx, resourceGroupName, topicTypeName)
+ result.fn = client.listGlobalByResourceGroupForTopicTypeNextResults
+ req, err := client.ListGlobalByResourceGroupForTopicTypePreparer(ctx, resourceGroupName, topicTypeName, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListGlobalByResourceGroupForTopicType", nil, "Failure preparing request")
return
@@ -630,12 +796,12 @@ func (client EventSubscriptionsClient) ListGlobalByResourceGroupForTopicType(ctx
resp, err := client.ListGlobalByResourceGroupForTopicTypeSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.eslr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListGlobalByResourceGroupForTopicType", resp, "Failure sending request")
return
}
- result, err = client.ListGlobalByResourceGroupForTopicTypeResponder(resp)
+ result.eslr, err = client.ListGlobalByResourceGroupForTopicTypeResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListGlobalByResourceGroupForTopicType", resp, "Failure responding to request")
}
@@ -644,17 +810,23 @@ func (client EventSubscriptionsClient) ListGlobalByResourceGroupForTopicType(ctx
}
// ListGlobalByResourceGroupForTopicTypePreparer prepares the ListGlobalByResourceGroupForTopicType request.
-func (client EventSubscriptionsClient) ListGlobalByResourceGroupForTopicTypePreparer(ctx context.Context, resourceGroupName string, topicTypeName string) (*http.Request, error) {
+func (client EventSubscriptionsClient) ListGlobalByResourceGroupForTopicTypePreparer(ctx context.Context, resourceGroupName string, topicTypeName string, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"resourceGroupName": autorest.Encode("path", resourceGroupName),
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
"topicTypeName": autorest.Encode("path", topicTypeName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -683,19 +855,66 @@ func (client EventSubscriptionsClient) ListGlobalByResourceGroupForTopicTypeResp
return
}
-// ListGlobalBySubscription list all aggregated global event subscriptions under a specific Azure subscription
-func (client EventSubscriptionsClient) ListGlobalBySubscription(ctx context.Context) (result EventSubscriptionsListResult, err error) {
+// listGlobalByResourceGroupForTopicTypeNextResults retrieves the next set of results, if any.
+func (client EventSubscriptionsClient) listGlobalByResourceGroupForTopicTypeNextResults(ctx context.Context, lastResults EventSubscriptionsListResult) (result EventSubscriptionsListResult, err error) {
+ req, err := lastResults.eventSubscriptionsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listGlobalByResourceGroupForTopicTypeNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListGlobalByResourceGroupForTopicTypeSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listGlobalByResourceGroupForTopicTypeNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListGlobalByResourceGroupForTopicTypeResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listGlobalByResourceGroupForTopicTypeNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListGlobalByResourceGroupForTopicTypeComplete enumerates all values, automatically crossing page boundaries as required.
+func (client EventSubscriptionsClient) ListGlobalByResourceGroupForTopicTypeComplete(ctx context.Context, resourceGroupName string, topicTypeName string, filter string, top *int32) (result EventSubscriptionsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListGlobalByResourceGroupForTopicType")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListGlobalByResourceGroupForTopicType(ctx, resourceGroupName, topicTypeName, filter, top)
+ return
+}
+
+// ListGlobalBySubscription list all aggregated global event subscriptions under a specific Azure subscription.
+// Parameters:
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client EventSubscriptionsClient) ListGlobalBySubscription(ctx context.Context, filter string, top *int32) (result EventSubscriptionsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListGlobalBySubscription")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.eslr.Response.Response != nil {
+ sc = result.eslr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListGlobalBySubscriptionPreparer(ctx)
+ result.fn = client.listGlobalBySubscriptionNextResults
+ req, err := client.ListGlobalBySubscriptionPreparer(ctx, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListGlobalBySubscription", nil, "Failure preparing request")
return
@@ -703,12 +922,12 @@ func (client EventSubscriptionsClient) ListGlobalBySubscription(ctx context.Cont
resp, err := client.ListGlobalBySubscriptionSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.eslr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListGlobalBySubscription", resp, "Failure sending request")
return
}
- result, err = client.ListGlobalBySubscriptionResponder(resp)
+ result.eslr, err = client.ListGlobalBySubscriptionResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListGlobalBySubscription", resp, "Failure responding to request")
}
@@ -717,15 +936,21 @@ func (client EventSubscriptionsClient) ListGlobalBySubscription(ctx context.Cont
}
// ListGlobalBySubscriptionPreparer prepares the ListGlobalBySubscription request.
-func (client EventSubscriptionsClient) ListGlobalBySubscriptionPreparer(ctx context.Context) (*http.Request, error) {
+func (client EventSubscriptionsClient) ListGlobalBySubscriptionPreparer(ctx context.Context, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -754,22 +979,68 @@ func (client EventSubscriptionsClient) ListGlobalBySubscriptionResponder(resp *h
return
}
+// listGlobalBySubscriptionNextResults retrieves the next set of results, if any.
+func (client EventSubscriptionsClient) listGlobalBySubscriptionNextResults(ctx context.Context, lastResults EventSubscriptionsListResult) (result EventSubscriptionsListResult, err error) {
+ req, err := lastResults.eventSubscriptionsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listGlobalBySubscriptionNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListGlobalBySubscriptionSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listGlobalBySubscriptionNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListGlobalBySubscriptionResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listGlobalBySubscriptionNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListGlobalBySubscriptionComplete enumerates all values, automatically crossing page boundaries as required.
+func (client EventSubscriptionsClient) ListGlobalBySubscriptionComplete(ctx context.Context, filter string, top *int32) (result EventSubscriptionsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListGlobalBySubscription")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListGlobalBySubscription(ctx, filter, top)
+ return
+}
+
// ListGlobalBySubscriptionForTopicType list all global event subscriptions under an Azure subscription for a topic
// type.
// Parameters:
-// topicTypeName - name of the topic type
-func (client EventSubscriptionsClient) ListGlobalBySubscriptionForTopicType(ctx context.Context, topicTypeName string) (result EventSubscriptionsListResult, err error) {
+// topicTypeName - name of the topic type.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client EventSubscriptionsClient) ListGlobalBySubscriptionForTopicType(ctx context.Context, topicTypeName string, filter string, top *int32) (result EventSubscriptionsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListGlobalBySubscriptionForTopicType")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.eslr.Response.Response != nil {
+ sc = result.eslr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListGlobalBySubscriptionForTopicTypePreparer(ctx, topicTypeName)
+ result.fn = client.listGlobalBySubscriptionForTopicTypeNextResults
+ req, err := client.ListGlobalBySubscriptionForTopicTypePreparer(ctx, topicTypeName, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListGlobalBySubscriptionForTopicType", nil, "Failure preparing request")
return
@@ -777,12 +1048,12 @@ func (client EventSubscriptionsClient) ListGlobalBySubscriptionForTopicType(ctx
resp, err := client.ListGlobalBySubscriptionForTopicTypeSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.eslr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListGlobalBySubscriptionForTopicType", resp, "Failure sending request")
return
}
- result, err = client.ListGlobalBySubscriptionForTopicTypeResponder(resp)
+ result.eslr, err = client.ListGlobalBySubscriptionForTopicTypeResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListGlobalBySubscriptionForTopicType", resp, "Failure responding to request")
}
@@ -791,16 +1062,22 @@ func (client EventSubscriptionsClient) ListGlobalBySubscriptionForTopicType(ctx
}
// ListGlobalBySubscriptionForTopicTypePreparer prepares the ListGlobalBySubscriptionForTopicType request.
-func (client EventSubscriptionsClient) ListGlobalBySubscriptionForTopicTypePreparer(ctx context.Context, topicTypeName string) (*http.Request, error) {
+func (client EventSubscriptionsClient) ListGlobalBySubscriptionForTopicTypePreparer(ctx context.Context, topicTypeName string, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
"topicTypeName": autorest.Encode("path", topicTypeName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -829,23 +1106,69 @@ func (client EventSubscriptionsClient) ListGlobalBySubscriptionForTopicTypeRespo
return
}
+// listGlobalBySubscriptionForTopicTypeNextResults retrieves the next set of results, if any.
+func (client EventSubscriptionsClient) listGlobalBySubscriptionForTopicTypeNextResults(ctx context.Context, lastResults EventSubscriptionsListResult) (result EventSubscriptionsListResult, err error) {
+ req, err := lastResults.eventSubscriptionsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listGlobalBySubscriptionForTopicTypeNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListGlobalBySubscriptionForTopicTypeSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listGlobalBySubscriptionForTopicTypeNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListGlobalBySubscriptionForTopicTypeResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listGlobalBySubscriptionForTopicTypeNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListGlobalBySubscriptionForTopicTypeComplete enumerates all values, automatically crossing page boundaries as required.
+func (client EventSubscriptionsClient) ListGlobalBySubscriptionForTopicTypeComplete(ctx context.Context, topicTypeName string, filter string, top *int32) (result EventSubscriptionsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListGlobalBySubscriptionForTopicType")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListGlobalBySubscriptionForTopicType(ctx, topicTypeName, filter, top)
+ return
+}
+
// ListRegionalByResourceGroup list all event subscriptions from the given location under a specific Azure subscription
-// and resource group
+// and resource group.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// location - name of the location
-func (client EventSubscriptionsClient) ListRegionalByResourceGroup(ctx context.Context, resourceGroupName string, location string) (result EventSubscriptionsListResult, err error) {
+// location - name of the location.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client EventSubscriptionsClient) ListRegionalByResourceGroup(ctx context.Context, resourceGroupName string, location string, filter string, top *int32) (result EventSubscriptionsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListRegionalByResourceGroup")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.eslr.Response.Response != nil {
+ sc = result.eslr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListRegionalByResourceGroupPreparer(ctx, resourceGroupName, location)
+ result.fn = client.listRegionalByResourceGroupNextResults
+ req, err := client.ListRegionalByResourceGroupPreparer(ctx, resourceGroupName, location, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListRegionalByResourceGroup", nil, "Failure preparing request")
return
@@ -853,12 +1176,12 @@ func (client EventSubscriptionsClient) ListRegionalByResourceGroup(ctx context.C
resp, err := client.ListRegionalByResourceGroupSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.eslr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListRegionalByResourceGroup", resp, "Failure sending request")
return
}
- result, err = client.ListRegionalByResourceGroupResponder(resp)
+ result.eslr, err = client.ListRegionalByResourceGroupResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListRegionalByResourceGroup", resp, "Failure responding to request")
}
@@ -867,17 +1190,23 @@ func (client EventSubscriptionsClient) ListRegionalByResourceGroup(ctx context.C
}
// ListRegionalByResourceGroupPreparer prepares the ListRegionalByResourceGroup request.
-func (client EventSubscriptionsClient) ListRegionalByResourceGroupPreparer(ctx context.Context, resourceGroupName string, location string) (*http.Request, error) {
+func (client EventSubscriptionsClient) ListRegionalByResourceGroupPreparer(ctx context.Context, resourceGroupName string, location string, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"location": autorest.Encode("path", location),
"resourceGroupName": autorest.Encode("path", resourceGroupName),
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -906,24 +1235,70 @@ func (client EventSubscriptionsClient) ListRegionalByResourceGroupResponder(resp
return
}
+// listRegionalByResourceGroupNextResults retrieves the next set of results, if any.
+func (client EventSubscriptionsClient) listRegionalByResourceGroupNextResults(ctx context.Context, lastResults EventSubscriptionsListResult) (result EventSubscriptionsListResult, err error) {
+ req, err := lastResults.eventSubscriptionsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listRegionalByResourceGroupNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListRegionalByResourceGroupSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listRegionalByResourceGroupNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListRegionalByResourceGroupResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listRegionalByResourceGroupNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListRegionalByResourceGroupComplete enumerates all values, automatically crossing page boundaries as required.
+func (client EventSubscriptionsClient) ListRegionalByResourceGroupComplete(ctx context.Context, resourceGroupName string, location string, filter string, top *int32) (result EventSubscriptionsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListRegionalByResourceGroup")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListRegionalByResourceGroup(ctx, resourceGroupName, location, filter, top)
+ return
+}
+
// ListRegionalByResourceGroupForTopicType list all event subscriptions from the given location under a specific Azure
-// subscription and resource group and topic type
+// subscription and resource group and topic type.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// location - name of the location
-// topicTypeName - name of the topic type
-func (client EventSubscriptionsClient) ListRegionalByResourceGroupForTopicType(ctx context.Context, resourceGroupName string, location string, topicTypeName string) (result EventSubscriptionsListResult, err error) {
+// location - name of the location.
+// topicTypeName - name of the topic type.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client EventSubscriptionsClient) ListRegionalByResourceGroupForTopicType(ctx context.Context, resourceGroupName string, location string, topicTypeName string, filter string, top *int32) (result EventSubscriptionsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListRegionalByResourceGroupForTopicType")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.eslr.Response.Response != nil {
+ sc = result.eslr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListRegionalByResourceGroupForTopicTypePreparer(ctx, resourceGroupName, location, topicTypeName)
+ result.fn = client.listRegionalByResourceGroupForTopicTypeNextResults
+ req, err := client.ListRegionalByResourceGroupForTopicTypePreparer(ctx, resourceGroupName, location, topicTypeName, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListRegionalByResourceGroupForTopicType", nil, "Failure preparing request")
return
@@ -931,12 +1306,12 @@ func (client EventSubscriptionsClient) ListRegionalByResourceGroupForTopicType(c
resp, err := client.ListRegionalByResourceGroupForTopicTypeSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.eslr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListRegionalByResourceGroupForTopicType", resp, "Failure sending request")
return
}
- result, err = client.ListRegionalByResourceGroupForTopicTypeResponder(resp)
+ result.eslr, err = client.ListRegionalByResourceGroupForTopicTypeResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListRegionalByResourceGroupForTopicType", resp, "Failure responding to request")
}
@@ -945,7 +1320,7 @@ func (client EventSubscriptionsClient) ListRegionalByResourceGroupForTopicType(c
}
// ListRegionalByResourceGroupForTopicTypePreparer prepares the ListRegionalByResourceGroupForTopicType request.
-func (client EventSubscriptionsClient) ListRegionalByResourceGroupForTopicTypePreparer(ctx context.Context, resourceGroupName string, location string, topicTypeName string) (*http.Request, error) {
+func (client EventSubscriptionsClient) ListRegionalByResourceGroupForTopicTypePreparer(ctx context.Context, resourceGroupName string, location string, topicTypeName string, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"location": autorest.Encode("path", location),
"resourceGroupName": autorest.Encode("path", resourceGroupName),
@@ -953,10 +1328,16 @@ func (client EventSubscriptionsClient) ListRegionalByResourceGroupForTopicTypePr
"topicTypeName": autorest.Encode("path", topicTypeName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -985,21 +1366,67 @@ func (client EventSubscriptionsClient) ListRegionalByResourceGroupForTopicTypeRe
return
}
-// ListRegionalBySubscription list all event subscriptions from the given location under a specific Azure subscription
+// listRegionalByResourceGroupForTopicTypeNextResults retrieves the next set of results, if any.
+func (client EventSubscriptionsClient) listRegionalByResourceGroupForTopicTypeNextResults(ctx context.Context, lastResults EventSubscriptionsListResult) (result EventSubscriptionsListResult, err error) {
+ req, err := lastResults.eventSubscriptionsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listRegionalByResourceGroupForTopicTypeNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListRegionalByResourceGroupForTopicTypeSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listRegionalByResourceGroupForTopicTypeNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListRegionalByResourceGroupForTopicTypeResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listRegionalByResourceGroupForTopicTypeNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListRegionalByResourceGroupForTopicTypeComplete enumerates all values, automatically crossing page boundaries as required.
+func (client EventSubscriptionsClient) ListRegionalByResourceGroupForTopicTypeComplete(ctx context.Context, resourceGroupName string, location string, topicTypeName string, filter string, top *int32) (result EventSubscriptionsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListRegionalByResourceGroupForTopicType")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListRegionalByResourceGroupForTopicType(ctx, resourceGroupName, location, topicTypeName, filter, top)
+ return
+}
+
+// ListRegionalBySubscription list all event subscriptions from the given location under a specific Azure subscription.
// Parameters:
-// location - name of the location
-func (client EventSubscriptionsClient) ListRegionalBySubscription(ctx context.Context, location string) (result EventSubscriptionsListResult, err error) {
+// location - name of the location.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client EventSubscriptionsClient) ListRegionalBySubscription(ctx context.Context, location string, filter string, top *int32) (result EventSubscriptionsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListRegionalBySubscription")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.eslr.Response.Response != nil {
+ sc = result.eslr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListRegionalBySubscriptionPreparer(ctx, location)
+ result.fn = client.listRegionalBySubscriptionNextResults
+ req, err := client.ListRegionalBySubscriptionPreparer(ctx, location, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListRegionalBySubscription", nil, "Failure preparing request")
return
@@ -1007,12 +1434,12 @@ func (client EventSubscriptionsClient) ListRegionalBySubscription(ctx context.Co
resp, err := client.ListRegionalBySubscriptionSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.eslr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListRegionalBySubscription", resp, "Failure sending request")
return
}
- result, err = client.ListRegionalBySubscriptionResponder(resp)
+ result.eslr, err = client.ListRegionalBySubscriptionResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListRegionalBySubscription", resp, "Failure responding to request")
}
@@ -1021,16 +1448,22 @@ func (client EventSubscriptionsClient) ListRegionalBySubscription(ctx context.Co
}
// ListRegionalBySubscriptionPreparer prepares the ListRegionalBySubscription request.
-func (client EventSubscriptionsClient) ListRegionalBySubscriptionPreparer(ctx context.Context, location string) (*http.Request, error) {
+func (client EventSubscriptionsClient) ListRegionalBySubscriptionPreparer(ctx context.Context, location string, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"location": autorest.Encode("path", location),
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -1059,23 +1492,69 @@ func (client EventSubscriptionsClient) ListRegionalBySubscriptionResponder(resp
return
}
+// listRegionalBySubscriptionNextResults retrieves the next set of results, if any.
+func (client EventSubscriptionsClient) listRegionalBySubscriptionNextResults(ctx context.Context, lastResults EventSubscriptionsListResult) (result EventSubscriptionsListResult, err error) {
+ req, err := lastResults.eventSubscriptionsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listRegionalBySubscriptionNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListRegionalBySubscriptionSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listRegionalBySubscriptionNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListRegionalBySubscriptionResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listRegionalBySubscriptionNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListRegionalBySubscriptionComplete enumerates all values, automatically crossing page boundaries as required.
+func (client EventSubscriptionsClient) ListRegionalBySubscriptionComplete(ctx context.Context, location string, filter string, top *int32) (result EventSubscriptionsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListRegionalBySubscription")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListRegionalBySubscription(ctx, location, filter, top)
+ return
+}
+
// ListRegionalBySubscriptionForTopicType list all event subscriptions from the given location under a specific Azure
// subscription and topic type.
// Parameters:
-// location - name of the location
-// topicTypeName - name of the topic type
-func (client EventSubscriptionsClient) ListRegionalBySubscriptionForTopicType(ctx context.Context, location string, topicTypeName string) (result EventSubscriptionsListResult, err error) {
+// location - name of the location.
+// topicTypeName - name of the topic type.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client EventSubscriptionsClient) ListRegionalBySubscriptionForTopicType(ctx context.Context, location string, topicTypeName string, filter string, top *int32) (result EventSubscriptionsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListRegionalBySubscriptionForTopicType")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.eslr.Response.Response != nil {
+ sc = result.eslr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListRegionalBySubscriptionForTopicTypePreparer(ctx, location, topicTypeName)
+ result.fn = client.listRegionalBySubscriptionForTopicTypeNextResults
+ req, err := client.ListRegionalBySubscriptionForTopicTypePreparer(ctx, location, topicTypeName, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListRegionalBySubscriptionForTopicType", nil, "Failure preparing request")
return
@@ -1083,12 +1562,12 @@ func (client EventSubscriptionsClient) ListRegionalBySubscriptionForTopicType(ct
resp, err := client.ListRegionalBySubscriptionForTopicTypeSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.eslr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListRegionalBySubscriptionForTopicType", resp, "Failure sending request")
return
}
- result, err = client.ListRegionalBySubscriptionForTopicTypeResponder(resp)
+ result.eslr, err = client.ListRegionalBySubscriptionForTopicTypeResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "ListRegionalBySubscriptionForTopicType", resp, "Failure responding to request")
}
@@ -1097,17 +1576,23 @@ func (client EventSubscriptionsClient) ListRegionalBySubscriptionForTopicType(ct
}
// ListRegionalBySubscriptionForTopicTypePreparer prepares the ListRegionalBySubscriptionForTopicType request.
-func (client EventSubscriptionsClient) ListRegionalBySubscriptionForTopicTypePreparer(ctx context.Context, location string, topicTypeName string) (*http.Request, error) {
+func (client EventSubscriptionsClient) ListRegionalBySubscriptionForTopicTypePreparer(ctx context.Context, location string, topicTypeName string, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"location": autorest.Encode("path", location),
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
"topicTypeName": autorest.Encode("path", topicTypeName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -1136,6 +1621,43 @@ func (client EventSubscriptionsClient) ListRegionalBySubscriptionForTopicTypeRes
return
}
+// listRegionalBySubscriptionForTopicTypeNextResults retrieves the next set of results, if any.
+func (client EventSubscriptionsClient) listRegionalBySubscriptionForTopicTypeNextResults(ctx context.Context, lastResults EventSubscriptionsListResult) (result EventSubscriptionsListResult, err error) {
+ req, err := lastResults.eventSubscriptionsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listRegionalBySubscriptionForTopicTypeNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListRegionalBySubscriptionForTopicTypeSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listRegionalBySubscriptionForTopicTypeNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListRegionalBySubscriptionForTopicTypeResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsClient", "listRegionalBySubscriptionForTopicTypeNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListRegionalBySubscriptionForTopicTypeComplete enumerates all values, automatically crossing page boundaries as required.
+func (client EventSubscriptionsClient) ListRegionalBySubscriptionForTopicTypeComplete(ctx context.Context, location string, topicTypeName string, filter string, top *int32) (result EventSubscriptionsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.ListRegionalBySubscriptionForTopicType")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListRegionalBySubscriptionForTopicType(ctx, location, topicTypeName, filter, top)
+ return
+}
+
// Update asynchronously updates an existing event subscription.
// Parameters:
// scope - the scope of existing event subscription. The scope can be a subscription, or a resource group, or a
@@ -1146,8 +1668,8 @@ func (client EventSubscriptionsClient) ListRegionalBySubscriptionForTopicTypeRes
// for a resource, and
// '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}'
// for an EventGrid topic.
-// eventSubscriptionName - name of the event subscription to be updated
-// eventSubscriptionUpdateParameters - updated event subscription information
+// eventSubscriptionName - name of the event subscription to be updated.
+// eventSubscriptionUpdateParameters - updated event subscription information.
func (client EventSubscriptionsClient) Update(ctx context.Context, scope string, eventSubscriptionName string, eventSubscriptionUpdateParameters EventSubscriptionUpdateParameters) (result EventSubscriptionsUpdateFuture, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsClient.Update")
@@ -1181,7 +1703,7 @@ func (client EventSubscriptionsClient) UpdatePreparer(ctx context.Context, scope
"scope": scope,
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/extensiontopics.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/extensiontopics.go
new file mode 100644
index 000000000000..88fa73560d05
--- /dev/null
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/extensiontopics.go
@@ -0,0 +1,120 @@
+package eventgrid
+
+// Copyright (c) Microsoft and contributors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+ "context"
+ "github.com/Azure/go-autorest/autorest"
+ "github.com/Azure/go-autorest/autorest/azure"
+ "github.com/Azure/go-autorest/tracing"
+ "net/http"
+)
+
+// ExtensionTopicsClient is the azure EventGrid Management Client
+type ExtensionTopicsClient struct {
+ BaseClient
+}
+
+// NewExtensionTopicsClient creates an instance of the ExtensionTopicsClient client.
+func NewExtensionTopicsClient(subscriptionID string) ExtensionTopicsClient {
+ return NewExtensionTopicsClientWithBaseURI(DefaultBaseURI, subscriptionID)
+}
+
+// NewExtensionTopicsClientWithBaseURI creates an instance of the ExtensionTopicsClient client using a custom endpoint.
+// Use this when interacting with an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure stack).
+func NewExtensionTopicsClientWithBaseURI(baseURI string, subscriptionID string) ExtensionTopicsClient {
+ return ExtensionTopicsClient{NewWithBaseURI(baseURI, subscriptionID)}
+}
+
+// Get get the properties of an extension topic.
+// Parameters:
+// scope - the identifier of the resource to which extension topic is queried. The scope can be a subscription,
+// or a resource group, or a top level resource belonging to a resource provider namespace. For example, use
+// '/subscriptions/{subscriptionId}/' for a subscription,
+// '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and
+// '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}'
+// for Azure resource.
+func (client ExtensionTopicsClient) Get(ctx context.Context, scope string) (result ExtensionTopic, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/ExtensionTopicsClient.Get")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetPreparer(ctx, scope)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.ExtensionTopicsClient", "Get", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.ExtensionTopicsClient", "Get", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.ExtensionTopicsClient", "Get", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetPreparer prepares the Get request.
+func (client ExtensionTopicsClient) GetPreparer(ctx context.Context, scope string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "scope": autorest.Encode("path", scope),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/{scope}/providers/Microsoft.EventGrid/extensionTopics/default", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetSender sends the Get request. The method will close the
+// http.Response Body if it receives an error.
+func (client ExtensionTopicsClient) GetSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+}
+
+// GetResponder handles the response to the Get request. The method always
+// closes the http.Response Body.
+func (client ExtensionTopicsClient) GetResponder(resp *http.Response) (result ExtensionTopic, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/models.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/models.go
new file mode 100644
index 000000000000..e4b31240b8ef
--- /dev/null
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/models.go
@@ -0,0 +1,8181 @@
+package eventgrid
+
+// Copyright (c) Microsoft and contributors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+ "context"
+ "encoding/json"
+ "github.com/Azure/go-autorest/autorest"
+ "github.com/Azure/go-autorest/autorest/azure"
+ "github.com/Azure/go-autorest/autorest/date"
+ "github.com/Azure/go-autorest/autorest/to"
+ "github.com/Azure/go-autorest/tracing"
+ "net/http"
+)
+
+// The package's fully qualified name.
+const fqdn = "github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid"
+
+// DomainProvisioningState enumerates the values for domain provisioning state.
+type DomainProvisioningState string
+
+const (
+ // Canceled ...
+ Canceled DomainProvisioningState = "Canceled"
+ // Creating ...
+ Creating DomainProvisioningState = "Creating"
+ // Deleting ...
+ Deleting DomainProvisioningState = "Deleting"
+ // Failed ...
+ Failed DomainProvisioningState = "Failed"
+ // Succeeded ...
+ Succeeded DomainProvisioningState = "Succeeded"
+ // Updating ...
+ Updating DomainProvisioningState = "Updating"
+)
+
+// PossibleDomainProvisioningStateValues returns an array of possible values for the DomainProvisioningState const type.
+func PossibleDomainProvisioningStateValues() []DomainProvisioningState {
+ return []DomainProvisioningState{Canceled, Creating, Deleting, Failed, Succeeded, Updating}
+}
+
+// DomainTopicProvisioningState enumerates the values for domain topic provisioning state.
+type DomainTopicProvisioningState string
+
+const (
+ // DomainTopicProvisioningStateCanceled ...
+ DomainTopicProvisioningStateCanceled DomainTopicProvisioningState = "Canceled"
+ // DomainTopicProvisioningStateCreating ...
+ DomainTopicProvisioningStateCreating DomainTopicProvisioningState = "Creating"
+ // DomainTopicProvisioningStateDeleting ...
+ DomainTopicProvisioningStateDeleting DomainTopicProvisioningState = "Deleting"
+ // DomainTopicProvisioningStateFailed ...
+ DomainTopicProvisioningStateFailed DomainTopicProvisioningState = "Failed"
+ // DomainTopicProvisioningStateSucceeded ...
+ DomainTopicProvisioningStateSucceeded DomainTopicProvisioningState = "Succeeded"
+ // DomainTopicProvisioningStateUpdating ...
+ DomainTopicProvisioningStateUpdating DomainTopicProvisioningState = "Updating"
+)
+
+// PossibleDomainTopicProvisioningStateValues returns an array of possible values for the DomainTopicProvisioningState const type.
+func PossibleDomainTopicProvisioningStateValues() []DomainTopicProvisioningState {
+ return []DomainTopicProvisioningState{DomainTopicProvisioningStateCanceled, DomainTopicProvisioningStateCreating, DomainTopicProvisioningStateDeleting, DomainTopicProvisioningStateFailed, DomainTopicProvisioningStateSucceeded, DomainTopicProvisioningStateUpdating}
+}
+
+// EndpointType enumerates the values for endpoint type.
+type EndpointType string
+
+const (
+ // EndpointTypeAzureFunction ...
+ EndpointTypeAzureFunction EndpointType = "AzureFunction"
+ // EndpointTypeEventHub ...
+ EndpointTypeEventHub EndpointType = "EventHub"
+ // EndpointTypeEventSubscriptionDestination ...
+ EndpointTypeEventSubscriptionDestination EndpointType = "EventSubscriptionDestination"
+ // EndpointTypeHybridConnection ...
+ EndpointTypeHybridConnection EndpointType = "HybridConnection"
+ // EndpointTypeServiceBusQueue ...
+ EndpointTypeServiceBusQueue EndpointType = "ServiceBusQueue"
+ // EndpointTypeServiceBusTopic ...
+ EndpointTypeServiceBusTopic EndpointType = "ServiceBusTopic"
+ // EndpointTypeStorageQueue ...
+ EndpointTypeStorageQueue EndpointType = "StorageQueue"
+ // EndpointTypeWebHook ...
+ EndpointTypeWebHook EndpointType = "WebHook"
+)
+
+// PossibleEndpointTypeValues returns an array of possible values for the EndpointType const type.
+func PossibleEndpointTypeValues() []EndpointType {
+ return []EndpointType{EndpointTypeAzureFunction, EndpointTypeEventHub, EndpointTypeEventSubscriptionDestination, EndpointTypeHybridConnection, EndpointTypeServiceBusQueue, EndpointTypeServiceBusTopic, EndpointTypeStorageQueue, EndpointTypeWebHook}
+}
+
+// EndpointTypeBasicDeadLetterDestination enumerates the values for endpoint type basic dead letter
+// destination.
+type EndpointTypeBasicDeadLetterDestination string
+
+const (
+ // EndpointTypeDeadLetterDestination ...
+ EndpointTypeDeadLetterDestination EndpointTypeBasicDeadLetterDestination = "DeadLetterDestination"
+ // EndpointTypeStorageBlob ...
+ EndpointTypeStorageBlob EndpointTypeBasicDeadLetterDestination = "StorageBlob"
+)
+
+// PossibleEndpointTypeBasicDeadLetterDestinationValues returns an array of possible values for the EndpointTypeBasicDeadLetterDestination const type.
+func PossibleEndpointTypeBasicDeadLetterDestinationValues() []EndpointTypeBasicDeadLetterDestination {
+ return []EndpointTypeBasicDeadLetterDestination{EndpointTypeDeadLetterDestination, EndpointTypeStorageBlob}
+}
+
+// EventChannelProvisioningState enumerates the values for event channel provisioning state.
+type EventChannelProvisioningState string
+
+const (
+ // EventChannelProvisioningStateCanceled ...
+ EventChannelProvisioningStateCanceled EventChannelProvisioningState = "Canceled"
+ // EventChannelProvisioningStateCreating ...
+ EventChannelProvisioningStateCreating EventChannelProvisioningState = "Creating"
+ // EventChannelProvisioningStateDeleting ...
+ EventChannelProvisioningStateDeleting EventChannelProvisioningState = "Deleting"
+ // EventChannelProvisioningStateFailed ...
+ EventChannelProvisioningStateFailed EventChannelProvisioningState = "Failed"
+ // EventChannelProvisioningStateSucceeded ...
+ EventChannelProvisioningStateSucceeded EventChannelProvisioningState = "Succeeded"
+ // EventChannelProvisioningStateUpdating ...
+ EventChannelProvisioningStateUpdating EventChannelProvisioningState = "Updating"
+)
+
+// PossibleEventChannelProvisioningStateValues returns an array of possible values for the EventChannelProvisioningState const type.
+func PossibleEventChannelProvisioningStateValues() []EventChannelProvisioningState {
+ return []EventChannelProvisioningState{EventChannelProvisioningStateCanceled, EventChannelProvisioningStateCreating, EventChannelProvisioningStateDeleting, EventChannelProvisioningStateFailed, EventChannelProvisioningStateSucceeded, EventChannelProvisioningStateUpdating}
+}
+
+// EventDeliverySchema enumerates the values for event delivery schema.
+type EventDeliverySchema string
+
+const (
+ // CloudEventSchemaV10 ...
+ CloudEventSchemaV10 EventDeliverySchema = "CloudEventSchemaV1_0"
+ // CustomInputSchema ...
+ CustomInputSchema EventDeliverySchema = "CustomInputSchema"
+ // EventGridSchema ...
+ EventGridSchema EventDeliverySchema = "EventGridSchema"
+)
+
+// PossibleEventDeliverySchemaValues returns an array of possible values for the EventDeliverySchema const type.
+func PossibleEventDeliverySchemaValues() []EventDeliverySchema {
+ return []EventDeliverySchema{CloudEventSchemaV10, CustomInputSchema, EventGridSchema}
+}
+
+// EventSubscriptionIdentityType enumerates the values for event subscription identity type.
+type EventSubscriptionIdentityType string
+
+const (
+ // SystemAssigned ...
+ SystemAssigned EventSubscriptionIdentityType = "SystemAssigned"
+ // UserAssigned ...
+ UserAssigned EventSubscriptionIdentityType = "UserAssigned"
+)
+
+// PossibleEventSubscriptionIdentityTypeValues returns an array of possible values for the EventSubscriptionIdentityType const type.
+func PossibleEventSubscriptionIdentityTypeValues() []EventSubscriptionIdentityType {
+ return []EventSubscriptionIdentityType{SystemAssigned, UserAssigned}
+}
+
+// EventSubscriptionProvisioningState enumerates the values for event subscription provisioning state.
+type EventSubscriptionProvisioningState string
+
+const (
+ // EventSubscriptionProvisioningStateAwaitingManualAction ...
+ EventSubscriptionProvisioningStateAwaitingManualAction EventSubscriptionProvisioningState = "AwaitingManualAction"
+ // EventSubscriptionProvisioningStateCanceled ...
+ EventSubscriptionProvisioningStateCanceled EventSubscriptionProvisioningState = "Canceled"
+ // EventSubscriptionProvisioningStateCreating ...
+ EventSubscriptionProvisioningStateCreating EventSubscriptionProvisioningState = "Creating"
+ // EventSubscriptionProvisioningStateDeleting ...
+ EventSubscriptionProvisioningStateDeleting EventSubscriptionProvisioningState = "Deleting"
+ // EventSubscriptionProvisioningStateFailed ...
+ EventSubscriptionProvisioningStateFailed EventSubscriptionProvisioningState = "Failed"
+ // EventSubscriptionProvisioningStateSucceeded ...
+ EventSubscriptionProvisioningStateSucceeded EventSubscriptionProvisioningState = "Succeeded"
+ // EventSubscriptionProvisioningStateUpdating ...
+ EventSubscriptionProvisioningStateUpdating EventSubscriptionProvisioningState = "Updating"
+)
+
+// PossibleEventSubscriptionProvisioningStateValues returns an array of possible values for the EventSubscriptionProvisioningState const type.
+func PossibleEventSubscriptionProvisioningStateValues() []EventSubscriptionProvisioningState {
+ return []EventSubscriptionProvisioningState{EventSubscriptionProvisioningStateAwaitingManualAction, EventSubscriptionProvisioningStateCanceled, EventSubscriptionProvisioningStateCreating, EventSubscriptionProvisioningStateDeleting, EventSubscriptionProvisioningStateFailed, EventSubscriptionProvisioningStateSucceeded, EventSubscriptionProvisioningStateUpdating}
+}
+
+// IdentityType enumerates the values for identity type.
+type IdentityType string
+
+const (
+ // IdentityTypeNone ...
+ IdentityTypeNone IdentityType = "None"
+ // IdentityTypeSystemAssigned ...
+ IdentityTypeSystemAssigned IdentityType = "SystemAssigned"
+ // IdentityTypeSystemAssignedUserAssigned ...
+ IdentityTypeSystemAssignedUserAssigned IdentityType = "SystemAssigned, UserAssigned"
+ // IdentityTypeUserAssigned ...
+ IdentityTypeUserAssigned IdentityType = "UserAssigned"
+)
+
+// PossibleIdentityTypeValues returns an array of possible values for the IdentityType const type.
+func PossibleIdentityTypeValues() []IdentityType {
+ return []IdentityType{IdentityTypeNone, IdentityTypeSystemAssigned, IdentityTypeSystemAssignedUserAssigned, IdentityTypeUserAssigned}
+}
+
+// InputSchema enumerates the values for input schema.
+type InputSchema string
+
+const (
+ // InputSchemaCloudEventSchemaV10 ...
+ InputSchemaCloudEventSchemaV10 InputSchema = "CloudEventSchemaV1_0"
+ // InputSchemaCustomEventSchema ...
+ InputSchemaCustomEventSchema InputSchema = "CustomEventSchema"
+ // InputSchemaEventGridSchema ...
+ InputSchemaEventGridSchema InputSchema = "EventGridSchema"
+)
+
+// PossibleInputSchemaValues returns an array of possible values for the InputSchema const type.
+func PossibleInputSchemaValues() []InputSchema {
+ return []InputSchema{InputSchemaCloudEventSchemaV10, InputSchemaCustomEventSchema, InputSchemaEventGridSchema}
+}
+
+// InputSchemaMappingType enumerates the values for input schema mapping type.
+type InputSchemaMappingType string
+
+const (
+ // InputSchemaMappingTypeInputSchemaMapping ...
+ InputSchemaMappingTypeInputSchemaMapping InputSchemaMappingType = "InputSchemaMapping"
+ // InputSchemaMappingTypeJSON ...
+ InputSchemaMappingTypeJSON InputSchemaMappingType = "Json"
+)
+
+// PossibleInputSchemaMappingTypeValues returns an array of possible values for the InputSchemaMappingType const type.
+func PossibleInputSchemaMappingTypeValues() []InputSchemaMappingType {
+ return []InputSchemaMappingType{InputSchemaMappingTypeInputSchemaMapping, InputSchemaMappingTypeJSON}
+}
+
+// IPActionType enumerates the values for ip action type.
+type IPActionType string
+
+const (
+ // Allow ...
+ Allow IPActionType = "Allow"
+)
+
+// PossibleIPActionTypeValues returns an array of possible values for the IPActionType const type.
+func PossibleIPActionTypeValues() []IPActionType {
+ return []IPActionType{Allow}
+}
+
+// OperatorType enumerates the values for operator type.
+type OperatorType string
+
+const (
+ // OperatorTypeAdvancedFilter ...
+ OperatorTypeAdvancedFilter OperatorType = "AdvancedFilter"
+ // OperatorTypeBoolEquals ...
+ OperatorTypeBoolEquals OperatorType = "BoolEquals"
+ // OperatorTypeNumberGreaterThan ...
+ OperatorTypeNumberGreaterThan OperatorType = "NumberGreaterThan"
+ // OperatorTypeNumberGreaterThanOrEquals ...
+ OperatorTypeNumberGreaterThanOrEquals OperatorType = "NumberGreaterThanOrEquals"
+ // OperatorTypeNumberIn ...
+ OperatorTypeNumberIn OperatorType = "NumberIn"
+ // OperatorTypeNumberLessThan ...
+ OperatorTypeNumberLessThan OperatorType = "NumberLessThan"
+ // OperatorTypeNumberLessThanOrEquals ...
+ OperatorTypeNumberLessThanOrEquals OperatorType = "NumberLessThanOrEquals"
+ // OperatorTypeNumberNotIn ...
+ OperatorTypeNumberNotIn OperatorType = "NumberNotIn"
+ // OperatorTypeStringBeginsWith ...
+ OperatorTypeStringBeginsWith OperatorType = "StringBeginsWith"
+ // OperatorTypeStringContains ...
+ OperatorTypeStringContains OperatorType = "StringContains"
+ // OperatorTypeStringEndsWith ...
+ OperatorTypeStringEndsWith OperatorType = "StringEndsWith"
+ // OperatorTypeStringIn ...
+ OperatorTypeStringIn OperatorType = "StringIn"
+ // OperatorTypeStringNotIn ...
+ OperatorTypeStringNotIn OperatorType = "StringNotIn"
+)
+
+// PossibleOperatorTypeValues returns an array of possible values for the OperatorType const type.
+func PossibleOperatorTypeValues() []OperatorType {
+ return []OperatorType{OperatorTypeAdvancedFilter, OperatorTypeBoolEquals, OperatorTypeNumberGreaterThan, OperatorTypeNumberGreaterThanOrEquals, OperatorTypeNumberIn, OperatorTypeNumberLessThan, OperatorTypeNumberLessThanOrEquals, OperatorTypeNumberNotIn, OperatorTypeStringBeginsWith, OperatorTypeStringContains, OperatorTypeStringEndsWith, OperatorTypeStringIn, OperatorTypeStringNotIn}
+}
+
+// PartnerNamespaceProvisioningState enumerates the values for partner namespace provisioning state.
+type PartnerNamespaceProvisioningState string
+
+const (
+ // PartnerNamespaceProvisioningStateCanceled ...
+ PartnerNamespaceProvisioningStateCanceled PartnerNamespaceProvisioningState = "Canceled"
+ // PartnerNamespaceProvisioningStateCreating ...
+ PartnerNamespaceProvisioningStateCreating PartnerNamespaceProvisioningState = "Creating"
+ // PartnerNamespaceProvisioningStateDeleting ...
+ PartnerNamespaceProvisioningStateDeleting PartnerNamespaceProvisioningState = "Deleting"
+ // PartnerNamespaceProvisioningStateFailed ...
+ PartnerNamespaceProvisioningStateFailed PartnerNamespaceProvisioningState = "Failed"
+ // PartnerNamespaceProvisioningStateSucceeded ...
+ PartnerNamespaceProvisioningStateSucceeded PartnerNamespaceProvisioningState = "Succeeded"
+ // PartnerNamespaceProvisioningStateUpdating ...
+ PartnerNamespaceProvisioningStateUpdating PartnerNamespaceProvisioningState = "Updating"
+)
+
+// PossiblePartnerNamespaceProvisioningStateValues returns an array of possible values for the PartnerNamespaceProvisioningState const type.
+func PossiblePartnerNamespaceProvisioningStateValues() []PartnerNamespaceProvisioningState {
+ return []PartnerNamespaceProvisioningState{PartnerNamespaceProvisioningStateCanceled, PartnerNamespaceProvisioningStateCreating, PartnerNamespaceProvisioningStateDeleting, PartnerNamespaceProvisioningStateFailed, PartnerNamespaceProvisioningStateSucceeded, PartnerNamespaceProvisioningStateUpdating}
+}
+
+// PartnerRegistrationProvisioningState enumerates the values for partner registration provisioning state.
+type PartnerRegistrationProvisioningState string
+
+const (
+ // PartnerRegistrationProvisioningStateCanceled ...
+ PartnerRegistrationProvisioningStateCanceled PartnerRegistrationProvisioningState = "Canceled"
+ // PartnerRegistrationProvisioningStateCreating ...
+ PartnerRegistrationProvisioningStateCreating PartnerRegistrationProvisioningState = "Creating"
+ // PartnerRegistrationProvisioningStateDeleting ...
+ PartnerRegistrationProvisioningStateDeleting PartnerRegistrationProvisioningState = "Deleting"
+ // PartnerRegistrationProvisioningStateFailed ...
+ PartnerRegistrationProvisioningStateFailed PartnerRegistrationProvisioningState = "Failed"
+ // PartnerRegistrationProvisioningStateSucceeded ...
+ PartnerRegistrationProvisioningStateSucceeded PartnerRegistrationProvisioningState = "Succeeded"
+ // PartnerRegistrationProvisioningStateUpdating ...
+ PartnerRegistrationProvisioningStateUpdating PartnerRegistrationProvisioningState = "Updating"
+)
+
+// PossiblePartnerRegistrationProvisioningStateValues returns an array of possible values for the PartnerRegistrationProvisioningState const type.
+func PossiblePartnerRegistrationProvisioningStateValues() []PartnerRegistrationProvisioningState {
+ return []PartnerRegistrationProvisioningState{PartnerRegistrationProvisioningStateCanceled, PartnerRegistrationProvisioningStateCreating, PartnerRegistrationProvisioningStateDeleting, PartnerRegistrationProvisioningStateFailed, PartnerRegistrationProvisioningStateSucceeded, PartnerRegistrationProvisioningStateUpdating}
+}
+
+// PartnerRegistrationVisibilityState enumerates the values for partner registration visibility state.
+type PartnerRegistrationVisibilityState string
+
+const (
+ // GenerallyAvailable ...
+ GenerallyAvailable PartnerRegistrationVisibilityState = "GenerallyAvailable"
+ // Hidden ...
+ Hidden PartnerRegistrationVisibilityState = "Hidden"
+ // PublicPreview ...
+ PublicPreview PartnerRegistrationVisibilityState = "PublicPreview"
+)
+
+// PossiblePartnerRegistrationVisibilityStateValues returns an array of possible values for the PartnerRegistrationVisibilityState const type.
+func PossiblePartnerRegistrationVisibilityStateValues() []PartnerRegistrationVisibilityState {
+ return []PartnerRegistrationVisibilityState{GenerallyAvailable, Hidden, PublicPreview}
+}
+
+// PartnerTopicActivationState enumerates the values for partner topic activation state.
+type PartnerTopicActivationState string
+
+const (
+ // Activated ...
+ Activated PartnerTopicActivationState = "Activated"
+ // Deactivated ...
+ Deactivated PartnerTopicActivationState = "Deactivated"
+ // NeverActivated ...
+ NeverActivated PartnerTopicActivationState = "NeverActivated"
+)
+
+// PossiblePartnerTopicActivationStateValues returns an array of possible values for the PartnerTopicActivationState const type.
+func PossiblePartnerTopicActivationStateValues() []PartnerTopicActivationState {
+ return []PartnerTopicActivationState{Activated, Deactivated, NeverActivated}
+}
+
+// PartnerTopicProvisioningState enumerates the values for partner topic provisioning state.
+type PartnerTopicProvisioningState string
+
+const (
+ // PartnerTopicProvisioningStateCanceled ...
+ PartnerTopicProvisioningStateCanceled PartnerTopicProvisioningState = "Canceled"
+ // PartnerTopicProvisioningStateCreating ...
+ PartnerTopicProvisioningStateCreating PartnerTopicProvisioningState = "Creating"
+ // PartnerTopicProvisioningStateDeleting ...
+ PartnerTopicProvisioningStateDeleting PartnerTopicProvisioningState = "Deleting"
+ // PartnerTopicProvisioningStateFailed ...
+ PartnerTopicProvisioningStateFailed PartnerTopicProvisioningState = "Failed"
+ // PartnerTopicProvisioningStateSucceeded ...
+ PartnerTopicProvisioningStateSucceeded PartnerTopicProvisioningState = "Succeeded"
+ // PartnerTopicProvisioningStateUpdating ...
+ PartnerTopicProvisioningStateUpdating PartnerTopicProvisioningState = "Updating"
+)
+
+// PossiblePartnerTopicProvisioningStateValues returns an array of possible values for the PartnerTopicProvisioningState const type.
+func PossiblePartnerTopicProvisioningStateValues() []PartnerTopicProvisioningState {
+ return []PartnerTopicProvisioningState{PartnerTopicProvisioningStateCanceled, PartnerTopicProvisioningStateCreating, PartnerTopicProvisioningStateDeleting, PartnerTopicProvisioningStateFailed, PartnerTopicProvisioningStateSucceeded, PartnerTopicProvisioningStateUpdating}
+}
+
+// PartnerTopicTypeAuthorizationState enumerates the values for partner topic type authorization state.
+type PartnerTopicTypeAuthorizationState string
+
+const (
+ // Authorized ...
+ Authorized PartnerTopicTypeAuthorizationState = "Authorized"
+ // NotApplicable ...
+ NotApplicable PartnerTopicTypeAuthorizationState = "NotApplicable"
+ // NotAuthorized ...
+ NotAuthorized PartnerTopicTypeAuthorizationState = "NotAuthorized"
+)
+
+// PossiblePartnerTopicTypeAuthorizationStateValues returns an array of possible values for the PartnerTopicTypeAuthorizationState const type.
+func PossiblePartnerTopicTypeAuthorizationStateValues() []PartnerTopicTypeAuthorizationState {
+ return []PartnerTopicTypeAuthorizationState{Authorized, NotApplicable, NotAuthorized}
+}
+
+// PersistedConnectionStatus enumerates the values for persisted connection status.
+type PersistedConnectionStatus string
+
+const (
+ // Approved ...
+ Approved PersistedConnectionStatus = "Approved"
+ // Disconnected ...
+ Disconnected PersistedConnectionStatus = "Disconnected"
+ // Pending ...
+ Pending PersistedConnectionStatus = "Pending"
+ // Rejected ...
+ Rejected PersistedConnectionStatus = "Rejected"
+)
+
+// PossiblePersistedConnectionStatusValues returns an array of possible values for the PersistedConnectionStatus const type.
+func PossiblePersistedConnectionStatusValues() []PersistedConnectionStatus {
+ return []PersistedConnectionStatus{Approved, Disconnected, Pending, Rejected}
+}
+
+// PublicNetworkAccess enumerates the values for public network access.
+type PublicNetworkAccess string
+
+const (
+ // Disabled ...
+ Disabled PublicNetworkAccess = "Disabled"
+ // Enabled ...
+ Enabled PublicNetworkAccess = "Enabled"
+)
+
+// PossiblePublicNetworkAccessValues returns an array of possible values for the PublicNetworkAccess const type.
+func PossiblePublicNetworkAccessValues() []PublicNetworkAccess {
+ return []PublicNetworkAccess{Disabled, Enabled}
+}
+
+// ResourceProvisioningState enumerates the values for resource provisioning state.
+type ResourceProvisioningState string
+
+const (
+ // ResourceProvisioningStateCanceled ...
+ ResourceProvisioningStateCanceled ResourceProvisioningState = "Canceled"
+ // ResourceProvisioningStateCreating ...
+ ResourceProvisioningStateCreating ResourceProvisioningState = "Creating"
+ // ResourceProvisioningStateDeleting ...
+ ResourceProvisioningStateDeleting ResourceProvisioningState = "Deleting"
+ // ResourceProvisioningStateFailed ...
+ ResourceProvisioningStateFailed ResourceProvisioningState = "Failed"
+ // ResourceProvisioningStateSucceeded ...
+ ResourceProvisioningStateSucceeded ResourceProvisioningState = "Succeeded"
+ // ResourceProvisioningStateUpdating ...
+ ResourceProvisioningStateUpdating ResourceProvisioningState = "Updating"
+)
+
+// PossibleResourceProvisioningStateValues returns an array of possible values for the ResourceProvisioningState const type.
+func PossibleResourceProvisioningStateValues() []ResourceProvisioningState {
+ return []ResourceProvisioningState{ResourceProvisioningStateCanceled, ResourceProvisioningStateCreating, ResourceProvisioningStateDeleting, ResourceProvisioningStateFailed, ResourceProvisioningStateSucceeded, ResourceProvisioningStateUpdating}
+}
+
+// ResourceRegionType enumerates the values for resource region type.
+type ResourceRegionType string
+
+const (
+ // GlobalResource ...
+ GlobalResource ResourceRegionType = "GlobalResource"
+ // RegionalResource ...
+ RegionalResource ResourceRegionType = "RegionalResource"
+)
+
+// PossibleResourceRegionTypeValues returns an array of possible values for the ResourceRegionType const type.
+func PossibleResourceRegionTypeValues() []ResourceRegionType {
+ return []ResourceRegionType{GlobalResource, RegionalResource}
+}
+
+// Sku enumerates the values for sku.
+type Sku string
+
+const (
+ // Basic ...
+ Basic Sku = "Basic"
+ // Premium ...
+ Premium Sku = "Premium"
+)
+
+// PossibleSkuValues returns an array of possible values for the Sku const type.
+func PossibleSkuValues() []Sku {
+ return []Sku{Basic, Premium}
+}
+
+// TopicProvisioningState enumerates the values for topic provisioning state.
+type TopicProvisioningState string
+
+const (
+ // TopicProvisioningStateCanceled ...
+ TopicProvisioningStateCanceled TopicProvisioningState = "Canceled"
+ // TopicProvisioningStateCreating ...
+ TopicProvisioningStateCreating TopicProvisioningState = "Creating"
+ // TopicProvisioningStateDeleting ...
+ TopicProvisioningStateDeleting TopicProvisioningState = "Deleting"
+ // TopicProvisioningStateFailed ...
+ TopicProvisioningStateFailed TopicProvisioningState = "Failed"
+ // TopicProvisioningStateSucceeded ...
+ TopicProvisioningStateSucceeded TopicProvisioningState = "Succeeded"
+ // TopicProvisioningStateUpdating ...
+ TopicProvisioningStateUpdating TopicProvisioningState = "Updating"
+)
+
+// PossibleTopicProvisioningStateValues returns an array of possible values for the TopicProvisioningState const type.
+func PossibleTopicProvisioningStateValues() []TopicProvisioningState {
+ return []TopicProvisioningState{TopicProvisioningStateCanceled, TopicProvisioningStateCreating, TopicProvisioningStateDeleting, TopicProvisioningStateFailed, TopicProvisioningStateSucceeded, TopicProvisioningStateUpdating}
+}
+
+// TopicTypeProvisioningState enumerates the values for topic type provisioning state.
+type TopicTypeProvisioningState string
+
+const (
+ // TopicTypeProvisioningStateCanceled ...
+ TopicTypeProvisioningStateCanceled TopicTypeProvisioningState = "Canceled"
+ // TopicTypeProvisioningStateCreating ...
+ TopicTypeProvisioningStateCreating TopicTypeProvisioningState = "Creating"
+ // TopicTypeProvisioningStateDeleting ...
+ TopicTypeProvisioningStateDeleting TopicTypeProvisioningState = "Deleting"
+ // TopicTypeProvisioningStateFailed ...
+ TopicTypeProvisioningStateFailed TopicTypeProvisioningState = "Failed"
+ // TopicTypeProvisioningStateSucceeded ...
+ TopicTypeProvisioningStateSucceeded TopicTypeProvisioningState = "Succeeded"
+ // TopicTypeProvisioningStateUpdating ...
+ TopicTypeProvisioningStateUpdating TopicTypeProvisioningState = "Updating"
+)
+
+// PossibleTopicTypeProvisioningStateValues returns an array of possible values for the TopicTypeProvisioningState const type.
+func PossibleTopicTypeProvisioningStateValues() []TopicTypeProvisioningState {
+ return []TopicTypeProvisioningState{TopicTypeProvisioningStateCanceled, TopicTypeProvisioningStateCreating, TopicTypeProvisioningStateDeleting, TopicTypeProvisioningStateFailed, TopicTypeProvisioningStateSucceeded, TopicTypeProvisioningStateUpdating}
+}
+
+// BasicAdvancedFilter this is the base type that represents an advanced filter. To configure an advanced filter, do
+// not directly instantiate an object of this class. Instead, instantiate an object of a derived class such as
+// BoolEqualsAdvancedFilter, NumberInAdvancedFilter, StringEqualsAdvancedFilter etc. depending on the type of the key
+// based on which you want to filter.
+type BasicAdvancedFilter interface {
+ AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool)
+ AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool)
+ AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool)
+ AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool)
+ AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool)
+ AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool)
+ AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool)
+ AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool)
+ AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool)
+ AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool)
+ AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool)
+ AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool)
+ AsAdvancedFilter() (*AdvancedFilter, bool)
+}
+
+// AdvancedFilter this is the base type that represents an advanced filter. To configure an advanced filter, do
+// not directly instantiate an object of this class. Instead, instantiate an object of a derived class such as
+// BoolEqualsAdvancedFilter, NumberInAdvancedFilter, StringEqualsAdvancedFilter etc. depending on the type of
+// the key based on which you want to filter.
+type AdvancedFilter struct {
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+func unmarshalBasicAdvancedFilter(body []byte) (BasicAdvancedFilter, error) {
+ var m map[string]interface{}
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return nil, err
+ }
+
+ switch m["operatorType"] {
+ case string(OperatorTypeNumberIn):
+ var niaf NumberInAdvancedFilter
+ err := json.Unmarshal(body, &niaf)
+ return niaf, err
+ case string(OperatorTypeNumberNotIn):
+ var nniaf NumberNotInAdvancedFilter
+ err := json.Unmarshal(body, &nniaf)
+ return nniaf, err
+ case string(OperatorTypeNumberLessThan):
+ var nltaf NumberLessThanAdvancedFilter
+ err := json.Unmarshal(body, &nltaf)
+ return nltaf, err
+ case string(OperatorTypeNumberGreaterThan):
+ var ngtaf NumberGreaterThanAdvancedFilter
+ err := json.Unmarshal(body, &ngtaf)
+ return ngtaf, err
+ case string(OperatorTypeNumberLessThanOrEquals):
+ var nltoeaf NumberLessThanOrEqualsAdvancedFilter
+ err := json.Unmarshal(body, &nltoeaf)
+ return nltoeaf, err
+ case string(OperatorTypeNumberGreaterThanOrEquals):
+ var ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter
+ err := json.Unmarshal(body, &ngtoeaf)
+ return ngtoeaf, err
+ case string(OperatorTypeBoolEquals):
+ var beaf BoolEqualsAdvancedFilter
+ err := json.Unmarshal(body, &beaf)
+ return beaf, err
+ case string(OperatorTypeStringIn):
+ var siaf StringInAdvancedFilter
+ err := json.Unmarshal(body, &siaf)
+ return siaf, err
+ case string(OperatorTypeStringNotIn):
+ var sniaf StringNotInAdvancedFilter
+ err := json.Unmarshal(body, &sniaf)
+ return sniaf, err
+ case string(OperatorTypeStringBeginsWith):
+ var sbwaf StringBeginsWithAdvancedFilter
+ err := json.Unmarshal(body, &sbwaf)
+ return sbwaf, err
+ case string(OperatorTypeStringEndsWith):
+ var sewaf StringEndsWithAdvancedFilter
+ err := json.Unmarshal(body, &sewaf)
+ return sewaf, err
+ case string(OperatorTypeStringContains):
+ var scaf StringContainsAdvancedFilter
+ err := json.Unmarshal(body, &scaf)
+ return scaf, err
+ default:
+ var af AdvancedFilter
+ err := json.Unmarshal(body, &af)
+ return af, err
+ }
+}
+func unmarshalBasicAdvancedFilterArray(body []byte) ([]BasicAdvancedFilter, error) {
+ var rawMessages []*json.RawMessage
+ err := json.Unmarshal(body, &rawMessages)
+ if err != nil {
+ return nil, err
+ }
+
+ afArray := make([]BasicAdvancedFilter, len(rawMessages))
+
+ for index, rawMessage := range rawMessages {
+ af, err := unmarshalBasicAdvancedFilter(*rawMessage)
+ if err != nil {
+ return nil, err
+ }
+ afArray[index] = af
+ }
+ return afArray, nil
+}
+
+// MarshalJSON is the custom marshaler for AdvancedFilter.
+func (af AdvancedFilter) MarshalJSON() ([]byte, error) {
+ af.OperatorType = OperatorTypeAdvancedFilter
+ objectMap := make(map[string]interface{})
+ if af.Key != nil {
+ objectMap["key"] = af.Key
+ }
+ if af.OperatorType != "" {
+ objectMap["operatorType"] = af.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return &af, true
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for AdvancedFilter.
+func (af AdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &af, true
+}
+
+// AzureFunctionEventSubscriptionDestination information about the azure function destination for an event
+// subscription.
+type AzureFunctionEventSubscriptionDestination struct {
+ // AzureFunctionEventSubscriptionDestinationProperties - Azure Function Properties of the event subscription destination.
+ *AzureFunctionEventSubscriptionDestinationProperties `json:"properties,omitempty"`
+ // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection', 'EndpointTypeServiceBusQueue', 'EndpointTypeServiceBusTopic', 'EndpointTypeAzureFunction'
+ EndpointType EndpointType `json:"endpointType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for AzureFunctionEventSubscriptionDestination.
+func (afesd AzureFunctionEventSubscriptionDestination) MarshalJSON() ([]byte, error) {
+ afesd.EndpointType = EndpointTypeAzureFunction
+ objectMap := make(map[string]interface{})
+ if afesd.AzureFunctionEventSubscriptionDestinationProperties != nil {
+ objectMap["properties"] = afesd.AzureFunctionEventSubscriptionDestinationProperties
+ }
+ if afesd.EndpointType != "" {
+ objectMap["endpointType"] = afesd.EndpointType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for AzureFunctionEventSubscriptionDestination.
+func (afesd AzureFunctionEventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for AzureFunctionEventSubscriptionDestination.
+func (afesd AzureFunctionEventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for AzureFunctionEventSubscriptionDestination.
+func (afesd AzureFunctionEventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for AzureFunctionEventSubscriptionDestination.
+func (afesd AzureFunctionEventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for AzureFunctionEventSubscriptionDestination.
+func (afesd AzureFunctionEventSubscriptionDestination) AsServiceBusQueueEventSubscriptionDestination() (*ServiceBusQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusTopicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for AzureFunctionEventSubscriptionDestination.
+func (afesd AzureFunctionEventSubscriptionDestination) AsServiceBusTopicEventSubscriptionDestination() (*ServiceBusTopicEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsAzureFunctionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for AzureFunctionEventSubscriptionDestination.
+func (afesd AzureFunctionEventSubscriptionDestination) AsAzureFunctionEventSubscriptionDestination() (*AzureFunctionEventSubscriptionDestination, bool) {
+ return &afesd, true
+}
+
+// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for AzureFunctionEventSubscriptionDestination.
+func (afesd AzureFunctionEventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for AzureFunctionEventSubscriptionDestination.
+func (afesd AzureFunctionEventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
+ return &afesd, true
+}
+
+// UnmarshalJSON is the custom unmarshaler for AzureFunctionEventSubscriptionDestination struct.
+func (afesd *AzureFunctionEventSubscriptionDestination) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var azureFunctionEventSubscriptionDestinationProperties AzureFunctionEventSubscriptionDestinationProperties
+ err = json.Unmarshal(*v, &azureFunctionEventSubscriptionDestinationProperties)
+ if err != nil {
+ return err
+ }
+ afesd.AzureFunctionEventSubscriptionDestinationProperties = &azureFunctionEventSubscriptionDestinationProperties
+ }
+ case "endpointType":
+ if v != nil {
+ var endpointType EndpointType
+ err = json.Unmarshal(*v, &endpointType)
+ if err != nil {
+ return err
+ }
+ afesd.EndpointType = endpointType
+ }
+ }
+ }
+
+ return nil
+}
+
+// AzureFunctionEventSubscriptionDestinationProperties the properties that represent the Azure Function
+// destination of an event subscription.
+type AzureFunctionEventSubscriptionDestinationProperties struct {
+ // ResourceID - The Azure Resource Id that represents the endpoint of the Azure Function destination of an event subscription.
+ ResourceID *string `json:"resourceId,omitempty"`
+ // MaxEventsPerBatch - Maximum number of events per batch.
+ MaxEventsPerBatch *int32 `json:"maxEventsPerBatch,omitempty"`
+ // PreferredBatchSizeInKilobytes - Preferred batch size in Kilobytes.
+ PreferredBatchSizeInKilobytes *int32 `json:"preferredBatchSizeInKilobytes,omitempty"`
+}
+
+// BoolEqualsAdvancedFilter boolEquals Advanced Filter.
+type BoolEqualsAdvancedFilter struct {
+ // Value - The boolean filter value.
+ Value *bool `json:"value,omitempty"`
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) MarshalJSON() ([]byte, error) {
+ beaf.OperatorType = OperatorTypeBoolEquals
+ objectMap := make(map[string]interface{})
+ if beaf.Value != nil {
+ objectMap["value"] = beaf.Value
+ }
+ if beaf.Key != nil {
+ objectMap["key"] = beaf.Key
+ }
+ if beaf.OperatorType != "" {
+ objectMap["operatorType"] = beaf.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return &beaf, true
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for BoolEqualsAdvancedFilter.
+func (beaf BoolEqualsAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &beaf, true
+}
+
+// ConnectionState connectionState information.
+type ConnectionState struct {
+ // Status - Status of the connection. Possible values include: 'Pending', 'Approved', 'Rejected', 'Disconnected'
+ Status PersistedConnectionStatus `json:"status,omitempty"`
+ // Description - Description of the connection state.
+ Description *string `json:"description,omitempty"`
+ // ActionsRequired - Actions required (if any).
+ ActionsRequired *string `json:"actionsRequired,omitempty"`
+}
+
+// BasicDeadLetterDestination information about the dead letter destination for an event subscription. To configure a
+// deadletter destination, do not directly instantiate an object of this class. Instead, instantiate an object of a
+// derived class. Currently, StorageBlobDeadLetterDestination is the only class that derives from this class.
+type BasicDeadLetterDestination interface {
+ AsStorageBlobDeadLetterDestination() (*StorageBlobDeadLetterDestination, bool)
+ AsDeadLetterDestination() (*DeadLetterDestination, bool)
+}
+
+// DeadLetterDestination information about the dead letter destination for an event subscription. To configure
+// a deadletter destination, do not directly instantiate an object of this class. Instead, instantiate an
+// object of a derived class. Currently, StorageBlobDeadLetterDestination is the only class that derives from
+// this class.
+type DeadLetterDestination struct {
+ // EndpointType - Possible values include: 'EndpointTypeDeadLetterDestination', 'EndpointTypeStorageBlob'
+ EndpointType EndpointTypeBasicDeadLetterDestination `json:"endpointType,omitempty"`
+}
+
+func unmarshalBasicDeadLetterDestination(body []byte) (BasicDeadLetterDestination, error) {
+ var m map[string]interface{}
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return nil, err
+ }
+
+ switch m["endpointType"] {
+ case string(EndpointTypeStorageBlob):
+ var sbdld StorageBlobDeadLetterDestination
+ err := json.Unmarshal(body, &sbdld)
+ return sbdld, err
+ default:
+ var dld DeadLetterDestination
+ err := json.Unmarshal(body, &dld)
+ return dld, err
+ }
+}
+func unmarshalBasicDeadLetterDestinationArray(body []byte) ([]BasicDeadLetterDestination, error) {
+ var rawMessages []*json.RawMessage
+ err := json.Unmarshal(body, &rawMessages)
+ if err != nil {
+ return nil, err
+ }
+
+ dldArray := make([]BasicDeadLetterDestination, len(rawMessages))
+
+ for index, rawMessage := range rawMessages {
+ dld, err := unmarshalBasicDeadLetterDestination(*rawMessage)
+ if err != nil {
+ return nil, err
+ }
+ dldArray[index] = dld
+ }
+ return dldArray, nil
+}
+
+// MarshalJSON is the custom marshaler for DeadLetterDestination.
+func (dld DeadLetterDestination) MarshalJSON() ([]byte, error) {
+ dld.EndpointType = EndpointTypeDeadLetterDestination
+ objectMap := make(map[string]interface{})
+ if dld.EndpointType != "" {
+ objectMap["endpointType"] = dld.EndpointType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsStorageBlobDeadLetterDestination is the BasicDeadLetterDestination implementation for DeadLetterDestination.
+func (dld DeadLetterDestination) AsStorageBlobDeadLetterDestination() (*StorageBlobDeadLetterDestination, bool) {
+ return nil, false
+}
+
+// AsDeadLetterDestination is the BasicDeadLetterDestination implementation for DeadLetterDestination.
+func (dld DeadLetterDestination) AsDeadLetterDestination() (*DeadLetterDestination, bool) {
+ return &dld, true
+}
+
+// AsBasicDeadLetterDestination is the BasicDeadLetterDestination implementation for DeadLetterDestination.
+func (dld DeadLetterDestination) AsBasicDeadLetterDestination() (BasicDeadLetterDestination, bool) {
+ return &dld, true
+}
+
+// DeadLetterWithResourceIdentity information about the deadletter destination with resource identity.
+type DeadLetterWithResourceIdentity struct {
+ // Identity - The identity to use when dead-lettering events.
+ Identity *EventSubscriptionIdentity `json:"identity,omitempty"`
+ // DeadLetterDestination - Information about the destination where events have to be delivered for the event subscription.
+ // Uses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering.
+ DeadLetterDestination BasicDeadLetterDestination `json:"deadLetterDestination,omitempty"`
+}
+
+// UnmarshalJSON is the custom unmarshaler for DeadLetterWithResourceIdentity struct.
+func (dlwri *DeadLetterWithResourceIdentity) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "identity":
+ if v != nil {
+ var identity EventSubscriptionIdentity
+ err = json.Unmarshal(*v, &identity)
+ if err != nil {
+ return err
+ }
+ dlwri.Identity = &identity
+ }
+ case "deadLetterDestination":
+ if v != nil {
+ deadLetterDestination, err := unmarshalBasicDeadLetterDestination(*v)
+ if err != nil {
+ return err
+ }
+ dlwri.DeadLetterDestination = deadLetterDestination
+ }
+ }
+ }
+
+ return nil
+}
+
+// DeliveryWithResourceIdentity information about the delivery for an event subscription with resource
+// identity.
+type DeliveryWithResourceIdentity struct {
+ // Identity - The identity to use when delivering events.
+ Identity *EventSubscriptionIdentity `json:"identity,omitempty"`
+ // Destination - Information about the destination where events have to be delivered for the event subscription.
+ // Uses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering.
+ Destination BasicEventSubscriptionDestination `json:"destination,omitempty"`
+}
+
+// UnmarshalJSON is the custom unmarshaler for DeliveryWithResourceIdentity struct.
+func (dwri *DeliveryWithResourceIdentity) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "identity":
+ if v != nil {
+ var identity EventSubscriptionIdentity
+ err = json.Unmarshal(*v, &identity)
+ if err != nil {
+ return err
+ }
+ dwri.Identity = &identity
+ }
+ case "destination":
+ if v != nil {
+ destination, err := unmarshalBasicEventSubscriptionDestination(*v)
+ if err != nil {
+ return err
+ }
+ dwri.Destination = destination
+ }
+ }
+ }
+
+ return nil
+}
+
+// Domain eventGrid Domain.
+type Domain struct {
+ autorest.Response `json:"-"`
+ // DomainProperties - Properties of the domain.
+ *DomainProperties `json:"properties,omitempty"`
+ // Sku - The Sku pricing tier for the domain.
+ Sku *ResourceSku `json:"sku,omitempty"`
+ // Identity - Identity information for the resource.
+ Identity *IdentityInfo `json:"identity,omitempty"`
+ // Location - Location of the resource.
+ Location *string `json:"location,omitempty"`
+ // Tags - Tags of the resource.
+ Tags map[string]*string `json:"tags"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for Domain.
+func (d Domain) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if d.DomainProperties != nil {
+ objectMap["properties"] = d.DomainProperties
+ }
+ if d.Sku != nil {
+ objectMap["sku"] = d.Sku
+ }
+ if d.Identity != nil {
+ objectMap["identity"] = d.Identity
+ }
+ if d.Location != nil {
+ objectMap["location"] = d.Location
+ }
+ if d.Tags != nil {
+ objectMap["tags"] = d.Tags
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for Domain struct.
+func (d *Domain) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var domainProperties DomainProperties
+ err = json.Unmarshal(*v, &domainProperties)
+ if err != nil {
+ return err
+ }
+ d.DomainProperties = &domainProperties
+ }
+ case "sku":
+ if v != nil {
+ var sku ResourceSku
+ err = json.Unmarshal(*v, &sku)
+ if err != nil {
+ return err
+ }
+ d.Sku = &sku
+ }
+ case "identity":
+ if v != nil {
+ var identity IdentityInfo
+ err = json.Unmarshal(*v, &identity)
+ if err != nil {
+ return err
+ }
+ d.Identity = &identity
+ }
+ case "location":
+ if v != nil {
+ var location string
+ err = json.Unmarshal(*v, &location)
+ if err != nil {
+ return err
+ }
+ d.Location = &location
+ }
+ case "tags":
+ if v != nil {
+ var tags map[string]*string
+ err = json.Unmarshal(*v, &tags)
+ if err != nil {
+ return err
+ }
+ d.Tags = tags
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ d.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ d.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ d.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// DomainProperties properties of the Domain.
+type DomainProperties struct {
+ // PrivateEndpointConnections - List of private endpoint connections.
+ PrivateEndpointConnections *[]PrivateEndpointConnection `json:"privateEndpointConnections,omitempty"`
+ // ProvisioningState - READ-ONLY; Provisioning state of the domain. Possible values include: 'Creating', 'Updating', 'Deleting', 'Succeeded', 'Canceled', 'Failed'
+ ProvisioningState DomainProvisioningState `json:"provisioningState,omitempty"`
+ // Endpoint - READ-ONLY; Endpoint for the domain.
+ Endpoint *string `json:"endpoint,omitempty"`
+ // InputSchema - This determines the format that Event Grid should expect for incoming events published to the domain. Possible values include: 'InputSchemaEventGridSchema', 'InputSchemaCustomEventSchema', 'InputSchemaCloudEventSchemaV10'
+ InputSchema InputSchema `json:"inputSchema,omitempty"`
+ // InputSchemaMapping - Information about the InputSchemaMapping which specified the info about mapping event payload.
+ InputSchemaMapping BasicInputSchemaMapping `json:"inputSchemaMapping,omitempty"`
+ // MetricResourceID - READ-ONLY; Metric resource id for the domain.
+ MetricResourceID *string `json:"metricResourceId,omitempty"`
+ // PublicNetworkAccess - This determines if traffic is allowed over public network. By default it is enabled.
+ // You can further restrict to specific IPs by configuring . Possible values include: 'Enabled', 'Disabled'
+ PublicNetworkAccess PublicNetworkAccess `json:"publicNetworkAccess,omitempty"`
+ // InboundIPRules - This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled.
+ InboundIPRules *[]InboundIPRule `json:"inboundIpRules,omitempty"`
+}
+
+// UnmarshalJSON is the custom unmarshaler for DomainProperties struct.
+func (dp *DomainProperties) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "privateEndpointConnections":
+ if v != nil {
+ var privateEndpointConnections []PrivateEndpointConnection
+ err = json.Unmarshal(*v, &privateEndpointConnections)
+ if err != nil {
+ return err
+ }
+ dp.PrivateEndpointConnections = &privateEndpointConnections
+ }
+ case "provisioningState":
+ if v != nil {
+ var provisioningState DomainProvisioningState
+ err = json.Unmarshal(*v, &provisioningState)
+ if err != nil {
+ return err
+ }
+ dp.ProvisioningState = provisioningState
+ }
+ case "endpoint":
+ if v != nil {
+ var endpoint string
+ err = json.Unmarshal(*v, &endpoint)
+ if err != nil {
+ return err
+ }
+ dp.Endpoint = &endpoint
+ }
+ case "inputSchema":
+ if v != nil {
+ var inputSchema InputSchema
+ err = json.Unmarshal(*v, &inputSchema)
+ if err != nil {
+ return err
+ }
+ dp.InputSchema = inputSchema
+ }
+ case "inputSchemaMapping":
+ if v != nil {
+ inputSchemaMapping, err := unmarshalBasicInputSchemaMapping(*v)
+ if err != nil {
+ return err
+ }
+ dp.InputSchemaMapping = inputSchemaMapping
+ }
+ case "metricResourceId":
+ if v != nil {
+ var metricResourceID string
+ err = json.Unmarshal(*v, &metricResourceID)
+ if err != nil {
+ return err
+ }
+ dp.MetricResourceID = &metricResourceID
+ }
+ case "publicNetworkAccess":
+ if v != nil {
+ var publicNetworkAccess PublicNetworkAccess
+ err = json.Unmarshal(*v, &publicNetworkAccess)
+ if err != nil {
+ return err
+ }
+ dp.PublicNetworkAccess = publicNetworkAccess
+ }
+ case "inboundIpRules":
+ if v != nil {
+ var inboundIPRules []InboundIPRule
+ err = json.Unmarshal(*v, &inboundIPRules)
+ if err != nil {
+ return err
+ }
+ dp.InboundIPRules = &inboundIPRules
+ }
+ }
+ }
+
+ return nil
+}
+
+// DomainRegenerateKeyRequest domain regenerate share access key request.
+type DomainRegenerateKeyRequest struct {
+ // KeyName - Key name to regenerate key1 or key2.
+ KeyName *string `json:"keyName,omitempty"`
+}
+
+// DomainsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a long-running
+// operation.
+type DomainsCreateOrUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *DomainsCreateOrUpdateFuture) Result(client DomainsClient) (d Domain, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.DomainsCreateOrUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if d.Response.Response, err = future.GetResult(sender); err == nil && d.Response.Response.StatusCode != http.StatusNoContent {
+ d, err = client.CreateOrUpdateResponder(d.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainsCreateOrUpdateFuture", "Result", d.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// DomainsDeleteFuture an abstraction for monitoring and retrieving the results of a long-running
+// operation.
+type DomainsDeleteFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *DomainsDeleteFuture) Result(client DomainsClient) (ar autorest.Response, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainsDeleteFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.DomainsDeleteFuture")
+ return
+ }
+ ar.Response = future.Response()
+ return
+}
+
+// DomainSharedAccessKeys shared access keys of the Domain.
+type DomainSharedAccessKeys struct {
+ autorest.Response `json:"-"`
+ // Key1 - Shared access key1 for the domain.
+ Key1 *string `json:"key1,omitempty"`
+ // Key2 - Shared access key2 for the domain.
+ Key2 *string `json:"key2,omitempty"`
+}
+
+// DomainsListResult result of the List Domains operation
+type DomainsListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of Domains
+ Value *[]Domain `json:"value,omitempty"`
+ // NextLink - A link for the next page of domains
+ NextLink *string `json:"nextLink,omitempty"`
+}
+
+// DomainsListResultIterator provides access to a complete listing of Domain values.
+type DomainsListResultIterator struct {
+ i int
+ page DomainsListResultPage
+}
+
+// NextWithContext advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+func (iter *DomainsListResultIterator) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/DomainsListResultIterator.NextWithContext")
+ defer func() {
+ sc := -1
+ if iter.Response().Response.Response != nil {
+ sc = iter.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ iter.i++
+ if iter.i < len(iter.page.Values()) {
+ return nil
+ }
+ err = iter.page.NextWithContext(ctx)
+ if err != nil {
+ iter.i--
+ return err
+ }
+ iter.i = 0
+ return nil
+}
+
+// Next advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (iter *DomainsListResultIterator) Next() error {
+ return iter.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the enumeration should be started or is not yet complete.
+func (iter DomainsListResultIterator) NotDone() bool {
+ return iter.page.NotDone() && iter.i < len(iter.page.Values())
+}
+
+// Response returns the raw server response from the last page request.
+func (iter DomainsListResultIterator) Response() DomainsListResult {
+ return iter.page.Response()
+}
+
+// Value returns the current value or a zero-initialized value if the
+// iterator has advanced beyond the end of the collection.
+func (iter DomainsListResultIterator) Value() Domain {
+ if !iter.page.NotDone() {
+ return Domain{}
+ }
+ return iter.page.Values()[iter.i]
+}
+
+// Creates a new instance of the DomainsListResultIterator type.
+func NewDomainsListResultIterator(page DomainsListResultPage) DomainsListResultIterator {
+ return DomainsListResultIterator{page: page}
+}
+
+// IsEmpty returns true if the ListResult contains no values.
+func (dlr DomainsListResult) IsEmpty() bool {
+ return dlr.Value == nil || len(*dlr.Value) == 0
+}
+
+// domainsListResultPreparer prepares a request to retrieve the next set of results.
+// It returns nil if no more results exist.
+func (dlr DomainsListResult) domainsListResultPreparer(ctx context.Context) (*http.Request, error) {
+ if dlr.NextLink == nil || len(to.String(dlr.NextLink)) < 1 {
+ return nil, nil
+ }
+ return autorest.Prepare((&http.Request{}).WithContext(ctx),
+ autorest.AsJSON(),
+ autorest.AsGet(),
+ autorest.WithBaseURL(to.String(dlr.NextLink)))
+}
+
+// DomainsListResultPage contains a page of Domain values.
+type DomainsListResultPage struct {
+ fn func(context.Context, DomainsListResult) (DomainsListResult, error)
+ dlr DomainsListResult
+}
+
+// NextWithContext advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+func (page *DomainsListResultPage) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/DomainsListResultPage.NextWithContext")
+ defer func() {
+ sc := -1
+ if page.Response().Response.Response != nil {
+ sc = page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ next, err := page.fn(ctx, page.dlr)
+ if err != nil {
+ return err
+ }
+ page.dlr = next
+ return nil
+}
+
+// Next advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (page *DomainsListResultPage) Next() error {
+ return page.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the page enumeration should be started or is not yet complete.
+func (page DomainsListResultPage) NotDone() bool {
+ return !page.dlr.IsEmpty()
+}
+
+// Response returns the raw server response from the last page request.
+func (page DomainsListResultPage) Response() DomainsListResult {
+ return page.dlr
+}
+
+// Values returns the slice of values for the current page or nil if there are no values.
+func (page DomainsListResultPage) Values() []Domain {
+ if page.dlr.IsEmpty() {
+ return nil
+ }
+ return *page.dlr.Value
+}
+
+// Creates a new instance of the DomainsListResultPage type.
+func NewDomainsListResultPage(getNextPage func(context.Context, DomainsListResult) (DomainsListResult, error)) DomainsListResultPage {
+ return DomainsListResultPage{fn: getNextPage}
+}
+
+// DomainsUpdateFuture an abstraction for monitoring and retrieving the results of a long-running
+// operation.
+type DomainsUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *DomainsUpdateFuture) Result(client DomainsClient) (d Domain, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainsUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.DomainsUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if d.Response.Response, err = future.GetResult(sender); err == nil && d.Response.Response.StatusCode != http.StatusNoContent {
+ d, err = client.UpdateResponder(d.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainsUpdateFuture", "Result", d.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// DomainTopic domain Topic.
+type DomainTopic struct {
+ autorest.Response `json:"-"`
+ // DomainTopicProperties - Properties of the Domain Topic.
+ *DomainTopicProperties `json:"properties,omitempty"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for DomainTopic.
+func (dt DomainTopic) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if dt.DomainTopicProperties != nil {
+ objectMap["properties"] = dt.DomainTopicProperties
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for DomainTopic struct.
+func (dt *DomainTopic) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var domainTopicProperties DomainTopicProperties
+ err = json.Unmarshal(*v, &domainTopicProperties)
+ if err != nil {
+ return err
+ }
+ dt.DomainTopicProperties = &domainTopicProperties
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ dt.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ dt.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ dt.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// DomainTopicProperties properties of the Domain Topic.
+type DomainTopicProperties struct {
+ // ProvisioningState - Provisioning state of the domain topic. Possible values include: 'DomainTopicProvisioningStateCreating', 'DomainTopicProvisioningStateUpdating', 'DomainTopicProvisioningStateDeleting', 'DomainTopicProvisioningStateSucceeded', 'DomainTopicProvisioningStateCanceled', 'DomainTopicProvisioningStateFailed'
+ ProvisioningState DomainTopicProvisioningState `json:"provisioningState,omitempty"`
+}
+
+// DomainTopicsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a
+// long-running operation.
+type DomainTopicsCreateOrUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *DomainTopicsCreateOrUpdateFuture) Result(client DomainTopicsClient) (dt DomainTopic, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.DomainTopicsCreateOrUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if dt.Response.Response, err = future.GetResult(sender); err == nil && dt.Response.Response.StatusCode != http.StatusNoContent {
+ dt, err = client.CreateOrUpdateResponder(dt.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsCreateOrUpdateFuture", "Result", dt.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// DomainTopicsDeleteFuture an abstraction for monitoring and retrieving the results of a long-running
+// operation.
+type DomainTopicsDeleteFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *DomainTopicsDeleteFuture) Result(client DomainTopicsClient) (ar autorest.Response, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.DomainTopicsDeleteFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.DomainTopicsDeleteFuture")
+ return
+ }
+ ar.Response = future.Response()
+ return
+}
+
+// DomainTopicsListResult result of the List Domain Topics operation
+type DomainTopicsListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of Domain Topics
+ Value *[]DomainTopic `json:"value,omitempty"`
+ // NextLink - A link for the next page of domain topics
+ NextLink *string `json:"nextLink,omitempty"`
+}
+
+// DomainTopicsListResultIterator provides access to a complete listing of DomainTopic values.
+type DomainTopicsListResultIterator struct {
+ i int
+ page DomainTopicsListResultPage
+}
+
+// NextWithContext advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+func (iter *DomainTopicsListResultIterator) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/DomainTopicsListResultIterator.NextWithContext")
+ defer func() {
+ sc := -1
+ if iter.Response().Response.Response != nil {
+ sc = iter.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ iter.i++
+ if iter.i < len(iter.page.Values()) {
+ return nil
+ }
+ err = iter.page.NextWithContext(ctx)
+ if err != nil {
+ iter.i--
+ return err
+ }
+ iter.i = 0
+ return nil
+}
+
+// Next advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (iter *DomainTopicsListResultIterator) Next() error {
+ return iter.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the enumeration should be started or is not yet complete.
+func (iter DomainTopicsListResultIterator) NotDone() bool {
+ return iter.page.NotDone() && iter.i < len(iter.page.Values())
+}
+
+// Response returns the raw server response from the last page request.
+func (iter DomainTopicsListResultIterator) Response() DomainTopicsListResult {
+ return iter.page.Response()
+}
+
+// Value returns the current value or a zero-initialized value if the
+// iterator has advanced beyond the end of the collection.
+func (iter DomainTopicsListResultIterator) Value() DomainTopic {
+ if !iter.page.NotDone() {
+ return DomainTopic{}
+ }
+ return iter.page.Values()[iter.i]
+}
+
+// Creates a new instance of the DomainTopicsListResultIterator type.
+func NewDomainTopicsListResultIterator(page DomainTopicsListResultPage) DomainTopicsListResultIterator {
+ return DomainTopicsListResultIterator{page: page}
+}
+
+// IsEmpty returns true if the ListResult contains no values.
+func (dtlr DomainTopicsListResult) IsEmpty() bool {
+ return dtlr.Value == nil || len(*dtlr.Value) == 0
+}
+
+// domainTopicsListResultPreparer prepares a request to retrieve the next set of results.
+// It returns nil if no more results exist.
+func (dtlr DomainTopicsListResult) domainTopicsListResultPreparer(ctx context.Context) (*http.Request, error) {
+ if dtlr.NextLink == nil || len(to.String(dtlr.NextLink)) < 1 {
+ return nil, nil
+ }
+ return autorest.Prepare((&http.Request{}).WithContext(ctx),
+ autorest.AsJSON(),
+ autorest.AsGet(),
+ autorest.WithBaseURL(to.String(dtlr.NextLink)))
+}
+
+// DomainTopicsListResultPage contains a page of DomainTopic values.
+type DomainTopicsListResultPage struct {
+ fn func(context.Context, DomainTopicsListResult) (DomainTopicsListResult, error)
+ dtlr DomainTopicsListResult
+}
+
+// NextWithContext advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+func (page *DomainTopicsListResultPage) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/DomainTopicsListResultPage.NextWithContext")
+ defer func() {
+ sc := -1
+ if page.Response().Response.Response != nil {
+ sc = page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ next, err := page.fn(ctx, page.dtlr)
+ if err != nil {
+ return err
+ }
+ page.dtlr = next
+ return nil
+}
+
+// Next advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (page *DomainTopicsListResultPage) Next() error {
+ return page.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the page enumeration should be started or is not yet complete.
+func (page DomainTopicsListResultPage) NotDone() bool {
+ return !page.dtlr.IsEmpty()
+}
+
+// Response returns the raw server response from the last page request.
+func (page DomainTopicsListResultPage) Response() DomainTopicsListResult {
+ return page.dtlr
+}
+
+// Values returns the slice of values for the current page or nil if there are no values.
+func (page DomainTopicsListResultPage) Values() []DomainTopic {
+ if page.dtlr.IsEmpty() {
+ return nil
+ }
+ return *page.dtlr.Value
+}
+
+// Creates a new instance of the DomainTopicsListResultPage type.
+func NewDomainTopicsListResultPage(getNextPage func(context.Context, DomainTopicsListResult) (DomainTopicsListResult, error)) DomainTopicsListResultPage {
+ return DomainTopicsListResultPage{fn: getNextPage}
+}
+
+// DomainUpdateParameterProperties information of domain update parameter properties.
+type DomainUpdateParameterProperties struct {
+ // PublicNetworkAccess - This determines if traffic is allowed over public network. By default it is enabled.
+ // You can further restrict to specific IPs by configuring . Possible values include: 'Enabled', 'Disabled'
+ PublicNetworkAccess PublicNetworkAccess `json:"publicNetworkAccess,omitempty"`
+ // InboundIPRules - This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled.
+ InboundIPRules *[]InboundIPRule `json:"inboundIpRules,omitempty"`
+}
+
+// DomainUpdateParameters properties of the Domain update.
+type DomainUpdateParameters struct {
+ // Tags - Tags of the domains resource.
+ Tags map[string]*string `json:"tags"`
+ // DomainUpdateParameterProperties - Properties of the resource.
+ *DomainUpdateParameterProperties `json:"properties,omitempty"`
+ // Identity - Identity information for the resource.
+ Identity *IdentityInfo `json:"identity,omitempty"`
+ // Sku - The Sku pricing tier for the domain.
+ Sku *ResourceSku `json:"sku,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for DomainUpdateParameters.
+func (dup DomainUpdateParameters) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if dup.Tags != nil {
+ objectMap["tags"] = dup.Tags
+ }
+ if dup.DomainUpdateParameterProperties != nil {
+ objectMap["properties"] = dup.DomainUpdateParameterProperties
+ }
+ if dup.Identity != nil {
+ objectMap["identity"] = dup.Identity
+ }
+ if dup.Sku != nil {
+ objectMap["sku"] = dup.Sku
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for DomainUpdateParameters struct.
+func (dup *DomainUpdateParameters) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "tags":
+ if v != nil {
+ var tags map[string]*string
+ err = json.Unmarshal(*v, &tags)
+ if err != nil {
+ return err
+ }
+ dup.Tags = tags
+ }
+ case "properties":
+ if v != nil {
+ var domainUpdateParameterProperties DomainUpdateParameterProperties
+ err = json.Unmarshal(*v, &domainUpdateParameterProperties)
+ if err != nil {
+ return err
+ }
+ dup.DomainUpdateParameterProperties = &domainUpdateParameterProperties
+ }
+ case "identity":
+ if v != nil {
+ var identity IdentityInfo
+ err = json.Unmarshal(*v, &identity)
+ if err != nil {
+ return err
+ }
+ dup.Identity = &identity
+ }
+ case "sku":
+ if v != nil {
+ var sku ResourceSku
+ err = json.Unmarshal(*v, &sku)
+ if err != nil {
+ return err
+ }
+ dup.Sku = &sku
+ }
+ }
+ }
+
+ return nil
+}
+
+// EventChannel event Channel.
+type EventChannel struct {
+ autorest.Response `json:"-"`
+ // EventChannelProperties - Properties of the EventChannel.
+ *EventChannelProperties `json:"properties,omitempty"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for EventChannel.
+func (ec EventChannel) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if ec.EventChannelProperties != nil {
+ objectMap["properties"] = ec.EventChannelProperties
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for EventChannel struct.
+func (ec *EventChannel) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var eventChannelProperties EventChannelProperties
+ err = json.Unmarshal(*v, &eventChannelProperties)
+ if err != nil {
+ return err
+ }
+ ec.EventChannelProperties = &eventChannelProperties
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ ec.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ ec.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ ec.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// EventChannelDestination properties of the destination of an event channel.
+type EventChannelDestination struct {
+ // AzureSubscriptionID - Azure subscription ID of the customer creating the event channel. The partner topic
+ // associated with the event channel will be created under this Azure subscription.
+ AzureSubscriptionID *string `json:"azureSubscriptionId,omitempty"`
+ // ResourceGroup - Azure Resource Group of the customer creating the event channel. The partner topic
+ // associated with the event channel will be created under this resource group.
+ ResourceGroup *string `json:"resourceGroup,omitempty"`
+ // PartnerTopicName - Name of the partner topic associated with the event channel.
+ PartnerTopicName *string `json:"partnerTopicName,omitempty"`
+}
+
+// EventChannelFilter filter for the Event Channel.
+type EventChannelFilter struct {
+ // SubjectBeginsWith - An optional string to filter events for an event channel based on a resource path prefix.
+ // The format of this depends on the publisher of the events. Wildcard characters are not supported in this path.
+ SubjectBeginsWith *string `json:"subjectBeginsWith,omitempty"`
+ // SubjectEndsWith - An optional string to filter events for an event channel based on a resource path suffix.
+ // Wildcard characters are not supported in this path.
+ SubjectEndsWith *string `json:"subjectEndsWith,omitempty"`
+ // IncludedEventTypes - A list of applicable event types that need to be part of the event channel. If it is desired to subscribe to all default event types, set the IncludedEventTypes to null.
+ IncludedEventTypes *[]string `json:"includedEventTypes,omitempty"`
+ // IsSubjectCaseSensitive - Specifies if the SubjectBeginsWith and SubjectEndsWith properties of the filter
+ // should be compared in a case sensitive manner.
+ IsSubjectCaseSensitive *bool `json:"isSubjectCaseSensitive,omitempty"`
+ // AdvancedFilters - An array of advanced filters that are used for filtering event channels.
+ AdvancedFilters *[]BasicAdvancedFilter `json:"advancedFilters,omitempty"`
+}
+
+// UnmarshalJSON is the custom unmarshaler for EventChannelFilter struct.
+func (ecf *EventChannelFilter) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "subjectBeginsWith":
+ if v != nil {
+ var subjectBeginsWith string
+ err = json.Unmarshal(*v, &subjectBeginsWith)
+ if err != nil {
+ return err
+ }
+ ecf.SubjectBeginsWith = &subjectBeginsWith
+ }
+ case "subjectEndsWith":
+ if v != nil {
+ var subjectEndsWith string
+ err = json.Unmarshal(*v, &subjectEndsWith)
+ if err != nil {
+ return err
+ }
+ ecf.SubjectEndsWith = &subjectEndsWith
+ }
+ case "includedEventTypes":
+ if v != nil {
+ var includedEventTypes []string
+ err = json.Unmarshal(*v, &includedEventTypes)
+ if err != nil {
+ return err
+ }
+ ecf.IncludedEventTypes = &includedEventTypes
+ }
+ case "isSubjectCaseSensitive":
+ if v != nil {
+ var isSubjectCaseSensitive bool
+ err = json.Unmarshal(*v, &isSubjectCaseSensitive)
+ if err != nil {
+ return err
+ }
+ ecf.IsSubjectCaseSensitive = &isSubjectCaseSensitive
+ }
+ case "advancedFilters":
+ if v != nil {
+ advancedFilters, err := unmarshalBasicAdvancedFilterArray(*v)
+ if err != nil {
+ return err
+ }
+ ecf.AdvancedFilters = &advancedFilters
+ }
+ }
+ }
+
+ return nil
+}
+
+// EventChannelProperties properties of the Event Channel.
+type EventChannelProperties struct {
+ // Source - Source of the event channel. This represents a unique resource in the partner's resource model.
+ Source *EventChannelSource `json:"source,omitempty"`
+ // Destination - Represents the destination of an event channel.
+ Destination *EventChannelDestination `json:"destination,omitempty"`
+ // ProvisioningState - READ-ONLY; Provisioning state of the event channel. Possible values include: 'EventChannelProvisioningStateCreating', 'EventChannelProvisioningStateUpdating', 'EventChannelProvisioningStateDeleting', 'EventChannelProvisioningStateSucceeded', 'EventChannelProvisioningStateCanceled', 'EventChannelProvisioningStateFailed'
+ ProvisioningState EventChannelProvisioningState `json:"provisioningState,omitempty"`
+ // Filter - Information about the filter for the event channel.
+ Filter *EventChannelFilter `json:"filter,omitempty"`
+}
+
+// EventChannelsDeleteFuture an abstraction for monitoring and retrieving the results of a long-running
+// operation.
+type EventChannelsDeleteFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *EventChannelsDeleteFuture) Result(client EventChannelsClient) (ar autorest.Response, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventChannelsDeleteFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.EventChannelsDeleteFuture")
+ return
+ }
+ ar.Response = future.Response()
+ return
+}
+
+// EventChannelsListResult result of the List Event Channels operation
+type EventChannelsListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of Event Channels
+ Value *[]EventChannel `json:"value,omitempty"`
+ // NextLink - A link for the next page of event channels
+ NextLink *string `json:"nextLink,omitempty"`
+}
+
+// EventChannelsListResultIterator provides access to a complete listing of EventChannel values.
+type EventChannelsListResultIterator struct {
+ i int
+ page EventChannelsListResultPage
+}
+
+// NextWithContext advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+func (iter *EventChannelsListResultIterator) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventChannelsListResultIterator.NextWithContext")
+ defer func() {
+ sc := -1
+ if iter.Response().Response.Response != nil {
+ sc = iter.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ iter.i++
+ if iter.i < len(iter.page.Values()) {
+ return nil
+ }
+ err = iter.page.NextWithContext(ctx)
+ if err != nil {
+ iter.i--
+ return err
+ }
+ iter.i = 0
+ return nil
+}
+
+// Next advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (iter *EventChannelsListResultIterator) Next() error {
+ return iter.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the enumeration should be started or is not yet complete.
+func (iter EventChannelsListResultIterator) NotDone() bool {
+ return iter.page.NotDone() && iter.i < len(iter.page.Values())
+}
+
+// Response returns the raw server response from the last page request.
+func (iter EventChannelsListResultIterator) Response() EventChannelsListResult {
+ return iter.page.Response()
+}
+
+// Value returns the current value or a zero-initialized value if the
+// iterator has advanced beyond the end of the collection.
+func (iter EventChannelsListResultIterator) Value() EventChannel {
+ if !iter.page.NotDone() {
+ return EventChannel{}
+ }
+ return iter.page.Values()[iter.i]
+}
+
+// Creates a new instance of the EventChannelsListResultIterator type.
+func NewEventChannelsListResultIterator(page EventChannelsListResultPage) EventChannelsListResultIterator {
+ return EventChannelsListResultIterator{page: page}
+}
+
+// IsEmpty returns true if the ListResult contains no values.
+func (eclr EventChannelsListResult) IsEmpty() bool {
+ return eclr.Value == nil || len(*eclr.Value) == 0
+}
+
+// eventChannelsListResultPreparer prepares a request to retrieve the next set of results.
+// It returns nil if no more results exist.
+func (eclr EventChannelsListResult) eventChannelsListResultPreparer(ctx context.Context) (*http.Request, error) {
+ if eclr.NextLink == nil || len(to.String(eclr.NextLink)) < 1 {
+ return nil, nil
+ }
+ return autorest.Prepare((&http.Request{}).WithContext(ctx),
+ autorest.AsJSON(),
+ autorest.AsGet(),
+ autorest.WithBaseURL(to.String(eclr.NextLink)))
+}
+
+// EventChannelsListResultPage contains a page of EventChannel values.
+type EventChannelsListResultPage struct {
+ fn func(context.Context, EventChannelsListResult) (EventChannelsListResult, error)
+ eclr EventChannelsListResult
+}
+
+// NextWithContext advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+func (page *EventChannelsListResultPage) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventChannelsListResultPage.NextWithContext")
+ defer func() {
+ sc := -1
+ if page.Response().Response.Response != nil {
+ sc = page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ next, err := page.fn(ctx, page.eclr)
+ if err != nil {
+ return err
+ }
+ page.eclr = next
+ return nil
+}
+
+// Next advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (page *EventChannelsListResultPage) Next() error {
+ return page.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the page enumeration should be started or is not yet complete.
+func (page EventChannelsListResultPage) NotDone() bool {
+ return !page.eclr.IsEmpty()
+}
+
+// Response returns the raw server response from the last page request.
+func (page EventChannelsListResultPage) Response() EventChannelsListResult {
+ return page.eclr
+}
+
+// Values returns the slice of values for the current page or nil if there are no values.
+func (page EventChannelsListResultPage) Values() []EventChannel {
+ if page.eclr.IsEmpty() {
+ return nil
+ }
+ return *page.eclr.Value
+}
+
+// Creates a new instance of the EventChannelsListResultPage type.
+func NewEventChannelsListResultPage(getNextPage func(context.Context, EventChannelsListResult) (EventChannelsListResult, error)) EventChannelsListResultPage {
+ return EventChannelsListResultPage{fn: getNextPage}
+}
+
+// EventChannelSource properties of the source of an event channel.
+type EventChannelSource struct {
+ // Source - The identifier of the resource that's the source of the events.
+ // This represents a unique resource in the partner's resource model.
+ Source *string `json:"source,omitempty"`
+}
+
+// EventHubEventSubscriptionDestination information about the event hub destination for an event
+// subscription.
+type EventHubEventSubscriptionDestination struct {
+ // EventHubEventSubscriptionDestinationProperties - Event Hub Properties of the event subscription destination.
+ *EventHubEventSubscriptionDestinationProperties `json:"properties,omitempty"`
+ // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection', 'EndpointTypeServiceBusQueue', 'EndpointTypeServiceBusTopic', 'EndpointTypeAzureFunction'
+ EndpointType EndpointType `json:"endpointType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for EventHubEventSubscriptionDestination.
+func (ehesd EventHubEventSubscriptionDestination) MarshalJSON() ([]byte, error) {
+ ehesd.EndpointType = EndpointTypeEventHub
+ objectMap := make(map[string]interface{})
+ if ehesd.EventHubEventSubscriptionDestinationProperties != nil {
+ objectMap["properties"] = ehesd.EventHubEventSubscriptionDestinationProperties
+ }
+ if ehesd.EndpointType != "" {
+ objectMap["endpointType"] = ehesd.EndpointType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
+func (ehesd EventHubEventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
+func (ehesd EventHubEventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
+ return &ehesd, true
+}
+
+// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
+func (ehesd EventHubEventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
+func (ehesd EventHubEventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
+func (ehesd EventHubEventSubscriptionDestination) AsServiceBusQueueEventSubscriptionDestination() (*ServiceBusQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusTopicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
+func (ehesd EventHubEventSubscriptionDestination) AsServiceBusTopicEventSubscriptionDestination() (*ServiceBusTopicEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsAzureFunctionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
+func (ehesd EventHubEventSubscriptionDestination) AsAzureFunctionEventSubscriptionDestination() (*AzureFunctionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
+func (ehesd EventHubEventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventHubEventSubscriptionDestination.
+func (ehesd EventHubEventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
+ return &ehesd, true
+}
+
+// UnmarshalJSON is the custom unmarshaler for EventHubEventSubscriptionDestination struct.
+func (ehesd *EventHubEventSubscriptionDestination) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var eventHubEventSubscriptionDestinationProperties EventHubEventSubscriptionDestinationProperties
+ err = json.Unmarshal(*v, &eventHubEventSubscriptionDestinationProperties)
+ if err != nil {
+ return err
+ }
+ ehesd.EventHubEventSubscriptionDestinationProperties = &eventHubEventSubscriptionDestinationProperties
+ }
+ case "endpointType":
+ if v != nil {
+ var endpointType EndpointType
+ err = json.Unmarshal(*v, &endpointType)
+ if err != nil {
+ return err
+ }
+ ehesd.EndpointType = endpointType
+ }
+ }
+ }
+
+ return nil
+}
+
+// EventHubEventSubscriptionDestinationProperties the properties for a event hub destination.
+type EventHubEventSubscriptionDestinationProperties struct {
+ // ResourceID - The Azure Resource Id that represents the endpoint of an Event Hub destination of an event subscription.
+ ResourceID *string `json:"resourceId,omitempty"`
+}
+
+// EventSubscription event Subscription
+type EventSubscription struct {
+ autorest.Response `json:"-"`
+ // EventSubscriptionProperties - Properties of the event subscription.
+ *EventSubscriptionProperties `json:"properties,omitempty"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for EventSubscription.
+func (es EventSubscription) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if es.EventSubscriptionProperties != nil {
+ objectMap["properties"] = es.EventSubscriptionProperties
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for EventSubscription struct.
+func (es *EventSubscription) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var eventSubscriptionProperties EventSubscriptionProperties
+ err = json.Unmarshal(*v, &eventSubscriptionProperties)
+ if err != nil {
+ return err
+ }
+ es.EventSubscriptionProperties = &eventSubscriptionProperties
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ es.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ es.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ es.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// BasicEventSubscriptionDestination information about the destination for an event subscription.
+type BasicEventSubscriptionDestination interface {
+ AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool)
+ AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool)
+ AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool)
+ AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool)
+ AsServiceBusQueueEventSubscriptionDestination() (*ServiceBusQueueEventSubscriptionDestination, bool)
+ AsServiceBusTopicEventSubscriptionDestination() (*ServiceBusTopicEventSubscriptionDestination, bool)
+ AsAzureFunctionEventSubscriptionDestination() (*AzureFunctionEventSubscriptionDestination, bool)
+ AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool)
+}
+
+// EventSubscriptionDestination information about the destination for an event subscription.
+type EventSubscriptionDestination struct {
+ // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection', 'EndpointTypeServiceBusQueue', 'EndpointTypeServiceBusTopic', 'EndpointTypeAzureFunction'
+ EndpointType EndpointType `json:"endpointType,omitempty"`
+}
+
+func unmarshalBasicEventSubscriptionDestination(body []byte) (BasicEventSubscriptionDestination, error) {
+ var m map[string]interface{}
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return nil, err
+ }
+
+ switch m["endpointType"] {
+ case string(EndpointTypeWebHook):
+ var whesd WebHookEventSubscriptionDestination
+ err := json.Unmarshal(body, &whesd)
+ return whesd, err
+ case string(EndpointTypeEventHub):
+ var ehesd EventHubEventSubscriptionDestination
+ err := json.Unmarshal(body, &ehesd)
+ return ehesd, err
+ case string(EndpointTypeStorageQueue):
+ var sqesd StorageQueueEventSubscriptionDestination
+ err := json.Unmarshal(body, &sqesd)
+ return sqesd, err
+ case string(EndpointTypeHybridConnection):
+ var hcesd HybridConnectionEventSubscriptionDestination
+ err := json.Unmarshal(body, &hcesd)
+ return hcesd, err
+ case string(EndpointTypeServiceBusQueue):
+ var sbqesd ServiceBusQueueEventSubscriptionDestination
+ err := json.Unmarshal(body, &sbqesd)
+ return sbqesd, err
+ case string(EndpointTypeServiceBusTopic):
+ var sbtesd ServiceBusTopicEventSubscriptionDestination
+ err := json.Unmarshal(body, &sbtesd)
+ return sbtesd, err
+ case string(EndpointTypeAzureFunction):
+ var afesd AzureFunctionEventSubscriptionDestination
+ err := json.Unmarshal(body, &afesd)
+ return afesd, err
+ default:
+ var esd EventSubscriptionDestination
+ err := json.Unmarshal(body, &esd)
+ return esd, err
+ }
+}
+func unmarshalBasicEventSubscriptionDestinationArray(body []byte) ([]BasicEventSubscriptionDestination, error) {
+ var rawMessages []*json.RawMessage
+ err := json.Unmarshal(body, &rawMessages)
+ if err != nil {
+ return nil, err
+ }
+
+ esdArray := make([]BasicEventSubscriptionDestination, len(rawMessages))
+
+ for index, rawMessage := range rawMessages {
+ esd, err := unmarshalBasicEventSubscriptionDestination(*rawMessage)
+ if err != nil {
+ return nil, err
+ }
+ esdArray[index] = esd
+ }
+ return esdArray, nil
+}
+
+// MarshalJSON is the custom marshaler for EventSubscriptionDestination.
+func (esd EventSubscriptionDestination) MarshalJSON() ([]byte, error) {
+ esd.EndpointType = EndpointTypeEventSubscriptionDestination
+ objectMap := make(map[string]interface{})
+ if esd.EndpointType != "" {
+ objectMap["endpointType"] = esd.EndpointType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
+func (esd EventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
+func (esd EventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
+func (esd EventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
+func (esd EventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
+func (esd EventSubscriptionDestination) AsServiceBusQueueEventSubscriptionDestination() (*ServiceBusQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusTopicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
+func (esd EventSubscriptionDestination) AsServiceBusTopicEventSubscriptionDestination() (*ServiceBusTopicEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsAzureFunctionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
+func (esd EventSubscriptionDestination) AsAzureFunctionEventSubscriptionDestination() (*AzureFunctionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
+func (esd EventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
+ return &esd, true
+}
+
+// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for EventSubscriptionDestination.
+func (esd EventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
+ return &esd, true
+}
+
+// EventSubscriptionFilter filter for the Event Subscription.
+type EventSubscriptionFilter struct {
+ // SubjectBeginsWith - An optional string to filter events for an event subscription based on a resource path prefix.
+ // The format of this depends on the publisher of the events.
+ // Wildcard characters are not supported in this path.
+ SubjectBeginsWith *string `json:"subjectBeginsWith,omitempty"`
+ // SubjectEndsWith - An optional string to filter events for an event subscription based on a resource path suffix.
+ // Wildcard characters are not supported in this path.
+ SubjectEndsWith *string `json:"subjectEndsWith,omitempty"`
+ // IncludedEventTypes - A list of applicable event types that need to be part of the event subscription. If it is desired to subscribe to all default event types, set the IncludedEventTypes to null.
+ IncludedEventTypes *[]string `json:"includedEventTypes,omitempty"`
+ // IsSubjectCaseSensitive - Specifies if the SubjectBeginsWith and SubjectEndsWith properties of the filter
+ // should be compared in a case sensitive manner.
+ IsSubjectCaseSensitive *bool `json:"isSubjectCaseSensitive,omitempty"`
+ // AdvancedFilters - An array of advanced filters that are used for filtering event subscriptions.
+ AdvancedFilters *[]BasicAdvancedFilter `json:"advancedFilters,omitempty"`
+}
+
+// UnmarshalJSON is the custom unmarshaler for EventSubscriptionFilter struct.
+func (esf *EventSubscriptionFilter) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "subjectBeginsWith":
+ if v != nil {
+ var subjectBeginsWith string
+ err = json.Unmarshal(*v, &subjectBeginsWith)
+ if err != nil {
+ return err
+ }
+ esf.SubjectBeginsWith = &subjectBeginsWith
+ }
+ case "subjectEndsWith":
+ if v != nil {
+ var subjectEndsWith string
+ err = json.Unmarshal(*v, &subjectEndsWith)
+ if err != nil {
+ return err
+ }
+ esf.SubjectEndsWith = &subjectEndsWith
+ }
+ case "includedEventTypes":
+ if v != nil {
+ var includedEventTypes []string
+ err = json.Unmarshal(*v, &includedEventTypes)
+ if err != nil {
+ return err
+ }
+ esf.IncludedEventTypes = &includedEventTypes
+ }
+ case "isSubjectCaseSensitive":
+ if v != nil {
+ var isSubjectCaseSensitive bool
+ err = json.Unmarshal(*v, &isSubjectCaseSensitive)
+ if err != nil {
+ return err
+ }
+ esf.IsSubjectCaseSensitive = &isSubjectCaseSensitive
+ }
+ case "advancedFilters":
+ if v != nil {
+ advancedFilters, err := unmarshalBasicAdvancedFilterArray(*v)
+ if err != nil {
+ return err
+ }
+ esf.AdvancedFilters = &advancedFilters
+ }
+ }
+ }
+
+ return nil
+}
+
+// EventSubscriptionFullURL full endpoint url of an event subscription
+type EventSubscriptionFullURL struct {
+ autorest.Response `json:"-"`
+ // EndpointURL - The URL that represents the endpoint of the destination of an event subscription.
+ EndpointURL *string `json:"endpointUrl,omitempty"`
+}
+
+// EventSubscriptionIdentity the identity information with the event subscription.
+type EventSubscriptionIdentity struct {
+ // Type - The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity. Possible values include: 'SystemAssigned', 'UserAssigned'
+ Type EventSubscriptionIdentityType `json:"type,omitempty"`
+ // UserAssignedIdentity - The user identity associated with the resource.
+ UserAssignedIdentity *string `json:"userAssignedIdentity,omitempty"`
+}
+
+// EventSubscriptionProperties properties of the Event Subscription.
+type EventSubscriptionProperties struct {
+ // Topic - READ-ONLY; Name of the topic of the event subscription.
+ Topic *string `json:"topic,omitempty"`
+ // ProvisioningState - READ-ONLY; Provisioning state of the event subscription. Possible values include: 'EventSubscriptionProvisioningStateCreating', 'EventSubscriptionProvisioningStateUpdating', 'EventSubscriptionProvisioningStateDeleting', 'EventSubscriptionProvisioningStateSucceeded', 'EventSubscriptionProvisioningStateCanceled', 'EventSubscriptionProvisioningStateFailed', 'EventSubscriptionProvisioningStateAwaitingManualAction'
+ ProvisioningState EventSubscriptionProvisioningState `json:"provisioningState,omitempty"`
+ // Destination - Information about the destination where events have to be delivered for the event subscription.
+ // Uses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering.
+ Destination BasicEventSubscriptionDestination `json:"destination,omitempty"`
+ // DeliveryWithResourceIdentity - Information about the destination where events have to be delivered for the event subscription.
+ // Uses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering.
+ DeliveryWithResourceIdentity *DeliveryWithResourceIdentity `json:"deliveryWithResourceIdentity,omitempty"`
+ // Filter - Information about the filter for the event subscription.
+ Filter *EventSubscriptionFilter `json:"filter,omitempty"`
+ // Labels - List of user defined labels.
+ Labels *[]string `json:"labels,omitempty"`
+ // ExpirationTimeUtc - Expiration time of the event subscription.
+ ExpirationTimeUtc *date.Time `json:"expirationTimeUtc,omitempty"`
+ // EventDeliverySchema - The event delivery schema for the event subscription. Possible values include: 'EventGridSchema', 'CustomInputSchema', 'CloudEventSchemaV10'
+ EventDeliverySchema EventDeliverySchema `json:"eventDeliverySchema,omitempty"`
+ // RetryPolicy - The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events.
+ RetryPolicy *RetryPolicy `json:"retryPolicy,omitempty"`
+ // DeadLetterDestination - The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination.
+ // Uses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering.
+ DeadLetterDestination BasicDeadLetterDestination `json:"deadLetterDestination,omitempty"`
+ // DeadLetterWithResourceIdentity - The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination.
+ // Uses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering.
+ DeadLetterWithResourceIdentity *DeadLetterWithResourceIdentity `json:"deadLetterWithResourceIdentity,omitempty"`
+}
+
+// UnmarshalJSON is the custom unmarshaler for EventSubscriptionProperties struct.
+func (esp *EventSubscriptionProperties) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "topic":
+ if v != nil {
+ var topic string
+ err = json.Unmarshal(*v, &topic)
+ if err != nil {
+ return err
+ }
+ esp.Topic = &topic
+ }
+ case "provisioningState":
+ if v != nil {
+ var provisioningState EventSubscriptionProvisioningState
+ err = json.Unmarshal(*v, &provisioningState)
+ if err != nil {
+ return err
+ }
+ esp.ProvisioningState = provisioningState
+ }
+ case "destination":
+ if v != nil {
+ destination, err := unmarshalBasicEventSubscriptionDestination(*v)
+ if err != nil {
+ return err
+ }
+ esp.Destination = destination
+ }
+ case "deliveryWithResourceIdentity":
+ if v != nil {
+ var deliveryWithResourceIdentity DeliveryWithResourceIdentity
+ err = json.Unmarshal(*v, &deliveryWithResourceIdentity)
+ if err != nil {
+ return err
+ }
+ esp.DeliveryWithResourceIdentity = &deliveryWithResourceIdentity
+ }
+ case "filter":
+ if v != nil {
+ var filter EventSubscriptionFilter
+ err = json.Unmarshal(*v, &filter)
+ if err != nil {
+ return err
+ }
+ esp.Filter = &filter
+ }
+ case "labels":
+ if v != nil {
+ var labels []string
+ err = json.Unmarshal(*v, &labels)
+ if err != nil {
+ return err
+ }
+ esp.Labels = &labels
+ }
+ case "expirationTimeUtc":
+ if v != nil {
+ var expirationTimeUtc date.Time
+ err = json.Unmarshal(*v, &expirationTimeUtc)
+ if err != nil {
+ return err
+ }
+ esp.ExpirationTimeUtc = &expirationTimeUtc
+ }
+ case "eventDeliverySchema":
+ if v != nil {
+ var eventDeliverySchema EventDeliverySchema
+ err = json.Unmarshal(*v, &eventDeliverySchema)
+ if err != nil {
+ return err
+ }
+ esp.EventDeliverySchema = eventDeliverySchema
+ }
+ case "retryPolicy":
+ if v != nil {
+ var retryPolicy RetryPolicy
+ err = json.Unmarshal(*v, &retryPolicy)
+ if err != nil {
+ return err
+ }
+ esp.RetryPolicy = &retryPolicy
+ }
+ case "deadLetterDestination":
+ if v != nil {
+ deadLetterDestination, err := unmarshalBasicDeadLetterDestination(*v)
+ if err != nil {
+ return err
+ }
+ esp.DeadLetterDestination = deadLetterDestination
+ }
+ case "deadLetterWithResourceIdentity":
+ if v != nil {
+ var deadLetterWithResourceIdentity DeadLetterWithResourceIdentity
+ err = json.Unmarshal(*v, &deadLetterWithResourceIdentity)
+ if err != nil {
+ return err
+ }
+ esp.DeadLetterWithResourceIdentity = &deadLetterWithResourceIdentity
+ }
+ }
+ }
+
+ return nil
+}
+
+// EventSubscriptionsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a
+// long-running operation.
+type EventSubscriptionsCreateOrUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *EventSubscriptionsCreateOrUpdateFuture) Result(client EventSubscriptionsClient) (es EventSubscription, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.EventSubscriptionsCreateOrUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if es.Response.Response, err = future.GetResult(sender); err == nil && es.Response.Response.StatusCode != http.StatusNoContent {
+ es, err = client.CreateOrUpdateResponder(es.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsCreateOrUpdateFuture", "Result", es.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// EventSubscriptionsDeleteFuture an abstraction for monitoring and retrieving the results of a
+// long-running operation.
+type EventSubscriptionsDeleteFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *EventSubscriptionsDeleteFuture) Result(client EventSubscriptionsClient) (ar autorest.Response, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsDeleteFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.EventSubscriptionsDeleteFuture")
+ return
+ }
+ ar.Response = future.Response()
+ return
+}
+
+// EventSubscriptionsListResult result of the List EventSubscriptions operation
+type EventSubscriptionsListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of EventSubscriptions
+ Value *[]EventSubscription `json:"value,omitempty"`
+ // NextLink - A link for the next page of event subscriptions
+ NextLink *string `json:"nextLink,omitempty"`
+}
+
+// EventSubscriptionsListResultIterator provides access to a complete listing of EventSubscription values.
+type EventSubscriptionsListResultIterator struct {
+ i int
+ page EventSubscriptionsListResultPage
+}
+
+// NextWithContext advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+func (iter *EventSubscriptionsListResultIterator) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsListResultIterator.NextWithContext")
+ defer func() {
+ sc := -1
+ if iter.Response().Response.Response != nil {
+ sc = iter.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ iter.i++
+ if iter.i < len(iter.page.Values()) {
+ return nil
+ }
+ err = iter.page.NextWithContext(ctx)
+ if err != nil {
+ iter.i--
+ return err
+ }
+ iter.i = 0
+ return nil
+}
+
+// Next advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (iter *EventSubscriptionsListResultIterator) Next() error {
+ return iter.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the enumeration should be started or is not yet complete.
+func (iter EventSubscriptionsListResultIterator) NotDone() bool {
+ return iter.page.NotDone() && iter.i < len(iter.page.Values())
+}
+
+// Response returns the raw server response from the last page request.
+func (iter EventSubscriptionsListResultIterator) Response() EventSubscriptionsListResult {
+ return iter.page.Response()
+}
+
+// Value returns the current value or a zero-initialized value if the
+// iterator has advanced beyond the end of the collection.
+func (iter EventSubscriptionsListResultIterator) Value() EventSubscription {
+ if !iter.page.NotDone() {
+ return EventSubscription{}
+ }
+ return iter.page.Values()[iter.i]
+}
+
+// Creates a new instance of the EventSubscriptionsListResultIterator type.
+func NewEventSubscriptionsListResultIterator(page EventSubscriptionsListResultPage) EventSubscriptionsListResultIterator {
+ return EventSubscriptionsListResultIterator{page: page}
+}
+
+// IsEmpty returns true if the ListResult contains no values.
+func (eslr EventSubscriptionsListResult) IsEmpty() bool {
+ return eslr.Value == nil || len(*eslr.Value) == 0
+}
+
+// eventSubscriptionsListResultPreparer prepares a request to retrieve the next set of results.
+// It returns nil if no more results exist.
+func (eslr EventSubscriptionsListResult) eventSubscriptionsListResultPreparer(ctx context.Context) (*http.Request, error) {
+ if eslr.NextLink == nil || len(to.String(eslr.NextLink)) < 1 {
+ return nil, nil
+ }
+ return autorest.Prepare((&http.Request{}).WithContext(ctx),
+ autorest.AsJSON(),
+ autorest.AsGet(),
+ autorest.WithBaseURL(to.String(eslr.NextLink)))
+}
+
+// EventSubscriptionsListResultPage contains a page of EventSubscription values.
+type EventSubscriptionsListResultPage struct {
+ fn func(context.Context, EventSubscriptionsListResult) (EventSubscriptionsListResult, error)
+ eslr EventSubscriptionsListResult
+}
+
+// NextWithContext advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+func (page *EventSubscriptionsListResultPage) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/EventSubscriptionsListResultPage.NextWithContext")
+ defer func() {
+ sc := -1
+ if page.Response().Response.Response != nil {
+ sc = page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ next, err := page.fn(ctx, page.eslr)
+ if err != nil {
+ return err
+ }
+ page.eslr = next
+ return nil
+}
+
+// Next advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (page *EventSubscriptionsListResultPage) Next() error {
+ return page.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the page enumeration should be started or is not yet complete.
+func (page EventSubscriptionsListResultPage) NotDone() bool {
+ return !page.eslr.IsEmpty()
+}
+
+// Response returns the raw server response from the last page request.
+func (page EventSubscriptionsListResultPage) Response() EventSubscriptionsListResult {
+ return page.eslr
+}
+
+// Values returns the slice of values for the current page or nil if there are no values.
+func (page EventSubscriptionsListResultPage) Values() []EventSubscription {
+ if page.eslr.IsEmpty() {
+ return nil
+ }
+ return *page.eslr.Value
+}
+
+// Creates a new instance of the EventSubscriptionsListResultPage type.
+func NewEventSubscriptionsListResultPage(getNextPage func(context.Context, EventSubscriptionsListResult) (EventSubscriptionsListResult, error)) EventSubscriptionsListResultPage {
+ return EventSubscriptionsListResultPage{fn: getNextPage}
+}
+
+// EventSubscriptionsUpdateFuture an abstraction for monitoring and retrieving the results of a
+// long-running operation.
+type EventSubscriptionsUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *EventSubscriptionsUpdateFuture) Result(client EventSubscriptionsClient) (es EventSubscription, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.EventSubscriptionsUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if es.Response.Response, err = future.GetResult(sender); err == nil && es.Response.Response.StatusCode != http.StatusNoContent {
+ es, err = client.UpdateResponder(es.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.EventSubscriptionsUpdateFuture", "Result", es.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// EventSubscriptionUpdateParameters properties of the Event Subscription update.
+type EventSubscriptionUpdateParameters struct {
+ // Destination - Information about the destination where events have to be delivered for the event subscription.
+ // Uses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering.
+ Destination BasicEventSubscriptionDestination `json:"destination,omitempty"`
+ // DeliveryWithResourceIdentity - Information about the destination where events have to be delivered for the event subscription.
+ // Uses the managed identity setup on the parent resource (topic / domain) to acquire the authentication tokens being used during delivery / dead-lettering.
+ DeliveryWithResourceIdentity *DeliveryWithResourceIdentity `json:"deliveryWithResourceIdentity,omitempty"`
+ // Filter - Information about the filter for the event subscription.
+ Filter *EventSubscriptionFilter `json:"filter,omitempty"`
+ // Labels - List of user defined labels.
+ Labels *[]string `json:"labels,omitempty"`
+ // ExpirationTimeUtc - Information about the expiration time for the event subscription.
+ ExpirationTimeUtc *date.Time `json:"expirationTimeUtc,omitempty"`
+ // EventDeliverySchema - The event delivery schema for the event subscription. Possible values include: 'EventGridSchema', 'CustomInputSchema', 'CloudEventSchemaV10'
+ EventDeliverySchema EventDeliverySchema `json:"eventDeliverySchema,omitempty"`
+ // RetryPolicy - The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events.
+ RetryPolicy *RetryPolicy `json:"retryPolicy,omitempty"`
+ // DeadLetterDestination - The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination.
+ // Uses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering.
+ DeadLetterDestination BasicDeadLetterDestination `json:"deadLetterDestination,omitempty"`
+ // DeadLetterWithResourceIdentity - The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination.
+ // Uses the managed identity setup on the parent resource (topic / domain) to acquire the authentication tokens being used during delivery / dead-lettering.
+ DeadLetterWithResourceIdentity *DeadLetterWithResourceIdentity `json:"deadLetterWithResourceIdentity,omitempty"`
+}
+
+// UnmarshalJSON is the custom unmarshaler for EventSubscriptionUpdateParameters struct.
+func (esup *EventSubscriptionUpdateParameters) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "destination":
+ if v != nil {
+ destination, err := unmarshalBasicEventSubscriptionDestination(*v)
+ if err != nil {
+ return err
+ }
+ esup.Destination = destination
+ }
+ case "deliveryWithResourceIdentity":
+ if v != nil {
+ var deliveryWithResourceIdentity DeliveryWithResourceIdentity
+ err = json.Unmarshal(*v, &deliveryWithResourceIdentity)
+ if err != nil {
+ return err
+ }
+ esup.DeliveryWithResourceIdentity = &deliveryWithResourceIdentity
+ }
+ case "filter":
+ if v != nil {
+ var filter EventSubscriptionFilter
+ err = json.Unmarshal(*v, &filter)
+ if err != nil {
+ return err
+ }
+ esup.Filter = &filter
+ }
+ case "labels":
+ if v != nil {
+ var labels []string
+ err = json.Unmarshal(*v, &labels)
+ if err != nil {
+ return err
+ }
+ esup.Labels = &labels
+ }
+ case "expirationTimeUtc":
+ if v != nil {
+ var expirationTimeUtc date.Time
+ err = json.Unmarshal(*v, &expirationTimeUtc)
+ if err != nil {
+ return err
+ }
+ esup.ExpirationTimeUtc = &expirationTimeUtc
+ }
+ case "eventDeliverySchema":
+ if v != nil {
+ var eventDeliverySchema EventDeliverySchema
+ err = json.Unmarshal(*v, &eventDeliverySchema)
+ if err != nil {
+ return err
+ }
+ esup.EventDeliverySchema = eventDeliverySchema
+ }
+ case "retryPolicy":
+ if v != nil {
+ var retryPolicy RetryPolicy
+ err = json.Unmarshal(*v, &retryPolicy)
+ if err != nil {
+ return err
+ }
+ esup.RetryPolicy = &retryPolicy
+ }
+ case "deadLetterDestination":
+ if v != nil {
+ deadLetterDestination, err := unmarshalBasicDeadLetterDestination(*v)
+ if err != nil {
+ return err
+ }
+ esup.DeadLetterDestination = deadLetterDestination
+ }
+ case "deadLetterWithResourceIdentity":
+ if v != nil {
+ var deadLetterWithResourceIdentity DeadLetterWithResourceIdentity
+ err = json.Unmarshal(*v, &deadLetterWithResourceIdentity)
+ if err != nil {
+ return err
+ }
+ esup.DeadLetterWithResourceIdentity = &deadLetterWithResourceIdentity
+ }
+ }
+ }
+
+ return nil
+}
+
+// EventType event Type for a subject under a topic
+type EventType struct {
+ // EventTypeProperties - Properties of the event type.
+ *EventTypeProperties `json:"properties,omitempty"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for EventType.
+func (et EventType) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if et.EventTypeProperties != nil {
+ objectMap["properties"] = et.EventTypeProperties
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for EventType struct.
+func (et *EventType) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var eventTypeProperties EventTypeProperties
+ err = json.Unmarshal(*v, &eventTypeProperties)
+ if err != nil {
+ return err
+ }
+ et.EventTypeProperties = &eventTypeProperties
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ et.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ et.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ et.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// EventTypeProperties properties of the event type
+type EventTypeProperties struct {
+ // DisplayName - Display name of the event type.
+ DisplayName *string `json:"displayName,omitempty"`
+ // Description - Description of the event type.
+ Description *string `json:"description,omitempty"`
+ // SchemaURL - Url of the schema for this event type.
+ SchemaURL *string `json:"schemaUrl,omitempty"`
+ // IsInDefaultSet - IsInDefaultSet flag of the event type.
+ IsInDefaultSet *bool `json:"isInDefaultSet,omitempty"`
+}
+
+// EventTypesListResult result of the List Event Types operation
+type EventTypesListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of event types
+ Value *[]EventType `json:"value,omitempty"`
+}
+
+// ExtensionTopic event grid Extension Topic. This is used for getting Event Grid related metrics for Azure
+// resources.
+type ExtensionTopic struct {
+ autorest.Response `json:"-"`
+ // ExtensionTopicProperties - Properties of the extension topic
+ *ExtensionTopicProperties `json:"properties,omitempty"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for ExtensionTopic.
+func (et ExtensionTopic) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if et.ExtensionTopicProperties != nil {
+ objectMap["properties"] = et.ExtensionTopicProperties
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for ExtensionTopic struct.
+func (et *ExtensionTopic) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var extensionTopicProperties ExtensionTopicProperties
+ err = json.Unmarshal(*v, &extensionTopicProperties)
+ if err != nil {
+ return err
+ }
+ et.ExtensionTopicProperties = &extensionTopicProperties
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ et.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ et.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ et.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// ExtensionTopicProperties properties of the Extension Topic
+type ExtensionTopicProperties struct {
+ // Description - Description of the extension topic.
+ Description *string `json:"description,omitempty"`
+ // SystemTopic - System topic resource id which is mapped to the source.
+ SystemTopic *string `json:"systemTopic,omitempty"`
+}
+
+// HybridConnectionEventSubscriptionDestination information about the HybridConnection destination for an
+// event subscription.
+type HybridConnectionEventSubscriptionDestination struct {
+ // HybridConnectionEventSubscriptionDestinationProperties - Hybrid connection Properties of the event subscription destination.
+ *HybridConnectionEventSubscriptionDestinationProperties `json:"properties,omitempty"`
+ // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection', 'EndpointTypeServiceBusQueue', 'EndpointTypeServiceBusTopic', 'EndpointTypeAzureFunction'
+ EndpointType EndpointType `json:"endpointType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for HybridConnectionEventSubscriptionDestination.
+func (hcesd HybridConnectionEventSubscriptionDestination) MarshalJSON() ([]byte, error) {
+ hcesd.EndpointType = EndpointTypeHybridConnection
+ objectMap := make(map[string]interface{})
+ if hcesd.HybridConnectionEventSubscriptionDestinationProperties != nil {
+ objectMap["properties"] = hcesd.HybridConnectionEventSubscriptionDestinationProperties
+ }
+ if hcesd.EndpointType != "" {
+ objectMap["endpointType"] = hcesd.EndpointType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
+func (hcesd HybridConnectionEventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
+func (hcesd HybridConnectionEventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
+func (hcesd HybridConnectionEventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
+func (hcesd HybridConnectionEventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
+ return &hcesd, true
+}
+
+// AsServiceBusQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
+func (hcesd HybridConnectionEventSubscriptionDestination) AsServiceBusQueueEventSubscriptionDestination() (*ServiceBusQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusTopicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
+func (hcesd HybridConnectionEventSubscriptionDestination) AsServiceBusTopicEventSubscriptionDestination() (*ServiceBusTopicEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsAzureFunctionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
+func (hcesd HybridConnectionEventSubscriptionDestination) AsAzureFunctionEventSubscriptionDestination() (*AzureFunctionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
+func (hcesd HybridConnectionEventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for HybridConnectionEventSubscriptionDestination.
+func (hcesd HybridConnectionEventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
+ return &hcesd, true
+}
+
+// UnmarshalJSON is the custom unmarshaler for HybridConnectionEventSubscriptionDestination struct.
+func (hcesd *HybridConnectionEventSubscriptionDestination) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var hybridConnectionEventSubscriptionDestinationProperties HybridConnectionEventSubscriptionDestinationProperties
+ err = json.Unmarshal(*v, &hybridConnectionEventSubscriptionDestinationProperties)
+ if err != nil {
+ return err
+ }
+ hcesd.HybridConnectionEventSubscriptionDestinationProperties = &hybridConnectionEventSubscriptionDestinationProperties
+ }
+ case "endpointType":
+ if v != nil {
+ var endpointType EndpointType
+ err = json.Unmarshal(*v, &endpointType)
+ if err != nil {
+ return err
+ }
+ hcesd.EndpointType = endpointType
+ }
+ }
+ }
+
+ return nil
+}
+
+// HybridConnectionEventSubscriptionDestinationProperties the properties for a hybrid connection
+// destination.
+type HybridConnectionEventSubscriptionDestinationProperties struct {
+ // ResourceID - The Azure Resource ID of an hybrid connection that is the destination of an event subscription.
+ ResourceID *string `json:"resourceId,omitempty"`
+}
+
+// IdentityInfo the identity information for the resource.
+type IdentityInfo struct {
+ // Type - The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity. Possible values include: 'IdentityTypeNone', 'IdentityTypeSystemAssigned', 'IdentityTypeUserAssigned', 'IdentityTypeSystemAssignedUserAssigned'
+ Type IdentityType `json:"type,omitempty"`
+ // PrincipalID - The principal ID of resource identity.
+ PrincipalID *string `json:"principalId,omitempty"`
+ // TenantID - The tenant ID of resource.
+ TenantID *string `json:"tenantId,omitempty"`
+ // UserAssignedIdentities - The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:
+ // '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
+ // This property is currently not used and reserved for future usage.
+ UserAssignedIdentities map[string]*UserIdentityProperties `json:"userAssignedIdentities"`
+}
+
+// MarshalJSON is the custom marshaler for IdentityInfo.
+func (ii IdentityInfo) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if ii.Type != "" {
+ objectMap["type"] = ii.Type
+ }
+ if ii.PrincipalID != nil {
+ objectMap["principalId"] = ii.PrincipalID
+ }
+ if ii.TenantID != nil {
+ objectMap["tenantId"] = ii.TenantID
+ }
+ if ii.UserAssignedIdentities != nil {
+ objectMap["userAssignedIdentities"] = ii.UserAssignedIdentities
+ }
+ return json.Marshal(objectMap)
+}
+
+// InboundIPRule ...
+type InboundIPRule struct {
+ // IPMask - IP Address in CIDR notation e.g., 10.0.0.0/8.
+ IPMask *string `json:"ipMask,omitempty"`
+ // Action - Action to perform based on the match or no match of the IpMask. Possible values include: 'Allow'
+ Action IPActionType `json:"action,omitempty"`
+}
+
+// BasicInputSchemaMapping by default, Event Grid expects events to be in the Event Grid event schema. Specifying an
+// input schema mapping enables publishing to Event Grid using a custom input schema. Currently, the only supported
+// type of InputSchemaMapping is 'JsonInputSchemaMapping'.
+type BasicInputSchemaMapping interface {
+ AsJSONInputSchemaMapping() (*JSONInputSchemaMapping, bool)
+ AsInputSchemaMapping() (*InputSchemaMapping, bool)
+}
+
+// InputSchemaMapping by default, Event Grid expects events to be in the Event Grid event schema. Specifying an
+// input schema mapping enables publishing to Event Grid using a custom input schema. Currently, the only
+// supported type of InputSchemaMapping is 'JsonInputSchemaMapping'.
+type InputSchemaMapping struct {
+ // InputSchemaMappingType - Possible values include: 'InputSchemaMappingTypeInputSchemaMapping', 'InputSchemaMappingTypeJSON'
+ InputSchemaMappingType InputSchemaMappingType `json:"inputSchemaMappingType,omitempty"`
+}
+
+func unmarshalBasicInputSchemaMapping(body []byte) (BasicInputSchemaMapping, error) {
+ var m map[string]interface{}
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return nil, err
+ }
+
+ switch m["inputSchemaMappingType"] {
+ case string(InputSchemaMappingTypeJSON):
+ var jism JSONInputSchemaMapping
+ err := json.Unmarshal(body, &jism)
+ return jism, err
+ default:
+ var ism InputSchemaMapping
+ err := json.Unmarshal(body, &ism)
+ return ism, err
+ }
+}
+func unmarshalBasicInputSchemaMappingArray(body []byte) ([]BasicInputSchemaMapping, error) {
+ var rawMessages []*json.RawMessage
+ err := json.Unmarshal(body, &rawMessages)
+ if err != nil {
+ return nil, err
+ }
+
+ ismArray := make([]BasicInputSchemaMapping, len(rawMessages))
+
+ for index, rawMessage := range rawMessages {
+ ism, err := unmarshalBasicInputSchemaMapping(*rawMessage)
+ if err != nil {
+ return nil, err
+ }
+ ismArray[index] = ism
+ }
+ return ismArray, nil
+}
+
+// MarshalJSON is the custom marshaler for InputSchemaMapping.
+func (ism InputSchemaMapping) MarshalJSON() ([]byte, error) {
+ ism.InputSchemaMappingType = InputSchemaMappingTypeInputSchemaMapping
+ objectMap := make(map[string]interface{})
+ if ism.InputSchemaMappingType != "" {
+ objectMap["inputSchemaMappingType"] = ism.InputSchemaMappingType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsJSONInputSchemaMapping is the BasicInputSchemaMapping implementation for InputSchemaMapping.
+func (ism InputSchemaMapping) AsJSONInputSchemaMapping() (*JSONInputSchemaMapping, bool) {
+ return nil, false
+}
+
+// AsInputSchemaMapping is the BasicInputSchemaMapping implementation for InputSchemaMapping.
+func (ism InputSchemaMapping) AsInputSchemaMapping() (*InputSchemaMapping, bool) {
+ return &ism, true
+}
+
+// AsBasicInputSchemaMapping is the BasicInputSchemaMapping implementation for InputSchemaMapping.
+func (ism InputSchemaMapping) AsBasicInputSchemaMapping() (BasicInputSchemaMapping, bool) {
+ return &ism, true
+}
+
+// JSONField this is used to express the source of an input schema mapping for a single target field in the
+// Event Grid Event schema. This is currently used in the mappings for the 'id', 'topic' and 'eventtime'
+// properties. This represents a field in the input event schema.
+type JSONField struct {
+ // SourceField - Name of a field in the input event schema that's to be used as the source of a mapping.
+ SourceField *string `json:"sourceField,omitempty"`
+}
+
+// JSONFieldWithDefault this is used to express the source of an input schema mapping for a single target
+// field
+// in the Event Grid Event schema. This is currently used in the mappings for the 'subject',
+// 'eventtype' and 'dataversion' properties. This represents a field in the input event schema
+// along with a default value to be used, and at least one of these two properties should be provided.
+type JSONFieldWithDefault struct {
+ // SourceField - Name of a field in the input event schema that's to be used as the source of a mapping.
+ SourceField *string `json:"sourceField,omitempty"`
+ // DefaultValue - The default value to be used for mapping when a SourceField is not provided or if there's no property with the specified name in the published JSON event payload.
+ DefaultValue *string `json:"defaultValue,omitempty"`
+}
+
+// JSONInputSchemaMapping this enables publishing to Event Grid using a custom input schema. This can be
+// used to map properties from a custom input JSON schema to the Event Grid event schema.
+type JSONInputSchemaMapping struct {
+ // JSONInputSchemaMappingProperties - JSON Properties of the input schema mapping
+ *JSONInputSchemaMappingProperties `json:"properties,omitempty"`
+ // InputSchemaMappingType - Possible values include: 'InputSchemaMappingTypeInputSchemaMapping', 'InputSchemaMappingTypeJSON'
+ InputSchemaMappingType InputSchemaMappingType `json:"inputSchemaMappingType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for JSONInputSchemaMapping.
+func (jism JSONInputSchemaMapping) MarshalJSON() ([]byte, error) {
+ jism.InputSchemaMappingType = InputSchemaMappingTypeJSON
+ objectMap := make(map[string]interface{})
+ if jism.JSONInputSchemaMappingProperties != nil {
+ objectMap["properties"] = jism.JSONInputSchemaMappingProperties
+ }
+ if jism.InputSchemaMappingType != "" {
+ objectMap["inputSchemaMappingType"] = jism.InputSchemaMappingType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsJSONInputSchemaMapping is the BasicInputSchemaMapping implementation for JSONInputSchemaMapping.
+func (jism JSONInputSchemaMapping) AsJSONInputSchemaMapping() (*JSONInputSchemaMapping, bool) {
+ return &jism, true
+}
+
+// AsInputSchemaMapping is the BasicInputSchemaMapping implementation for JSONInputSchemaMapping.
+func (jism JSONInputSchemaMapping) AsInputSchemaMapping() (*InputSchemaMapping, bool) {
+ return nil, false
+}
+
+// AsBasicInputSchemaMapping is the BasicInputSchemaMapping implementation for JSONInputSchemaMapping.
+func (jism JSONInputSchemaMapping) AsBasicInputSchemaMapping() (BasicInputSchemaMapping, bool) {
+ return &jism, true
+}
+
+// UnmarshalJSON is the custom unmarshaler for JSONInputSchemaMapping struct.
+func (jism *JSONInputSchemaMapping) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var JSONInputSchemaMappingProperties JSONInputSchemaMappingProperties
+ err = json.Unmarshal(*v, &JSONInputSchemaMappingProperties)
+ if err != nil {
+ return err
+ }
+ jism.JSONInputSchemaMappingProperties = &JSONInputSchemaMappingProperties
+ }
+ case "inputSchemaMappingType":
+ if v != nil {
+ var inputSchemaMappingType InputSchemaMappingType
+ err = json.Unmarshal(*v, &inputSchemaMappingType)
+ if err != nil {
+ return err
+ }
+ jism.InputSchemaMappingType = inputSchemaMappingType
+ }
+ }
+ }
+
+ return nil
+}
+
+// JSONInputSchemaMappingProperties this can be used to map properties of a source schema (or default
+// values, for certain supported properties) to properties of the EventGridEvent schema.
+type JSONInputSchemaMappingProperties struct {
+ // ID - The mapping information for the Id property of the Event Grid Event.
+ ID *JSONField `json:"id,omitempty"`
+ // Topic - The mapping information for the Topic property of the Event Grid Event.
+ Topic *JSONField `json:"topic,omitempty"`
+ // EventTime - The mapping information for the EventTime property of the Event Grid Event.
+ EventTime *JSONField `json:"eventTime,omitempty"`
+ // EventType - The mapping information for the EventType property of the Event Grid Event.
+ EventType *JSONFieldWithDefault `json:"eventType,omitempty"`
+ // Subject - The mapping information for the Subject property of the Event Grid Event.
+ Subject *JSONFieldWithDefault `json:"subject,omitempty"`
+ // DataVersion - The mapping information for the DataVersion property of the Event Grid Event.
+ DataVersion *JSONFieldWithDefault `json:"dataVersion,omitempty"`
+}
+
+// NumberGreaterThanAdvancedFilter numberGreaterThan Advanced Filter.
+type NumberGreaterThanAdvancedFilter struct {
+ // Value - The filter value.
+ Value *float64 `json:"value,omitempty"`
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) MarshalJSON() ([]byte, error) {
+ ngtaf.OperatorType = OperatorTypeNumberGreaterThan
+ objectMap := make(map[string]interface{})
+ if ngtaf.Value != nil {
+ objectMap["value"] = ngtaf.Value
+ }
+ if ngtaf.Key != nil {
+ objectMap["key"] = ngtaf.Key
+ }
+ if ngtaf.OperatorType != "" {
+ objectMap["operatorType"] = ngtaf.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return &ngtaf, true
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanAdvancedFilter.
+func (ngtaf NumberGreaterThanAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &ngtaf, true
+}
+
+// NumberGreaterThanOrEqualsAdvancedFilter numberGreaterThanOrEquals Advanced Filter.
+type NumberGreaterThanOrEqualsAdvancedFilter struct {
+ // Value - The filter value.
+ Value *float64 `json:"value,omitempty"`
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) MarshalJSON() ([]byte, error) {
+ ngtoeaf.OperatorType = OperatorTypeNumberGreaterThanOrEquals
+ objectMap := make(map[string]interface{})
+ if ngtoeaf.Value != nil {
+ objectMap["value"] = ngtoeaf.Value
+ }
+ if ngtoeaf.Key != nil {
+ objectMap["key"] = ngtoeaf.Key
+ }
+ if ngtoeaf.OperatorType != "" {
+ objectMap["operatorType"] = ngtoeaf.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return &ngtoeaf, true
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for NumberGreaterThanOrEqualsAdvancedFilter.
+func (ngtoeaf NumberGreaterThanOrEqualsAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &ngtoeaf, true
+}
+
+// NumberInAdvancedFilter numberIn Advanced Filter.
+type NumberInAdvancedFilter struct {
+ // Values - The set of filter values.
+ Values *[]float64 `json:"values,omitempty"`
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) MarshalJSON() ([]byte, error) {
+ niaf.OperatorType = OperatorTypeNumberIn
+ objectMap := make(map[string]interface{})
+ if niaf.Values != nil {
+ objectMap["values"] = niaf.Values
+ }
+ if niaf.Key != nil {
+ objectMap["key"] = niaf.Key
+ }
+ if niaf.OperatorType != "" {
+ objectMap["operatorType"] = niaf.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return &niaf, true
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for NumberInAdvancedFilter.
+func (niaf NumberInAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &niaf, true
+}
+
+// NumberLessThanAdvancedFilter numberLessThan Advanced Filter.
+type NumberLessThanAdvancedFilter struct {
+ // Value - The filter value.
+ Value *float64 `json:"value,omitempty"`
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) MarshalJSON() ([]byte, error) {
+ nltaf.OperatorType = OperatorTypeNumberLessThan
+ objectMap := make(map[string]interface{})
+ if nltaf.Value != nil {
+ objectMap["value"] = nltaf.Value
+ }
+ if nltaf.Key != nil {
+ objectMap["key"] = nltaf.Key
+ }
+ if nltaf.OperatorType != "" {
+ objectMap["operatorType"] = nltaf.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return &nltaf, true
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanAdvancedFilter.
+func (nltaf NumberLessThanAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &nltaf, true
+}
+
+// NumberLessThanOrEqualsAdvancedFilter numberLessThanOrEquals Advanced Filter.
+type NumberLessThanOrEqualsAdvancedFilter struct {
+ // Value - The filter value.
+ Value *float64 `json:"value,omitempty"`
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) MarshalJSON() ([]byte, error) {
+ nltoeaf.OperatorType = OperatorTypeNumberLessThanOrEquals
+ objectMap := make(map[string]interface{})
+ if nltoeaf.Value != nil {
+ objectMap["value"] = nltoeaf.Value
+ }
+ if nltoeaf.Key != nil {
+ objectMap["key"] = nltoeaf.Key
+ }
+ if nltoeaf.OperatorType != "" {
+ objectMap["operatorType"] = nltoeaf.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return &nltoeaf, true
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for NumberLessThanOrEqualsAdvancedFilter.
+func (nltoeaf NumberLessThanOrEqualsAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &nltoeaf, true
+}
+
+// NumberNotInAdvancedFilter numberNotIn Advanced Filter.
+type NumberNotInAdvancedFilter struct {
+ // Values - The set of filter values.
+ Values *[]float64 `json:"values,omitempty"`
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) MarshalJSON() ([]byte, error) {
+ nniaf.OperatorType = OperatorTypeNumberNotIn
+ objectMap := make(map[string]interface{})
+ if nniaf.Values != nil {
+ objectMap["values"] = nniaf.Values
+ }
+ if nniaf.Key != nil {
+ objectMap["key"] = nniaf.Key
+ }
+ if nniaf.OperatorType != "" {
+ objectMap["operatorType"] = nniaf.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return &nniaf, true
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for NumberNotInAdvancedFilter.
+func (nniaf NumberNotInAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &nniaf, true
+}
+
+// Operation represents an operation returned by the GetOperations request
+type Operation struct {
+ // Name - Name of the operation
+ Name *string `json:"name,omitempty"`
+ // Display - Display name of the operation
+ Display *OperationInfo `json:"display,omitempty"`
+ // Origin - Origin of the operation
+ Origin *string `json:"origin,omitempty"`
+ // Properties - Properties of the operation
+ Properties interface{} `json:"properties,omitempty"`
+}
+
+// OperationInfo information about an operation
+type OperationInfo struct {
+ // Provider - Name of the provider
+ Provider *string `json:"provider,omitempty"`
+ // Resource - Name of the resource type
+ Resource *string `json:"resource,omitempty"`
+ // Operation - Name of the operation
+ Operation *string `json:"operation,omitempty"`
+ // Description - Description of the operation
+ Description *string `json:"description,omitempty"`
+}
+
+// OperationsListResult result of the List Operations operation
+type OperationsListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of operations
+ Value *[]Operation `json:"value,omitempty"`
+}
+
+// PartnerNamespace eventGrid Partner Namespace.
+type PartnerNamespace struct {
+ autorest.Response `json:"-"`
+ // PartnerNamespaceProperties - Properties of the partner namespace.
+ *PartnerNamespaceProperties `json:"properties,omitempty"`
+ // Location - Location of the resource.
+ Location *string `json:"location,omitempty"`
+ // Tags - Tags of the resource.
+ Tags map[string]*string `json:"tags"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for PartnerNamespace.
+func (pn PartnerNamespace) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if pn.PartnerNamespaceProperties != nil {
+ objectMap["properties"] = pn.PartnerNamespaceProperties
+ }
+ if pn.Location != nil {
+ objectMap["location"] = pn.Location
+ }
+ if pn.Tags != nil {
+ objectMap["tags"] = pn.Tags
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for PartnerNamespace struct.
+func (pn *PartnerNamespace) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var partnerNamespaceProperties PartnerNamespaceProperties
+ err = json.Unmarshal(*v, &partnerNamespaceProperties)
+ if err != nil {
+ return err
+ }
+ pn.PartnerNamespaceProperties = &partnerNamespaceProperties
+ }
+ case "location":
+ if v != nil {
+ var location string
+ err = json.Unmarshal(*v, &location)
+ if err != nil {
+ return err
+ }
+ pn.Location = &location
+ }
+ case "tags":
+ if v != nil {
+ var tags map[string]*string
+ err = json.Unmarshal(*v, &tags)
+ if err != nil {
+ return err
+ }
+ pn.Tags = tags
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ pn.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ pn.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ pn.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// PartnerNamespaceProperties properties of the partner namespace.
+type PartnerNamespaceProperties struct {
+ // ProvisioningState - READ-ONLY; Provisioning state of the partner namespace. Possible values include: 'PartnerNamespaceProvisioningStateCreating', 'PartnerNamespaceProvisioningStateUpdating', 'PartnerNamespaceProvisioningStateDeleting', 'PartnerNamespaceProvisioningStateSucceeded', 'PartnerNamespaceProvisioningStateCanceled', 'PartnerNamespaceProvisioningStateFailed'
+ ProvisioningState PartnerNamespaceProvisioningState `json:"provisioningState,omitempty"`
+ // PartnerRegistrationFullyQualifiedID - The fully qualified ARM Id of the partner registration that should be associated with this partner namespace. This takes the following format:
+ // /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations/{partnerRegistrationName}.
+ PartnerRegistrationFullyQualifiedID *string `json:"partnerRegistrationFullyQualifiedId,omitempty"`
+ // Endpoint - READ-ONLY; Endpoint for the partner namespace.
+ Endpoint *string `json:"endpoint,omitempty"`
+}
+
+// PartnerNamespaceRegenerateKeyRequest partnerNamespace regenerate shared access key request.
+type PartnerNamespaceRegenerateKeyRequest struct {
+ // KeyName - Key name to regenerate (key1 or key2).
+ KeyName *string `json:"keyName,omitempty"`
+}
+
+// PartnerNamespacesCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a
+// long-running operation.
+type PartnerNamespacesCreateOrUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *PartnerNamespacesCreateOrUpdateFuture) Result(client PartnerNamespacesClient) (pn PartnerNamespace, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesCreateOrUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.PartnerNamespacesCreateOrUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if pn.Response.Response, err = future.GetResult(sender); err == nil && pn.Response.Response.StatusCode != http.StatusNoContent {
+ pn, err = client.CreateOrUpdateResponder(pn.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesCreateOrUpdateFuture", "Result", pn.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// PartnerNamespacesDeleteFuture an abstraction for monitoring and retrieving the results of a long-running
+// operation.
+type PartnerNamespacesDeleteFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *PartnerNamespacesDeleteFuture) Result(client PartnerNamespacesClient) (ar autorest.Response, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesDeleteFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.PartnerNamespacesDeleteFuture")
+ return
+ }
+ ar.Response = future.Response()
+ return
+}
+
+// PartnerNamespaceSharedAccessKeys shared access keys of the partner namespace.
+type PartnerNamespaceSharedAccessKeys struct {
+ autorest.Response `json:"-"`
+ // Key1 - Shared access key1 for the partner namespace.
+ Key1 *string `json:"key1,omitempty"`
+ // Key2 - Shared access key2 for the partner namespace.
+ Key2 *string `json:"key2,omitempty"`
+}
+
+// PartnerNamespacesListResult result of the List Partner Namespaces operation
+type PartnerNamespacesListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of partner namespaces.
+ Value *[]PartnerNamespace `json:"value,omitempty"`
+ // NextLink - A link for the next page of partner namespaces.
+ NextLink *string `json:"nextLink,omitempty"`
+}
+
+// PartnerNamespacesListResultIterator provides access to a complete listing of PartnerNamespace values.
+type PartnerNamespacesListResultIterator struct {
+ i int
+ page PartnerNamespacesListResultPage
+}
+
+// NextWithContext advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+func (iter *PartnerNamespacesListResultIterator) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerNamespacesListResultIterator.NextWithContext")
+ defer func() {
+ sc := -1
+ if iter.Response().Response.Response != nil {
+ sc = iter.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ iter.i++
+ if iter.i < len(iter.page.Values()) {
+ return nil
+ }
+ err = iter.page.NextWithContext(ctx)
+ if err != nil {
+ iter.i--
+ return err
+ }
+ iter.i = 0
+ return nil
+}
+
+// Next advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (iter *PartnerNamespacesListResultIterator) Next() error {
+ return iter.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the enumeration should be started or is not yet complete.
+func (iter PartnerNamespacesListResultIterator) NotDone() bool {
+ return iter.page.NotDone() && iter.i < len(iter.page.Values())
+}
+
+// Response returns the raw server response from the last page request.
+func (iter PartnerNamespacesListResultIterator) Response() PartnerNamespacesListResult {
+ return iter.page.Response()
+}
+
+// Value returns the current value or a zero-initialized value if the
+// iterator has advanced beyond the end of the collection.
+func (iter PartnerNamespacesListResultIterator) Value() PartnerNamespace {
+ if !iter.page.NotDone() {
+ return PartnerNamespace{}
+ }
+ return iter.page.Values()[iter.i]
+}
+
+// Creates a new instance of the PartnerNamespacesListResultIterator type.
+func NewPartnerNamespacesListResultIterator(page PartnerNamespacesListResultPage) PartnerNamespacesListResultIterator {
+ return PartnerNamespacesListResultIterator{page: page}
+}
+
+// IsEmpty returns true if the ListResult contains no values.
+func (pnlr PartnerNamespacesListResult) IsEmpty() bool {
+ return pnlr.Value == nil || len(*pnlr.Value) == 0
+}
+
+// partnerNamespacesListResultPreparer prepares a request to retrieve the next set of results.
+// It returns nil if no more results exist.
+func (pnlr PartnerNamespacesListResult) partnerNamespacesListResultPreparer(ctx context.Context) (*http.Request, error) {
+ if pnlr.NextLink == nil || len(to.String(pnlr.NextLink)) < 1 {
+ return nil, nil
+ }
+ return autorest.Prepare((&http.Request{}).WithContext(ctx),
+ autorest.AsJSON(),
+ autorest.AsGet(),
+ autorest.WithBaseURL(to.String(pnlr.NextLink)))
+}
+
+// PartnerNamespacesListResultPage contains a page of PartnerNamespace values.
+type PartnerNamespacesListResultPage struct {
+ fn func(context.Context, PartnerNamespacesListResult) (PartnerNamespacesListResult, error)
+ pnlr PartnerNamespacesListResult
+}
+
+// NextWithContext advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+func (page *PartnerNamespacesListResultPage) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerNamespacesListResultPage.NextWithContext")
+ defer func() {
+ sc := -1
+ if page.Response().Response.Response != nil {
+ sc = page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ next, err := page.fn(ctx, page.pnlr)
+ if err != nil {
+ return err
+ }
+ page.pnlr = next
+ return nil
+}
+
+// Next advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (page *PartnerNamespacesListResultPage) Next() error {
+ return page.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the page enumeration should be started or is not yet complete.
+func (page PartnerNamespacesListResultPage) NotDone() bool {
+ return !page.pnlr.IsEmpty()
+}
+
+// Response returns the raw server response from the last page request.
+func (page PartnerNamespacesListResultPage) Response() PartnerNamespacesListResult {
+ return page.pnlr
+}
+
+// Values returns the slice of values for the current page or nil if there are no values.
+func (page PartnerNamespacesListResultPage) Values() []PartnerNamespace {
+ if page.pnlr.IsEmpty() {
+ return nil
+ }
+ return *page.pnlr.Value
+}
+
+// Creates a new instance of the PartnerNamespacesListResultPage type.
+func NewPartnerNamespacesListResultPage(getNextPage func(context.Context, PartnerNamespacesListResult) (PartnerNamespacesListResult, error)) PartnerNamespacesListResultPage {
+ return PartnerNamespacesListResultPage{fn: getNextPage}
+}
+
+// PartnerNamespacesUpdateFuture an abstraction for monitoring and retrieving the results of a long-running
+// operation.
+type PartnerNamespacesUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *PartnerNamespacesUpdateFuture) Result(client PartnerNamespacesClient) (pn PartnerNamespace, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.PartnerNamespacesUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if pn.Response.Response, err = future.GetResult(sender); err == nil && pn.Response.Response.StatusCode != http.StatusNoContent {
+ pn, err = client.UpdateResponder(pn.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesUpdateFuture", "Result", pn.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// PartnerNamespaceUpdateParameters properties of the PartnerNamespace update.
+type PartnerNamespaceUpdateParameters struct {
+ // Tags - Tags of the partner namespace.
+ Tags map[string]*string `json:"tags"`
+}
+
+// MarshalJSON is the custom marshaler for PartnerNamespaceUpdateParameters.
+func (pnup PartnerNamespaceUpdateParameters) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if pnup.Tags != nil {
+ objectMap["tags"] = pnup.Tags
+ }
+ return json.Marshal(objectMap)
+}
+
+// PartnerRegistration information about a partner registration.
+type PartnerRegistration struct {
+ autorest.Response `json:"-"`
+ // PartnerRegistrationProperties - Properties of the partner registration.
+ *PartnerRegistrationProperties `json:"properties,omitempty"`
+ // Location - Location of the resource.
+ Location *string `json:"location,omitempty"`
+ // Tags - Tags of the resource.
+ Tags map[string]*string `json:"tags"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for PartnerRegistration.
+func (pr PartnerRegistration) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if pr.PartnerRegistrationProperties != nil {
+ objectMap["properties"] = pr.PartnerRegistrationProperties
+ }
+ if pr.Location != nil {
+ objectMap["location"] = pr.Location
+ }
+ if pr.Tags != nil {
+ objectMap["tags"] = pr.Tags
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for PartnerRegistration struct.
+func (pr *PartnerRegistration) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var partnerRegistrationProperties PartnerRegistrationProperties
+ err = json.Unmarshal(*v, &partnerRegistrationProperties)
+ if err != nil {
+ return err
+ }
+ pr.PartnerRegistrationProperties = &partnerRegistrationProperties
+ }
+ case "location":
+ if v != nil {
+ var location string
+ err = json.Unmarshal(*v, &location)
+ if err != nil {
+ return err
+ }
+ pr.Location = &location
+ }
+ case "tags":
+ if v != nil {
+ var tags map[string]*string
+ err = json.Unmarshal(*v, &tags)
+ if err != nil {
+ return err
+ }
+ pr.Tags = tags
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ pr.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ pr.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ pr.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// PartnerRegistrationEventTypesListResult result of the List Partner Registration Event Types operation.
+type PartnerRegistrationEventTypesListResult struct {
+ // Value - A collection of partner registration event types.
+ Value *[]EventType `json:"value,omitempty"`
+ // NextLink - A link for the next page of partner registration event types.
+ NextLink *string `json:"nextLink,omitempty"`
+}
+
+// PartnerRegistrationProperties properties of the partner registration.
+type PartnerRegistrationProperties struct {
+ // ProvisioningState - READ-ONLY; Provisioning state of the partner registration. Possible values include: 'PartnerRegistrationProvisioningStateCreating', 'PartnerRegistrationProvisioningStateUpdating', 'PartnerRegistrationProvisioningStateDeleting', 'PartnerRegistrationProvisioningStateSucceeded', 'PartnerRegistrationProvisioningStateCanceled', 'PartnerRegistrationProvisioningStateFailed'
+ ProvisioningState PartnerRegistrationProvisioningState `json:"provisioningState,omitempty"`
+ // PartnerName - Official name of the partner name. For example: "Contoso".
+ PartnerName *string `json:"partnerName,omitempty"`
+ // PartnerResourceTypeName - Name of the partner resource type.
+ PartnerResourceTypeName *string `json:"partnerResourceTypeName,omitempty"`
+ // PartnerResourceTypeDisplayName - Display name of the partner resource type.
+ PartnerResourceTypeDisplayName *string `json:"partnerResourceTypeDisplayName,omitempty"`
+ // PartnerResourceTypeDescription - Description of the partner resource type.
+ PartnerResourceTypeDescription *string `json:"partnerResourceTypeDescription,omitempty"`
+ // SetupURI - URI of the partner website that can be used by Azure customers to setup Event Grid
+ // integration on an event source.
+ SetupURI *string `json:"setupUri,omitempty"`
+ // LogoURI - URI of the logo.
+ LogoURI *string `json:"logoUri,omitempty"`
+ // VisibilityState - Visibility state of the partner registration. Possible values include: 'Hidden', 'PublicPreview', 'GenerallyAvailable'
+ VisibilityState PartnerRegistrationVisibilityState `json:"visibilityState,omitempty"`
+ // AuthorizedAzureSubscriptionIds - List of Azure subscription Ids that are authorized to create a partner namespace
+ // associated with this partner registration. This is an optional property. Creating
+ // partner namespaces is always permitted under the same Azure subscription as the one used
+ // for creating the partner registration.
+ AuthorizedAzureSubscriptionIds *[]string `json:"authorizedAzureSubscriptionIds,omitempty"`
+}
+
+// PartnerRegistrationsListResult result of the List Partner Registrations operation.
+type PartnerRegistrationsListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of partner registrations.
+ Value *[]PartnerRegistration `json:"value,omitempty"`
+ // NextLink - A link for the next page of partner registrations.
+ NextLink *string `json:"nextLink,omitempty"`
+}
+
+// PartnerRegistrationsListResultIterator provides access to a complete listing of PartnerRegistration
+// values.
+type PartnerRegistrationsListResultIterator struct {
+ i int
+ page PartnerRegistrationsListResultPage
+}
+
+// NextWithContext advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+func (iter *PartnerRegistrationsListResultIterator) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerRegistrationsListResultIterator.NextWithContext")
+ defer func() {
+ sc := -1
+ if iter.Response().Response.Response != nil {
+ sc = iter.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ iter.i++
+ if iter.i < len(iter.page.Values()) {
+ return nil
+ }
+ err = iter.page.NextWithContext(ctx)
+ if err != nil {
+ iter.i--
+ return err
+ }
+ iter.i = 0
+ return nil
+}
+
+// Next advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (iter *PartnerRegistrationsListResultIterator) Next() error {
+ return iter.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the enumeration should be started or is not yet complete.
+func (iter PartnerRegistrationsListResultIterator) NotDone() bool {
+ return iter.page.NotDone() && iter.i < len(iter.page.Values())
+}
+
+// Response returns the raw server response from the last page request.
+func (iter PartnerRegistrationsListResultIterator) Response() PartnerRegistrationsListResult {
+ return iter.page.Response()
+}
+
+// Value returns the current value or a zero-initialized value if the
+// iterator has advanced beyond the end of the collection.
+func (iter PartnerRegistrationsListResultIterator) Value() PartnerRegistration {
+ if !iter.page.NotDone() {
+ return PartnerRegistration{}
+ }
+ return iter.page.Values()[iter.i]
+}
+
+// Creates a new instance of the PartnerRegistrationsListResultIterator type.
+func NewPartnerRegistrationsListResultIterator(page PartnerRegistrationsListResultPage) PartnerRegistrationsListResultIterator {
+ return PartnerRegistrationsListResultIterator{page: page}
+}
+
+// IsEmpty returns true if the ListResult contains no values.
+func (prlr PartnerRegistrationsListResult) IsEmpty() bool {
+ return prlr.Value == nil || len(*prlr.Value) == 0
+}
+
+// partnerRegistrationsListResultPreparer prepares a request to retrieve the next set of results.
+// It returns nil if no more results exist.
+func (prlr PartnerRegistrationsListResult) partnerRegistrationsListResultPreparer(ctx context.Context) (*http.Request, error) {
+ if prlr.NextLink == nil || len(to.String(prlr.NextLink)) < 1 {
+ return nil, nil
+ }
+ return autorest.Prepare((&http.Request{}).WithContext(ctx),
+ autorest.AsJSON(),
+ autorest.AsGet(),
+ autorest.WithBaseURL(to.String(prlr.NextLink)))
+}
+
+// PartnerRegistrationsListResultPage contains a page of PartnerRegistration values.
+type PartnerRegistrationsListResultPage struct {
+ fn func(context.Context, PartnerRegistrationsListResult) (PartnerRegistrationsListResult, error)
+ prlr PartnerRegistrationsListResult
+}
+
+// NextWithContext advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+func (page *PartnerRegistrationsListResultPage) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerRegistrationsListResultPage.NextWithContext")
+ defer func() {
+ sc := -1
+ if page.Response().Response.Response != nil {
+ sc = page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ next, err := page.fn(ctx, page.prlr)
+ if err != nil {
+ return err
+ }
+ page.prlr = next
+ return nil
+}
+
+// Next advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (page *PartnerRegistrationsListResultPage) Next() error {
+ return page.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the page enumeration should be started or is not yet complete.
+func (page PartnerRegistrationsListResultPage) NotDone() bool {
+ return !page.prlr.IsEmpty()
+}
+
+// Response returns the raw server response from the last page request.
+func (page PartnerRegistrationsListResultPage) Response() PartnerRegistrationsListResult {
+ return page.prlr
+}
+
+// Values returns the slice of values for the current page or nil if there are no values.
+func (page PartnerRegistrationsListResultPage) Values() []PartnerRegistration {
+ if page.prlr.IsEmpty() {
+ return nil
+ }
+ return *page.prlr.Value
+}
+
+// Creates a new instance of the PartnerRegistrationsListResultPage type.
+func NewPartnerRegistrationsListResultPage(getNextPage func(context.Context, PartnerRegistrationsListResult) (PartnerRegistrationsListResult, error)) PartnerRegistrationsListResultPage {
+ return PartnerRegistrationsListResultPage{fn: getNextPage}
+}
+
+// PartnerRegistrationUpdateParameters properties of the Partner Registration update.
+type PartnerRegistrationUpdateParameters struct {
+ // Tags - Tags of the partner registration resource.
+ Tags map[string]*string `json:"tags"`
+ // PartnerTopicTypeName - Name of the partner topic type.
+ PartnerTopicTypeName *string `json:"partnerTopicTypeName,omitempty"`
+ // PartnerTopicTypeDisplayName - Display name of the partner topic type.
+ PartnerTopicTypeDisplayName *string `json:"partnerTopicTypeDisplayName,omitempty"`
+ // PartnerTopicTypeDescription - Description of the partner topic type.
+ PartnerTopicTypeDescription *string `json:"partnerTopicTypeDescription,omitempty"`
+ // SetupURI - URI of the partner website that can be used by Azure customers to setup Event Grid
+ // integration on an event source.
+ SetupURI *string `json:"setupUri,omitempty"`
+ // LogoURI - URI of the partner logo.
+ LogoURI *string `json:"logoUri,omitempty"`
+ // AuthorizedAzureSubscriptionIds - List of IDs of Azure AD applications that are authorized to create a partner namespace
+ // associated with this partner registration. This is an optional property. Creating
+ // partner namespaces is always permitted under the same Azure subscription as the one used
+ // for creating the partner registration.
+ AuthorizedAzureSubscriptionIds *[]string `json:"authorizedAzureSubscriptionIds,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for PartnerRegistrationUpdateParameters.
+func (prup PartnerRegistrationUpdateParameters) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if prup.Tags != nil {
+ objectMap["tags"] = prup.Tags
+ }
+ if prup.PartnerTopicTypeName != nil {
+ objectMap["partnerTopicTypeName"] = prup.PartnerTopicTypeName
+ }
+ if prup.PartnerTopicTypeDisplayName != nil {
+ objectMap["partnerTopicTypeDisplayName"] = prup.PartnerTopicTypeDisplayName
+ }
+ if prup.PartnerTopicTypeDescription != nil {
+ objectMap["partnerTopicTypeDescription"] = prup.PartnerTopicTypeDescription
+ }
+ if prup.SetupURI != nil {
+ objectMap["setupUri"] = prup.SetupURI
+ }
+ if prup.LogoURI != nil {
+ objectMap["logoUri"] = prup.LogoURI
+ }
+ if prup.AuthorizedAzureSubscriptionIds != nil {
+ objectMap["authorizedAzureSubscriptionIds"] = prup.AuthorizedAzureSubscriptionIds
+ }
+ return json.Marshal(objectMap)
+}
+
+// PartnerTopic eventGrid Partner Topic.
+type PartnerTopic struct {
+ autorest.Response `json:"-"`
+ // PartnerTopicProperties - Properties of the partner topic.
+ *PartnerTopicProperties `json:"properties,omitempty"`
+ // Location - Location of the resource.
+ Location *string `json:"location,omitempty"`
+ // Tags - Tags of the resource.
+ Tags map[string]*string `json:"tags"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for PartnerTopic.
+func (pt PartnerTopic) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if pt.PartnerTopicProperties != nil {
+ objectMap["properties"] = pt.PartnerTopicProperties
+ }
+ if pt.Location != nil {
+ objectMap["location"] = pt.Location
+ }
+ if pt.Tags != nil {
+ objectMap["tags"] = pt.Tags
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for PartnerTopic struct.
+func (pt *PartnerTopic) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var partnerTopicProperties PartnerTopicProperties
+ err = json.Unmarshal(*v, &partnerTopicProperties)
+ if err != nil {
+ return err
+ }
+ pt.PartnerTopicProperties = &partnerTopicProperties
+ }
+ case "location":
+ if v != nil {
+ var location string
+ err = json.Unmarshal(*v, &location)
+ if err != nil {
+ return err
+ }
+ pt.Location = &location
+ }
+ case "tags":
+ if v != nil {
+ var tags map[string]*string
+ err = json.Unmarshal(*v, &tags)
+ if err != nil {
+ return err
+ }
+ pt.Tags = tags
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ pt.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ pt.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ pt.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// PartnerTopicEventSubscriptionsCreateOrUpdateFuture an abstraction for monitoring and retrieving the
+// results of a long-running operation.
+type PartnerTopicEventSubscriptionsCreateOrUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *PartnerTopicEventSubscriptionsCreateOrUpdateFuture) Result(client PartnerTopicEventSubscriptionsClient) (es EventSubscription, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.PartnerTopicEventSubscriptionsCreateOrUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if es.Response.Response, err = future.GetResult(sender); err == nil && es.Response.Response.StatusCode != http.StatusNoContent {
+ es, err = client.CreateOrUpdateResponder(es.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsCreateOrUpdateFuture", "Result", es.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// PartnerTopicEventSubscriptionsDeleteFuture an abstraction for monitoring and retrieving the results of a
+// long-running operation.
+type PartnerTopicEventSubscriptionsDeleteFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *PartnerTopicEventSubscriptionsDeleteFuture) Result(client PartnerTopicEventSubscriptionsClient) (ar autorest.Response, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsDeleteFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.PartnerTopicEventSubscriptionsDeleteFuture")
+ return
+ }
+ ar.Response = future.Response()
+ return
+}
+
+// PartnerTopicEventSubscriptionsUpdateFuture an abstraction for monitoring and retrieving the results of a
+// long-running operation.
+type PartnerTopicEventSubscriptionsUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *PartnerTopicEventSubscriptionsUpdateFuture) Result(client PartnerTopicEventSubscriptionsClient) (es EventSubscription, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.PartnerTopicEventSubscriptionsUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if es.Response.Response, err = future.GetResult(sender); err == nil && es.Response.Response.StatusCode != http.StatusNoContent {
+ es, err = client.UpdateResponder(es.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsUpdateFuture", "Result", es.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// PartnerTopicProperties properties of the Partner Topic.
+type PartnerTopicProperties struct {
+ // Source - Source associated with this partner topic. This represents a unique partner resource.
+ Source *string `json:"source,omitempty"`
+ // ProvisioningState - READ-ONLY; Provisioning state of the partner topic. Possible values include: 'PartnerTopicProvisioningStateCreating', 'PartnerTopicProvisioningStateUpdating', 'PartnerTopicProvisioningStateDeleting', 'PartnerTopicProvisioningStateSucceeded', 'PartnerTopicProvisioningStateCanceled', 'PartnerTopicProvisioningStateFailed'
+ ProvisioningState PartnerTopicProvisioningState `json:"provisioningState,omitempty"`
+ // ActivationState - Activation state of the partner topic. Possible values include: 'NeverActivated', 'Activated', 'Deactivated'
+ ActivationState PartnerTopicActivationState `json:"activationState,omitempty"`
+}
+
+// PartnerTopicsDeleteFuture an abstraction for monitoring and retrieving the results of a long-running
+// operation.
+type PartnerTopicsDeleteFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *PartnerTopicsDeleteFuture) Result(client PartnerTopicsClient) (ar autorest.Response, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsDeleteFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.PartnerTopicsDeleteFuture")
+ return
+ }
+ ar.Response = future.Response()
+ return
+}
+
+// PartnerTopicsListResult result of the List Partner Topics operation.
+type PartnerTopicsListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of partner topics.
+ Value *[]PartnerTopic `json:"value,omitempty"`
+ // NextLink - A link for the next page of partner topics.
+ NextLink *string `json:"nextLink,omitempty"`
+}
+
+// PartnerTopicsListResultIterator provides access to a complete listing of PartnerTopic values.
+type PartnerTopicsListResultIterator struct {
+ i int
+ page PartnerTopicsListResultPage
+}
+
+// NextWithContext advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+func (iter *PartnerTopicsListResultIterator) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicsListResultIterator.NextWithContext")
+ defer func() {
+ sc := -1
+ if iter.Response().Response.Response != nil {
+ sc = iter.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ iter.i++
+ if iter.i < len(iter.page.Values()) {
+ return nil
+ }
+ err = iter.page.NextWithContext(ctx)
+ if err != nil {
+ iter.i--
+ return err
+ }
+ iter.i = 0
+ return nil
+}
+
+// Next advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (iter *PartnerTopicsListResultIterator) Next() error {
+ return iter.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the enumeration should be started or is not yet complete.
+func (iter PartnerTopicsListResultIterator) NotDone() bool {
+ return iter.page.NotDone() && iter.i < len(iter.page.Values())
+}
+
+// Response returns the raw server response from the last page request.
+func (iter PartnerTopicsListResultIterator) Response() PartnerTopicsListResult {
+ return iter.page.Response()
+}
+
+// Value returns the current value or a zero-initialized value if the
+// iterator has advanced beyond the end of the collection.
+func (iter PartnerTopicsListResultIterator) Value() PartnerTopic {
+ if !iter.page.NotDone() {
+ return PartnerTopic{}
+ }
+ return iter.page.Values()[iter.i]
+}
+
+// Creates a new instance of the PartnerTopicsListResultIterator type.
+func NewPartnerTopicsListResultIterator(page PartnerTopicsListResultPage) PartnerTopicsListResultIterator {
+ return PartnerTopicsListResultIterator{page: page}
+}
+
+// IsEmpty returns true if the ListResult contains no values.
+func (ptlr PartnerTopicsListResult) IsEmpty() bool {
+ return ptlr.Value == nil || len(*ptlr.Value) == 0
+}
+
+// partnerTopicsListResultPreparer prepares a request to retrieve the next set of results.
+// It returns nil if no more results exist.
+func (ptlr PartnerTopicsListResult) partnerTopicsListResultPreparer(ctx context.Context) (*http.Request, error) {
+ if ptlr.NextLink == nil || len(to.String(ptlr.NextLink)) < 1 {
+ return nil, nil
+ }
+ return autorest.Prepare((&http.Request{}).WithContext(ctx),
+ autorest.AsJSON(),
+ autorest.AsGet(),
+ autorest.WithBaseURL(to.String(ptlr.NextLink)))
+}
+
+// PartnerTopicsListResultPage contains a page of PartnerTopic values.
+type PartnerTopicsListResultPage struct {
+ fn func(context.Context, PartnerTopicsListResult) (PartnerTopicsListResult, error)
+ ptlr PartnerTopicsListResult
+}
+
+// NextWithContext advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+func (page *PartnerTopicsListResultPage) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicsListResultPage.NextWithContext")
+ defer func() {
+ sc := -1
+ if page.Response().Response.Response != nil {
+ sc = page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ next, err := page.fn(ctx, page.ptlr)
+ if err != nil {
+ return err
+ }
+ page.ptlr = next
+ return nil
+}
+
+// Next advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (page *PartnerTopicsListResultPage) Next() error {
+ return page.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the page enumeration should be started or is not yet complete.
+func (page PartnerTopicsListResultPage) NotDone() bool {
+ return !page.ptlr.IsEmpty()
+}
+
+// Response returns the raw server response from the last page request.
+func (page PartnerTopicsListResultPage) Response() PartnerTopicsListResult {
+ return page.ptlr
+}
+
+// Values returns the slice of values for the current page or nil if there are no values.
+func (page PartnerTopicsListResultPage) Values() []PartnerTopic {
+ if page.ptlr.IsEmpty() {
+ return nil
+ }
+ return *page.ptlr.Value
+}
+
+// Creates a new instance of the PartnerTopicsListResultPage type.
+func NewPartnerTopicsListResultPage(getNextPage func(context.Context, PartnerTopicsListResult) (PartnerTopicsListResult, error)) PartnerTopicsListResultPage {
+ return PartnerTopicsListResultPage{fn: getNextPage}
+}
+
+// PartnerTopicType properties of a partner topic type.
+type PartnerTopicType struct {
+ // PartnerTopicTypeProperties - Properties of the partner topic type.
+ *PartnerTopicTypeProperties `json:"properties,omitempty"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for PartnerTopicType.
+func (ptt PartnerTopicType) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if ptt.PartnerTopicTypeProperties != nil {
+ objectMap["properties"] = ptt.PartnerTopicTypeProperties
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for PartnerTopicType struct.
+func (ptt *PartnerTopicType) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var partnerTopicTypeProperties PartnerTopicTypeProperties
+ err = json.Unmarshal(*v, &partnerTopicTypeProperties)
+ if err != nil {
+ return err
+ }
+ ptt.PartnerTopicTypeProperties = &partnerTopicTypeProperties
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ ptt.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ ptt.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ ptt.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// PartnerTopicTypeProperties properties of a partner topic type.
+type PartnerTopicTypeProperties struct {
+ // PartnerName - Official name of the partner.
+ PartnerName *string `json:"partnerName,omitempty"`
+ // TopicTypeName - Name of the partner topic type. This name should be unique among all partner topic types names.
+ TopicTypeName *string `json:"topicTypeName,omitempty"`
+ // DisplayName - Display Name for the partner topic type.
+ DisplayName *string `json:"displayName,omitempty"`
+ // Description - Description of the partner topic type.
+ Description *string `json:"description,omitempty"`
+ // SetupURI - URI of the partner website that can be used by Azure customers to setup Event Grid
+ // integration on an event source.
+ SetupURI *string `json:"setupUri,omitempty"`
+ // AuthorizationState - Status of whether the customer has authorized a partner to create partner topics
+ // in the customer's subscription. Possible values include: 'NotApplicable', 'NotAuthorized', 'Authorized'
+ AuthorizationState PartnerTopicTypeAuthorizationState `json:"authorizationState,omitempty"`
+}
+
+// PartnerTopicTypesListResult result of the List Partner Topic Types operation.
+type PartnerTopicTypesListResult struct {
+ // Value - A collection of partner topic types.
+ Value *[]PartnerTopicType `json:"value,omitempty"`
+}
+
+// PartnerTopicUpdateParameters properties of the Partner Topic update.
+type PartnerTopicUpdateParameters struct {
+ // Tags - Tags of the partner topic.
+ Tags map[string]*string `json:"tags"`
+}
+
+// MarshalJSON is the custom marshaler for PartnerTopicUpdateParameters.
+func (ptup PartnerTopicUpdateParameters) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if ptup.Tags != nil {
+ objectMap["tags"] = ptup.Tags
+ }
+ return json.Marshal(objectMap)
+}
+
+// PrivateEndpoint privateEndpoint information.
+type PrivateEndpoint struct {
+ // ID - The ARM identifier for Private Endpoint.
+ ID *string `json:"id,omitempty"`
+}
+
+// PrivateEndpointConnection ...
+type PrivateEndpointConnection struct {
+ autorest.Response `json:"-"`
+ // PrivateEndpointConnectionProperties - Properties of the PrivateEndpointConnection.
+ *PrivateEndpointConnectionProperties `json:"properties,omitempty"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for PrivateEndpointConnection.
+func (pec PrivateEndpointConnection) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if pec.PrivateEndpointConnectionProperties != nil {
+ objectMap["properties"] = pec.PrivateEndpointConnectionProperties
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for PrivateEndpointConnection struct.
+func (pec *PrivateEndpointConnection) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var privateEndpointConnectionProperties PrivateEndpointConnectionProperties
+ err = json.Unmarshal(*v, &privateEndpointConnectionProperties)
+ if err != nil {
+ return err
+ }
+ pec.PrivateEndpointConnectionProperties = &privateEndpointConnectionProperties
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ pec.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ pec.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ pec.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// PrivateEndpointConnectionListResult result of the list of all private endpoint connections operation.
+type PrivateEndpointConnectionListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of private endpoint connection resources.
+ Value *[]PrivateEndpointConnection `json:"value,omitempty"`
+ // NextLink - A link for the next page of private endpoint connection resources.
+ NextLink *string `json:"nextLink,omitempty"`
+}
+
+// PrivateEndpointConnectionListResultIterator provides access to a complete listing of
+// PrivateEndpointConnection values.
+type PrivateEndpointConnectionListResultIterator struct {
+ i int
+ page PrivateEndpointConnectionListResultPage
+}
+
+// NextWithContext advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+func (iter *PrivateEndpointConnectionListResultIterator) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PrivateEndpointConnectionListResultIterator.NextWithContext")
+ defer func() {
+ sc := -1
+ if iter.Response().Response.Response != nil {
+ sc = iter.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ iter.i++
+ if iter.i < len(iter.page.Values()) {
+ return nil
+ }
+ err = iter.page.NextWithContext(ctx)
+ if err != nil {
+ iter.i--
+ return err
+ }
+ iter.i = 0
+ return nil
+}
+
+// Next advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (iter *PrivateEndpointConnectionListResultIterator) Next() error {
+ return iter.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the enumeration should be started or is not yet complete.
+func (iter PrivateEndpointConnectionListResultIterator) NotDone() bool {
+ return iter.page.NotDone() && iter.i < len(iter.page.Values())
+}
+
+// Response returns the raw server response from the last page request.
+func (iter PrivateEndpointConnectionListResultIterator) Response() PrivateEndpointConnectionListResult {
+ return iter.page.Response()
+}
+
+// Value returns the current value or a zero-initialized value if the
+// iterator has advanced beyond the end of the collection.
+func (iter PrivateEndpointConnectionListResultIterator) Value() PrivateEndpointConnection {
+ if !iter.page.NotDone() {
+ return PrivateEndpointConnection{}
+ }
+ return iter.page.Values()[iter.i]
+}
+
+// Creates a new instance of the PrivateEndpointConnectionListResultIterator type.
+func NewPrivateEndpointConnectionListResultIterator(page PrivateEndpointConnectionListResultPage) PrivateEndpointConnectionListResultIterator {
+ return PrivateEndpointConnectionListResultIterator{page: page}
+}
+
+// IsEmpty returns true if the ListResult contains no values.
+func (peclr PrivateEndpointConnectionListResult) IsEmpty() bool {
+ return peclr.Value == nil || len(*peclr.Value) == 0
+}
+
+// privateEndpointConnectionListResultPreparer prepares a request to retrieve the next set of results.
+// It returns nil if no more results exist.
+func (peclr PrivateEndpointConnectionListResult) privateEndpointConnectionListResultPreparer(ctx context.Context) (*http.Request, error) {
+ if peclr.NextLink == nil || len(to.String(peclr.NextLink)) < 1 {
+ return nil, nil
+ }
+ return autorest.Prepare((&http.Request{}).WithContext(ctx),
+ autorest.AsJSON(),
+ autorest.AsGet(),
+ autorest.WithBaseURL(to.String(peclr.NextLink)))
+}
+
+// PrivateEndpointConnectionListResultPage contains a page of PrivateEndpointConnection values.
+type PrivateEndpointConnectionListResultPage struct {
+ fn func(context.Context, PrivateEndpointConnectionListResult) (PrivateEndpointConnectionListResult, error)
+ peclr PrivateEndpointConnectionListResult
+}
+
+// NextWithContext advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+func (page *PrivateEndpointConnectionListResultPage) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PrivateEndpointConnectionListResultPage.NextWithContext")
+ defer func() {
+ sc := -1
+ if page.Response().Response.Response != nil {
+ sc = page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ next, err := page.fn(ctx, page.peclr)
+ if err != nil {
+ return err
+ }
+ page.peclr = next
+ return nil
+}
+
+// Next advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (page *PrivateEndpointConnectionListResultPage) Next() error {
+ return page.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the page enumeration should be started or is not yet complete.
+func (page PrivateEndpointConnectionListResultPage) NotDone() bool {
+ return !page.peclr.IsEmpty()
+}
+
+// Response returns the raw server response from the last page request.
+func (page PrivateEndpointConnectionListResultPage) Response() PrivateEndpointConnectionListResult {
+ return page.peclr
+}
+
+// Values returns the slice of values for the current page or nil if there are no values.
+func (page PrivateEndpointConnectionListResultPage) Values() []PrivateEndpointConnection {
+ if page.peclr.IsEmpty() {
+ return nil
+ }
+ return *page.peclr.Value
+}
+
+// Creates a new instance of the PrivateEndpointConnectionListResultPage type.
+func NewPrivateEndpointConnectionListResultPage(getNextPage func(context.Context, PrivateEndpointConnectionListResult) (PrivateEndpointConnectionListResult, error)) PrivateEndpointConnectionListResultPage {
+ return PrivateEndpointConnectionListResultPage{fn: getNextPage}
+}
+
+// PrivateEndpointConnectionProperties properties of the private endpoint connection resource.
+type PrivateEndpointConnectionProperties struct {
+ // PrivateEndpoint - The Private Endpoint resource for this Connection.
+ PrivateEndpoint *PrivateEndpoint `json:"privateEndpoint,omitempty"`
+ // GroupIds - GroupIds from the private link service resource.
+ GroupIds *[]string `json:"groupIds,omitempty"`
+ // PrivateLinkServiceConnectionState - Details about the state of the connection.
+ PrivateLinkServiceConnectionState *ConnectionState `json:"privateLinkServiceConnectionState,omitempty"`
+ // ProvisioningState - Provisioning state of the Private Endpoint Connection. Possible values include: 'ResourceProvisioningStateCreating', 'ResourceProvisioningStateUpdating', 'ResourceProvisioningStateDeleting', 'ResourceProvisioningStateSucceeded', 'ResourceProvisioningStateCanceled', 'ResourceProvisioningStateFailed'
+ ProvisioningState ResourceProvisioningState `json:"provisioningState,omitempty"`
+}
+
+// PrivateEndpointConnectionsDeleteFuture an abstraction for monitoring and retrieving the results of a
+// long-running operation.
+type PrivateEndpointConnectionsDeleteFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *PrivateEndpointConnectionsDeleteFuture) Result(client PrivateEndpointConnectionsClient) (ar autorest.Response, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsDeleteFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.PrivateEndpointConnectionsDeleteFuture")
+ return
+ }
+ ar.Response = future.Response()
+ return
+}
+
+// PrivateEndpointConnectionsUpdateFuture an abstraction for monitoring and retrieving the results of a
+// long-running operation.
+type PrivateEndpointConnectionsUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *PrivateEndpointConnectionsUpdateFuture) Result(client PrivateEndpointConnectionsClient) (pec PrivateEndpointConnection, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.PrivateEndpointConnectionsUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if pec.Response.Response, err = future.GetResult(sender); err == nil && pec.Response.Response.StatusCode != http.StatusNoContent {
+ pec, err = client.UpdateResponder(pec.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsUpdateFuture", "Result", pec.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// PrivateLinkResource information of the private link resource.
+type PrivateLinkResource struct {
+ autorest.Response `json:"-"`
+ // PrivateLinkResourceProperties - Properties of the private link resource.
+ *PrivateLinkResourceProperties `json:"properties,omitempty"`
+ // ID - Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for PrivateLinkResource.
+func (plr PrivateLinkResource) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if plr.PrivateLinkResourceProperties != nil {
+ objectMap["properties"] = plr.PrivateLinkResourceProperties
+ }
+ if plr.ID != nil {
+ objectMap["id"] = plr.ID
+ }
+ if plr.Name != nil {
+ objectMap["name"] = plr.Name
+ }
+ if plr.Type != nil {
+ objectMap["type"] = plr.Type
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for PrivateLinkResource struct.
+func (plr *PrivateLinkResource) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var privateLinkResourceProperties PrivateLinkResourceProperties
+ err = json.Unmarshal(*v, &privateLinkResourceProperties)
+ if err != nil {
+ return err
+ }
+ plr.PrivateLinkResourceProperties = &privateLinkResourceProperties
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ plr.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ plr.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ plr.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// PrivateLinkResourceProperties ...
+type PrivateLinkResourceProperties struct {
+ GroupID *string `json:"groupId,omitempty"`
+ DisplayName *string `json:"displayName,omitempty"`
+ RequiredMembers *[]string `json:"requiredMembers,omitempty"`
+ RequiredZoneNames *[]string `json:"requiredZoneNames,omitempty"`
+}
+
+// PrivateLinkResourcesListResult result of the List private link resources operation.
+type PrivateLinkResourcesListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of private link resources
+ Value *[]PrivateLinkResource `json:"value,omitempty"`
+ // NextLink - A link for the next page of private link resources.
+ NextLink *string `json:"nextLink,omitempty"`
+}
+
+// PrivateLinkResourcesListResultIterator provides access to a complete listing of PrivateLinkResource
+// values.
+type PrivateLinkResourcesListResultIterator struct {
+ i int
+ page PrivateLinkResourcesListResultPage
+}
+
+// NextWithContext advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+func (iter *PrivateLinkResourcesListResultIterator) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PrivateLinkResourcesListResultIterator.NextWithContext")
+ defer func() {
+ sc := -1
+ if iter.Response().Response.Response != nil {
+ sc = iter.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ iter.i++
+ if iter.i < len(iter.page.Values()) {
+ return nil
+ }
+ err = iter.page.NextWithContext(ctx)
+ if err != nil {
+ iter.i--
+ return err
+ }
+ iter.i = 0
+ return nil
+}
+
+// Next advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (iter *PrivateLinkResourcesListResultIterator) Next() error {
+ return iter.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the enumeration should be started or is not yet complete.
+func (iter PrivateLinkResourcesListResultIterator) NotDone() bool {
+ return iter.page.NotDone() && iter.i < len(iter.page.Values())
+}
+
+// Response returns the raw server response from the last page request.
+func (iter PrivateLinkResourcesListResultIterator) Response() PrivateLinkResourcesListResult {
+ return iter.page.Response()
+}
+
+// Value returns the current value or a zero-initialized value if the
+// iterator has advanced beyond the end of the collection.
+func (iter PrivateLinkResourcesListResultIterator) Value() PrivateLinkResource {
+ if !iter.page.NotDone() {
+ return PrivateLinkResource{}
+ }
+ return iter.page.Values()[iter.i]
+}
+
+// Creates a new instance of the PrivateLinkResourcesListResultIterator type.
+func NewPrivateLinkResourcesListResultIterator(page PrivateLinkResourcesListResultPage) PrivateLinkResourcesListResultIterator {
+ return PrivateLinkResourcesListResultIterator{page: page}
+}
+
+// IsEmpty returns true if the ListResult contains no values.
+func (plrlr PrivateLinkResourcesListResult) IsEmpty() bool {
+ return plrlr.Value == nil || len(*plrlr.Value) == 0
+}
+
+// privateLinkResourcesListResultPreparer prepares a request to retrieve the next set of results.
+// It returns nil if no more results exist.
+func (plrlr PrivateLinkResourcesListResult) privateLinkResourcesListResultPreparer(ctx context.Context) (*http.Request, error) {
+ if plrlr.NextLink == nil || len(to.String(plrlr.NextLink)) < 1 {
+ return nil, nil
+ }
+ return autorest.Prepare((&http.Request{}).WithContext(ctx),
+ autorest.AsJSON(),
+ autorest.AsGet(),
+ autorest.WithBaseURL(to.String(plrlr.NextLink)))
+}
+
+// PrivateLinkResourcesListResultPage contains a page of PrivateLinkResource values.
+type PrivateLinkResourcesListResultPage struct {
+ fn func(context.Context, PrivateLinkResourcesListResult) (PrivateLinkResourcesListResult, error)
+ plrlr PrivateLinkResourcesListResult
+}
+
+// NextWithContext advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+func (page *PrivateLinkResourcesListResultPage) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PrivateLinkResourcesListResultPage.NextWithContext")
+ defer func() {
+ sc := -1
+ if page.Response().Response.Response != nil {
+ sc = page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ next, err := page.fn(ctx, page.plrlr)
+ if err != nil {
+ return err
+ }
+ page.plrlr = next
+ return nil
+}
+
+// Next advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (page *PrivateLinkResourcesListResultPage) Next() error {
+ return page.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the page enumeration should be started or is not yet complete.
+func (page PrivateLinkResourcesListResultPage) NotDone() bool {
+ return !page.plrlr.IsEmpty()
+}
+
+// Response returns the raw server response from the last page request.
+func (page PrivateLinkResourcesListResultPage) Response() PrivateLinkResourcesListResult {
+ return page.plrlr
+}
+
+// Values returns the slice of values for the current page or nil if there are no values.
+func (page PrivateLinkResourcesListResultPage) Values() []PrivateLinkResource {
+ if page.plrlr.IsEmpty() {
+ return nil
+ }
+ return *page.plrlr.Value
+}
+
+// Creates a new instance of the PrivateLinkResourcesListResultPage type.
+func NewPrivateLinkResourcesListResultPage(getNextPage func(context.Context, PrivateLinkResourcesListResult) (PrivateLinkResourcesListResult, error)) PrivateLinkResourcesListResultPage {
+ return PrivateLinkResourcesListResultPage{fn: getNextPage}
+}
+
+// Resource definition of a Resource
+type Resource struct {
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// ResourceSku describes an EventGrid Resource Sku.
+type ResourceSku struct {
+ // Name - the Sku name of the resource.
+ // the possible values: Basic; Premium. Possible values include: 'Basic', 'Premium'
+ Name Sku `json:"name,omitempty"`
+}
+
+// RetryPolicy information about the retry policy for an event subscription.
+type RetryPolicy struct {
+ // MaxDeliveryAttempts - Maximum number of delivery retry attempts for events.
+ MaxDeliveryAttempts *int32 `json:"maxDeliveryAttempts,omitempty"`
+ // EventTimeToLiveInMinutes - Time To Live (in minutes) for events.
+ EventTimeToLiveInMinutes *int32 `json:"eventTimeToLiveInMinutes,omitempty"`
+}
+
+// ServiceBusQueueEventSubscriptionDestination information about the service bus destination for an event
+// subscription.
+type ServiceBusQueueEventSubscriptionDestination struct {
+ // ServiceBusQueueEventSubscriptionDestinationProperties - Service Bus Properties of the event subscription destination.
+ *ServiceBusQueueEventSubscriptionDestinationProperties `json:"properties,omitempty"`
+ // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection', 'EndpointTypeServiceBusQueue', 'EndpointTypeServiceBusTopic', 'EndpointTypeAzureFunction'
+ EndpointType EndpointType `json:"endpointType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for ServiceBusQueueEventSubscriptionDestination.
+func (sbqesd ServiceBusQueueEventSubscriptionDestination) MarshalJSON() ([]byte, error) {
+ sbqesd.EndpointType = EndpointTypeServiceBusQueue
+ objectMap := make(map[string]interface{})
+ if sbqesd.ServiceBusQueueEventSubscriptionDestinationProperties != nil {
+ objectMap["properties"] = sbqesd.ServiceBusQueueEventSubscriptionDestinationProperties
+ }
+ if sbqesd.EndpointType != "" {
+ objectMap["endpointType"] = sbqesd.EndpointType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusQueueEventSubscriptionDestination.
+func (sbqesd ServiceBusQueueEventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusQueueEventSubscriptionDestination.
+func (sbqesd ServiceBusQueueEventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusQueueEventSubscriptionDestination.
+func (sbqesd ServiceBusQueueEventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusQueueEventSubscriptionDestination.
+func (sbqesd ServiceBusQueueEventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusQueueEventSubscriptionDestination.
+func (sbqesd ServiceBusQueueEventSubscriptionDestination) AsServiceBusQueueEventSubscriptionDestination() (*ServiceBusQueueEventSubscriptionDestination, bool) {
+ return &sbqesd, true
+}
+
+// AsServiceBusTopicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusQueueEventSubscriptionDestination.
+func (sbqesd ServiceBusQueueEventSubscriptionDestination) AsServiceBusTopicEventSubscriptionDestination() (*ServiceBusTopicEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsAzureFunctionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusQueueEventSubscriptionDestination.
+func (sbqesd ServiceBusQueueEventSubscriptionDestination) AsAzureFunctionEventSubscriptionDestination() (*AzureFunctionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusQueueEventSubscriptionDestination.
+func (sbqesd ServiceBusQueueEventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusQueueEventSubscriptionDestination.
+func (sbqesd ServiceBusQueueEventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
+ return &sbqesd, true
+}
+
+// UnmarshalJSON is the custom unmarshaler for ServiceBusQueueEventSubscriptionDestination struct.
+func (sbqesd *ServiceBusQueueEventSubscriptionDestination) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var serviceBusQueueEventSubscriptionDestinationProperties ServiceBusQueueEventSubscriptionDestinationProperties
+ err = json.Unmarshal(*v, &serviceBusQueueEventSubscriptionDestinationProperties)
+ if err != nil {
+ return err
+ }
+ sbqesd.ServiceBusQueueEventSubscriptionDestinationProperties = &serviceBusQueueEventSubscriptionDestinationProperties
+ }
+ case "endpointType":
+ if v != nil {
+ var endpointType EndpointType
+ err = json.Unmarshal(*v, &endpointType)
+ if err != nil {
+ return err
+ }
+ sbqesd.EndpointType = endpointType
+ }
+ }
+ }
+
+ return nil
+}
+
+// ServiceBusQueueEventSubscriptionDestinationProperties the properties that represent the Service Bus
+// destination of an event subscription.
+type ServiceBusQueueEventSubscriptionDestinationProperties struct {
+ // ResourceID - The Azure Resource Id that represents the endpoint of the Service Bus destination of an event subscription.
+ ResourceID *string `json:"resourceId,omitempty"`
+}
+
+// ServiceBusTopicEventSubscriptionDestination information about the service bus topic destination for an
+// event subscription.
+type ServiceBusTopicEventSubscriptionDestination struct {
+ // ServiceBusTopicEventSubscriptionDestinationProperties - Service Bus Topic Properties of the event subscription destination.
+ *ServiceBusTopicEventSubscriptionDestinationProperties `json:"properties,omitempty"`
+ // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection', 'EndpointTypeServiceBusQueue', 'EndpointTypeServiceBusTopic', 'EndpointTypeAzureFunction'
+ EndpointType EndpointType `json:"endpointType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for ServiceBusTopicEventSubscriptionDestination.
+func (sbtesd ServiceBusTopicEventSubscriptionDestination) MarshalJSON() ([]byte, error) {
+ sbtesd.EndpointType = EndpointTypeServiceBusTopic
+ objectMap := make(map[string]interface{})
+ if sbtesd.ServiceBusTopicEventSubscriptionDestinationProperties != nil {
+ objectMap["properties"] = sbtesd.ServiceBusTopicEventSubscriptionDestinationProperties
+ }
+ if sbtesd.EndpointType != "" {
+ objectMap["endpointType"] = sbtesd.EndpointType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusTopicEventSubscriptionDestination.
+func (sbtesd ServiceBusTopicEventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusTopicEventSubscriptionDestination.
+func (sbtesd ServiceBusTopicEventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusTopicEventSubscriptionDestination.
+func (sbtesd ServiceBusTopicEventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusTopicEventSubscriptionDestination.
+func (sbtesd ServiceBusTopicEventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusTopicEventSubscriptionDestination.
+func (sbtesd ServiceBusTopicEventSubscriptionDestination) AsServiceBusQueueEventSubscriptionDestination() (*ServiceBusQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusTopicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusTopicEventSubscriptionDestination.
+func (sbtesd ServiceBusTopicEventSubscriptionDestination) AsServiceBusTopicEventSubscriptionDestination() (*ServiceBusTopicEventSubscriptionDestination, bool) {
+ return &sbtesd, true
+}
+
+// AsAzureFunctionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusTopicEventSubscriptionDestination.
+func (sbtesd ServiceBusTopicEventSubscriptionDestination) AsAzureFunctionEventSubscriptionDestination() (*AzureFunctionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusTopicEventSubscriptionDestination.
+func (sbtesd ServiceBusTopicEventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for ServiceBusTopicEventSubscriptionDestination.
+func (sbtesd ServiceBusTopicEventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
+ return &sbtesd, true
+}
+
+// UnmarshalJSON is the custom unmarshaler for ServiceBusTopicEventSubscriptionDestination struct.
+func (sbtesd *ServiceBusTopicEventSubscriptionDestination) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var serviceBusTopicEventSubscriptionDestinationProperties ServiceBusTopicEventSubscriptionDestinationProperties
+ err = json.Unmarshal(*v, &serviceBusTopicEventSubscriptionDestinationProperties)
+ if err != nil {
+ return err
+ }
+ sbtesd.ServiceBusTopicEventSubscriptionDestinationProperties = &serviceBusTopicEventSubscriptionDestinationProperties
+ }
+ case "endpointType":
+ if v != nil {
+ var endpointType EndpointType
+ err = json.Unmarshal(*v, &endpointType)
+ if err != nil {
+ return err
+ }
+ sbtesd.EndpointType = endpointType
+ }
+ }
+ }
+
+ return nil
+}
+
+// ServiceBusTopicEventSubscriptionDestinationProperties the properties that represent the Service Bus
+// Topic destination of an event subscription.
+type ServiceBusTopicEventSubscriptionDestinationProperties struct {
+ // ResourceID - The Azure Resource Id that represents the endpoint of the Service Bus Topic destination of an event subscription.
+ ResourceID *string `json:"resourceId,omitempty"`
+}
+
+// StorageBlobDeadLetterDestination information about the storage blob based dead letter destination.
+type StorageBlobDeadLetterDestination struct {
+ // StorageBlobDeadLetterDestinationProperties - The properties of the Storage Blob based deadletter destination
+ *StorageBlobDeadLetterDestinationProperties `json:"properties,omitempty"`
+ // EndpointType - Possible values include: 'EndpointTypeDeadLetterDestination', 'EndpointTypeStorageBlob'
+ EndpointType EndpointTypeBasicDeadLetterDestination `json:"endpointType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for StorageBlobDeadLetterDestination.
+func (sbdld StorageBlobDeadLetterDestination) MarshalJSON() ([]byte, error) {
+ sbdld.EndpointType = EndpointTypeStorageBlob
+ objectMap := make(map[string]interface{})
+ if sbdld.StorageBlobDeadLetterDestinationProperties != nil {
+ objectMap["properties"] = sbdld.StorageBlobDeadLetterDestinationProperties
+ }
+ if sbdld.EndpointType != "" {
+ objectMap["endpointType"] = sbdld.EndpointType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsStorageBlobDeadLetterDestination is the BasicDeadLetterDestination implementation for StorageBlobDeadLetterDestination.
+func (sbdld StorageBlobDeadLetterDestination) AsStorageBlobDeadLetterDestination() (*StorageBlobDeadLetterDestination, bool) {
+ return &sbdld, true
+}
+
+// AsDeadLetterDestination is the BasicDeadLetterDestination implementation for StorageBlobDeadLetterDestination.
+func (sbdld StorageBlobDeadLetterDestination) AsDeadLetterDestination() (*DeadLetterDestination, bool) {
+ return nil, false
+}
+
+// AsBasicDeadLetterDestination is the BasicDeadLetterDestination implementation for StorageBlobDeadLetterDestination.
+func (sbdld StorageBlobDeadLetterDestination) AsBasicDeadLetterDestination() (BasicDeadLetterDestination, bool) {
+ return &sbdld, true
+}
+
+// UnmarshalJSON is the custom unmarshaler for StorageBlobDeadLetterDestination struct.
+func (sbdld *StorageBlobDeadLetterDestination) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var storageBlobDeadLetterDestinationProperties StorageBlobDeadLetterDestinationProperties
+ err = json.Unmarshal(*v, &storageBlobDeadLetterDestinationProperties)
+ if err != nil {
+ return err
+ }
+ sbdld.StorageBlobDeadLetterDestinationProperties = &storageBlobDeadLetterDestinationProperties
+ }
+ case "endpointType":
+ if v != nil {
+ var endpointType EndpointTypeBasicDeadLetterDestination
+ err = json.Unmarshal(*v, &endpointType)
+ if err != nil {
+ return err
+ }
+ sbdld.EndpointType = endpointType
+ }
+ }
+ }
+
+ return nil
+}
+
+// StorageBlobDeadLetterDestinationProperties properties of the storage blob based dead letter destination.
+type StorageBlobDeadLetterDestinationProperties struct {
+ // ResourceID - The Azure Resource ID of the storage account that is the destination of the deadletter events
+ ResourceID *string `json:"resourceId,omitempty"`
+ // BlobContainerName - The name of the Storage blob container that is the destination of the deadletter events
+ BlobContainerName *string `json:"blobContainerName,omitempty"`
+}
+
+// StorageQueueEventSubscriptionDestination information about the storage queue destination for an event
+// subscription.
+type StorageQueueEventSubscriptionDestination struct {
+ // StorageQueueEventSubscriptionDestinationProperties - Storage Queue Properties of the event subscription destination.
+ *StorageQueueEventSubscriptionDestinationProperties `json:"properties,omitempty"`
+ // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection', 'EndpointTypeServiceBusQueue', 'EndpointTypeServiceBusTopic', 'EndpointTypeAzureFunction'
+ EndpointType EndpointType `json:"endpointType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for StorageQueueEventSubscriptionDestination.
+func (sqesd StorageQueueEventSubscriptionDestination) MarshalJSON() ([]byte, error) {
+ sqesd.EndpointType = EndpointTypeStorageQueue
+ objectMap := make(map[string]interface{})
+ if sqesd.StorageQueueEventSubscriptionDestinationProperties != nil {
+ objectMap["properties"] = sqesd.StorageQueueEventSubscriptionDestinationProperties
+ }
+ if sqesd.EndpointType != "" {
+ objectMap["endpointType"] = sqesd.EndpointType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
+func (sqesd StorageQueueEventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
+func (sqesd StorageQueueEventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
+func (sqesd StorageQueueEventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
+ return &sqesd, true
+}
+
+// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
+func (sqesd StorageQueueEventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
+func (sqesd StorageQueueEventSubscriptionDestination) AsServiceBusQueueEventSubscriptionDestination() (*ServiceBusQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusTopicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
+func (sqesd StorageQueueEventSubscriptionDestination) AsServiceBusTopicEventSubscriptionDestination() (*ServiceBusTopicEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsAzureFunctionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
+func (sqesd StorageQueueEventSubscriptionDestination) AsAzureFunctionEventSubscriptionDestination() (*AzureFunctionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
+func (sqesd StorageQueueEventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for StorageQueueEventSubscriptionDestination.
+func (sqesd StorageQueueEventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
+ return &sqesd, true
+}
+
+// UnmarshalJSON is the custom unmarshaler for StorageQueueEventSubscriptionDestination struct.
+func (sqesd *StorageQueueEventSubscriptionDestination) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var storageQueueEventSubscriptionDestinationProperties StorageQueueEventSubscriptionDestinationProperties
+ err = json.Unmarshal(*v, &storageQueueEventSubscriptionDestinationProperties)
+ if err != nil {
+ return err
+ }
+ sqesd.StorageQueueEventSubscriptionDestinationProperties = &storageQueueEventSubscriptionDestinationProperties
+ }
+ case "endpointType":
+ if v != nil {
+ var endpointType EndpointType
+ err = json.Unmarshal(*v, &endpointType)
+ if err != nil {
+ return err
+ }
+ sqesd.EndpointType = endpointType
+ }
+ }
+ }
+
+ return nil
+}
+
+// StorageQueueEventSubscriptionDestinationProperties the properties for a storage queue destination.
+type StorageQueueEventSubscriptionDestinationProperties struct {
+ // ResourceID - The Azure Resource ID of the storage account that contains the queue that is the destination of an event subscription.
+ ResourceID *string `json:"resourceId,omitempty"`
+ // QueueName - The name of the Storage queue under a storage account that is the destination of an event subscription.
+ QueueName *string `json:"queueName,omitempty"`
+}
+
+// StringBeginsWithAdvancedFilter stringBeginsWith Advanced Filter.
+type StringBeginsWithAdvancedFilter struct {
+ // Values - The set of filter values.
+ Values *[]string `json:"values,omitempty"`
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) MarshalJSON() ([]byte, error) {
+ sbwaf.OperatorType = OperatorTypeStringBeginsWith
+ objectMap := make(map[string]interface{})
+ if sbwaf.Values != nil {
+ objectMap["values"] = sbwaf.Values
+ }
+ if sbwaf.Key != nil {
+ objectMap["key"] = sbwaf.Key
+ }
+ if sbwaf.OperatorType != "" {
+ objectMap["operatorType"] = sbwaf.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return &sbwaf, true
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for StringBeginsWithAdvancedFilter.
+func (sbwaf StringBeginsWithAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &sbwaf, true
+}
+
+// StringContainsAdvancedFilter stringContains Advanced Filter.
+type StringContainsAdvancedFilter struct {
+ // Values - The set of filter values.
+ Values *[]string `json:"values,omitempty"`
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) MarshalJSON() ([]byte, error) {
+ scaf.OperatorType = OperatorTypeStringContains
+ objectMap := make(map[string]interface{})
+ if scaf.Values != nil {
+ objectMap["values"] = scaf.Values
+ }
+ if scaf.Key != nil {
+ objectMap["key"] = scaf.Key
+ }
+ if scaf.OperatorType != "" {
+ objectMap["operatorType"] = scaf.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return &scaf, true
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for StringContainsAdvancedFilter.
+func (scaf StringContainsAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &scaf, true
+}
+
+// StringEndsWithAdvancedFilter stringEndsWith Advanced Filter.
+type StringEndsWithAdvancedFilter struct {
+ // Values - The set of filter values.
+ Values *[]string `json:"values,omitempty"`
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) MarshalJSON() ([]byte, error) {
+ sewaf.OperatorType = OperatorTypeStringEndsWith
+ objectMap := make(map[string]interface{})
+ if sewaf.Values != nil {
+ objectMap["values"] = sewaf.Values
+ }
+ if sewaf.Key != nil {
+ objectMap["key"] = sewaf.Key
+ }
+ if sewaf.OperatorType != "" {
+ objectMap["operatorType"] = sewaf.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return &sewaf, true
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for StringEndsWithAdvancedFilter.
+func (sewaf StringEndsWithAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &sewaf, true
+}
+
+// StringInAdvancedFilter stringIn Advanced Filter.
+type StringInAdvancedFilter struct {
+ // Values - The set of filter values.
+ Values *[]string `json:"values,omitempty"`
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) MarshalJSON() ([]byte, error) {
+ siaf.OperatorType = OperatorTypeStringIn
+ objectMap := make(map[string]interface{})
+ if siaf.Values != nil {
+ objectMap["values"] = siaf.Values
+ }
+ if siaf.Key != nil {
+ objectMap["key"] = siaf.Key
+ }
+ if siaf.OperatorType != "" {
+ objectMap["operatorType"] = siaf.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return &siaf, true
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for StringInAdvancedFilter.
+func (siaf StringInAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &siaf, true
+}
+
+// StringNotInAdvancedFilter stringNotIn Advanced Filter.
+type StringNotInAdvancedFilter struct {
+ // Values - The set of filter values.
+ Values *[]string `json:"values,omitempty"`
+ // Key - The field/property in the event based on which you want to filter.
+ Key *string `json:"key,omitempty"`
+ // OperatorType - Possible values include: 'OperatorTypeAdvancedFilter', 'OperatorTypeNumberIn', 'OperatorTypeNumberNotIn', 'OperatorTypeNumberLessThan', 'OperatorTypeNumberGreaterThan', 'OperatorTypeNumberLessThanOrEquals', 'OperatorTypeNumberGreaterThanOrEquals', 'OperatorTypeBoolEquals', 'OperatorTypeStringIn', 'OperatorTypeStringNotIn', 'OperatorTypeStringBeginsWith', 'OperatorTypeStringEndsWith', 'OperatorTypeStringContains'
+ OperatorType OperatorType `json:"operatorType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) MarshalJSON() ([]byte, error) {
+ sniaf.OperatorType = OperatorTypeStringNotIn
+ objectMap := make(map[string]interface{})
+ if sniaf.Values != nil {
+ objectMap["values"] = sniaf.Values
+ }
+ if sniaf.Key != nil {
+ objectMap["key"] = sniaf.Key
+ }
+ if sniaf.OperatorType != "" {
+ objectMap["operatorType"] = sniaf.OperatorType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsNumberInAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsNumberInAdvancedFilter() (*NumberInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsNumberNotInAdvancedFilter() (*NumberNotInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsNumberLessThanAdvancedFilter() (*NumberLessThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsNumberGreaterThanAdvancedFilter() (*NumberGreaterThanAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberLessThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsNumberLessThanOrEqualsAdvancedFilter() (*NumberLessThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsNumberGreaterThanOrEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsNumberGreaterThanOrEqualsAdvancedFilter() (*NumberGreaterThanOrEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBoolEqualsAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsBoolEqualsAdvancedFilter() (*BoolEqualsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringInAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsStringInAdvancedFilter() (*StringInAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringNotInAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsStringNotInAdvancedFilter() (*StringNotInAdvancedFilter, bool) {
+ return &sniaf, true
+}
+
+// AsStringBeginsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsStringBeginsWithAdvancedFilter() (*StringBeginsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringEndsWithAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsStringEndsWithAdvancedFilter() (*StringEndsWithAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsStringContainsAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsStringContainsAdvancedFilter() (*StringContainsAdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsAdvancedFilter() (*AdvancedFilter, bool) {
+ return nil, false
+}
+
+// AsBasicAdvancedFilter is the BasicAdvancedFilter implementation for StringNotInAdvancedFilter.
+func (sniaf StringNotInAdvancedFilter) AsBasicAdvancedFilter() (BasicAdvancedFilter, bool) {
+ return &sniaf, true
+}
+
+// SystemTopic eventGrid System Topic.
+type SystemTopic struct {
+ autorest.Response `json:"-"`
+ // SystemTopicProperties - Properties of the system topic.
+ *SystemTopicProperties `json:"properties,omitempty"`
+ // Location - Location of the resource.
+ Location *string `json:"location,omitempty"`
+ // Tags - Tags of the resource.
+ Tags map[string]*string `json:"tags"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for SystemTopic.
+func (st SystemTopic) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if st.SystemTopicProperties != nil {
+ objectMap["properties"] = st.SystemTopicProperties
+ }
+ if st.Location != nil {
+ objectMap["location"] = st.Location
+ }
+ if st.Tags != nil {
+ objectMap["tags"] = st.Tags
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for SystemTopic struct.
+func (st *SystemTopic) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var systemTopicProperties SystemTopicProperties
+ err = json.Unmarshal(*v, &systemTopicProperties)
+ if err != nil {
+ return err
+ }
+ st.SystemTopicProperties = &systemTopicProperties
+ }
+ case "location":
+ if v != nil {
+ var location string
+ err = json.Unmarshal(*v, &location)
+ if err != nil {
+ return err
+ }
+ st.Location = &location
+ }
+ case "tags":
+ if v != nil {
+ var tags map[string]*string
+ err = json.Unmarshal(*v, &tags)
+ if err != nil {
+ return err
+ }
+ st.Tags = tags
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ st.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ st.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ st.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// SystemTopicEventSubscriptionsCreateOrUpdateFuture an abstraction for monitoring and retrieving the
+// results of a long-running operation.
+type SystemTopicEventSubscriptionsCreateOrUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *SystemTopicEventSubscriptionsCreateOrUpdateFuture) Result(client SystemTopicEventSubscriptionsClient) (es EventSubscription, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.SystemTopicEventSubscriptionsCreateOrUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if es.Response.Response, err = future.GetResult(sender); err == nil && es.Response.Response.StatusCode != http.StatusNoContent {
+ es, err = client.CreateOrUpdateResponder(es.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsCreateOrUpdateFuture", "Result", es.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// SystemTopicEventSubscriptionsDeleteFuture an abstraction for monitoring and retrieving the results of a
+// long-running operation.
+type SystemTopicEventSubscriptionsDeleteFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *SystemTopicEventSubscriptionsDeleteFuture) Result(client SystemTopicEventSubscriptionsClient) (ar autorest.Response, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsDeleteFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.SystemTopicEventSubscriptionsDeleteFuture")
+ return
+ }
+ ar.Response = future.Response()
+ return
+}
+
+// SystemTopicEventSubscriptionsUpdateFuture an abstraction for monitoring and retrieving the results of a
+// long-running operation.
+type SystemTopicEventSubscriptionsUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *SystemTopicEventSubscriptionsUpdateFuture) Result(client SystemTopicEventSubscriptionsClient) (es EventSubscription, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.SystemTopicEventSubscriptionsUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if es.Response.Response, err = future.GetResult(sender); err == nil && es.Response.Response.StatusCode != http.StatusNoContent {
+ es, err = client.UpdateResponder(es.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsUpdateFuture", "Result", es.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// SystemTopicProperties properties of the System Topic.
+type SystemTopicProperties struct {
+ // ProvisioningState - READ-ONLY; Provisioning state of the system topic. Possible values include: 'ResourceProvisioningStateCreating', 'ResourceProvisioningStateUpdating', 'ResourceProvisioningStateDeleting', 'ResourceProvisioningStateSucceeded', 'ResourceProvisioningStateCanceled', 'ResourceProvisioningStateFailed'
+ ProvisioningState ResourceProvisioningState `json:"provisioningState,omitempty"`
+ // Source - Source for the system topic.
+ Source *string `json:"source,omitempty"`
+ // TopicType - TopicType for the system topic.
+ TopicType *string `json:"topicType,omitempty"`
+ // MetricResourceID - READ-ONLY; Metric resource id for the system topic.
+ MetricResourceID *string `json:"metricResourceId,omitempty"`
+}
+
+// SystemTopicsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a
+// long-running operation.
+type SystemTopicsCreateOrUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *SystemTopicsCreateOrUpdateFuture) Result(client SystemTopicsClient) (st SystemTopic, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.SystemTopicsCreateOrUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if st.Response.Response, err = future.GetResult(sender); err == nil && st.Response.Response.StatusCode != http.StatusNoContent {
+ st, err = client.CreateOrUpdateResponder(st.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsCreateOrUpdateFuture", "Result", st.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// SystemTopicsDeleteFuture an abstraction for monitoring and retrieving the results of a long-running
+// operation.
+type SystemTopicsDeleteFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *SystemTopicsDeleteFuture) Result(client SystemTopicsClient) (ar autorest.Response, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsDeleteFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.SystemTopicsDeleteFuture")
+ return
+ }
+ ar.Response = future.Response()
+ return
+}
+
+// SystemTopicsListResult result of the List System topics operation.
+type SystemTopicsListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of system Topics.
+ Value *[]SystemTopic `json:"value,omitempty"`
+ // NextLink - A link for the next page of topics.
+ NextLink *string `json:"nextLink,omitempty"`
+}
+
+// SystemTopicsListResultIterator provides access to a complete listing of SystemTopic values.
+type SystemTopicsListResultIterator struct {
+ i int
+ page SystemTopicsListResultPage
+}
+
+// NextWithContext advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+func (iter *SystemTopicsListResultIterator) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicsListResultIterator.NextWithContext")
+ defer func() {
+ sc := -1
+ if iter.Response().Response.Response != nil {
+ sc = iter.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ iter.i++
+ if iter.i < len(iter.page.Values()) {
+ return nil
+ }
+ err = iter.page.NextWithContext(ctx)
+ if err != nil {
+ iter.i--
+ return err
+ }
+ iter.i = 0
+ return nil
+}
+
+// Next advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (iter *SystemTopicsListResultIterator) Next() error {
+ return iter.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the enumeration should be started or is not yet complete.
+func (iter SystemTopicsListResultIterator) NotDone() bool {
+ return iter.page.NotDone() && iter.i < len(iter.page.Values())
+}
+
+// Response returns the raw server response from the last page request.
+func (iter SystemTopicsListResultIterator) Response() SystemTopicsListResult {
+ return iter.page.Response()
+}
+
+// Value returns the current value or a zero-initialized value if the
+// iterator has advanced beyond the end of the collection.
+func (iter SystemTopicsListResultIterator) Value() SystemTopic {
+ if !iter.page.NotDone() {
+ return SystemTopic{}
+ }
+ return iter.page.Values()[iter.i]
+}
+
+// Creates a new instance of the SystemTopicsListResultIterator type.
+func NewSystemTopicsListResultIterator(page SystemTopicsListResultPage) SystemTopicsListResultIterator {
+ return SystemTopicsListResultIterator{page: page}
+}
+
+// IsEmpty returns true if the ListResult contains no values.
+func (stlr SystemTopicsListResult) IsEmpty() bool {
+ return stlr.Value == nil || len(*stlr.Value) == 0
+}
+
+// systemTopicsListResultPreparer prepares a request to retrieve the next set of results.
+// It returns nil if no more results exist.
+func (stlr SystemTopicsListResult) systemTopicsListResultPreparer(ctx context.Context) (*http.Request, error) {
+ if stlr.NextLink == nil || len(to.String(stlr.NextLink)) < 1 {
+ return nil, nil
+ }
+ return autorest.Prepare((&http.Request{}).WithContext(ctx),
+ autorest.AsJSON(),
+ autorest.AsGet(),
+ autorest.WithBaseURL(to.String(stlr.NextLink)))
+}
+
+// SystemTopicsListResultPage contains a page of SystemTopic values.
+type SystemTopicsListResultPage struct {
+ fn func(context.Context, SystemTopicsListResult) (SystemTopicsListResult, error)
+ stlr SystemTopicsListResult
+}
+
+// NextWithContext advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+func (page *SystemTopicsListResultPage) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicsListResultPage.NextWithContext")
+ defer func() {
+ sc := -1
+ if page.Response().Response.Response != nil {
+ sc = page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ next, err := page.fn(ctx, page.stlr)
+ if err != nil {
+ return err
+ }
+ page.stlr = next
+ return nil
+}
+
+// Next advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (page *SystemTopicsListResultPage) Next() error {
+ return page.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the page enumeration should be started or is not yet complete.
+func (page SystemTopicsListResultPage) NotDone() bool {
+ return !page.stlr.IsEmpty()
+}
+
+// Response returns the raw server response from the last page request.
+func (page SystemTopicsListResultPage) Response() SystemTopicsListResult {
+ return page.stlr
+}
+
+// Values returns the slice of values for the current page or nil if there are no values.
+func (page SystemTopicsListResultPage) Values() []SystemTopic {
+ if page.stlr.IsEmpty() {
+ return nil
+ }
+ return *page.stlr.Value
+}
+
+// Creates a new instance of the SystemTopicsListResultPage type.
+func NewSystemTopicsListResultPage(getNextPage func(context.Context, SystemTopicsListResult) (SystemTopicsListResult, error)) SystemTopicsListResultPage {
+ return SystemTopicsListResultPage{fn: getNextPage}
+}
+
+// SystemTopicsUpdateFuture an abstraction for monitoring and retrieving the results of a long-running
+// operation.
+type SystemTopicsUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *SystemTopicsUpdateFuture) Result(client SystemTopicsClient) (st SystemTopic, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.SystemTopicsUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if st.Response.Response, err = future.GetResult(sender); err == nil && st.Response.Response.StatusCode != http.StatusNoContent {
+ st, err = client.UpdateResponder(st.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsUpdateFuture", "Result", st.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// SystemTopicUpdateParameters properties of the System Topic update.
+type SystemTopicUpdateParameters struct {
+ // Tags - Tags of the system topic.
+ Tags map[string]*string `json:"tags"`
+}
+
+// MarshalJSON is the custom marshaler for SystemTopicUpdateParameters.
+func (stup SystemTopicUpdateParameters) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if stup.Tags != nil {
+ objectMap["tags"] = stup.Tags
+ }
+ return json.Marshal(objectMap)
+}
+
+// Topic eventGrid Topic
+type Topic struct {
+ autorest.Response `json:"-"`
+ // TopicProperties - Properties of the topic.
+ *TopicProperties `json:"properties,omitempty"`
+ // Sku - The Sku pricing tier for the topic.
+ Sku *ResourceSku `json:"sku,omitempty"`
+ // Identity - Identity information for the resource.
+ Identity *IdentityInfo `json:"identity,omitempty"`
+ // Location - Location of the resource.
+ Location *string `json:"location,omitempty"`
+ // Tags - Tags of the resource.
+ Tags map[string]*string `json:"tags"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for Topic.
+func (t Topic) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if t.TopicProperties != nil {
+ objectMap["properties"] = t.TopicProperties
+ }
+ if t.Sku != nil {
+ objectMap["sku"] = t.Sku
+ }
+ if t.Identity != nil {
+ objectMap["identity"] = t.Identity
+ }
+ if t.Location != nil {
+ objectMap["location"] = t.Location
+ }
+ if t.Tags != nil {
+ objectMap["tags"] = t.Tags
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for Topic struct.
+func (t *Topic) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var topicProperties TopicProperties
+ err = json.Unmarshal(*v, &topicProperties)
+ if err != nil {
+ return err
+ }
+ t.TopicProperties = &topicProperties
+ }
+ case "sku":
+ if v != nil {
+ var sku ResourceSku
+ err = json.Unmarshal(*v, &sku)
+ if err != nil {
+ return err
+ }
+ t.Sku = &sku
+ }
+ case "identity":
+ if v != nil {
+ var identity IdentityInfo
+ err = json.Unmarshal(*v, &identity)
+ if err != nil {
+ return err
+ }
+ t.Identity = &identity
+ }
+ case "location":
+ if v != nil {
+ var location string
+ err = json.Unmarshal(*v, &location)
+ if err != nil {
+ return err
+ }
+ t.Location = &location
+ }
+ case "tags":
+ if v != nil {
+ var tags map[string]*string
+ err = json.Unmarshal(*v, &tags)
+ if err != nil {
+ return err
+ }
+ t.Tags = tags
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ t.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ t.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ t.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// TopicProperties properties of the Topic
+type TopicProperties struct {
+ PrivateEndpointConnections *[]PrivateEndpointConnection `json:"privateEndpointConnections,omitempty"`
+ // ProvisioningState - READ-ONLY; Provisioning state of the topic. Possible values include: 'TopicProvisioningStateCreating', 'TopicProvisioningStateUpdating', 'TopicProvisioningStateDeleting', 'TopicProvisioningStateSucceeded', 'TopicProvisioningStateCanceled', 'TopicProvisioningStateFailed'
+ ProvisioningState TopicProvisioningState `json:"provisioningState,omitempty"`
+ // Endpoint - READ-ONLY; Endpoint for the topic.
+ Endpoint *string `json:"endpoint,omitempty"`
+ // InputSchema - This determines the format that Event Grid should expect for incoming events published to the topic. Possible values include: 'InputSchemaEventGridSchema', 'InputSchemaCustomEventSchema', 'InputSchemaCloudEventSchemaV10'
+ InputSchema InputSchema `json:"inputSchema,omitempty"`
+ // InputSchemaMapping - This enables publishing using custom event schemas. An InputSchemaMapping can be specified to map various properties of a source schema to various required properties of the EventGridEvent schema.
+ InputSchemaMapping BasicInputSchemaMapping `json:"inputSchemaMapping,omitempty"`
+ // MetricResourceID - READ-ONLY; Metric resource id for the topic.
+ MetricResourceID *string `json:"metricResourceId,omitempty"`
+ // PublicNetworkAccess - This determines if traffic is allowed over public network. By default it is enabled.
+ // You can further restrict to specific IPs by configuring . Possible values include: 'Enabled', 'Disabled'
+ PublicNetworkAccess PublicNetworkAccess `json:"publicNetworkAccess,omitempty"`
+ // InboundIPRules - This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled.
+ InboundIPRules *[]InboundIPRule `json:"inboundIpRules,omitempty"`
+}
+
+// UnmarshalJSON is the custom unmarshaler for TopicProperties struct.
+func (tp *TopicProperties) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "privateEndpointConnections":
+ if v != nil {
+ var privateEndpointConnections []PrivateEndpointConnection
+ err = json.Unmarshal(*v, &privateEndpointConnections)
+ if err != nil {
+ return err
+ }
+ tp.PrivateEndpointConnections = &privateEndpointConnections
+ }
+ case "provisioningState":
+ if v != nil {
+ var provisioningState TopicProvisioningState
+ err = json.Unmarshal(*v, &provisioningState)
+ if err != nil {
+ return err
+ }
+ tp.ProvisioningState = provisioningState
+ }
+ case "endpoint":
+ if v != nil {
+ var endpoint string
+ err = json.Unmarshal(*v, &endpoint)
+ if err != nil {
+ return err
+ }
+ tp.Endpoint = &endpoint
+ }
+ case "inputSchema":
+ if v != nil {
+ var inputSchema InputSchema
+ err = json.Unmarshal(*v, &inputSchema)
+ if err != nil {
+ return err
+ }
+ tp.InputSchema = inputSchema
+ }
+ case "inputSchemaMapping":
+ if v != nil {
+ inputSchemaMapping, err := unmarshalBasicInputSchemaMapping(*v)
+ if err != nil {
+ return err
+ }
+ tp.InputSchemaMapping = inputSchemaMapping
+ }
+ case "metricResourceId":
+ if v != nil {
+ var metricResourceID string
+ err = json.Unmarshal(*v, &metricResourceID)
+ if err != nil {
+ return err
+ }
+ tp.MetricResourceID = &metricResourceID
+ }
+ case "publicNetworkAccess":
+ if v != nil {
+ var publicNetworkAccess PublicNetworkAccess
+ err = json.Unmarshal(*v, &publicNetworkAccess)
+ if err != nil {
+ return err
+ }
+ tp.PublicNetworkAccess = publicNetworkAccess
+ }
+ case "inboundIpRules":
+ if v != nil {
+ var inboundIPRules []InboundIPRule
+ err = json.Unmarshal(*v, &inboundIPRules)
+ if err != nil {
+ return err
+ }
+ tp.InboundIPRules = &inboundIPRules
+ }
+ }
+ }
+
+ return nil
+}
+
+// TopicRegenerateKeyRequest topic regenerate share access key request
+type TopicRegenerateKeyRequest struct {
+ // KeyName - Key name to regenerate key1 or key2
+ KeyName *string `json:"keyName,omitempty"`
+}
+
+// TopicsCreateOrUpdateFuture an abstraction for monitoring and retrieving the results of a long-running
+// operation.
+type TopicsCreateOrUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *TopicsCreateOrUpdateFuture) Result(client TopicsClient) (t Topic, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.TopicsCreateOrUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.TopicsCreateOrUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if t.Response.Response, err = future.GetResult(sender); err == nil && t.Response.Response.StatusCode != http.StatusNoContent {
+ t, err = client.CreateOrUpdateResponder(t.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.TopicsCreateOrUpdateFuture", "Result", t.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// TopicsDeleteFuture an abstraction for monitoring and retrieving the results of a long-running operation.
+type TopicsDeleteFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *TopicsDeleteFuture) Result(client TopicsClient) (ar autorest.Response, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.TopicsDeleteFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.TopicsDeleteFuture")
+ return
+ }
+ ar.Response = future.Response()
+ return
+}
+
+// TopicSharedAccessKeys shared access keys of the Topic
+type TopicSharedAccessKeys struct {
+ autorest.Response `json:"-"`
+ // Key1 - Shared access key1 for the topic.
+ Key1 *string `json:"key1,omitempty"`
+ // Key2 - Shared access key2 for the topic.
+ Key2 *string `json:"key2,omitempty"`
+}
+
+// TopicsListResult result of the List Topics operation
+type TopicsListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of Topics
+ Value *[]Topic `json:"value,omitempty"`
+ // NextLink - A link for the next page of topics
+ NextLink *string `json:"nextLink,omitempty"`
+}
+
+// TopicsListResultIterator provides access to a complete listing of Topic values.
+type TopicsListResultIterator struct {
+ i int
+ page TopicsListResultPage
+}
+
+// NextWithContext advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+func (iter *TopicsListResultIterator) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/TopicsListResultIterator.NextWithContext")
+ defer func() {
+ sc := -1
+ if iter.Response().Response.Response != nil {
+ sc = iter.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ iter.i++
+ if iter.i < len(iter.page.Values()) {
+ return nil
+ }
+ err = iter.page.NextWithContext(ctx)
+ if err != nil {
+ iter.i--
+ return err
+ }
+ iter.i = 0
+ return nil
+}
+
+// Next advances to the next value. If there was an error making
+// the request the iterator does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (iter *TopicsListResultIterator) Next() error {
+ return iter.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the enumeration should be started or is not yet complete.
+func (iter TopicsListResultIterator) NotDone() bool {
+ return iter.page.NotDone() && iter.i < len(iter.page.Values())
+}
+
+// Response returns the raw server response from the last page request.
+func (iter TopicsListResultIterator) Response() TopicsListResult {
+ return iter.page.Response()
+}
+
+// Value returns the current value or a zero-initialized value if the
+// iterator has advanced beyond the end of the collection.
+func (iter TopicsListResultIterator) Value() Topic {
+ if !iter.page.NotDone() {
+ return Topic{}
+ }
+ return iter.page.Values()[iter.i]
+}
+
+// Creates a new instance of the TopicsListResultIterator type.
+func NewTopicsListResultIterator(page TopicsListResultPage) TopicsListResultIterator {
+ return TopicsListResultIterator{page: page}
+}
+
+// IsEmpty returns true if the ListResult contains no values.
+func (tlr TopicsListResult) IsEmpty() bool {
+ return tlr.Value == nil || len(*tlr.Value) == 0
+}
+
+// topicsListResultPreparer prepares a request to retrieve the next set of results.
+// It returns nil if no more results exist.
+func (tlr TopicsListResult) topicsListResultPreparer(ctx context.Context) (*http.Request, error) {
+ if tlr.NextLink == nil || len(to.String(tlr.NextLink)) < 1 {
+ return nil, nil
+ }
+ return autorest.Prepare((&http.Request{}).WithContext(ctx),
+ autorest.AsJSON(),
+ autorest.AsGet(),
+ autorest.WithBaseURL(to.String(tlr.NextLink)))
+}
+
+// TopicsListResultPage contains a page of Topic values.
+type TopicsListResultPage struct {
+ fn func(context.Context, TopicsListResult) (TopicsListResult, error)
+ tlr TopicsListResult
+}
+
+// NextWithContext advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+func (page *TopicsListResultPage) NextWithContext(ctx context.Context) (err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/TopicsListResultPage.NextWithContext")
+ defer func() {
+ sc := -1
+ if page.Response().Response.Response != nil {
+ sc = page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ next, err := page.fn(ctx, page.tlr)
+ if err != nil {
+ return err
+ }
+ page.tlr = next
+ return nil
+}
+
+// Next advances to the next page of values. If there was an error making
+// the request the page does not advance and the error is returned.
+// Deprecated: Use NextWithContext() instead.
+func (page *TopicsListResultPage) Next() error {
+ return page.NextWithContext(context.Background())
+}
+
+// NotDone returns true if the page enumeration should be started or is not yet complete.
+func (page TopicsListResultPage) NotDone() bool {
+ return !page.tlr.IsEmpty()
+}
+
+// Response returns the raw server response from the last page request.
+func (page TopicsListResultPage) Response() TopicsListResult {
+ return page.tlr
+}
+
+// Values returns the slice of values for the current page or nil if there are no values.
+func (page TopicsListResultPage) Values() []Topic {
+ if page.tlr.IsEmpty() {
+ return nil
+ }
+ return *page.tlr.Value
+}
+
+// Creates a new instance of the TopicsListResultPage type.
+func NewTopicsListResultPage(getNextPage func(context.Context, TopicsListResult) (TopicsListResult, error)) TopicsListResultPage {
+ return TopicsListResultPage{fn: getNextPage}
+}
+
+// TopicsUpdateFuture an abstraction for monitoring and retrieving the results of a long-running operation.
+type TopicsUpdateFuture struct {
+ azure.Future
+}
+
+// Result returns the result of the asynchronous operation.
+// If the operation has not completed it will return an error.
+func (future *TopicsUpdateFuture) Result(client TopicsClient) (t Topic, err error) {
+ var done bool
+ done, err = future.DoneWithContext(context.Background(), client)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.TopicsUpdateFuture", "Result", future.Response(), "Polling failure")
+ return
+ }
+ if !done {
+ err = azure.NewAsyncOpIncompleteError("eventgrid.TopicsUpdateFuture")
+ return
+ }
+ sender := autorest.DecorateSender(client, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+ if t.Response.Response, err = future.GetResult(sender); err == nil && t.Response.Response.StatusCode != http.StatusNoContent {
+ t, err = client.UpdateResponder(t.Response.Response)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.TopicsUpdateFuture", "Result", t.Response.Response, "Failure responding to request")
+ }
+ }
+ return
+}
+
+// TopicTypeInfo properties of a topic type info.
+type TopicTypeInfo struct {
+ autorest.Response `json:"-"`
+ // TopicTypeProperties - Properties of the topic type info
+ *TopicTypeProperties `json:"properties,omitempty"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for TopicTypeInfo.
+func (tti TopicTypeInfo) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if tti.TopicTypeProperties != nil {
+ objectMap["properties"] = tti.TopicTypeProperties
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for TopicTypeInfo struct.
+func (tti *TopicTypeInfo) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var topicTypeProperties TopicTypeProperties
+ err = json.Unmarshal(*v, &topicTypeProperties)
+ if err != nil {
+ return err
+ }
+ tti.TopicTypeProperties = &topicTypeProperties
+ }
+ case "id":
+ if v != nil {
+ var ID string
+ err = json.Unmarshal(*v, &ID)
+ if err != nil {
+ return err
+ }
+ tti.ID = &ID
+ }
+ case "name":
+ if v != nil {
+ var name string
+ err = json.Unmarshal(*v, &name)
+ if err != nil {
+ return err
+ }
+ tti.Name = &name
+ }
+ case "type":
+ if v != nil {
+ var typeVar string
+ err = json.Unmarshal(*v, &typeVar)
+ if err != nil {
+ return err
+ }
+ tti.Type = &typeVar
+ }
+ }
+ }
+
+ return nil
+}
+
+// TopicTypeProperties properties of a topic type.
+type TopicTypeProperties struct {
+ // Provider - Namespace of the provider of the topic type.
+ Provider *string `json:"provider,omitempty"`
+ // DisplayName - Display Name for the topic type.
+ DisplayName *string `json:"displayName,omitempty"`
+ // Description - Description of the topic type.
+ Description *string `json:"description,omitempty"`
+ // ResourceRegionType - Region type of the resource. Possible values include: 'RegionalResource', 'GlobalResource'
+ ResourceRegionType ResourceRegionType `json:"resourceRegionType,omitempty"`
+ // ProvisioningState - Provisioning state of the topic type. Possible values include: 'TopicTypeProvisioningStateCreating', 'TopicTypeProvisioningStateUpdating', 'TopicTypeProvisioningStateDeleting', 'TopicTypeProvisioningStateSucceeded', 'TopicTypeProvisioningStateCanceled', 'TopicTypeProvisioningStateFailed'
+ ProvisioningState TopicTypeProvisioningState `json:"provisioningState,omitempty"`
+ // SupportedLocations - List of locations supported by this topic type.
+ SupportedLocations *[]string `json:"supportedLocations,omitempty"`
+ // SourceResourceFormat - Source resource format.
+ SourceResourceFormat *string `json:"sourceResourceFormat,omitempty"`
+}
+
+// TopicTypesListResult result of the List Topic Types operation
+type TopicTypesListResult struct {
+ autorest.Response `json:"-"`
+ // Value - A collection of topic types
+ Value *[]TopicTypeInfo `json:"value,omitempty"`
+}
+
+// TopicUpdateParameterProperties information of topic update parameter properties.
+type TopicUpdateParameterProperties struct {
+ // PublicNetworkAccess - This determines if traffic is allowed over public network. By default it is enabled.
+ // You can further restrict to specific IPs by configuring . Possible values include: 'Enabled', 'Disabled'
+ PublicNetworkAccess PublicNetworkAccess `json:"publicNetworkAccess,omitempty"`
+ // InboundIPRules - This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled.
+ InboundIPRules *[]InboundIPRule `json:"inboundIpRules,omitempty"`
+}
+
+// TopicUpdateParameters properties of the Topic update
+type TopicUpdateParameters struct {
+ // Tags - Tags of the resource.
+ Tags map[string]*string `json:"tags"`
+ // Identity - Resource identity information.
+ Identity *IdentityInfo `json:"identity,omitempty"`
+ // TopicUpdateParameterProperties - Properties of the resource.
+ *TopicUpdateParameterProperties `json:"properties,omitempty"`
+ // Sku - The Sku pricing tier for the topic.
+ Sku *ResourceSku `json:"sku,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for TopicUpdateParameters.
+func (tup TopicUpdateParameters) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if tup.Tags != nil {
+ objectMap["tags"] = tup.Tags
+ }
+ if tup.Identity != nil {
+ objectMap["identity"] = tup.Identity
+ }
+ if tup.TopicUpdateParameterProperties != nil {
+ objectMap["properties"] = tup.TopicUpdateParameterProperties
+ }
+ if tup.Sku != nil {
+ objectMap["sku"] = tup.Sku
+ }
+ return json.Marshal(objectMap)
+}
+
+// UnmarshalJSON is the custom unmarshaler for TopicUpdateParameters struct.
+func (tup *TopicUpdateParameters) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "tags":
+ if v != nil {
+ var tags map[string]*string
+ err = json.Unmarshal(*v, &tags)
+ if err != nil {
+ return err
+ }
+ tup.Tags = tags
+ }
+ case "identity":
+ if v != nil {
+ var identity IdentityInfo
+ err = json.Unmarshal(*v, &identity)
+ if err != nil {
+ return err
+ }
+ tup.Identity = &identity
+ }
+ case "properties":
+ if v != nil {
+ var topicUpdateParameterProperties TopicUpdateParameterProperties
+ err = json.Unmarshal(*v, &topicUpdateParameterProperties)
+ if err != nil {
+ return err
+ }
+ tup.TopicUpdateParameterProperties = &topicUpdateParameterProperties
+ }
+ case "sku":
+ if v != nil {
+ var sku ResourceSku
+ err = json.Unmarshal(*v, &sku)
+ if err != nil {
+ return err
+ }
+ tup.Sku = &sku
+ }
+ }
+ }
+
+ return nil
+}
+
+// TrackedResource definition of a Tracked Resource.
+type TrackedResource struct {
+ // Location - Location of the resource.
+ Location *string `json:"location,omitempty"`
+ // Tags - Tags of the resource.
+ Tags map[string]*string `json:"tags"`
+ // ID - READ-ONLY; Fully qualified identifier of the resource.
+ ID *string `json:"id,omitempty"`
+ // Name - READ-ONLY; Name of the resource
+ Name *string `json:"name,omitempty"`
+ // Type - READ-ONLY; Type of the resource
+ Type *string `json:"type,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for TrackedResource.
+func (tr TrackedResource) MarshalJSON() ([]byte, error) {
+ objectMap := make(map[string]interface{})
+ if tr.Location != nil {
+ objectMap["location"] = tr.Location
+ }
+ if tr.Tags != nil {
+ objectMap["tags"] = tr.Tags
+ }
+ return json.Marshal(objectMap)
+}
+
+// UserIdentityProperties the information about the user identity.
+type UserIdentityProperties struct {
+ // PrincipalID - The principal id of user assigned identity.
+ PrincipalID *string `json:"principalId,omitempty"`
+ // ClientID - The client id of user assigned identity.
+ ClientID *string `json:"clientId,omitempty"`
+}
+
+// WebHookEventSubscriptionDestination information about the webhook destination for an event subscription.
+type WebHookEventSubscriptionDestination struct {
+ // WebHookEventSubscriptionDestinationProperties - WebHook Properties of the event subscription destination.
+ *WebHookEventSubscriptionDestinationProperties `json:"properties,omitempty"`
+ // EndpointType - Possible values include: 'EndpointTypeEventSubscriptionDestination', 'EndpointTypeWebHook', 'EndpointTypeEventHub', 'EndpointTypeStorageQueue', 'EndpointTypeHybridConnection', 'EndpointTypeServiceBusQueue', 'EndpointTypeServiceBusTopic', 'EndpointTypeAzureFunction'
+ EndpointType EndpointType `json:"endpointType,omitempty"`
+}
+
+// MarshalJSON is the custom marshaler for WebHookEventSubscriptionDestination.
+func (whesd WebHookEventSubscriptionDestination) MarshalJSON() ([]byte, error) {
+ whesd.EndpointType = EndpointTypeWebHook
+ objectMap := make(map[string]interface{})
+ if whesd.WebHookEventSubscriptionDestinationProperties != nil {
+ objectMap["properties"] = whesd.WebHookEventSubscriptionDestinationProperties
+ }
+ if whesd.EndpointType != "" {
+ objectMap["endpointType"] = whesd.EndpointType
+ }
+ return json.Marshal(objectMap)
+}
+
+// AsWebHookEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
+func (whesd WebHookEventSubscriptionDestination) AsWebHookEventSubscriptionDestination() (*WebHookEventSubscriptionDestination, bool) {
+ return &whesd, true
+}
+
+// AsEventHubEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
+func (whesd WebHookEventSubscriptionDestination) AsEventHubEventSubscriptionDestination() (*EventHubEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsStorageQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
+func (whesd WebHookEventSubscriptionDestination) AsStorageQueueEventSubscriptionDestination() (*StorageQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsHybridConnectionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
+func (whesd WebHookEventSubscriptionDestination) AsHybridConnectionEventSubscriptionDestination() (*HybridConnectionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusQueueEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
+func (whesd WebHookEventSubscriptionDestination) AsServiceBusQueueEventSubscriptionDestination() (*ServiceBusQueueEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsServiceBusTopicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
+func (whesd WebHookEventSubscriptionDestination) AsServiceBusTopicEventSubscriptionDestination() (*ServiceBusTopicEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsAzureFunctionEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
+func (whesd WebHookEventSubscriptionDestination) AsAzureFunctionEventSubscriptionDestination() (*AzureFunctionEventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
+func (whesd WebHookEventSubscriptionDestination) AsEventSubscriptionDestination() (*EventSubscriptionDestination, bool) {
+ return nil, false
+}
+
+// AsBasicEventSubscriptionDestination is the BasicEventSubscriptionDestination implementation for WebHookEventSubscriptionDestination.
+func (whesd WebHookEventSubscriptionDestination) AsBasicEventSubscriptionDestination() (BasicEventSubscriptionDestination, bool) {
+ return &whesd, true
+}
+
+// UnmarshalJSON is the custom unmarshaler for WebHookEventSubscriptionDestination struct.
+func (whesd *WebHookEventSubscriptionDestination) UnmarshalJSON(body []byte) error {
+ var m map[string]*json.RawMessage
+ err := json.Unmarshal(body, &m)
+ if err != nil {
+ return err
+ }
+ for k, v := range m {
+ switch k {
+ case "properties":
+ if v != nil {
+ var webHookEventSubscriptionDestinationProperties WebHookEventSubscriptionDestinationProperties
+ err = json.Unmarshal(*v, &webHookEventSubscriptionDestinationProperties)
+ if err != nil {
+ return err
+ }
+ whesd.WebHookEventSubscriptionDestinationProperties = &webHookEventSubscriptionDestinationProperties
+ }
+ case "endpointType":
+ if v != nil {
+ var endpointType EndpointType
+ err = json.Unmarshal(*v, &endpointType)
+ if err != nil {
+ return err
+ }
+ whesd.EndpointType = endpointType
+ }
+ }
+ }
+
+ return nil
+}
+
+// WebHookEventSubscriptionDestinationProperties information about the webhook destination properties for
+// an event subscription.
+type WebHookEventSubscriptionDestinationProperties struct {
+ // EndpointURL - The URL that represents the endpoint of the destination of an event subscription.
+ EndpointURL *string `json:"endpointUrl,omitempty"`
+ // EndpointBaseURL - READ-ONLY; The base URL that represents the endpoint of the destination of an event subscription.
+ EndpointBaseURL *string `json:"endpointBaseUrl,omitempty"`
+ // MaxEventsPerBatch - Maximum number of events per batch.
+ MaxEventsPerBatch *int32 `json:"maxEventsPerBatch,omitempty"`
+ // PreferredBatchSizeInKilobytes - Preferred batch size in Kilobytes.
+ PreferredBatchSizeInKilobytes *int32 `json:"preferredBatchSizeInKilobytes,omitempty"`
+ // AzureActiveDirectoryTenantID - The Azure Active Directory Tenant ID to get the access token that will be included as the bearer token in delivery requests.
+ AzureActiveDirectoryTenantID *string `json:"azureActiveDirectoryTenantId,omitempty"`
+ // AzureActiveDirectoryApplicationIDOrURI - The Azure Active Directory Application ID or URI to get the access token that will be included as the bearer token in delivery requests.
+ AzureActiveDirectoryApplicationIDOrURI *string `json:"azureActiveDirectoryApplicationIdOrUri,omitempty"`
+}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/operations.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/operations.go
similarity index 98%
rename from vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/operations.go
rename to vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/operations.go
index 01730ff5f85b..23de4c32a9ca 100644
--- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/operations.go
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/operations.go
@@ -41,7 +41,7 @@ func NewOperationsClientWithBaseURI(baseURI string, subscriptionID string) Opera
return OperationsClient{NewWithBaseURI(baseURI, subscriptionID)}
}
-// List list the available operations supported by the Microsoft.EventGrid resource provider
+// List list the available operations supported by the Microsoft.EventGrid resource provider.
func (client OperationsClient) List(ctx context.Context) (result OperationsListResult, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/OperationsClient.List")
@@ -76,7 +76,7 @@ func (client OperationsClient) List(ctx context.Context) (result OperationsListR
// ListPreparer prepares the List request.
func (client OperationsClient) ListPreparer(ctx context.Context) (*http.Request, error) {
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/partnernamespaces.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/partnernamespaces.go
new file mode 100644
index 000000000000..bc2406c8b041
--- /dev/null
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/partnernamespaces.go
@@ -0,0 +1,764 @@
+package eventgrid
+
+// Copyright (c) Microsoft and contributors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+ "context"
+ "github.com/Azure/go-autorest/autorest"
+ "github.com/Azure/go-autorest/autorest/azure"
+ "github.com/Azure/go-autorest/autorest/validation"
+ "github.com/Azure/go-autorest/tracing"
+ "net/http"
+)
+
+// PartnerNamespacesClient is the azure EventGrid Management Client
+type PartnerNamespacesClient struct {
+ BaseClient
+}
+
+// NewPartnerNamespacesClient creates an instance of the PartnerNamespacesClient client.
+func NewPartnerNamespacesClient(subscriptionID string) PartnerNamespacesClient {
+ return NewPartnerNamespacesClientWithBaseURI(DefaultBaseURI, subscriptionID)
+}
+
+// NewPartnerNamespacesClientWithBaseURI creates an instance of the PartnerNamespacesClient client using a custom
+// endpoint. Use this when interacting with an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure
+// stack).
+func NewPartnerNamespacesClientWithBaseURI(baseURI string, subscriptionID string) PartnerNamespacesClient {
+ return PartnerNamespacesClient{NewWithBaseURI(baseURI, subscriptionID)}
+}
+
+// CreateOrUpdate asynchronously creates a new partner namespace with the specified parameters.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerNamespaceName - name of the partner namespace.
+// partnerNamespaceInfo - partnerNamespace information.
+func (client PartnerNamespacesClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, partnerNamespaceName string, partnerNamespaceInfo PartnerNamespace) (result PartnerNamespacesCreateOrUpdateFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerNamespacesClient.CreateOrUpdate")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.CreateOrUpdatePreparer(ctx, resourceGroupName, partnerNamespaceName, partnerNamespaceInfo)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "CreateOrUpdate", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.CreateOrUpdateSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "CreateOrUpdate", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// CreateOrUpdatePreparer prepares the CreateOrUpdate request.
+func (client PartnerNamespacesClient) CreateOrUpdatePreparer(ctx context.Context, resourceGroupName string, partnerNamespaceName string, partnerNamespaceInfo PartnerNamespace) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerNamespaceName": autorest.Encode("path", partnerNamespaceName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPut(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}", pathParameters),
+ autorest.WithJSON(partnerNamespaceInfo),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerNamespacesClient) CreateOrUpdateSender(req *http.Request) (future PartnerNamespacesCreateOrUpdateFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always
+// closes the http.Response Body.
+func (client PartnerNamespacesClient) CreateOrUpdateResponder(resp *http.Response) (result PartnerNamespace, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// Delete delete existing partner namespace.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerNamespaceName - name of the partner namespace.
+func (client PartnerNamespacesClient) Delete(ctx context.Context, resourceGroupName string, partnerNamespaceName string) (result PartnerNamespacesDeleteFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerNamespacesClient.Delete")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.DeletePreparer(ctx, resourceGroupName, partnerNamespaceName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "Delete", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.DeleteSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "Delete", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// DeletePreparer prepares the Delete request.
+func (client PartnerNamespacesClient) DeletePreparer(ctx context.Context, resourceGroupName string, partnerNamespaceName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerNamespaceName": autorest.Encode("path", partnerNamespaceName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsDelete(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// DeleteSender sends the Delete request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerNamespacesClient) DeleteSender(req *http.Request) (future PartnerNamespacesDeleteFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// DeleteResponder handles the response to the Delete request. The method always
+// closes the http.Response Body.
+func (client PartnerNamespacesClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent),
+ autorest.ByClosing())
+ result.Response = resp
+ return
+}
+
+// Get get properties of a partner namespace.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerNamespaceName - name of the partner namespace.
+func (client PartnerNamespacesClient) Get(ctx context.Context, resourceGroupName string, partnerNamespaceName string) (result PartnerNamespace, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerNamespacesClient.Get")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetPreparer(ctx, resourceGroupName, partnerNamespaceName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "Get", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "Get", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "Get", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetPreparer prepares the Get request.
+func (client PartnerNamespacesClient) GetPreparer(ctx context.Context, resourceGroupName string, partnerNamespaceName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerNamespaceName": autorest.Encode("path", partnerNamespaceName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetSender sends the Get request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerNamespacesClient) GetSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// GetResponder handles the response to the Get request. The method always
+// closes the http.Response Body.
+func (client PartnerNamespacesClient) GetResponder(resp *http.Response) (result PartnerNamespace, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// ListByResourceGroup list all the partner namespaces under a resource group.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client PartnerNamespacesClient) ListByResourceGroup(ctx context.Context, resourceGroupName string, filter string, top *int32) (result PartnerNamespacesListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerNamespacesClient.ListByResourceGroup")
+ defer func() {
+ sc := -1
+ if result.pnlr.Response.Response != nil {
+ sc = result.pnlr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listByResourceGroupNextResults
+ req, err := client.ListByResourceGroupPreparer(ctx, resourceGroupName, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "ListByResourceGroup", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListByResourceGroupSender(req)
+ if err != nil {
+ result.pnlr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "ListByResourceGroup", resp, "Failure sending request")
+ return
+ }
+
+ result.pnlr, err = client.ListByResourceGroupResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "ListByResourceGroup", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListByResourceGroupPreparer prepares the ListByResourceGroup request.
+func (client PartnerNamespacesClient) ListByResourceGroupPreparer(ctx context.Context, resourceGroupName string, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListByResourceGroupSender sends the ListByResourceGroup request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerNamespacesClient) ListByResourceGroupSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListByResourceGroupResponder handles the response to the ListByResourceGroup request. The method always
+// closes the http.Response Body.
+func (client PartnerNamespacesClient) ListByResourceGroupResponder(resp *http.Response) (result PartnerNamespacesListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listByResourceGroupNextResults retrieves the next set of results, if any.
+func (client PartnerNamespacesClient) listByResourceGroupNextResults(ctx context.Context, lastResults PartnerNamespacesListResult) (result PartnerNamespacesListResult, err error) {
+ req, err := lastResults.partnerNamespacesListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "listByResourceGroupNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByResourceGroupSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "listByResourceGroupNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByResourceGroupResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "listByResourceGroupNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByResourceGroupComplete enumerates all values, automatically crossing page boundaries as required.
+func (client PartnerNamespacesClient) ListByResourceGroupComplete(ctx context.Context, resourceGroupName string, filter string, top *int32) (result PartnerNamespacesListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerNamespacesClient.ListByResourceGroup")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByResourceGroup(ctx, resourceGroupName, filter, top)
+ return
+}
+
+// ListBySubscription list all the partner namespaces under an Azure subscription.
+// Parameters:
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client PartnerNamespacesClient) ListBySubscription(ctx context.Context, filter string, top *int32) (result PartnerNamespacesListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerNamespacesClient.ListBySubscription")
+ defer func() {
+ sc := -1
+ if result.pnlr.Response.Response != nil {
+ sc = result.pnlr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listBySubscriptionNextResults
+ req, err := client.ListBySubscriptionPreparer(ctx, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "ListBySubscription", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListBySubscriptionSender(req)
+ if err != nil {
+ result.pnlr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "ListBySubscription", resp, "Failure sending request")
+ return
+ }
+
+ result.pnlr, err = client.ListBySubscriptionResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "ListBySubscription", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListBySubscriptionPreparer prepares the ListBySubscription request.
+func (client PartnerNamespacesClient) ListBySubscriptionPreparer(ctx context.Context, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/partnerNamespaces", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListBySubscriptionSender sends the ListBySubscription request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerNamespacesClient) ListBySubscriptionSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListBySubscriptionResponder handles the response to the ListBySubscription request. The method always
+// closes the http.Response Body.
+func (client PartnerNamespacesClient) ListBySubscriptionResponder(resp *http.Response) (result PartnerNamespacesListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listBySubscriptionNextResults retrieves the next set of results, if any.
+func (client PartnerNamespacesClient) listBySubscriptionNextResults(ctx context.Context, lastResults PartnerNamespacesListResult) (result PartnerNamespacesListResult, err error) {
+ req, err := lastResults.partnerNamespacesListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "listBySubscriptionNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListBySubscriptionSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "listBySubscriptionNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListBySubscriptionResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "listBySubscriptionNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListBySubscriptionComplete enumerates all values, automatically crossing page boundaries as required.
+func (client PartnerNamespacesClient) ListBySubscriptionComplete(ctx context.Context, filter string, top *int32) (result PartnerNamespacesListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerNamespacesClient.ListBySubscription")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListBySubscription(ctx, filter, top)
+ return
+}
+
+// ListSharedAccessKeys list the two keys used to publish to a partner namespace.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerNamespaceName - name of the partner namespace.
+func (client PartnerNamespacesClient) ListSharedAccessKeys(ctx context.Context, resourceGroupName string, partnerNamespaceName string) (result PartnerNamespaceSharedAccessKeys, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerNamespacesClient.ListSharedAccessKeys")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.ListSharedAccessKeysPreparer(ctx, resourceGroupName, partnerNamespaceName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "ListSharedAccessKeys", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListSharedAccessKeysSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "ListSharedAccessKeys", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.ListSharedAccessKeysResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "ListSharedAccessKeys", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListSharedAccessKeysPreparer prepares the ListSharedAccessKeys request.
+func (client PartnerNamespacesClient) ListSharedAccessKeysPreparer(ctx context.Context, resourceGroupName string, partnerNamespaceName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerNamespaceName": autorest.Encode("path", partnerNamespaceName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsPost(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}/listKeys", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListSharedAccessKeysSender sends the ListSharedAccessKeys request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerNamespacesClient) ListSharedAccessKeysSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListSharedAccessKeysResponder handles the response to the ListSharedAccessKeys request. The method always
+// closes the http.Response Body.
+func (client PartnerNamespacesClient) ListSharedAccessKeysResponder(resp *http.Response) (result PartnerNamespaceSharedAccessKeys, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// RegenerateKey regenerate a shared access key for a partner namespace.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerNamespaceName - name of the partner namespace.
+// regenerateKeyRequest - request body to regenerate key.
+func (client PartnerNamespacesClient) RegenerateKey(ctx context.Context, resourceGroupName string, partnerNamespaceName string, regenerateKeyRequest PartnerNamespaceRegenerateKeyRequest) (result PartnerNamespaceSharedAccessKeys, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerNamespacesClient.RegenerateKey")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ if err := validation.Validate([]validation.Validation{
+ {TargetValue: regenerateKeyRequest,
+ Constraints: []validation.Constraint{{Target: "regenerateKeyRequest.KeyName", Name: validation.Null, Rule: true, Chain: nil}}}}); err != nil {
+ return result, validation.NewError("eventgrid.PartnerNamespacesClient", "RegenerateKey", err.Error())
+ }
+
+ req, err := client.RegenerateKeyPreparer(ctx, resourceGroupName, partnerNamespaceName, regenerateKeyRequest)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "RegenerateKey", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.RegenerateKeySender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "RegenerateKey", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.RegenerateKeyResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "RegenerateKey", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// RegenerateKeyPreparer prepares the RegenerateKey request.
+func (client PartnerNamespacesClient) RegenerateKeyPreparer(ctx context.Context, resourceGroupName string, partnerNamespaceName string, regenerateKeyRequest PartnerNamespaceRegenerateKeyRequest) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerNamespaceName": autorest.Encode("path", partnerNamespaceName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPost(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}/regenerateKey", pathParameters),
+ autorest.WithJSON(regenerateKeyRequest),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// RegenerateKeySender sends the RegenerateKey request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerNamespacesClient) RegenerateKeySender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// RegenerateKeyResponder handles the response to the RegenerateKey request. The method always
+// closes the http.Response Body.
+func (client PartnerNamespacesClient) RegenerateKeyResponder(resp *http.Response) (result PartnerNamespaceSharedAccessKeys, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// Update asynchronously updates a partner namespace with the specified parameters.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerNamespaceName - name of the partner namespace.
+// partnerNamespaceUpdateParameters - partner namespace update information.
+func (client PartnerNamespacesClient) Update(ctx context.Context, resourceGroupName string, partnerNamespaceName string, partnerNamespaceUpdateParameters PartnerNamespaceUpdateParameters) (result PartnerNamespacesUpdateFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerNamespacesClient.Update")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.UpdatePreparer(ctx, resourceGroupName, partnerNamespaceName, partnerNamespaceUpdateParameters)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "Update", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.UpdateSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerNamespacesClient", "Update", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// UpdatePreparer prepares the Update request.
+func (client PartnerNamespacesClient) UpdatePreparer(ctx context.Context, resourceGroupName string, partnerNamespaceName string, partnerNamespaceUpdateParameters PartnerNamespaceUpdateParameters) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerNamespaceName": autorest.Encode("path", partnerNamespaceName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPatch(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}", pathParameters),
+ autorest.WithJSON(partnerNamespaceUpdateParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// UpdateSender sends the Update request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerNamespacesClient) UpdateSender(req *http.Request) (future PartnerNamespacesUpdateFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// UpdateResponder handles the response to the Update request. The method always
+// closes the http.Response Body.
+func (client PartnerNamespacesClient) UpdateResponder(resp *http.Response) (result PartnerNamespace, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/partnerregistrations.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/partnerregistrations.go
new file mode 100644
index 000000000000..16b202f9eadf
--- /dev/null
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/partnerregistrations.go
@@ -0,0 +1,669 @@
+package eventgrid
+
+// Copyright (c) Microsoft and contributors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+ "context"
+ "github.com/Azure/go-autorest/autorest"
+ "github.com/Azure/go-autorest/autorest/azure"
+ "github.com/Azure/go-autorest/tracing"
+ "net/http"
+)
+
+// PartnerRegistrationsClient is the azure EventGrid Management Client
+type PartnerRegistrationsClient struct {
+ BaseClient
+}
+
+// NewPartnerRegistrationsClient creates an instance of the PartnerRegistrationsClient client.
+func NewPartnerRegistrationsClient(subscriptionID string) PartnerRegistrationsClient {
+ return NewPartnerRegistrationsClientWithBaseURI(DefaultBaseURI, subscriptionID)
+}
+
+// NewPartnerRegistrationsClientWithBaseURI creates an instance of the PartnerRegistrationsClient client using a custom
+// endpoint. Use this when interacting with an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure
+// stack).
+func NewPartnerRegistrationsClientWithBaseURI(baseURI string, subscriptionID string) PartnerRegistrationsClient {
+ return PartnerRegistrationsClient{NewWithBaseURI(baseURI, subscriptionID)}
+}
+
+// CreateOrUpdate creates a new partner registration with the specified parameters.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerRegistrationName - name of the partner registration.
+// partnerRegistrationInfo - partnerRegistration information.
+func (client PartnerRegistrationsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, partnerRegistrationName string, partnerRegistrationInfo PartnerRegistration) (result PartnerRegistration, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerRegistrationsClient.CreateOrUpdate")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.CreateOrUpdatePreparer(ctx, resourceGroupName, partnerRegistrationName, partnerRegistrationInfo)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "CreateOrUpdate", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.CreateOrUpdateSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "CreateOrUpdate", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.CreateOrUpdateResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "CreateOrUpdate", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// CreateOrUpdatePreparer prepares the CreateOrUpdate request.
+func (client PartnerRegistrationsClient) CreateOrUpdatePreparer(ctx context.Context, resourceGroupName string, partnerRegistrationName string, partnerRegistrationInfo PartnerRegistration) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerRegistrationName": autorest.Encode("path", partnerRegistrationName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPut(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations/{partnerRegistrationName}", pathParameters),
+ autorest.WithJSON(partnerRegistrationInfo),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerRegistrationsClient) CreateOrUpdateSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always
+// closes the http.Response Body.
+func (client PartnerRegistrationsClient) CreateOrUpdateResponder(resp *http.Response) (result PartnerRegistration, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// Delete deletes a partner registration with the specified parameters.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerRegistrationName - name of the partner registration.
+func (client PartnerRegistrationsClient) Delete(ctx context.Context, resourceGroupName string, partnerRegistrationName string) (result autorest.Response, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerRegistrationsClient.Delete")
+ defer func() {
+ sc := -1
+ if result.Response != nil {
+ sc = result.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.DeletePreparer(ctx, resourceGroupName, partnerRegistrationName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "Delete", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.DeleteSender(req)
+ if err != nil {
+ result.Response = resp
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "Delete", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.DeleteResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "Delete", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// DeletePreparer prepares the Delete request.
+func (client PartnerRegistrationsClient) DeletePreparer(ctx context.Context, resourceGroupName string, partnerRegistrationName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerRegistrationName": autorest.Encode("path", partnerRegistrationName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsDelete(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations/{partnerRegistrationName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// DeleteSender sends the Delete request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerRegistrationsClient) DeleteSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// DeleteResponder handles the response to the Delete request. The method always
+// closes the http.Response Body.
+func (client PartnerRegistrationsClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent),
+ autorest.ByClosing())
+ result.Response = resp
+ return
+}
+
+// Get gets a partner registration with the specified parameters.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerRegistrationName - name of the partner registration.
+func (client PartnerRegistrationsClient) Get(ctx context.Context, resourceGroupName string, partnerRegistrationName string) (result PartnerRegistration, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerRegistrationsClient.Get")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetPreparer(ctx, resourceGroupName, partnerRegistrationName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "Get", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "Get", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "Get", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetPreparer prepares the Get request.
+func (client PartnerRegistrationsClient) GetPreparer(ctx context.Context, resourceGroupName string, partnerRegistrationName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerRegistrationName": autorest.Encode("path", partnerRegistrationName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations/{partnerRegistrationName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetSender sends the Get request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerRegistrationsClient) GetSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// GetResponder handles the response to the Get request. The method always
+// closes the http.Response Body.
+func (client PartnerRegistrationsClient) GetResponder(resp *http.Response) (result PartnerRegistration, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// List list all partners registrations.
+func (client PartnerRegistrationsClient) List(ctx context.Context) (result PartnerRegistrationsListResult, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerRegistrationsClient.List")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.ListPreparer(ctx)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "List", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "List", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.ListResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "List", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListPreparer prepares the List request.
+func (client PartnerRegistrationsClient) ListPreparer(ctx context.Context) (*http.Request, error) {
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPath("/providers/Microsoft.EventGrid/partnerRegistrations"),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListSender sends the List request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerRegistrationsClient) ListSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, autorest.DoRetryForStatusCodes(client.RetryAttempts, client.RetryDuration, autorest.StatusCodesForRetry...))
+}
+
+// ListResponder handles the response to the List request. The method always
+// closes the http.Response Body.
+func (client PartnerRegistrationsClient) ListResponder(resp *http.Response) (result PartnerRegistrationsListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// ListByResourceGroup list all the partner registrations under a resource group.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client PartnerRegistrationsClient) ListByResourceGroup(ctx context.Context, resourceGroupName string, filter string, top *int32) (result PartnerRegistrationsListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerRegistrationsClient.ListByResourceGroup")
+ defer func() {
+ sc := -1
+ if result.prlr.Response.Response != nil {
+ sc = result.prlr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listByResourceGroupNextResults
+ req, err := client.ListByResourceGroupPreparer(ctx, resourceGroupName, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "ListByResourceGroup", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListByResourceGroupSender(req)
+ if err != nil {
+ result.prlr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "ListByResourceGroup", resp, "Failure sending request")
+ return
+ }
+
+ result.prlr, err = client.ListByResourceGroupResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "ListByResourceGroup", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListByResourceGroupPreparer prepares the ListByResourceGroup request.
+func (client PartnerRegistrationsClient) ListByResourceGroupPreparer(ctx context.Context, resourceGroupName string, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListByResourceGroupSender sends the ListByResourceGroup request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerRegistrationsClient) ListByResourceGroupSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListByResourceGroupResponder handles the response to the ListByResourceGroup request. The method always
+// closes the http.Response Body.
+func (client PartnerRegistrationsClient) ListByResourceGroupResponder(resp *http.Response) (result PartnerRegistrationsListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listByResourceGroupNextResults retrieves the next set of results, if any.
+func (client PartnerRegistrationsClient) listByResourceGroupNextResults(ctx context.Context, lastResults PartnerRegistrationsListResult) (result PartnerRegistrationsListResult, err error) {
+ req, err := lastResults.partnerRegistrationsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "listByResourceGroupNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByResourceGroupSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "listByResourceGroupNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByResourceGroupResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "listByResourceGroupNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByResourceGroupComplete enumerates all values, automatically crossing page boundaries as required.
+func (client PartnerRegistrationsClient) ListByResourceGroupComplete(ctx context.Context, resourceGroupName string, filter string, top *int32) (result PartnerRegistrationsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerRegistrationsClient.ListByResourceGroup")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByResourceGroup(ctx, resourceGroupName, filter, top)
+ return
+}
+
+// ListBySubscription list all the partner registrations under an Azure subscription.
+// Parameters:
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client PartnerRegistrationsClient) ListBySubscription(ctx context.Context, filter string, top *int32) (result PartnerRegistrationsListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerRegistrationsClient.ListBySubscription")
+ defer func() {
+ sc := -1
+ if result.prlr.Response.Response != nil {
+ sc = result.prlr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listBySubscriptionNextResults
+ req, err := client.ListBySubscriptionPreparer(ctx, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "ListBySubscription", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListBySubscriptionSender(req)
+ if err != nil {
+ result.prlr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "ListBySubscription", resp, "Failure sending request")
+ return
+ }
+
+ result.prlr, err = client.ListBySubscriptionResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "ListBySubscription", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListBySubscriptionPreparer prepares the ListBySubscription request.
+func (client PartnerRegistrationsClient) ListBySubscriptionPreparer(ctx context.Context, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/partnerRegistrations", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListBySubscriptionSender sends the ListBySubscription request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerRegistrationsClient) ListBySubscriptionSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListBySubscriptionResponder handles the response to the ListBySubscription request. The method always
+// closes the http.Response Body.
+func (client PartnerRegistrationsClient) ListBySubscriptionResponder(resp *http.Response) (result PartnerRegistrationsListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listBySubscriptionNextResults retrieves the next set of results, if any.
+func (client PartnerRegistrationsClient) listBySubscriptionNextResults(ctx context.Context, lastResults PartnerRegistrationsListResult) (result PartnerRegistrationsListResult, err error) {
+ req, err := lastResults.partnerRegistrationsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "listBySubscriptionNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListBySubscriptionSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "listBySubscriptionNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListBySubscriptionResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "listBySubscriptionNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListBySubscriptionComplete enumerates all values, automatically crossing page boundaries as required.
+func (client PartnerRegistrationsClient) ListBySubscriptionComplete(ctx context.Context, filter string, top *int32) (result PartnerRegistrationsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerRegistrationsClient.ListBySubscription")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListBySubscription(ctx, filter, top)
+ return
+}
+
+// Update updates a partner registration with the specified parameters.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerRegistrationName - name of the partner registration.
+// partnerRegistrationUpdateParameters - partner registration update information.
+func (client PartnerRegistrationsClient) Update(ctx context.Context, resourceGroupName string, partnerRegistrationName string, partnerRegistrationUpdateParameters PartnerRegistrationUpdateParameters) (result PartnerRegistration, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerRegistrationsClient.Update")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.UpdatePreparer(ctx, resourceGroupName, partnerRegistrationName, partnerRegistrationUpdateParameters)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "Update", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.UpdateSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "Update", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.UpdateResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerRegistrationsClient", "Update", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// UpdatePreparer prepares the Update request.
+func (client PartnerRegistrationsClient) UpdatePreparer(ctx context.Context, resourceGroupName string, partnerRegistrationName string, partnerRegistrationUpdateParameters PartnerRegistrationUpdateParameters) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerRegistrationName": autorest.Encode("path", partnerRegistrationName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPatch(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations/{partnerRegistrationName}", pathParameters),
+ autorest.WithJSON(partnerRegistrationUpdateParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// UpdateSender sends the Update request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerRegistrationsClient) UpdateSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// UpdateResponder handles the response to the Update request. The method always
+// closes the http.Response Body.
+func (client PartnerRegistrationsClient) UpdateResponder(resp *http.Response) (result PartnerRegistration, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/partnertopiceventsubscriptions.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/partnertopiceventsubscriptions.go
new file mode 100644
index 000000000000..e671270460ec
--- /dev/null
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/partnertopiceventsubscriptions.go
@@ -0,0 +1,572 @@
+package eventgrid
+
+// Copyright (c) Microsoft and contributors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+ "context"
+ "github.com/Azure/go-autorest/autorest"
+ "github.com/Azure/go-autorest/autorest/azure"
+ "github.com/Azure/go-autorest/tracing"
+ "net/http"
+)
+
+// PartnerTopicEventSubscriptionsClient is the azure EventGrid Management Client
+type PartnerTopicEventSubscriptionsClient struct {
+ BaseClient
+}
+
+// NewPartnerTopicEventSubscriptionsClient creates an instance of the PartnerTopicEventSubscriptionsClient client.
+func NewPartnerTopicEventSubscriptionsClient(subscriptionID string) PartnerTopicEventSubscriptionsClient {
+ return NewPartnerTopicEventSubscriptionsClientWithBaseURI(DefaultBaseURI, subscriptionID)
+}
+
+// NewPartnerTopicEventSubscriptionsClientWithBaseURI creates an instance of the PartnerTopicEventSubscriptionsClient
+// client using a custom endpoint. Use this when interacting with an Azure cloud that uses a non-standard base URI
+// (sovereign clouds, Azure stack).
+func NewPartnerTopicEventSubscriptionsClientWithBaseURI(baseURI string, subscriptionID string) PartnerTopicEventSubscriptionsClient {
+ return PartnerTopicEventSubscriptionsClient{NewWithBaseURI(baseURI, subscriptionID)}
+}
+
+// CreateOrUpdate asynchronously creates or updates an event subscription of a partner topic with the specified
+// parameters. Existing event subscriptions will be updated with this API.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerTopicName - name of the partner topic.
+// eventSubscriptionName - name of the event subscription to be created. Event subscription names must be
+// between 3 and 100 characters in length and use alphanumeric letters only.
+// eventSubscriptionInfo - event subscription properties containing the destination and filter information.
+func (client PartnerTopicEventSubscriptionsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, partnerTopicName string, eventSubscriptionName string, eventSubscriptionInfo EventSubscription) (result PartnerTopicEventSubscriptionsCreateOrUpdateFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicEventSubscriptionsClient.CreateOrUpdate")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.CreateOrUpdatePreparer(ctx, resourceGroupName, partnerTopicName, eventSubscriptionName, eventSubscriptionInfo)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "CreateOrUpdate", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.CreateOrUpdateSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "CreateOrUpdate", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// CreateOrUpdatePreparer prepares the CreateOrUpdate request.
+func (client PartnerTopicEventSubscriptionsClient) CreateOrUpdatePreparer(ctx context.Context, resourceGroupName string, partnerTopicName string, eventSubscriptionName string, eventSubscriptionInfo EventSubscription) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventSubscriptionName": autorest.Encode("path", eventSubscriptionName),
+ "partnerTopicName": autorest.Encode("path", partnerTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPut(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}", pathParameters),
+ autorest.WithJSON(eventSubscriptionInfo),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicEventSubscriptionsClient) CreateOrUpdateSender(req *http.Request) (future PartnerTopicEventSubscriptionsCreateOrUpdateFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicEventSubscriptionsClient) CreateOrUpdateResponder(resp *http.Response) (result EventSubscription, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// Delete delete an event subscription of a partner topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerTopicName - name of the partner topic.
+// eventSubscriptionName - name of the event subscription to be created. Event subscription names must be
+// between 3 and 100 characters in length and use alphanumeric letters only.
+func (client PartnerTopicEventSubscriptionsClient) Delete(ctx context.Context, resourceGroupName string, partnerTopicName string, eventSubscriptionName string) (result PartnerTopicEventSubscriptionsDeleteFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicEventSubscriptionsClient.Delete")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.DeletePreparer(ctx, resourceGroupName, partnerTopicName, eventSubscriptionName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "Delete", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.DeleteSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "Delete", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// DeletePreparer prepares the Delete request.
+func (client PartnerTopicEventSubscriptionsClient) DeletePreparer(ctx context.Context, resourceGroupName string, partnerTopicName string, eventSubscriptionName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventSubscriptionName": autorest.Encode("path", eventSubscriptionName),
+ "partnerTopicName": autorest.Encode("path", partnerTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsDelete(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// DeleteSender sends the Delete request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicEventSubscriptionsClient) DeleteSender(req *http.Request) (future PartnerTopicEventSubscriptionsDeleteFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// DeleteResponder handles the response to the Delete request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicEventSubscriptionsClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent),
+ autorest.ByClosing())
+ result.Response = resp
+ return
+}
+
+// Get get an event subscription of a partner topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerTopicName - name of the partner topic.
+// eventSubscriptionName - name of the event subscription to be found. Event subscription names must be between
+// 3 and 100 characters in length and use alphanumeric letters only.
+func (client PartnerTopicEventSubscriptionsClient) Get(ctx context.Context, resourceGroupName string, partnerTopicName string, eventSubscriptionName string) (result EventSubscription, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicEventSubscriptionsClient.Get")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetPreparer(ctx, resourceGroupName, partnerTopicName, eventSubscriptionName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "Get", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "Get", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "Get", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetPreparer prepares the Get request.
+func (client PartnerTopicEventSubscriptionsClient) GetPreparer(ctx context.Context, resourceGroupName string, partnerTopicName string, eventSubscriptionName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventSubscriptionName": autorest.Encode("path", eventSubscriptionName),
+ "partnerTopicName": autorest.Encode("path", partnerTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetSender sends the Get request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicEventSubscriptionsClient) GetSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// GetResponder handles the response to the Get request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicEventSubscriptionsClient) GetResponder(resp *http.Response) (result EventSubscription, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// GetFullURL get the full endpoint URL for an event subscription of a partner topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerTopicName - name of the partner topic.
+// eventSubscriptionName - name of the event subscription to be created. Event subscription names must be
+// between 3 and 100 characters in length and use alphanumeric letters only.
+func (client PartnerTopicEventSubscriptionsClient) GetFullURL(ctx context.Context, resourceGroupName string, partnerTopicName string, eventSubscriptionName string) (result EventSubscriptionFullURL, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicEventSubscriptionsClient.GetFullURL")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetFullURLPreparer(ctx, resourceGroupName, partnerTopicName, eventSubscriptionName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "GetFullURL", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetFullURLSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "GetFullURL", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetFullURLResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "GetFullURL", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetFullURLPreparer prepares the GetFullURL request.
+func (client PartnerTopicEventSubscriptionsClient) GetFullURLPreparer(ctx context.Context, resourceGroupName string, partnerTopicName string, eventSubscriptionName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventSubscriptionName": autorest.Encode("path", eventSubscriptionName),
+ "partnerTopicName": autorest.Encode("path", partnerTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsPost(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}/getFullUrl", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetFullURLSender sends the GetFullURL request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicEventSubscriptionsClient) GetFullURLSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// GetFullURLResponder handles the response to the GetFullURL request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicEventSubscriptionsClient) GetFullURLResponder(resp *http.Response) (result EventSubscriptionFullURL, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// ListByPartnerTopic list event subscriptions that belong to a specific partner topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerTopicName - name of the partner topic.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client PartnerTopicEventSubscriptionsClient) ListByPartnerTopic(ctx context.Context, resourceGroupName string, partnerTopicName string, filter string, top *int32) (result EventSubscriptionsListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicEventSubscriptionsClient.ListByPartnerTopic")
+ defer func() {
+ sc := -1
+ if result.eslr.Response.Response != nil {
+ sc = result.eslr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listByPartnerTopicNextResults
+ req, err := client.ListByPartnerTopicPreparer(ctx, resourceGroupName, partnerTopicName, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "ListByPartnerTopic", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListByPartnerTopicSender(req)
+ if err != nil {
+ result.eslr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "ListByPartnerTopic", resp, "Failure sending request")
+ return
+ }
+
+ result.eslr, err = client.ListByPartnerTopicResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "ListByPartnerTopic", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListByPartnerTopicPreparer prepares the ListByPartnerTopic request.
+func (client PartnerTopicEventSubscriptionsClient) ListByPartnerTopicPreparer(ctx context.Context, resourceGroupName string, partnerTopicName string, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerTopicName": autorest.Encode("path", partnerTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListByPartnerTopicSender sends the ListByPartnerTopic request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicEventSubscriptionsClient) ListByPartnerTopicSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListByPartnerTopicResponder handles the response to the ListByPartnerTopic request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicEventSubscriptionsClient) ListByPartnerTopicResponder(resp *http.Response) (result EventSubscriptionsListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listByPartnerTopicNextResults retrieves the next set of results, if any.
+func (client PartnerTopicEventSubscriptionsClient) listByPartnerTopicNextResults(ctx context.Context, lastResults EventSubscriptionsListResult) (result EventSubscriptionsListResult, err error) {
+ req, err := lastResults.eventSubscriptionsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "listByPartnerTopicNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByPartnerTopicSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "listByPartnerTopicNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByPartnerTopicResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "listByPartnerTopicNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByPartnerTopicComplete enumerates all values, automatically crossing page boundaries as required.
+func (client PartnerTopicEventSubscriptionsClient) ListByPartnerTopicComplete(ctx context.Context, resourceGroupName string, partnerTopicName string, filter string, top *int32) (result EventSubscriptionsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicEventSubscriptionsClient.ListByPartnerTopic")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByPartnerTopic(ctx, resourceGroupName, partnerTopicName, filter, top)
+ return
+}
+
+// Update update event subscription of a partner topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerTopicName - name of the partner topic.
+// eventSubscriptionName - name of the event subscription to be created. Event subscription names must be
+// between 3 and 100 characters in length and use alphanumeric letters only.
+// eventSubscriptionUpdateParameters - updated event subscription information.
+func (client PartnerTopicEventSubscriptionsClient) Update(ctx context.Context, resourceGroupName string, partnerTopicName string, eventSubscriptionName string, eventSubscriptionUpdateParameters EventSubscriptionUpdateParameters) (result PartnerTopicEventSubscriptionsUpdateFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicEventSubscriptionsClient.Update")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.UpdatePreparer(ctx, resourceGroupName, partnerTopicName, eventSubscriptionName, eventSubscriptionUpdateParameters)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "Update", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.UpdateSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicEventSubscriptionsClient", "Update", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// UpdatePreparer prepares the Update request.
+func (client PartnerTopicEventSubscriptionsClient) UpdatePreparer(ctx context.Context, resourceGroupName string, partnerTopicName string, eventSubscriptionName string, eventSubscriptionUpdateParameters EventSubscriptionUpdateParameters) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventSubscriptionName": autorest.Encode("path", eventSubscriptionName),
+ "partnerTopicName": autorest.Encode("path", partnerTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPatch(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}", pathParameters),
+ autorest.WithJSON(eventSubscriptionUpdateParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// UpdateSender sends the Update request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicEventSubscriptionsClient) UpdateSender(req *http.Request) (future PartnerTopicEventSubscriptionsUpdateFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// UpdateResponder handles the response to the Update request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicEventSubscriptionsClient) UpdateResponder(resp *http.Response) (result EventSubscription, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/partnertopics.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/partnertopics.go
new file mode 100644
index 000000000000..ebeb31ae4742
--- /dev/null
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/partnertopics.go
@@ -0,0 +1,674 @@
+package eventgrid
+
+// Copyright (c) Microsoft and contributors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+ "context"
+ "github.com/Azure/go-autorest/autorest"
+ "github.com/Azure/go-autorest/autorest/azure"
+ "github.com/Azure/go-autorest/tracing"
+ "net/http"
+)
+
+// PartnerTopicsClient is the azure EventGrid Management Client
+type PartnerTopicsClient struct {
+ BaseClient
+}
+
+// NewPartnerTopicsClient creates an instance of the PartnerTopicsClient client.
+func NewPartnerTopicsClient(subscriptionID string) PartnerTopicsClient {
+ return NewPartnerTopicsClientWithBaseURI(DefaultBaseURI, subscriptionID)
+}
+
+// NewPartnerTopicsClientWithBaseURI creates an instance of the PartnerTopicsClient client using a custom endpoint.
+// Use this when interacting with an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure stack).
+func NewPartnerTopicsClientWithBaseURI(baseURI string, subscriptionID string) PartnerTopicsClient {
+ return PartnerTopicsClient{NewWithBaseURI(baseURI, subscriptionID)}
+}
+
+// Activate activate a newly created partner topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerTopicName - name of the partner topic.
+func (client PartnerTopicsClient) Activate(ctx context.Context, resourceGroupName string, partnerTopicName string) (result PartnerTopic, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicsClient.Activate")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.ActivatePreparer(ctx, resourceGroupName, partnerTopicName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Activate", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ActivateSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Activate", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.ActivateResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Activate", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ActivatePreparer prepares the Activate request.
+func (client PartnerTopicsClient) ActivatePreparer(ctx context.Context, resourceGroupName string, partnerTopicName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerTopicName": autorest.Encode("path", partnerTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsPost(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/activate", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ActivateSender sends the Activate request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicsClient) ActivateSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ActivateResponder handles the response to the Activate request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicsClient) ActivateResponder(resp *http.Response) (result PartnerTopic, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// Deactivate deactivate specific partner topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerTopicName - name of the partner topic.
+func (client PartnerTopicsClient) Deactivate(ctx context.Context, resourceGroupName string, partnerTopicName string) (result PartnerTopic, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicsClient.Deactivate")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.DeactivatePreparer(ctx, resourceGroupName, partnerTopicName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Deactivate", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.DeactivateSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Deactivate", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.DeactivateResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Deactivate", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// DeactivatePreparer prepares the Deactivate request.
+func (client PartnerTopicsClient) DeactivatePreparer(ctx context.Context, resourceGroupName string, partnerTopicName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerTopicName": autorest.Encode("path", partnerTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsPost(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/deactivate", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// DeactivateSender sends the Deactivate request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicsClient) DeactivateSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// DeactivateResponder handles the response to the Deactivate request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicsClient) DeactivateResponder(resp *http.Response) (result PartnerTopic, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// Delete delete existing partner topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerTopicName - name of the partner topic.
+func (client PartnerTopicsClient) Delete(ctx context.Context, resourceGroupName string, partnerTopicName string) (result PartnerTopicsDeleteFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicsClient.Delete")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.DeletePreparer(ctx, resourceGroupName, partnerTopicName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Delete", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.DeleteSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Delete", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// DeletePreparer prepares the Delete request.
+func (client PartnerTopicsClient) DeletePreparer(ctx context.Context, resourceGroupName string, partnerTopicName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerTopicName": autorest.Encode("path", partnerTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsDelete(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// DeleteSender sends the Delete request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicsClient) DeleteSender(req *http.Request) (future PartnerTopicsDeleteFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// DeleteResponder handles the response to the Delete request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicsClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent),
+ autorest.ByClosing())
+ result.Response = resp
+ return
+}
+
+// Get get properties of a partner topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerTopicName - name of the partner topic.
+func (client PartnerTopicsClient) Get(ctx context.Context, resourceGroupName string, partnerTopicName string) (result PartnerTopic, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicsClient.Get")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetPreparer(ctx, resourceGroupName, partnerTopicName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Get", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Get", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Get", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetPreparer prepares the Get request.
+func (client PartnerTopicsClient) GetPreparer(ctx context.Context, resourceGroupName string, partnerTopicName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerTopicName": autorest.Encode("path", partnerTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetSender sends the Get request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicsClient) GetSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// GetResponder handles the response to the Get request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicsClient) GetResponder(resp *http.Response) (result PartnerTopic, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// ListByResourceGroup list all the partner topics under a resource group.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client PartnerTopicsClient) ListByResourceGroup(ctx context.Context, resourceGroupName string, filter string, top *int32) (result PartnerTopicsListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicsClient.ListByResourceGroup")
+ defer func() {
+ sc := -1
+ if result.ptlr.Response.Response != nil {
+ sc = result.ptlr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listByResourceGroupNextResults
+ req, err := client.ListByResourceGroupPreparer(ctx, resourceGroupName, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "ListByResourceGroup", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListByResourceGroupSender(req)
+ if err != nil {
+ result.ptlr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "ListByResourceGroup", resp, "Failure sending request")
+ return
+ }
+
+ result.ptlr, err = client.ListByResourceGroupResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "ListByResourceGroup", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListByResourceGroupPreparer prepares the ListByResourceGroup request.
+func (client PartnerTopicsClient) ListByResourceGroupPreparer(ctx context.Context, resourceGroupName string, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListByResourceGroupSender sends the ListByResourceGroup request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicsClient) ListByResourceGroupSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListByResourceGroupResponder handles the response to the ListByResourceGroup request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicsClient) ListByResourceGroupResponder(resp *http.Response) (result PartnerTopicsListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listByResourceGroupNextResults retrieves the next set of results, if any.
+func (client PartnerTopicsClient) listByResourceGroupNextResults(ctx context.Context, lastResults PartnerTopicsListResult) (result PartnerTopicsListResult, err error) {
+ req, err := lastResults.partnerTopicsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "listByResourceGroupNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByResourceGroupSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "listByResourceGroupNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByResourceGroupResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "listByResourceGroupNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByResourceGroupComplete enumerates all values, automatically crossing page boundaries as required.
+func (client PartnerTopicsClient) ListByResourceGroupComplete(ctx context.Context, resourceGroupName string, filter string, top *int32) (result PartnerTopicsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicsClient.ListByResourceGroup")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByResourceGroup(ctx, resourceGroupName, filter, top)
+ return
+}
+
+// ListBySubscription list all the partner topics under an Azure subscription.
+// Parameters:
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client PartnerTopicsClient) ListBySubscription(ctx context.Context, filter string, top *int32) (result PartnerTopicsListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicsClient.ListBySubscription")
+ defer func() {
+ sc := -1
+ if result.ptlr.Response.Response != nil {
+ sc = result.ptlr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listBySubscriptionNextResults
+ req, err := client.ListBySubscriptionPreparer(ctx, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "ListBySubscription", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListBySubscriptionSender(req)
+ if err != nil {
+ result.ptlr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "ListBySubscription", resp, "Failure sending request")
+ return
+ }
+
+ result.ptlr, err = client.ListBySubscriptionResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "ListBySubscription", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListBySubscriptionPreparer prepares the ListBySubscription request.
+func (client PartnerTopicsClient) ListBySubscriptionPreparer(ctx context.Context, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/partnerTopics", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListBySubscriptionSender sends the ListBySubscription request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicsClient) ListBySubscriptionSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListBySubscriptionResponder handles the response to the ListBySubscription request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicsClient) ListBySubscriptionResponder(resp *http.Response) (result PartnerTopicsListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listBySubscriptionNextResults retrieves the next set of results, if any.
+func (client PartnerTopicsClient) listBySubscriptionNextResults(ctx context.Context, lastResults PartnerTopicsListResult) (result PartnerTopicsListResult, err error) {
+ req, err := lastResults.partnerTopicsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "listBySubscriptionNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListBySubscriptionSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "listBySubscriptionNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListBySubscriptionResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "listBySubscriptionNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListBySubscriptionComplete enumerates all values, automatically crossing page boundaries as required.
+func (client PartnerTopicsClient) ListBySubscriptionComplete(ctx context.Context, filter string, top *int32) (result PartnerTopicsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicsClient.ListBySubscription")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListBySubscription(ctx, filter, top)
+ return
+}
+
+// Update asynchronously updates a partner topic with the specified parameters.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// partnerTopicName - name of the partner topic.
+// partnerTopicUpdateParameters - partnerTopic update information.
+func (client PartnerTopicsClient) Update(ctx context.Context, resourceGroupName string, partnerTopicName string, partnerTopicUpdateParameters PartnerTopicUpdateParameters) (result PartnerTopic, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PartnerTopicsClient.Update")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.UpdatePreparer(ctx, resourceGroupName, partnerTopicName, partnerTopicUpdateParameters)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Update", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.UpdateSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Update", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.UpdateResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PartnerTopicsClient", "Update", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// UpdatePreparer prepares the Update request.
+func (client PartnerTopicsClient) UpdatePreparer(ctx context.Context, resourceGroupName string, partnerTopicName string, partnerTopicUpdateParameters PartnerTopicUpdateParameters) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "partnerTopicName": autorest.Encode("path", partnerTopicName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPatch(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}", pathParameters),
+ autorest.WithJSON(partnerTopicUpdateParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// UpdateSender sends the Update request. The method will close the
+// http.Response Body if it receives an error.
+func (client PartnerTopicsClient) UpdateSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// UpdateResponder handles the response to the Update request. The method always
+// closes the http.Response Body.
+func (client PartnerTopicsClient) UpdateResponder(resp *http.Response) (result PartnerTopic, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/privateendpointconnections.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/privateendpointconnections.go
new file mode 100644
index 000000000000..f9912cc250b9
--- /dev/null
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/privateendpointconnections.go
@@ -0,0 +1,415 @@
+package eventgrid
+
+// Copyright (c) Microsoft and contributors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+ "context"
+ "github.com/Azure/go-autorest/autorest"
+ "github.com/Azure/go-autorest/autorest/azure"
+ "github.com/Azure/go-autorest/tracing"
+ "net/http"
+)
+
+// PrivateEndpointConnectionsClient is the azure EventGrid Management Client
+type PrivateEndpointConnectionsClient struct {
+ BaseClient
+}
+
+// NewPrivateEndpointConnectionsClient creates an instance of the PrivateEndpointConnectionsClient client.
+func NewPrivateEndpointConnectionsClient(subscriptionID string) PrivateEndpointConnectionsClient {
+ return NewPrivateEndpointConnectionsClientWithBaseURI(DefaultBaseURI, subscriptionID)
+}
+
+// NewPrivateEndpointConnectionsClientWithBaseURI creates an instance of the PrivateEndpointConnectionsClient client
+// using a custom endpoint. Use this when interacting with an Azure cloud that uses a non-standard base URI (sovereign
+// clouds, Azure stack).
+func NewPrivateEndpointConnectionsClientWithBaseURI(baseURI string, subscriptionID string) PrivateEndpointConnectionsClient {
+ return PrivateEndpointConnectionsClient{NewWithBaseURI(baseURI, subscriptionID)}
+}
+
+// Delete delete a specific private endpoint connection under a topic or domain.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// parentType - the type of the parent resource. This can be either \'topics\' or \'domains\'.
+// parentName - the name of the parent resource (namely, either, the topic name or domain name).
+// privateEndpointConnectionName - the name of the private endpoint connection connection.
+func (client PrivateEndpointConnectionsClient) Delete(ctx context.Context, resourceGroupName string, parentType string, parentName string, privateEndpointConnectionName string) (result PrivateEndpointConnectionsDeleteFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PrivateEndpointConnectionsClient.Delete")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.DeletePreparer(ctx, resourceGroupName, parentType, parentName, privateEndpointConnectionName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "Delete", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.DeleteSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "Delete", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// DeletePreparer prepares the Delete request.
+func (client PrivateEndpointConnectionsClient) DeletePreparer(ctx context.Context, resourceGroupName string, parentType string, parentName string, privateEndpointConnectionName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "parentName": autorest.Encode("path", parentName),
+ "parentType": autorest.Encode("path", parentType),
+ "privateEndpointConnectionName": autorest.Encode("path", privateEndpointConnectionName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsDelete(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/{parentType}/{parentName}/privateEndpointConnections/{privateEndpointConnectionName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// DeleteSender sends the Delete request. The method will close the
+// http.Response Body if it receives an error.
+func (client PrivateEndpointConnectionsClient) DeleteSender(req *http.Request) (future PrivateEndpointConnectionsDeleteFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// DeleteResponder handles the response to the Delete request. The method always
+// closes the http.Response Body.
+func (client PrivateEndpointConnectionsClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent),
+ autorest.ByClosing())
+ result.Response = resp
+ return
+}
+
+// Get get a specific private endpoint connection under a topic or domain.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// parentType - the type of the parent resource. This can be either \'topics\' or \'domains\'.
+// parentName - the name of the parent resource (namely, either, the topic name or domain name).
+// privateEndpointConnectionName - the name of the private endpoint connection connection.
+func (client PrivateEndpointConnectionsClient) Get(ctx context.Context, resourceGroupName string, parentType string, parentName string, privateEndpointConnectionName string) (result PrivateEndpointConnection, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PrivateEndpointConnectionsClient.Get")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetPreparer(ctx, resourceGroupName, parentType, parentName, privateEndpointConnectionName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "Get", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "Get", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "Get", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetPreparer prepares the Get request.
+func (client PrivateEndpointConnectionsClient) GetPreparer(ctx context.Context, resourceGroupName string, parentType string, parentName string, privateEndpointConnectionName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "parentName": autorest.Encode("path", parentName),
+ "parentType": autorest.Encode("path", parentType),
+ "privateEndpointConnectionName": autorest.Encode("path", privateEndpointConnectionName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/{parentType}/{parentName}/privateEndpointConnections/{privateEndpointConnectionName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetSender sends the Get request. The method will close the
+// http.Response Body if it receives an error.
+func (client PrivateEndpointConnectionsClient) GetSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// GetResponder handles the response to the Get request. The method always
+// closes the http.Response Body.
+func (client PrivateEndpointConnectionsClient) GetResponder(resp *http.Response) (result PrivateEndpointConnection, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// ListByResource get all private endpoint connections under a topic or domain.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// parentType - the type of the parent resource. This can be either \'topics\' or \'domains\'.
+// parentName - the name of the parent resource (namely, either, the topic name or domain name).
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client PrivateEndpointConnectionsClient) ListByResource(ctx context.Context, resourceGroupName string, parentType string, parentName string, filter string, top *int32) (result PrivateEndpointConnectionListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PrivateEndpointConnectionsClient.ListByResource")
+ defer func() {
+ sc := -1
+ if result.peclr.Response.Response != nil {
+ sc = result.peclr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listByResourceNextResults
+ req, err := client.ListByResourcePreparer(ctx, resourceGroupName, parentType, parentName, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "ListByResource", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListByResourceSender(req)
+ if err != nil {
+ result.peclr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "ListByResource", resp, "Failure sending request")
+ return
+ }
+
+ result.peclr, err = client.ListByResourceResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "ListByResource", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListByResourcePreparer prepares the ListByResource request.
+func (client PrivateEndpointConnectionsClient) ListByResourcePreparer(ctx context.Context, resourceGroupName string, parentType string, parentName string, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "parentName": autorest.Encode("path", parentName),
+ "parentType": autorest.Encode("path", parentType),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/{parentType}/{parentName}/privateEndpointConnections", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListByResourceSender sends the ListByResource request. The method will close the
+// http.Response Body if it receives an error.
+func (client PrivateEndpointConnectionsClient) ListByResourceSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListByResourceResponder handles the response to the ListByResource request. The method always
+// closes the http.Response Body.
+func (client PrivateEndpointConnectionsClient) ListByResourceResponder(resp *http.Response) (result PrivateEndpointConnectionListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listByResourceNextResults retrieves the next set of results, if any.
+func (client PrivateEndpointConnectionsClient) listByResourceNextResults(ctx context.Context, lastResults PrivateEndpointConnectionListResult) (result PrivateEndpointConnectionListResult, err error) {
+ req, err := lastResults.privateEndpointConnectionListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "listByResourceNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByResourceSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "listByResourceNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByResourceResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "listByResourceNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByResourceComplete enumerates all values, automatically crossing page boundaries as required.
+func (client PrivateEndpointConnectionsClient) ListByResourceComplete(ctx context.Context, resourceGroupName string, parentType string, parentName string, filter string, top *int32) (result PrivateEndpointConnectionListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PrivateEndpointConnectionsClient.ListByResource")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByResource(ctx, resourceGroupName, parentType, parentName, filter, top)
+ return
+}
+
+// Update update a specific private endpoint connection under a topic or domain.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// parentType - the type of the parent resource. This can be either \'topics\' or \'domains\'.
+// parentName - the name of the parent resource (namely, either, the topic name or domain name).
+// privateEndpointConnectionName - the name of the private endpoint connection connection.
+// privateEndpointConnection - the private endpoint connection object to update.
+func (client PrivateEndpointConnectionsClient) Update(ctx context.Context, resourceGroupName string, parentType string, parentName string, privateEndpointConnectionName string, privateEndpointConnection PrivateEndpointConnection) (result PrivateEndpointConnectionsUpdateFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PrivateEndpointConnectionsClient.Update")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.UpdatePreparer(ctx, resourceGroupName, parentType, parentName, privateEndpointConnectionName, privateEndpointConnection)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "Update", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.UpdateSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateEndpointConnectionsClient", "Update", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// UpdatePreparer prepares the Update request.
+func (client PrivateEndpointConnectionsClient) UpdatePreparer(ctx context.Context, resourceGroupName string, parentType string, parentName string, privateEndpointConnectionName string, privateEndpointConnection PrivateEndpointConnection) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "parentName": autorest.Encode("path", parentName),
+ "parentType": autorest.Encode("path", parentType),
+ "privateEndpointConnectionName": autorest.Encode("path", privateEndpointConnectionName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPut(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/{parentType}/{parentName}/privateEndpointConnections/{privateEndpointConnectionName}", pathParameters),
+ autorest.WithJSON(privateEndpointConnection),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// UpdateSender sends the Update request. The method will close the
+// http.Response Body if it receives an error.
+func (client PrivateEndpointConnectionsClient) UpdateSender(req *http.Request) (future PrivateEndpointConnectionsUpdateFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// UpdateResponder handles the response to the Update request. The method always
+// closes the http.Response Body.
+func (client PrivateEndpointConnectionsClient) UpdateResponder(resp *http.Response) (result PrivateEndpointConnection, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/privatelinkresources.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/privatelinkresources.go
new file mode 100644
index 000000000000..a4e22f335a7a
--- /dev/null
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/privatelinkresources.go
@@ -0,0 +1,253 @@
+package eventgrid
+
+// Copyright (c) Microsoft and contributors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+ "context"
+ "github.com/Azure/go-autorest/autorest"
+ "github.com/Azure/go-autorest/autorest/azure"
+ "github.com/Azure/go-autorest/tracing"
+ "net/http"
+)
+
+// PrivateLinkResourcesClient is the azure EventGrid Management Client
+type PrivateLinkResourcesClient struct {
+ BaseClient
+}
+
+// NewPrivateLinkResourcesClient creates an instance of the PrivateLinkResourcesClient client.
+func NewPrivateLinkResourcesClient(subscriptionID string) PrivateLinkResourcesClient {
+ return NewPrivateLinkResourcesClientWithBaseURI(DefaultBaseURI, subscriptionID)
+}
+
+// NewPrivateLinkResourcesClientWithBaseURI creates an instance of the PrivateLinkResourcesClient client using a custom
+// endpoint. Use this when interacting with an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure
+// stack).
+func NewPrivateLinkResourcesClientWithBaseURI(baseURI string, subscriptionID string) PrivateLinkResourcesClient {
+ return PrivateLinkResourcesClient{NewWithBaseURI(baseURI, subscriptionID)}
+}
+
+// Get get properties of a private link resource.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// parentType - the type of the parent resource. This can be either \'topics\' or \'domains\'.
+// parentName - the name of the parent resource (namely, either, the topic name or domain name).
+// privateLinkResourceName - the name of private link resource.
+func (client PrivateLinkResourcesClient) Get(ctx context.Context, resourceGroupName string, parentType string, parentName string, privateLinkResourceName string) (result PrivateLinkResource, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PrivateLinkResourcesClient.Get")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetPreparer(ctx, resourceGroupName, parentType, parentName, privateLinkResourceName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateLinkResourcesClient", "Get", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateLinkResourcesClient", "Get", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateLinkResourcesClient", "Get", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetPreparer prepares the Get request.
+func (client PrivateLinkResourcesClient) GetPreparer(ctx context.Context, resourceGroupName string, parentType string, parentName string, privateLinkResourceName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "parentName": autorest.Encode("path", parentName),
+ "parentType": autorest.Encode("path", parentType),
+ "privateLinkResourceName": autorest.Encode("path", privateLinkResourceName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/{parentType}/{parentName}/privateLinkResources/{privateLinkResourceName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetSender sends the Get request. The method will close the
+// http.Response Body if it receives an error.
+func (client PrivateLinkResourcesClient) GetSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// GetResponder handles the response to the Get request. The method always
+// closes the http.Response Body.
+func (client PrivateLinkResourcesClient) GetResponder(resp *http.Response) (result PrivateLinkResource, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// ListByResource list all the private link resources under a topic or domain.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// parentType - the type of the parent resource. This can be either \'topics\' or \'domains\'.
+// parentName - the name of the parent resource (namely, either, the topic name or domain name).
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client PrivateLinkResourcesClient) ListByResource(ctx context.Context, resourceGroupName string, parentType string, parentName string, filter string, top *int32) (result PrivateLinkResourcesListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PrivateLinkResourcesClient.ListByResource")
+ defer func() {
+ sc := -1
+ if result.plrlr.Response.Response != nil {
+ sc = result.plrlr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listByResourceNextResults
+ req, err := client.ListByResourcePreparer(ctx, resourceGroupName, parentType, parentName, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateLinkResourcesClient", "ListByResource", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListByResourceSender(req)
+ if err != nil {
+ result.plrlr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateLinkResourcesClient", "ListByResource", resp, "Failure sending request")
+ return
+ }
+
+ result.plrlr, err = client.ListByResourceResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateLinkResourcesClient", "ListByResource", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListByResourcePreparer prepares the ListByResource request.
+func (client PrivateLinkResourcesClient) ListByResourcePreparer(ctx context.Context, resourceGroupName string, parentType string, parentName string, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "parentName": autorest.Encode("path", parentName),
+ "parentType": autorest.Encode("path", parentType),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/{parentType}/{parentName}/privateLinkResources", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListByResourceSender sends the ListByResource request. The method will close the
+// http.Response Body if it receives an error.
+func (client PrivateLinkResourcesClient) ListByResourceSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListByResourceResponder handles the response to the ListByResource request. The method always
+// closes the http.Response Body.
+func (client PrivateLinkResourcesClient) ListByResourceResponder(resp *http.Response) (result PrivateLinkResourcesListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listByResourceNextResults retrieves the next set of results, if any.
+func (client PrivateLinkResourcesClient) listByResourceNextResults(ctx context.Context, lastResults PrivateLinkResourcesListResult) (result PrivateLinkResourcesListResult, err error) {
+ req, err := lastResults.privateLinkResourcesListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.PrivateLinkResourcesClient", "listByResourceNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByResourceSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.PrivateLinkResourcesClient", "listByResourceNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByResourceResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.PrivateLinkResourcesClient", "listByResourceNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByResourceComplete enumerates all values, automatically crossing page boundaries as required.
+func (client PrivateLinkResourcesClient) ListByResourceComplete(ctx context.Context, resourceGroupName string, parentType string, parentName string, filter string, top *int32) (result PrivateLinkResourcesListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/PrivateLinkResourcesClient.ListByResource")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByResource(ctx, resourceGroupName, parentType, parentName, filter, top)
+ return
+}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/systemtopiceventsubscriptions.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/systemtopiceventsubscriptions.go
new file mode 100644
index 000000000000..810b0c0c5c6c
--- /dev/null
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/systemtopiceventsubscriptions.go
@@ -0,0 +1,572 @@
+package eventgrid
+
+// Copyright (c) Microsoft and contributors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+ "context"
+ "github.com/Azure/go-autorest/autorest"
+ "github.com/Azure/go-autorest/autorest/azure"
+ "github.com/Azure/go-autorest/tracing"
+ "net/http"
+)
+
+// SystemTopicEventSubscriptionsClient is the azure EventGrid Management Client
+type SystemTopicEventSubscriptionsClient struct {
+ BaseClient
+}
+
+// NewSystemTopicEventSubscriptionsClient creates an instance of the SystemTopicEventSubscriptionsClient client.
+func NewSystemTopicEventSubscriptionsClient(subscriptionID string) SystemTopicEventSubscriptionsClient {
+ return NewSystemTopicEventSubscriptionsClientWithBaseURI(DefaultBaseURI, subscriptionID)
+}
+
+// NewSystemTopicEventSubscriptionsClientWithBaseURI creates an instance of the SystemTopicEventSubscriptionsClient
+// client using a custom endpoint. Use this when interacting with an Azure cloud that uses a non-standard base URI
+// (sovereign clouds, Azure stack).
+func NewSystemTopicEventSubscriptionsClientWithBaseURI(baseURI string, subscriptionID string) SystemTopicEventSubscriptionsClient {
+ return SystemTopicEventSubscriptionsClient{NewWithBaseURI(baseURI, subscriptionID)}
+}
+
+// CreateOrUpdate asynchronously creates or updates an event subscription with the specified parameters. Existing event
+// subscriptions will be updated with this API.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// systemTopicName - name of the system topic.
+// eventSubscriptionName - name of the event subscription to be created. Event subscription names must be
+// between 3 and 100 characters in length and use alphanumeric letters only.
+// eventSubscriptionInfo - event subscription properties containing the destination and filter information.
+func (client SystemTopicEventSubscriptionsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, systemTopicName string, eventSubscriptionName string, eventSubscriptionInfo EventSubscription) (result SystemTopicEventSubscriptionsCreateOrUpdateFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicEventSubscriptionsClient.CreateOrUpdate")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.CreateOrUpdatePreparer(ctx, resourceGroupName, systemTopicName, eventSubscriptionName, eventSubscriptionInfo)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "CreateOrUpdate", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.CreateOrUpdateSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "CreateOrUpdate", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// CreateOrUpdatePreparer prepares the CreateOrUpdate request.
+func (client SystemTopicEventSubscriptionsClient) CreateOrUpdatePreparer(ctx context.Context, resourceGroupName string, systemTopicName string, eventSubscriptionName string, eventSubscriptionInfo EventSubscription) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventSubscriptionName": autorest.Encode("path", eventSubscriptionName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ "systemTopicName": autorest.Encode("path", systemTopicName),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPut(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}/eventSubscriptions/{eventSubscriptionName}", pathParameters),
+ autorest.WithJSON(eventSubscriptionInfo),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the
+// http.Response Body if it receives an error.
+func (client SystemTopicEventSubscriptionsClient) CreateOrUpdateSender(req *http.Request) (future SystemTopicEventSubscriptionsCreateOrUpdateFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always
+// closes the http.Response Body.
+func (client SystemTopicEventSubscriptionsClient) CreateOrUpdateResponder(resp *http.Response) (result EventSubscription, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// Delete delete an event subscription of a system topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// systemTopicName - name of the system topic.
+// eventSubscriptionName - name of the event subscription to be created. Event subscription names must be
+// between 3 and 100 characters in length and use alphanumeric letters only.
+func (client SystemTopicEventSubscriptionsClient) Delete(ctx context.Context, resourceGroupName string, systemTopicName string, eventSubscriptionName string) (result SystemTopicEventSubscriptionsDeleteFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicEventSubscriptionsClient.Delete")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.DeletePreparer(ctx, resourceGroupName, systemTopicName, eventSubscriptionName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "Delete", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.DeleteSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "Delete", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// DeletePreparer prepares the Delete request.
+func (client SystemTopicEventSubscriptionsClient) DeletePreparer(ctx context.Context, resourceGroupName string, systemTopicName string, eventSubscriptionName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventSubscriptionName": autorest.Encode("path", eventSubscriptionName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ "systemTopicName": autorest.Encode("path", systemTopicName),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsDelete(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}/eventSubscriptions/{eventSubscriptionName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// DeleteSender sends the Delete request. The method will close the
+// http.Response Body if it receives an error.
+func (client SystemTopicEventSubscriptionsClient) DeleteSender(req *http.Request) (future SystemTopicEventSubscriptionsDeleteFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// DeleteResponder handles the response to the Delete request. The method always
+// closes the http.Response Body.
+func (client SystemTopicEventSubscriptionsClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent),
+ autorest.ByClosing())
+ result.Response = resp
+ return
+}
+
+// Get get an event subscription.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// systemTopicName - name of the system topic.
+// eventSubscriptionName - name of the event subscription to be created. Event subscription names must be
+// between 3 and 100 characters in length and use alphanumeric letters only.
+func (client SystemTopicEventSubscriptionsClient) Get(ctx context.Context, resourceGroupName string, systemTopicName string, eventSubscriptionName string) (result EventSubscription, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicEventSubscriptionsClient.Get")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetPreparer(ctx, resourceGroupName, systemTopicName, eventSubscriptionName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "Get", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "Get", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "Get", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetPreparer prepares the Get request.
+func (client SystemTopicEventSubscriptionsClient) GetPreparer(ctx context.Context, resourceGroupName string, systemTopicName string, eventSubscriptionName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventSubscriptionName": autorest.Encode("path", eventSubscriptionName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ "systemTopicName": autorest.Encode("path", systemTopicName),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}/eventSubscriptions/{eventSubscriptionName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetSender sends the Get request. The method will close the
+// http.Response Body if it receives an error.
+func (client SystemTopicEventSubscriptionsClient) GetSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// GetResponder handles the response to the Get request. The method always
+// closes the http.Response Body.
+func (client SystemTopicEventSubscriptionsClient) GetResponder(resp *http.Response) (result EventSubscription, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// GetFullURL get the full endpoint URL for an event subscription of a system topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// systemTopicName - name of the system topic.
+// eventSubscriptionName - name of the event subscription to be created. Event subscription names must be
+// between 3 and 100 characters in length and use alphanumeric letters only.
+func (client SystemTopicEventSubscriptionsClient) GetFullURL(ctx context.Context, resourceGroupName string, systemTopicName string, eventSubscriptionName string) (result EventSubscriptionFullURL, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicEventSubscriptionsClient.GetFullURL")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetFullURLPreparer(ctx, resourceGroupName, systemTopicName, eventSubscriptionName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "GetFullURL", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetFullURLSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "GetFullURL", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetFullURLResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "GetFullURL", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetFullURLPreparer prepares the GetFullURL request.
+func (client SystemTopicEventSubscriptionsClient) GetFullURLPreparer(ctx context.Context, resourceGroupName string, systemTopicName string, eventSubscriptionName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventSubscriptionName": autorest.Encode("path", eventSubscriptionName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ "systemTopicName": autorest.Encode("path", systemTopicName),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsPost(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}/eventSubscriptions/{eventSubscriptionName}/getFullUrl", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetFullURLSender sends the GetFullURL request. The method will close the
+// http.Response Body if it receives an error.
+func (client SystemTopicEventSubscriptionsClient) GetFullURLSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// GetFullURLResponder handles the response to the GetFullURL request. The method always
+// closes the http.Response Body.
+func (client SystemTopicEventSubscriptionsClient) GetFullURLResponder(resp *http.Response) (result EventSubscriptionFullURL, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// ListBySystemTopic list event subscriptions that belong to a specific system topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// systemTopicName - name of the system topic.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client SystemTopicEventSubscriptionsClient) ListBySystemTopic(ctx context.Context, resourceGroupName string, systemTopicName string, filter string, top *int32) (result EventSubscriptionsListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicEventSubscriptionsClient.ListBySystemTopic")
+ defer func() {
+ sc := -1
+ if result.eslr.Response.Response != nil {
+ sc = result.eslr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listBySystemTopicNextResults
+ req, err := client.ListBySystemTopicPreparer(ctx, resourceGroupName, systemTopicName, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "ListBySystemTopic", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListBySystemTopicSender(req)
+ if err != nil {
+ result.eslr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "ListBySystemTopic", resp, "Failure sending request")
+ return
+ }
+
+ result.eslr, err = client.ListBySystemTopicResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "ListBySystemTopic", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListBySystemTopicPreparer prepares the ListBySystemTopic request.
+func (client SystemTopicEventSubscriptionsClient) ListBySystemTopicPreparer(ctx context.Context, resourceGroupName string, systemTopicName string, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ "systemTopicName": autorest.Encode("path", systemTopicName),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}/eventSubscriptions", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListBySystemTopicSender sends the ListBySystemTopic request. The method will close the
+// http.Response Body if it receives an error.
+func (client SystemTopicEventSubscriptionsClient) ListBySystemTopicSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListBySystemTopicResponder handles the response to the ListBySystemTopic request. The method always
+// closes the http.Response Body.
+func (client SystemTopicEventSubscriptionsClient) ListBySystemTopicResponder(resp *http.Response) (result EventSubscriptionsListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listBySystemTopicNextResults retrieves the next set of results, if any.
+func (client SystemTopicEventSubscriptionsClient) listBySystemTopicNextResults(ctx context.Context, lastResults EventSubscriptionsListResult) (result EventSubscriptionsListResult, err error) {
+ req, err := lastResults.eventSubscriptionsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "listBySystemTopicNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListBySystemTopicSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "listBySystemTopicNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListBySystemTopicResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "listBySystemTopicNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListBySystemTopicComplete enumerates all values, automatically crossing page boundaries as required.
+func (client SystemTopicEventSubscriptionsClient) ListBySystemTopicComplete(ctx context.Context, resourceGroupName string, systemTopicName string, filter string, top *int32) (result EventSubscriptionsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicEventSubscriptionsClient.ListBySystemTopic")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListBySystemTopic(ctx, resourceGroupName, systemTopicName, filter, top)
+ return
+}
+
+// Update update event subscription of a system topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// systemTopicName - name of the system topic.
+// eventSubscriptionName - name of the event subscription to be created. Event subscription names must be
+// between 3 and 100 characters in length and use alphanumeric letters only.
+// eventSubscriptionUpdateParameters - updated event subscription information.
+func (client SystemTopicEventSubscriptionsClient) Update(ctx context.Context, resourceGroupName string, systemTopicName string, eventSubscriptionName string, eventSubscriptionUpdateParameters EventSubscriptionUpdateParameters) (result SystemTopicEventSubscriptionsUpdateFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicEventSubscriptionsClient.Update")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.UpdatePreparer(ctx, resourceGroupName, systemTopicName, eventSubscriptionName, eventSubscriptionUpdateParameters)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "Update", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.UpdateSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicEventSubscriptionsClient", "Update", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// UpdatePreparer prepares the Update request.
+func (client SystemTopicEventSubscriptionsClient) UpdatePreparer(ctx context.Context, resourceGroupName string, systemTopicName string, eventSubscriptionName string, eventSubscriptionUpdateParameters EventSubscriptionUpdateParameters) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "eventSubscriptionName": autorest.Encode("path", eventSubscriptionName),
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ "systemTopicName": autorest.Encode("path", systemTopicName),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPatch(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}/eventSubscriptions/{eventSubscriptionName}", pathParameters),
+ autorest.WithJSON(eventSubscriptionUpdateParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// UpdateSender sends the Update request. The method will close the
+// http.Response Body if it receives an error.
+func (client SystemTopicEventSubscriptionsClient) UpdateSender(req *http.Request) (future SystemTopicEventSubscriptionsUpdateFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// UpdateResponder handles the response to the Update request. The method always
+// closes the http.Response Body.
+func (client SystemTopicEventSubscriptionsClient) UpdateResponder(resp *http.Response) (result EventSubscription, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/systemtopics.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/systemtopics.go
new file mode 100644
index 000000000000..3600438026c4
--- /dev/null
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/systemtopics.go
@@ -0,0 +1,601 @@
+package eventgrid
+
+// Copyright (c) Microsoft and contributors. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// Code generated by Microsoft (R) AutoRest Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+ "context"
+ "github.com/Azure/go-autorest/autorest"
+ "github.com/Azure/go-autorest/autorest/azure"
+ "github.com/Azure/go-autorest/tracing"
+ "net/http"
+)
+
+// SystemTopicsClient is the azure EventGrid Management Client
+type SystemTopicsClient struct {
+ BaseClient
+}
+
+// NewSystemTopicsClient creates an instance of the SystemTopicsClient client.
+func NewSystemTopicsClient(subscriptionID string) SystemTopicsClient {
+ return NewSystemTopicsClientWithBaseURI(DefaultBaseURI, subscriptionID)
+}
+
+// NewSystemTopicsClientWithBaseURI creates an instance of the SystemTopicsClient client using a custom endpoint. Use
+// this when interacting with an Azure cloud that uses a non-standard base URI (sovereign clouds, Azure stack).
+func NewSystemTopicsClientWithBaseURI(baseURI string, subscriptionID string) SystemTopicsClient {
+ return SystemTopicsClient{NewWithBaseURI(baseURI, subscriptionID)}
+}
+
+// CreateOrUpdate asynchronously creates a new system topic with the specified parameters.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// systemTopicName - name of the system topic.
+// systemTopicInfo - system Topic information.
+func (client SystemTopicsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, systemTopicName string, systemTopicInfo SystemTopic) (result SystemTopicsCreateOrUpdateFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicsClient.CreateOrUpdate")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.CreateOrUpdatePreparer(ctx, resourceGroupName, systemTopicName, systemTopicInfo)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "CreateOrUpdate", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.CreateOrUpdateSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "CreateOrUpdate", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// CreateOrUpdatePreparer prepares the CreateOrUpdate request.
+func (client SystemTopicsClient) CreateOrUpdatePreparer(ctx context.Context, resourceGroupName string, systemTopicName string, systemTopicInfo SystemTopic) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ "systemTopicName": autorest.Encode("path", systemTopicName),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPut(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}", pathParameters),
+ autorest.WithJSON(systemTopicInfo),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the
+// http.Response Body if it receives an error.
+func (client SystemTopicsClient) CreateOrUpdateSender(req *http.Request) (future SystemTopicsCreateOrUpdateFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always
+// closes the http.Response Body.
+func (client SystemTopicsClient) CreateOrUpdateResponder(resp *http.Response) (result SystemTopic, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// Delete delete existing system topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// systemTopicName - name of the system topic.
+func (client SystemTopicsClient) Delete(ctx context.Context, resourceGroupName string, systemTopicName string) (result SystemTopicsDeleteFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicsClient.Delete")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.DeletePreparer(ctx, resourceGroupName, systemTopicName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "Delete", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.DeleteSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "Delete", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// DeletePreparer prepares the Delete request.
+func (client SystemTopicsClient) DeletePreparer(ctx context.Context, resourceGroupName string, systemTopicName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ "systemTopicName": autorest.Encode("path", systemTopicName),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsDelete(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// DeleteSender sends the Delete request. The method will close the
+// http.Response Body if it receives an error.
+func (client SystemTopicsClient) DeleteSender(req *http.Request) (future SystemTopicsDeleteFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// DeleteResponder handles the response to the Delete request. The method always
+// closes the http.Response Body.
+func (client SystemTopicsClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted, http.StatusNoContent),
+ autorest.ByClosing())
+ result.Response = resp
+ return
+}
+
+// Get get properties of a system topic.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// systemTopicName - name of the system topic.
+func (client SystemTopicsClient) Get(ctx context.Context, resourceGroupName string, systemTopicName string) (result SystemTopic, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicsClient.Get")
+ defer func() {
+ sc := -1
+ if result.Response.Response != nil {
+ sc = result.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.GetPreparer(ctx, resourceGroupName, systemTopicName)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "Get", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.GetSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "Get", resp, "Failure sending request")
+ return
+ }
+
+ result, err = client.GetResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "Get", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// GetPreparer prepares the Get request.
+func (client SystemTopicsClient) GetPreparer(ctx context.Context, resourceGroupName string, systemTopicName string) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ "systemTopicName": autorest.Encode("path", systemTopicName),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// GetSender sends the Get request. The method will close the
+// http.Response Body if it receives an error.
+func (client SystemTopicsClient) GetSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// GetResponder handles the response to the Get request. The method always
+// closes the http.Response Body.
+func (client SystemTopicsClient) GetResponder(resp *http.Response) (result SystemTopic, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// ListByResourceGroup list all the system topics under a resource group.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client SystemTopicsClient) ListByResourceGroup(ctx context.Context, resourceGroupName string, filter string, top *int32) (result SystemTopicsListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicsClient.ListByResourceGroup")
+ defer func() {
+ sc := -1
+ if result.stlr.Response.Response != nil {
+ sc = result.stlr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listByResourceGroupNextResults
+ req, err := client.ListByResourceGroupPreparer(ctx, resourceGroupName, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "ListByResourceGroup", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListByResourceGroupSender(req)
+ if err != nil {
+ result.stlr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "ListByResourceGroup", resp, "Failure sending request")
+ return
+ }
+
+ result.stlr, err = client.ListByResourceGroupResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "ListByResourceGroup", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListByResourceGroupPreparer prepares the ListByResourceGroup request.
+func (client SystemTopicsClient) ListByResourceGroupPreparer(ctx context.Context, resourceGroupName string, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListByResourceGroupSender sends the ListByResourceGroup request. The method will close the
+// http.Response Body if it receives an error.
+func (client SystemTopicsClient) ListByResourceGroupSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListByResourceGroupResponder handles the response to the ListByResourceGroup request. The method always
+// closes the http.Response Body.
+func (client SystemTopicsClient) ListByResourceGroupResponder(resp *http.Response) (result SystemTopicsListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listByResourceGroupNextResults retrieves the next set of results, if any.
+func (client SystemTopicsClient) listByResourceGroupNextResults(ctx context.Context, lastResults SystemTopicsListResult) (result SystemTopicsListResult, err error) {
+ req, err := lastResults.systemTopicsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "listByResourceGroupNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByResourceGroupSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "listByResourceGroupNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByResourceGroupResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "listByResourceGroupNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByResourceGroupComplete enumerates all values, automatically crossing page boundaries as required.
+func (client SystemTopicsClient) ListByResourceGroupComplete(ctx context.Context, resourceGroupName string, filter string, top *int32) (result SystemTopicsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicsClient.ListByResourceGroup")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByResourceGroup(ctx, resourceGroupName, filter, top)
+ return
+}
+
+// ListBySubscription list all the system topics under an Azure subscription.
+// Parameters:
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client SystemTopicsClient) ListBySubscription(ctx context.Context, filter string, top *int32) (result SystemTopicsListResultPage, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicsClient.ListBySubscription")
+ defer func() {
+ sc := -1
+ if result.stlr.Response.Response != nil {
+ sc = result.stlr.Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.fn = client.listBySubscriptionNextResults
+ req, err := client.ListBySubscriptionPreparer(ctx, filter, top)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "ListBySubscription", nil, "Failure preparing request")
+ return
+ }
+
+ resp, err := client.ListBySubscriptionSender(req)
+ if err != nil {
+ result.stlr.Response = autorest.Response{Response: resp}
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "ListBySubscription", resp, "Failure sending request")
+ return
+ }
+
+ result.stlr, err = client.ListBySubscriptionResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "ListBySubscription", resp, "Failure responding to request")
+ }
+
+ return
+}
+
+// ListBySubscriptionPreparer prepares the ListBySubscription request.
+func (client SystemTopicsClient) ListBySubscriptionPreparer(ctx context.Context, filter string, top *int32) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsGet(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/systemTopics", pathParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// ListBySubscriptionSender sends the ListBySubscription request. The method will close the
+// http.Response Body if it receives an error.
+func (client SystemTopicsClient) ListBySubscriptionSender(req *http.Request) (*http.Response, error) {
+ return client.Send(req, azure.DoRetryWithRegistration(client.Client))
+}
+
+// ListBySubscriptionResponder handles the response to the ListBySubscription request. The method always
+// closes the http.Response Body.
+func (client SystemTopicsClient) ListBySubscriptionResponder(resp *http.Response) (result SystemTopicsListResult, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
+
+// listBySubscriptionNextResults retrieves the next set of results, if any.
+func (client SystemTopicsClient) listBySubscriptionNextResults(ctx context.Context, lastResults SystemTopicsListResult) (result SystemTopicsListResult, err error) {
+ req, err := lastResults.systemTopicsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "listBySubscriptionNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListBySubscriptionSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "listBySubscriptionNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListBySubscriptionResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "listBySubscriptionNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListBySubscriptionComplete enumerates all values, automatically crossing page boundaries as required.
+func (client SystemTopicsClient) ListBySubscriptionComplete(ctx context.Context, filter string, top *int32) (result SystemTopicsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicsClient.ListBySubscription")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListBySubscription(ctx, filter, top)
+ return
+}
+
+// Update asynchronously updates a system topic with the specified parameters.
+// Parameters:
+// resourceGroupName - the name of the resource group within the user's subscription.
+// systemTopicName - name of the system topic.
+// systemTopicUpdateParameters - systemTopic update information.
+func (client SystemTopicsClient) Update(ctx context.Context, resourceGroupName string, systemTopicName string, systemTopicUpdateParameters SystemTopicUpdateParameters) (result SystemTopicsUpdateFuture, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/SystemTopicsClient.Update")
+ defer func() {
+ sc := -1
+ if result.Response() != nil {
+ sc = result.Response().StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ req, err := client.UpdatePreparer(ctx, resourceGroupName, systemTopicName, systemTopicUpdateParameters)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "Update", nil, "Failure preparing request")
+ return
+ }
+
+ result, err = client.UpdateSender(req)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.SystemTopicsClient", "Update", result.Response(), "Failure sending request")
+ return
+ }
+
+ return
+}
+
+// UpdatePreparer prepares the Update request.
+func (client SystemTopicsClient) UpdatePreparer(ctx context.Context, resourceGroupName string, systemTopicName string, systemTopicUpdateParameters SystemTopicUpdateParameters) (*http.Request, error) {
+ pathParameters := map[string]interface{}{
+ "resourceGroupName": autorest.Encode("path", resourceGroupName),
+ "subscriptionId": autorest.Encode("path", client.SubscriptionID),
+ "systemTopicName": autorest.Encode("path", systemTopicName),
+ }
+
+ const APIVersion = "2020-04-01-preview"
+ queryParameters := map[string]interface{}{
+ "api-version": APIVersion,
+ }
+
+ preparer := autorest.CreatePreparer(
+ autorest.AsContentType("application/json; charset=utf-8"),
+ autorest.AsPatch(),
+ autorest.WithBaseURL(client.BaseURI),
+ autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}", pathParameters),
+ autorest.WithJSON(systemTopicUpdateParameters),
+ autorest.WithQueryParameters(queryParameters))
+ return preparer.Prepare((&http.Request{}).WithContext(ctx))
+}
+
+// UpdateSender sends the Update request. The method will close the
+// http.Response Body if it receives an error.
+func (client SystemTopicsClient) UpdateSender(req *http.Request) (future SystemTopicsUpdateFuture, err error) {
+ var resp *http.Response
+ resp, err = client.Send(req, azure.DoRetryWithRegistration(client.Client))
+ if err != nil {
+ return
+ }
+ future.Future, err = azure.NewFutureFromResponse(resp)
+ return
+}
+
+// UpdateResponder handles the response to the Update request. The method always
+// closes the http.Response Body.
+func (client SystemTopicsClient) UpdateResponder(resp *http.Response) (result SystemTopic, err error) {
+ err = autorest.Respond(
+ resp,
+ client.ByInspecting(),
+ azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusCreated),
+ autorest.ByUnmarshallingJSON(&result),
+ autorest.ByClosing())
+ result.Response = autorest.Response{Response: resp}
+ return
+}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/topics.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/topics.go
similarity index 79%
rename from vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/topics.go
rename to vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/topics.go
index 9991b5b815e7..9e92c66874a1 100644
--- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/topics.go
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/topics.go
@@ -45,8 +45,8 @@ func NewTopicsClientWithBaseURI(baseURI string, subscriptionID string) TopicsCli
// CreateOrUpdate asynchronously creates a new topic with the specified parameters.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// topicName - name of the topic
-// topicInfo - topic information
+// topicName - name of the topic.
+// topicInfo - topic information.
func (client TopicsClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, topicName string, topicInfo Topic) (result TopicsCreateOrUpdateFuture, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/TopicsClient.CreateOrUpdate")
@@ -81,7 +81,7 @@ func (client TopicsClient) CreateOrUpdatePreparer(ctx context.Context, resourceG
"topicName": autorest.Encode("path", topicName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -121,10 +121,10 @@ func (client TopicsClient) CreateOrUpdateResponder(resp *http.Response) (result
return
}
-// Delete delete existing topic
+// Delete delete existing topic.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// topicName - name of the topic
+// topicName - name of the topic.
func (client TopicsClient) Delete(ctx context.Context, resourceGroupName string, topicName string) (result TopicsDeleteFuture, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/TopicsClient.Delete")
@@ -159,7 +159,7 @@ func (client TopicsClient) DeletePreparer(ctx context.Context, resourceGroupName
"topicName": autorest.Encode("path", topicName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -196,10 +196,10 @@ func (client TopicsClient) DeleteResponder(resp *http.Response) (result autorest
return
}
-// Get get properties of a topic
+// Get get properties of a topic.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// topicName - name of the topic
+// topicName - name of the topic.
func (client TopicsClient) Get(ctx context.Context, resourceGroupName string, topicName string) (result Topic, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/TopicsClient.Get")
@@ -240,7 +240,7 @@ func (client TopicsClient) GetPreparer(ctx context.Context, resourceGroupName st
"topicName": autorest.Encode("path", topicName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -272,21 +272,30 @@ func (client TopicsClient) GetResponder(resp *http.Response) (result Topic, err
return
}
-// ListByResourceGroup list all the topics under a resource group
+// ListByResourceGroup list all the topics under a resource group.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-func (client TopicsClient) ListByResourceGroup(ctx context.Context, resourceGroupName string) (result TopicsListResult, err error) {
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client TopicsClient) ListByResourceGroup(ctx context.Context, resourceGroupName string, filter string, top *int32) (result TopicsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/TopicsClient.ListByResourceGroup")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.tlr.Response.Response != nil {
+ sc = result.tlr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListByResourceGroupPreparer(ctx, resourceGroupName)
+ result.fn = client.listByResourceGroupNextResults
+ req, err := client.ListByResourceGroupPreparer(ctx, resourceGroupName, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.TopicsClient", "ListByResourceGroup", nil, "Failure preparing request")
return
@@ -294,12 +303,12 @@ func (client TopicsClient) ListByResourceGroup(ctx context.Context, resourceGrou
resp, err := client.ListByResourceGroupSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.tlr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.TopicsClient", "ListByResourceGroup", resp, "Failure sending request")
return
}
- result, err = client.ListByResourceGroupResponder(resp)
+ result.tlr, err = client.ListByResourceGroupResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.TopicsClient", "ListByResourceGroup", resp, "Failure responding to request")
}
@@ -308,16 +317,22 @@ func (client TopicsClient) ListByResourceGroup(ctx context.Context, resourceGrou
}
// ListByResourceGroupPreparer prepares the ListByResourceGroup request.
-func (client TopicsClient) ListByResourceGroupPreparer(ctx context.Context, resourceGroupName string) (*http.Request, error) {
+func (client TopicsClient) ListByResourceGroupPreparer(ctx context.Context, resourceGroupName string, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"resourceGroupName": autorest.Encode("path", resourceGroupName),
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -346,19 +361,66 @@ func (client TopicsClient) ListByResourceGroupResponder(resp *http.Response) (re
return
}
-// ListBySubscription list all the topics under an Azure subscription
-func (client TopicsClient) ListBySubscription(ctx context.Context) (result TopicsListResult, err error) {
+// listByResourceGroupNextResults retrieves the next set of results, if any.
+func (client TopicsClient) listByResourceGroupNextResults(ctx context.Context, lastResults TopicsListResult) (result TopicsListResult, err error) {
+ req, err := lastResults.topicsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.TopicsClient", "listByResourceGroupNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListByResourceGroupSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.TopicsClient", "listByResourceGroupNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListByResourceGroupResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.TopicsClient", "listByResourceGroupNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListByResourceGroupComplete enumerates all values, automatically crossing page boundaries as required.
+func (client TopicsClient) ListByResourceGroupComplete(ctx context.Context, resourceGroupName string, filter string, top *int32) (result TopicsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/TopicsClient.ListByResourceGroup")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListByResourceGroup(ctx, resourceGroupName, filter, top)
+ return
+}
+
+// ListBySubscription list all the topics under an Azure subscription.
+// Parameters:
+// filter - the query used to filter the search results using OData syntax. Filtering is permitted on the
+// 'name' property only and with limited number of OData operations. These operations are: the 'contains'
+// function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal).
+// No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE,
+// 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq
+// 'westus'.
+// top - the number of results to return per page for the list operation. Valid range for top parameter is 1 to
+// 100. If not specified, the default number of results to be returned is 20 items per page.
+func (client TopicsClient) ListBySubscription(ctx context.Context, filter string, top *int32) (result TopicsListResultPage, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/TopicsClient.ListBySubscription")
defer func() {
sc := -1
- if result.Response.Response != nil {
- sc = result.Response.Response.StatusCode
+ if result.tlr.Response.Response != nil {
+ sc = result.tlr.Response.Response.StatusCode
}
tracing.EndSpan(ctx, sc, err)
}()
}
- req, err := client.ListBySubscriptionPreparer(ctx)
+ result.fn = client.listBySubscriptionNextResults
+ req, err := client.ListBySubscriptionPreparer(ctx, filter, top)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.TopicsClient", "ListBySubscription", nil, "Failure preparing request")
return
@@ -366,12 +428,12 @@ func (client TopicsClient) ListBySubscription(ctx context.Context) (result Topic
resp, err := client.ListBySubscriptionSender(req)
if err != nil {
- result.Response = autorest.Response{Response: resp}
+ result.tlr.Response = autorest.Response{Response: resp}
err = autorest.NewErrorWithError(err, "eventgrid.TopicsClient", "ListBySubscription", resp, "Failure sending request")
return
}
- result, err = client.ListBySubscriptionResponder(resp)
+ result.tlr, err = client.ListBySubscriptionResponder(resp)
if err != nil {
err = autorest.NewErrorWithError(err, "eventgrid.TopicsClient", "ListBySubscription", resp, "Failure responding to request")
}
@@ -380,15 +442,21 @@ func (client TopicsClient) ListBySubscription(ctx context.Context) (result Topic
}
// ListBySubscriptionPreparer prepares the ListBySubscription request.
-func (client TopicsClient) ListBySubscriptionPreparer(ctx context.Context) (*http.Request, error) {
+func (client TopicsClient) ListBySubscriptionPreparer(ctx context.Context, filter string, top *int32) (*http.Request, error) {
pathParameters := map[string]interface{}{
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
+ if len(filter) > 0 {
+ queryParameters["$filter"] = autorest.Encode("query", filter)
+ }
+ if top != nil {
+ queryParameters["$top"] = autorest.Encode("query", *top)
+ }
preparer := autorest.CreatePreparer(
autorest.AsGet(),
@@ -417,12 +485,49 @@ func (client TopicsClient) ListBySubscriptionResponder(resp *http.Response) (res
return
}
-// ListEventTypes list event types for a topic
+// listBySubscriptionNextResults retrieves the next set of results, if any.
+func (client TopicsClient) listBySubscriptionNextResults(ctx context.Context, lastResults TopicsListResult) (result TopicsListResult, err error) {
+ req, err := lastResults.topicsListResultPreparer(ctx)
+ if err != nil {
+ return result, autorest.NewErrorWithError(err, "eventgrid.TopicsClient", "listBySubscriptionNextResults", nil, "Failure preparing next results request")
+ }
+ if req == nil {
+ return
+ }
+ resp, err := client.ListBySubscriptionSender(req)
+ if err != nil {
+ result.Response = autorest.Response{Response: resp}
+ return result, autorest.NewErrorWithError(err, "eventgrid.TopicsClient", "listBySubscriptionNextResults", resp, "Failure sending next results request")
+ }
+ result, err = client.ListBySubscriptionResponder(resp)
+ if err != nil {
+ err = autorest.NewErrorWithError(err, "eventgrid.TopicsClient", "listBySubscriptionNextResults", resp, "Failure responding to next results request")
+ }
+ return
+}
+
+// ListBySubscriptionComplete enumerates all values, automatically crossing page boundaries as required.
+func (client TopicsClient) ListBySubscriptionComplete(ctx context.Context, filter string, top *int32) (result TopicsListResultIterator, err error) {
+ if tracing.IsEnabled() {
+ ctx = tracing.StartSpan(ctx, fqdn+"/TopicsClient.ListBySubscription")
+ defer func() {
+ sc := -1
+ if result.Response().Response.Response != nil {
+ sc = result.page.Response().Response.Response.StatusCode
+ }
+ tracing.EndSpan(ctx, sc, err)
+ }()
+ }
+ result.page, err = client.ListBySubscription(ctx, filter, top)
+ return
+}
+
+// ListEventTypes list event types for a topic.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// providerNamespace - namespace of the provider of the topic
-// resourceTypeName - name of the topic type
-// resourceName - name of the topic
+// providerNamespace - namespace of the provider of the topic.
+// resourceTypeName - name of the topic type.
+// resourceName - name of the topic.
func (client TopicsClient) ListEventTypes(ctx context.Context, resourceGroupName string, providerNamespace string, resourceTypeName string, resourceName string) (result EventTypesListResult, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/TopicsClient.ListEventTypes")
@@ -465,7 +570,7 @@ func (client TopicsClient) ListEventTypesPreparer(ctx context.Context, resourceG
"subscriptionId": autorest.Encode("path", client.SubscriptionID),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -497,10 +602,10 @@ func (client TopicsClient) ListEventTypesResponder(resp *http.Response) (result
return
}
-// ListSharedAccessKeys list the two keys used to publish to a topic
+// ListSharedAccessKeys list the two keys used to publish to a topic.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// topicName - name of the topic
+// topicName - name of the topic.
func (client TopicsClient) ListSharedAccessKeys(ctx context.Context, resourceGroupName string, topicName string) (result TopicSharedAccessKeys, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/TopicsClient.ListSharedAccessKeys")
@@ -541,7 +646,7 @@ func (client TopicsClient) ListSharedAccessKeysPreparer(ctx context.Context, res
"topicName": autorest.Encode("path", topicName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -573,11 +678,11 @@ func (client TopicsClient) ListSharedAccessKeysResponder(resp *http.Response) (r
return
}
-// RegenerateKey regenerate a shared access key for a topic
+// RegenerateKey regenerate a shared access key for a topic.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// topicName - name of the topic
-// regenerateKeyRequest - request body to regenerate key
+// topicName - name of the topic.
+// regenerateKeyRequest - request body to regenerate key.
func (client TopicsClient) RegenerateKey(ctx context.Context, resourceGroupName string, topicName string, regenerateKeyRequest TopicRegenerateKeyRequest) (result TopicSharedAccessKeys, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/TopicsClient.RegenerateKey")
@@ -624,7 +729,7 @@ func (client TopicsClient) RegenerateKeyPreparer(ctx context.Context, resourceGr
"topicName": autorest.Encode("path", topicName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -661,8 +766,8 @@ func (client TopicsClient) RegenerateKeyResponder(resp *http.Response) (result T
// Update asynchronously updates a topic with the specified parameters.
// Parameters:
// resourceGroupName - the name of the resource group within the user's subscription.
-// topicName - name of the topic
-// topicUpdateParameters - topic update information
+// topicName - name of the topic.
+// topicUpdateParameters - topic update information.
func (client TopicsClient) Update(ctx context.Context, resourceGroupName string, topicName string, topicUpdateParameters TopicUpdateParameters) (result TopicsUpdateFuture, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/TopicsClient.Update")
@@ -697,7 +802,7 @@ func (client TopicsClient) UpdatePreparer(ctx context.Context, resourceGroupName
"topicName": autorest.Encode("path", topicName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/topictypes.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/topictypes.go
similarity index 96%
rename from vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/topictypes.go
rename to vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/topictypes.go
index 9a3ca4c7cc10..5241cee4ceec 100644
--- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/topictypes.go
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/topictypes.go
@@ -41,9 +41,9 @@ func NewTopicTypesClientWithBaseURI(baseURI string, subscriptionID string) Topic
return TopicTypesClient{NewWithBaseURI(baseURI, subscriptionID)}
}
-// Get get information about a topic type
+// Get get information about a topic type.
// Parameters:
-// topicTypeName - name of the topic type
+// topicTypeName - name of the topic type.
func (client TopicTypesClient) Get(ctx context.Context, topicTypeName string) (result TopicTypeInfo, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/TopicTypesClient.Get")
@@ -82,7 +82,7 @@ func (client TopicTypesClient) GetPreparer(ctx context.Context, topicTypeName st
"topicTypeName": autorest.Encode("path", topicTypeName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -114,7 +114,7 @@ func (client TopicTypesClient) GetResponder(resp *http.Response) (result TopicTy
return
}
-// List list all registered topic types
+// List list all registered topic types.
func (client TopicTypesClient) List(ctx context.Context) (result TopicTypesListResult, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/TopicTypesClient.List")
@@ -149,7 +149,7 @@ func (client TopicTypesClient) List(ctx context.Context) (result TopicTypesListR
// ListPreparer prepares the List request.
func (client TopicTypesClient) ListPreparer(ctx context.Context) (*http.Request, error) {
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
@@ -181,9 +181,9 @@ func (client TopicTypesClient) ListResponder(resp *http.Response) (result TopicT
return
}
-// ListEventTypes list event types for a topic type
+// ListEventTypes list event types for a topic type.
// Parameters:
-// topicTypeName - name of the topic type
+// topicTypeName - name of the topic type.
func (client TopicTypesClient) ListEventTypes(ctx context.Context, topicTypeName string) (result EventTypesListResult, err error) {
if tracing.IsEnabled() {
ctx = tracing.StartSpan(ctx, fqdn+"/TopicTypesClient.ListEventTypes")
@@ -222,7 +222,7 @@ func (client TopicTypesClient) ListEventTypesPreparer(ctx context.Context, topic
"topicTypeName": autorest.Encode("path", topicTypeName),
}
- const APIVersion = "2018-09-15-preview"
+ const APIVersion = "2020-04-01-preview"
queryParameters := map[string]interface{}{
"api-version": APIVersion,
}
diff --git a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/version.go b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/version.go
similarity index 93%
rename from vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/version.go
rename to vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/version.go
index 8a5b18bcded6..4f97ef4c465b 100644
--- a/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid/version.go
+++ b/vendor/github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid/version.go
@@ -21,7 +21,7 @@ import "github.com/Azure/azure-sdk-for-go/version"
// UserAgent returns the UserAgent string to use when sending http.Requests.
func UserAgent() string {
- return "Azure-SDK-For-Go/" + version.Number + " eventgrid/2018-09-15-preview"
+ return "Azure-SDK-For-Go/" + version.Number + " eventgrid/2020-04-01-preview"
}
// Version returns the semantic version (see http://semver.org) of the client.
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 013ce9b3f746..e6673de87518 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -57,7 +57,7 @@ github.com/Azure/azure-sdk-for-go/services/preview/appplatform/mgmt/2019-05-01-p
github.com/Azure/azure-sdk-for-go/services/preview/authorization/mgmt/2018-09-01-preview/authorization
github.com/Azure/azure-sdk-for-go/services/preview/botservice/mgmt/2018-07-12/botservice
github.com/Azure/azure-sdk-for-go/services/preview/customproviders/mgmt/2018-09-01-preview/customproviders
-github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2018-09-15-preview/eventgrid
+github.com/Azure/azure-sdk-for-go/services/preview/eventgrid/mgmt/2020-04-01-preview/eventgrid
github.com/Azure/azure-sdk-for-go/services/preview/hdinsight/mgmt/2018-06-01-preview/hdinsight
github.com/Azure/azure-sdk-for-go/services/preview/iothub/mgmt/2018-12-01-preview/devices
github.com/Azure/azure-sdk-for-go/services/preview/maintenance/mgmt/2018-06-01-preview/maintenance
diff --git a/website/docs/r/eventgrid_domain.html.markdown b/website/docs/r/eventgrid_domain.html.markdown
index 4b544c603547..36df1c8a189d 100644
--- a/website/docs/r/eventgrid_domain.html.markdown
+++ b/website/docs/r/eventgrid_domain.html.markdown
@@ -40,7 +40,7 @@ The following arguments are supported:
* `location` - (Required) Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
-* `input_schema` - (Optional) Specifies the schema in which incoming events will be published to this domain. Allowed values are `cloudeventv01schema`, `customeventschema`, or `eventgridschema`. Defaults to `eventgridschema`. Changing this forces a new resource to be created.
+* `input_schema` - (Optional) Specifies the schema in which incoming events will be published to this domain. Allowed values are `CloudEventSchemaV1_0`, `CustomEventSchema`, or `EventGridSchema`. Defaults to `eventgridschema`. Changing this forces a new resource to be created.
* `input_mapping_fields` - (Optional) A `input_mapping_fields` block as defined below.
diff --git a/website/docs/r/eventgrid_event_subscription.html.markdown b/website/docs/r/eventgrid_event_subscription.html.markdown
index 5a6b386c0b61..935add8a35cb 100644
--- a/website/docs/r/eventgrid_event_subscription.html.markdown
+++ b/website/docs/r/eventgrid_event_subscription.html.markdown
@@ -56,9 +56,7 @@ The following arguments are supported:
* `scope` - (Required) Specifies the scope at which the EventGrid Event Subscription should be created. Changing this forces a new resource to be created.
-* `event_delivery_schema` - (Optional) Specifies the event delivery schema for the event subscription. Possible values include: `EventGridSchema`, `CloudEventV01Schema`, `CustomInputSchema`.
-
-* `topic_name` - (Optional) Specifies the name of the topic to associate with the event subscription.
+* `event_delivery_schema` - (Optional) Specifies the event delivery schema for the event subscription. Possible values include: `EventGridSchema`, `CloudEventSchemaV1_0`, `CustomInputSchema`. Defaults to `EventGridSchema`. Changing this forces a new resource to be created.
* `storage_queue_endpoint` - (Optional) A `storage_queue_endpoint` block as defined below.
@@ -100,6 +98,8 @@ A `hybrid_connection_endpoint` supports the following:
* `hybrid_connection_id` - (Required) Specifies the id of the hybrid connection where the Event Subscription will receive events.
+---
+
A `webhook_endpoint` supports the following:
* `url` - (Required) Specifies the url of the webhook where the Event Subscription will receive events.
@@ -136,9 +136,9 @@ The following attributes are exported:
* `id` - The ID of the EventGrid Event Subscription.
-## Timeouts
-
+* `topic_name` - (Optional) Specifies the name of the topic to associate with the event subscription.
+## Timeouts
The `timeouts` block allows you to specify [timeouts](https://www.terraform.io/docs/configuration/resources.html#timeouts) for certain actions: