diff --git a/eng/versioning/version_client.txt b/eng/versioning/version_client.txt
index d0d070d98ba8..ab89ac7e92e0 100644
--- a/eng/versioning/version_client.txt
+++ b/eng/versioning/version_client.txt
@@ -324,6 +324,7 @@ com.azure.resourcemanager:azure-resourcemanager-storagepool;1.0.0-beta.1;1.0.0-b
com.azure.resourcemanager:azure-resourcemanager-dataprotection;1.0.0-beta.1;1.0.0-beta.2
com.azure.resourcemanager:azure-resourcemanager-desktopvirtualization;1.0.0-beta.1;1.0.0-beta.2
com.azure.resourcemanager:azure-resourcemanager-loadtestservice;1.0.0-beta.1;1.0.0-beta.2
+com.azure.resourcemanager:azure-resourcemanager-servicefabricmesh;1.0.0-beta.1;1.0.0-beta.1
com.azure.tools:azure-sdk-archetype;1.0.0;1.0.0
# Unreleased dependencies: Copy the entry from above, prepend "unreleased_" and remove the current
diff --git a/pom.xml b/pom.xml
index bf7a714e06c4..a22259cee87d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -822,6 +822,7 @@
sdk/security
sdk/servicebus
sdk/servicefabric
+ sdk/servicefabricmesh
sdk/signalr
sdk/spring
sdk/sqlvirtualmachine
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/CHANGELOG.md b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/CHANGELOG.md
new file mode 100644
index 000000000000..18f1a4c3eb20
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/CHANGELOG.md
@@ -0,0 +1,5 @@
+# Release History
+
+## 1.0.0-beta.1 (2021-12-08)
+
+- Azure Resource Manager ServiceFabricMesh client library for Java. This package contains Microsoft Azure SDK for ServiceFabricMesh Management SDK. Service Fabric Mesh Management Client. Package tag package-2018-09-01-preview. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/README.md b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/README.md
new file mode 100644
index 000000000000..af6f7a413dcb
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/README.md
@@ -0,0 +1,102 @@
+# Azure Resource Manager ServiceFabricMesh client library for Java
+
+Azure Resource Manager ServiceFabricMesh client library for Java.
+
+This package contains Microsoft Azure SDK for ServiceFabricMesh Management SDK. Service Fabric Mesh Management Client. Package tag package-2018-09-01-preview. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
+
+## We'd love to hear your feedback
+
+We're always working on improving our products and the way we communicate with our users. So we'd love to learn what's working and how we can do better.
+
+If you haven't already, please take a few minutes to [complete this short survey][survey] we have put together.
+
+Thank you in advance for your collaboration. We really appreciate your time!
+
+## Documentation
+
+Various documentation is available to help you get started
+
+- [API reference documentation][docs]
+
+## Getting started
+
+### Prerequisites
+
+- [Java Development Kit (JDK)][jdk] with version 8 or above
+- [Azure Subscription][azure_subscription]
+
+### Adding the package to your product
+
+[//]: # ({x-version-update-start;com.azure.resourcemanager:azure-resourcemanager-servicefabricmesh;current})
+```xml
+
+ com.azure.resourcemanager
+ azure-resourcemanager-servicefabricmesh
+ 1.0.0-beta.1
+
+```
+[//]: # ({x-version-update-end})
+
+### Include the recommended packages
+
+Azure Management Libraries require a `TokenCredential` implementation for authentication and an `HttpClient` implementation for HTTP client.
+
+[Azure Identity][azure_identity] package and [Azure Core Netty HTTP][azure_core_http_netty] package provide the default implementation.
+
+### Authentication
+
+By default, Azure Active Directory token authentication depends on correct configure of following environment variables.
+
+- `AZURE_CLIENT_ID` for Azure client ID.
+- `AZURE_TENANT_ID` for Azure tenant ID.
+- `AZURE_CLIENT_SECRET` or `AZURE_CLIENT_CERTIFICATE_PATH` for client secret or client certificate.
+
+In addition, Azure subscription ID can be configured via environment variable `AZURE_SUBSCRIPTION_ID`.
+
+With above configuration, `azure` client can be authenticated by following code:
+
+```java
+AzureProfile profile = new AzureProfile(AzureEnvironment.AZURE);
+TokenCredential credential = new DefaultAzureCredentialBuilder()
+ .authorityHost(profile.getEnvironment().getActiveDirectoryEndpoint())
+ .build();
+ServiceFabricMeshManager manager = ServiceFabricMeshManager
+ .authenticate(credential, profile);
+```
+
+The sample code assumes global Azure. Please change `AzureEnvironment.AZURE` variable if otherwise.
+
+See [Authentication][authenticate] for more options.
+
+## Key concepts
+
+See [API design][design] for general introduction on design and key concepts on Azure Management Libraries.
+
+## Examples
+
+[Code snippets and samples](https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/SAMPLE.md)
+
+
+## Troubleshooting
+
+## Next steps
+
+## Contributing
+
+For details on contributing to this repository, see the [contributing guide](https://github.com/Azure/azure-sdk-for-java/blob/main/CONTRIBUTING.md).
+
+1. Fork it
+1. Create your feature branch (`git checkout -b my-new-feature`)
+1. Commit your changes (`git commit -am 'Add some feature'`)
+1. Push to the branch (`git push origin my-new-feature`)
+1. Create new Pull Request
+
+
+[survey]: https://microsoft.qualtrics.com/jfe/form/SV_ehN0lIk2FKEBkwd?Q_CHL=DOCS
+[docs]: https://azure.github.io/azure-sdk-for-java/
+[jdk]: https://docs.microsoft.com/java/azure/jdk/
+[azure_subscription]: https://azure.microsoft.com/free/
+[azure_identity]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/identity/azure-identity
+[azure_core_http_netty]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/core/azure-core-http-netty
+[authenticate]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/resourcemanager/docs/AUTH.md
+[design]: https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/resourcemanager/docs/DESIGN.md
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/SAMPLE.md b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/SAMPLE.md
new file mode 100644
index 000000000000..ca4dea96702f
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/SAMPLE.md
@@ -0,0 +1,1034 @@
+# Code snippets and samples
+
+
+## Application
+
+- [Create](#application_create)
+- [Delete](#application_delete)
+- [GetByResourceGroup](#application_getbyresourcegroup)
+- [List](#application_list)
+- [ListByResourceGroup](#application_listbyresourcegroup)
+
+## CodePackage
+
+- [GetContainerLogs](#codepackage_getcontainerlogs)
+
+## Gateway
+
+- [Create](#gateway_create)
+- [Delete](#gateway_delete)
+- [GetByResourceGroup](#gateway_getbyresourcegroup)
+- [List](#gateway_list)
+- [ListByResourceGroup](#gateway_listbyresourcegroup)
+
+## Network
+
+- [Create](#network_create)
+- [Delete](#network_delete)
+- [GetByResourceGroup](#network_getbyresourcegroup)
+- [List](#network_list)
+- [ListByResourceGroup](#network_listbyresourcegroup)
+
+## Secret
+
+- [Create](#secret_create)
+- [Delete](#secret_delete)
+- [GetByResourceGroup](#secret_getbyresourcegroup)
+- [List](#secret_list)
+- [ListByResourceGroup](#secret_listbyresourcegroup)
+
+## SecretValue
+
+- [Create](#secretvalue_create)
+- [Delete](#secretvalue_delete)
+- [Get](#secretvalue_get)
+- [List](#secretvalue_list)
+- [ListValue](#secretvalue_listvalue)
+
+## Service
+
+- [Get](#service_get)
+- [List](#service_list)
+
+## ServiceReplica
+
+- [Get](#servicereplica_get)
+- [List](#servicereplica_list)
+
+## Volume
+
+- [Create](#volume_create)
+- [Delete](#volume_delete)
+- [GetByResourceGroup](#volume_getbyresourcegroup)
+- [List](#volume_list)
+- [ListByResourceGroup](#volume_listbyresourcegroup)
+### Application_Create
+
+```java
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.ServiceResourceDescriptionInner;
+import com.azure.resourcemanager.servicefabricmesh.models.ContainerCodePackageProperties;
+import com.azure.resourcemanager.servicefabricmesh.models.EndpointProperties;
+import com.azure.resourcemanager.servicefabricmesh.models.EndpointRef;
+import com.azure.resourcemanager.servicefabricmesh.models.NetworkRef;
+import com.azure.resourcemanager.servicefabricmesh.models.OperatingSystemType;
+import com.azure.resourcemanager.servicefabricmesh.models.ResourceRequests;
+import com.azure.resourcemanager.servicefabricmesh.models.ResourceRequirements;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Application Create. */
+public final class ApplicationCreateSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/applications/create_update.json
+ */
+ /**
+ * Sample code: CreateOrUpdateApplication.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void createOrUpdateApplication(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager
+ .applications()
+ .define("sampleApplication")
+ .withRegion("EastUS")
+ .withExistingResourceGroup("sbz_demo")
+ .withTags(mapOf())
+ .withDescription("Service Fabric Mesh sample application.")
+ .withServices(
+ Arrays
+ .asList(
+ new ServiceResourceDescriptionInner()
+ .withName("helloWorldService")
+ .withOsType(OperatingSystemType.LINUX)
+ .withCodePackages(
+ Arrays
+ .asList(
+ new ContainerCodePackageProperties()
+ .withName("helloWorldCode")
+ .withImage("seabreeze/sbz-helloworld:1.0-alpine")
+ .withEndpoints(
+ Arrays
+ .asList(
+ new EndpointProperties()
+ .withName("helloWorldListener")
+ .withPort(80)))
+ .withResources(
+ new ResourceRequirements()
+ .withRequests(
+ new ResourceRequests().withMemoryInGB(1.0).withCpu(1.0)))))
+ .withNetworkRefs(
+ Arrays
+ .asList(
+ new NetworkRef()
+ .withName(
+ "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/networks/sampleNetwork")
+ .withEndpointRefs(
+ Arrays.asList(new EndpointRef().withName("helloWorldListener")))))
+ .withDescription("SeaBreeze Hello World Service.")
+ .withReplicaCount(1)))
+ .create();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### Application_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Application Delete. */
+public final class ApplicationDeleteSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/applications/delete.json
+ */
+ /**
+ * Sample code: DeleteApplication.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void deleteApplication(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.applications().deleteWithResponse("sbz_demo", "sampleApplication", Context.NONE);
+ }
+}
+```
+
+### Application_GetByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Application GetByResourceGroup. */
+public final class ApplicationGetByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/applications/get.json
+ */
+ /**
+ * Sample code: GetApplication.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void getApplication(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.applications().getByResourceGroupWithResponse("sbz_demo", "sampleApplication", Context.NONE);
+ }
+}
+```
+
+### Application_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Application List. */
+public final class ApplicationListSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/applications/list_bySubscriptionId.json
+ */
+ /**
+ * Sample code: ListApplicationsBySubscriptionId.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listApplicationsBySubscriptionId(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.applications().list(Context.NONE);
+ }
+}
+```
+
+### Application_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Application ListByResourceGroup. */
+public final class ApplicationListByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/applications/list_byResourceGroup.json
+ */
+ /**
+ * Sample code: ListApplicationsByResourceGroup.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listApplicationsByResourceGroup(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.applications().listByResourceGroup("sbz_demo", Context.NONE);
+ }
+}
+```
+
+### CodePackage_GetContainerLogs
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for CodePackage GetContainerLogs. */
+public final class CodePackageGetContainerLogsSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/applications/services/replicas/codepackages/get_logs.json
+ */
+ /**
+ * Sample code: GetContainerLogs.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void getContainerLogs(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager
+ .codePackages()
+ .getContainerLogsWithResponse(
+ "sbz_demo", "sbzDocApp", "sbzDocService", "0", "sbzDocCode", null, Context.NONE);
+ }
+}
+```
+
+### Gateway_Create
+
+```java
+import com.azure.resourcemanager.servicefabricmesh.models.GatewayDestination;
+import com.azure.resourcemanager.servicefabricmesh.models.HeaderMatchType;
+import com.azure.resourcemanager.servicefabricmesh.models.HttpConfig;
+import com.azure.resourcemanager.servicefabricmesh.models.HttpHostConfig;
+import com.azure.resourcemanager.servicefabricmesh.models.HttpRouteConfig;
+import com.azure.resourcemanager.servicefabricmesh.models.HttpRouteMatchHeader;
+import com.azure.resourcemanager.servicefabricmesh.models.HttpRouteMatchPath;
+import com.azure.resourcemanager.servicefabricmesh.models.HttpRouteMatchRule;
+import com.azure.resourcemanager.servicefabricmesh.models.NetworkRef;
+import com.azure.resourcemanager.servicefabricmesh.models.PathMatchType;
+import com.azure.resourcemanager.servicefabricmesh.models.TcpConfig;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Gateway Create. */
+public final class GatewayCreateSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/gateways/create_update.json
+ */
+ /**
+ * Sample code: CreateOrUpdateGateway.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void createOrUpdateGateway(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager
+ .gateways()
+ .define("sampleGateway")
+ .withRegion("EastUS")
+ .withExistingResourceGroup("sbz_demo")
+ .withSourceNetwork(new NetworkRef().withName("Open"))
+ .withDestinationNetwork(new NetworkRef().withName("helloWorldNetwork"))
+ .withTags(mapOf())
+ .withDescription("Service Fabric Mesh sample gateway.")
+ .withTcp(
+ Arrays
+ .asList(
+ new TcpConfig()
+ .withName("web")
+ .withPort(80)
+ .withDestination(
+ new GatewayDestination()
+ .withApplicationName("helloWorldApp")
+ .withServiceName("helloWorldService")
+ .withEndpointName("helloWorldListener"))))
+ .withHttp(
+ Arrays
+ .asList(
+ new HttpConfig()
+ .withName("contosoWebsite")
+ .withPort(8081)
+ .withHosts(
+ Arrays
+ .asList(
+ new HttpHostConfig()
+ .withName("contoso.com")
+ .withRoutes(
+ Arrays
+ .asList(
+ new HttpRouteConfig()
+ .withName("index")
+ .withMatch(
+ new HttpRouteMatchRule()
+ .withPath(
+ new HttpRouteMatchPath()
+ .withValue("/index")
+ .withRewrite("/")
+ .withType(PathMatchType.PREFIX))
+ .withHeaders(
+ Arrays
+ .asList(
+ new HttpRouteMatchHeader()
+ .withName("accept")
+ .withValue("application/json")
+ .withType(HeaderMatchType.EXACT))))
+ .withDestination(
+ new GatewayDestination()
+ .withApplicationName("httpHelloWorldApp")
+ .withServiceName("indexService")
+ .withEndpointName("indexHttpEndpoint"))))))))
+ .create();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### Gateway_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Gateway Delete. */
+public final class GatewayDeleteSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/gateways/delete.json
+ */
+ /**
+ * Sample code: DeleteGateway.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void deleteGateway(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.gateways().deleteWithResponse("sbz_demo", "sampleGateway", Context.NONE);
+ }
+}
+```
+
+### Gateway_GetByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Gateway GetByResourceGroup. */
+public final class GatewayGetByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/gateways/get.json
+ */
+ /**
+ * Sample code: GetGateway.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void getGateway(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.gateways().getByResourceGroupWithResponse("sbz_demo", "sampleGateway", Context.NONE);
+ }
+}
+```
+
+### Gateway_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Gateway List. */
+public final class GatewayListSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/gateways/list_bySubscriptionId.json
+ */
+ /**
+ * Sample code: ListGatewaysBySubscriptionId.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listGatewaysBySubscriptionId(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.gateways().list(Context.NONE);
+ }
+}
+```
+
+### Gateway_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Gateway ListByResourceGroup. */
+public final class GatewayListByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/gateways/list_byResourceGroup.json
+ */
+ /**
+ * Sample code: ListGatewaysByResourceGroup.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listGatewaysByResourceGroup(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.gateways().listByResourceGroup("sbz_demo", Context.NONE);
+ }
+}
+```
+
+### Network_Create
+
+```java
+import com.azure.resourcemanager.servicefabricmesh.models.LocalNetworkResourceProperties;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Network Create. */
+public final class NetworkCreateSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/networks/create_update.json
+ */
+ /**
+ * Sample code: CreateOrUpdateNetwork.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void createOrUpdateNetwork(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager
+ .networks()
+ .define("sampleNetwork")
+ .withRegion("EastUS")
+ .withExistingResourceGroup("sbz_demo")
+ .withProperties(
+ new LocalNetworkResourceProperties()
+ .withDescription("Service Fabric Mesh sample network.")
+ .withNetworkAddressPrefix("2.0.0.0/16"))
+ .withTags(mapOf())
+ .create();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### Network_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Network Delete. */
+public final class NetworkDeleteSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/networks/delete.json
+ */
+ /**
+ * Sample code: DeleteNetwork.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void deleteNetwork(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.networks().deleteWithResponse("sbz_demo", "sampleNetwork", Context.NONE);
+ }
+}
+```
+
+### Network_GetByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Network GetByResourceGroup. */
+public final class NetworkGetByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/networks/get.json
+ */
+ /**
+ * Sample code: GetNetwork.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void getNetwork(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.networks().getByResourceGroupWithResponse("sbz_demo", "sampleNetwork", Context.NONE);
+ }
+}
+```
+
+### Network_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Network List. */
+public final class NetworkListSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/networks/list_bySubscriptionId.json
+ */
+ /**
+ * Sample code: ListNetworksBySubscriptionId.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listNetworksBySubscriptionId(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.networks().list(Context.NONE);
+ }
+}
+```
+
+### Network_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Network ListByResourceGroup. */
+public final class NetworkListByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/networks/list_byResourceGroup.json
+ */
+ /**
+ * Sample code: ListNetworksByResourceGroup.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listNetworksByResourceGroup(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.networks().listByResourceGroup("sbz_demo", Context.NONE);
+ }
+}
+```
+
+### Secret_Create
+
+```java
+import com.azure.resourcemanager.servicefabricmesh.models.InlinedValueSecretResourceProperties;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Secret Create. */
+public final class SecretCreateSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/secrets/create_update.json
+ */
+ /**
+ * Sample code: CreateOrUpdateSecret.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void createOrUpdateSecret(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager
+ .secrets()
+ .define("dbConnectionString")
+ .withRegion("EastUS")
+ .withExistingResourceGroup("sbz_demo")
+ .withProperties(
+ new InlinedValueSecretResourceProperties()
+ .withDescription("Mongo DB connection string for backend database!")
+ .withContentType("text/plain"))
+ .withTags(mapOf())
+ .create();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### Secret_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Secret Delete. */
+public final class SecretDeleteSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/secrets/delete.json
+ */
+ /**
+ * Sample code: DeleteSecret.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void deleteSecret(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.secrets().deleteWithResponse("sbz_demo", "dbConnectionString", Context.NONE);
+ }
+}
+```
+
+### Secret_GetByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Secret GetByResourceGroup. */
+public final class SecretGetByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/secrets/get.json
+ */
+ /**
+ * Sample code: GetSecret.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void getSecret(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.secrets().getByResourceGroupWithResponse("sbz_demo", "dbConnectionString", Context.NONE);
+ }
+}
+```
+
+### Secret_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Secret List. */
+public final class SecretListSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/secrets/list_bySubscriptionId.json
+ */
+ /**
+ * Sample code: ListSecretsBySubscriptionId.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listSecretsBySubscriptionId(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.secrets().list(Context.NONE);
+ }
+}
+```
+
+### Secret_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Secret ListByResourceGroup. */
+public final class SecretListByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/secrets/list_byResourceGroup.json
+ */
+ /**
+ * Sample code: ListSecretsByResourceGroup.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listSecretsByResourceGroup(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.secrets().listByResourceGroup("sbz_demo", Context.NONE);
+ }
+}
+```
+
+### SecretValue_Create
+
+```java
+/** Samples for SecretValue Create. */
+public final class SecretValueCreateSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/secrets/values/create.json
+ */
+ /**
+ * Sample code: CreateSecretValue.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void createSecretValue(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager
+ .secretValues()
+ .define("v1")
+ .withRegion((String) null)
+ .withExistingSecret("sbz_demo", "dbConnectionString")
+ .withValue(
+ "mongodb://contoso123:0Fc3IolnL12312asdfawejunASDF@asdfYXX2t8a97kghVcUzcDv98hawelufhawefafnoQRGwNj2nMPL1Y9qsIr9Srdw==@contoso123.documents.azure.com:10255/mydatabase?ssl=true")
+ .create();
+ }
+}
+```
+
+### SecretValue_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for SecretValue Delete. */
+public final class SecretValueDeleteSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/secrets/values/delete.json
+ */
+ /**
+ * Sample code: DeleteSecretValue.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void deleteSecretValue(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.secretValues().deleteWithResponse("sbz_demo", "dbConnectionString", "v1", Context.NONE);
+ }
+}
+```
+
+### SecretValue_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for SecretValue Get. */
+public final class SecretValueGetSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/secrets/values/get.json
+ */
+ /**
+ * Sample code: GetSecretValue.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void getSecretValue(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.secretValues().getWithResponse("sbz_demo", "dbConnectionString", "v1", Context.NONE);
+ }
+}
+```
+
+### SecretValue_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for SecretValue List. */
+public final class SecretValueListSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/secrets/values/list.json
+ */
+ /**
+ * Sample code: ListSecretValues.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listSecretValues(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.secretValues().list("sbz_demo", "dbConnectionString", Context.NONE);
+ }
+}
+```
+
+### SecretValue_ListValue
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for SecretValue ListValue. */
+public final class SecretValueListValueSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/secrets/values/list_value.json
+ */
+ /**
+ * Sample code: ListSecretValue.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listSecretValue(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.secretValues().listValueWithResponse("sbz_demo", "dbConnectionString", "v1", Context.NONE);
+ }
+}
+```
+
+### Service_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Service Get. */
+public final class ServiceGetSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/applications/services/get.json
+ */
+ /**
+ * Sample code: GetService.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void getService(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.services().getWithResponse("sbz_demo", "sampleApplication", "helloWorldService", Context.NONE);
+ }
+}
+```
+
+### Service_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Service List. */
+public final class ServiceListSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/applications/services/list.json
+ */
+ /**
+ * Sample code: ListServices.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listServices(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.services().list("sbz_demo", "sampleApplication", Context.NONE);
+ }
+}
+```
+
+### ServiceReplica_Get
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ServiceReplica Get. */
+public final class ServiceReplicaGetSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/applications/services/replicas/get.json
+ */
+ /**
+ * Sample code: ReplicaGet.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void replicaGet(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.serviceReplicas().getWithResponse("sbz_demo", "helloWorldApp", "helloWorldService", "0", Context.NONE);
+ }
+}
+```
+
+### ServiceReplica_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for ServiceReplica List. */
+public final class ServiceReplicaListSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/applications/services/replicas/list.json
+ */
+ /**
+ * Sample code: ReplicasGetAll.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void replicasGetAll(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.serviceReplicas().list("sbz_demo", "sampleApplication", "helloWorldService", Context.NONE);
+ }
+}
+```
+
+### Volume_Create
+
+```java
+import com.azure.resourcemanager.servicefabricmesh.models.VolumeProvider;
+import com.azure.resourcemanager.servicefabricmesh.models.VolumeProviderParametersAzureFile;
+import java.util.HashMap;
+import java.util.Map;
+
+/** Samples for Volume Create. */
+public final class VolumeCreateSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/volumes/create_update.json
+ */
+ /**
+ * Sample code: CreateOrUpdateVolume.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void createOrUpdateVolume(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager
+ .volumes()
+ .define("sampleVolume")
+ .withRegion("EastUS")
+ .withExistingResourceGroup("sbz_demo")
+ .withProvider(VolumeProvider.SFAZURE_FILE)
+ .withTags(mapOf())
+ .withDescription("Service Fabric Mesh sample volume.")
+ .withAzureFileParameters(
+ new VolumeProviderParametersAzureFile()
+ .withAccountName("sbzdemoaccount")
+ .withAccountKey("provide-account-key-here")
+ .withShareName("sharel"))
+ .create();
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Map mapOf(Object... inputs) {
+ Map map = new HashMap<>();
+ for (int i = 0; i < inputs.length; i += 2) {
+ String key = (String) inputs[i];
+ T value = (T) inputs[i + 1];
+ map.put(key, value);
+ }
+ return map;
+ }
+}
+```
+
+### Volume_Delete
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Volume Delete. */
+public final class VolumeDeleteSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/volumes/delete.json
+ */
+ /**
+ * Sample code: DeleteVolume.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void deleteVolume(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.volumes().deleteWithResponse("sbz_demo", "sampleVolume", Context.NONE);
+ }
+}
+```
+
+### Volume_GetByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Volume GetByResourceGroup. */
+public final class VolumeGetByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/volumes/get.json
+ */
+ /**
+ * Sample code: GetVolume.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void getVolume(com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.volumes().getByResourceGroupWithResponse("sbz_demo", "sampleVolume", Context.NONE);
+ }
+}
+```
+
+### Volume_List
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Volume List. */
+public final class VolumeListSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/volumes/list_bySubscriptionId.json
+ */
+ /**
+ * Sample code: ListVolumesBySubscriptionId.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listVolumesBySubscriptionId(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.volumes().list(Context.NONE);
+ }
+}
+```
+
+### Volume_ListByResourceGroup
+
+```java
+import com.azure.core.util.Context;
+
+/** Samples for Volume ListByResourceGroup. */
+public final class VolumeListByResourceGroupSamples {
+ /*
+ * x-ms-original-file: specification/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/examples/volumes/list_byResourceGroup.json
+ */
+ /**
+ * Sample code: ListVolumesByResourceGroup.
+ *
+ * @param manager Entry point to ServiceFabricMeshManager.
+ */
+ public static void listVolumesByResourceGroup(
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager) {
+ manager.volumes().listByResourceGroup("sbz_demo", Context.NONE);
+ }
+}
+```
+
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/pom.xml b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/pom.xml
new file mode 100644
index 000000000000..2e2cc9a8df0d
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/pom.xml
@@ -0,0 +1,81 @@
+
+ 4.0.0
+
+ com.azure
+ azure-client-sdk-parent
+ 1.7.0
+ ../../parents/azure-client-sdk-parent
+
+
+ com.azure.resourcemanager
+ azure-resourcemanager-servicefabricmesh
+ 1.0.0-beta.1
+ jar
+
+ Microsoft Azure SDK for ServiceFabricMesh Management
+ This package contains Microsoft Azure SDK for ServiceFabricMesh Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Service Fabric Mesh Management Client. Package tag package-2018-09-01-preview.
+ https://github.com/Azure/azure-sdk-for-java
+
+
+
+ The MIT License (MIT)
+ http://opensource.org/licenses/MIT
+ repo
+
+
+
+
+ https://github.com/Azure/azure-sdk-for-java
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ scm:git:git@github.com:Azure/azure-sdk-for-java.git
+ HEAD
+
+
+
+ microsoft
+ Microsoft
+
+
+
+ UTF-8
+ true
+ false
+
+
+
+
+
+ com.azure
+ azure-core
+ 1.23.1
+
+
+ com.azure
+ azure-core-management
+ 1.4.4
+
+
+
+
+
+ org.revapi
+ revapi-maven-plugin
+ 0.11.2
+
+
+
+ -
+
java.method.addedToInterface
+
+ -
+ true
+
.*
+ com\.azure\.resourcemanager(\.[^.]+)+\.fluent(\.[^.]+)*
+
+
+
+
+
+
+
+
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/ServiceFabricMeshManager.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/ServiceFabricMeshManager.java
new file mode 100644
index 000000000000..d28ceeef3594
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/ServiceFabricMeshManager.java
@@ -0,0 +1,350 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh;
+
+import com.azure.core.credential.TokenCredential;
+import com.azure.core.http.HttpClient;
+import com.azure.core.http.HttpPipeline;
+import com.azure.core.http.HttpPipelineBuilder;
+import com.azure.core.http.HttpPipelinePosition;
+import com.azure.core.http.policy.AddDatePolicy;
+import com.azure.core.http.policy.HttpLogOptions;
+import com.azure.core.http.policy.HttpLoggingPolicy;
+import com.azure.core.http.policy.HttpPipelinePolicy;
+import com.azure.core.http.policy.HttpPolicyProviders;
+import com.azure.core.http.policy.RequestIdPolicy;
+import com.azure.core.http.policy.RetryPolicy;
+import com.azure.core.http.policy.UserAgentPolicy;
+import com.azure.core.management.http.policy.ArmChallengeAuthenticationPolicy;
+import com.azure.core.management.profile.AzureProfile;
+import com.azure.core.util.Configuration;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.fluent.ServiceFabricMeshManagementClient;
+import com.azure.resourcemanager.servicefabricmesh.implementation.ApplicationsImpl;
+import com.azure.resourcemanager.servicefabricmesh.implementation.CodePackagesImpl;
+import com.azure.resourcemanager.servicefabricmesh.implementation.GatewaysImpl;
+import com.azure.resourcemanager.servicefabricmesh.implementation.NetworksImpl;
+import com.azure.resourcemanager.servicefabricmesh.implementation.OperationsImpl;
+import com.azure.resourcemanager.servicefabricmesh.implementation.SecretValuesImpl;
+import com.azure.resourcemanager.servicefabricmesh.implementation.SecretsImpl;
+import com.azure.resourcemanager.servicefabricmesh.implementation.ServiceFabricMeshManagementClientBuilder;
+import com.azure.resourcemanager.servicefabricmesh.implementation.ServiceReplicasImpl;
+import com.azure.resourcemanager.servicefabricmesh.implementation.ServicesImpl;
+import com.azure.resourcemanager.servicefabricmesh.implementation.VolumesImpl;
+import com.azure.resourcemanager.servicefabricmesh.models.Applications;
+import com.azure.resourcemanager.servicefabricmesh.models.CodePackages;
+import com.azure.resourcemanager.servicefabricmesh.models.Gateways;
+import com.azure.resourcemanager.servicefabricmesh.models.Networks;
+import com.azure.resourcemanager.servicefabricmesh.models.Operations;
+import com.azure.resourcemanager.servicefabricmesh.models.SecretValues;
+import com.azure.resourcemanager.servicefabricmesh.models.Secrets;
+import com.azure.resourcemanager.servicefabricmesh.models.ServiceReplicas;
+import com.azure.resourcemanager.servicefabricmesh.models.Services;
+import com.azure.resourcemanager.servicefabricmesh.models.Volumes;
+import java.time.Duration;
+import java.time.temporal.ChronoUnit;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+/** Entry point to ServiceFabricMeshManager. Service Fabric Mesh Management Client. */
+public final class ServiceFabricMeshManager {
+ private Operations operations;
+
+ private Secrets secrets;
+
+ private SecretValues secretValues;
+
+ private Volumes volumes;
+
+ private Networks networks;
+
+ private Gateways gateways;
+
+ private Applications applications;
+
+ private Services services;
+
+ private ServiceReplicas serviceReplicas;
+
+ private CodePackages codePackages;
+
+ private final ServiceFabricMeshManagementClient clientObject;
+
+ private ServiceFabricMeshManager(HttpPipeline httpPipeline, AzureProfile profile, Duration defaultPollInterval) {
+ Objects.requireNonNull(httpPipeline, "'httpPipeline' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+ this.clientObject =
+ new ServiceFabricMeshManagementClientBuilder()
+ .pipeline(httpPipeline)
+ .endpoint(profile.getEnvironment().getResourceManagerEndpoint())
+ .subscriptionId(profile.getSubscriptionId())
+ .defaultPollInterval(defaultPollInterval)
+ .buildClient();
+ }
+
+ /**
+ * Creates an instance of ServiceFabricMesh service API entry point.
+ *
+ * @param credential the credential to use.
+ * @param profile the Azure profile for client.
+ * @return the ServiceFabricMesh service API instance.
+ */
+ public static ServiceFabricMeshManager authenticate(TokenCredential credential, AzureProfile profile) {
+ Objects.requireNonNull(credential, "'credential' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+ return configure().authenticate(credential, profile);
+ }
+
+ /**
+ * Gets a Configurable instance that can be used to create ServiceFabricMeshManager with optional configuration.
+ *
+ * @return the Configurable instance allowing configurations.
+ */
+ public static Configurable configure() {
+ return new ServiceFabricMeshManager.Configurable();
+ }
+
+ /** The Configurable allowing configurations to be set. */
+ public static final class Configurable {
+ private final ClientLogger logger = new ClientLogger(Configurable.class);
+
+ private HttpClient httpClient;
+ private HttpLogOptions httpLogOptions;
+ private final List policies = new ArrayList<>();
+ private final List scopes = new ArrayList<>();
+ private RetryPolicy retryPolicy;
+ private Duration defaultPollInterval;
+
+ private Configurable() {
+ }
+
+ /**
+ * Sets the http client.
+ *
+ * @param httpClient the HTTP client.
+ * @return the configurable object itself.
+ */
+ public Configurable withHttpClient(HttpClient httpClient) {
+ this.httpClient = Objects.requireNonNull(httpClient, "'httpClient' cannot be null.");
+ return this;
+ }
+
+ /**
+ * Sets the logging options to the HTTP pipeline.
+ *
+ * @param httpLogOptions the HTTP log options.
+ * @return the configurable object itself.
+ */
+ public Configurable withLogOptions(HttpLogOptions httpLogOptions) {
+ this.httpLogOptions = Objects.requireNonNull(httpLogOptions, "'httpLogOptions' cannot be null.");
+ return this;
+ }
+
+ /**
+ * Adds the pipeline policy to the HTTP pipeline.
+ *
+ * @param policy the HTTP pipeline policy.
+ * @return the configurable object itself.
+ */
+ public Configurable withPolicy(HttpPipelinePolicy policy) {
+ this.policies.add(Objects.requireNonNull(policy, "'policy' cannot be null."));
+ return this;
+ }
+
+ /**
+ * Adds the scope to permission sets.
+ *
+ * @param scope the scope.
+ * @return the configurable object itself.
+ */
+ public Configurable withScope(String scope) {
+ this.scopes.add(Objects.requireNonNull(scope, "'scope' cannot be null."));
+ return this;
+ }
+
+ /**
+ * Sets the retry policy to the HTTP pipeline.
+ *
+ * @param retryPolicy the HTTP pipeline retry policy.
+ * @return the configurable object itself.
+ */
+ public Configurable withRetryPolicy(RetryPolicy retryPolicy) {
+ this.retryPolicy = Objects.requireNonNull(retryPolicy, "'retryPolicy' cannot be null.");
+ return this;
+ }
+
+ /**
+ * Sets the default poll interval, used when service does not provide "Retry-After" header.
+ *
+ * @param defaultPollInterval the default poll interval.
+ * @return the configurable object itself.
+ */
+ public Configurable withDefaultPollInterval(Duration defaultPollInterval) {
+ this.defaultPollInterval = Objects.requireNonNull(defaultPollInterval, "'retryPolicy' cannot be null.");
+ if (this.defaultPollInterval.isNegative()) {
+ throw logger.logExceptionAsError(new IllegalArgumentException("'httpPipeline' cannot be negative"));
+ }
+ return this;
+ }
+
+ /**
+ * Creates an instance of ServiceFabricMesh service API entry point.
+ *
+ * @param credential the credential to use.
+ * @param profile the Azure profile for client.
+ * @return the ServiceFabricMesh service API instance.
+ */
+ public ServiceFabricMeshManager authenticate(TokenCredential credential, AzureProfile profile) {
+ Objects.requireNonNull(credential, "'credential' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+
+ StringBuilder userAgentBuilder = new StringBuilder();
+ userAgentBuilder
+ .append("azsdk-java")
+ .append("-")
+ .append("com.azure.resourcemanager.servicefabricmesh")
+ .append("/")
+ .append("1.0.0-beta.1");
+ if (!Configuration.getGlobalConfiguration().get("AZURE_TELEMETRY_DISABLED", false)) {
+ userAgentBuilder
+ .append(" (")
+ .append(Configuration.getGlobalConfiguration().get("java.version"))
+ .append("; ")
+ .append(Configuration.getGlobalConfiguration().get("os.name"))
+ .append("; ")
+ .append(Configuration.getGlobalConfiguration().get("os.version"))
+ .append("; auto-generated)");
+ } else {
+ userAgentBuilder.append(" (auto-generated)");
+ }
+
+ if (scopes.isEmpty()) {
+ scopes.add(profile.getEnvironment().getManagementEndpoint() + "/.default");
+ }
+ if (retryPolicy == null) {
+ retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
+ }
+ List policies = new ArrayList<>();
+ policies.add(new UserAgentPolicy(userAgentBuilder.toString()));
+ policies.add(new RequestIdPolicy());
+ policies
+ .addAll(
+ this
+ .policies
+ .stream()
+ .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_CALL)
+ .collect(Collectors.toList()));
+ HttpPolicyProviders.addBeforeRetryPolicies(policies);
+ policies.add(retryPolicy);
+ policies.add(new AddDatePolicy());
+ policies.add(new ArmChallengeAuthenticationPolicy(credential, scopes.toArray(new String[0])));
+ policies
+ .addAll(
+ this
+ .policies
+ .stream()
+ .filter(p -> p.getPipelinePosition() == HttpPipelinePosition.PER_RETRY)
+ .collect(Collectors.toList()));
+ HttpPolicyProviders.addAfterRetryPolicies(policies);
+ policies.add(new HttpLoggingPolicy(httpLogOptions));
+ HttpPipeline httpPipeline =
+ new HttpPipelineBuilder()
+ .httpClient(httpClient)
+ .policies(policies.toArray(new HttpPipelinePolicy[0]))
+ .build();
+ return new ServiceFabricMeshManager(httpPipeline, profile, defaultPollInterval);
+ }
+ }
+
+ /** @return Resource collection API of Operations. */
+ public Operations operations() {
+ if (this.operations == null) {
+ this.operations = new OperationsImpl(clientObject.getOperations(), this);
+ }
+ return operations;
+ }
+
+ /** @return Resource collection API of Secrets. */
+ public Secrets secrets() {
+ if (this.secrets == null) {
+ this.secrets = new SecretsImpl(clientObject.getSecrets(), this);
+ }
+ return secrets;
+ }
+
+ /** @return Resource collection API of SecretValues. */
+ public SecretValues secretValues() {
+ if (this.secretValues == null) {
+ this.secretValues = new SecretValuesImpl(clientObject.getSecretValues(), this);
+ }
+ return secretValues;
+ }
+
+ /** @return Resource collection API of Volumes. */
+ public Volumes volumes() {
+ if (this.volumes == null) {
+ this.volumes = new VolumesImpl(clientObject.getVolumes(), this);
+ }
+ return volumes;
+ }
+
+ /** @return Resource collection API of Networks. */
+ public Networks networks() {
+ if (this.networks == null) {
+ this.networks = new NetworksImpl(clientObject.getNetworks(), this);
+ }
+ return networks;
+ }
+
+ /** @return Resource collection API of Gateways. */
+ public Gateways gateways() {
+ if (this.gateways == null) {
+ this.gateways = new GatewaysImpl(clientObject.getGateways(), this);
+ }
+ return gateways;
+ }
+
+ /** @return Resource collection API of Applications. */
+ public Applications applications() {
+ if (this.applications == null) {
+ this.applications = new ApplicationsImpl(clientObject.getApplications(), this);
+ }
+ return applications;
+ }
+
+ /** @return Resource collection API of Services. */
+ public Services services() {
+ if (this.services == null) {
+ this.services = new ServicesImpl(clientObject.getServices(), this);
+ }
+ return services;
+ }
+
+ /** @return Resource collection API of ServiceReplicas. */
+ public ServiceReplicas serviceReplicas() {
+ if (this.serviceReplicas == null) {
+ this.serviceReplicas = new ServiceReplicasImpl(clientObject.getServiceReplicas(), this);
+ }
+ return serviceReplicas;
+ }
+
+ /** @return Resource collection API of CodePackages. */
+ public CodePackages codePackages() {
+ if (this.codePackages == null) {
+ this.codePackages = new CodePackagesImpl(clientObject.getCodePackages(), this);
+ }
+ return codePackages;
+ }
+
+ /**
+ * @return Wrapped service client ServiceFabricMeshManagementClient providing direct access to the underlying
+ * auto-generated API implementation, based on Azure REST API.
+ */
+ public ServiceFabricMeshManagementClient serviceClient() {
+ return this.clientObject;
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/ApplicationsClient.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/ApplicationsClient.java
new file mode 100644
index 000000000000..ce9e97cfd73e
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/ApplicationsClient.java
@@ -0,0 +1,170 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.ApplicationResourceDescriptionInner;
+
+/** An instance of this class provides access to all the operations defined in ApplicationsClient. */
+public interface ApplicationsClient {
+ /**
+ * Creates an application resource with the specified name, description and properties. If an application resource
+ * with the same name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param applicationResourceDescription Description for creating a Application resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes an application resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ApplicationResourceDescriptionInner create(
+ String resourceGroupName,
+ String applicationResourceName,
+ ApplicationResourceDescriptionInner applicationResourceDescription);
+
+ /**
+ * Creates an application resource with the specified name, description and properties. If an application resource
+ * with the same name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param applicationResourceDescription Description for creating a Application resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes an application resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createWithResponse(
+ String resourceGroupName,
+ String applicationResourceName,
+ ApplicationResourceDescriptionInner applicationResourceDescription,
+ Context context);
+
+ /**
+ * Gets the information about the application resource with the given name. The information include the description
+ * and other properties of the application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the application resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ApplicationResourceDescriptionInner getByResourceGroup(String resourceGroupName, String applicationResourceName);
+
+ /**
+ * Gets the information about the application resource with the given name. The information include the description
+ * and other properties of the application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the application resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String applicationResourceName, Context context);
+
+ /**
+ * Deletes the application resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String applicationResourceName);
+
+ /**
+ * Deletes the application resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(String resourceGroupName, String applicationResourceName, Context context);
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the Application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the Application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the application.
+ *
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the application.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/CodePackagesClient.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/CodePackagesClient.java
new file mode 100644
index 000000000000..bcc51bbbd619
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/CodePackagesClient.java
@@ -0,0 +1,62 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.ContainerLogsInner;
+
+/** An instance of this class provides access to all the operations defined in CodePackagesClient. */
+public interface CodePackagesClient {
+ /**
+ * Gets the logs for the container of the specified code package of the service replica.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @param replicaName Service Fabric replica name.
+ * @param codePackageName The name of code package of the service.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the logs for the container of the specified code package of the service replica.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ContainerLogsInner getContainerLogs(
+ String resourceGroupName,
+ String applicationResourceName,
+ String serviceResourceName,
+ String replicaName,
+ String codePackageName);
+
+ /**
+ * Gets the logs for the container of the specified code package of the service replica.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @param replicaName Service Fabric replica name.
+ * @param codePackageName The name of code package of the service.
+ * @param tail Number of lines to show from the end of the logs. Default is 100.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the logs for the container of the specified code package of the service replica.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getContainerLogsWithResponse(
+ String resourceGroupName,
+ String applicationResourceName,
+ String serviceResourceName,
+ String replicaName,
+ String codePackageName,
+ Integer tail,
+ Context context);
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/GatewaysClient.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/GatewaysClient.java
new file mode 100644
index 000000000000..f87269b08884
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/GatewaysClient.java
@@ -0,0 +1,172 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.GatewayResourceDescriptionInner;
+
+/** An instance of this class provides access to all the operations defined in GatewaysClient. */
+public interface GatewaysClient {
+ /**
+ * Creates a gateway resource with the specified name, description and properties. If a gateway resource with the
+ * same name exists, then it is updated with the specified description and properties. Use gateway resources to
+ * create a gateway for public connectivity for services within your application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param gatewayResourceDescription Description for creating a Gateway resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a gateway resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GatewayResourceDescriptionInner create(
+ String resourceGroupName,
+ String gatewayResourceName,
+ GatewayResourceDescriptionInner gatewayResourceDescription);
+
+ /**
+ * Creates a gateway resource with the specified name, description and properties. If a gateway resource with the
+ * same name exists, then it is updated with the specified description and properties. Use gateway resources to
+ * create a gateway for public connectivity for services within your application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param gatewayResourceDescription Description for creating a Gateway resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a gateway resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createWithResponse(
+ String resourceGroupName,
+ String gatewayResourceName,
+ GatewayResourceDescriptionInner gatewayResourceDescription,
+ Context context);
+
+ /**
+ * Gets the information about the gateway resource with the given name. The information include the description and
+ * other properties of the gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the gateway resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GatewayResourceDescriptionInner getByResourceGroup(String resourceGroupName, String gatewayResourceName);
+
+ /**
+ * Gets the information about the gateway resource with the given name. The information include the description and
+ * other properties of the gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the gateway resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String gatewayResourceName, Context context);
+
+ /**
+ * Deletes the gateway resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String gatewayResourceName);
+
+ /**
+ * Deletes the gateway resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(String resourceGroupName, String gatewayResourceName, Context context);
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the Gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the Gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the gateway.
+ *
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the gateway.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/NetworksClient.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/NetworksClient.java
new file mode 100644
index 000000000000..2c8e5e982446
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/NetworksClient.java
@@ -0,0 +1,170 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.NetworkResourceDescriptionInner;
+
+/** An instance of this class provides access to all the operations defined in NetworksClient. */
+public interface NetworksClient {
+ /**
+ * Creates a network resource with the specified name, description and properties. If a network resource with the
+ * same name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param networkResourceName The identity of the network.
+ * @param networkResourceDescription Description for creating a Network resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a network resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ NetworkResourceDescriptionInner create(
+ String resourceGroupName,
+ String networkResourceName,
+ NetworkResourceDescriptionInner networkResourceDescription);
+
+ /**
+ * Creates a network resource with the specified name, description and properties. If a network resource with the
+ * same name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param networkResourceName The identity of the network.
+ * @param networkResourceDescription Description for creating a Network resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a network resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createWithResponse(
+ String resourceGroupName,
+ String networkResourceName,
+ NetworkResourceDescriptionInner networkResourceDescription,
+ Context context);
+
+ /**
+ * Gets the information about the network resource with the given name. The information include the description and
+ * other properties of the network.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param networkResourceName The identity of the network.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the network resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ NetworkResourceDescriptionInner getByResourceGroup(String resourceGroupName, String networkResourceName);
+
+ /**
+ * Gets the information about the network resource with the given name. The information include the description and
+ * other properties of the network.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param networkResourceName The identity of the network.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the network resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String networkResourceName, Context context);
+
+ /**
+ * Deletes the network resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param networkResourceName The identity of the network.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String networkResourceName);
+
+ /**
+ * Deletes the network resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param networkResourceName The identity of the network.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(String resourceGroupName, String networkResourceName, Context context);
+
+ /**
+ * Gets the information about all network resources in a given resource group. The information include the
+ * description and other properties of the Network.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all network resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Gets the information about all network resources in a given resource group. The information include the
+ * description and other properties of the Network.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all network resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
+
+ /**
+ * Gets the information about all network resources in a given resource group. The information include the
+ * description and other properties of the network.
+ *
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all network resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Gets the information about all network resources in a given resource group. The information include the
+ * description and other properties of the network.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all network resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/OperationsClient.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/OperationsClient.java
new file mode 100644
index 000000000000..2aa70facf458
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/OperationsClient.java
@@ -0,0 +1,38 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.OperationResultInner;
+
+/** An instance of this class provides access to all the operations defined in OperationsClient. */
+public interface OperationsClient {
+ /**
+ * Lists all the available operations provided by Service Fabric SeaBreeze resource provider.
+ *
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes the result of the request to list Service Fabric operations.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Lists all the available operations provided by Service Fabric SeaBreeze resource provider.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return describes the result of the request to list Service Fabric operations.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/SecretValuesClient.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/SecretValuesClient.java
new file mode 100644
index 000000000000..b6250712a158
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/SecretValuesClient.java
@@ -0,0 +1,200 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.SecretValueInner;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.SecretValueResourceDescriptionInner;
+
+/** An instance of this class provides access to all the operations defined in SecretValuesClient. */
+public interface SecretValuesClient {
+ /**
+ * Creates a new value of the specified secret resource. The name of the value is typically the version identifier.
+ * Once created the value cannot be changed.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param secretValueResourceName The name of the secret resource value which is typically the version identifier
+ * for the value.
+ * @param secretValueResourceDescription Description for creating a value of a secret resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a value of a secret resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SecretValueResourceDescriptionInner create(
+ String resourceGroupName,
+ String secretResourceName,
+ String secretValueResourceName,
+ SecretValueResourceDescriptionInner secretValueResourceDescription);
+
+ /**
+ * Creates a new value of the specified secret resource. The name of the value is typically the version identifier.
+ * Once created the value cannot be changed.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param secretValueResourceName The name of the secret resource value which is typically the version identifier
+ * for the value.
+ * @param secretValueResourceDescription Description for creating a value of a secret resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a value of a secret resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createWithResponse(
+ String resourceGroupName,
+ String secretResourceName,
+ String secretValueResourceName,
+ SecretValueResourceDescriptionInner secretValueResourceDescription,
+ Context context);
+
+ /**
+ * Get the information about the specified named secret value resources. The information does not include the actual
+ * value of the secret.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param secretValueResourceName The name of the secret resource value which is typically the version identifier
+ * for the value.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the specified named secret value resources.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SecretValueResourceDescriptionInner get(
+ String resourceGroupName, String secretResourceName, String secretValueResourceName);
+
+ /**
+ * Get the information about the specified named secret value resources. The information does not include the actual
+ * value of the secret.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param secretValueResourceName The name of the secret resource value which is typically the version identifier
+ * for the value.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the specified named secret value resources.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String secretResourceName, String secretValueResourceName, Context context);
+
+ /**
+ * Deletes the secret value resource identified by the name. The name of the resource is typically the version
+ * associated with that value. Deletion will fail if the specified value is in use.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param secretValueResourceName The name of the secret resource value which is typically the version identifier
+ * for the value.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String secretResourceName, String secretValueResourceName);
+
+ /**
+ * Deletes the secret value resource identified by the name. The name of the resource is typically the version
+ * associated with that value. Deletion will fail if the specified value is in use.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param secretValueResourceName The name of the secret resource value which is typically the version identifier
+ * for the value.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(
+ String resourceGroupName, String secretResourceName, String secretValueResourceName, Context context);
+
+ /**
+ * Gets information about all secret value resources of the specified secret resource. The information includes the
+ * names of the secret value resources, but not the actual values.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return information about all secret value resources of the specified secret resource.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String secretResourceName);
+
+ /**
+ * Gets information about all secret value resources of the specified secret resource. The information includes the
+ * names of the secret value resources, but not the actual values.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return information about all secret value resources of the specified secret resource.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(
+ String resourceGroupName, String secretResourceName, Context context);
+
+ /**
+ * Lists the decrypted value of the specified named value of the secret resource. This is a privileged operation.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param secretValueResourceName The name of the secret resource value which is typically the version identifier
+ * for the value.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type represents the unencrypted value of the secret.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SecretValueInner listValue(String resourceGroupName, String secretResourceName, String secretValueResourceName);
+
+ /**
+ * Lists the decrypted value of the specified named value of the secret resource. This is a privileged operation.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param secretValueResourceName The name of the secret resource value which is typically the version identifier
+ * for the value.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type represents the unencrypted value of the secret.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listValueWithResponse(
+ String resourceGroupName, String secretResourceName, String secretValueResourceName, Context context);
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/SecretsClient.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/SecretsClient.java
new file mode 100644
index 000000000000..a61c0aee9b32
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/SecretsClient.java
@@ -0,0 +1,168 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.SecretResourceDescriptionInner;
+
+/** An instance of this class provides access to all the operations defined in SecretsClient. */
+public interface SecretsClient {
+ /**
+ * Creates a secret resource with the specified name, description and properties. If a secret resource with the same
+ * name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param secretResourceDescription Description for creating a secret resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a secret resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SecretResourceDescriptionInner create(
+ String resourceGroupName, String secretResourceName, SecretResourceDescriptionInner secretResourceDescription);
+
+ /**
+ * Creates a secret resource with the specified name, description and properties. If a secret resource with the same
+ * name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param secretResourceDescription Description for creating a secret resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a secret resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createWithResponse(
+ String resourceGroupName,
+ String secretResourceName,
+ SecretResourceDescriptionInner secretResourceDescription,
+ Context context);
+
+ /**
+ * Gets the information about the secret resource with the given name. The information include the description and
+ * other properties of the secret.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the secret resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SecretResourceDescriptionInner getByResourceGroup(String resourceGroupName, String secretResourceName);
+
+ /**
+ * Gets the information about the secret resource with the given name. The information include the description and
+ * other properties of the secret.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the secret resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String secretResourceName, Context context);
+
+ /**
+ * Deletes the secret resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String secretResourceName);
+
+ /**
+ * Deletes the secret resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param secretResourceName The name of the secret resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(String resourceGroupName, String secretResourceName, Context context);
+
+ /**
+ * Gets the information about all secret resources in a given resource group. The information include the
+ * description and other properties of the Secret.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all secret resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Gets the information about all secret resources in a given resource group. The information include the
+ * description and other properties of the Secret.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all secret resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
+
+ /**
+ * Gets the information about all secret resources in a given resource group. The information include the
+ * description and other properties of the secret.
+ *
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all secret resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Gets the information about all secret resources in a given resource group. The information include the
+ * description and other properties of the secret.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all secret resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/ServiceFabricMeshManagementClient.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/ServiceFabricMeshManagementClient.java
new file mode 100644
index 000000000000..9936bf4518c5
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/ServiceFabricMeshManagementClient.java
@@ -0,0 +1,116 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent;
+
+import com.azure.core.http.HttpPipeline;
+import java.time.Duration;
+
+/** The interface for ServiceFabricMeshManagementClient class. */
+public interface ServiceFabricMeshManagementClient {
+ /**
+ * Gets The customer subscription identifier.
+ *
+ * @return the subscriptionId value.
+ */
+ String getSubscriptionId();
+
+ /**
+ * Gets server parameter.
+ *
+ * @return the endpoint value.
+ */
+ String getEndpoint();
+
+ /**
+ * Gets Api Version.
+ *
+ * @return the apiVersion value.
+ */
+ String getApiVersion();
+
+ /**
+ * Gets The HTTP pipeline to send requests through.
+ *
+ * @return the httpPipeline value.
+ */
+ HttpPipeline getHttpPipeline();
+
+ /**
+ * Gets The default poll interval for long-running operation.
+ *
+ * @return the defaultPollInterval value.
+ */
+ Duration getDefaultPollInterval();
+
+ /**
+ * Gets the OperationsClient object to access its operations.
+ *
+ * @return the OperationsClient object.
+ */
+ OperationsClient getOperations();
+
+ /**
+ * Gets the SecretsClient object to access its operations.
+ *
+ * @return the SecretsClient object.
+ */
+ SecretsClient getSecrets();
+
+ /**
+ * Gets the SecretValuesClient object to access its operations.
+ *
+ * @return the SecretValuesClient object.
+ */
+ SecretValuesClient getSecretValues();
+
+ /**
+ * Gets the VolumesClient object to access its operations.
+ *
+ * @return the VolumesClient object.
+ */
+ VolumesClient getVolumes();
+
+ /**
+ * Gets the NetworksClient object to access its operations.
+ *
+ * @return the NetworksClient object.
+ */
+ NetworksClient getNetworks();
+
+ /**
+ * Gets the GatewaysClient object to access its operations.
+ *
+ * @return the GatewaysClient object.
+ */
+ GatewaysClient getGateways();
+
+ /**
+ * Gets the ApplicationsClient object to access its operations.
+ *
+ * @return the ApplicationsClient object.
+ */
+ ApplicationsClient getApplications();
+
+ /**
+ * Gets the ServicesClient object to access its operations.
+ *
+ * @return the ServicesClient object.
+ */
+ ServicesClient getServices();
+
+ /**
+ * Gets the ServiceReplicasClient object to access its operations.
+ *
+ * @return the ServiceReplicasClient object.
+ */
+ ServiceReplicasClient getServiceReplicas();
+
+ /**
+ * Gets the CodePackagesClient object to access its operations.
+ *
+ * @return the CodePackagesClient object.
+ */
+ CodePackagesClient getCodePackages();
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/ServiceReplicasClient.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/ServiceReplicasClient.java
new file mode 100644
index 000000000000..8a76bdaa9b6c
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/ServiceReplicasClient.java
@@ -0,0 +1,91 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.ServiceReplicaDescriptionInner;
+
+/** An instance of this class provides access to all the operations defined in ServiceReplicasClient. */
+public interface ServiceReplicasClient {
+ /**
+ * Gets the information about the service replica with the given name. The information include the description and
+ * other properties of the service replica.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @param replicaName Service Fabric replica name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the service replica with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServiceReplicaDescriptionInner get(
+ String resourceGroupName, String applicationResourceName, String serviceResourceName, String replicaName);
+
+ /**
+ * Gets the information about the service replica with the given name. The information include the description and
+ * other properties of the service replica.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @param replicaName Service Fabric replica name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the service replica with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName,
+ String applicationResourceName,
+ String serviceResourceName,
+ String replicaName,
+ Context context);
+
+ /**
+ * Gets the information about all replicas of a given service of an application. The information includes the
+ * runtime properties of the replica instance.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all replicas of a given service of an application.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(
+ String resourceGroupName, String applicationResourceName, String serviceResourceName);
+
+ /**
+ * Gets the information about all replicas of a given service of an application. The information includes the
+ * runtime properties of the replica instance.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all replicas of a given service of an application.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(
+ String resourceGroupName, String applicationResourceName, String serviceResourceName, Context context);
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/ServicesClient.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/ServicesClient.java
new file mode 100644
index 000000000000..5e3d1790e09b
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/ServicesClient.java
@@ -0,0 +1,82 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.ServiceResourceDescriptionInner;
+
+/** An instance of this class provides access to all the operations defined in ServicesClient. */
+public interface ServicesClient {
+ /**
+ * Gets the information about the service resource with the given name. The information include the description and
+ * other properties of the service.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the service resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServiceResourceDescriptionInner get(
+ String resourceGroupName, String applicationResourceName, String serviceResourceName);
+
+ /**
+ * Gets the information about the service resource with the given name. The information include the description and
+ * other properties of the service.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the service resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String applicationResourceName, String serviceResourceName, Context context);
+
+ /**
+ * Gets the information about all services of an application resource. The information include the description and
+ * other properties of the Service.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all services of an application resource.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String applicationResourceName);
+
+ /**
+ * Gets the information about all services of an application resource. The information include the description and
+ * other properties of the Service.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all services of an application resource.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(
+ String resourceGroupName, String applicationResourceName, Context context);
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/VolumesClient.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/VolumesClient.java
new file mode 100644
index 000000000000..6eb77b498d1b
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/VolumesClient.java
@@ -0,0 +1,168 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.VolumeResourceDescriptionInner;
+
+/** An instance of this class provides access to all the operations defined in VolumesClient. */
+public interface VolumesClient {
+ /**
+ * Creates a volume resource with the specified name, description and properties. If a volume resource with the same
+ * name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param volumeResourceName The identity of the volume.
+ * @param volumeResourceDescription Description for creating a Volume resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a volume resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ VolumeResourceDescriptionInner create(
+ String resourceGroupName, String volumeResourceName, VolumeResourceDescriptionInner volumeResourceDescription);
+
+ /**
+ * Creates a volume resource with the specified name, description and properties. If a volume resource with the same
+ * name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param volumeResourceName The identity of the volume.
+ * @param volumeResourceDescription Description for creating a Volume resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a volume resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createWithResponse(
+ String resourceGroupName,
+ String volumeResourceName,
+ VolumeResourceDescriptionInner volumeResourceDescription,
+ Context context);
+
+ /**
+ * Gets the information about the volume resource with the given name. The information include the description and
+ * other properties of the volume.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param volumeResourceName The identity of the volume.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the volume resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ VolumeResourceDescriptionInner getByResourceGroup(String resourceGroupName, String volumeResourceName);
+
+ /**
+ * Gets the information about the volume resource with the given name. The information include the description and
+ * other properties of the volume.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param volumeResourceName The identity of the volume.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the volume resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(
+ String resourceGroupName, String volumeResourceName, Context context);
+
+ /**
+ * Deletes the volume resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param volumeResourceName The identity of the volume.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ void delete(String resourceGroupName, String volumeResourceName);
+
+ /**
+ * Deletes the volume resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param volumeResourceName The identity of the volume.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(String resourceGroupName, String volumeResourceName, Context context);
+
+ /**
+ * Gets the information about all volume resources in a given resource group. The information include the
+ * description and other properties of the Volume.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all volume resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Gets the information about all volume resources in a given resource group. The information include the
+ * description and other properties of the Volume.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all volume resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
+
+ /**
+ * Gets the information about all volume resources in a given resource group. The information include the
+ * description and other properties of the volume.
+ *
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all volume resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Gets the information about all volume resources in a given resource group. The information include the
+ * description and other properties of the volume.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException thrown if the request is
+ * rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all volume resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ApplicationResourceDescriptionInner.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ApplicationResourceDescriptionInner.java
new file mode 100644
index 000000000000..01a32c204fe1
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ApplicationResourceDescriptionInner.java
@@ -0,0 +1,220 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.DiagnosticsDescription;
+import com.azure.resourcemanager.servicefabricmesh.models.HealthState;
+import com.azure.resourcemanager.servicefabricmesh.models.ResourceStatus;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+import java.util.Map;
+
+/** This type describes an application resource. */
+@Fluent
+public final class ApplicationResourceDescriptionInner extends Resource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ApplicationResourceDescriptionInner.class);
+
+ /*
+ * This type describes properties of an application resource.
+ */
+ @JsonProperty(value = "properties", required = true)
+ private ApplicationResourceProperties innerProperties = new ApplicationResourceProperties();
+
+ /**
+ * Get the innerProperties property: This type describes properties of an application resource.
+ *
+ * @return the innerProperties value.
+ */
+ private ApplicationResourceProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ApplicationResourceDescriptionInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ApplicationResourceDescriptionInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Get the description property: User readable description of the application.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.innerProperties() == null ? null : this.innerProperties().description();
+ }
+
+ /**
+ * Set the description property: User readable description of the application.
+ *
+ * @param description the description value to set.
+ * @return the ApplicationResourceDescriptionInner object itself.
+ */
+ public ApplicationResourceDescriptionInner withDescription(String description) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ApplicationResourceProperties();
+ }
+ this.innerProperties().withDescription(description);
+ return this;
+ }
+
+ /**
+ * Get the services property: Describes the services in the application. This property is used to create or modify
+ * services of the application. On get only the name of the service is returned. The service description can be
+ * obtained by querying for the service resource.
+ *
+ * @return the services value.
+ */
+ public List services() {
+ return this.innerProperties() == null ? null : this.innerProperties().services();
+ }
+
+ /**
+ * Set the services property: Describes the services in the application. This property is used to create or modify
+ * services of the application. On get only the name of the service is returned. The service description can be
+ * obtained by querying for the service resource.
+ *
+ * @param services the services value to set.
+ * @return the ApplicationResourceDescriptionInner object itself.
+ */
+ public ApplicationResourceDescriptionInner withServices(List services) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ApplicationResourceProperties();
+ }
+ this.innerProperties().withServices(services);
+ return this;
+ }
+
+ /**
+ * Get the diagnostics property: Describes the diagnostics definition and usage for an application resource.
+ *
+ * @return the diagnostics value.
+ */
+ public DiagnosticsDescription diagnostics() {
+ return this.innerProperties() == null ? null : this.innerProperties().diagnostics();
+ }
+
+ /**
+ * Set the diagnostics property: Describes the diagnostics definition and usage for an application resource.
+ *
+ * @param diagnostics the diagnostics value to set.
+ * @return the ApplicationResourceDescriptionInner object itself.
+ */
+ public ApplicationResourceDescriptionInner withDiagnostics(DiagnosticsDescription diagnostics) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ApplicationResourceProperties();
+ }
+ this.innerProperties().withDiagnostics(diagnostics);
+ return this;
+ }
+
+ /**
+ * Get the debugParams property: Internal - used by Visual Studio to setup the debugging session on the local
+ * development environment.
+ *
+ * @return the debugParams value.
+ */
+ public String debugParams() {
+ return this.innerProperties() == null ? null : this.innerProperties().debugParams();
+ }
+
+ /**
+ * Set the debugParams property: Internal - used by Visual Studio to setup the debugging session on the local
+ * development environment.
+ *
+ * @param debugParams the debugParams value to set.
+ * @return the ApplicationResourceDescriptionInner object itself.
+ */
+ public ApplicationResourceDescriptionInner withDebugParams(String debugParams) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ApplicationResourceProperties();
+ }
+ this.innerProperties().withDebugParams(debugParams);
+ return this;
+ }
+
+ /**
+ * Get the serviceNames property: Names of the services in the application.
+ *
+ * @return the serviceNames value.
+ */
+ public List serviceNames() {
+ return this.innerProperties() == null ? null : this.innerProperties().serviceNames();
+ }
+
+ /**
+ * Get the status property: Status of the application.
+ *
+ * @return the status value.
+ */
+ public ResourceStatus status() {
+ return this.innerProperties() == null ? null : this.innerProperties().status();
+ }
+
+ /**
+ * Get the statusDetails property: Gives additional information about the current status of the application.
+ *
+ * @return the statusDetails value.
+ */
+ public String statusDetails() {
+ return this.innerProperties() == null ? null : this.innerProperties().statusDetails();
+ }
+
+ /**
+ * Get the healthState property: Describes the health state of an application resource.
+ *
+ * @return the healthState value.
+ */
+ public HealthState healthState() {
+ return this.innerProperties() == null ? null : this.innerProperties().healthState();
+ }
+
+ /**
+ * Get the unhealthyEvaluation property: When the application's health state is not 'Ok', this additional details
+ * from service fabric Health Manager for the user to know why the application is marked unhealthy.
+ *
+ * @return the unhealthyEvaluation value.
+ */
+ public String unhealthyEvaluation() {
+ return this.innerProperties() == null ? null : this.innerProperties().unhealthyEvaluation();
+ }
+
+ /**
+ * Get the provisioningState property: State of the resource.
+ *
+ * @return the provisioningState value.
+ */
+ public String provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property innerProperties in model ApplicationResourceDescriptionInner"));
+ } else {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ApplicationResourceProperties.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ApplicationResourceProperties.java
new file mode 100644
index 000000000000..99b4103a0100
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ApplicationResourceProperties.java
@@ -0,0 +1,231 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.DiagnosticsDescription;
+import com.azure.resourcemanager.servicefabricmesh.models.HealthState;
+import com.azure.resourcemanager.servicefabricmesh.models.ProvisionedResourceProperties;
+import com.azure.resourcemanager.servicefabricmesh.models.ResourceStatus;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** This type describes properties of an application resource. */
+@Fluent
+public final class ApplicationResourceProperties extends ProvisionedResourceProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ApplicationResourceProperties.class);
+
+ /*
+ * User readable description of the application.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /*
+ * Describes the services in the application. This property is used to
+ * create or modify services of the application. On get only the name of
+ * the service is returned. The service description can be obtained by
+ * querying for the service resource.
+ */
+ @JsonProperty(value = "services")
+ private List services;
+
+ /*
+ * Describes the diagnostics definition and usage for an application
+ * resource.
+ */
+ @JsonProperty(value = "diagnostics")
+ private DiagnosticsDescription diagnostics;
+
+ /*
+ * Internal - used by Visual Studio to setup the debugging session on the
+ * local development environment.
+ */
+ @JsonProperty(value = "debugParams")
+ private String debugParams;
+
+ /*
+ * Names of the services in the application.
+ */
+ @JsonProperty(value = "serviceNames", access = JsonProperty.Access.WRITE_ONLY)
+ private List serviceNames;
+
+ /*
+ * Status of the application.
+ */
+ @JsonProperty(value = "status", access = JsonProperty.Access.WRITE_ONLY)
+ private ResourceStatus status;
+
+ /*
+ * Gives additional information about the current status of the
+ * application.
+ */
+ @JsonProperty(value = "statusDetails", access = JsonProperty.Access.WRITE_ONLY)
+ private String statusDetails;
+
+ /*
+ * Describes the health state of an application resource.
+ */
+ @JsonProperty(value = "healthState", access = JsonProperty.Access.WRITE_ONLY)
+ private HealthState healthState;
+
+ /*
+ * When the application's health state is not 'Ok', this additional details
+ * from service fabric Health Manager for the user to know why the
+ * application is marked unhealthy.
+ */
+ @JsonProperty(value = "unhealthyEvaluation", access = JsonProperty.Access.WRITE_ONLY)
+ private String unhealthyEvaluation;
+
+ /**
+ * Get the description property: User readable description of the application.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description property: User readable description of the application.
+ *
+ * @param description the description value to set.
+ * @return the ApplicationResourceProperties object itself.
+ */
+ public ApplicationResourceProperties withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get the services property: Describes the services in the application. This property is used to create or modify
+ * services of the application. On get only the name of the service is returned. The service description can be
+ * obtained by querying for the service resource.
+ *
+ * @return the services value.
+ */
+ public List services() {
+ return this.services;
+ }
+
+ /**
+ * Set the services property: Describes the services in the application. This property is used to create or modify
+ * services of the application. On get only the name of the service is returned. The service description can be
+ * obtained by querying for the service resource.
+ *
+ * @param services the services value to set.
+ * @return the ApplicationResourceProperties object itself.
+ */
+ public ApplicationResourceProperties withServices(List services) {
+ this.services = services;
+ return this;
+ }
+
+ /**
+ * Get the diagnostics property: Describes the diagnostics definition and usage for an application resource.
+ *
+ * @return the diagnostics value.
+ */
+ public DiagnosticsDescription diagnostics() {
+ return this.diagnostics;
+ }
+
+ /**
+ * Set the diagnostics property: Describes the diagnostics definition and usage for an application resource.
+ *
+ * @param diagnostics the diagnostics value to set.
+ * @return the ApplicationResourceProperties object itself.
+ */
+ public ApplicationResourceProperties withDiagnostics(DiagnosticsDescription diagnostics) {
+ this.diagnostics = diagnostics;
+ return this;
+ }
+
+ /**
+ * Get the debugParams property: Internal - used by Visual Studio to setup the debugging session on the local
+ * development environment.
+ *
+ * @return the debugParams value.
+ */
+ public String debugParams() {
+ return this.debugParams;
+ }
+
+ /**
+ * Set the debugParams property: Internal - used by Visual Studio to setup the debugging session on the local
+ * development environment.
+ *
+ * @param debugParams the debugParams value to set.
+ * @return the ApplicationResourceProperties object itself.
+ */
+ public ApplicationResourceProperties withDebugParams(String debugParams) {
+ this.debugParams = debugParams;
+ return this;
+ }
+
+ /**
+ * Get the serviceNames property: Names of the services in the application.
+ *
+ * @return the serviceNames value.
+ */
+ public List serviceNames() {
+ return this.serviceNames;
+ }
+
+ /**
+ * Get the status property: Status of the application.
+ *
+ * @return the status value.
+ */
+ public ResourceStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Get the statusDetails property: Gives additional information about the current status of the application.
+ *
+ * @return the statusDetails value.
+ */
+ public String statusDetails() {
+ return this.statusDetails;
+ }
+
+ /**
+ * Get the healthState property: Describes the health state of an application resource.
+ *
+ * @return the healthState value.
+ */
+ public HealthState healthState() {
+ return this.healthState;
+ }
+
+ /**
+ * Get the unhealthyEvaluation property: When the application's health state is not 'Ok', this additional details
+ * from service fabric Health Manager for the user to know why the application is marked unhealthy.
+ *
+ * @return the unhealthyEvaluation value.
+ */
+ public String unhealthyEvaluation() {
+ return this.unhealthyEvaluation;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ if (services() != null) {
+ services().forEach(e -> e.validate());
+ }
+ if (diagnostics() != null) {
+ diagnostics().validate();
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ContainerLogsInner.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ContainerLogsInner.java
new file mode 100644
index 000000000000..8d71e117635d
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ContainerLogsInner.java
@@ -0,0 +1,50 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Container logs. */
+@Fluent
+public final class ContainerLogsInner {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ContainerLogsInner.class);
+
+ /*
+ * Container logs.
+ */
+ @JsonProperty(value = "content")
+ private String content;
+
+ /**
+ * Get the content property: Container logs.
+ *
+ * @return the content value.
+ */
+ public String content() {
+ return this.content;
+ }
+
+ /**
+ * Set the content property: Container logs.
+ *
+ * @param content the content value to set.
+ * @return the ContainerLogsInner object itself.
+ */
+ public ContainerLogsInner withContent(String content) {
+ this.content = content;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/GatewayResourceDescriptionInner.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/GatewayResourceDescriptionInner.java
new file mode 100644
index 000000000000..1d0ce3ed9ba8
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/GatewayResourceDescriptionInner.java
@@ -0,0 +1,220 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.HttpConfig;
+import com.azure.resourcemanager.servicefabricmesh.models.NetworkRef;
+import com.azure.resourcemanager.servicefabricmesh.models.ResourceStatus;
+import com.azure.resourcemanager.servicefabricmesh.models.TcpConfig;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+import java.util.Map;
+
+/** This type describes a gateway resource. */
+@Fluent
+public final class GatewayResourceDescriptionInner extends Resource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(GatewayResourceDescriptionInner.class);
+
+ /*
+ * This type describes properties of a gateway resource.
+ */
+ @JsonProperty(value = "properties", required = true)
+ private GatewayResourceProperties innerProperties = new GatewayResourceProperties();
+
+ /**
+ * Get the innerProperties property: This type describes properties of a gateway resource.
+ *
+ * @return the innerProperties value.
+ */
+ private GatewayResourceProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public GatewayResourceDescriptionInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public GatewayResourceDescriptionInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Get the description property: User readable description of the gateway.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.innerProperties() == null ? null : this.innerProperties().description();
+ }
+
+ /**
+ * Set the description property: User readable description of the gateway.
+ *
+ * @param description the description value to set.
+ * @return the GatewayResourceDescriptionInner object itself.
+ */
+ public GatewayResourceDescriptionInner withDescription(String description) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new GatewayResourceProperties();
+ }
+ this.innerProperties().withDescription(description);
+ return this;
+ }
+
+ /**
+ * Get the sourceNetwork property: Network the gateway should listen on for requests.
+ *
+ * @return the sourceNetwork value.
+ */
+ public NetworkRef sourceNetwork() {
+ return this.innerProperties() == null ? null : this.innerProperties().sourceNetwork();
+ }
+
+ /**
+ * Set the sourceNetwork property: Network the gateway should listen on for requests.
+ *
+ * @param sourceNetwork the sourceNetwork value to set.
+ * @return the GatewayResourceDescriptionInner object itself.
+ */
+ public GatewayResourceDescriptionInner withSourceNetwork(NetworkRef sourceNetwork) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new GatewayResourceProperties();
+ }
+ this.innerProperties().withSourceNetwork(sourceNetwork);
+ return this;
+ }
+
+ /**
+ * Get the destinationNetwork property: Network that the Application is using.
+ *
+ * @return the destinationNetwork value.
+ */
+ public NetworkRef destinationNetwork() {
+ return this.innerProperties() == null ? null : this.innerProperties().destinationNetwork();
+ }
+
+ /**
+ * Set the destinationNetwork property: Network that the Application is using.
+ *
+ * @param destinationNetwork the destinationNetwork value to set.
+ * @return the GatewayResourceDescriptionInner object itself.
+ */
+ public GatewayResourceDescriptionInner withDestinationNetwork(NetworkRef destinationNetwork) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new GatewayResourceProperties();
+ }
+ this.innerProperties().withDestinationNetwork(destinationNetwork);
+ return this;
+ }
+
+ /**
+ * Get the tcp property: Configuration for tcp connectivity for this gateway.
+ *
+ * @return the tcp value.
+ */
+ public List tcp() {
+ return this.innerProperties() == null ? null : this.innerProperties().tcp();
+ }
+
+ /**
+ * Set the tcp property: Configuration for tcp connectivity for this gateway.
+ *
+ * @param tcp the tcp value to set.
+ * @return the GatewayResourceDescriptionInner object itself.
+ */
+ public GatewayResourceDescriptionInner withTcp(List tcp) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new GatewayResourceProperties();
+ }
+ this.innerProperties().withTcp(tcp);
+ return this;
+ }
+
+ /**
+ * Get the http property: Configuration for http connectivity for this gateway.
+ *
+ * @return the http value.
+ */
+ public List http() {
+ return this.innerProperties() == null ? null : this.innerProperties().http();
+ }
+
+ /**
+ * Set the http property: Configuration for http connectivity for this gateway.
+ *
+ * @param http the http value to set.
+ * @return the GatewayResourceDescriptionInner object itself.
+ */
+ public GatewayResourceDescriptionInner withHttp(List http) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new GatewayResourceProperties();
+ }
+ this.innerProperties().withHttp(http);
+ return this;
+ }
+
+ /**
+ * Get the status property: Status of the resource.
+ *
+ * @return the status value.
+ */
+ public ResourceStatus status() {
+ return this.innerProperties() == null ? null : this.innerProperties().status();
+ }
+
+ /**
+ * Get the statusDetails property: Gives additional information about the current status of the gateway.
+ *
+ * @return the statusDetails value.
+ */
+ public String statusDetails() {
+ return this.innerProperties() == null ? null : this.innerProperties().statusDetails();
+ }
+
+ /**
+ * Get the ipAddress property: IP address of the gateway. This is populated in the response and is ignored for
+ * incoming requests.
+ *
+ * @return the ipAddress value.
+ */
+ public String ipAddress() {
+ return this.innerProperties() == null ? null : this.innerProperties().ipAddress();
+ }
+
+ /**
+ * Get the provisioningState property: State of the resource.
+ *
+ * @return the provisioningState value.
+ */
+ public String provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property innerProperties in model GatewayResourceDescriptionInner"));
+ } else {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/GatewayResourceProperties.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/GatewayResourceProperties.java
new file mode 100644
index 000000000000..1fec285db8cb
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/GatewayResourceProperties.java
@@ -0,0 +1,231 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.HttpConfig;
+import com.azure.resourcemanager.servicefabricmesh.models.NetworkRef;
+import com.azure.resourcemanager.servicefabricmesh.models.ProvisionedResourceProperties;
+import com.azure.resourcemanager.servicefabricmesh.models.ResourceStatus;
+import com.azure.resourcemanager.servicefabricmesh.models.TcpConfig;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** This type describes properties of a gateway resource. */
+@Fluent
+public final class GatewayResourceProperties extends ProvisionedResourceProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(GatewayResourceProperties.class);
+
+ /*
+ * User readable description of the gateway.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /*
+ * Network the gateway should listen on for requests.
+ */
+ @JsonProperty(value = "sourceNetwork", required = true)
+ private NetworkRef sourceNetwork;
+
+ /*
+ * Network that the Application is using.
+ */
+ @JsonProperty(value = "destinationNetwork", required = true)
+ private NetworkRef destinationNetwork;
+
+ /*
+ * Configuration for tcp connectivity for this gateway.
+ */
+ @JsonProperty(value = "tcp")
+ private List tcp;
+
+ /*
+ * Configuration for http connectivity for this gateway.
+ */
+ @JsonProperty(value = "http")
+ private List http;
+
+ /*
+ * Status of the resource.
+ */
+ @JsonProperty(value = "status", access = JsonProperty.Access.WRITE_ONLY)
+ private ResourceStatus status;
+
+ /*
+ * Gives additional information about the current status of the gateway.
+ */
+ @JsonProperty(value = "statusDetails", access = JsonProperty.Access.WRITE_ONLY)
+ private String statusDetails;
+
+ /*
+ * IP address of the gateway. This is populated in the response and is
+ * ignored for incoming requests.
+ */
+ @JsonProperty(value = "ipAddress", access = JsonProperty.Access.WRITE_ONLY)
+ private String ipAddress;
+
+ /**
+ * Get the description property: User readable description of the gateway.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description property: User readable description of the gateway.
+ *
+ * @param description the description value to set.
+ * @return the GatewayResourceProperties object itself.
+ */
+ public GatewayResourceProperties withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get the sourceNetwork property: Network the gateway should listen on for requests.
+ *
+ * @return the sourceNetwork value.
+ */
+ public NetworkRef sourceNetwork() {
+ return this.sourceNetwork;
+ }
+
+ /**
+ * Set the sourceNetwork property: Network the gateway should listen on for requests.
+ *
+ * @param sourceNetwork the sourceNetwork value to set.
+ * @return the GatewayResourceProperties object itself.
+ */
+ public GatewayResourceProperties withSourceNetwork(NetworkRef sourceNetwork) {
+ this.sourceNetwork = sourceNetwork;
+ return this;
+ }
+
+ /**
+ * Get the destinationNetwork property: Network that the Application is using.
+ *
+ * @return the destinationNetwork value.
+ */
+ public NetworkRef destinationNetwork() {
+ return this.destinationNetwork;
+ }
+
+ /**
+ * Set the destinationNetwork property: Network that the Application is using.
+ *
+ * @param destinationNetwork the destinationNetwork value to set.
+ * @return the GatewayResourceProperties object itself.
+ */
+ public GatewayResourceProperties withDestinationNetwork(NetworkRef destinationNetwork) {
+ this.destinationNetwork = destinationNetwork;
+ return this;
+ }
+
+ /**
+ * Get the tcp property: Configuration for tcp connectivity for this gateway.
+ *
+ * @return the tcp value.
+ */
+ public List tcp() {
+ return this.tcp;
+ }
+
+ /**
+ * Set the tcp property: Configuration for tcp connectivity for this gateway.
+ *
+ * @param tcp the tcp value to set.
+ * @return the GatewayResourceProperties object itself.
+ */
+ public GatewayResourceProperties withTcp(List tcp) {
+ this.tcp = tcp;
+ return this;
+ }
+
+ /**
+ * Get the http property: Configuration for http connectivity for this gateway.
+ *
+ * @return the http value.
+ */
+ public List http() {
+ return this.http;
+ }
+
+ /**
+ * Set the http property: Configuration for http connectivity for this gateway.
+ *
+ * @param http the http value to set.
+ * @return the GatewayResourceProperties object itself.
+ */
+ public GatewayResourceProperties withHttp(List http) {
+ this.http = http;
+ return this;
+ }
+
+ /**
+ * Get the status property: Status of the resource.
+ *
+ * @return the status value.
+ */
+ public ResourceStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Get the statusDetails property: Gives additional information about the current status of the gateway.
+ *
+ * @return the statusDetails value.
+ */
+ public String statusDetails() {
+ return this.statusDetails;
+ }
+
+ /**
+ * Get the ipAddress property: IP address of the gateway. This is populated in the response and is ignored for
+ * incoming requests.
+ *
+ * @return the ipAddress value.
+ */
+ public String ipAddress() {
+ return this.ipAddress;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ if (sourceNetwork() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property sourceNetwork in model GatewayResourceProperties"));
+ } else {
+ sourceNetwork().validate();
+ }
+ if (destinationNetwork() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property destinationNetwork in model GatewayResourceProperties"));
+ } else {
+ destinationNetwork().validate();
+ }
+ if (tcp() != null) {
+ tcp().forEach(e -> e.validate());
+ }
+ if (http() != null) {
+ http().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/NetworkResourceDescriptionInner.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/NetworkResourceDescriptionInner.java
new file mode 100644
index 000000000000..4410bb2b273c
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/NetworkResourceDescriptionInner.java
@@ -0,0 +1,75 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.NetworkResourceProperties;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Map;
+
+/** This type describes a network resource. */
+@Fluent
+public final class NetworkResourceDescriptionInner extends Resource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(NetworkResourceDescriptionInner.class);
+
+ /*
+ * Describes properties of a network resource.
+ */
+ @JsonProperty(value = "properties", required = true)
+ private NetworkResourceProperties properties;
+
+ /**
+ * Get the properties property: Describes properties of a network resource.
+ *
+ * @return the properties value.
+ */
+ public NetworkResourceProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: Describes properties of a network resource.
+ *
+ * @param properties the properties value to set.
+ * @return the NetworkResourceDescriptionInner object itself.
+ */
+ public NetworkResourceDescriptionInner withProperties(NetworkResourceProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public NetworkResourceDescriptionInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public NetworkResourceDescriptionInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property properties in model NetworkResourceDescriptionInner"));
+ } else {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/OperationResultInner.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/OperationResultInner.java
new file mode 100644
index 000000000000..7f3d9e53e591
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/OperationResultInner.java
@@ -0,0 +1,132 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.AvailableOperationDisplay;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** List of operations available at the listed Azure resource provider. */
+@Fluent
+public final class OperationResultInner {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(OperationResultInner.class);
+
+ /*
+ * The name of the operation.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /*
+ * The object that represents the operation.
+ */
+ @JsonProperty(value = "display")
+ private AvailableOperationDisplay display;
+
+ /*
+ * Origin result
+ */
+ @JsonProperty(value = "origin")
+ private String origin;
+
+ /*
+ * The URL to use for getting the next set of results.
+ */
+ @JsonProperty(value = "nextLink")
+ private String nextLink;
+
+ /**
+ * Get the name property: The name of the operation.
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name property: The name of the operation.
+ *
+ * @param name the name value to set.
+ * @return the OperationResultInner object itself.
+ */
+ public OperationResultInner withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the display property: The object that represents the operation.
+ *
+ * @return the display value.
+ */
+ public AvailableOperationDisplay display() {
+ return this.display;
+ }
+
+ /**
+ * Set the display property: The object that represents the operation.
+ *
+ * @param display the display value to set.
+ * @return the OperationResultInner object itself.
+ */
+ public OperationResultInner withDisplay(AvailableOperationDisplay display) {
+ this.display = display;
+ return this;
+ }
+
+ /**
+ * Get the origin property: Origin result.
+ *
+ * @return the origin value.
+ */
+ public String origin() {
+ return this.origin;
+ }
+
+ /**
+ * Set the origin property: Origin result.
+ *
+ * @param origin the origin value to set.
+ * @return the OperationResultInner object itself.
+ */
+ public OperationResultInner withOrigin(String origin) {
+ this.origin = origin;
+ return this;
+ }
+
+ /**
+ * Get the nextLink property: The URL to use for getting the next set of results.
+ *
+ * @return the nextLink value.
+ */
+ public String nextLink() {
+ return this.nextLink;
+ }
+
+ /**
+ * Set the nextLink property: The URL to use for getting the next set of results.
+ *
+ * @param nextLink the nextLink value to set.
+ * @return the OperationResultInner object itself.
+ */
+ public OperationResultInner withNextLink(String nextLink) {
+ this.nextLink = nextLink;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (display() != null) {
+ display().validate();
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/SecretResourceDescriptionInner.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/SecretResourceDescriptionInner.java
new file mode 100644
index 000000000000..4ae2192251d2
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/SecretResourceDescriptionInner.java
@@ -0,0 +1,75 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.SecretResourceProperties;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Map;
+
+/** This type describes a secret resource. */
+@Fluent
+public final class SecretResourceDescriptionInner extends Resource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(SecretResourceDescriptionInner.class);
+
+ /*
+ * Describes the properties of a secret resource.
+ */
+ @JsonProperty(value = "properties", required = true)
+ private SecretResourceProperties properties;
+
+ /**
+ * Get the properties property: Describes the properties of a secret resource.
+ *
+ * @return the properties value.
+ */
+ public SecretResourceProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: Describes the properties of a secret resource.
+ *
+ * @param properties the properties value to set.
+ * @return the SecretResourceDescriptionInner object itself.
+ */
+ public SecretResourceDescriptionInner withProperties(SecretResourceProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public SecretResourceDescriptionInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public SecretResourceDescriptionInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property properties in model SecretResourceDescriptionInner"));
+ } else {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/SecretValueInner.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/SecretValueInner.java
new file mode 100644
index 000000000000..321aeb884977
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/SecretValueInner.java
@@ -0,0 +1,50 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** This type represents the unencrypted value of the secret. */
+@Fluent
+public final class SecretValueInner {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(SecretValueInner.class);
+
+ /*
+ * The actual value of the secret.
+ */
+ @JsonProperty(value = "value")
+ private String value;
+
+ /**
+ * Get the value property: The actual value of the secret.
+ *
+ * @return the value value.
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value property: The actual value of the secret.
+ *
+ * @param value the value value to set.
+ * @return the SecretValueInner object itself.
+ */
+ public SecretValueInner withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/SecretValueResourceDescriptionInner.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/SecretValueResourceDescriptionInner.java
new file mode 100644
index 000000000000..ccc7ade9a695
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/SecretValueResourceDescriptionInner.java
@@ -0,0 +1,98 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.util.logging.ClientLogger;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Map;
+
+/**
+ * This type describes a value of a secret resource. The name of this resource is the version identifier corresponding
+ * to this secret value.
+ */
+@Fluent
+public final class SecretValueResourceDescriptionInner extends Resource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(SecretValueResourceDescriptionInner.class);
+
+ /*
+ * This type describes properties of a secret value resource.
+ */
+ @JsonProperty(value = "properties", required = true)
+ private SecretValueResourceProperties innerProperties = new SecretValueResourceProperties();
+
+ /**
+ * Get the innerProperties property: This type describes properties of a secret value resource.
+ *
+ * @return the innerProperties value.
+ */
+ private SecretValueResourceProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public SecretValueResourceDescriptionInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public SecretValueResourceDescriptionInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Get the value property: The actual value of the secret.
+ *
+ * @return the value value.
+ */
+ public String value() {
+ return this.innerProperties() == null ? null : this.innerProperties().value();
+ }
+
+ /**
+ * Set the value property: The actual value of the secret.
+ *
+ * @param value the value value to set.
+ * @return the SecretValueResourceDescriptionInner object itself.
+ */
+ public SecretValueResourceDescriptionInner withValue(String value) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new SecretValueResourceProperties();
+ }
+ this.innerProperties().withValue(value);
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: State of the resource.
+ *
+ * @return the provisioningState value.
+ */
+ public String provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property innerProperties in model SecretValueResourceDescriptionInner"));
+ } else {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/SecretValueResourceProperties.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/SecretValueResourceProperties.java
new file mode 100644
index 000000000000..fa2029773d2f
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/SecretValueResourceProperties.java
@@ -0,0 +1,53 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.ProvisionedResourceProperties;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** This type describes properties of a secret value resource. */
+@Fluent
+public final class SecretValueResourceProperties extends ProvisionedResourceProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(SecretValueResourceProperties.class);
+
+ /*
+ * The actual value of the secret.
+ */
+ @JsonProperty(value = "value")
+ private String value;
+
+ /**
+ * Get the value property: The actual value of the secret.
+ *
+ * @return the value value.
+ */
+ public String value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value property: The actual value of the secret.
+ *
+ * @param value the value value to set.
+ * @return the SecretValueResourceProperties object itself.
+ */
+ public SecretValueResourceProperties withValue(String value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ServiceReplicaDescriptionInner.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ServiceReplicaDescriptionInner.java
new file mode 100644
index 000000000000..543f4cfbbbbb
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ServiceReplicaDescriptionInner.java
@@ -0,0 +1,92 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.ContainerCodePackageProperties;
+import com.azure.resourcemanager.servicefabricmesh.models.DiagnosticsRef;
+import com.azure.resourcemanager.servicefabricmesh.models.NetworkRef;
+import com.azure.resourcemanager.servicefabricmesh.models.OperatingSystemType;
+import com.azure.resourcemanager.servicefabricmesh.models.ServiceReplicaProperties;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Describes a replica of a service resource. */
+@Fluent
+public final class ServiceReplicaDescriptionInner extends ServiceReplicaProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ServiceReplicaDescriptionInner.class);
+
+ /*
+ * Name of the replica.
+ */
+ @JsonProperty(value = "replicaName", required = true)
+ private String replicaName;
+
+ /**
+ * Get the replicaName property: Name of the replica.
+ *
+ * @return the replicaName value.
+ */
+ public String replicaName() {
+ return this.replicaName;
+ }
+
+ /**
+ * Set the replicaName property: Name of the replica.
+ *
+ * @param replicaName the replicaName value to set.
+ * @return the ServiceReplicaDescriptionInner object itself.
+ */
+ public ServiceReplicaDescriptionInner withReplicaName(String replicaName) {
+ this.replicaName = replicaName;
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ServiceReplicaDescriptionInner withOsType(OperatingSystemType osType) {
+ super.withOsType(osType);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ServiceReplicaDescriptionInner withCodePackages(List codePackages) {
+ super.withCodePackages(codePackages);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ServiceReplicaDescriptionInner withNetworkRefs(List networkRefs) {
+ super.withNetworkRefs(networkRefs);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ServiceReplicaDescriptionInner withDiagnostics(DiagnosticsRef diagnostics) {
+ super.withDiagnostics(diagnostics);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ if (replicaName() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property replicaName in model ServiceReplicaDescriptionInner"));
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ServiceResourceDescriptionInner.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ServiceResourceDescriptionInner.java
new file mode 100644
index 000000000000..9ff96886dcee
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ServiceResourceDescriptionInner.java
@@ -0,0 +1,276 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.AutoScalingPolicy;
+import com.azure.resourcemanager.servicefabricmesh.models.ContainerCodePackageProperties;
+import com.azure.resourcemanager.servicefabricmesh.models.DiagnosticsRef;
+import com.azure.resourcemanager.servicefabricmesh.models.HealthState;
+import com.azure.resourcemanager.servicefabricmesh.models.ManagedProxyResource;
+import com.azure.resourcemanager.servicefabricmesh.models.NetworkRef;
+import com.azure.resourcemanager.servicefabricmesh.models.OperatingSystemType;
+import com.azure.resourcemanager.servicefabricmesh.models.ResourceStatus;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** This type describes a service resource. */
+@Fluent
+public final class ServiceResourceDescriptionInner extends ManagedProxyResource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ServiceResourceDescriptionInner.class);
+
+ /*
+ * This type describes properties of a service resource.
+ */
+ @JsonProperty(value = "properties", required = true)
+ private ServiceResourceProperties innerProperties = new ServiceResourceProperties();
+
+ /**
+ * Get the innerProperties property: This type describes properties of a service resource.
+ *
+ * @return the innerProperties value.
+ */
+ private ServiceResourceProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public ServiceResourceDescriptionInner withName(String name) {
+ super.withName(name);
+ return this;
+ }
+
+ /**
+ * Get the osType property: The operation system required by the code in service.
+ *
+ * @return the osType value.
+ */
+ public OperatingSystemType osType() {
+ return this.innerProperties() == null ? null : this.innerProperties().osType();
+ }
+
+ /**
+ * Set the osType property: The operation system required by the code in service.
+ *
+ * @param osType the osType value to set.
+ * @return the ServiceResourceDescriptionInner object itself.
+ */
+ public ServiceResourceDescriptionInner withOsType(OperatingSystemType osType) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServiceResourceProperties();
+ }
+ this.innerProperties().withOsType(osType);
+ return this;
+ }
+
+ /**
+ * Get the codePackages property: Describes the set of code packages that forms the service. A code package
+ * describes the container and the properties for running it. All the code packages are started together on the same
+ * host and share the same context (network, process etc.).
+ *
+ * @return the codePackages value.
+ */
+ public List codePackages() {
+ return this.innerProperties() == null ? null : this.innerProperties().codePackages();
+ }
+
+ /**
+ * Set the codePackages property: Describes the set of code packages that forms the service. A code package
+ * describes the container and the properties for running it. All the code packages are started together on the same
+ * host and share the same context (network, process etc.).
+ *
+ * @param codePackages the codePackages value to set.
+ * @return the ServiceResourceDescriptionInner object itself.
+ */
+ public ServiceResourceDescriptionInner withCodePackages(List codePackages) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServiceResourceProperties();
+ }
+ this.innerProperties().withCodePackages(codePackages);
+ return this;
+ }
+
+ /**
+ * Get the networkRefs property: The names of the private networks that this service needs to be part of.
+ *
+ * @return the networkRefs value.
+ */
+ public List networkRefs() {
+ return this.innerProperties() == null ? null : this.innerProperties().networkRefs();
+ }
+
+ /**
+ * Set the networkRefs property: The names of the private networks that this service needs to be part of.
+ *
+ * @param networkRefs the networkRefs value to set.
+ * @return the ServiceResourceDescriptionInner object itself.
+ */
+ public ServiceResourceDescriptionInner withNetworkRefs(List networkRefs) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServiceResourceProperties();
+ }
+ this.innerProperties().withNetworkRefs(networkRefs);
+ return this;
+ }
+
+ /**
+ * Get the diagnostics property: Reference to sinks in DiagnosticsDescription.
+ *
+ * @return the diagnostics value.
+ */
+ public DiagnosticsRef diagnostics() {
+ return this.innerProperties() == null ? null : this.innerProperties().diagnostics();
+ }
+
+ /**
+ * Set the diagnostics property: Reference to sinks in DiagnosticsDescription.
+ *
+ * @param diagnostics the diagnostics value to set.
+ * @return the ServiceResourceDescriptionInner object itself.
+ */
+ public ServiceResourceDescriptionInner withDiagnostics(DiagnosticsRef diagnostics) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServiceResourceProperties();
+ }
+ this.innerProperties().withDiagnostics(diagnostics);
+ return this;
+ }
+
+ /**
+ * Get the description property: User readable description of the service.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.innerProperties() == null ? null : this.innerProperties().description();
+ }
+
+ /**
+ * Set the description property: User readable description of the service.
+ *
+ * @param description the description value to set.
+ * @return the ServiceResourceDescriptionInner object itself.
+ */
+ public ServiceResourceDescriptionInner withDescription(String description) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServiceResourceProperties();
+ }
+ this.innerProperties().withDescription(description);
+ return this;
+ }
+
+ /**
+ * Get the replicaCount property: The number of replicas of the service to create. Defaults to 1 if not specified.
+ *
+ * @return the replicaCount value.
+ */
+ public Integer replicaCount() {
+ return this.innerProperties() == null ? null : this.innerProperties().replicaCount();
+ }
+
+ /**
+ * Set the replicaCount property: The number of replicas of the service to create. Defaults to 1 if not specified.
+ *
+ * @param replicaCount the replicaCount value to set.
+ * @return the ServiceResourceDescriptionInner object itself.
+ */
+ public ServiceResourceDescriptionInner withReplicaCount(Integer replicaCount) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServiceResourceProperties();
+ }
+ this.innerProperties().withReplicaCount(replicaCount);
+ return this;
+ }
+
+ /**
+ * Get the autoScalingPolicies property: Auto scaling policies.
+ *
+ * @return the autoScalingPolicies value.
+ */
+ public List autoScalingPolicies() {
+ return this.innerProperties() == null ? null : this.innerProperties().autoScalingPolicies();
+ }
+
+ /**
+ * Set the autoScalingPolicies property: Auto scaling policies.
+ *
+ * @param autoScalingPolicies the autoScalingPolicies value to set.
+ * @return the ServiceResourceDescriptionInner object itself.
+ */
+ public ServiceResourceDescriptionInner withAutoScalingPolicies(List autoScalingPolicies) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServiceResourceProperties();
+ }
+ this.innerProperties().withAutoScalingPolicies(autoScalingPolicies);
+ return this;
+ }
+
+ /**
+ * Get the status property: Status of the service.
+ *
+ * @return the status value.
+ */
+ public ResourceStatus status() {
+ return this.innerProperties() == null ? null : this.innerProperties().status();
+ }
+
+ /**
+ * Get the statusDetails property: Gives additional information about the current status of the service.
+ *
+ * @return the statusDetails value.
+ */
+ public String statusDetails() {
+ return this.innerProperties() == null ? null : this.innerProperties().statusDetails();
+ }
+
+ /**
+ * Get the healthState property: Describes the health state of an application resource.
+ *
+ * @return the healthState value.
+ */
+ public HealthState healthState() {
+ return this.innerProperties() == null ? null : this.innerProperties().healthState();
+ }
+
+ /**
+ * Get the unhealthyEvaluation property: When the service's health state is not 'Ok', this additional details from
+ * service fabric Health Manager for the user to know why the service is marked unhealthy.
+ *
+ * @return the unhealthyEvaluation value.
+ */
+ public String unhealthyEvaluation() {
+ return this.innerProperties() == null ? null : this.innerProperties().unhealthyEvaluation();
+ }
+
+ /**
+ * Get the provisioningState property: State of the resource.
+ *
+ * @return the provisioningState value.
+ */
+ public String provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ if (innerProperties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property innerProperties in model ServiceResourceDescriptionInner"));
+ } else {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ServiceResourceProperties.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ServiceResourceProperties.java
new file mode 100644
index 000000000000..15f881edc3b3
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/ServiceResourceProperties.java
@@ -0,0 +1,311 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.AutoScalingPolicy;
+import com.azure.resourcemanager.servicefabricmesh.models.ContainerCodePackageProperties;
+import com.azure.resourcemanager.servicefabricmesh.models.DiagnosticsRef;
+import com.azure.resourcemanager.servicefabricmesh.models.HealthState;
+import com.azure.resourcemanager.servicefabricmesh.models.NetworkRef;
+import com.azure.resourcemanager.servicefabricmesh.models.OperatingSystemType;
+import com.azure.resourcemanager.servicefabricmesh.models.ProvisionedResourceProperties;
+import com.azure.resourcemanager.servicefabricmesh.models.ResourceStatus;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** This type describes properties of a service resource. */
+@Fluent
+public final class ServiceResourceProperties extends ProvisionedResourceProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ServiceResourceProperties.class);
+
+ /*
+ * The operation system required by the code in service.
+ */
+ @JsonProperty(value = "osType", required = true)
+ private OperatingSystemType osType;
+
+ /*
+ * Describes the set of code packages that forms the service. A code
+ * package describes the container and the properties for running it. All
+ * the code packages are started together on the same host and share the
+ * same context (network, process etc.).
+ */
+ @JsonProperty(value = "codePackages", required = true)
+ private List codePackages;
+
+ /*
+ * The names of the private networks that this service needs to be part of.
+ */
+ @JsonProperty(value = "networkRefs")
+ private List networkRefs;
+
+ /*
+ * Reference to sinks in DiagnosticsDescription.
+ */
+ @JsonProperty(value = "diagnostics")
+ private DiagnosticsRef diagnostics;
+
+ /*
+ * User readable description of the service.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /*
+ * The number of replicas of the service to create. Defaults to 1 if not
+ * specified.
+ */
+ @JsonProperty(value = "replicaCount")
+ private Integer replicaCount;
+
+ /*
+ * Auto scaling policies
+ */
+ @JsonProperty(value = "autoScalingPolicies")
+ private List autoScalingPolicies;
+
+ /*
+ * Status of the service.
+ */
+ @JsonProperty(value = "status", access = JsonProperty.Access.WRITE_ONLY)
+ private ResourceStatus status;
+
+ /*
+ * Gives additional information about the current status of the service.
+ */
+ @JsonProperty(value = "statusDetails", access = JsonProperty.Access.WRITE_ONLY)
+ private String statusDetails;
+
+ /*
+ * Describes the health state of an application resource.
+ */
+ @JsonProperty(value = "healthState", access = JsonProperty.Access.WRITE_ONLY)
+ private HealthState healthState;
+
+ /*
+ * When the service's health state is not 'Ok', this additional details
+ * from service fabric Health Manager for the user to know why the service
+ * is marked unhealthy.
+ */
+ @JsonProperty(value = "unhealthyEvaluation", access = JsonProperty.Access.WRITE_ONLY)
+ private String unhealthyEvaluation;
+
+ /**
+ * Get the osType property: The operation system required by the code in service.
+ *
+ * @return the osType value.
+ */
+ public OperatingSystemType osType() {
+ return this.osType;
+ }
+
+ /**
+ * Set the osType property: The operation system required by the code in service.
+ *
+ * @param osType the osType value to set.
+ * @return the ServiceResourceProperties object itself.
+ */
+ public ServiceResourceProperties withOsType(OperatingSystemType osType) {
+ this.osType = osType;
+ return this;
+ }
+
+ /**
+ * Get the codePackages property: Describes the set of code packages that forms the service. A code package
+ * describes the container and the properties for running it. All the code packages are started together on the same
+ * host and share the same context (network, process etc.).
+ *
+ * @return the codePackages value.
+ */
+ public List codePackages() {
+ return this.codePackages;
+ }
+
+ /**
+ * Set the codePackages property: Describes the set of code packages that forms the service. A code package
+ * describes the container and the properties for running it. All the code packages are started together on the same
+ * host and share the same context (network, process etc.).
+ *
+ * @param codePackages the codePackages value to set.
+ * @return the ServiceResourceProperties object itself.
+ */
+ public ServiceResourceProperties withCodePackages(List codePackages) {
+ this.codePackages = codePackages;
+ return this;
+ }
+
+ /**
+ * Get the networkRefs property: The names of the private networks that this service needs to be part of.
+ *
+ * @return the networkRefs value.
+ */
+ public List networkRefs() {
+ return this.networkRefs;
+ }
+
+ /**
+ * Set the networkRefs property: The names of the private networks that this service needs to be part of.
+ *
+ * @param networkRefs the networkRefs value to set.
+ * @return the ServiceResourceProperties object itself.
+ */
+ public ServiceResourceProperties withNetworkRefs(List networkRefs) {
+ this.networkRefs = networkRefs;
+ return this;
+ }
+
+ /**
+ * Get the diagnostics property: Reference to sinks in DiagnosticsDescription.
+ *
+ * @return the diagnostics value.
+ */
+ public DiagnosticsRef diagnostics() {
+ return this.diagnostics;
+ }
+
+ /**
+ * Set the diagnostics property: Reference to sinks in DiagnosticsDescription.
+ *
+ * @param diagnostics the diagnostics value to set.
+ * @return the ServiceResourceProperties object itself.
+ */
+ public ServiceResourceProperties withDiagnostics(DiagnosticsRef diagnostics) {
+ this.diagnostics = diagnostics;
+ return this;
+ }
+
+ /**
+ * Get the description property: User readable description of the service.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description property: User readable description of the service.
+ *
+ * @param description the description value to set.
+ * @return the ServiceResourceProperties object itself.
+ */
+ public ServiceResourceProperties withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get the replicaCount property: The number of replicas of the service to create. Defaults to 1 if not specified.
+ *
+ * @return the replicaCount value.
+ */
+ public Integer replicaCount() {
+ return this.replicaCount;
+ }
+
+ /**
+ * Set the replicaCount property: The number of replicas of the service to create. Defaults to 1 if not specified.
+ *
+ * @param replicaCount the replicaCount value to set.
+ * @return the ServiceResourceProperties object itself.
+ */
+ public ServiceResourceProperties withReplicaCount(Integer replicaCount) {
+ this.replicaCount = replicaCount;
+ return this;
+ }
+
+ /**
+ * Get the autoScalingPolicies property: Auto scaling policies.
+ *
+ * @return the autoScalingPolicies value.
+ */
+ public List autoScalingPolicies() {
+ return this.autoScalingPolicies;
+ }
+
+ /**
+ * Set the autoScalingPolicies property: Auto scaling policies.
+ *
+ * @param autoScalingPolicies the autoScalingPolicies value to set.
+ * @return the ServiceResourceProperties object itself.
+ */
+ public ServiceResourceProperties withAutoScalingPolicies(List autoScalingPolicies) {
+ this.autoScalingPolicies = autoScalingPolicies;
+ return this;
+ }
+
+ /**
+ * Get the status property: Status of the service.
+ *
+ * @return the status value.
+ */
+ public ResourceStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Get the statusDetails property: Gives additional information about the current status of the service.
+ *
+ * @return the statusDetails value.
+ */
+ public String statusDetails() {
+ return this.statusDetails;
+ }
+
+ /**
+ * Get the healthState property: Describes the health state of an application resource.
+ *
+ * @return the healthState value.
+ */
+ public HealthState healthState() {
+ return this.healthState;
+ }
+
+ /**
+ * Get the unhealthyEvaluation property: When the service's health state is not 'Ok', this additional details from
+ * service fabric Health Manager for the user to know why the service is marked unhealthy.
+ *
+ * @return the unhealthyEvaluation value.
+ */
+ public String unhealthyEvaluation() {
+ return this.unhealthyEvaluation;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ if (osType() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property osType in model ServiceResourceProperties"));
+ }
+ if (codePackages() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property codePackages in model ServiceResourceProperties"));
+ } else {
+ codePackages().forEach(e -> e.validate());
+ }
+ if (networkRefs() != null) {
+ networkRefs().forEach(e -> e.validate());
+ }
+ if (diagnostics() != null) {
+ diagnostics().validate();
+ }
+ if (autoScalingPolicies() != null) {
+ autoScalingPolicies().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/VolumeResourceDescriptionInner.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/VolumeResourceDescriptionInner.java
new file mode 100644
index 000000000000..99cc1f33bf2e
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/VolumeResourceDescriptionInner.java
@@ -0,0 +1,163 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.ResourceStatus;
+import com.azure.resourcemanager.servicefabricmesh.models.VolumeProvider;
+import com.azure.resourcemanager.servicefabricmesh.models.VolumeProviderParametersAzureFile;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Map;
+
+/** This type describes a volume resource. */
+@Fluent
+public final class VolumeResourceDescriptionInner extends Resource {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(VolumeResourceDescriptionInner.class);
+
+ /*
+ * This type describes properties of a volume resource.
+ */
+ @JsonProperty(value = "properties", required = true)
+ private VolumeResourceProperties innerProperties = new VolumeResourceProperties();
+
+ /**
+ * Get the innerProperties property: This type describes properties of a volume resource.
+ *
+ * @return the innerProperties value.
+ */
+ private VolumeResourceProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public VolumeResourceDescriptionInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /** {@inheritDoc} */
+ @Override
+ public VolumeResourceDescriptionInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * Get the description property: User readable description of the volume.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.innerProperties() == null ? null : this.innerProperties().description();
+ }
+
+ /**
+ * Set the description property: User readable description of the volume.
+ *
+ * @param description the description value to set.
+ * @return the VolumeResourceDescriptionInner object itself.
+ */
+ public VolumeResourceDescriptionInner withDescription(String description) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new VolumeResourceProperties();
+ }
+ this.innerProperties().withDescription(description);
+ return this;
+ }
+
+ /**
+ * Get the status property: Status of the volume.
+ *
+ * @return the status value.
+ */
+ public ResourceStatus status() {
+ return this.innerProperties() == null ? null : this.innerProperties().status();
+ }
+
+ /**
+ * Get the statusDetails property: Gives additional information about the current status of the volume.
+ *
+ * @return the statusDetails value.
+ */
+ public String statusDetails() {
+ return this.innerProperties() == null ? null : this.innerProperties().statusDetails();
+ }
+
+ /**
+ * Get the provider property: Provider of the volume.
+ *
+ * @return the provider value.
+ */
+ public VolumeProvider provider() {
+ return this.innerProperties() == null ? null : this.innerProperties().provider();
+ }
+
+ /**
+ * Set the provider property: Provider of the volume.
+ *
+ * @param provider the provider value to set.
+ * @return the VolumeResourceDescriptionInner object itself.
+ */
+ public VolumeResourceDescriptionInner withProvider(VolumeProvider provider) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new VolumeResourceProperties();
+ }
+ this.innerProperties().withProvider(provider);
+ return this;
+ }
+
+ /**
+ * Get the azureFileParameters property: This type describes a volume provided by an Azure Files file share.
+ *
+ * @return the azureFileParameters value.
+ */
+ public VolumeProviderParametersAzureFile azureFileParameters() {
+ return this.innerProperties() == null ? null : this.innerProperties().azureFileParameters();
+ }
+
+ /**
+ * Set the azureFileParameters property: This type describes a volume provided by an Azure Files file share.
+ *
+ * @param azureFileParameters the azureFileParameters value to set.
+ * @return the VolumeResourceDescriptionInner object itself.
+ */
+ public VolumeResourceDescriptionInner withAzureFileParameters(
+ VolumeProviderParametersAzureFile azureFileParameters) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new VolumeResourceProperties();
+ }
+ this.innerProperties().withAzureFileParameters(azureFileParameters);
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: State of the resource.
+ *
+ * @return the provisioningState value.
+ */
+ public String provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property innerProperties in model VolumeResourceDescriptionInner"));
+ } else {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/VolumeResourceProperties.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/VolumeResourceProperties.java
new file mode 100644
index 000000000000..774e4102058a
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/VolumeResourceProperties.java
@@ -0,0 +1,147 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.models.ProvisionedResourceProperties;
+import com.azure.resourcemanager.servicefabricmesh.models.ResourceStatus;
+import com.azure.resourcemanager.servicefabricmesh.models.VolumeProvider;
+import com.azure.resourcemanager.servicefabricmesh.models.VolumeProviderParametersAzureFile;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** This type describes properties of a volume resource. */
+@Fluent
+public final class VolumeResourceProperties extends ProvisionedResourceProperties {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(VolumeResourceProperties.class);
+
+ /*
+ * User readable description of the volume.
+ */
+ @JsonProperty(value = "description")
+ private String description;
+
+ /*
+ * Status of the volume.
+ */
+ @JsonProperty(value = "status", access = JsonProperty.Access.WRITE_ONLY)
+ private ResourceStatus status;
+
+ /*
+ * Gives additional information about the current status of the volume.
+ */
+ @JsonProperty(value = "statusDetails", access = JsonProperty.Access.WRITE_ONLY)
+ private String statusDetails;
+
+ /*
+ * Provider of the volume.
+ */
+ @JsonProperty(value = "provider", required = true)
+ private VolumeProvider provider;
+
+ /*
+ * This type describes a volume provided by an Azure Files file share.
+ */
+ @JsonProperty(value = "azureFileParameters")
+ private VolumeProviderParametersAzureFile azureFileParameters;
+
+ /**
+ * Get the description property: User readable description of the volume.
+ *
+ * @return the description value.
+ */
+ public String description() {
+ return this.description;
+ }
+
+ /**
+ * Set the description property: User readable description of the volume.
+ *
+ * @param description the description value to set.
+ * @return the VolumeResourceProperties object itself.
+ */
+ public VolumeResourceProperties withDescription(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Get the status property: Status of the volume.
+ *
+ * @return the status value.
+ */
+ public ResourceStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Get the statusDetails property: Gives additional information about the current status of the volume.
+ *
+ * @return the statusDetails value.
+ */
+ public String statusDetails() {
+ return this.statusDetails;
+ }
+
+ /**
+ * Get the provider property: Provider of the volume.
+ *
+ * @return the provider value.
+ */
+ public VolumeProvider provider() {
+ return this.provider;
+ }
+
+ /**
+ * Set the provider property: Provider of the volume.
+ *
+ * @param provider the provider value to set.
+ * @return the VolumeResourceProperties object itself.
+ */
+ public VolumeResourceProperties withProvider(VolumeProvider provider) {
+ this.provider = provider;
+ return this;
+ }
+
+ /**
+ * Get the azureFileParameters property: This type describes a volume provided by an Azure Files file share.
+ *
+ * @return the azureFileParameters value.
+ */
+ public VolumeProviderParametersAzureFile azureFileParameters() {
+ return this.azureFileParameters;
+ }
+
+ /**
+ * Set the azureFileParameters property: This type describes a volume provided by an Azure Files file share.
+ *
+ * @param azureFileParameters the azureFileParameters value to set.
+ * @return the VolumeResourceProperties object itself.
+ */
+ public VolumeResourceProperties withAzureFileParameters(VolumeProviderParametersAzureFile azureFileParameters) {
+ this.azureFileParameters = azureFileParameters;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ if (provider() == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property provider in model VolumeResourceProperties"));
+ }
+ if (azureFileParameters() != null) {
+ azureFileParameters().validate();
+ }
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/package-info.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/package-info.java
new file mode 100644
index 000000000000..0e3fae3b20cf
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/models/package-info.java
@@ -0,0 +1,9 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+/**
+ * Package containing the inner data models for ServiceFabricMeshManagementClient. Service Fabric Mesh Management
+ * Client.
+ */
+package com.azure.resourcemanager.servicefabricmesh.fluent.models;
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/package-info.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/package-info.java
new file mode 100644
index 000000000000..dc6379016561
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/fluent/package-info.java
@@ -0,0 +1,8 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+/**
+ * Package containing the service clients for ServiceFabricMeshManagementClient. Service Fabric Mesh Management Client.
+ */
+package com.azure.resourcemanager.servicefabricmesh.fluent;
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/ApplicationResourceDescriptionImpl.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/ApplicationResourceDescriptionImpl.java
new file mode 100644
index 000000000000..f85912cf9b5a
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/ApplicationResourceDescriptionImpl.java
@@ -0,0 +1,220 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.implementation;
+
+import com.azure.core.management.Region;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.ApplicationResourceDescriptionInner;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.ServiceResourceDescriptionInner;
+import com.azure.resourcemanager.servicefabricmesh.models.ApplicationResourceDescription;
+import com.azure.resourcemanager.servicefabricmesh.models.DiagnosticsDescription;
+import com.azure.resourcemanager.servicefabricmesh.models.HealthState;
+import com.azure.resourcemanager.servicefabricmesh.models.ResourceStatus;
+import com.azure.resourcemanager.servicefabricmesh.models.ServiceResourceDescription;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+public final class ApplicationResourceDescriptionImpl
+ implements ApplicationResourceDescription, ApplicationResourceDescription.Definition {
+ private ApplicationResourceDescriptionInner innerObject;
+
+ private final com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager;
+
+ ApplicationResourceDescriptionImpl(
+ ApplicationResourceDescriptionInner innerObject,
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String id() {
+ return this.innerModel().id();
+ }
+
+ public String name() {
+ return this.innerModel().name();
+ }
+
+ public String type() {
+ return this.innerModel().type();
+ }
+
+ public String location() {
+ return this.innerModel().location();
+ }
+
+ public Map tags() {
+ Map inner = this.innerModel().tags();
+ if (inner != null) {
+ return Collections.unmodifiableMap(inner);
+ } else {
+ return Collections.emptyMap();
+ }
+ }
+
+ public String description() {
+ return this.innerModel().description();
+ }
+
+ public List services() {
+ List inner = this.innerModel().services();
+ if (inner != null) {
+ return Collections
+ .unmodifiableList(
+ inner
+ .stream()
+ .map(inner1 -> new ServiceResourceDescriptionImpl(inner1, this.manager()))
+ .collect(Collectors.toList()));
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public DiagnosticsDescription diagnostics() {
+ return this.innerModel().diagnostics();
+ }
+
+ public String debugParams() {
+ return this.innerModel().debugParams();
+ }
+
+ public List serviceNames() {
+ List inner = this.innerModel().serviceNames();
+ if (inner != null) {
+ return Collections.unmodifiableList(inner);
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public ResourceStatus status() {
+ return this.innerModel().status();
+ }
+
+ public String statusDetails() {
+ return this.innerModel().statusDetails();
+ }
+
+ public HealthState healthState() {
+ return this.innerModel().healthState();
+ }
+
+ public String unhealthyEvaluation() {
+ return this.innerModel().unhealthyEvaluation();
+ }
+
+ public String provisioningState() {
+ return this.innerModel().provisioningState();
+ }
+
+ public Region region() {
+ return Region.fromName(this.regionName());
+ }
+
+ public String regionName() {
+ return this.location();
+ }
+
+ public ApplicationResourceDescriptionInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager() {
+ return this.serviceManager;
+ }
+
+ private String resourceGroupName;
+
+ private String applicationResourceName;
+
+ public ApplicationResourceDescriptionImpl withExistingResourceGroup(String resourceGroupName) {
+ this.resourceGroupName = resourceGroupName;
+ return this;
+ }
+
+ public ApplicationResourceDescription create() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getApplications()
+ .createWithResponse(resourceGroupName, applicationResourceName, this.innerModel(), Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public ApplicationResourceDescription create(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getApplications()
+ .createWithResponse(resourceGroupName, applicationResourceName, this.innerModel(), context)
+ .getValue();
+ return this;
+ }
+
+ ApplicationResourceDescriptionImpl(
+ String name, com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager) {
+ this.innerObject = new ApplicationResourceDescriptionInner();
+ this.serviceManager = serviceManager;
+ this.applicationResourceName = name;
+ }
+
+ public ApplicationResourceDescription refresh() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getApplications()
+ .getByResourceGroupWithResponse(resourceGroupName, applicationResourceName, Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public ApplicationResourceDescription refresh(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getApplications()
+ .getByResourceGroupWithResponse(resourceGroupName, applicationResourceName, context)
+ .getValue();
+ return this;
+ }
+
+ public ApplicationResourceDescriptionImpl withRegion(Region location) {
+ this.innerModel().withLocation(location.toString());
+ return this;
+ }
+
+ public ApplicationResourceDescriptionImpl withRegion(String location) {
+ this.innerModel().withLocation(location);
+ return this;
+ }
+
+ public ApplicationResourceDescriptionImpl withTags(Map tags) {
+ this.innerModel().withTags(tags);
+ return this;
+ }
+
+ public ApplicationResourceDescriptionImpl withDescription(String description) {
+ this.innerModel().withDescription(description);
+ return this;
+ }
+
+ public ApplicationResourceDescriptionImpl withServices(List services) {
+ this.innerModel().withServices(services);
+ return this;
+ }
+
+ public ApplicationResourceDescriptionImpl withDiagnostics(DiagnosticsDescription diagnostics) {
+ this.innerModel().withDiagnostics(diagnostics);
+ return this;
+ }
+
+ public ApplicationResourceDescriptionImpl withDebugParams(String debugParams) {
+ this.innerModel().withDebugParams(debugParams);
+ return this;
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/ApplicationsClientImpl.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/ApplicationsClientImpl.java
new file mode 100644
index 000000000000..61da6bf5b260
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/ApplicationsClientImpl.java
@@ -0,0 +1,1124 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.fluent.ApplicationsClient;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.ApplicationResourceDescriptionInner;
+import com.azure.resourcemanager.servicefabricmesh.models.ApplicationResourceDescriptionList;
+import com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in ApplicationsClient. */
+public final class ApplicationsClientImpl implements ApplicationsClient {
+ private final ClientLogger logger = new ClientLogger(ApplicationsClientImpl.class);
+
+ /** The proxy service used to perform REST calls. */
+ private final ApplicationsService service;
+
+ /** The service client containing this operation class. */
+ private final ServiceFabricMeshManagementClientImpl client;
+
+ /**
+ * Initializes an instance of ApplicationsClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ ApplicationsClientImpl(ServiceFabricMeshManagementClientImpl client) {
+ this.service =
+ RestProxy.create(ApplicationsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ServiceFabricMeshManagementClientApplications to be used by the proxy
+ * service to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "ServiceFabricMeshMan")
+ private interface ApplicationsService {
+ @Headers({"Content-Type: application/json"})
+ @Put(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/applications/{applicationResourceName}")
+ @ExpectedResponses({200, 201, 202})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> create(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam(value = "applicationResourceName", encoded = true) String applicationResourceName,
+ @BodyParam("application/json") ApplicationResourceDescriptionInner applicationResourceDescription,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/applications/{applicationResourceName}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> getByResourceGroup(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam(value = "applicationResourceName", encoded = true) String applicationResourceName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Delete(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/applications/{applicationResourceName}")
+ @ExpectedResponses({200, 202, 204})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> delete(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam(value = "applicationResourceName", encoded = true) String applicationResourceName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/applications")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> listByResourceGroup(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabricMesh/applications")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> list(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> listByResourceGroupNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> listBySubscriptionNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Creates an application resource with the specified name, description and properties. If an application resource
+ * with the same name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param applicationResourceDescription Description for creating a Application resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes an application resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> createWithResponseAsync(
+ String resourceGroupName,
+ String applicationResourceName,
+ ApplicationResourceDescriptionInner applicationResourceDescription) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (applicationResourceName == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException("Parameter applicationResourceName is required and cannot be null."));
+ }
+ if (applicationResourceDescription == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter applicationResourceDescription is required and cannot be null."));
+ } else {
+ applicationResourceDescription.validate();
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .create(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ applicationResourceName,
+ applicationResourceDescription,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Creates an application resource with the specified name, description and properties. If an application resource
+ * with the same name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param applicationResourceDescription Description for creating a Application resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes an application resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> createWithResponseAsync(
+ String resourceGroupName,
+ String applicationResourceName,
+ ApplicationResourceDescriptionInner applicationResourceDescription,
+ Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (applicationResourceName == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException("Parameter applicationResourceName is required and cannot be null."));
+ }
+ if (applicationResourceDescription == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter applicationResourceDescription is required and cannot be null."));
+ } else {
+ applicationResourceDescription.validate();
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .create(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ applicationResourceName,
+ applicationResourceDescription,
+ accept,
+ context);
+ }
+
+ /**
+ * Creates an application resource with the specified name, description and properties. If an application resource
+ * with the same name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param applicationResourceDescription Description for creating a Application resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes an application resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createAsync(
+ String resourceGroupName,
+ String applicationResourceName,
+ ApplicationResourceDescriptionInner applicationResourceDescription) {
+ return createWithResponseAsync(resourceGroupName, applicationResourceName, applicationResourceDescription)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Creates an application resource with the specified name, description and properties. If an application resource
+ * with the same name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param applicationResourceDescription Description for creating a Application resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes an application resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ApplicationResourceDescriptionInner create(
+ String resourceGroupName,
+ String applicationResourceName,
+ ApplicationResourceDescriptionInner applicationResourceDescription) {
+ return createAsync(resourceGroupName, applicationResourceName, applicationResourceDescription).block();
+ }
+
+ /**
+ * Creates an application resource with the specified name, description and properties. If an application resource
+ * with the same name exists, then it is updated with the specified description and properties.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param applicationResourceDescription Description for creating a Application resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes an application resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response createWithResponse(
+ String resourceGroupName,
+ String applicationResourceName,
+ ApplicationResourceDescriptionInner applicationResourceDescription,
+ Context context) {
+ return createWithResponseAsync(
+ resourceGroupName, applicationResourceName, applicationResourceDescription, context)
+ .block();
+ }
+
+ /**
+ * Gets the information about the application resource with the given name. The information include the description
+ * and other properties of the application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the application resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getByResourceGroupWithResponseAsync(
+ String resourceGroupName, String applicationResourceName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (applicationResourceName == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException("Parameter applicationResourceName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .getByResourceGroup(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ applicationResourceName,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the information about the application resource with the given name. The information include the description
+ * and other properties of the application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the application resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getByResourceGroupWithResponseAsync(
+ String resourceGroupName, String applicationResourceName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (applicationResourceName == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException("Parameter applicationResourceName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .getByResourceGroup(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ applicationResourceName,
+ accept,
+ context);
+ }
+
+ /**
+ * Gets the information about the application resource with the given name. The information include the description
+ * and other properties of the application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the application resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getByResourceGroupAsync(
+ String resourceGroupName, String applicationResourceName) {
+ return getByResourceGroupWithResponseAsync(resourceGroupName, applicationResourceName)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Gets the information about the application resource with the given name. The information include the description
+ * and other properties of the application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the application resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ApplicationResourceDescriptionInner getByResourceGroup(
+ String resourceGroupName, String applicationResourceName) {
+ return getByResourceGroupAsync(resourceGroupName, applicationResourceName).block();
+ }
+
+ /**
+ * Gets the information about the application resource with the given name. The information include the description
+ * and other properties of the application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the application resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getByResourceGroupWithResponse(
+ String resourceGroupName, String applicationResourceName, Context context) {
+ return getByResourceGroupWithResponseAsync(resourceGroupName, applicationResourceName, context).block();
+ }
+
+ /**
+ * Deletes the application resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> deleteWithResponseAsync(String resourceGroupName, String applicationResourceName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (applicationResourceName == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException("Parameter applicationResourceName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .delete(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ applicationResourceName,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Deletes the application resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> deleteWithResponseAsync(
+ String resourceGroupName, String applicationResourceName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (applicationResourceName == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException("Parameter applicationResourceName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .delete(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ applicationResourceName,
+ accept,
+ context);
+ }
+
+ /**
+ * Deletes the application resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono deleteAsync(String resourceGroupName, String applicationResourceName) {
+ return deleteWithResponseAsync(resourceGroupName, applicationResourceName)
+ .flatMap((Response res) -> Mono.empty());
+ }
+
+ /**
+ * Deletes the application resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void delete(String resourceGroupName, String applicationResourceName) {
+ deleteAsync(resourceGroupName, applicationResourceName).block();
+ }
+
+ /**
+ * Deletes the application resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response deleteWithResponse(
+ String resourceGroupName, String applicationResourceName, Context context) {
+ return deleteWithResponseAsync(resourceGroupName, applicationResourceName, context).block();
+ }
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the Application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByResourceGroupSinglePageAsync(
+ String resourceGroupName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .listByResourceGroup(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ accept,
+ context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the Application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByResourceGroupSinglePageAsync(
+ String resourceGroupName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listByResourceGroup(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ accept,
+ context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the Application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listByResourceGroupAsync(String resourceGroupName) {
+ return new PagedFlux<>(
+ () -> listByResourceGroupSinglePageAsync(resourceGroupName),
+ nextLink -> listByResourceGroupNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the Application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listByResourceGroupAsync(
+ String resourceGroupName, Context context) {
+ return new PagedFlux<>(
+ () -> listByResourceGroupSinglePageAsync(resourceGroupName, context),
+ nextLink -> listByResourceGroupNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the Application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable listByResourceGroup(String resourceGroupName) {
+ return new PagedIterable<>(listByResourceGroupAsync(resourceGroupName));
+ }
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the Application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable listByResourceGroup(
+ String resourceGroupName, Context context) {
+ return new PagedIterable<>(listByResourceGroupAsync(resourceGroupName, context));
+ }
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the application.
+ *
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync() {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .list(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ accept,
+ context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the application.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync(Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .list(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ accept,
+ context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the application.
+ *
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync() {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(), nextLink -> listBySubscriptionNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the application.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(Context context) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(context), nextLink -> listBySubscriptionNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the application.
+ *
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list() {
+ return new PagedIterable<>(listAsync());
+ }
+
+ /**
+ * Gets the information about all application resources in a given resource group. The information include the
+ * description and other properties of the application.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all application resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(Context context) {
+ return new PagedIterable<>(listAsync(context));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a pageable list of application resources.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByResourceGroupNextSinglePageAsync(
+ String nextLink) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context -> service.listByResourceGroupNext(nextLink, this.client.getEndpoint(), accept, context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a pageable list of application resources.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByResourceGroupNextSinglePageAsync(
+ String nextLink, Context context) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listByResourceGroupNext(nextLink, this.client.getEndpoint(), accept, context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a pageable list of application resources.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listBySubscriptionNextSinglePageAsync(
+ String nextLink) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context -> service.listBySubscriptionNext(nextLink, this.client.getEndpoint(), accept, context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a pageable list of application resources.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listBySubscriptionNextSinglePageAsync(
+ String nextLink, Context context) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listBySubscriptionNext(nextLink, this.client.getEndpoint(), accept, context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/ApplicationsImpl.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/ApplicationsImpl.java
new file mode 100644
index 000000000000..8e11d2690968
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/ApplicationsImpl.java
@@ -0,0 +1,176 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.implementation;
+
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.SimpleResponse;
+import com.azure.core.util.Context;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.fluent.ApplicationsClient;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.ApplicationResourceDescriptionInner;
+import com.azure.resourcemanager.servicefabricmesh.models.ApplicationResourceDescription;
+import com.azure.resourcemanager.servicefabricmesh.models.Applications;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+
+public final class ApplicationsImpl implements Applications {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(ApplicationsImpl.class);
+
+ private final ApplicationsClient innerClient;
+
+ private final com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager;
+
+ public ApplicationsImpl(
+ ApplicationsClient innerClient,
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public ApplicationResourceDescription getByResourceGroup(String resourceGroupName, String applicationResourceName) {
+ ApplicationResourceDescriptionInner inner =
+ this.serviceClient().getByResourceGroup(resourceGroupName, applicationResourceName);
+ if (inner != null) {
+ return new ApplicationResourceDescriptionImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response getByResourceGroupWithResponse(
+ String resourceGroupName, String applicationResourceName, Context context) {
+ Response inner =
+ this.serviceClient().getByResourceGroupWithResponse(resourceGroupName, applicationResourceName, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new ApplicationResourceDescriptionImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public void deleteByResourceGroup(String resourceGroupName, String applicationResourceName) {
+ this.serviceClient().delete(resourceGroupName, applicationResourceName);
+ }
+
+ public Response deleteWithResponse(
+ String resourceGroupName, String applicationResourceName, Context context) {
+ return this.serviceClient().deleteWithResponse(resourceGroupName, applicationResourceName, context);
+ }
+
+ public PagedIterable listByResourceGroup(String resourceGroupName) {
+ PagedIterable inner =
+ this.serviceClient().listByResourceGroup(resourceGroupName);
+ return Utils.mapPage(inner, inner1 -> new ApplicationResourceDescriptionImpl(inner1, this.manager()));
+ }
+
+ public PagedIterable listByResourceGroup(
+ String resourceGroupName, Context context) {
+ PagedIterable inner =
+ this.serviceClient().listByResourceGroup(resourceGroupName, context);
+ return Utils.mapPage(inner, inner1 -> new ApplicationResourceDescriptionImpl(inner1, this.manager()));
+ }
+
+ public PagedIterable list() {
+ PagedIterable inner = this.serviceClient().list();
+ return Utils.mapPage(inner, inner1 -> new ApplicationResourceDescriptionImpl(inner1, this.manager()));
+ }
+
+ public PagedIterable list(Context context) {
+ PagedIterable inner = this.serviceClient().list(context);
+ return Utils.mapPage(inner, inner1 -> new ApplicationResourceDescriptionImpl(inner1, this.manager()));
+ }
+
+ public ApplicationResourceDescription getById(String id) {
+ String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+ if (resourceGroupName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+ }
+ String applicationResourceName = Utils.getValueFromIdByName(id, "applications");
+ if (applicationResourceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'applications'.", id)));
+ }
+ return this.getByResourceGroupWithResponse(resourceGroupName, applicationResourceName, Context.NONE).getValue();
+ }
+
+ public Response getByIdWithResponse(String id, Context context) {
+ String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+ if (resourceGroupName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+ }
+ String applicationResourceName = Utils.getValueFromIdByName(id, "applications");
+ if (applicationResourceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'applications'.", id)));
+ }
+ return this.getByResourceGroupWithResponse(resourceGroupName, applicationResourceName, context);
+ }
+
+ public void deleteById(String id) {
+ String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+ if (resourceGroupName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+ }
+ String applicationResourceName = Utils.getValueFromIdByName(id, "applications");
+ if (applicationResourceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'applications'.", id)));
+ }
+ this.deleteWithResponse(resourceGroupName, applicationResourceName, Context.NONE);
+ }
+
+ public Response deleteByIdWithResponse(String id, Context context) {
+ String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+ if (resourceGroupName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+ }
+ String applicationResourceName = Utils.getValueFromIdByName(id, "applications");
+ if (applicationResourceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'applications'.", id)));
+ }
+ return this.deleteWithResponse(resourceGroupName, applicationResourceName, context);
+ }
+
+ private ApplicationsClient serviceClient() {
+ return this.innerClient;
+ }
+
+ private com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager() {
+ return this.serviceManager;
+ }
+
+ public ApplicationResourceDescriptionImpl define(String name) {
+ return new ApplicationResourceDescriptionImpl(name, this.manager());
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/CodePackagesClientImpl.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/CodePackagesClientImpl.java
new file mode 100644
index 000000000000..f77680845bd8
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/CodePackagesClientImpl.java
@@ -0,0 +1,352 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.implementation;
+
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.fluent.CodePackagesClient;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.ContainerLogsInner;
+import com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in CodePackagesClient. */
+public final class CodePackagesClientImpl implements CodePackagesClient {
+ private final ClientLogger logger = new ClientLogger(CodePackagesClientImpl.class);
+
+ /** The proxy service used to perform REST calls. */
+ private final CodePackagesService service;
+
+ /** The service client containing this operation class. */
+ private final ServiceFabricMeshManagementClientImpl client;
+
+ /**
+ * Initializes an instance of CodePackagesClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ CodePackagesClientImpl(ServiceFabricMeshManagementClientImpl client) {
+ this.service =
+ RestProxy.create(CodePackagesService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ServiceFabricMeshManagementClientCodePackages to be used by the proxy
+ * service to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "ServiceFabricMeshMan")
+ private interface CodePackagesService {
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/applications/{applicationResourceName}/services/{serviceResourceName}/replicas/{replicaName}"
+ + "/codePackages/{codePackageName}/logs")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> getContainerLogs(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam(value = "applicationResourceName", encoded = true) String applicationResourceName,
+ @PathParam(value = "serviceResourceName", encoded = true) String serviceResourceName,
+ @PathParam(value = "replicaName", encoded = true) String replicaName,
+ @PathParam("codePackageName") String codePackageName,
+ @QueryParam("tail") Integer tail,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Gets the logs for the container of the specified code package of the service replica.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @param replicaName Service Fabric replica name.
+ * @param codePackageName The name of code package of the service.
+ * @param tail Number of lines to show from the end of the logs. Default is 100.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the logs for the container of the specified code package of the service replica.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getContainerLogsWithResponseAsync(
+ String resourceGroupName,
+ String applicationResourceName,
+ String serviceResourceName,
+ String replicaName,
+ String codePackageName,
+ Integer tail) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (applicationResourceName == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException("Parameter applicationResourceName is required and cannot be null."));
+ }
+ if (serviceResourceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter serviceResourceName is required and cannot be null."));
+ }
+ if (replicaName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter replicaName is required and cannot be null."));
+ }
+ if (codePackageName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter codePackageName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .getContainerLogs(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ this.client.getApiVersion(),
+ applicationResourceName,
+ serviceResourceName,
+ replicaName,
+ codePackageName,
+ tail,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the logs for the container of the specified code package of the service replica.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @param replicaName Service Fabric replica name.
+ * @param codePackageName The name of code package of the service.
+ * @param tail Number of lines to show from the end of the logs. Default is 100.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the logs for the container of the specified code package of the service replica.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getContainerLogsWithResponseAsync(
+ String resourceGroupName,
+ String applicationResourceName,
+ String serviceResourceName,
+ String replicaName,
+ String codePackageName,
+ Integer tail,
+ Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (applicationResourceName == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException("Parameter applicationResourceName is required and cannot be null."));
+ }
+ if (serviceResourceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter serviceResourceName is required and cannot be null."));
+ }
+ if (replicaName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter replicaName is required and cannot be null."));
+ }
+ if (codePackageName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter codePackageName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .getContainerLogs(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ this.client.getApiVersion(),
+ applicationResourceName,
+ serviceResourceName,
+ replicaName,
+ codePackageName,
+ tail,
+ accept,
+ context);
+ }
+
+ /**
+ * Gets the logs for the container of the specified code package of the service replica.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @param replicaName Service Fabric replica name.
+ * @param codePackageName The name of code package of the service.
+ * @param tail Number of lines to show from the end of the logs. Default is 100.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the logs for the container of the specified code package of the service replica.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getContainerLogsAsync(
+ String resourceGroupName,
+ String applicationResourceName,
+ String serviceResourceName,
+ String replicaName,
+ String codePackageName,
+ Integer tail) {
+ return getContainerLogsWithResponseAsync(
+ resourceGroupName, applicationResourceName, serviceResourceName, replicaName, codePackageName, tail)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Gets the logs for the container of the specified code package of the service replica.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @param replicaName Service Fabric replica name.
+ * @param codePackageName The name of code package of the service.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the logs for the container of the specified code package of the service replica.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getContainerLogsAsync(
+ String resourceGroupName,
+ String applicationResourceName,
+ String serviceResourceName,
+ String replicaName,
+ String codePackageName) {
+ final Integer tail = null;
+ return getContainerLogsWithResponseAsync(
+ resourceGroupName, applicationResourceName, serviceResourceName, replicaName, codePackageName, tail)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Gets the logs for the container of the specified code package of the service replica.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @param replicaName Service Fabric replica name.
+ * @param codePackageName The name of code package of the service.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the logs for the container of the specified code package of the service replica.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ContainerLogsInner getContainerLogs(
+ String resourceGroupName,
+ String applicationResourceName,
+ String serviceResourceName,
+ String replicaName,
+ String codePackageName) {
+ final Integer tail = null;
+ return getContainerLogsAsync(
+ resourceGroupName, applicationResourceName, serviceResourceName, replicaName, codePackageName, tail)
+ .block();
+ }
+
+ /**
+ * Gets the logs for the container of the specified code package of the service replica.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param applicationResourceName The identity of the application.
+ * @param serviceResourceName The identity of the service.
+ * @param replicaName Service Fabric replica name.
+ * @param codePackageName The name of code package of the service.
+ * @param tail Number of lines to show from the end of the logs. Default is 100.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the logs for the container of the specified code package of the service replica.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getContainerLogsWithResponse(
+ String resourceGroupName,
+ String applicationResourceName,
+ String serviceResourceName,
+ String replicaName,
+ String codePackageName,
+ Integer tail,
+ Context context) {
+ return getContainerLogsWithResponseAsync(
+ resourceGroupName,
+ applicationResourceName,
+ serviceResourceName,
+ replicaName,
+ codePackageName,
+ tail,
+ context)
+ .block();
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/CodePackagesImpl.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/CodePackagesImpl.java
new file mode 100644
index 000000000000..641e28abb7d8
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/CodePackagesImpl.java
@@ -0,0 +1,86 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.implementation;
+
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.SimpleResponse;
+import com.azure.core.util.Context;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.fluent.CodePackagesClient;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.ContainerLogsInner;
+import com.azure.resourcemanager.servicefabricmesh.models.CodePackages;
+import com.azure.resourcemanager.servicefabricmesh.models.ContainerLogs;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+
+public final class CodePackagesImpl implements CodePackages {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(CodePackagesImpl.class);
+
+ private final CodePackagesClient innerClient;
+
+ private final com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager;
+
+ public CodePackagesImpl(
+ CodePackagesClient innerClient,
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public ContainerLogs getContainerLogs(
+ String resourceGroupName,
+ String applicationResourceName,
+ String serviceResourceName,
+ String replicaName,
+ String codePackageName) {
+ ContainerLogsInner inner =
+ this
+ .serviceClient()
+ .getContainerLogs(
+ resourceGroupName, applicationResourceName, serviceResourceName, replicaName, codePackageName);
+ if (inner != null) {
+ return new ContainerLogsImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response getContainerLogsWithResponse(
+ String resourceGroupName,
+ String applicationResourceName,
+ String serviceResourceName,
+ String replicaName,
+ String codePackageName,
+ Integer tail,
+ Context context) {
+ Response inner =
+ this
+ .serviceClient()
+ .getContainerLogsWithResponse(
+ resourceGroupName,
+ applicationResourceName,
+ serviceResourceName,
+ replicaName,
+ codePackageName,
+ tail,
+ context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new ContainerLogsImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ private CodePackagesClient serviceClient() {
+ return this.innerClient;
+ }
+
+ private com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/ContainerLogsImpl.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/ContainerLogsImpl.java
new file mode 100644
index 000000000000..9d47ebc2c068
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/ContainerLogsImpl.java
@@ -0,0 +1,33 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.implementation;
+
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.ContainerLogsInner;
+import com.azure.resourcemanager.servicefabricmesh.models.ContainerLogs;
+
+public final class ContainerLogsImpl implements ContainerLogs {
+ private ContainerLogsInner innerObject;
+
+ private final com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager;
+
+ ContainerLogsImpl(
+ ContainerLogsInner innerObject,
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String content() {
+ return this.innerModel().content();
+ }
+
+ public ContainerLogsInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/GatewayResourceDescriptionImpl.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/GatewayResourceDescriptionImpl.java
new file mode 100644
index 000000000000..6d027d0b3df1
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/GatewayResourceDescriptionImpl.java
@@ -0,0 +1,214 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.implementation;
+
+import com.azure.core.management.Region;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.GatewayResourceDescriptionInner;
+import com.azure.resourcemanager.servicefabricmesh.models.GatewayResourceDescription;
+import com.azure.resourcemanager.servicefabricmesh.models.HttpConfig;
+import com.azure.resourcemanager.servicefabricmesh.models.NetworkRef;
+import com.azure.resourcemanager.servicefabricmesh.models.ResourceStatus;
+import com.azure.resourcemanager.servicefabricmesh.models.TcpConfig;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+
+public final class GatewayResourceDescriptionImpl
+ implements GatewayResourceDescription, GatewayResourceDescription.Definition {
+ private GatewayResourceDescriptionInner innerObject;
+
+ private final com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager;
+
+ GatewayResourceDescriptionImpl(
+ GatewayResourceDescriptionInner innerObject,
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String id() {
+ return this.innerModel().id();
+ }
+
+ public String name() {
+ return this.innerModel().name();
+ }
+
+ public String type() {
+ return this.innerModel().type();
+ }
+
+ public String location() {
+ return this.innerModel().location();
+ }
+
+ public Map tags() {
+ Map inner = this.innerModel().tags();
+ if (inner != null) {
+ return Collections.unmodifiableMap(inner);
+ } else {
+ return Collections.emptyMap();
+ }
+ }
+
+ public String description() {
+ return this.innerModel().description();
+ }
+
+ public NetworkRef sourceNetwork() {
+ return this.innerModel().sourceNetwork();
+ }
+
+ public NetworkRef destinationNetwork() {
+ return this.innerModel().destinationNetwork();
+ }
+
+ public List tcp() {
+ List inner = this.innerModel().tcp();
+ if (inner != null) {
+ return Collections.unmodifiableList(inner);
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public List http() {
+ List inner = this.innerModel().http();
+ if (inner != null) {
+ return Collections.unmodifiableList(inner);
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public ResourceStatus status() {
+ return this.innerModel().status();
+ }
+
+ public String statusDetails() {
+ return this.innerModel().statusDetails();
+ }
+
+ public String ipAddress() {
+ return this.innerModel().ipAddress();
+ }
+
+ public String provisioningState() {
+ return this.innerModel().provisioningState();
+ }
+
+ public Region region() {
+ return Region.fromName(this.regionName());
+ }
+
+ public String regionName() {
+ return this.location();
+ }
+
+ public GatewayResourceDescriptionInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager() {
+ return this.serviceManager;
+ }
+
+ private String resourceGroupName;
+
+ private String gatewayResourceName;
+
+ public GatewayResourceDescriptionImpl withExistingResourceGroup(String resourceGroupName) {
+ this.resourceGroupName = resourceGroupName;
+ return this;
+ }
+
+ public GatewayResourceDescription create() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getGateways()
+ .createWithResponse(resourceGroupName, gatewayResourceName, this.innerModel(), Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public GatewayResourceDescription create(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getGateways()
+ .createWithResponse(resourceGroupName, gatewayResourceName, this.innerModel(), context)
+ .getValue();
+ return this;
+ }
+
+ GatewayResourceDescriptionImpl(
+ String name, com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager) {
+ this.innerObject = new GatewayResourceDescriptionInner();
+ this.serviceManager = serviceManager;
+ this.gatewayResourceName = name;
+ }
+
+ public GatewayResourceDescription refresh() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getGateways()
+ .getByResourceGroupWithResponse(resourceGroupName, gatewayResourceName, Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public GatewayResourceDescription refresh(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getGateways()
+ .getByResourceGroupWithResponse(resourceGroupName, gatewayResourceName, context)
+ .getValue();
+ return this;
+ }
+
+ public GatewayResourceDescriptionImpl withRegion(Region location) {
+ this.innerModel().withLocation(location.toString());
+ return this;
+ }
+
+ public GatewayResourceDescriptionImpl withRegion(String location) {
+ this.innerModel().withLocation(location);
+ return this;
+ }
+
+ public GatewayResourceDescriptionImpl withSourceNetwork(NetworkRef sourceNetwork) {
+ this.innerModel().withSourceNetwork(sourceNetwork);
+ return this;
+ }
+
+ public GatewayResourceDescriptionImpl withDestinationNetwork(NetworkRef destinationNetwork) {
+ this.innerModel().withDestinationNetwork(destinationNetwork);
+ return this;
+ }
+
+ public GatewayResourceDescriptionImpl withTags(Map tags) {
+ this.innerModel().withTags(tags);
+ return this;
+ }
+
+ public GatewayResourceDescriptionImpl withDescription(String description) {
+ this.innerModel().withDescription(description);
+ return this;
+ }
+
+ public GatewayResourceDescriptionImpl withTcp(List tcp) {
+ this.innerModel().withTcp(tcp);
+ return this;
+ }
+
+ public GatewayResourceDescriptionImpl withHttp(List http) {
+ this.innerModel().withHttp(http);
+ return this;
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/GatewaysClientImpl.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/GatewaysClientImpl.java
new file mode 100644
index 000000000000..224a0658f157
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/GatewaysClientImpl.java
@@ -0,0 +1,1119 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.fluent.GatewaysClient;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.GatewayResourceDescriptionInner;
+import com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException;
+import com.azure.resourcemanager.servicefabricmesh.models.GatewayResourceDescriptionList;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in GatewaysClient. */
+public final class GatewaysClientImpl implements GatewaysClient {
+ private final ClientLogger logger = new ClientLogger(GatewaysClientImpl.class);
+
+ /** The proxy service used to perform REST calls. */
+ private final GatewaysService service;
+
+ /** The service client containing this operation class. */
+ private final ServiceFabricMeshManagementClientImpl client;
+
+ /**
+ * Initializes an instance of GatewaysClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ GatewaysClientImpl(ServiceFabricMeshManagementClientImpl client) {
+ this.service = RestProxy.create(GatewaysService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ServiceFabricMeshManagementClientGateways to be used by the proxy
+ * service to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "ServiceFabricMeshMan")
+ private interface GatewaysService {
+ @Headers({"Content-Type: application/json"})
+ @Put(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/gateways/{gatewayResourceName}")
+ @ExpectedResponses({200, 201, 202})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> create(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam(value = "gatewayResourceName", encoded = true) String gatewayResourceName,
+ @BodyParam("application/json") GatewayResourceDescriptionInner gatewayResourceDescription,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/gateways/{gatewayResourceName}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> getByResourceGroup(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam(value = "gatewayResourceName", encoded = true) String gatewayResourceName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Delete(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/gateways/{gatewayResourceName}")
+ @ExpectedResponses({200, 202, 204})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> delete(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam(value = "gatewayResourceName", encoded = true) String gatewayResourceName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/gateways")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> listByResourceGroup(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabricMesh/gateways")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> list(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> listByResourceGroupNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> listBySubscriptionNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Creates a gateway resource with the specified name, description and properties. If a gateway resource with the
+ * same name exists, then it is updated with the specified description and properties. Use gateway resources to
+ * create a gateway for public connectivity for services within your application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param gatewayResourceDescription Description for creating a Gateway resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a gateway resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> createWithResponseAsync(
+ String resourceGroupName,
+ String gatewayResourceName,
+ GatewayResourceDescriptionInner gatewayResourceDescription) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (gatewayResourceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter gatewayResourceName is required and cannot be null."));
+ }
+ if (gatewayResourceDescription == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter gatewayResourceDescription is required and cannot be null."));
+ } else {
+ gatewayResourceDescription.validate();
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .create(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ gatewayResourceName,
+ gatewayResourceDescription,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Creates a gateway resource with the specified name, description and properties. If a gateway resource with the
+ * same name exists, then it is updated with the specified description and properties. Use gateway resources to
+ * create a gateway for public connectivity for services within your application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param gatewayResourceDescription Description for creating a Gateway resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a gateway resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> createWithResponseAsync(
+ String resourceGroupName,
+ String gatewayResourceName,
+ GatewayResourceDescriptionInner gatewayResourceDescription,
+ Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (gatewayResourceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter gatewayResourceName is required and cannot be null."));
+ }
+ if (gatewayResourceDescription == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter gatewayResourceDescription is required and cannot be null."));
+ } else {
+ gatewayResourceDescription.validate();
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .create(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ gatewayResourceName,
+ gatewayResourceDescription,
+ accept,
+ context);
+ }
+
+ /**
+ * Creates a gateway resource with the specified name, description and properties. If a gateway resource with the
+ * same name exists, then it is updated with the specified description and properties. Use gateway resources to
+ * create a gateway for public connectivity for services within your application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param gatewayResourceDescription Description for creating a Gateway resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a gateway resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createAsync(
+ String resourceGroupName,
+ String gatewayResourceName,
+ GatewayResourceDescriptionInner gatewayResourceDescription) {
+ return createWithResponseAsync(resourceGroupName, gatewayResourceName, gatewayResourceDescription)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Creates a gateway resource with the specified name, description and properties. If a gateway resource with the
+ * same name exists, then it is updated with the specified description and properties. Use gateway resources to
+ * create a gateway for public connectivity for services within your application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param gatewayResourceDescription Description for creating a Gateway resource.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a gateway resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public GatewayResourceDescriptionInner create(
+ String resourceGroupName,
+ String gatewayResourceName,
+ GatewayResourceDescriptionInner gatewayResourceDescription) {
+ return createAsync(resourceGroupName, gatewayResourceName, gatewayResourceDescription).block();
+ }
+
+ /**
+ * Creates a gateway resource with the specified name, description and properties. If a gateway resource with the
+ * same name exists, then it is updated with the specified description and properties. Use gateway resources to
+ * create a gateway for public connectivity for services within your application.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param gatewayResourceDescription Description for creating a Gateway resource.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return this type describes a gateway resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response createWithResponse(
+ String resourceGroupName,
+ String gatewayResourceName,
+ GatewayResourceDescriptionInner gatewayResourceDescription,
+ Context context) {
+ return createWithResponseAsync(resourceGroupName, gatewayResourceName, gatewayResourceDescription, context)
+ .block();
+ }
+
+ /**
+ * Gets the information about the gateway resource with the given name. The information include the description and
+ * other properties of the gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the gateway resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getByResourceGroupWithResponseAsync(
+ String resourceGroupName, String gatewayResourceName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (gatewayResourceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter gatewayResourceName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .getByResourceGroup(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ gatewayResourceName,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the information about the gateway resource with the given name. The information include the description and
+ * other properties of the gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the gateway resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getByResourceGroupWithResponseAsync(
+ String resourceGroupName, String gatewayResourceName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (gatewayResourceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter gatewayResourceName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .getByResourceGroup(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ gatewayResourceName,
+ accept,
+ context);
+ }
+
+ /**
+ * Gets the information about the gateway resource with the given name. The information include the description and
+ * other properties of the gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the gateway resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getByResourceGroupAsync(
+ String resourceGroupName, String gatewayResourceName) {
+ return getByResourceGroupWithResponseAsync(resourceGroupName, gatewayResourceName)
+ .flatMap(
+ (Response res) -> {
+ if (res.getValue() != null) {
+ return Mono.just(res.getValue());
+ } else {
+ return Mono.empty();
+ }
+ });
+ }
+
+ /**
+ * Gets the information about the gateway resource with the given name. The information include the description and
+ * other properties of the gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the gateway resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public GatewayResourceDescriptionInner getByResourceGroup(String resourceGroupName, String gatewayResourceName) {
+ return getByResourceGroupAsync(resourceGroupName, gatewayResourceName).block();
+ }
+
+ /**
+ * Gets the information about the gateway resource with the given name. The information include the description and
+ * other properties of the gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about the gateway resource with the given name.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getByResourceGroupWithResponse(
+ String resourceGroupName, String gatewayResourceName, Context context) {
+ return getByResourceGroupWithResponseAsync(resourceGroupName, gatewayResourceName, context).block();
+ }
+
+ /**
+ * Deletes the gateway resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> deleteWithResponseAsync(String resourceGroupName, String gatewayResourceName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (gatewayResourceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter gatewayResourceName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .delete(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ gatewayResourceName,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Deletes the gateway resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> deleteWithResponseAsync(
+ String resourceGroupName, String gatewayResourceName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (gatewayResourceName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter gatewayResourceName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .delete(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ gatewayResourceName,
+ accept,
+ context);
+ }
+
+ /**
+ * Deletes the gateway resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the completion.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono deleteAsync(String resourceGroupName, String gatewayResourceName) {
+ return deleteWithResponseAsync(resourceGroupName, gatewayResourceName)
+ .flatMap((Response res) -> Mono.empty());
+ }
+
+ /**
+ * Deletes the gateway resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public void delete(String resourceGroupName, String gatewayResourceName) {
+ deleteAsync(resourceGroupName, gatewayResourceName).block();
+ }
+
+ /**
+ * Deletes the gateway resource identified by the name.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param gatewayResourceName The identity of the gateway.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the response.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response deleteWithResponse(String resourceGroupName, String gatewayResourceName, Context context) {
+ return deleteWithResponseAsync(resourceGroupName, gatewayResourceName, context).block();
+ }
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the Gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByResourceGroupSinglePageAsync(
+ String resourceGroupName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .listByResourceGroup(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ accept,
+ context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the Gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByResourceGroupSinglePageAsync(
+ String resourceGroupName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listByResourceGroup(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ resourceGroupName,
+ accept,
+ context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the Gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listByResourceGroupAsync(String resourceGroupName) {
+ return new PagedFlux<>(
+ () -> listByResourceGroupSinglePageAsync(resourceGroupName),
+ nextLink -> listByResourceGroupNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the Gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listByResourceGroupAsync(
+ String resourceGroupName, Context context) {
+ return new PagedFlux<>(
+ () -> listByResourceGroupSinglePageAsync(resourceGroupName, context),
+ nextLink -> listByResourceGroupNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the Gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable listByResourceGroup(String resourceGroupName) {
+ return new PagedIterable<>(listByResourceGroupAsync(resourceGroupName));
+ }
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the Gateway.
+ *
+ * @param resourceGroupName Azure resource group name.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable listByResourceGroup(
+ String resourceGroupName, Context context) {
+ return new PagedIterable<>(listByResourceGroupAsync(resourceGroupName, context));
+ }
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the gateway.
+ *
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync() {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .list(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ accept,
+ context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the gateway.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync(Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .list(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ this.client.getApiVersion(),
+ accept,
+ context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the gateway.
+ *
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync() {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(), nextLink -> listBySubscriptionNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the gateway.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(Context context) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(context), nextLink -> listBySubscriptionNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the gateway.
+ *
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list() {
+ return new PagedIterable<>(listAsync());
+ }
+
+ /**
+ * Gets the information about all gateway resources in a given resource group. The information include the
+ * description and other properties of the gateway.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the information about all gateway resources in a given resource group.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(Context context) {
+ return new PagedIterable<>(listAsync(context));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a pageable list of gateway resources.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByResourceGroupNextSinglePageAsync(
+ String nextLink) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context -> service.listByResourceGroupNext(nextLink, this.client.getEndpoint(), accept, context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a pageable list of gateway resources.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listByResourceGroupNextSinglePageAsync(
+ String nextLink, Context context) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listByResourceGroupNext(nextLink, this.client.getEndpoint(), accept, context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a pageable list of gateway resources.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listBySubscriptionNextSinglePageAsync(
+ String nextLink) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context -> service.listBySubscriptionNext(nextLink, this.client.getEndpoint(), accept, context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The nextLink parameter.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ErrorErrorModelException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a pageable list of gateway resources.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listBySubscriptionNextSinglePageAsync(
+ String nextLink, Context context) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listBySubscriptionNext(nextLink, this.client.getEndpoint(), accept, context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/GatewaysImpl.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/GatewaysImpl.java
new file mode 100644
index 000000000000..5a53e17d2cfd
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/GatewaysImpl.java
@@ -0,0 +1,174 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.implementation;
+
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.SimpleResponse;
+import com.azure.core.util.Context;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.fluent.GatewaysClient;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.GatewayResourceDescriptionInner;
+import com.azure.resourcemanager.servicefabricmesh.models.GatewayResourceDescription;
+import com.azure.resourcemanager.servicefabricmesh.models.Gateways;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+
+public final class GatewaysImpl implements Gateways {
+ @JsonIgnore private final ClientLogger logger = new ClientLogger(GatewaysImpl.class);
+
+ private final GatewaysClient innerClient;
+
+ private final com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager;
+
+ public GatewaysImpl(
+ GatewaysClient innerClient,
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public GatewayResourceDescription getByResourceGroup(String resourceGroupName, String gatewayResourceName) {
+ GatewayResourceDescriptionInner inner =
+ this.serviceClient().getByResourceGroup(resourceGroupName, gatewayResourceName);
+ if (inner != null) {
+ return new GatewayResourceDescriptionImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response getByResourceGroupWithResponse(
+ String resourceGroupName, String gatewayResourceName, Context context) {
+ Response inner =
+ this.serviceClient().getByResourceGroupWithResponse(resourceGroupName, gatewayResourceName, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new GatewayResourceDescriptionImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public void deleteByResourceGroup(String resourceGroupName, String gatewayResourceName) {
+ this.serviceClient().delete(resourceGroupName, gatewayResourceName);
+ }
+
+ public Response deleteWithResponse(String resourceGroupName, String gatewayResourceName, Context context) {
+ return this.serviceClient().deleteWithResponse(resourceGroupName, gatewayResourceName, context);
+ }
+
+ public PagedIterable listByResourceGroup(String resourceGroupName) {
+ PagedIterable inner =
+ this.serviceClient().listByResourceGroup(resourceGroupName);
+ return Utils.mapPage(inner, inner1 -> new GatewayResourceDescriptionImpl(inner1, this.manager()));
+ }
+
+ public PagedIterable listByResourceGroup(String resourceGroupName, Context context) {
+ PagedIterable inner =
+ this.serviceClient().listByResourceGroup(resourceGroupName, context);
+ return Utils.mapPage(inner, inner1 -> new GatewayResourceDescriptionImpl(inner1, this.manager()));
+ }
+
+ public PagedIterable list() {
+ PagedIterable inner = this.serviceClient().list();
+ return Utils.mapPage(inner, inner1 -> new GatewayResourceDescriptionImpl(inner1, this.manager()));
+ }
+
+ public PagedIterable list(Context context) {
+ PagedIterable inner = this.serviceClient().list(context);
+ return Utils.mapPage(inner, inner1 -> new GatewayResourceDescriptionImpl(inner1, this.manager()));
+ }
+
+ public GatewayResourceDescription getById(String id) {
+ String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+ if (resourceGroupName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+ }
+ String gatewayResourceName = Utils.getValueFromIdByName(id, "gateways");
+ if (gatewayResourceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'gateways'.", id)));
+ }
+ return this.getByResourceGroupWithResponse(resourceGroupName, gatewayResourceName, Context.NONE).getValue();
+ }
+
+ public Response getByIdWithResponse(String id, Context context) {
+ String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+ if (resourceGroupName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+ }
+ String gatewayResourceName = Utils.getValueFromIdByName(id, "gateways");
+ if (gatewayResourceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'gateways'.", id)));
+ }
+ return this.getByResourceGroupWithResponse(resourceGroupName, gatewayResourceName, context);
+ }
+
+ public void deleteById(String id) {
+ String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+ if (resourceGroupName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+ }
+ String gatewayResourceName = Utils.getValueFromIdByName(id, "gateways");
+ if (gatewayResourceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'gateways'.", id)));
+ }
+ this.deleteWithResponse(resourceGroupName, gatewayResourceName, Context.NONE);
+ }
+
+ public Response deleteByIdWithResponse(String id, Context context) {
+ String resourceGroupName = Utils.getValueFromIdByName(id, "resourceGroups");
+ if (resourceGroupName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String
+ .format("The resource ID '%s' is not valid. Missing path segment 'resourceGroups'.", id)));
+ }
+ String gatewayResourceName = Utils.getValueFromIdByName(id, "gateways");
+ if (gatewayResourceName == null) {
+ throw logger
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ String.format("The resource ID '%s' is not valid. Missing path segment 'gateways'.", id)));
+ }
+ return this.deleteWithResponse(resourceGroupName, gatewayResourceName, context);
+ }
+
+ private GatewaysClient serviceClient() {
+ return this.innerClient;
+ }
+
+ private com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager() {
+ return this.serviceManager;
+ }
+
+ public GatewayResourceDescriptionImpl define(String name) {
+ return new GatewayResourceDescriptionImpl(name, this.manager());
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/NetworkResourceDescriptionImpl.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/NetworkResourceDescriptionImpl.java
new file mode 100644
index 000000000000..be67fbb19c81
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/NetworkResourceDescriptionImpl.java
@@ -0,0 +1,148 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.implementation;
+
+import com.azure.core.management.Region;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.NetworkResourceDescriptionInner;
+import com.azure.resourcemanager.servicefabricmesh.models.NetworkResourceDescription;
+import com.azure.resourcemanager.servicefabricmesh.models.NetworkResourceProperties;
+import java.util.Collections;
+import java.util.Map;
+
+public final class NetworkResourceDescriptionImpl
+ implements NetworkResourceDescription, NetworkResourceDescription.Definition {
+ private NetworkResourceDescriptionInner innerObject;
+
+ private final com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager;
+
+ NetworkResourceDescriptionImpl(
+ NetworkResourceDescriptionInner innerObject,
+ com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String id() {
+ return this.innerModel().id();
+ }
+
+ public String name() {
+ return this.innerModel().name();
+ }
+
+ public String type() {
+ return this.innerModel().type();
+ }
+
+ public String location() {
+ return this.innerModel().location();
+ }
+
+ public Map tags() {
+ Map inner = this.innerModel().tags();
+ if (inner != null) {
+ return Collections.unmodifiableMap(inner);
+ } else {
+ return Collections.emptyMap();
+ }
+ }
+
+ public NetworkResourceProperties properties() {
+ return this.innerModel().properties();
+ }
+
+ public Region region() {
+ return Region.fromName(this.regionName());
+ }
+
+ public String regionName() {
+ return this.location();
+ }
+
+ public NetworkResourceDescriptionInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager manager() {
+ return this.serviceManager;
+ }
+
+ private String resourceGroupName;
+
+ private String networkResourceName;
+
+ public NetworkResourceDescriptionImpl withExistingResourceGroup(String resourceGroupName) {
+ this.resourceGroupName = resourceGroupName;
+ return this;
+ }
+
+ public NetworkResourceDescription create() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getNetworks()
+ .createWithResponse(resourceGroupName, networkResourceName, this.innerModel(), Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public NetworkResourceDescription create(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getNetworks()
+ .createWithResponse(resourceGroupName, networkResourceName, this.innerModel(), context)
+ .getValue();
+ return this;
+ }
+
+ NetworkResourceDescriptionImpl(
+ String name, com.azure.resourcemanager.servicefabricmesh.ServiceFabricMeshManager serviceManager) {
+ this.innerObject = new NetworkResourceDescriptionInner();
+ this.serviceManager = serviceManager;
+ this.networkResourceName = name;
+ }
+
+ public NetworkResourceDescription refresh() {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getNetworks()
+ .getByResourceGroupWithResponse(resourceGroupName, networkResourceName, Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public NetworkResourceDescription refresh(Context context) {
+ this.innerObject =
+ serviceManager
+ .serviceClient()
+ .getNetworks()
+ .getByResourceGroupWithResponse(resourceGroupName, networkResourceName, context)
+ .getValue();
+ return this;
+ }
+
+ public NetworkResourceDescriptionImpl withRegion(Region location) {
+ this.innerModel().withLocation(location.toString());
+ return this;
+ }
+
+ public NetworkResourceDescriptionImpl withRegion(String location) {
+ this.innerModel().withLocation(location);
+ return this;
+ }
+
+ public NetworkResourceDescriptionImpl withProperties(NetworkResourceProperties properties) {
+ this.innerModel().withProperties(properties);
+ return this;
+ }
+
+ public NetworkResourceDescriptionImpl withTags(Map tags) {
+ this.innerModel().withTags(tags);
+ return this;
+ }
+}
diff --git a/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/NetworksClientImpl.java b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/NetworksClientImpl.java
new file mode 100644
index 000000000000..3f8ac4b24565
--- /dev/null
+++ b/sdk/servicefabricmesh/azure-resourcemanager-servicefabricmesh/src/main/java/com/azure/resourcemanager/servicefabricmesh/implementation/NetworksClientImpl.java
@@ -0,0 +1,1114 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.servicefabricmesh.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.servicefabricmesh.fluent.NetworksClient;
+import com.azure.resourcemanager.servicefabricmesh.fluent.models.NetworkResourceDescriptionInner;
+import com.azure.resourcemanager.servicefabricmesh.models.ErrorErrorModelException;
+import com.azure.resourcemanager.servicefabricmesh.models.NetworkResourceDescriptionList;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in NetworksClient. */
+public final class NetworksClientImpl implements NetworksClient {
+ private final ClientLogger logger = new ClientLogger(NetworksClientImpl.class);
+
+ /** The proxy service used to perform REST calls. */
+ private final NetworksService service;
+
+ /** The service client containing this operation class. */
+ private final ServiceFabricMeshManagementClientImpl client;
+
+ /**
+ * Initializes an instance of NetworksClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ NetworksClientImpl(ServiceFabricMeshManagementClientImpl client) {
+ this.service = RestProxy.create(NetworksService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for ServiceFabricMeshManagementClientNetworks to be used by the proxy
+ * service to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "ServiceFabricMeshMan")
+ private interface NetworksService {
+ @Headers({"Content-Type: application/json"})
+ @Put(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/networks/{networkResourceName}")
+ @ExpectedResponses({200, 201, 202})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> create(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam(value = "networkResourceName", encoded = true) String networkResourceName,
+ @BodyParam("application/json") NetworkResourceDescriptionInner networkResourceDescription,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/networks/{networkResourceName}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> getByResourceGroup(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam(value = "networkResourceName", encoded = true) String networkResourceName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Delete(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/networks/{networkResourceName}")
+ @ExpectedResponses({200, 202, 204})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> delete(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam(value = "networkResourceName", encoded = true) String networkResourceName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh"
+ + "/networks")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> listByResourceGroup(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabricMesh/networks")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono> list(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ErrorErrorModelException.class)
+ Mono