// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT.

package armmanagednetworkfabric_test

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/managednetworkfabric/armmanagednetworkfabric/v2"
	"log"
)

// Generated from example definition: 2025-07-15/RoutePolicies_CommitConfiguration.json
func ExampleRoutePoliciesClient_BeginCommitConfiguration() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armmanagednetworkfabric.NewClientFactory("0000ABCD-0A0B-0000-0000-000000ABCDEF", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewRoutePoliciesClient().BeginCommitConfiguration(ctx, "example-rg", "example-routePolicy", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armmanagednetworkfabric.RoutePoliciesClientCommitConfigurationResponse{
	// 	CommonPostActionResponseForStateUpdate: &armmanagednetworkfabric.CommonPostActionResponseForStateUpdate{
	// 		ConfigurationState: to.Ptr(armmanagednetworkfabric.ConfigurationStateSucceeded),
	// 	},
	// }
}

// Generated from example definition: 2025-07-15/RoutePolicies_Create.json
func ExampleRoutePoliciesClient_BeginCreate() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armmanagednetworkfabric.NewClientFactory("0000ABCD-0A0B-0000-0000-000000ABCDEF", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewRoutePoliciesClient().BeginCreate(ctx, "example-rg", "example-routePolicy", armmanagednetworkfabric.RoutePolicy{
		Properties: &armmanagednetworkfabric.RoutePolicyProperties{
			Annotation:    to.Ptr("annotation"),
			DefaultAction: to.Ptr(armmanagednetworkfabric.CommunityActionTypesPermit),
			Statements: []*armmanagednetworkfabric.RoutePolicyStatementProperties{
				{
					Annotation:     to.Ptr("annotation"),
					SequenceNumber: to.Ptr[int64](7),
					Condition: &armmanagednetworkfabric.StatementConditionProperties{
						IPCommunityIDs: []*string{
							to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
						},
						IPExtendedCommunityIDs: []*string{
							to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
						},
						Type:       to.Ptr(armmanagednetworkfabric.RoutePolicyConditionTypeOr),
						IPPrefixID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipPrefixes/example-ipPrefix"),
					},
					Action: &armmanagednetworkfabric.StatementActionProperties{
						LocalPreference: to.Ptr[int64](20),
						ActionType:      to.Ptr(armmanagednetworkfabric.RoutePolicyActionTypePermit),
						IPCommunityProperties: &armmanagednetworkfabric.ActionIPCommunityProperties{
							Add: &armmanagednetworkfabric.IPCommunityIDList{
								IPCommunityIDs: []*string{
									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
								},
							},
							Delete: &armmanagednetworkfabric.IPCommunityIDList{
								IPCommunityIDs: []*string{
									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
								},
							},
							Set: &armmanagednetworkfabric.IPCommunityIDList{
								IPCommunityIDs: []*string{
									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
								},
							},
						},
						IPExtendedCommunityProperties: &armmanagednetworkfabric.ActionIPExtendedCommunityProperties{
							Add: &armmanagednetworkfabric.IPExtendedCommunityIDList{
								IPExtendedCommunityIDs: []*string{
									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
								},
							},
							Delete: &armmanagednetworkfabric.IPExtendedCommunityIDList{
								IPExtendedCommunityIDs: []*string{
									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
								},
							},
							Set: &armmanagednetworkfabric.IPExtendedCommunityIDList{
								IPExtendedCommunityIDs: []*string{
									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
								},
							},
						},
					},
				},
			},
			NetworkFabricID:     to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkFabrics/example-fabric"),
			AddressFamilyType:   to.Ptr(armmanagednetworkfabric.AddressFamilyTypeIPv4),
			AdministrativeState: to.Ptr(armmanagednetworkfabric.AdministrativeStateEnabled),
		},
		Tags: map[string]*string{
			"keyId": to.Ptr("keyValue"),
		},
		Location: to.Ptr("eastus"),
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armmanagednetworkfabric.RoutePoliciesClientCreateResponse{
	// 	RoutePolicy: &armmanagednetworkfabric.RoutePolicy{
	// 		Properties: &armmanagednetworkfabric.RoutePolicyProperties{
	// 			Annotation: to.Ptr("annotation"),
	// 			DefaultAction: to.Ptr(armmanagednetworkfabric.CommunityActionTypesPermit),
	// 			Statements: []*armmanagednetworkfabric.RoutePolicyStatementProperties{
	// 				{
	// 					Annotation: to.Ptr("annotation"),
	// 					SequenceNumber: to.Ptr[int64](7),
	// 					Condition: &armmanagednetworkfabric.StatementConditionProperties{
	// 						IPCommunityIDs: []*string{
	// 							to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
	// 						},
	// 						IPExtendedCommunityIDs: []*string{
	// 							to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
	// 						},
	// 						Type: to.Ptr(armmanagednetworkfabric.RoutePolicyConditionTypeOr),
	// 						IPPrefixID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipPrefixes/example-ipPrefix"),
	// 					},
	// 					Action: &armmanagednetworkfabric.StatementActionProperties{
	// 						LocalPreference: to.Ptr[int64](20),
	// 						ActionType: to.Ptr(armmanagednetworkfabric.RoutePolicyActionTypePermit),
	// 						IPCommunityProperties: &armmanagednetworkfabric.ActionIPCommunityProperties{
	// 							Add: &armmanagednetworkfabric.IPCommunityIDList{
	// 								IPCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
	// 								},
	// 							},
	// 							Delete: &armmanagednetworkfabric.IPCommunityIDList{
	// 								IPCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
	// 								},
	// 							},
	// 							Set: &armmanagednetworkfabric.IPCommunityIDList{
	// 								IPCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
	// 								},
	// 							},
	// 						},
	// 						IPExtendedCommunityProperties: &armmanagednetworkfabric.ActionIPExtendedCommunityProperties{
	// 							Add: &armmanagednetworkfabric.IPExtendedCommunityIDList{
	// 								IPExtendedCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
	// 								},
	// 							},
	// 							Delete: &armmanagednetworkfabric.IPExtendedCommunityIDList{
	// 								IPExtendedCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
	// 								},
	// 							},
	// 							Set: &armmanagednetworkfabric.IPExtendedCommunityIDList{
	// 								IPExtendedCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
	// 								},
	// 							},
	// 						},
	// 					},
	// 				},
	// 			},
	// 			NetworkFabricID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkFabrics/example-fabric"),
	// 			AddressFamilyType: to.Ptr(armmanagednetworkfabric.AddressFamilyTypeIPv4),
	// 			ConfigurationState: to.Ptr(armmanagednetworkfabric.ConfigurationStateSucceeded),
	// 			ProvisioningState: to.Ptr(armmanagednetworkfabric.ProvisioningStateAccepted),
	// 			AdministrativeState: to.Ptr(armmanagednetworkfabric.AdministrativeStateEnabled),
	// 		},
	// 		Tags: map[string]*string{
	// 			"keyId": to.Ptr("keyValue"),
	// 		},
	// 		Location: to.Ptr("eastus"),
	// 		ID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/routePolicies/example-routePolicy"),
	// 		Name: to.Ptr("example-routePolicy"),
	// 		Type: to.Ptr("microsoft.managednetworkfabric/routePolicies"),
	// 		SystemData: &armmanagednetworkfabric.SystemData{
	// 			CreatedBy: to.Ptr("email@address.com"),
	// 			CreatedByType: to.Ptr(armmanagednetworkfabric.CreatedByTypeUser),
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-06-09T04:51:41.251Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("UserId"),
	// 			LastModifiedByType: to.Ptr(armmanagednetworkfabric.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-06-09T04:51:41.251Z"); return t}()),
	// 		},
	// 	},
	// }
}

// Generated from example definition: 2025-07-15/RoutePolicies_Delete.json
func ExampleRoutePoliciesClient_BeginDelete() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armmanagednetworkfabric.NewClientFactory("0000ABCD-0A0B-0000-0000-000000ABCDEF", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewRoutePoliciesClient().BeginDelete(ctx, "example-rg", "example-routePolicy", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
}

// Generated from example definition: 2025-07-15/RoutePolicies_Get.json
func ExampleRoutePoliciesClient_Get() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armmanagednetworkfabric.NewClientFactory("0000ABCD-0A0B-0000-0000-000000ABCDEF", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewRoutePoliciesClient().Get(ctx, "example-rg", "example-routePolicy", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armmanagednetworkfabric.RoutePoliciesClientGetResponse{
	// 	RoutePolicy: &armmanagednetworkfabric.RoutePolicy{
	// 		Properties: &armmanagednetworkfabric.RoutePolicyProperties{
	// 			Annotation: to.Ptr("annotation"),
	// 			DefaultAction: to.Ptr(armmanagednetworkfabric.CommunityActionTypesPermit),
	// 			Statements: []*armmanagednetworkfabric.RoutePolicyStatementProperties{
	// 				{
	// 					Annotation: to.Ptr("annotation"),
	// 					SequenceNumber: to.Ptr[int64](7),
	// 					Condition: &armmanagednetworkfabric.StatementConditionProperties{
	// 						IPCommunityIDs: []*string{
	// 							to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
	// 						},
	// 						IPExtendedCommunityIDs: []*string{
	// 							to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
	// 						},
	// 						Type: to.Ptr(armmanagednetworkfabric.RoutePolicyConditionTypeOr),
	// 						IPPrefixID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipPrefixes/example-ipPrefix"),
	// 					},
	// 					Action: &armmanagednetworkfabric.StatementActionProperties{
	// 						LocalPreference: to.Ptr[int64](20),
	// 						ActionType: to.Ptr(armmanagednetworkfabric.RoutePolicyActionTypePermit),
	// 						IPCommunityProperties: &armmanagednetworkfabric.ActionIPCommunityProperties{
	// 							Add: &armmanagednetworkfabric.IPCommunityIDList{
	// 								IPCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
	// 								},
	// 							},
	// 							Delete: &armmanagednetworkfabric.IPCommunityIDList{
	// 								IPCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
	// 								},
	// 							},
	// 							Set: &armmanagednetworkfabric.IPCommunityIDList{
	// 								IPCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
	// 								},
	// 							},
	// 						},
	// 						IPExtendedCommunityProperties: &armmanagednetworkfabric.ActionIPExtendedCommunityProperties{
	// 							Add: &armmanagednetworkfabric.IPExtendedCommunityIDList{
	// 								IPExtendedCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
	// 								},
	// 							},
	// 							Delete: &armmanagednetworkfabric.IPExtendedCommunityIDList{
	// 								IPExtendedCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
	// 								},
	// 							},
	// 							Set: &armmanagednetworkfabric.IPExtendedCommunityIDList{
	// 								IPExtendedCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
	// 								},
	// 							},
	// 						},
	// 					},
	// 				},
	// 			},
	// 			NetworkFabricID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkFabrics/example-fabric"),
	// 			AddressFamilyType: to.Ptr(armmanagednetworkfabric.AddressFamilyTypeIPv4),
	// 			LastOperation: &armmanagednetworkfabric.LastOperationProperties{
	// 				Details: to.Ptr("Succeeded"),
	// 			},
	// 			ConfigurationState: to.Ptr(armmanagednetworkfabric.ConfigurationStateSucceeded),
	// 			ProvisioningState: to.Ptr(armmanagednetworkfabric.ProvisioningStateAccepted),
	// 			AdministrativeState: to.Ptr(armmanagednetworkfabric.AdministrativeStateEnabled),
	// 		},
	// 		Tags: map[string]*string{
	// 			"keyId": to.Ptr("keyValue"),
	// 		},
	// 		Location: to.Ptr("eastus"),
	// 		ID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/routePolicies/example-routePolicy"),
	// 		Name: to.Ptr("example-routePolicy"),
	// 		Type: to.Ptr("microsoft.managednetworkfabric/routePolicies"),
	// 		SystemData: &armmanagednetworkfabric.SystemData{
	// 			CreatedBy: to.Ptr("email@address.com"),
	// 			CreatedByType: to.Ptr(armmanagednetworkfabric.CreatedByTypeUser),
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-06-09T04:51:41.251Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("UserId"),
	// 			LastModifiedByType: to.Ptr(armmanagednetworkfabric.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-06-09T04:51:41.251Z"); return t}()),
	// 		},
	// 	},
	// }
}

// Generated from example definition: 2025-07-15/RoutePolicies_ListByResourceGroup.json
func ExampleRoutePoliciesClient_NewListByResourceGroupPager() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armmanagednetworkfabric.NewClientFactory("0000ABCD-0A0B-0000-0000-000000ABCDEF", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewRoutePoliciesClient().NewListByResourceGroupPager("example-rg", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armmanagednetworkfabric.RoutePoliciesClientListByResourceGroupResponse{
		// 	RoutePoliciesListResult: armmanagednetworkfabric.RoutePoliciesListResult{
		// 		Value: []*armmanagednetworkfabric.RoutePolicy{
		// 			{
		// 				Properties: &armmanagednetworkfabric.RoutePolicyProperties{
		// 					Annotation: to.Ptr("annotation"),
		// 					DefaultAction: to.Ptr(armmanagednetworkfabric.CommunityActionTypesPermit),
		// 					Statements: []*armmanagednetworkfabric.RoutePolicyStatementProperties{
		// 						{
		// 							Annotation: to.Ptr("annotation"),
		// 							SequenceNumber: to.Ptr[int64](7),
		// 							Condition: &armmanagednetworkfabric.StatementConditionProperties{
		// 								IPCommunityIDs: []*string{
		// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
		// 								},
		// 								IPExtendedCommunityIDs: []*string{
		// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
		// 								},
		// 								Type: to.Ptr(armmanagednetworkfabric.RoutePolicyConditionTypeOr),
		// 								IPPrefixID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipPrefixes/example-ipPrefix"),
		// 							},
		// 							Action: &armmanagednetworkfabric.StatementActionProperties{
		// 								LocalPreference: to.Ptr[int64](20),
		// 								ActionType: to.Ptr(armmanagednetworkfabric.RoutePolicyActionTypePermit),
		// 								IPCommunityProperties: &armmanagednetworkfabric.ActionIPCommunityProperties{
		// 									Add: &armmanagednetworkfabric.IPCommunityIDList{
		// 										IPCommunityIDs: []*string{
		// 											to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
		// 										},
		// 									},
		// 									Delete: &armmanagednetworkfabric.IPCommunityIDList{
		// 										IPCommunityIDs: []*string{
		// 											to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
		// 										},
		// 									},
		// 									Set: &armmanagednetworkfabric.IPCommunityIDList{
		// 										IPCommunityIDs: []*string{
		// 											to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
		// 										},
		// 									},
		// 								},
		// 								IPExtendedCommunityProperties: &armmanagednetworkfabric.ActionIPExtendedCommunityProperties{
		// 									Add: &armmanagednetworkfabric.IPExtendedCommunityIDList{
		// 										IPExtendedCommunityIDs: []*string{
		// 											to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
		// 										},
		// 									},
		// 									Delete: &armmanagednetworkfabric.IPExtendedCommunityIDList{
		// 										IPExtendedCommunityIDs: []*string{
		// 											to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
		// 										},
		// 									},
		// 									Set: &armmanagednetworkfabric.IPExtendedCommunityIDList{
		// 										IPExtendedCommunityIDs: []*string{
		// 											to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
		// 										},
		// 									},
		// 								},
		// 							},
		// 						},
		// 					},
		// 					NetworkFabricID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkFabrics/example-fabric"),
		// 					AddressFamilyType: to.Ptr(armmanagednetworkfabric.AddressFamilyTypeIPv4),
		// 					LastOperation: &armmanagednetworkfabric.LastOperationProperties{
		// 						Details: to.Ptr("Succeeded"),
		// 					},
		// 					ConfigurationState: to.Ptr(armmanagednetworkfabric.ConfigurationStateSucceeded),
		// 					ProvisioningState: to.Ptr(armmanagednetworkfabric.ProvisioningStateAccepted),
		// 					AdministrativeState: to.Ptr(armmanagednetworkfabric.AdministrativeStateEnabled),
		// 				},
		// 				Tags: map[string]*string{
		// 					"keyId": to.Ptr("keyValue"),
		// 				},
		// 				Location: to.Ptr("eastus"),
		// 				ID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/routePolicies/example-routePolicy"),
		// 				Name: to.Ptr("example-routePolicy"),
		// 				Type: to.Ptr("microsoft.managednetworkfabric/routePolicies"),
		// 				SystemData: &armmanagednetworkfabric.SystemData{
		// 					CreatedBy: to.Ptr("email@address.com"),
		// 					CreatedByType: to.Ptr(armmanagednetworkfabric.CreatedByTypeUser),
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-06-09T04:51:41.251Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("UserId"),
		// 					LastModifiedByType: to.Ptr(armmanagednetworkfabric.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-06-09T04:51:41.251Z"); return t}()),
		// 				},
		// 			},
		// 		},
		// 		NextLink: to.Ptr("https://microsoft.com/aukskqxh"),
		// 	},
		// }
	}
}

// Generated from example definition: 2025-07-15/RoutePolicies_ListBySubscription.json
func ExampleRoutePoliciesClient_NewListBySubscriptionPager() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armmanagednetworkfabric.NewClientFactory("0000ABCD-0A0B-0000-0000-000000ABCDEF", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewRoutePoliciesClient().NewListBySubscriptionPager(nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armmanagednetworkfabric.RoutePoliciesClientListBySubscriptionResponse{
		// 	RoutePoliciesListResult: armmanagednetworkfabric.RoutePoliciesListResult{
		// 		Value: []*armmanagednetworkfabric.RoutePolicy{
		// 			{
		// 				Properties: &armmanagednetworkfabric.RoutePolicyProperties{
		// 					Annotation: to.Ptr("annotation"),
		// 					DefaultAction: to.Ptr(armmanagednetworkfabric.CommunityActionTypesPermit),
		// 					Statements: []*armmanagednetworkfabric.RoutePolicyStatementProperties{
		// 						{
		// 							Annotation: to.Ptr("annotation"),
		// 							SequenceNumber: to.Ptr[int64](7),
		// 							Condition: &armmanagednetworkfabric.StatementConditionProperties{
		// 								IPCommunityIDs: []*string{
		// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
		// 								},
		// 								IPExtendedCommunityIDs: []*string{
		// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
		// 								},
		// 								Type: to.Ptr(armmanagednetworkfabric.RoutePolicyConditionTypeOr),
		// 								IPPrefixID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipPrefixes/example-ipPrefix"),
		// 							},
		// 							Action: &armmanagednetworkfabric.StatementActionProperties{
		// 								LocalPreference: to.Ptr[int64](20),
		// 								ActionType: to.Ptr(armmanagednetworkfabric.RoutePolicyActionTypePermit),
		// 								IPCommunityProperties: &armmanagednetworkfabric.ActionIPCommunityProperties{
		// 									Add: &armmanagednetworkfabric.IPCommunityIDList{
		// 										IPCommunityIDs: []*string{
		// 											to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
		// 										},
		// 									},
		// 									Delete: &armmanagednetworkfabric.IPCommunityIDList{
		// 										IPCommunityIDs: []*string{
		// 											to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
		// 										},
		// 									},
		// 									Set: &armmanagednetworkfabric.IPCommunityIDList{
		// 										IPCommunityIDs: []*string{
		// 											to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
		// 										},
		// 									},
		// 								},
		// 								IPExtendedCommunityProperties: &armmanagednetworkfabric.ActionIPExtendedCommunityProperties{
		// 									Add: &armmanagednetworkfabric.IPExtendedCommunityIDList{
		// 										IPExtendedCommunityIDs: []*string{
		// 											to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
		// 										},
		// 									},
		// 									Delete: &armmanagednetworkfabric.IPExtendedCommunityIDList{
		// 										IPExtendedCommunityIDs: []*string{
		// 											to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
		// 										},
		// 									},
		// 									Set: &armmanagednetworkfabric.IPExtendedCommunityIDList{
		// 										IPExtendedCommunityIDs: []*string{
		// 											to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
		// 										},
		// 									},
		// 								},
		// 							},
		// 						},
		// 					},
		// 					NetworkFabricID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkFabrics/example-fabric"),
		// 					AddressFamilyType: to.Ptr(armmanagednetworkfabric.AddressFamilyTypeIPv4),
		// 					LastOperation: &armmanagednetworkfabric.LastOperationProperties{
		// 						Details: to.Ptr("Succeeded"),
		// 					},
		// 					ConfigurationState: to.Ptr(armmanagednetworkfabric.ConfigurationStateSucceeded),
		// 					ProvisioningState: to.Ptr(armmanagednetworkfabric.ProvisioningStateAccepted),
		// 					AdministrativeState: to.Ptr(armmanagednetworkfabric.AdministrativeStateEnabled),
		// 				},
		// 				Tags: map[string]*string{
		// 					"keyId": to.Ptr("keyValue"),
		// 				},
		// 				Location: to.Ptr("eastus"),
		// 				ID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/routePolicies/example-routePolicy"),
		// 				Name: to.Ptr("example-routePolicy"),
		// 				Type: to.Ptr("microsoft.managednetworkfabric/routePolicies"),
		// 				SystemData: &armmanagednetworkfabric.SystemData{
		// 					CreatedBy: to.Ptr("email@address.com"),
		// 					CreatedByType: to.Ptr(armmanagednetworkfabric.CreatedByTypeUser),
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-06-09T04:51:41.251Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("UserId"),
		// 					LastModifiedByType: to.Ptr(armmanagednetworkfabric.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-06-09T04:51:41.251Z"); return t}()),
		// 				},
		// 			},
		// 		},
		// 		NextLink: to.Ptr("https://microsoft.com/aukskqxh"),
		// 	},
		// }
	}
}

// Generated from example definition: 2025-07-15/RoutePolicies_Update.json
func ExampleRoutePoliciesClient_BeginUpdate() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armmanagednetworkfabric.NewClientFactory("0000ABCD-0A0B-0000-0000-000000ABCDEF", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewRoutePoliciesClient().BeginUpdate(ctx, "example-rg", "example-routePolicy", armmanagednetworkfabric.RoutePolicyPatch{
		Tags: map[string]*string{
			"keyId": to.Ptr("keyValue"),
		},
		Properties: &armmanagednetworkfabric.RoutePolicyPatchableProperties{
			DefaultAction: to.Ptr(armmanagednetworkfabric.CommunityActionTypesPermit),
			Statements: []*armmanagednetworkfabric.RoutePolicyStatementPatchProperties{
				{
					Annotation:     to.Ptr("annotation"),
					SequenceNumber: to.Ptr[int64](7),
					Condition: &armmanagednetworkfabric.StatementConditionPatchProperties{
						IPCommunityIDs: []*string{
							to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
						},
						IPExtendedCommunityIDs: []*string{
							to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
						},
						Type:       to.Ptr(armmanagednetworkfabric.RoutePolicyConditionTypeOr),
						IPPrefixID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipPrefixes/example-ipPrefix"),
					},
					Action: &armmanagednetworkfabric.StatementActionPatchProperties{
						LocalPreference: to.Ptr[int64](20),
						ActionType:      to.Ptr(armmanagednetworkfabric.RoutePolicyActionTypePermit),
						IPCommunityProperties: &armmanagednetworkfabric.ActionIPCommunityPatchProperties{
							Add: &armmanagednetworkfabric.IPCommunityIDList{
								IPCommunityIDs: []*string{
									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
								},
							},
							Delete: &armmanagednetworkfabric.IPCommunityIDList{
								IPCommunityIDs: []*string{
									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
								},
							},
							Set: &armmanagednetworkfabric.IPCommunityIDList{
								IPCommunityIDs: []*string{
									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
								},
							},
						},
						IPExtendedCommunityProperties: &armmanagednetworkfabric.ActionIPExtendedCommunityPatchProperties{
							Add: &armmanagednetworkfabric.IPExtendedCommunityIDList{
								IPExtendedCommunityIDs: []*string{
									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
								},
							},
							Delete: &armmanagednetworkfabric.IPExtendedCommunityIDList{
								IPExtendedCommunityIDs: []*string{
									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
								},
							},
							Set: &armmanagednetworkfabric.IPExtendedCommunityIDList{
								IPExtendedCommunityIDs: []*string{
									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
								},
							},
						},
					},
				},
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armmanagednetworkfabric.RoutePoliciesClientUpdateResponse{
	// 	RoutePolicy: &armmanagednetworkfabric.RoutePolicy{
	// 		Properties: &armmanagednetworkfabric.RoutePolicyProperties{
	// 			Annotation: to.Ptr("annotation"),
	// 			DefaultAction: to.Ptr(armmanagednetworkfabric.CommunityActionTypesPermit),
	// 			Statements: []*armmanagednetworkfabric.RoutePolicyStatementProperties{
	// 				{
	// 					Annotation: to.Ptr("annotation"),
	// 					SequenceNumber: to.Ptr[int64](7),
	// 					Condition: &armmanagednetworkfabric.StatementConditionProperties{
	// 						IPCommunityIDs: []*string{
	// 							to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
	// 						},
	// 						IPExtendedCommunityIDs: []*string{
	// 							to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
	// 						},
	// 						Type: to.Ptr(armmanagednetworkfabric.RoutePolicyConditionTypeOr),
	// 						IPPrefixID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipPrefixes/example-ipPrefix"),
	// 					},
	// 					Action: &armmanagednetworkfabric.StatementActionProperties{
	// 						LocalPreference: to.Ptr[int64](20),
	// 						ActionType: to.Ptr(armmanagednetworkfabric.RoutePolicyActionTypePermit),
	// 						IPCommunityProperties: &armmanagednetworkfabric.ActionIPCommunityProperties{
	// 							Add: &armmanagednetworkfabric.IPCommunityIDList{
	// 								IPCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
	// 								},
	// 							},
	// 							Delete: &armmanagednetworkfabric.IPCommunityIDList{
	// 								IPCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
	// 								},
	// 							},
	// 							Set: &armmanagednetworkfabric.IPCommunityIDList{
	// 								IPCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipCommunities/example-ipCommunity"),
	// 								},
	// 							},
	// 						},
	// 						IPExtendedCommunityProperties: &armmanagednetworkfabric.ActionIPExtendedCommunityProperties{
	// 							Add: &armmanagednetworkfabric.IPExtendedCommunityIDList{
	// 								IPExtendedCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
	// 								},
	// 							},
	// 							Delete: &armmanagednetworkfabric.IPExtendedCommunityIDList{
	// 								IPExtendedCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
	// 								},
	// 							},
	// 							Set: &armmanagednetworkfabric.IPExtendedCommunityIDList{
	// 								IPExtendedCommunityIDs: []*string{
	// 									to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/ipExtendedCommunities/example-ipExtendedCommunity"),
	// 								},
	// 							},
	// 						},
	// 					},
	// 				},
	// 			},
	// 			NetworkFabricID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkFabrics/example-fabric"),
	// 			AddressFamilyType: to.Ptr(armmanagednetworkfabric.AddressFamilyTypeIPv4),
	// 			ConfigurationState: to.Ptr(armmanagednetworkfabric.ConfigurationStateSucceeded),
	// 			ProvisioningState: to.Ptr(armmanagednetworkfabric.ProvisioningStateAccepted),
	// 			AdministrativeState: to.Ptr(armmanagednetworkfabric.AdministrativeStateEnabled),
	// 		},
	// 		Tags: map[string]*string{
	// 			"keyId": to.Ptr("keyValue"),
	// 		},
	// 		Location: to.Ptr("eastus"),
	// 		ID: to.Ptr("/subscriptions/1234ABCD-0A1B-1234-5678-123456ABCDEF/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/routePolicies/example-routePolicy"),
	// 		Name: to.Ptr("example-routePolicy"),
	// 		Type: to.Ptr("microsoft.managednetworkfabric/routePolicies"),
	// 		SystemData: &armmanagednetworkfabric.SystemData{
	// 			CreatedBy: to.Ptr("email@address.com"),
	// 			CreatedByType: to.Ptr(armmanagednetworkfabric.CreatedByTypeUser),
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-06-09T04:51:41.251Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("UserId"),
	// 			LastModifiedByType: to.Ptr(armmanagednetworkfabric.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2023-06-09T04:51:41.251Z"); return t}()),
	// 		},
	// 	},
	// }
}

// Generated from example definition: 2025-07-15/RoutePolicies_UpdateAdministrativeState.json
func ExampleRoutePoliciesClient_BeginUpdateAdministrativeState() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armmanagednetworkfabric.NewClientFactory("0000ABCD-0A0B-0000-0000-000000ABCDEF", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewRoutePoliciesClient().BeginUpdateAdministrativeState(ctx, "example-rg", "example-routePolicy", armmanagednetworkfabric.UpdateAdministrativeState{
		ResourceIDs: []*string{
			to.Ptr(""),
		},
		State: to.Ptr(armmanagednetworkfabric.EnableDisableStateEnable),
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armmanagednetworkfabric.RoutePoliciesClientUpdateAdministrativeStateResponse{
	// 	UpdateAdministrativeStateResponse: &armmanagednetworkfabric.UpdateAdministrativeStateResponse{
	// 		Status: to.Ptr("Failed"),
	// 		Error: &armmanagednetworkfabric.ErrorDetail{
	// 			Code: to.Ptr(""),
	// 			Message: to.Ptr(""),
	// 			Target: to.Ptr(""),
	// 			Details: []*armmanagednetworkfabric.ErrorDetail{
	// 			},
	// 			AdditionalInfo: []*armmanagednetworkfabric.ErrorAdditionalInfo{
	// 				{
	// 					Type: to.Ptr(""),
	// 					Info: map[string]any{
	// 					},
	// 				},
	// 			},
	// 		},
	// 	},
	// }
}

// Generated from example definition: 2025-07-15/RoutePolicies_ValidateConfiguration.json
func ExampleRoutePoliciesClient_BeginValidateConfiguration() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armmanagednetworkfabric.NewClientFactory("0000ABCD-0A0B-0000-0000-000000ABCDEF", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewRoutePoliciesClient().BeginValidateConfiguration(ctx, "example-rg", "example-routePolicy", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to pull the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armmanagednetworkfabric.RoutePoliciesClientValidateConfigurationResponse{
	// 	ValidateConfigurationResponse: &armmanagednetworkfabric.ValidateConfigurationResponse{
	// 		Error: &armmanagednetworkfabric.ErrorDetail{
	// 			Code: to.Ptr(""),
	// 			Message: to.Ptr(""),
	// 			Target: to.Ptr(""),
	// 			Details: []*armmanagednetworkfabric.ErrorDetail{
	// 			},
	// 			AdditionalInfo: []*armmanagednetworkfabric.ErrorAdditionalInfo{
	// 				{
	// 					Type: to.Ptr(""),
	// 					Info: map[string]any{
	// 					},
	// 				},
	// 			},
	// 		},
	// 		ConfigurationState: to.Ptr(armmanagednetworkfabric.ConfigurationStateSucceeded),
	// 		URL: to.Ptr("https://ActionDetails"),
	// 	},
	// }
}
