scopes = new ArrayList<>();
+ private RetryPolicy retryPolicy;
+ private RetryOptions retryOptions;
+ 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 retry options for the HTTP pipeline retry policy.
+ *
+ * This setting has no effect, if retry policy is set via {@link #withRetryPolicy(RetryPolicy)}.
+ *
+ * @param retryOptions the retry options for the HTTP pipeline retry policy.
+ * @return the configurable object itself.
+ */
+ public Configurable withRetryOptions(RetryOptions retryOptions) {
+ this.retryOptions = Objects.requireNonNull(retryOptions, "'retryOptions' 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, "'defaultPollInterval' cannot be null.");
+ if (this.defaultPollInterval.isNegative()) {
+ throw LOGGER
+ .logExceptionAsError(new IllegalArgumentException("'defaultPollInterval' cannot be negative"));
+ }
+ return this;
+ }
+
+ /**
+ * Creates an instance of Data Transfer service API entry point.
+ *
+ * @param credential the credential to use.
+ * @param profile the Azure profile for client.
+ * @return the Data Transfer service API instance.
+ */
+ public DataTransferManager authenticate(TokenCredential credential, AzureProfile profile) {
+ Objects.requireNonNull(credential, "'credential' cannot be null.");
+ Objects.requireNonNull(profile, "'profile' cannot be null.");
+
+ String clientVersion = PROPERTIES.getOrDefault(SDK_VERSION, "UnknownVersion");
+
+ StringBuilder userAgentBuilder = new StringBuilder();
+ userAgentBuilder.append("azsdk-java")
+ .append("-")
+ .append("com.azure.resourcemanager.datatransfer")
+ .append("/")
+ .append(clientVersion);
+ 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) {
+ if (retryOptions != null) {
+ retryPolicy = new RetryPolicy(retryOptions);
+ } else {
+ retryPolicy = new RetryPolicy("Retry-After", ChronoUnit.SECONDS);
+ }
+ }
+ List policies = new ArrayList<>();
+ policies.add(new UserAgentPolicy(userAgentBuilder.toString()));
+ policies.add(new AddHeadersFromContextPolicy());
+ 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 BearerTokenAuthenticationPolicy(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 DataTransferManager(httpPipeline, profile, defaultPollInterval);
+ }
+ }
+
+ /**
+ * Gets the resource collection API of Operations.
+ *
+ * @return Resource collection API of Operations.
+ */
+ public Operations operations() {
+ if (this.operations == null) {
+ this.operations = new OperationsImpl(clientObject.getOperations(), this);
+ }
+ return operations;
+ }
+
+ /**
+ * Gets the resource collection API of FlowProfiles. It manages FlowProfile.
+ *
+ * @return Resource collection API of FlowProfiles.
+ */
+ public FlowProfiles flowProfiles() {
+ if (this.flowProfiles == null) {
+ this.flowProfiles = new FlowProfilesImpl(clientObject.getFlowProfiles(), this);
+ }
+ return flowProfiles;
+ }
+
+ /**
+ * Gets the resource collection API of Pipelines. It manages Pipeline.
+ *
+ * @return Resource collection API of Pipelines.
+ */
+ public Pipelines pipelines() {
+ if (this.pipelines == null) {
+ this.pipelines = new PipelinesImpl(clientObject.getPipelines(), this);
+ }
+ return pipelines;
+ }
+
+ /**
+ * Gets the resource collection API of Connections. It manages Connection.
+ *
+ * @return Resource collection API of Connections.
+ */
+ public Connections connections() {
+ if (this.connections == null) {
+ this.connections = new ConnectionsImpl(clientObject.getConnections(), this);
+ }
+ return connections;
+ }
+
+ /**
+ * Gets the resource collection API of Flows. It manages Flow.
+ *
+ * @return Resource collection API of Flows.
+ */
+ public Flows flows() {
+ if (this.flows == null) {
+ this.flows = new FlowsImpl(clientObject.getFlows(), this);
+ }
+ return flows;
+ }
+
+ /**
+ * Gets the resource collection API of AzureDataTransfers.
+ *
+ * @return Resource collection API of AzureDataTransfers.
+ */
+ public AzureDataTransfers azureDataTransfers() {
+ if (this.azureDataTransfers == null) {
+ this.azureDataTransfers = new AzureDataTransfersImpl(clientObject.getAzureDataTransfers(), this);
+ }
+ return azureDataTransfers;
+ }
+
+ /**
+ * Gets wrapped service client DataTransferManagementClient providing direct access to the underlying auto-generated
+ * API implementation, based on Azure REST API.
+ *
+ * @return Wrapped service client DataTransferManagementClient.
+ */
+ public DataTransferManagementClient serviceClient() {
+ return this.clientObject;
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/AzureDataTransfersClient.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/AzureDataTransfersClient.java
new file mode 100644
index 0000000000000..a779cbe159dbe
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/AzureDataTransfersClient.java
@@ -0,0 +1,132 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.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.datatransfer.fluent.models.FlowProfilesListResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.ListPipelineMetadataResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.SchemasListResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.ValidateSchemaResultInner;
+import com.azure.resourcemanager.datatransfer.models.ListApprovedSchemasRequest;
+import com.azure.resourcemanager.datatransfer.models.ListFlowProfilesRequest;
+import com.azure.resourcemanager.datatransfer.models.ListPipelineMetadataRequest;
+import com.azure.resourcemanager.datatransfer.models.Schema;
+
+/**
+ * An instance of this class provides access to all the operations defined in AzureDataTransfersClient.
+ */
+public interface AzureDataTransfersClient {
+ /**
+ * Retrieves the list of approved schemas available for Azure Data Transfer. This operation has reached end of life
+ * support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile resource.
+ *
+ * @param pipeline The request payload for listing approved schemas.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the schemas list result along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listApprovedSchemasWithResponse(ListApprovedSchemasRequest pipeline,
+ Context context);
+
+ /**
+ * Retrieves the list of approved schemas available for Azure Data Transfer. This operation has reached end of life
+ * support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile resource.
+ *
+ * @param pipeline The request payload for listing approved schemas.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the schemas list result.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SchemasListResultInner listApprovedSchemas(ListApprovedSchemasRequest pipeline);
+
+ /**
+ * Retrieves a list of FlowProfile resources associated with a specified pipeline.
+ *
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow profiles list result along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listFlowProfilesWithResponse(ListFlowProfilesRequest body, Context context);
+
+ /**
+ * Retrieves a list of FlowProfile resources associated with a specified pipeline.
+ *
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow profiles list result.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowProfilesListResultInner listFlowProfiles(ListFlowProfilesRequest body);
+
+ /**
+ * Validates the structure and content of a schema for use in Azure Data Transfer. This operation has reached end of
+ * life support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile
+ * resource.
+ *
+ * @param schema The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return result of the schema validation along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response validateSchemaWithResponse(Schema schema, Context context);
+
+ /**
+ * Validates the structure and content of a schema for use in Azure Data Transfer. This operation has reached end of
+ * life support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile
+ * resource.
+ *
+ * @param schema The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return result of the schema validation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ValidateSchemaResultInner validateSchema(Schema schema);
+
+ /**
+ * Retrieves the pipeline metadata associated with a specified pipeline.
+ *
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return defines the response body for retrieving Pipeline metadata for a provided pipeline along with
+ * {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listPipelineMetadataWithResponse(ListPipelineMetadataRequest body,
+ Context context);
+
+ /**
+ * Retrieves the pipeline metadata associated with a specified pipeline.
+ *
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return defines the response body for retrieving Pipeline metadata for a provided pipeline.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ListPipelineMetadataResultInner listPipelineMetadata(ListPipelineMetadataRequest body);
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/ConnectionsClient.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/ConnectionsClient.java
new file mode 100644
index 0000000000000..af1b337c2b3bd
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/ConnectionsClient.java
@@ -0,0 +1,384 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.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.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.datatransfer.fluent.models.ConnectionInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.PendingConnectionInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.PendingFlowInner;
+import com.azure.resourcemanager.datatransfer.models.ConnectionsPatch;
+import com.azure.resourcemanager.datatransfer.models.ResourceBody;
+
+/**
+ * An instance of this class provides access to all the operations defined in ConnectionsClient.
+ */
+public interface ConnectionsClient {
+ /**
+ * Gets connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return connection resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(String resourceGroupName, String connectionName,
+ Context context);
+
+ /**
+ * Gets connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return connection resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectionInner getByResourceGroup(String resourceGroupName, String connectionName);
+
+ /**
+ * Creates or updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConnectionInner> beginCreateOrUpdate(String resourceGroupName,
+ String connectionName, ConnectionInner connection);
+
+ /**
+ * Creates or updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConnectionInner> beginCreateOrUpdate(String resourceGroupName,
+ String connectionName, ConnectionInner connection, Context context);
+
+ /**
+ * Creates or updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectionInner createOrUpdate(String resourceGroupName, String connectionName, ConnectionInner connection);
+
+ /**
+ * Creates or updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectionInner createOrUpdate(String resourceGroupName, String connectionName, ConnectionInner connection,
+ Context context);
+
+ /**
+ * Updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginUpdate(String resourceGroupName, String connectionName,
+ ConnectionsPatch connection);
+
+ /**
+ * Updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginUpdate(String resourceGroupName, String connectionName,
+ ConnectionsPatch connection, Context context);
+
+ /**
+ * Updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 update(String resourceGroupName, String connectionName, ConnectionsPatch connection);
+
+ /**
+ * Updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 update(String resourceGroupName, String connectionName, ConnectionsPatch connection, Context context);
+
+ /**
+ * Deletes the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String connectionName);
+
+ /**
+ * Deletes the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String connectionName, Context context);
+
+ /**
+ * Deletes the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 connectionName);
+
+ /**
+ * Deletes the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 connectionName, Context context);
+
+ /**
+ * Gets connections in a resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return connections in a resource group as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Gets connections in a resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return connections in a resource group as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
+
+ /**
+ * Gets connections in a subscription.
+ *
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return connections in a subscription as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listBySubscription();
+
+ /**
+ * Gets connections in a subscription.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return connections in a subscription as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listBySubscription(Context context);
+
+ /**
+ * Links the connection to its pending connection.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConnectionInner> beginLink(String resourceGroupName, String connectionName,
+ ResourceBody connection);
+
+ /**
+ * Links the connection to its pending connection.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConnectionInner> beginLink(String resourceGroupName, String connectionName,
+ ResourceBody connection, Context context);
+
+ /**
+ * Links the connection to its pending connection.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectionInner link(String resourceGroupName, String connectionName, ResourceBody connection);
+
+ /**
+ * Links the connection to its pending connection.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectionInner link(String resourceGroupName, String connectionName, ResourceBody connection, Context context);
+
+ /**
+ * Lists all pending remote connections that are linkable to this connection.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the custom response of a list operation as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String connectionName);
+
+ /**
+ * Lists all pending remote connections that are linkable to this connection.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the custom response of a list operation as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String connectionName, Context context);
+
+ /**
+ * Lists all remote flows that have not yet been linked to local flows.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the custom response of a list operation as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listPendingFlowsList(String resourceGroupName, String connectionName);
+
+ /**
+ * Lists all remote flows that have not yet been linked to local flows.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the custom response of a list operation as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listPendingFlowsList(String resourceGroupName, String connectionName,
+ Context context);
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/DataTransferManagementClient.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/DataTransferManagementClient.java
new file mode 100644
index 0000000000000..e1e12ffe8a5da
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/DataTransferManagementClient.java
@@ -0,0 +1,90 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent;
+
+import com.azure.core.http.HttpPipeline;
+import java.time.Duration;
+
+/**
+ * The interface for DataTransferManagementClient class.
+ */
+public interface DataTransferManagementClient {
+ /**
+ * Gets Service host.
+ *
+ * @return the endpoint value.
+ */
+ String getEndpoint();
+
+ /**
+ * Gets Version parameter.
+ *
+ * @return the apiVersion value.
+ */
+ String getApiVersion();
+
+ /**
+ * Gets The ID of the target subscription. The value must be an UUID.
+ *
+ * @return the subscriptionId value.
+ */
+ String getSubscriptionId();
+
+ /**
+ * 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 FlowProfilesClient object to access its operations.
+ *
+ * @return the FlowProfilesClient object.
+ */
+ FlowProfilesClient getFlowProfiles();
+
+ /**
+ * Gets the PipelinesClient object to access its operations.
+ *
+ * @return the PipelinesClient object.
+ */
+ PipelinesClient getPipelines();
+
+ /**
+ * Gets the ConnectionsClient object to access its operations.
+ *
+ * @return the ConnectionsClient object.
+ */
+ ConnectionsClient getConnections();
+
+ /**
+ * Gets the FlowsClient object to access its operations.
+ *
+ * @return the FlowsClient object.
+ */
+ FlowsClient getFlows();
+
+ /**
+ * Gets the AzureDataTransfersClient object to access its operations.
+ *
+ * @return the AzureDataTransfersClient object.
+ */
+ AzureDataTransfersClient getAzureDataTransfers();
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/FlowProfilesClient.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/FlowProfilesClient.java
new file mode 100644
index 0000000000000..8968a88ed412e
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/FlowProfilesClient.java
@@ -0,0 +1,291 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.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.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.datatransfer.fluent.models.FlowProfileInner;
+import com.azure.resourcemanager.datatransfer.models.FlowProfilePatch;
+
+/**
+ * An instance of this class provides access to all the operations defined in FlowProfilesClient.
+ */
+public interface FlowProfilesClient {
+ /**
+ * Retrieves the specified FlowProfile resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a FlowProfile Azure resource, which defines a data replication scenario with a specific data
+ * classification and a set of configurable policy rules along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(String resourceGroupName, String pipelineName, String flowProfileName,
+ Context context);
+
+ /**
+ * Retrieves the specified FlowProfile resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a FlowProfile Azure resource, which defines a data replication scenario with a specific data
+ * classification and a set of configurable policy rules.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowProfileInner get(String resourceGroupName, String pipelineName, String flowProfileName);
+
+ /**
+ * Creates a new FlowProfile or updates an existing one.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @param resource The FlowProfile resource definition to create or update.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of represents a FlowProfile Azure resource, which defines a data
+ * replication scenario with a specific data classification and a set of configurable policy rules.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowProfileInner> beginCreateOrUpdate(String resourceGroupName,
+ String pipelineName, String flowProfileName, FlowProfileInner resource);
+
+ /**
+ * Creates a new FlowProfile or updates an existing one.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @param resource The FlowProfile resource definition to create or update.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of represents a FlowProfile Azure resource, which defines a data
+ * replication scenario with a specific data classification and a set of configurable policy rules.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowProfileInner> beginCreateOrUpdate(String resourceGroupName,
+ String pipelineName, String flowProfileName, FlowProfileInner resource, Context context);
+
+ /**
+ * Creates a new FlowProfile or updates an existing one.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @param resource The FlowProfile resource definition to create or update.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a FlowProfile Azure resource, which defines a data replication scenario with a specific data
+ * classification and a set of configurable policy rules.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowProfileInner createOrUpdate(String resourceGroupName, String pipelineName, String flowProfileName,
+ FlowProfileInner resource);
+
+ /**
+ * Creates a new FlowProfile or updates an existing one.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @param resource The FlowProfile resource definition to create or update.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a FlowProfile Azure resource, which defines a data replication scenario with a specific data
+ * classification and a set of configurable policy rules.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowProfileInner createOrUpdate(String resourceGroupName, String pipelineName, String flowProfileName,
+ FlowProfileInner resource, Context context);
+
+ /**
+ * Applies partial updates to an existing FlowProfile resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @param properties The FlowProfile patch definition containing the properties to update.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of represents a FlowProfile Azure resource, which defines a data
+ * replication scenario with a specific data classification and a set of configurable policy rules.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowProfileInner> beginUpdate(String resourceGroupName,
+ String pipelineName, String flowProfileName, FlowProfilePatch properties);
+
+ /**
+ * Applies partial updates to an existing FlowProfile resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @param properties The FlowProfile patch definition containing the properties to update.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of represents a FlowProfile Azure resource, which defines a data
+ * replication scenario with a specific data classification and a set of configurable policy rules.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowProfileInner> beginUpdate(String resourceGroupName,
+ String pipelineName, String flowProfileName, FlowProfilePatch properties, Context context);
+
+ /**
+ * Applies partial updates to an existing FlowProfile resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @param properties The FlowProfile patch definition containing the properties to update.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a FlowProfile Azure resource, which defines a data replication scenario with a specific data
+ * classification and a set of configurable policy rules.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowProfileInner update(String resourceGroupName, String pipelineName, String flowProfileName,
+ FlowProfilePatch properties);
+
+ /**
+ * Applies partial updates to an existing FlowProfile resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @param properties The FlowProfile patch definition containing the properties to update.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return represents a FlowProfile Azure resource, which defines a data replication scenario with a specific data
+ * classification and a set of configurable policy rules.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowProfileInner update(String resourceGroupName, String pipelineName, String flowProfileName,
+ FlowProfilePatch properties, Context context);
+
+ /**
+ * Deletes the specified FlowProfile resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String pipelineName,
+ String flowProfileName);
+
+ /**
+ * Deletes the specified FlowProfile resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String pipelineName,
+ String flowProfileName, Context context);
+
+ /**
+ * Deletes the specified FlowProfile resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 pipelineName, String flowProfileName);
+
+ /**
+ * Deletes the specified FlowProfile resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param flowProfileName The name of the FlowProfile resource to operate on. Must be 3 to 64 characters long and
+ * contain only alphanumeric characters or hyphens.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 pipelineName, String flowProfileName, Context context);
+
+ /**
+ * Lists all FlowProfiles under a given Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 of a FlowProfile list operation as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByPipeline(String resourceGroupName, String pipelineName);
+
+ /**
+ * Lists all FlowProfiles under a given Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 of a FlowProfile list operation as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByPipeline(String resourceGroupName, String pipelineName, Context context);
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/FlowsClient.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/FlowsClient.java
new file mode 100644
index 0000000000000..5664375437f1a
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/FlowsClient.java
@@ -0,0 +1,903 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.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.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.datatransfer.fluent.models.FlowInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.GetDestinationEndpointPortsResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.GetDestinationEndpointsResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.GetStreamConnectionStringResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.StreamSourceAddressesInner;
+import com.azure.resourcemanager.datatransfer.models.FlowsPatch;
+import com.azure.resourcemanager.datatransfer.models.ResourceBody;
+import com.azure.resourcemanager.datatransfer.models.SetDestinationEndpointPorts;
+import com.azure.resourcemanager.datatransfer.models.SetDestinationEndpoints;
+import com.azure.resourcemanager.datatransfer.models.SetSourceAddresses;
+import com.azure.resourcemanager.datatransfer.models.SetStreamPassphrase;
+
+/**
+ * An instance of this class provides access to all the operations defined in FlowsClient.
+ */
+public interface FlowsClient {
+ /**
+ * Gets flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return flow resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(String resourceGroupName, String connectionName, String flowName,
+ Context context);
+
+ /**
+ * Gets flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return flow resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner get(String resourceGroupName, String connectionName, String flowName);
+
+ /**
+ * Creates or updates the flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param flow Flow body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginCreateOrUpdate(String resourceGroupName, String connectionName,
+ String flowName, FlowInner flow);
+
+ /**
+ * Creates or updates the flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param flow Flow body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginCreateOrUpdate(String resourceGroupName, String connectionName,
+ String flowName, FlowInner flow, Context context);
+
+ /**
+ * Creates or updates the flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param flow Flow body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner createOrUpdate(String resourceGroupName, String connectionName, String flowName, FlowInner flow);
+
+ /**
+ * Creates or updates the flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param flow Flow body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner createOrUpdate(String resourceGroupName, String connectionName, String flowName, FlowInner flow,
+ Context context);
+
+ /**
+ * Updates the flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param flow Flow body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginUpdate(String resourceGroupName, String connectionName, String flowName,
+ FlowsPatch flow);
+
+ /**
+ * Updates the flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param flow Flow body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginUpdate(String resourceGroupName, String connectionName, String flowName,
+ FlowsPatch flow, Context context);
+
+ /**
+ * Updates the flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param flow Flow body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 update(String resourceGroupName, String connectionName, String flowName, FlowsPatch flow);
+
+ /**
+ * Updates the flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param flow Flow body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 update(String resourceGroupName, String connectionName, String flowName, FlowsPatch flow, Context context);
+
+ /**
+ * Deletes the flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String connectionName, String flowName);
+
+ /**
+ * Deletes the flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String connectionName, String flowName,
+ Context context);
+
+ /**
+ * Deletes the flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 connectionName, String flowName);
+
+ /**
+ * Deletes the flow resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 connectionName, String flowName, Context context);
+
+ /**
+ * Gets flows in a connection.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return flows in a connection as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByConnection(String resourceGroupName, String connectionName);
+
+ /**
+ * Gets flows in a connection.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return flows in a connection as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByConnection(String resourceGroupName, String connectionName, Context context);
+
+ /**
+ * Disables the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginDisable(String resourceGroupName, String connectionName,
+ String flowName);
+
+ /**
+ * Disables the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginDisable(String resourceGroupName, String connectionName,
+ String flowName, Context context);
+
+ /**
+ * Disables the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner disable(String resourceGroupName, String connectionName, String flowName);
+
+ /**
+ * Disables the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner disable(String resourceGroupName, String connectionName, String flowName, Context context);
+
+ /**
+ * Enables the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginEnable(String resourceGroupName, String connectionName,
+ String flowName);
+
+ /**
+ * Enables the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginEnable(String resourceGroupName, String connectionName,
+ String flowName, Context context);
+
+ /**
+ * Enables the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner enable(String resourceGroupName, String connectionName, String flowName);
+
+ /**
+ * Enables the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner enable(String resourceGroupName, String connectionName, String flowName, Context context);
+
+ /**
+ * Generate a compliant passphrase for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginGeneratePassphrase(String resourceGroupName,
+ String connectionName, String flowName);
+
+ /**
+ * Generate a compliant passphrase for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginGeneratePassphrase(String resourceGroupName,
+ String connectionName, String flowName, Context context);
+
+ /**
+ * Generate a compliant passphrase for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner generatePassphrase(String resourceGroupName, String connectionName, String flowName);
+
+ /**
+ * Generate a compliant passphrase for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner generatePassphrase(String resourceGroupName, String connectionName, String flowName, Context context);
+
+ /**
+ * Get the destination endpoint ports for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the destination endpoint ports for the specified flow along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getDestinationEndpointPortsWithResponse(String resourceGroupName,
+ String connectionName, String flowName, Context context);
+
+ /**
+ * Get the destination endpoint ports for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the destination endpoint ports for the specified flow.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GetDestinationEndpointPortsResultInner getDestinationEndpointPorts(String resourceGroupName, String connectionName,
+ String flowName);
+
+ /**
+ * Get the destination endpoints for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the destination endpoints for the specified flow along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getDestinationEndpointsWithResponse(String resourceGroupName,
+ String connectionName, String flowName, Context context);
+
+ /**
+ * Get the destination endpoints for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the destination endpoints for the specified flow.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GetDestinationEndpointsResultInner getDestinationEndpoints(String resourceGroupName, String connectionName,
+ String flowName);
+
+ /**
+ * Get the source addresses for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the source addresses for the specified flow along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getSourceAddressesWithResponse(String resourceGroupName, String connectionName,
+ String flowName, Context context);
+
+ /**
+ * Get the source addresses for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the source addresses for the specified flow.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ StreamSourceAddressesInner getSourceAddresses(String resourceGroupName, String connectionName, String flowName);
+
+ /**
+ * Get the connection string for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection string for the specified flow along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getStreamConnectionStringWithResponse(String resourceGroupName,
+ String connectionName, String flowName, Context context);
+
+ /**
+ * Get the connection string for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection string for the specified flow.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GetStreamConnectionStringResultInner getStreamConnectionString(String resourceGroupName, String connectionName,
+ String flowName);
+
+ /**
+ * Links the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param flow Flow body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginLink(String resourceGroupName, String connectionName,
+ String flowName, ResourceBody flow);
+
+ /**
+ * Links the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param flow Flow body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginLink(String resourceGroupName, String connectionName,
+ String flowName, ResourceBody flow, Context context);
+
+ /**
+ * Links the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param flow Flow body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner link(String resourceGroupName, String connectionName, String flowName, ResourceBody flow);
+
+ /**
+ * Links the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param flow Flow body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner link(String resourceGroupName, String connectionName, String flowName, ResourceBody flow,
+ Context context);
+
+ /**
+ * Set the destination endpoint ports for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param streamDestinationEndpointPorts The destination endpoint ports wanted.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginSetDestinationEndpointPorts(String resourceGroupName,
+ String connectionName, String flowName, SetDestinationEndpointPorts streamDestinationEndpointPorts);
+
+ /**
+ * Set the destination endpoint ports for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param streamDestinationEndpointPorts The destination endpoint ports wanted.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginSetDestinationEndpointPorts(String resourceGroupName,
+ String connectionName, String flowName, SetDestinationEndpointPorts streamDestinationEndpointPorts,
+ Context context);
+
+ /**
+ * Set the destination endpoint ports for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param streamDestinationEndpointPorts The destination endpoint ports wanted.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner setDestinationEndpointPorts(String resourceGroupName, String connectionName, String flowName,
+ SetDestinationEndpointPorts streamDestinationEndpointPorts);
+
+ /**
+ * Set the destination endpoint ports for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param streamDestinationEndpointPorts The destination endpoint ports wanted.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner setDestinationEndpointPorts(String resourceGroupName, String connectionName, String flowName,
+ SetDestinationEndpointPorts streamDestinationEndpointPorts, Context context);
+
+ /**
+ * Set the destination endpoints for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param streamDestinationEndpoints Destination endpoints wanted.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginSetDestinationEndpoints(String resourceGroupName,
+ String connectionName, String flowName, SetDestinationEndpoints streamDestinationEndpoints);
+
+ /**
+ * Set the destination endpoints for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param streamDestinationEndpoints Destination endpoints wanted.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginSetDestinationEndpoints(String resourceGroupName,
+ String connectionName, String flowName, SetDestinationEndpoints streamDestinationEndpoints, Context context);
+
+ /**
+ * Set the destination endpoints for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param streamDestinationEndpoints Destination endpoints wanted.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner setDestinationEndpoints(String resourceGroupName, String connectionName, String flowName,
+ SetDestinationEndpoints streamDestinationEndpoints);
+
+ /**
+ * Set the destination endpoints for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param streamDestinationEndpoints Destination endpoints wanted.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner setDestinationEndpoints(String resourceGroupName, String connectionName, String flowName,
+ SetDestinationEndpoints streamDestinationEndpoints, Context context);
+
+ /**
+ * Sets the passphrase of the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param passphrase Passphrase to set.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginSetPassphrase(String resourceGroupName, String connectionName,
+ String flowName, SetStreamPassphrase passphrase);
+
+ /**
+ * Sets the passphrase of the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param passphrase Passphrase to set.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginSetPassphrase(String resourceGroupName, String connectionName,
+ String flowName, SetStreamPassphrase passphrase, Context context);
+
+ /**
+ * Sets the passphrase of the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param passphrase Passphrase to set.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner setPassphrase(String resourceGroupName, String connectionName, String flowName,
+ SetStreamPassphrase passphrase);
+
+ /**
+ * Sets the passphrase of the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param passphrase Passphrase to set.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner setPassphrase(String resourceGroupName, String connectionName, String flowName,
+ SetStreamPassphrase passphrase, Context context);
+
+ /**
+ * Set the source addresses for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param sourceAddresses Source addresses wanted.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginSetSourceAddresses(String resourceGroupName,
+ String connectionName, String flowName, SetSourceAddresses sourceAddresses);
+
+ /**
+ * Set the source addresses for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param sourceAddresses Source addresses wanted.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, FlowInner> beginSetSourceAddresses(String resourceGroupName,
+ String connectionName, String flowName, SetSourceAddresses sourceAddresses, Context context);
+
+ /**
+ * Set the source addresses for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param sourceAddresses Source addresses wanted.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner setSourceAddresses(String resourceGroupName, String connectionName, String flowName,
+ SetSourceAddresses sourceAddresses);
+
+ /**
+ * Set the source addresses for the specified flow.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param flowName The name for the flow to perform the operation on.
+ * @param sourceAddresses Source addresses wanted.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ FlowInner setSourceAddresses(String resourceGroupName, String connectionName, String flowName,
+ SetSourceAddresses sourceAddresses, Context context);
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/OperationsClient.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/OperationsClient.java
new file mode 100644
index 0000000000000..96d697c9a268d
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/OperationsClient.java
@@ -0,0 +1,40 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.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.datatransfer.fluent.models.OperationInner;
+
+/**
+ * An instance of this class provides access to all the operations defined in OperationsClient.
+ */
+public interface OperationsClient {
+ /**
+ * List the operations for the provider.
+ *
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of REST API operations supported by an Azure Resource Provider as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * List the operations for the provider.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return a list of REST API operations supported by an Azure Resource Provider as paginated response with
+ * {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/PipelinesClient.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/PipelinesClient.java
new file mode 100644
index 0000000000000..3a9dbe53befb6
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/PipelinesClient.java
@@ -0,0 +1,524 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.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.management.polling.PollResult;
+import com.azure.core.util.Context;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.datatransfer.fluent.models.ConnectionInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.ListFlowsByPipelineResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.PipelineInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.SchemasListResultInner;
+import com.azure.resourcemanager.datatransfer.models.Action;
+import com.azure.resourcemanager.datatransfer.models.ConnectionIdList;
+import com.azure.resourcemanager.datatransfer.models.PipelinesPatch;
+import com.azure.resourcemanager.datatransfer.models.ResourceBody;
+import com.azure.resourcemanager.datatransfer.models.Schema;
+
+/**
+ * An instance of this class provides access to all the operations defined in PipelinesClient.
+ */
+public interface PipelinesClient {
+ /**
+ * Retrieves the specified Pipeline resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the pipeline resource definition along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByResourceGroupWithResponse(String resourceGroupName, String pipelineName,
+ Context context);
+
+ /**
+ * Retrieves the specified Pipeline resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the pipeline resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PipelineInner getByResourceGroup(String resourceGroupName, String pipelineName);
+
+ /**
+ * Creates a new Pipeline resource or updates an existing one. This operation is asynchronous and returns the
+ * resulting Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param pipeline The request body containing the Pipeline definition.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the pipeline resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, PipelineInner> beginCreateOrUpdate(String resourceGroupName,
+ String pipelineName, PipelineInner pipeline);
+
+ /**
+ * Creates a new Pipeline resource or updates an existing one. This operation is asynchronous and returns the
+ * resulting Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param pipeline The request body containing the Pipeline definition.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the pipeline resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, PipelineInner> beginCreateOrUpdate(String resourceGroupName,
+ String pipelineName, PipelineInner pipeline, Context context);
+
+ /**
+ * Creates a new Pipeline resource or updates an existing one. This operation is asynchronous and returns the
+ * resulting Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param pipeline The request body containing the Pipeline definition.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the pipeline resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PipelineInner createOrUpdate(String resourceGroupName, String pipelineName, PipelineInner pipeline);
+
+ /**
+ * Creates a new Pipeline resource or updates an existing one. This operation is asynchronous and returns the
+ * resulting Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param pipeline The request body containing the Pipeline definition.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the pipeline resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PipelineInner createOrUpdate(String resourceGroupName, String pipelineName, PipelineInner pipeline,
+ Context context);
+
+ /**
+ * Applies partial updates to an existing Pipeline resource. This operation supports patch semantics and returns the
+ * updated Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param pipeline The request body containing the updated Pipeline properties.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the pipeline resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginUpdate(String resourceGroupName, String pipelineName,
+ PipelinesPatch pipeline);
+
+ /**
+ * Applies partial updates to an existing Pipeline resource. This operation supports patch semantics and returns the
+ * updated Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param pipeline The request body containing the updated Pipeline properties.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the pipeline resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginUpdate(String resourceGroupName, String pipelineName,
+ PipelinesPatch pipeline, Context context);
+
+ /**
+ * Applies partial updates to an existing Pipeline resource. This operation supports patch semantics and returns the
+ * updated Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param pipeline The request body containing the updated Pipeline properties.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 update(String resourceGroupName, String pipelineName, PipelinesPatch pipeline);
+
+ /**
+ * Applies partial updates to an existing Pipeline resource. This operation supports patch semantics and returns the
+ * updated Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param pipeline The request body containing the updated Pipeline properties.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 update(String resourceGroupName, String pipelineName, PipelinesPatch pipeline, Context context);
+
+ /**
+ * Deletes the specified Pipeline resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String pipelineName);
+
+ /**
+ * Deletes the specified Pipeline resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of long-running operation.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, Void> beginDelete(String resourceGroupName, String pipelineName, Context context);
+
+ /**
+ * Deletes the specified Pipeline resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 pipelineName);
+
+ /**
+ * Deletes the specified Pipeline resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 pipelineName, Context context);
+
+ /**
+ * Lists all Pipeline resources within the specified resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 of a Pipeline list operation as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Lists all Pipeline resources within the specified resource group.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 of a Pipeline list operation as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
+
+ /**
+ * Lists all Pipeline resources within the current subscription.
+ *
+ * @throws com.azure.core.management.exception.ManagementException 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 of a Pipeline list operation as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listBySubscription();
+
+ /**
+ * Lists all Pipeline resources within the current subscription.
+ *
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException 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 of a Pipeline list operation as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listBySubscription(Context context);
+
+ /**
+ * Approves a pending connection request associated with the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param connection The request body containing the connection to approve.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConnectionInner> beginApproveConnection(String resourceGroupName,
+ String pipelineName, ResourceBody connection);
+
+ /**
+ * Approves a pending connection request associated with the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param connection The request body containing the connection to approve.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConnectionInner> beginApproveConnection(String resourceGroupName,
+ String pipelineName, ResourceBody connection, Context context);
+
+ /**
+ * Approves a pending connection request associated with the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param connection The request body containing the connection to approve.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectionInner approveConnection(String resourceGroupName, String pipelineName, ResourceBody connection);
+
+ /**
+ * Approves a pending connection request associated with the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param connection The request body containing the connection to approve.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectionInner approveConnection(String resourceGroupName, String pipelineName, ResourceBody connection,
+ Context context);
+
+ /**
+ * Executes a privileged or administrative action on the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param action The action to be executed on the Pipeline.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the pipeline resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, PipelineInner> beginExecuteAction(String resourceGroupName,
+ String pipelineName, Action action);
+
+ /**
+ * Executes a privileged or administrative action on the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param action The action to be executed on the Pipeline.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the pipeline resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, PipelineInner> beginExecuteAction(String resourceGroupName,
+ String pipelineName, Action action, Context context);
+
+ /**
+ * Executes a privileged or administrative action on the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param action The action to be executed on the Pipeline.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the pipeline resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PipelineInner executeAction(String resourceGroupName, String pipelineName, Action action);
+
+ /**
+ * Executes a privileged or administrative action on the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param action The action to be executed on the Pipeline.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the pipeline resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ PipelineInner executeAction(String resourceGroupName, String pipelineName, Action action, Context context);
+
+ /**
+ * Lists all Flows associated with the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param connections A list of connection identifiers used to filter the Flows to be retrieved.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an array of flow resources along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listWithResponse(String resourceGroupName, String pipelineName,
+ ConnectionIdList connections, Context context);
+
+ /**
+ * Lists all Flows associated with the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return an array of flow resources.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ListFlowsByPipelineResultInner list(String resourceGroupName, String pipelineName);
+
+ /**
+ * Lists the schemas associated with a specific connection in the Pipeline. This operation has reached end of life
+ * support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param schema The schema(s) to retrieve for the specified connection.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the schemas list result along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listSchemasListWithResponse(String resourceGroupName, String pipelineName,
+ Schema schema, Context context);
+
+ /**
+ * Lists the schemas associated with a specific connection in the Pipeline. This operation has reached end of life
+ * support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param schema The schema(s) to retrieve for the specified connection.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the schemas list result.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ SchemasListResultInner listSchemasList(String resourceGroupName, String pipelineName, Schema schema);
+
+ /**
+ * Rejects a pending connection request associated with the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param connection The request body containing the connection to reject.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConnectionInner> beginRejectConnection(String resourceGroupName,
+ String pipelineName, ResourceBody connection);
+
+ /**
+ * Rejects a pending connection request associated with the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param connection The request body containing the connection to reject.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ConnectionInner> beginRejectConnection(String resourceGroupName,
+ String pipelineName, ResourceBody connection, Context context);
+
+ /**
+ * Rejects a pending connection request associated with the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param connection The request body containing the connection to reject.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectionInner rejectConnection(String resourceGroupName, String pipelineName, ResourceBody connection);
+
+ /**
+ * Rejects a pending connection request associated with the specified Pipeline.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param pipelineName The name of the pipeline on which to operate.
+ * @param connection The request body containing the connection to reject.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ConnectionInner rejectConnection(String resourceGroupName, String pipelineName, ResourceBody connection,
+ Context context);
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/ConnectionInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/ConnectionInner.java
new file mode 100644
index 0000000000000..5eacbd36117b3
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/ConnectionInner.java
@@ -0,0 +1,210 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.ConnectionProperties;
+import com.azure.resourcemanager.datatransfer.models.ManagedServiceIdentity;
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * The connection resource definition.
+ */
+@Fluent
+public final class ConnectionInner extends Resource {
+ /*
+ * Properties of connection
+ */
+ private ConnectionProperties properties;
+
+ /*
+ * The managed service identities assigned to this resource.
+ */
+ private ManagedServiceIdentity identity;
+
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ private SystemData systemData;
+
+ /*
+ * The type of the resource.
+ */
+ private String type;
+
+ /*
+ * The name of the resource.
+ */
+ private String name;
+
+ /*
+ * Fully qualified resource Id for the resource.
+ */
+ private String id;
+
+ /**
+ * Creates an instance of ConnectionInner class.
+ */
+ public ConnectionInner() {
+ }
+
+ /**
+ * Get the properties property: Properties of connection.
+ *
+ * @return the properties value.
+ */
+ public ConnectionProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: Properties of connection.
+ *
+ * @param properties the properties value to set.
+ * @return the ConnectionInner object itself.
+ */
+ public ConnectionInner withProperties(ConnectionProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Get the identity property: The managed service identities assigned to this resource.
+ *
+ * @return the identity value.
+ */
+ public ManagedServiceIdentity identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: The managed service identities assigned to this resource.
+ *
+ * @param identity the identity value to set.
+ * @return the ConnectionInner object itself.
+ */
+ public ConnectionInner withIdentity(ManagedServiceIdentity identity) {
+ this.identity = identity;
+ return this;
+ }
+
+ /**
+ * Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the type property: The type of the resource.
+ *
+ * @return the type value.
+ */
+ @Override
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ @Override
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the id property: Fully qualified resource Id for the resource.
+ *
+ * @return the id value.
+ */
+ @Override
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public ConnectionInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public ConnectionInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeStringField("location", location());
+ jsonWriter.writeMapField("tags", tags(), (writer, element) -> writer.writeString(element));
+ jsonWriter.writeJsonField("properties", this.properties);
+ jsonWriter.writeJsonField("identity", this.identity);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ConnectionInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ConnectionInner if the JsonReader was pointing to an instance of it, or null if it was
+ * pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the ConnectionInner.
+ */
+ public static ConnectionInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ConnectionInner deserializedConnectionInner = new ConnectionInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("id".equals(fieldName)) {
+ deserializedConnectionInner.id = reader.getString();
+ } else if ("name".equals(fieldName)) {
+ deserializedConnectionInner.name = reader.getString();
+ } else if ("type".equals(fieldName)) {
+ deserializedConnectionInner.type = reader.getString();
+ } else if ("location".equals(fieldName)) {
+ deserializedConnectionInner.withLocation(reader.getString());
+ } else if ("tags".equals(fieldName)) {
+ Map tags = reader.readMap(reader1 -> reader1.getString());
+ deserializedConnectionInner.withTags(tags);
+ } else if ("properties".equals(fieldName)) {
+ deserializedConnectionInner.properties = ConnectionProperties.fromJson(reader);
+ } else if ("identity".equals(fieldName)) {
+ deserializedConnectionInner.identity = ManagedServiceIdentity.fromJson(reader);
+ } else if ("systemData".equals(fieldName)) {
+ deserializedConnectionInner.systemData = SystemData.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedConnectionInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/FlowInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/FlowInner.java
new file mode 100644
index 0000000000000..9e0194365262e
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/FlowInner.java
@@ -0,0 +1,238 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.ManagedServiceIdentity;
+import com.azure.resourcemanager.datatransfer.models.Plan;
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * The flow resource definition.
+ */
+@Fluent
+public final class FlowInner extends Resource {
+ /*
+ * Properties of flow
+ */
+ private FlowPropertiesInner properties;
+
+ /*
+ * Details of the resource plan.
+ */
+ private Plan plan;
+
+ /*
+ * The managed service identities assigned to this resource.
+ */
+ private ManagedServiceIdentity identity;
+
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ private SystemData systemData;
+
+ /*
+ * The type of the resource.
+ */
+ private String type;
+
+ /*
+ * The name of the resource.
+ */
+ private String name;
+
+ /*
+ * Fully qualified resource Id for the resource.
+ */
+ private String id;
+
+ /**
+ * Creates an instance of FlowInner class.
+ */
+ public FlowInner() {
+ }
+
+ /**
+ * Get the properties property: Properties of flow.
+ *
+ * @return the properties value.
+ */
+ public FlowPropertiesInner properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: Properties of flow.
+ *
+ * @param properties the properties value to set.
+ * @return the FlowInner object itself.
+ */
+ public FlowInner withProperties(FlowPropertiesInner properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Get the plan property: Details of the resource plan.
+ *
+ * @return the plan value.
+ */
+ public Plan plan() {
+ return this.plan;
+ }
+
+ /**
+ * Set the plan property: Details of the resource plan.
+ *
+ * @param plan the plan value to set.
+ * @return the FlowInner object itself.
+ */
+ public FlowInner withPlan(Plan plan) {
+ this.plan = plan;
+ return this;
+ }
+
+ /**
+ * Get the identity property: The managed service identities assigned to this resource.
+ *
+ * @return the identity value.
+ */
+ public ManagedServiceIdentity identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: The managed service identities assigned to this resource.
+ *
+ * @param identity the identity value to set.
+ * @return the FlowInner object itself.
+ */
+ public FlowInner withIdentity(ManagedServiceIdentity identity) {
+ this.identity = identity;
+ return this;
+ }
+
+ /**
+ * Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the type property: The type of the resource.
+ *
+ * @return the type value.
+ */
+ @Override
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ @Override
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the id property: Fully qualified resource Id for the resource.
+ *
+ * @return the id value.
+ */
+ @Override
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public FlowInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public FlowInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeStringField("location", location());
+ jsonWriter.writeMapField("tags", tags(), (writer, element) -> writer.writeString(element));
+ jsonWriter.writeJsonField("properties", this.properties);
+ jsonWriter.writeJsonField("plan", this.plan);
+ jsonWriter.writeJsonField("identity", this.identity);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of FlowInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of FlowInner if the JsonReader was pointing to an instance of it, or null if it was pointing
+ * to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the FlowInner.
+ */
+ public static FlowInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ FlowInner deserializedFlowInner = new FlowInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("id".equals(fieldName)) {
+ deserializedFlowInner.id = reader.getString();
+ } else if ("name".equals(fieldName)) {
+ deserializedFlowInner.name = reader.getString();
+ } else if ("type".equals(fieldName)) {
+ deserializedFlowInner.type = reader.getString();
+ } else if ("location".equals(fieldName)) {
+ deserializedFlowInner.withLocation(reader.getString());
+ } else if ("tags".equals(fieldName)) {
+ Map tags = reader.readMap(reader1 -> reader1.getString());
+ deserializedFlowInner.withTags(tags);
+ } else if ("properties".equals(fieldName)) {
+ deserializedFlowInner.properties = FlowPropertiesInner.fromJson(reader);
+ } else if ("plan".equals(fieldName)) {
+ deserializedFlowInner.plan = Plan.fromJson(reader);
+ } else if ("identity".equals(fieldName)) {
+ deserializedFlowInner.identity = ManagedServiceIdentity.fromJson(reader);
+ } else if ("systemData".equals(fieldName)) {
+ deserializedFlowInner.systemData = SystemData.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedFlowInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/FlowProfileInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/FlowProfileInner.java
new file mode 100644
index 0000000000000..0b74f21246a01
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/FlowProfileInner.java
@@ -0,0 +1,213 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.FlowProfileProperties;
+import com.azure.resourcemanager.datatransfer.models.ManagedServiceIdentity;
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * Represents a FlowProfile Azure resource, which defines a data replication scenario with a specific data
+ * classification and a set of configurable policy rules.
+ */
+@Fluent
+public final class FlowProfileInner extends Resource {
+ /*
+ * The set of configuration properties that define the behavior and rules of the FlowProfile.
+ */
+ private FlowProfileProperties properties;
+
+ /*
+ * The managed service identities assigned to this resource.
+ */
+ private ManagedServiceIdentity identity;
+
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ private SystemData systemData;
+
+ /*
+ * The type of the resource.
+ */
+ private String type;
+
+ /*
+ * The name of the resource.
+ */
+ private String name;
+
+ /*
+ * Fully qualified resource Id for the resource.
+ */
+ private String id;
+
+ /**
+ * Creates an instance of FlowProfileInner class.
+ */
+ public FlowProfileInner() {
+ }
+
+ /**
+ * Get the properties property: The set of configuration properties that define the behavior and rules of the
+ * FlowProfile.
+ *
+ * @return the properties value.
+ */
+ public FlowProfileProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: The set of configuration properties that define the behavior and rules of the
+ * FlowProfile.
+ *
+ * @param properties the properties value to set.
+ * @return the FlowProfileInner object itself.
+ */
+ public FlowProfileInner withProperties(FlowProfileProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Get the identity property: The managed service identities assigned to this resource.
+ *
+ * @return the identity value.
+ */
+ public ManagedServiceIdentity identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: The managed service identities assigned to this resource.
+ *
+ * @param identity the identity value to set.
+ * @return the FlowProfileInner object itself.
+ */
+ public FlowProfileInner withIdentity(ManagedServiceIdentity identity) {
+ this.identity = identity;
+ return this;
+ }
+
+ /**
+ * Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the type property: The type of the resource.
+ *
+ * @return the type value.
+ */
+ @Override
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ @Override
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the id property: Fully qualified resource Id for the resource.
+ *
+ * @return the id value.
+ */
+ @Override
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public FlowProfileInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public FlowProfileInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeStringField("location", location());
+ jsonWriter.writeMapField("tags", tags(), (writer, element) -> writer.writeString(element));
+ jsonWriter.writeJsonField("properties", this.properties);
+ jsonWriter.writeJsonField("identity", this.identity);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of FlowProfileInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of FlowProfileInner if the JsonReader was pointing to an instance of it, or null if it was
+ * pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the FlowProfileInner.
+ */
+ public static FlowProfileInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ FlowProfileInner deserializedFlowProfileInner = new FlowProfileInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("id".equals(fieldName)) {
+ deserializedFlowProfileInner.id = reader.getString();
+ } else if ("name".equals(fieldName)) {
+ deserializedFlowProfileInner.name = reader.getString();
+ } else if ("type".equals(fieldName)) {
+ deserializedFlowProfileInner.type = reader.getString();
+ } else if ("location".equals(fieldName)) {
+ deserializedFlowProfileInner.withLocation(reader.getString());
+ } else if ("tags".equals(fieldName)) {
+ Map tags = reader.readMap(reader1 -> reader1.getString());
+ deserializedFlowProfileInner.withTags(tags);
+ } else if ("properties".equals(fieldName)) {
+ deserializedFlowProfileInner.properties = FlowProfileProperties.fromJson(reader);
+ } else if ("identity".equals(fieldName)) {
+ deserializedFlowProfileInner.identity = ManagedServiceIdentity.fromJson(reader);
+ } else if ("systemData".equals(fieldName)) {
+ deserializedFlowProfileInner.systemData = SystemData.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedFlowProfileInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/FlowProfilesListResultInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/FlowProfilesListResultInner.java
new file mode 100644
index 0000000000000..a0713f55f5e04
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/FlowProfilesListResultInner.java
@@ -0,0 +1,78 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.FlowProfileMetadata;
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * The flow profiles list result.
+ */
+@Immutable
+public final class FlowProfilesListResultInner implements JsonSerializable {
+ /*
+ * FlowProfileMetadata array.
+ */
+ private List value;
+
+ /**
+ * Creates an instance of FlowProfilesListResultInner class.
+ */
+ private FlowProfilesListResultInner() {
+ }
+
+ /**
+ * Get the value property: FlowProfileMetadata array.
+ *
+ * @return the value value.
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeArrayField("value", this.value, (writer, element) -> writer.writeJson(element));
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of FlowProfilesListResultInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of FlowProfilesListResultInner if the JsonReader was pointing to an instance of it, or null
+ * if it was pointing to JSON null.
+ * @throws IOException If an error occurs while reading the FlowProfilesListResultInner.
+ */
+ public static FlowProfilesListResultInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ FlowProfilesListResultInner deserializedFlowProfilesListResultInner = new FlowProfilesListResultInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("value".equals(fieldName)) {
+ List value
+ = reader.readArray(reader1 -> FlowProfileMetadata.fromJson(reader1));
+ deserializedFlowProfilesListResultInner.value = value;
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedFlowProfilesListResultInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/FlowPropertiesInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/FlowPropertiesInner.java
new file mode 100644
index 0000000000000..9f6ac60725690
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/FlowPropertiesInner.java
@@ -0,0 +1,900 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.ApiFlowOptions;
+import com.azure.resourcemanager.datatransfer.models.DataClass;
+import com.azure.resourcemanager.datatransfer.models.DataType;
+import com.azure.resourcemanager.datatransfer.models.FlowProfileMetadata;
+import com.azure.resourcemanager.datatransfer.models.FlowStatus;
+import com.azure.resourcemanager.datatransfer.models.FlowType;
+import com.azure.resourcemanager.datatransfer.models.ForceDisabledStatus;
+import com.azure.resourcemanager.datatransfer.models.LinkStatus;
+import com.azure.resourcemanager.datatransfer.models.MessagingOptions;
+import com.azure.resourcemanager.datatransfer.models.ProvisioningState;
+import com.azure.resourcemanager.datatransfer.models.Schema;
+import com.azure.resourcemanager.datatransfer.models.SelectedResource;
+import com.azure.resourcemanager.datatransfer.models.StreamProtocol;
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * Properties of flow.
+ */
+@Fluent
+public final class FlowPropertiesInner implements JsonSerializable {
+ /*
+ * The connection associated with this flow
+ */
+ private SelectedResource connection;
+
+ /*
+ * Dataflow GUID associated with this flow
+ */
+ private String flowId;
+
+ /*
+ * URI to a Key Vault Secret containing a SAS token.
+ */
+ private String keyVaultUri;
+
+ /*
+ * Link status of the current flow
+ */
+ private LinkStatus linkStatus;
+
+ /*
+ * Resource ID of the linked flow
+ */
+ private String linkedFlowId;
+
+ /*
+ * Status of the current flow
+ */
+ private FlowStatus status;
+
+ /*
+ * Force disablement status of the current flow
+ */
+ private List forceDisabledStatus;
+
+ /*
+ * Storage Account
+ */
+ private String storageAccountName;
+
+ /*
+ * Storage Account ID
+ */
+ private String storageAccountId;
+
+ /*
+ * Storage Container Name
+ */
+ private String storageContainerName;
+
+ /*
+ * Storage Table Name
+ */
+ private String storageTableName;
+
+ /*
+ * Service Bus Queue ID
+ */
+ private String serviceBusQueueId;
+
+ /*
+ * Type of FlowProfile to use for transfer via the flow.
+ */
+ private FlowProfileMetadata flowProfile;
+
+ /*
+ * The Flow's data class.
+ */
+ private DataClass flowDataType;
+
+ /*
+ * The flow type for this flow. The property has reached end of life support starting version 2025-05-30-preview.
+ * Please create and use a FlowProfile resource instead.
+ */
+ private FlowType flowType;
+
+ /*
+ * Type of data to transfer via the flow. The property has reached end of life support starting version
+ * 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ */
+ private DataType dataType;
+
+ /*
+ * Provisioning state of the flow
+ */
+ private ProvisioningState provisioningState;
+
+ /*
+ * The policies for this flow. The property has reached end of life support starting version 2025-05-30-preview.
+ * Please create and use a FlowProfile resource instead.
+ */
+ private List policies;
+
+ /*
+ * The selected schema for this flow. The property has reached end of life support starting version
+ * 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ */
+ private Schema schema;
+
+ /*
+ * The messaging options for this flow
+ */
+ private MessagingOptions messagingOptions;
+
+ /*
+ * The API Flow configuration options for Azure Data Transfer API Flow type.
+ */
+ private ApiFlowOptions apiFlowOptions;
+
+ /*
+ * The URI to the customer managed key for this flow
+ */
+ private String customerManagedKeyVaultUri;
+
+ /*
+ * The flow stream identifier
+ */
+ private String streamId;
+
+ /*
+ * The protocol of the stream
+ */
+ private StreamProtocol streamProtocol;
+
+ /*
+ * The latency of the stream in milliseconds
+ */
+ private Long streamLatency;
+
+ /*
+ * The passphrase used for SRT streams
+ */
+ private String passphrase;
+
+ /*
+ * The source IP address and CIDR ranges of the stream
+ */
+ private StreamSourceAddressesInner sourceAddresses;
+
+ /*
+ * The destination endpoints of the stream
+ */
+ private List destinationEndpoints;
+
+ /*
+ * The destination endpoint ports of the stream
+ */
+ private List destinationEndpointPorts;
+
+ /*
+ * Event Hub ID
+ */
+ private String eventHubId;
+
+ /*
+ * Event Hub Consumer Group
+ */
+ private String consumerGroup;
+
+ /**
+ * Creates an instance of FlowPropertiesInner class.
+ */
+ public FlowPropertiesInner() {
+ }
+
+ /**
+ * Get the connection property: The connection associated with this flow.
+ *
+ * @return the connection value.
+ */
+ public SelectedResource connection() {
+ return this.connection;
+ }
+
+ /**
+ * Set the connection property: The connection associated with this flow.
+ *
+ * @param connection the connection value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withConnection(SelectedResource connection) {
+ this.connection = connection;
+ return this;
+ }
+
+ /**
+ * Get the flowId property: Dataflow GUID associated with this flow.
+ *
+ * @return the flowId value.
+ */
+ public String flowId() {
+ return this.flowId;
+ }
+
+ /**
+ * Get the keyVaultUri property: URI to a Key Vault Secret containing a SAS token.
+ *
+ * @return the keyVaultUri value.
+ */
+ public String keyVaultUri() {
+ return this.keyVaultUri;
+ }
+
+ /**
+ * Set the keyVaultUri property: URI to a Key Vault Secret containing a SAS token.
+ *
+ * @param keyVaultUri the keyVaultUri value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withKeyVaultUri(String keyVaultUri) {
+ this.keyVaultUri = keyVaultUri;
+ return this;
+ }
+
+ /**
+ * Get the linkStatus property: Link status of the current flow.
+ *
+ * @return the linkStatus value.
+ */
+ public LinkStatus linkStatus() {
+ return this.linkStatus;
+ }
+
+ /**
+ * Get the linkedFlowId property: Resource ID of the linked flow.
+ *
+ * @return the linkedFlowId value.
+ */
+ public String linkedFlowId() {
+ return this.linkedFlowId;
+ }
+
+ /**
+ * Get the status property: Status of the current flow.
+ *
+ * @return the status value.
+ */
+ public FlowStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: Status of the current flow.
+ *
+ * @param status the status value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withStatus(FlowStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the forceDisabledStatus property: Force disablement status of the current flow.
+ *
+ * @return the forceDisabledStatus value.
+ */
+ public List forceDisabledStatus() {
+ return this.forceDisabledStatus;
+ }
+
+ /**
+ * Get the storageAccountName property: Storage Account.
+ *
+ * @return the storageAccountName value.
+ */
+ public String storageAccountName() {
+ return this.storageAccountName;
+ }
+
+ /**
+ * Set the storageAccountName property: Storage Account.
+ *
+ * @param storageAccountName the storageAccountName value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withStorageAccountName(String storageAccountName) {
+ this.storageAccountName = storageAccountName;
+ return this;
+ }
+
+ /**
+ * Get the storageAccountId property: Storage Account ID.
+ *
+ * @return the storageAccountId value.
+ */
+ public String storageAccountId() {
+ return this.storageAccountId;
+ }
+
+ /**
+ * Set the storageAccountId property: Storage Account ID.
+ *
+ * @param storageAccountId the storageAccountId value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withStorageAccountId(String storageAccountId) {
+ this.storageAccountId = storageAccountId;
+ return this;
+ }
+
+ /**
+ * Get the storageContainerName property: Storage Container Name.
+ *
+ * @return the storageContainerName value.
+ */
+ public String storageContainerName() {
+ return this.storageContainerName;
+ }
+
+ /**
+ * Set the storageContainerName property: Storage Container Name.
+ *
+ * @param storageContainerName the storageContainerName value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withStorageContainerName(String storageContainerName) {
+ this.storageContainerName = storageContainerName;
+ return this;
+ }
+
+ /**
+ * Get the storageTableName property: Storage Table Name.
+ *
+ * @return the storageTableName value.
+ */
+ public String storageTableName() {
+ return this.storageTableName;
+ }
+
+ /**
+ * Set the storageTableName property: Storage Table Name.
+ *
+ * @param storageTableName the storageTableName value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withStorageTableName(String storageTableName) {
+ this.storageTableName = storageTableName;
+ return this;
+ }
+
+ /**
+ * Get the serviceBusQueueId property: Service Bus Queue ID.
+ *
+ * @return the serviceBusQueueId value.
+ */
+ public String serviceBusQueueId() {
+ return this.serviceBusQueueId;
+ }
+
+ /**
+ * Set the serviceBusQueueId property: Service Bus Queue ID.
+ *
+ * @param serviceBusQueueId the serviceBusQueueId value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withServiceBusQueueId(String serviceBusQueueId) {
+ this.serviceBusQueueId = serviceBusQueueId;
+ return this;
+ }
+
+ /**
+ * Get the flowProfile property: Type of FlowProfile to use for transfer via the flow.
+ *
+ * @return the flowProfile value.
+ */
+ public FlowProfileMetadata flowProfile() {
+ return this.flowProfile;
+ }
+
+ /**
+ * Set the flowProfile property: Type of FlowProfile to use for transfer via the flow.
+ *
+ * @param flowProfile the flowProfile value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withFlowProfile(FlowProfileMetadata flowProfile) {
+ this.flowProfile = flowProfile;
+ return this;
+ }
+
+ /**
+ * Get the flowDataType property: The Flow's data class.
+ *
+ * @return the flowDataType value.
+ */
+ public DataClass flowDataType() {
+ return this.flowDataType;
+ }
+
+ /**
+ * Set the flowDataType property: The Flow's data class.
+ *
+ * @param flowDataType the flowDataType value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withFlowDataType(DataClass flowDataType) {
+ this.flowDataType = flowDataType;
+ return this;
+ }
+
+ /**
+ * Get the flowType property: The flow type for this flow. The property has reached end of life support starting
+ * version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @return the flowType value.
+ */
+ public FlowType flowType() {
+ return this.flowType;
+ }
+
+ /**
+ * Set the flowType property: The flow type for this flow. The property has reached end of life support starting
+ * version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @param flowType the flowType value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withFlowType(FlowType flowType) {
+ this.flowType = flowType;
+ return this;
+ }
+
+ /**
+ * Get the dataType property: Type of data to transfer via the flow. The property has reached end of life support
+ * starting version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @return the dataType value.
+ */
+ public DataType dataType() {
+ return this.dataType;
+ }
+
+ /**
+ * Set the dataType property: Type of data to transfer via the flow. The property has reached end of life support
+ * starting version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @param dataType the dataType value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withDataType(DataType dataType) {
+ this.dataType = dataType;
+ return this;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the flow.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the policies property: The policies for this flow. The property has reached end of life support starting
+ * version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @return the policies value.
+ */
+ public List policies() {
+ return this.policies;
+ }
+
+ /**
+ * Set the policies property: The policies for this flow. The property has reached end of life support starting
+ * version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @param policies the policies value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withPolicies(List policies) {
+ this.policies = policies;
+ return this;
+ }
+
+ /**
+ * Get the schema property: The selected schema for this flow. The property has reached end of life support starting
+ * version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @return the schema value.
+ */
+ public Schema schema() {
+ return this.schema;
+ }
+
+ /**
+ * Set the schema property: The selected schema for this flow. The property has reached end of life support starting
+ * version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @param schema the schema value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withSchema(Schema schema) {
+ this.schema = schema;
+ return this;
+ }
+
+ /**
+ * Get the messagingOptions property: The messaging options for this flow.
+ *
+ * @return the messagingOptions value.
+ */
+ public MessagingOptions messagingOptions() {
+ return this.messagingOptions;
+ }
+
+ /**
+ * Set the messagingOptions property: The messaging options for this flow.
+ *
+ * @param messagingOptions the messagingOptions value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withMessagingOptions(MessagingOptions messagingOptions) {
+ this.messagingOptions = messagingOptions;
+ return this;
+ }
+
+ /**
+ * Get the apiFlowOptions property: The API Flow configuration options for Azure Data Transfer API Flow type.
+ *
+ * @return the apiFlowOptions value.
+ */
+ public ApiFlowOptions apiFlowOptions() {
+ return this.apiFlowOptions;
+ }
+
+ /**
+ * Set the apiFlowOptions property: The API Flow configuration options for Azure Data Transfer API Flow type.
+ *
+ * @param apiFlowOptions the apiFlowOptions value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withApiFlowOptions(ApiFlowOptions apiFlowOptions) {
+ this.apiFlowOptions = apiFlowOptions;
+ return this;
+ }
+
+ /**
+ * Get the customerManagedKeyVaultUri property: The URI to the customer managed key for this flow.
+ *
+ * @return the customerManagedKeyVaultUri value.
+ */
+ public String customerManagedKeyVaultUri() {
+ return this.customerManagedKeyVaultUri;
+ }
+
+ /**
+ * Set the customerManagedKeyVaultUri property: The URI to the customer managed key for this flow.
+ *
+ * @param customerManagedKeyVaultUri the customerManagedKeyVaultUri value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withCustomerManagedKeyVaultUri(String customerManagedKeyVaultUri) {
+ this.customerManagedKeyVaultUri = customerManagedKeyVaultUri;
+ return this;
+ }
+
+ /**
+ * Get the streamId property: The flow stream identifier.
+ *
+ * @return the streamId value.
+ */
+ public String streamId() {
+ return this.streamId;
+ }
+
+ /**
+ * Set the streamId property: The flow stream identifier.
+ *
+ * @param streamId the streamId value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withStreamId(String streamId) {
+ this.streamId = streamId;
+ return this;
+ }
+
+ /**
+ * Get the streamProtocol property: The protocol of the stream.
+ *
+ * @return the streamProtocol value.
+ */
+ public StreamProtocol streamProtocol() {
+ return this.streamProtocol;
+ }
+
+ /**
+ * Set the streamProtocol property: The protocol of the stream.
+ *
+ * @param streamProtocol the streamProtocol value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withStreamProtocol(StreamProtocol streamProtocol) {
+ this.streamProtocol = streamProtocol;
+ return this;
+ }
+
+ /**
+ * Get the streamLatency property: The latency of the stream in milliseconds.
+ *
+ * @return the streamLatency value.
+ */
+ public Long streamLatency() {
+ return this.streamLatency;
+ }
+
+ /**
+ * Set the streamLatency property: The latency of the stream in milliseconds.
+ *
+ * @param streamLatency the streamLatency value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withStreamLatency(Long streamLatency) {
+ this.streamLatency = streamLatency;
+ return this;
+ }
+
+ /**
+ * Get the passphrase property: The passphrase used for SRT streams.
+ *
+ * @return the passphrase value.
+ */
+ public String passphrase() {
+ return this.passphrase;
+ }
+
+ /**
+ * Set the passphrase property: The passphrase used for SRT streams.
+ *
+ * @param passphrase the passphrase value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withPassphrase(String passphrase) {
+ this.passphrase = passphrase;
+ return this;
+ }
+
+ /**
+ * Get the sourceAddresses property: The source IP address and CIDR ranges of the stream.
+ *
+ * @return the sourceAddresses value.
+ */
+ public StreamSourceAddressesInner sourceAddresses() {
+ return this.sourceAddresses;
+ }
+
+ /**
+ * Set the sourceAddresses property: The source IP address and CIDR ranges of the stream.
+ *
+ * @param sourceAddresses the sourceAddresses value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withSourceAddresses(StreamSourceAddressesInner sourceAddresses) {
+ this.sourceAddresses = sourceAddresses;
+ return this;
+ }
+
+ /**
+ * Get the destinationEndpoints property: The destination endpoints of the stream.
+ *
+ * @return the destinationEndpoints value.
+ */
+ public List destinationEndpoints() {
+ return this.destinationEndpoints;
+ }
+
+ /**
+ * Set the destinationEndpoints property: The destination endpoints of the stream.
+ *
+ * @param destinationEndpoints the destinationEndpoints value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withDestinationEndpoints(List destinationEndpoints) {
+ this.destinationEndpoints = destinationEndpoints;
+ return this;
+ }
+
+ /**
+ * Get the destinationEndpointPorts property: The destination endpoint ports of the stream.
+ *
+ * @return the destinationEndpointPorts value.
+ */
+ public List destinationEndpointPorts() {
+ return this.destinationEndpointPorts;
+ }
+
+ /**
+ * Set the destinationEndpointPorts property: The destination endpoint ports of the stream.
+ *
+ * @param destinationEndpointPorts the destinationEndpointPorts value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withDestinationEndpointPorts(List destinationEndpointPorts) {
+ this.destinationEndpointPorts = destinationEndpointPorts;
+ return this;
+ }
+
+ /**
+ * Get the eventHubId property: Event Hub ID.
+ *
+ * @return the eventHubId value.
+ */
+ public String eventHubId() {
+ return this.eventHubId;
+ }
+
+ /**
+ * Set the eventHubId property: Event Hub ID.
+ *
+ * @param eventHubId the eventHubId value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withEventHubId(String eventHubId) {
+ this.eventHubId = eventHubId;
+ return this;
+ }
+
+ /**
+ * Get the consumerGroup property: Event Hub Consumer Group.
+ *
+ * @return the consumerGroup value.
+ */
+ public String consumerGroup() {
+ return this.consumerGroup;
+ }
+
+ /**
+ * Set the consumerGroup property: Event Hub Consumer Group.
+ *
+ * @param consumerGroup the consumerGroup value to set.
+ * @return the FlowPropertiesInner object itself.
+ */
+ public FlowPropertiesInner withConsumerGroup(String consumerGroup) {
+ this.consumerGroup = consumerGroup;
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeJsonField("connection", this.connection);
+ jsonWriter.writeStringField("keyVaultUri", this.keyVaultUri);
+ jsonWriter.writeStringField("status", this.status == null ? null : this.status.toString());
+ jsonWriter.writeStringField("storageAccountName", this.storageAccountName);
+ jsonWriter.writeStringField("storageAccountId", this.storageAccountId);
+ jsonWriter.writeStringField("storageContainerName", this.storageContainerName);
+ jsonWriter.writeStringField("storageTableName", this.storageTableName);
+ jsonWriter.writeStringField("serviceBusQueueId", this.serviceBusQueueId);
+ jsonWriter.writeJsonField("flowProfile", this.flowProfile);
+ jsonWriter.writeStringField("flowDataType", this.flowDataType == null ? null : this.flowDataType.toString());
+ jsonWriter.writeStringField("flowType", this.flowType == null ? null : this.flowType.toString());
+ jsonWriter.writeStringField("dataType", this.dataType == null ? null : this.dataType.toString());
+ jsonWriter.writeArrayField("policies", this.policies, (writer, element) -> writer.writeString(element));
+ jsonWriter.writeJsonField("schema", this.schema);
+ jsonWriter.writeJsonField("messagingOptions", this.messagingOptions);
+ jsonWriter.writeJsonField("apiFlowOptions", this.apiFlowOptions);
+ jsonWriter.writeStringField("customerManagedKeyVaultUri", this.customerManagedKeyVaultUri);
+ jsonWriter.writeStringField("streamId", this.streamId);
+ jsonWriter.writeStringField("streamProtocol",
+ this.streamProtocol == null ? null : this.streamProtocol.toString());
+ jsonWriter.writeNumberField("streamLatency", this.streamLatency);
+ jsonWriter.writeStringField("passphrase", this.passphrase);
+ jsonWriter.writeJsonField("sourceAddresses", this.sourceAddresses);
+ jsonWriter.writeArrayField("destinationEndpoints", this.destinationEndpoints,
+ (writer, element) -> writer.writeString(element));
+ jsonWriter.writeArrayField("destinationEndpointPorts", this.destinationEndpointPorts,
+ (writer, element) -> writer.writeLong(element));
+ jsonWriter.writeStringField("eventHubId", this.eventHubId);
+ jsonWriter.writeStringField("consumerGroup", this.consumerGroup);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of FlowPropertiesInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of FlowPropertiesInner if the JsonReader was pointing to an instance of it, or null if it was
+ * pointing to JSON null.
+ * @throws IOException If an error occurs while reading the FlowPropertiesInner.
+ */
+ public static FlowPropertiesInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ FlowPropertiesInner deserializedFlowPropertiesInner = new FlowPropertiesInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("connection".equals(fieldName)) {
+ deserializedFlowPropertiesInner.connection = SelectedResource.fromJson(reader);
+ } else if ("flowId".equals(fieldName)) {
+ deserializedFlowPropertiesInner.flowId = reader.getString();
+ } else if ("keyVaultUri".equals(fieldName)) {
+ deserializedFlowPropertiesInner.keyVaultUri = reader.getString();
+ } else if ("linkStatus".equals(fieldName)) {
+ deserializedFlowPropertiesInner.linkStatus = LinkStatus.fromString(reader.getString());
+ } else if ("linkedFlowId".equals(fieldName)) {
+ deserializedFlowPropertiesInner.linkedFlowId = reader.getString();
+ } else if ("status".equals(fieldName)) {
+ deserializedFlowPropertiesInner.status = FlowStatus.fromString(reader.getString());
+ } else if ("forceDisabledStatus".equals(fieldName)) {
+ List forceDisabledStatus
+ = reader.readArray(reader1 -> ForceDisabledStatus.fromString(reader1.getString()));
+ deserializedFlowPropertiesInner.forceDisabledStatus = forceDisabledStatus;
+ } else if ("storageAccountName".equals(fieldName)) {
+ deserializedFlowPropertiesInner.storageAccountName = reader.getString();
+ } else if ("storageAccountId".equals(fieldName)) {
+ deserializedFlowPropertiesInner.storageAccountId = reader.getString();
+ } else if ("storageContainerName".equals(fieldName)) {
+ deserializedFlowPropertiesInner.storageContainerName = reader.getString();
+ } else if ("storageTableName".equals(fieldName)) {
+ deserializedFlowPropertiesInner.storageTableName = reader.getString();
+ } else if ("serviceBusQueueId".equals(fieldName)) {
+ deserializedFlowPropertiesInner.serviceBusQueueId = reader.getString();
+ } else if ("flowProfile".equals(fieldName)) {
+ deserializedFlowPropertiesInner.flowProfile = FlowProfileMetadata.fromJson(reader);
+ } else if ("flowDataType".equals(fieldName)) {
+ deserializedFlowPropertiesInner.flowDataType = DataClass.fromString(reader.getString());
+ } else if ("flowType".equals(fieldName)) {
+ deserializedFlowPropertiesInner.flowType = FlowType.fromString(reader.getString());
+ } else if ("dataType".equals(fieldName)) {
+ deserializedFlowPropertiesInner.dataType = DataType.fromString(reader.getString());
+ } else if ("provisioningState".equals(fieldName)) {
+ deserializedFlowPropertiesInner.provisioningState
+ = ProvisioningState.fromString(reader.getString());
+ } else if ("policies".equals(fieldName)) {
+ List policies = reader.readArray(reader1 -> reader1.getString());
+ deserializedFlowPropertiesInner.policies = policies;
+ } else if ("schema".equals(fieldName)) {
+ deserializedFlowPropertiesInner.schema = Schema.fromJson(reader);
+ } else if ("messagingOptions".equals(fieldName)) {
+ deserializedFlowPropertiesInner.messagingOptions = MessagingOptions.fromJson(reader);
+ } else if ("apiFlowOptions".equals(fieldName)) {
+ deserializedFlowPropertiesInner.apiFlowOptions = ApiFlowOptions.fromJson(reader);
+ } else if ("customerManagedKeyVaultUri".equals(fieldName)) {
+ deserializedFlowPropertiesInner.customerManagedKeyVaultUri = reader.getString();
+ } else if ("streamId".equals(fieldName)) {
+ deserializedFlowPropertiesInner.streamId = reader.getString();
+ } else if ("streamProtocol".equals(fieldName)) {
+ deserializedFlowPropertiesInner.streamProtocol = StreamProtocol.fromString(reader.getString());
+ } else if ("streamLatency".equals(fieldName)) {
+ deserializedFlowPropertiesInner.streamLatency = reader.getNullable(JsonReader::getLong);
+ } else if ("passphrase".equals(fieldName)) {
+ deserializedFlowPropertiesInner.passphrase = reader.getString();
+ } else if ("sourceAddresses".equals(fieldName)) {
+ deserializedFlowPropertiesInner.sourceAddresses = StreamSourceAddressesInner.fromJson(reader);
+ } else if ("destinationEndpoints".equals(fieldName)) {
+ List destinationEndpoints = reader.readArray(reader1 -> reader1.getString());
+ deserializedFlowPropertiesInner.destinationEndpoints = destinationEndpoints;
+ } else if ("destinationEndpointPorts".equals(fieldName)) {
+ List destinationEndpointPorts = reader.readArray(reader1 -> reader1.getLong());
+ deserializedFlowPropertiesInner.destinationEndpointPorts = destinationEndpointPorts;
+ } else if ("eventHubId".equals(fieldName)) {
+ deserializedFlowPropertiesInner.eventHubId = reader.getString();
+ } else if ("consumerGroup".equals(fieldName)) {
+ deserializedFlowPropertiesInner.consumerGroup = reader.getString();
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedFlowPropertiesInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/GetDestinationEndpointPortsResultInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/GetDestinationEndpointPortsResultInner.java
new file mode 100644
index 0000000000000..a0e5bd9fff6b5
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/GetDestinationEndpointPortsResultInner.java
@@ -0,0 +1,78 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * List of destination endpoint ports for the flow stream.
+ */
+@Immutable
+public final class GetDestinationEndpointPortsResultInner
+ implements JsonSerializable {
+ /*
+ * The destination endpoint port for the flow stream
+ */
+ private List ports;
+
+ /**
+ * Creates an instance of GetDestinationEndpointPortsResultInner class.
+ */
+ private GetDestinationEndpointPortsResultInner() {
+ }
+
+ /**
+ * Get the ports property: The destination endpoint port for the flow stream.
+ *
+ * @return the ports value.
+ */
+ public List ports() {
+ return this.ports;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeArrayField("ports", this.ports, (writer, element) -> writer.writeLong(element));
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of GetDestinationEndpointPortsResultInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of GetDestinationEndpointPortsResultInner if the JsonReader was pointing to an instance of
+ * it, or null if it was pointing to JSON null.
+ * @throws IOException If an error occurs while reading the GetDestinationEndpointPortsResultInner.
+ */
+ public static GetDestinationEndpointPortsResultInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ GetDestinationEndpointPortsResultInner deserializedGetDestinationEndpointPortsResultInner
+ = new GetDestinationEndpointPortsResultInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("ports".equals(fieldName)) {
+ List ports = reader.readArray(reader1 -> reader1.getLong());
+ deserializedGetDestinationEndpointPortsResultInner.ports = ports;
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedGetDestinationEndpointPortsResultInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/GetDestinationEndpointsResultInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/GetDestinationEndpointsResultInner.java
new file mode 100644
index 0000000000000..d4e555384fbe2
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/GetDestinationEndpointsResultInner.java
@@ -0,0 +1,77 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * List of destination endpoints for the flow stream.
+ */
+@Immutable
+public final class GetDestinationEndpointsResultInner implements JsonSerializable {
+ /*
+ * The destination endpoints for the flow stream
+ */
+ private List endpoints;
+
+ /**
+ * Creates an instance of GetDestinationEndpointsResultInner class.
+ */
+ private GetDestinationEndpointsResultInner() {
+ }
+
+ /**
+ * Get the endpoints property: The destination endpoints for the flow stream.
+ *
+ * @return the endpoints value.
+ */
+ public List endpoints() {
+ return this.endpoints;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeArrayField("endpoints", this.endpoints, (writer, element) -> writer.writeString(element));
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of GetDestinationEndpointsResultInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of GetDestinationEndpointsResultInner if the JsonReader was pointing to an instance of it, or
+ * null if it was pointing to JSON null.
+ * @throws IOException If an error occurs while reading the GetDestinationEndpointsResultInner.
+ */
+ public static GetDestinationEndpointsResultInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ GetDestinationEndpointsResultInner deserializedGetDestinationEndpointsResultInner
+ = new GetDestinationEndpointsResultInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("endpoints".equals(fieldName)) {
+ List endpoints = reader.readArray(reader1 -> reader1.getString());
+ deserializedGetDestinationEndpointsResultInner.endpoints = endpoints;
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedGetDestinationEndpointsResultInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/GetStreamConnectionStringResultInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/GetStreamConnectionStringResultInner.java
new file mode 100644
index 0000000000000..984bda354c10e
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/GetStreamConnectionStringResultInner.java
@@ -0,0 +1,76 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import java.io.IOException;
+
+/**
+ * The connection string for the specified streaming flow.
+ */
+@Immutable
+public final class GetStreamConnectionStringResultInner
+ implements JsonSerializable {
+ /*
+ * The connection string for the specified streaming flow
+ */
+ private String connectionString;
+
+ /**
+ * Creates an instance of GetStreamConnectionStringResultInner class.
+ */
+ private GetStreamConnectionStringResultInner() {
+ }
+
+ /**
+ * Get the connectionString property: The connection string for the specified streaming flow.
+ *
+ * @return the connectionString value.
+ */
+ public String connectionString() {
+ return this.connectionString;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeStringField("connectionString", this.connectionString);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of GetStreamConnectionStringResultInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of GetStreamConnectionStringResultInner if the JsonReader was pointing to an instance of it,
+ * or null if it was pointing to JSON null.
+ * @throws IOException If an error occurs while reading the GetStreamConnectionStringResultInner.
+ */
+ public static GetStreamConnectionStringResultInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ GetStreamConnectionStringResultInner deserializedGetStreamConnectionStringResultInner
+ = new GetStreamConnectionStringResultInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("connectionString".equals(fieldName)) {
+ deserializedGetStreamConnectionStringResultInner.connectionString = reader.getString();
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedGetStreamConnectionStringResultInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/ListFlowsByPipelineResultInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/ListFlowsByPipelineResultInner.java
new file mode 100644
index 0000000000000..f270f3a54eb4d
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/ListFlowsByPipelineResultInner.java
@@ -0,0 +1,79 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.ListFlowsByPipelineConnection;
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * An array of flow resources.
+ */
+@Immutable
+public final class ListFlowsByPipelineResultInner implements JsonSerializable {
+ /*
+ * List flows by pipeline result by connection
+ */
+ private List value;
+
+ /**
+ * Creates an instance of ListFlowsByPipelineResultInner class.
+ */
+ private ListFlowsByPipelineResultInner() {
+ }
+
+ /**
+ * Get the value property: List flows by pipeline result by connection.
+ *
+ * @return the value value.
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeArrayField("value", this.value, (writer, element) -> writer.writeJson(element));
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ListFlowsByPipelineResultInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ListFlowsByPipelineResultInner if the JsonReader was pointing to an instance of it, or
+ * null if it was pointing to JSON null.
+ * @throws IOException If an error occurs while reading the ListFlowsByPipelineResultInner.
+ */
+ public static ListFlowsByPipelineResultInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ListFlowsByPipelineResultInner deserializedListFlowsByPipelineResultInner
+ = new ListFlowsByPipelineResultInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("value".equals(fieldName)) {
+ List value
+ = reader.readArray(reader1 -> ListFlowsByPipelineConnection.fromJson(reader1));
+ deserializedListFlowsByPipelineResultInner.value = value;
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedListFlowsByPipelineResultInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/ListPipelineMetadataResultInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/ListPipelineMetadataResultInner.java
new file mode 100644
index 0000000000000..204fc759a8f74
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/ListPipelineMetadataResultInner.java
@@ -0,0 +1,93 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.DirectionSettings;
+import java.io.IOException;
+
+/**
+ * Defines the response body for retrieving Pipeline metadata for a provided pipeline.
+ */
+@Immutable
+public final class ListPipelineMetadataResultInner implements JsonSerializable {
+ /*
+ * Returns the settings associated with send direction of the pipeline.
+ */
+ private DirectionSettings send;
+
+ /*
+ * Returns the settings associated with receive direction of the pipeline.
+ */
+ private DirectionSettings receive;
+
+ /**
+ * Creates an instance of ListPipelineMetadataResultInner class.
+ */
+ private ListPipelineMetadataResultInner() {
+ }
+
+ /**
+ * Get the send property: Returns the settings associated with send direction of the pipeline.
+ *
+ * @return the send value.
+ */
+ public DirectionSettings send() {
+ return this.send;
+ }
+
+ /**
+ * Get the receive property: Returns the settings associated with receive direction of the pipeline.
+ *
+ * @return the receive value.
+ */
+ public DirectionSettings receive() {
+ return this.receive;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeJsonField("send", this.send);
+ jsonWriter.writeJsonField("receive", this.receive);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ListPipelineMetadataResultInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ListPipelineMetadataResultInner if the JsonReader was pointing to an instance of it, or
+ * null if it was pointing to JSON null.
+ * @throws IOException If an error occurs while reading the ListPipelineMetadataResultInner.
+ */
+ public static ListPipelineMetadataResultInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ListPipelineMetadataResultInner deserializedListPipelineMetadataResultInner
+ = new ListPipelineMetadataResultInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("send".equals(fieldName)) {
+ deserializedListPipelineMetadataResultInner.send = DirectionSettings.fromJson(reader);
+ } else if ("receive".equals(fieldName)) {
+ deserializedListPipelineMetadataResultInner.receive = DirectionSettings.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedListPipelineMetadataResultInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/OperationInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/OperationInner.java
new file mode 100644
index 0000000000000..1eee87dc77b48
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/OperationInner.java
@@ -0,0 +1,150 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.ActionType;
+import com.azure.resourcemanager.datatransfer.models.OperationDisplay;
+import com.azure.resourcemanager.datatransfer.models.Origin;
+import java.io.IOException;
+
+/**
+ * REST API Operation
+ *
+ * Details of a REST API operation, returned from the Resource Provider Operations API.
+ */
+@Immutable
+public final class OperationInner implements JsonSerializable {
+ /*
+ * The name of the operation, as per Resource-Based Access Control (RBAC). Examples:
+ * "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action"
+ */
+ private String name;
+
+ /*
+ * Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for Azure
+ * Resource Manager/control-plane operations.
+ */
+ private Boolean isDataAction;
+
+ /*
+ * Localized display information for this particular operation.
+ */
+ private OperationDisplay display;
+
+ /*
+ * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default
+ * value is "user,system"
+ */
+ private Origin origin;
+
+ /*
+ * Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.
+ */
+ private ActionType actionType;
+
+ /**
+ * Creates an instance of OperationInner class.
+ */
+ private OperationInner() {
+ }
+
+ /**
+ * Get the name property: The name of the operation, as per Resource-Based Access Control (RBAC). Examples:
+ * "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action".
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the isDataAction property: Whether the operation applies to data-plane. This is "true" for data-plane
+ * operations and "false" for Azure Resource Manager/control-plane operations.
+ *
+ * @return the isDataAction value.
+ */
+ public Boolean isDataAction() {
+ return this.isDataAction;
+ }
+
+ /**
+ * Get the display property: Localized display information for this particular operation.
+ *
+ * @return the display value.
+ */
+ public OperationDisplay display() {
+ return this.display;
+ }
+
+ /**
+ * Get the origin property: The intended executor of the operation; as in Resource Based Access Control (RBAC) and
+ * audit logs UX. Default value is "user,system".
+ *
+ * @return the origin value.
+ */
+ public Origin origin() {
+ return this.origin;
+ }
+
+ /**
+ * Get the actionType property: Extensible enum. Indicates the action type. "Internal" refers to actions that are
+ * for internal only APIs.
+ *
+ * @return the actionType value.
+ */
+ public ActionType actionType() {
+ return this.actionType;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeJsonField("display", this.display);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of OperationInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of OperationInner if the JsonReader was pointing to an instance of it, or null if it was
+ * pointing to JSON null.
+ * @throws IOException If an error occurs while reading the OperationInner.
+ */
+ public static OperationInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ OperationInner deserializedOperationInner = new OperationInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("name".equals(fieldName)) {
+ deserializedOperationInner.name = reader.getString();
+ } else if ("isDataAction".equals(fieldName)) {
+ deserializedOperationInner.isDataAction = reader.getNullable(JsonReader::getBoolean);
+ } else if ("display".equals(fieldName)) {
+ deserializedOperationInner.display = OperationDisplay.fromJson(reader);
+ } else if ("origin".equals(fieldName)) {
+ deserializedOperationInner.origin = Origin.fromString(reader.getString());
+ } else if ("actionType".equals(fieldName)) {
+ deserializedOperationInner.actionType = ActionType.fromString(reader.getString());
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedOperationInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/PendingConnectionInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/PendingConnectionInner.java
new file mode 100644
index 0000000000000..fc7dbc44b2200
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/PendingConnectionInner.java
@@ -0,0 +1,578 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.CoreUtils;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.ConnectionStatus;
+import com.azure.resourcemanager.datatransfer.models.Direction;
+import com.azure.resourcemanager.datatransfer.models.FlowProfileMetadata;
+import com.azure.resourcemanager.datatransfer.models.FlowType;
+import com.azure.resourcemanager.datatransfer.models.ForceDisabledStatus;
+import com.azure.resourcemanager.datatransfer.models.LinkStatus;
+import com.azure.resourcemanager.datatransfer.models.ProvisioningState;
+import com.azure.resourcemanager.datatransfer.models.Schema;
+import java.io.IOException;
+import java.time.OffsetDateTime;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Pending connection object.
+ */
+@Immutable
+public final class PendingConnectionInner implements JsonSerializable {
+ /*
+ * Subscription ID of the pending connection.
+ */
+ private String subscriptionId;
+
+ /*
+ * Pipeline to use to transfer data
+ */
+ private String pipeline;
+
+ /*
+ * Direction of data movement
+ */
+ private Direction direction;
+
+ /*
+ * Justification for the connection request
+ */
+ private String justification;
+
+ /*
+ * Status of the connection
+ */
+ private ConnectionStatus status;
+
+ /*
+ * Force disablement status of the current connection
+ */
+ private List forceDisabledStatus;
+
+ /*
+ * Reason for status
+ */
+ private String statusReason;
+
+ /*
+ * Link status of the current connection
+ */
+ private LinkStatus linkStatus;
+
+ /*
+ * Resource ID of the linked connection
+ */
+ private String linkedConnectionId;
+
+ /*
+ * The flow types being requested for this connection. This FlowType property has reached end of life support
+ * starting version 2025-05-30-preview. Please create a FlowProfile resource instead.
+ */
+ private List flowTypes;
+
+ /*
+ * Provides a list of FlowProfiles .
+ */
+ private List flowProfileList;
+
+ /*
+ * Requirement ID of the connection
+ */
+ private String requirementId;
+
+ /*
+ * Subscription ID to link cloud subscriptions together
+ */
+ private String remoteSubscriptionId;
+
+ /*
+ * Approver of this connection request
+ */
+ private String approver;
+
+ /*
+ * PIN to link requests together
+ */
+ private String pin;
+
+ /*
+ * The timestamp that this connection request was submitted at
+ */
+ private OffsetDateTime dateSubmitted;
+
+ /*
+ * The primary contact for this connection request
+ */
+ private String primaryContact;
+
+ /*
+ * The secondary contacts for this connection request
+ */
+ private List secondaryContacts;
+
+ /*
+ * Provisioning state of the connection
+ */
+ private ProvisioningState provisioningState;
+
+ /*
+ * The policies for this connection. The policies property has reached end of life support starting version
+ * 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ */
+ private List policies;
+
+ /*
+ * The schemas for this connection. The schemas property has reached end of life support starting version
+ * 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ */
+ private List schemas;
+
+ /*
+ * The schema URIs for this connection. The schemaUris property has reached end of life support starting version
+ * 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ */
+ private List schemaUris;
+
+ /*
+ * Hostname specific to API Flows
+ */
+ private String apiHostname;
+
+ /*
+ * Resource tags.
+ */
+ private Map tags;
+
+ /*
+ * The geo-location where the resource lives
+ */
+ private String location;
+
+ /*
+ * Fully qualified resource ID for the resource. Ex -
+ * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{
+ * resourceType}/{resourceName}
+ */
+ private String id;
+
+ /*
+ * The name of the resource
+ */
+ private String name;
+
+ /*
+ * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
+ */
+ private String type;
+
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ private SystemData systemData;
+
+ /**
+ * Creates an instance of PendingConnectionInner class.
+ */
+ private PendingConnectionInner() {
+ }
+
+ /**
+ * Get the subscriptionId property: Subscription ID of the pending connection.
+ *
+ * @return the subscriptionId value.
+ */
+ public String subscriptionId() {
+ return this.subscriptionId;
+ }
+
+ /**
+ * Get the pipeline property: Pipeline to use to transfer data.
+ *
+ * @return the pipeline value.
+ */
+ public String pipeline() {
+ return this.pipeline;
+ }
+
+ /**
+ * Get the direction property: Direction of data movement.
+ *
+ * @return the direction value.
+ */
+ public Direction direction() {
+ return this.direction;
+ }
+
+ /**
+ * Get the justification property: Justification for the connection request.
+ *
+ * @return the justification value.
+ */
+ public String justification() {
+ return this.justification;
+ }
+
+ /**
+ * Get the status property: Status of the connection.
+ *
+ * @return the status value.
+ */
+ public ConnectionStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Get the forceDisabledStatus property: Force disablement status of the current connection.
+ *
+ * @return the forceDisabledStatus value.
+ */
+ public List forceDisabledStatus() {
+ return this.forceDisabledStatus;
+ }
+
+ /**
+ * Get the statusReason property: Reason for status.
+ *
+ * @return the statusReason value.
+ */
+ public String statusReason() {
+ return this.statusReason;
+ }
+
+ /**
+ * Get the linkStatus property: Link status of the current connection.
+ *
+ * @return the linkStatus value.
+ */
+ public LinkStatus linkStatus() {
+ return this.linkStatus;
+ }
+
+ /**
+ * Get the linkedConnectionId property: Resource ID of the linked connection.
+ *
+ * @return the linkedConnectionId value.
+ */
+ public String linkedConnectionId() {
+ return this.linkedConnectionId;
+ }
+
+ /**
+ * Get the flowTypes property: The flow types being requested for this connection. This FlowType property has
+ * reached end of life support starting version 2025-05-30-preview. Please create a FlowProfile resource instead.
+ *
+ * @return the flowTypes value.
+ */
+ public List flowTypes() {
+ return this.flowTypes;
+ }
+
+ /**
+ * Get the flowProfileList property: Provides a list of FlowProfiles .
+ *
+ * @return the flowProfileList value.
+ */
+ public List flowProfileList() {
+ return this.flowProfileList;
+ }
+
+ /**
+ * Get the requirementId property: Requirement ID of the connection.
+ *
+ * @return the requirementId value.
+ */
+ public String requirementId() {
+ return this.requirementId;
+ }
+
+ /**
+ * Get the remoteSubscriptionId property: Subscription ID to link cloud subscriptions together.
+ *
+ * @return the remoteSubscriptionId value.
+ */
+ public String remoteSubscriptionId() {
+ return this.remoteSubscriptionId;
+ }
+
+ /**
+ * Get the approver property: Approver of this connection request.
+ *
+ * @return the approver value.
+ */
+ public String approver() {
+ return this.approver;
+ }
+
+ /**
+ * Get the pin property: PIN to link requests together.
+ *
+ * @return the pin value.
+ */
+ public String pin() {
+ return this.pin;
+ }
+
+ /**
+ * Get the dateSubmitted property: The timestamp that this connection request was submitted at.
+ *
+ * @return the dateSubmitted value.
+ */
+ public OffsetDateTime dateSubmitted() {
+ return this.dateSubmitted;
+ }
+
+ /**
+ * Get the primaryContact property: The primary contact for this connection request.
+ *
+ * @return the primaryContact value.
+ */
+ public String primaryContact() {
+ return this.primaryContact;
+ }
+
+ /**
+ * Get the secondaryContacts property: The secondary contacts for this connection request.
+ *
+ * @return the secondaryContacts value.
+ */
+ public List secondaryContacts() {
+ return this.secondaryContacts;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the connection.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the policies property: The policies for this connection. The policies property has reached end of life
+ * support starting version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @return the policies value.
+ */
+ public List policies() {
+ return this.policies;
+ }
+
+ /**
+ * Get the schemas property: The schemas for this connection. The schemas property has reached end of life support
+ * starting version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @return the schemas value.
+ */
+ public List schemas() {
+ return this.schemas;
+ }
+
+ /**
+ * Get the schemaUris property: The schema URIs for this connection. The schemaUris property has reached end of life
+ * support starting version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @return the schemaUris value.
+ */
+ public List schemaUris() {
+ return this.schemaUris;
+ }
+
+ /**
+ * Get the apiHostname property: Hostname specific to API Flows.
+ *
+ * @return the apiHostname value.
+ */
+ public String apiHostname() {
+ return this.apiHostname;
+ }
+
+ /**
+ * Get the tags property: Resource tags.
+ *
+ * @return the tags value.
+ */
+ public Map tags() {
+ return this.tags;
+ }
+
+ /**
+ * Get the location property: The geo-location where the resource lives.
+ *
+ * @return the location value.
+ */
+ public String location() {
+ return this.location;
+ }
+
+ /**
+ * Get the id property: Fully qualified resource ID for the resource. Ex -
+ * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
+ *
+ * @return the id value.
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the type property: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or
+ * "Microsoft.Storage/storageAccounts".
+ *
+ * @return the type value.
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeStringField("pipeline", this.pipeline);
+ jsonWriter.writeStringField("location", this.location);
+ jsonWriter.writeStringField("direction", this.direction == null ? null : this.direction.toString());
+ jsonWriter.writeStringField("justification", this.justification);
+ jsonWriter.writeArrayField("flowTypes", this.flowTypes,
+ (writer, element) -> writer.writeString(element == null ? null : element.toString()));
+ jsonWriter.writeArrayField("flowProfileList", this.flowProfileList,
+ (writer, element) -> writer.writeJson(element));
+ jsonWriter.writeStringField("requirementId", this.requirementId);
+ jsonWriter.writeStringField("remoteSubscriptionId", this.remoteSubscriptionId);
+ jsonWriter.writeStringField("pin", this.pin);
+ jsonWriter.writeStringField("primaryContact", this.primaryContact);
+ jsonWriter.writeArrayField("secondaryContacts", this.secondaryContacts,
+ (writer, element) -> writer.writeString(element));
+ jsonWriter.writeArrayField("policies", this.policies, (writer, element) -> writer.writeString(element));
+ jsonWriter.writeArrayField("schemas", this.schemas, (writer, element) -> writer.writeJson(element));
+ jsonWriter.writeArrayField("schemaUris", this.schemaUris, (writer, element) -> writer.writeString(element));
+ jsonWriter.writeStringField("apiHostname", this.apiHostname);
+ jsonWriter.writeMapField("tags", this.tags, (writer, element) -> writer.writeString(element));
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of PendingConnectionInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of PendingConnectionInner if the JsonReader was pointing to an instance of it, or null if it
+ * was pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the PendingConnectionInner.
+ */
+ public static PendingConnectionInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ PendingConnectionInner deserializedPendingConnectionInner = new PendingConnectionInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("pipeline".equals(fieldName)) {
+ deserializedPendingConnectionInner.pipeline = reader.getString();
+ } else if ("location".equals(fieldName)) {
+ deserializedPendingConnectionInner.location = reader.getString();
+ } else if ("subscriptionId".equals(fieldName)) {
+ deserializedPendingConnectionInner.subscriptionId = reader.getString();
+ } else if ("direction".equals(fieldName)) {
+ deserializedPendingConnectionInner.direction = Direction.fromString(reader.getString());
+ } else if ("justification".equals(fieldName)) {
+ deserializedPendingConnectionInner.justification = reader.getString();
+ } else if ("status".equals(fieldName)) {
+ deserializedPendingConnectionInner.status = ConnectionStatus.fromString(reader.getString());
+ } else if ("forceDisabledStatus".equals(fieldName)) {
+ List forceDisabledStatus
+ = reader.readArray(reader1 -> ForceDisabledStatus.fromString(reader1.getString()));
+ deserializedPendingConnectionInner.forceDisabledStatus = forceDisabledStatus;
+ } else if ("statusReason".equals(fieldName)) {
+ deserializedPendingConnectionInner.statusReason = reader.getString();
+ } else if ("linkStatus".equals(fieldName)) {
+ deserializedPendingConnectionInner.linkStatus = LinkStatus.fromString(reader.getString());
+ } else if ("linkedConnectionId".equals(fieldName)) {
+ deserializedPendingConnectionInner.linkedConnectionId = reader.getString();
+ } else if ("flowTypes".equals(fieldName)) {
+ List flowTypes = reader.readArray(reader1 -> FlowType.fromString(reader1.getString()));
+ deserializedPendingConnectionInner.flowTypes = flowTypes;
+ } else if ("flowProfileList".equals(fieldName)) {
+ List flowProfileList
+ = reader.readArray(reader1 -> FlowProfileMetadata.fromJson(reader1));
+ deserializedPendingConnectionInner.flowProfileList = flowProfileList;
+ } else if ("requirementId".equals(fieldName)) {
+ deserializedPendingConnectionInner.requirementId = reader.getString();
+ } else if ("remoteSubscriptionId".equals(fieldName)) {
+ deserializedPendingConnectionInner.remoteSubscriptionId = reader.getString();
+ } else if ("approver".equals(fieldName)) {
+ deserializedPendingConnectionInner.approver = reader.getString();
+ } else if ("pin".equals(fieldName)) {
+ deserializedPendingConnectionInner.pin = reader.getString();
+ } else if ("dateSubmitted".equals(fieldName)) {
+ deserializedPendingConnectionInner.dateSubmitted = reader
+ .getNullable(nonNullReader -> CoreUtils.parseBestOffsetDateTime(nonNullReader.getString()));
+ } else if ("primaryContact".equals(fieldName)) {
+ deserializedPendingConnectionInner.primaryContact = reader.getString();
+ } else if ("secondaryContacts".equals(fieldName)) {
+ List secondaryContacts = reader.readArray(reader1 -> reader1.getString());
+ deserializedPendingConnectionInner.secondaryContacts = secondaryContacts;
+ } else if ("provisioningState".equals(fieldName)) {
+ deserializedPendingConnectionInner.provisioningState
+ = ProvisioningState.fromString(reader.getString());
+ } else if ("policies".equals(fieldName)) {
+ List policies = reader.readArray(reader1 -> reader1.getString());
+ deserializedPendingConnectionInner.policies = policies;
+ } else if ("schemas".equals(fieldName)) {
+ List schemas = reader.readArray(reader1 -> Schema.fromJson(reader1));
+ deserializedPendingConnectionInner.schemas = schemas;
+ } else if ("schemaUris".equals(fieldName)) {
+ List schemaUris = reader.readArray(reader1 -> reader1.getString());
+ deserializedPendingConnectionInner.schemaUris = schemaUris;
+ } else if ("apiHostname".equals(fieldName)) {
+ deserializedPendingConnectionInner.apiHostname = reader.getString();
+ } else if ("tags".equals(fieldName)) {
+ Map tags = reader.readMap(reader1 -> reader1.getString());
+ deserializedPendingConnectionInner.tags = tags;
+ } else if ("id".equals(fieldName)) {
+ deserializedPendingConnectionInner.id = reader.getString();
+ } else if ("name".equals(fieldName)) {
+ deserializedPendingConnectionInner.name = reader.getString();
+ } else if ("type".equals(fieldName)) {
+ deserializedPendingConnectionInner.type = reader.getString();
+ } else if ("systemData".equals(fieldName)) {
+ deserializedPendingConnectionInner.systemData = SystemData.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedPendingConnectionInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/PendingFlowInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/PendingFlowInner.java
new file mode 100644
index 0000000000000..df1ad597fe267
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/PendingFlowInner.java
@@ -0,0 +1,747 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.core.management.SystemData;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.ApiFlowOptions;
+import com.azure.resourcemanager.datatransfer.models.DataClass;
+import com.azure.resourcemanager.datatransfer.models.DataType;
+import com.azure.resourcemanager.datatransfer.models.FlowProfileMetadata;
+import com.azure.resourcemanager.datatransfer.models.FlowStatus;
+import com.azure.resourcemanager.datatransfer.models.FlowType;
+import com.azure.resourcemanager.datatransfer.models.ForceDisabledStatus;
+import com.azure.resourcemanager.datatransfer.models.LinkStatus;
+import com.azure.resourcemanager.datatransfer.models.MessagingOptions;
+import com.azure.resourcemanager.datatransfer.models.ProvisioningState;
+import com.azure.resourcemanager.datatransfer.models.Schema;
+import com.azure.resourcemanager.datatransfer.models.SelectedResource;
+import com.azure.resourcemanager.datatransfer.models.StreamProtocol;
+import java.io.IOException;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Pending flow object.
+ */
+@Immutable
+public final class PendingFlowInner implements JsonSerializable {
+ /*
+ * Subscription ID of the pending flow.
+ */
+ private String subscriptionId;
+
+ /*
+ * Connection ID of the pending flow.
+ */
+ private String connectionId;
+
+ /*
+ * The connection associated with this flow
+ */
+ private SelectedResource connection;
+
+ /*
+ * Dataflow GUID associated with this flow
+ */
+ private String flowId;
+
+ /*
+ * URI to a Key Vault Secret containing a SAS token.
+ */
+ private String keyVaultUri;
+
+ /*
+ * Link status of the current flow
+ */
+ private LinkStatus linkStatus;
+
+ /*
+ * Resource ID of the linked flow
+ */
+ private String linkedFlowId;
+
+ /*
+ * Status of the current flow
+ */
+ private FlowStatus status;
+
+ /*
+ * Force disablement status of the current flow
+ */
+ private List forceDisabledStatus;
+
+ /*
+ * Storage Account
+ */
+ private String storageAccountName;
+
+ /*
+ * Storage Account ID
+ */
+ private String storageAccountId;
+
+ /*
+ * Storage Container Name
+ */
+ private String storageContainerName;
+
+ /*
+ * Storage Table Name
+ */
+ private String storageTableName;
+
+ /*
+ * Service Bus Queue ID
+ */
+ private String serviceBusQueueId;
+
+ /*
+ * Type of FlowProfile to use for transfer via the flow.
+ */
+ private FlowProfileMetadata flowProfile;
+
+ /*
+ * The Flow's data class.
+ */
+ private DataClass flowDataType;
+
+ /*
+ * The flow type for this flow. The property has reached end of life support starting version 2025-05-30-preview.
+ * Please create and use a FlowProfile resource instead.
+ */
+ private FlowType flowType;
+
+ /*
+ * Type of data to transfer via the flow. The property has reached end of life support starting version
+ * 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ */
+ private DataType dataType;
+
+ /*
+ * Provisioning state of the flow
+ */
+ private ProvisioningState provisioningState;
+
+ /*
+ * The policies for this flow. The property has reached end of life support starting version 2025-05-30-preview.
+ * Please create and use a FlowProfile resource instead.
+ */
+ private List policies;
+
+ /*
+ * The selected schema for this flow. The property has reached end of life support starting version
+ * 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ */
+ private Schema schema;
+
+ /*
+ * The messaging options for this flow
+ */
+ private MessagingOptions messagingOptions;
+
+ /*
+ * The API Flow configuration options for Azure Data Transfer API Flow type.
+ */
+ private ApiFlowOptions apiFlowOptions;
+
+ /*
+ * The URI to the customer managed key for this flow
+ */
+ private String customerManagedKeyVaultUri;
+
+ /*
+ * The flow stream identifier
+ */
+ private String streamId;
+
+ /*
+ * The protocol of the stream
+ */
+ private StreamProtocol streamProtocol;
+
+ /*
+ * The latency of the stream in milliseconds
+ */
+ private Long streamLatency;
+
+ /*
+ * The passphrase used for SRT streams
+ */
+ private String passphrase;
+
+ /*
+ * The source IP address and CIDR ranges of the stream
+ */
+ private StreamSourceAddressesInner sourceAddresses;
+
+ /*
+ * The destination endpoints of the stream
+ */
+ private List destinationEndpoints;
+
+ /*
+ * The destination endpoint ports of the stream
+ */
+ private List destinationEndpointPorts;
+
+ /*
+ * Event Hub ID
+ */
+ private String eventHubId;
+
+ /*
+ * Event Hub Consumer Group
+ */
+ private String consumerGroup;
+
+ /*
+ * Resource tags.
+ */
+ private Map tags;
+
+ /*
+ * The geo-location where the resource lives
+ */
+ private String location;
+
+ /*
+ * Fully qualified resource ID for the resource. Ex -
+ * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{
+ * resourceType}/{resourceName}
+ */
+ private String id;
+
+ /*
+ * The name of the resource
+ */
+ private String name;
+
+ /*
+ * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
+ */
+ private String type;
+
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ private SystemData systemData;
+
+ /**
+ * Creates an instance of PendingFlowInner class.
+ */
+ private PendingFlowInner() {
+ }
+
+ /**
+ * Get the subscriptionId property: Subscription ID of the pending flow.
+ *
+ * @return the subscriptionId value.
+ */
+ public String subscriptionId() {
+ return this.subscriptionId;
+ }
+
+ /**
+ * Get the connectionId property: Connection ID of the pending flow.
+ *
+ * @return the connectionId value.
+ */
+ public String connectionId() {
+ return this.connectionId;
+ }
+
+ /**
+ * Get the connection property: The connection associated with this flow.
+ *
+ * @return the connection value.
+ */
+ public SelectedResource connection() {
+ return this.connection;
+ }
+
+ /**
+ * Get the flowId property: Dataflow GUID associated with this flow.
+ *
+ * @return the flowId value.
+ */
+ public String flowId() {
+ return this.flowId;
+ }
+
+ /**
+ * Get the keyVaultUri property: URI to a Key Vault Secret containing a SAS token.
+ *
+ * @return the keyVaultUri value.
+ */
+ public String keyVaultUri() {
+ return this.keyVaultUri;
+ }
+
+ /**
+ * Get the linkStatus property: Link status of the current flow.
+ *
+ * @return the linkStatus value.
+ */
+ public LinkStatus linkStatus() {
+ return this.linkStatus;
+ }
+
+ /**
+ * Get the linkedFlowId property: Resource ID of the linked flow.
+ *
+ * @return the linkedFlowId value.
+ */
+ public String linkedFlowId() {
+ return this.linkedFlowId;
+ }
+
+ /**
+ * Get the status property: Status of the current flow.
+ *
+ * @return the status value.
+ */
+ public FlowStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Get the forceDisabledStatus property: Force disablement status of the current flow.
+ *
+ * @return the forceDisabledStatus value.
+ */
+ public List forceDisabledStatus() {
+ return this.forceDisabledStatus;
+ }
+
+ /**
+ * Get the storageAccountName property: Storage Account.
+ *
+ * @return the storageAccountName value.
+ */
+ public String storageAccountName() {
+ return this.storageAccountName;
+ }
+
+ /**
+ * Get the storageAccountId property: Storage Account ID.
+ *
+ * @return the storageAccountId value.
+ */
+ public String storageAccountId() {
+ return this.storageAccountId;
+ }
+
+ /**
+ * Get the storageContainerName property: Storage Container Name.
+ *
+ * @return the storageContainerName value.
+ */
+ public String storageContainerName() {
+ return this.storageContainerName;
+ }
+
+ /**
+ * Get the storageTableName property: Storage Table Name.
+ *
+ * @return the storageTableName value.
+ */
+ public String storageTableName() {
+ return this.storageTableName;
+ }
+
+ /**
+ * Get the serviceBusQueueId property: Service Bus Queue ID.
+ *
+ * @return the serviceBusQueueId value.
+ */
+ public String serviceBusQueueId() {
+ return this.serviceBusQueueId;
+ }
+
+ /**
+ * Get the flowProfile property: Type of FlowProfile to use for transfer via the flow.
+ *
+ * @return the flowProfile value.
+ */
+ public FlowProfileMetadata flowProfile() {
+ return this.flowProfile;
+ }
+
+ /**
+ * Get the flowDataType property: The Flow's data class.
+ *
+ * @return the flowDataType value.
+ */
+ public DataClass flowDataType() {
+ return this.flowDataType;
+ }
+
+ /**
+ * Get the flowType property: The flow type for this flow. The property has reached end of life support starting
+ * version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @return the flowType value.
+ */
+ public FlowType flowType() {
+ return this.flowType;
+ }
+
+ /**
+ * Get the dataType property: Type of data to transfer via the flow. The property has reached end of life support
+ * starting version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @return the dataType value.
+ */
+ public DataType dataType() {
+ return this.dataType;
+ }
+
+ /**
+ * Get the provisioningState property: Provisioning state of the flow.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the policies property: The policies for this flow. The property has reached end of life support starting
+ * version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @return the policies value.
+ */
+ public List policies() {
+ return this.policies;
+ }
+
+ /**
+ * Get the schema property: The selected schema for this flow. The property has reached end of life support starting
+ * version 2025-05-30-preview. Please create and use a FlowProfile resource instead.
+ *
+ * @return the schema value.
+ */
+ public Schema schema() {
+ return this.schema;
+ }
+
+ /**
+ * Get the messagingOptions property: The messaging options for this flow.
+ *
+ * @return the messagingOptions value.
+ */
+ public MessagingOptions messagingOptions() {
+ return this.messagingOptions;
+ }
+
+ /**
+ * Get the apiFlowOptions property: The API Flow configuration options for Azure Data Transfer API Flow type.
+ *
+ * @return the apiFlowOptions value.
+ */
+ public ApiFlowOptions apiFlowOptions() {
+ return this.apiFlowOptions;
+ }
+
+ /**
+ * Get the customerManagedKeyVaultUri property: The URI to the customer managed key for this flow.
+ *
+ * @return the customerManagedKeyVaultUri value.
+ */
+ public String customerManagedKeyVaultUri() {
+ return this.customerManagedKeyVaultUri;
+ }
+
+ /**
+ * Get the streamId property: The flow stream identifier.
+ *
+ * @return the streamId value.
+ */
+ public String streamId() {
+ return this.streamId;
+ }
+
+ /**
+ * Get the streamProtocol property: The protocol of the stream.
+ *
+ * @return the streamProtocol value.
+ */
+ public StreamProtocol streamProtocol() {
+ return this.streamProtocol;
+ }
+
+ /**
+ * Get the streamLatency property: The latency of the stream in milliseconds.
+ *
+ * @return the streamLatency value.
+ */
+ public Long streamLatency() {
+ return this.streamLatency;
+ }
+
+ /**
+ * Get the passphrase property: The passphrase used for SRT streams.
+ *
+ * @return the passphrase value.
+ */
+ public String passphrase() {
+ return this.passphrase;
+ }
+
+ /**
+ * Get the sourceAddresses property: The source IP address and CIDR ranges of the stream.
+ *
+ * @return the sourceAddresses value.
+ */
+ public StreamSourceAddressesInner sourceAddresses() {
+ return this.sourceAddresses;
+ }
+
+ /**
+ * Get the destinationEndpoints property: The destination endpoints of the stream.
+ *
+ * @return the destinationEndpoints value.
+ */
+ public List destinationEndpoints() {
+ return this.destinationEndpoints;
+ }
+
+ /**
+ * Get the destinationEndpointPorts property: The destination endpoint ports of the stream.
+ *
+ * @return the destinationEndpointPorts value.
+ */
+ public List destinationEndpointPorts() {
+ return this.destinationEndpointPorts;
+ }
+
+ /**
+ * Get the eventHubId property: Event Hub ID.
+ *
+ * @return the eventHubId value.
+ */
+ public String eventHubId() {
+ return this.eventHubId;
+ }
+
+ /**
+ * Get the consumerGroup property: Event Hub Consumer Group.
+ *
+ * @return the consumerGroup value.
+ */
+ public String consumerGroup() {
+ return this.consumerGroup;
+ }
+
+ /**
+ * Get the tags property: Resource tags.
+ *
+ * @return the tags value.
+ */
+ public Map tags() {
+ return this.tags;
+ }
+
+ /**
+ * Get the location property: The geo-location where the resource lives.
+ *
+ * @return the location value.
+ */
+ public String location() {
+ return this.location;
+ }
+
+ /**
+ * Get the id property: Fully qualified resource ID for the resource. Ex -
+ * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
+ *
+ * @return the id value.
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the type property: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or
+ * "Microsoft.Storage/storageAccounts".
+ *
+ * @return the type value.
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeStringField("location", this.location);
+ jsonWriter.writeJsonField("connection", this.connection);
+ jsonWriter.writeStringField("keyVaultUri", this.keyVaultUri);
+ jsonWriter.writeStringField("status", this.status == null ? null : this.status.toString());
+ jsonWriter.writeStringField("storageAccountName", this.storageAccountName);
+ jsonWriter.writeStringField("storageAccountId", this.storageAccountId);
+ jsonWriter.writeStringField("storageContainerName", this.storageContainerName);
+ jsonWriter.writeStringField("storageTableName", this.storageTableName);
+ jsonWriter.writeStringField("serviceBusQueueId", this.serviceBusQueueId);
+ jsonWriter.writeJsonField("flowProfile", this.flowProfile);
+ jsonWriter.writeStringField("flowDataType", this.flowDataType == null ? null : this.flowDataType.toString());
+ jsonWriter.writeStringField("flowType", this.flowType == null ? null : this.flowType.toString());
+ jsonWriter.writeStringField("dataType", this.dataType == null ? null : this.dataType.toString());
+ jsonWriter.writeArrayField("policies", this.policies, (writer, element) -> writer.writeString(element));
+ jsonWriter.writeJsonField("schema", this.schema);
+ jsonWriter.writeJsonField("messagingOptions", this.messagingOptions);
+ jsonWriter.writeJsonField("apiFlowOptions", this.apiFlowOptions);
+ jsonWriter.writeStringField("customerManagedKeyVaultUri", this.customerManagedKeyVaultUri);
+ jsonWriter.writeStringField("streamId", this.streamId);
+ jsonWriter.writeStringField("streamProtocol",
+ this.streamProtocol == null ? null : this.streamProtocol.toString());
+ jsonWriter.writeNumberField("streamLatency", this.streamLatency);
+ jsonWriter.writeStringField("passphrase", this.passphrase);
+ jsonWriter.writeJsonField("sourceAddresses", this.sourceAddresses);
+ jsonWriter.writeArrayField("destinationEndpoints", this.destinationEndpoints,
+ (writer, element) -> writer.writeString(element));
+ jsonWriter.writeArrayField("destinationEndpointPorts", this.destinationEndpointPorts,
+ (writer, element) -> writer.writeLong(element));
+ jsonWriter.writeStringField("eventHubId", this.eventHubId);
+ jsonWriter.writeStringField("consumerGroup", this.consumerGroup);
+ jsonWriter.writeMapField("tags", this.tags, (writer, element) -> writer.writeString(element));
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of PendingFlowInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of PendingFlowInner if the JsonReader was pointing to an instance of it, or null if it was
+ * pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the PendingFlowInner.
+ */
+ public static PendingFlowInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ PendingFlowInner deserializedPendingFlowInner = new PendingFlowInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("location".equals(fieldName)) {
+ deserializedPendingFlowInner.location = reader.getString();
+ } else if ("subscriptionId".equals(fieldName)) {
+ deserializedPendingFlowInner.subscriptionId = reader.getString();
+ } else if ("connectionId".equals(fieldName)) {
+ deserializedPendingFlowInner.connectionId = reader.getString();
+ } else if ("connection".equals(fieldName)) {
+ deserializedPendingFlowInner.connection = SelectedResource.fromJson(reader);
+ } else if ("flowId".equals(fieldName)) {
+ deserializedPendingFlowInner.flowId = reader.getString();
+ } else if ("keyVaultUri".equals(fieldName)) {
+ deserializedPendingFlowInner.keyVaultUri = reader.getString();
+ } else if ("linkStatus".equals(fieldName)) {
+ deserializedPendingFlowInner.linkStatus = LinkStatus.fromString(reader.getString());
+ } else if ("linkedFlowId".equals(fieldName)) {
+ deserializedPendingFlowInner.linkedFlowId = reader.getString();
+ } else if ("status".equals(fieldName)) {
+ deserializedPendingFlowInner.status = FlowStatus.fromString(reader.getString());
+ } else if ("forceDisabledStatus".equals(fieldName)) {
+ List forceDisabledStatus
+ = reader.readArray(reader1 -> ForceDisabledStatus.fromString(reader1.getString()));
+ deserializedPendingFlowInner.forceDisabledStatus = forceDisabledStatus;
+ } else if ("storageAccountName".equals(fieldName)) {
+ deserializedPendingFlowInner.storageAccountName = reader.getString();
+ } else if ("storageAccountId".equals(fieldName)) {
+ deserializedPendingFlowInner.storageAccountId = reader.getString();
+ } else if ("storageContainerName".equals(fieldName)) {
+ deserializedPendingFlowInner.storageContainerName = reader.getString();
+ } else if ("storageTableName".equals(fieldName)) {
+ deserializedPendingFlowInner.storageTableName = reader.getString();
+ } else if ("serviceBusQueueId".equals(fieldName)) {
+ deserializedPendingFlowInner.serviceBusQueueId = reader.getString();
+ } else if ("flowProfile".equals(fieldName)) {
+ deserializedPendingFlowInner.flowProfile = FlowProfileMetadata.fromJson(reader);
+ } else if ("flowDataType".equals(fieldName)) {
+ deserializedPendingFlowInner.flowDataType = DataClass.fromString(reader.getString());
+ } else if ("flowType".equals(fieldName)) {
+ deserializedPendingFlowInner.flowType = FlowType.fromString(reader.getString());
+ } else if ("dataType".equals(fieldName)) {
+ deserializedPendingFlowInner.dataType = DataType.fromString(reader.getString());
+ } else if ("provisioningState".equals(fieldName)) {
+ deserializedPendingFlowInner.provisioningState = ProvisioningState.fromString(reader.getString());
+ } else if ("policies".equals(fieldName)) {
+ List policies = reader.readArray(reader1 -> reader1.getString());
+ deserializedPendingFlowInner.policies = policies;
+ } else if ("schema".equals(fieldName)) {
+ deserializedPendingFlowInner.schema = Schema.fromJson(reader);
+ } else if ("messagingOptions".equals(fieldName)) {
+ deserializedPendingFlowInner.messagingOptions = MessagingOptions.fromJson(reader);
+ } else if ("apiFlowOptions".equals(fieldName)) {
+ deserializedPendingFlowInner.apiFlowOptions = ApiFlowOptions.fromJson(reader);
+ } else if ("customerManagedKeyVaultUri".equals(fieldName)) {
+ deserializedPendingFlowInner.customerManagedKeyVaultUri = reader.getString();
+ } else if ("streamId".equals(fieldName)) {
+ deserializedPendingFlowInner.streamId = reader.getString();
+ } else if ("streamProtocol".equals(fieldName)) {
+ deserializedPendingFlowInner.streamProtocol = StreamProtocol.fromString(reader.getString());
+ } else if ("streamLatency".equals(fieldName)) {
+ deserializedPendingFlowInner.streamLatency = reader.getNullable(JsonReader::getLong);
+ } else if ("passphrase".equals(fieldName)) {
+ deserializedPendingFlowInner.passphrase = reader.getString();
+ } else if ("sourceAddresses".equals(fieldName)) {
+ deserializedPendingFlowInner.sourceAddresses = StreamSourceAddressesInner.fromJson(reader);
+ } else if ("destinationEndpoints".equals(fieldName)) {
+ List destinationEndpoints = reader.readArray(reader1 -> reader1.getString());
+ deserializedPendingFlowInner.destinationEndpoints = destinationEndpoints;
+ } else if ("destinationEndpointPorts".equals(fieldName)) {
+ List destinationEndpointPorts = reader.readArray(reader1 -> reader1.getLong());
+ deserializedPendingFlowInner.destinationEndpointPorts = destinationEndpointPorts;
+ } else if ("eventHubId".equals(fieldName)) {
+ deserializedPendingFlowInner.eventHubId = reader.getString();
+ } else if ("consumerGroup".equals(fieldName)) {
+ deserializedPendingFlowInner.consumerGroup = reader.getString();
+ } else if ("tags".equals(fieldName)) {
+ Map tags = reader.readMap(reader1 -> reader1.getString());
+ deserializedPendingFlowInner.tags = tags;
+ } else if ("id".equals(fieldName)) {
+ deserializedPendingFlowInner.id = reader.getString();
+ } else if ("name".equals(fieldName)) {
+ deserializedPendingFlowInner.name = reader.getString();
+ } else if ("type".equals(fieldName)) {
+ deserializedPendingFlowInner.type = reader.getString();
+ } else if ("systemData".equals(fieldName)) {
+ deserializedPendingFlowInner.systemData = SystemData.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedPendingFlowInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/PipelineInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/PipelineInner.java
new file mode 100644
index 0000000000000..4048f949edf84
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/PipelineInner.java
@@ -0,0 +1,211 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.Resource;
+import com.azure.core.management.SystemData;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.ManagedServiceIdentity;
+import com.azure.resourcemanager.datatransfer.models.PipelineProperties;
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * The pipeline resource definition. A Pipeline defines the scope and identity under which data replication scenarios
+ * are managed.
+ */
+@Fluent
+public final class PipelineInner extends Resource {
+ /*
+ * The set of configurable properties for the Pipeline resource.
+ */
+ private PipelineProperties properties;
+
+ /*
+ * The managed service identities assigned to this resource.
+ */
+ private ManagedServiceIdentity identity;
+
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ private SystemData systemData;
+
+ /*
+ * The type of the resource.
+ */
+ private String type;
+
+ /*
+ * The name of the resource.
+ */
+ private String name;
+
+ /*
+ * Fully qualified resource Id for the resource.
+ */
+ private String id;
+
+ /**
+ * Creates an instance of PipelineInner class.
+ */
+ public PipelineInner() {
+ }
+
+ /**
+ * Get the properties property: The set of configurable properties for the Pipeline resource.
+ *
+ * @return the properties value.
+ */
+ public PipelineProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: The set of configurable properties for the Pipeline resource.
+ *
+ * @param properties the properties value to set.
+ * @return the PipelineInner object itself.
+ */
+ public PipelineInner withProperties(PipelineProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Get the identity property: The managed service identities assigned to this resource.
+ *
+ * @return the identity value.
+ */
+ public ManagedServiceIdentity identity() {
+ return this.identity;
+ }
+
+ /**
+ * Set the identity property: The managed service identities assigned to this resource.
+ *
+ * @param identity the identity value to set.
+ * @return the PipelineInner object itself.
+ */
+ public PipelineInner withIdentity(ManagedServiceIdentity identity) {
+ this.identity = identity;
+ return this;
+ }
+
+ /**
+ * Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the type property: The type of the resource.
+ *
+ * @return the type value.
+ */
+ @Override
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Get the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ @Override
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Get the id property: Fully qualified resource Id for the resource.
+ *
+ * @return the id value.
+ */
+ @Override
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public PipelineInner withLocation(String location) {
+ super.withLocation(location);
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public PipelineInner withTags(Map tags) {
+ super.withTags(tags);
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeStringField("location", location());
+ jsonWriter.writeMapField("tags", tags(), (writer, element) -> writer.writeString(element));
+ jsonWriter.writeJsonField("properties", this.properties);
+ jsonWriter.writeJsonField("identity", this.identity);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of PipelineInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of PipelineInner if the JsonReader was pointing to an instance of it, or null if it was
+ * pointing to JSON null.
+ * @throws IllegalStateException If the deserialized JSON object was missing any required properties.
+ * @throws IOException If an error occurs while reading the PipelineInner.
+ */
+ public static PipelineInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ PipelineInner deserializedPipelineInner = new PipelineInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("id".equals(fieldName)) {
+ deserializedPipelineInner.id = reader.getString();
+ } else if ("name".equals(fieldName)) {
+ deserializedPipelineInner.name = reader.getString();
+ } else if ("type".equals(fieldName)) {
+ deserializedPipelineInner.type = reader.getString();
+ } else if ("location".equals(fieldName)) {
+ deserializedPipelineInner.withLocation(reader.getString());
+ } else if ("tags".equals(fieldName)) {
+ Map tags = reader.readMap(reader1 -> reader1.getString());
+ deserializedPipelineInner.withTags(tags);
+ } else if ("properties".equals(fieldName)) {
+ deserializedPipelineInner.properties = PipelineProperties.fromJson(reader);
+ } else if ("identity".equals(fieldName)) {
+ deserializedPipelineInner.identity = ManagedServiceIdentity.fromJson(reader);
+ } else if ("systemData".equals(fieldName)) {
+ deserializedPipelineInner.systemData = SystemData.fromJson(reader);
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedPipelineInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/SchemasListResultInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/SchemasListResultInner.java
new file mode 100644
index 0000000000000..704508b2160ac
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/SchemasListResultInner.java
@@ -0,0 +1,78 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.Schema;
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * The schemas list result. SchemaListResults has reached end of life support starting version 2025-05-30-preview.
+ * Please manage schemas with a FlowProfile resource instead.
+ */
+@Immutable
+public final class SchemasListResultInner implements JsonSerializable {
+ /*
+ * Schemas array.
+ */
+ private List value;
+
+ /**
+ * Creates an instance of SchemasListResultInner class.
+ */
+ private SchemasListResultInner() {
+ }
+
+ /**
+ * Get the value property: Schemas array.
+ *
+ * @return the value value.
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeArrayField("value", this.value, (writer, element) -> writer.writeJson(element));
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of SchemasListResultInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of SchemasListResultInner if the JsonReader was pointing to an instance of it, or null if it
+ * was pointing to JSON null.
+ * @throws IOException If an error occurs while reading the SchemasListResultInner.
+ */
+ public static SchemasListResultInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ SchemasListResultInner deserializedSchemasListResultInner = new SchemasListResultInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("value".equals(fieldName)) {
+ List value = reader.readArray(reader1 -> Schema.fromJson(reader1));
+ deserializedSchemasListResultInner.value = value;
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedSchemasListResultInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/StreamSourceAddressesInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/StreamSourceAddressesInner.java
new file mode 100644
index 0000000000000..275fb1e04d0cf
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/StreamSourceAddressesInner.java
@@ -0,0 +1,88 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * The source IP address and CIDR ranges of the stream.
+ */
+@Fluent
+public final class StreamSourceAddressesInner implements JsonSerializable {
+ /*
+ * A source IP address or CIDR range
+ */
+ private List sourceAddresses;
+
+ /**
+ * Creates an instance of StreamSourceAddressesInner class.
+ */
+ public StreamSourceAddressesInner() {
+ }
+
+ /**
+ * Get the sourceAddresses property: A source IP address or CIDR range.
+ *
+ * @return the sourceAddresses value.
+ */
+ public List sourceAddresses() {
+ return this.sourceAddresses;
+ }
+
+ /**
+ * Set the sourceAddresses property: A source IP address or CIDR range.
+ *
+ * @param sourceAddresses the sourceAddresses value to set.
+ * @return the StreamSourceAddressesInner object itself.
+ */
+ public StreamSourceAddressesInner withSourceAddresses(List sourceAddresses) {
+ this.sourceAddresses = sourceAddresses;
+ return this;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeArrayField("sourceAddresses", this.sourceAddresses,
+ (writer, element) -> writer.writeString(element));
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of StreamSourceAddressesInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of StreamSourceAddressesInner if the JsonReader was pointing to an instance of it, or null if
+ * it was pointing to JSON null.
+ * @throws IOException If an error occurs while reading the StreamSourceAddressesInner.
+ */
+ public static StreamSourceAddressesInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ StreamSourceAddressesInner deserializedStreamSourceAddressesInner = new StreamSourceAddressesInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("sourceAddresses".equals(fieldName)) {
+ List sourceAddresses = reader.readArray(reader1 -> reader1.getString());
+ deserializedStreamSourceAddressesInner.sourceAddresses = sourceAddresses;
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedStreamSourceAddressesInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/ValidateSchemaResultInner.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/ValidateSchemaResultInner.java
new file mode 100644
index 0000000000000..d8b31599504f8
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/ValidateSchemaResultInner.java
@@ -0,0 +1,93 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.json.JsonReader;
+import com.azure.json.JsonSerializable;
+import com.azure.json.JsonToken;
+import com.azure.json.JsonWriter;
+import com.azure.resourcemanager.datatransfer.models.ValidateSchemaStatus;
+import java.io.IOException;
+
+/**
+ * Result of the schema validation. ValidateSchemaResult has reached end of life support starting version
+ * 2025-05-30-preview. Please manage schemas with a FlowProfile resource instead.
+ */
+@Immutable
+public final class ValidateSchemaResultInner implements JsonSerializable {
+ /*
+ * Validation status of the schema
+ */
+ private ValidateSchemaStatus status;
+
+ /*
+ * Message describing the schema validation
+ */
+ private String message;
+
+ /**
+ * Creates an instance of ValidateSchemaResultInner class.
+ */
+ private ValidateSchemaResultInner() {
+ }
+
+ /**
+ * Get the status property: Validation status of the schema.
+ *
+ * @return the status value.
+ */
+ public ValidateSchemaStatus status() {
+ return this.status;
+ }
+
+ /**
+ * Get the message property: Message describing the schema validation.
+ *
+ * @return the message value.
+ */
+ public String message() {
+ return this.message;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public JsonWriter toJson(JsonWriter jsonWriter) throws IOException {
+ jsonWriter.writeStartObject();
+ jsonWriter.writeStringField("status", this.status == null ? null : this.status.toString());
+ jsonWriter.writeStringField("message", this.message);
+ return jsonWriter.writeEndObject();
+ }
+
+ /**
+ * Reads an instance of ValidateSchemaResultInner from the JsonReader.
+ *
+ * @param jsonReader The JsonReader being read.
+ * @return An instance of ValidateSchemaResultInner if the JsonReader was pointing to an instance of it, or null if
+ * it was pointing to JSON null.
+ * @throws IOException If an error occurs while reading the ValidateSchemaResultInner.
+ */
+ public static ValidateSchemaResultInner fromJson(JsonReader jsonReader) throws IOException {
+ return jsonReader.readObject(reader -> {
+ ValidateSchemaResultInner deserializedValidateSchemaResultInner = new ValidateSchemaResultInner();
+ while (reader.nextToken() != JsonToken.END_OBJECT) {
+ String fieldName = reader.getFieldName();
+ reader.nextToken();
+
+ if ("status".equals(fieldName)) {
+ deserializedValidateSchemaResultInner.status = ValidateSchemaStatus.fromString(reader.getString());
+ } else if ("message".equals(fieldName)) {
+ deserializedValidateSchemaResultInner.message = reader.getString();
+ } else {
+ reader.skipChildren();
+ }
+ }
+
+ return deserializedValidateSchemaResultInner;
+ });
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/package-info.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/package-info.java
new file mode 100644
index 0000000000000..51d7cb632ebe2
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/models/package-info.java
@@ -0,0 +1,8 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+/**
+ * Package containing the inner data models for DataTransfer.
+ */
+package com.azure.resourcemanager.datatransfer.fluent.models;
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/package-info.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/fluent/package-info.java
new file mode 100644
index 0000000000000..b03e835ad3fcc
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/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) TypeSpec Code Generator.
+
+/**
+ * Package containing the service clients for DataTransfer.
+ */
+package com.azure.resourcemanager.datatransfer.fluent;
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/implementation/AzureDataTransfersClientImpl.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/implementation/AzureDataTransfersClientImpl.java
new file mode 100644
index 0000000000000..50132cabb4408
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/implementation/AzureDataTransfersClientImpl.java
@@ -0,0 +1,409 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.implementation;
+
+import com.azure.core.annotation.BodyParam;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.Post;
+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.management.exception.ManagementException;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.resourcemanager.datatransfer.fluent.AzureDataTransfersClient;
+import com.azure.resourcemanager.datatransfer.fluent.models.FlowProfilesListResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.ListPipelineMetadataResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.SchemasListResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.ValidateSchemaResultInner;
+import com.azure.resourcemanager.datatransfer.models.ListApprovedSchemasRequest;
+import com.azure.resourcemanager.datatransfer.models.ListFlowProfilesRequest;
+import com.azure.resourcemanager.datatransfer.models.ListPipelineMetadataRequest;
+import com.azure.resourcemanager.datatransfer.models.Schema;
+import reactor.core.publisher.Mono;
+
+/**
+ * An instance of this class provides access to all the operations defined in AzureDataTransfersClient.
+ */
+public final class AzureDataTransfersClientImpl implements AzureDataTransfersClient {
+ /**
+ * The proxy service used to perform REST calls.
+ */
+ private final AzureDataTransfersService service;
+
+ /**
+ * The service client containing this operation class.
+ */
+ private final DataTransferManagementClientImpl client;
+
+ /**
+ * Initializes an instance of AzureDataTransfersClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ AzureDataTransfersClientImpl(DataTransferManagementClientImpl client) {
+ this.service = RestProxy.create(AzureDataTransfersService.class, client.getHttpPipeline(),
+ client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for DataTransferManagementClientAzureDataTransfers to be used by the
+ * proxy service to perform REST calls.
+ */
+ @Host("{endpoint}")
+ @ServiceInterface(name = "DataTransferManagementClientAzureDataTransfers")
+ public interface AzureDataTransfersService {
+ @Post("/providers/Microsoft.AzureDataTransfer/listApprovedSchemas")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listApprovedSchemas(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") ListApprovedSchemasRequest pipeline,
+ Context context);
+
+ @Post("/providers/Microsoft.AzureDataTransfer/listApprovedSchemas")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response listApprovedSchemasSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") ListApprovedSchemasRequest pipeline,
+ Context context);
+
+ @Post("/providers/Microsoft.AzureDataTransfer/listFlowProfiles")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listFlowProfiles(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") ListFlowProfilesRequest body,
+ Context context);
+
+ @Post("/providers/Microsoft.AzureDataTransfer/listFlowProfiles")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response listFlowProfilesSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") ListFlowProfilesRequest body,
+ Context context);
+
+ @Post("/providers/Microsoft.AzureDataTransfer/validateSchema")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> validateSchema(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") Schema schema, Context context);
+
+ @Post("/providers/Microsoft.AzureDataTransfer/validateSchema")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response validateSchemaSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") Schema schema, Context context);
+
+ @Post("/providers/Microsoft.AzureDataTransfer/listPipelineMetadata")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listPipelineMetadata(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") ListPipelineMetadataRequest body,
+ Context context);
+
+ @Post("/providers/Microsoft.AzureDataTransfer/listPipelineMetadata")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response listPipelineMetadataSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") ListPipelineMetadataRequest body,
+ Context context);
+ }
+
+ /**
+ * Retrieves the list of approved schemas available for Azure Data Transfer. This operation has reached end of life
+ * support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile resource.
+ *
+ * @param pipeline The request payload for listing approved schemas.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the schemas list result along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>
+ listApprovedSchemasWithResponseAsync(ListApprovedSchemasRequest pipeline) {
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.listApprovedSchemas(this.client.getEndpoint(), this.client.getApiVersion(),
+ contentType, accept, pipeline, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Retrieves the list of approved schemas available for Azure Data Transfer. This operation has reached end of life
+ * support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile resource.
+ *
+ * @param pipeline The request payload for listing approved schemas.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the schemas list result on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono listApprovedSchemasAsync(ListApprovedSchemasRequest pipeline) {
+ return listApprovedSchemasWithResponseAsync(pipeline).flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Retrieves the list of approved schemas available for Azure Data Transfer. This operation has reached end of life
+ * support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile resource.
+ *
+ * @param pipeline The request payload for listing approved schemas.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the schemas list result along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response listApprovedSchemasWithResponse(ListApprovedSchemasRequest pipeline,
+ Context context) {
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return service.listApprovedSchemasSync(this.client.getEndpoint(), this.client.getApiVersion(), contentType,
+ accept, pipeline, context);
+ }
+
+ /**
+ * Retrieves the list of approved schemas available for Azure Data Transfer. This operation has reached end of life
+ * support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile resource.
+ *
+ * @param pipeline The request payload for listing approved schemas.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the schemas list result.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public SchemasListResultInner listApprovedSchemas(ListApprovedSchemasRequest pipeline) {
+ return listApprovedSchemasWithResponse(pipeline, Context.NONE).getValue();
+ }
+
+ /**
+ * Retrieves a list of FlowProfile resources associated with a specified pipeline.
+ *
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow profiles list result along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>
+ listFlowProfilesWithResponseAsync(ListFlowProfilesRequest body) {
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.listFlowProfiles(this.client.getEndpoint(), this.client.getApiVersion(),
+ contentType, accept, body, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Retrieves a list of FlowProfile resources associated with a specified pipeline.
+ *
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow profiles list result on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono listFlowProfilesAsync(ListFlowProfilesRequest body) {
+ return listFlowProfilesWithResponseAsync(body).flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Retrieves a list of FlowProfile resources associated with a specified pipeline.
+ *
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow profiles list result along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response listFlowProfilesWithResponse(ListFlowProfilesRequest body,
+ Context context) {
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return service.listFlowProfilesSync(this.client.getEndpoint(), this.client.getApiVersion(), contentType, accept,
+ body, context);
+ }
+
+ /**
+ * Retrieves a list of FlowProfile resources associated with a specified pipeline.
+ *
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the flow profiles list result.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public FlowProfilesListResultInner listFlowProfiles(ListFlowProfilesRequest body) {
+ return listFlowProfilesWithResponse(body, Context.NONE).getValue();
+ }
+
+ /**
+ * Validates the structure and content of a schema for use in Azure Data Transfer. This operation has reached end of
+ * life support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile
+ * resource.
+ *
+ * @param schema The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return result of the schema validation along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> validateSchemaWithResponseAsync(Schema schema) {
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.validateSchema(this.client.getEndpoint(), this.client.getApiVersion(),
+ contentType, accept, schema, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Validates the structure and content of a schema for use in Azure Data Transfer. This operation has reached end of
+ * life support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile
+ * resource.
+ *
+ * @param schema The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return result of the schema validation on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono validateSchemaAsync(Schema schema) {
+ return validateSchemaWithResponseAsync(schema).flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Validates the structure and content of a schema for use in Azure Data Transfer. This operation has reached end of
+ * life support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile
+ * resource.
+ *
+ * @param schema The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return result of the schema validation along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response validateSchemaWithResponse(Schema schema, Context context) {
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return service.validateSchemaSync(this.client.getEndpoint(), this.client.getApiVersion(), contentType, accept,
+ schema, context);
+ }
+
+ /**
+ * Validates the structure and content of a schema for use in Azure Data Transfer. This operation has reached end of
+ * life support starting version 2025-05-30-preview. For schema support please create and use a FlowProfile
+ * resource.
+ *
+ * @param schema The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return result of the schema validation.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ValidateSchemaResultInner validateSchema(Schema schema) {
+ return validateSchemaWithResponse(schema, Context.NONE).getValue();
+ }
+
+ /**
+ * Retrieves the pipeline metadata associated with a specified pipeline.
+ *
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return defines the response body for retrieving Pipeline metadata for a provided pipeline along with
+ * {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>
+ listPipelineMetadataWithResponseAsync(ListPipelineMetadataRequest body) {
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.listPipelineMetadata(this.client.getEndpoint(), this.client.getApiVersion(),
+ contentType, accept, body, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Retrieves the pipeline metadata associated with a specified pipeline.
+ *
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return defines the response body for retrieving Pipeline metadata for a provided pipeline on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono listPipelineMetadataAsync(ListPipelineMetadataRequest body) {
+ return listPipelineMetadataWithResponseAsync(body).flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Retrieves the pipeline metadata associated with a specified pipeline.
+ *
+ * @param body The request body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return defines the response body for retrieving Pipeline metadata for a provided pipeline along with
+ * {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response listPipelineMetadataWithResponse(ListPipelineMetadataRequest body,
+ Context context) {
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return service.listPipelineMetadataSync(this.client.getEndpoint(), this.client.getApiVersion(), contentType,
+ accept, body, context);
+ }
+
+ /**
+ * Retrieves the pipeline metadata associated with a specified pipeline.
+ *
+ * @param body The request body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return defines the response body for retrieving Pipeline metadata for a provided pipeline.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ListPipelineMetadataResultInner listPipelineMetadata(ListPipelineMetadataRequest body) {
+ return listPipelineMetadataWithResponse(body, Context.NONE).getValue();
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/implementation/AzureDataTransfersImpl.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/implementation/AzureDataTransfersImpl.java
new file mode 100644
index 0000000000000..d6dea753c070d
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/implementation/AzureDataTransfersImpl.java
@@ -0,0 +1,111 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.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.datatransfer.fluent.AzureDataTransfersClient;
+import com.azure.resourcemanager.datatransfer.fluent.models.FlowProfilesListResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.ListPipelineMetadataResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.SchemasListResultInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.ValidateSchemaResultInner;
+import com.azure.resourcemanager.datatransfer.models.AzureDataTransfers;
+import com.azure.resourcemanager.datatransfer.models.FlowProfilesListResult;
+import com.azure.resourcemanager.datatransfer.models.ListApprovedSchemasRequest;
+import com.azure.resourcemanager.datatransfer.models.ListFlowProfilesRequest;
+import com.azure.resourcemanager.datatransfer.models.ListPipelineMetadataRequest;
+import com.azure.resourcemanager.datatransfer.models.ListPipelineMetadataResult;
+import com.azure.resourcemanager.datatransfer.models.Schema;
+import com.azure.resourcemanager.datatransfer.models.SchemasListResult;
+import com.azure.resourcemanager.datatransfer.models.ValidateSchemaResult;
+
+public final class AzureDataTransfersImpl implements AzureDataTransfers {
+ private static final ClientLogger LOGGER = new ClientLogger(AzureDataTransfersImpl.class);
+
+ private final AzureDataTransfersClient innerClient;
+
+ private final com.azure.resourcemanager.datatransfer.DataTransferManager serviceManager;
+
+ public AzureDataTransfersImpl(AzureDataTransfersClient innerClient,
+ com.azure.resourcemanager.datatransfer.DataTransferManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public Response listApprovedSchemasWithResponse(ListApprovedSchemasRequest pipeline,
+ Context context) {
+ Response inner
+ = this.serviceClient().listApprovedSchemasWithResponse(pipeline, context);
+ return new SimpleResponse<>(inner.getRequest(), inner.getStatusCode(), inner.getHeaders(),
+ new SchemasListResultImpl(inner.getValue(), this.manager()));
+ }
+
+ public SchemasListResult listApprovedSchemas(ListApprovedSchemasRequest pipeline) {
+ SchemasListResultInner inner = this.serviceClient().listApprovedSchemas(pipeline);
+ if (inner != null) {
+ return new SchemasListResultImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response listFlowProfilesWithResponse(ListFlowProfilesRequest body,
+ Context context) {
+ Response inner = this.serviceClient().listFlowProfilesWithResponse(body, context);
+ return new SimpleResponse<>(inner.getRequest(), inner.getStatusCode(), inner.getHeaders(),
+ new FlowProfilesListResultImpl(inner.getValue(), this.manager()));
+ }
+
+ public FlowProfilesListResult listFlowProfiles(ListFlowProfilesRequest body) {
+ FlowProfilesListResultInner inner = this.serviceClient().listFlowProfiles(body);
+ if (inner != null) {
+ return new FlowProfilesListResultImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response validateSchemaWithResponse(Schema schema, Context context) {
+ Response inner = this.serviceClient().validateSchemaWithResponse(schema, context);
+ return new SimpleResponse<>(inner.getRequest(), inner.getStatusCode(), inner.getHeaders(),
+ new ValidateSchemaResultImpl(inner.getValue(), this.manager()));
+ }
+
+ public ValidateSchemaResult validateSchema(Schema schema) {
+ ValidateSchemaResultInner inner = this.serviceClient().validateSchema(schema);
+ if (inner != null) {
+ return new ValidateSchemaResultImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response listPipelineMetadataWithResponse(ListPipelineMetadataRequest body,
+ Context context) {
+ Response inner
+ = this.serviceClient().listPipelineMetadataWithResponse(body, context);
+ return new SimpleResponse<>(inner.getRequest(), inner.getStatusCode(), inner.getHeaders(),
+ new ListPipelineMetadataResultImpl(inner.getValue(), this.manager()));
+ }
+
+ public ListPipelineMetadataResult listPipelineMetadata(ListPipelineMetadataRequest body) {
+ ListPipelineMetadataResultInner inner = this.serviceClient().listPipelineMetadata(body);
+ if (inner != null) {
+ return new ListPipelineMetadataResultImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ private AzureDataTransfersClient serviceClient() {
+ return this.innerClient;
+ }
+
+ private com.azure.resourcemanager.datatransfer.DataTransferManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/implementation/ConnectionImpl.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/implementation/ConnectionImpl.java
new file mode 100644
index 0000000000000..dba76301f26e2
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/implementation/ConnectionImpl.java
@@ -0,0 +1,202 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.implementation;
+
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.management.Region;
+import com.azure.core.management.SystemData;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.datatransfer.fluent.models.ConnectionInner;
+import com.azure.resourcemanager.datatransfer.models.Connection;
+import com.azure.resourcemanager.datatransfer.models.ConnectionProperties;
+import com.azure.resourcemanager.datatransfer.models.ManagedServiceIdentity;
+import com.azure.resourcemanager.datatransfer.models.PendingConnection;
+import com.azure.resourcemanager.datatransfer.models.PendingFlow;
+import com.azure.resourcemanager.datatransfer.models.ResourceBody;
+import java.util.Collections;
+import java.util.Map;
+
+public final class ConnectionImpl implements Connection, Connection.Definition, Connection.Update {
+ private ConnectionInner innerObject;
+
+ private final com.azure.resourcemanager.datatransfer.DataTransferManager 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 ConnectionProperties properties() {
+ return this.innerModel().properties();
+ }
+
+ public ManagedServiceIdentity identity() {
+ return this.innerModel().identity();
+ }
+
+ public SystemData systemData() {
+ return this.innerModel().systemData();
+ }
+
+ public Region region() {
+ return Region.fromName(this.regionName());
+ }
+
+ public String regionName() {
+ return this.location();
+ }
+
+ public String resourceGroupName() {
+ return resourceGroupName;
+ }
+
+ public ConnectionInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.datatransfer.DataTransferManager manager() {
+ return this.serviceManager;
+ }
+
+ private String resourceGroupName;
+
+ private String connectionName;
+
+ public ConnectionImpl withExistingResourceGroup(String resourceGroupName) {
+ this.resourceGroupName = resourceGroupName;
+ return this;
+ }
+
+ public Connection create() {
+ this.innerObject = serviceManager.serviceClient()
+ .getConnections()
+ .createOrUpdate(resourceGroupName, connectionName, this.innerModel(), Context.NONE);
+ return this;
+ }
+
+ public Connection create(Context context) {
+ this.innerObject = serviceManager.serviceClient()
+ .getConnections()
+ .createOrUpdate(resourceGroupName, connectionName, this.innerModel(), context);
+ return this;
+ }
+
+ ConnectionImpl(String name, com.azure.resourcemanager.datatransfer.DataTransferManager serviceManager) {
+ this.innerObject = new ConnectionInner();
+ this.serviceManager = serviceManager;
+ this.connectionName = name;
+ }
+
+ public ConnectionImpl update() {
+ return this;
+ }
+
+ public Connection apply() {
+ this.innerObject = serviceManager.serviceClient()
+ .getConnections()
+ .createOrUpdate(resourceGroupName, connectionName, this.innerModel(), Context.NONE);
+ return this;
+ }
+
+ public Connection apply(Context context) {
+ this.innerObject = serviceManager.serviceClient()
+ .getConnections()
+ .createOrUpdate(resourceGroupName, connectionName, this.innerModel(), context);
+ return this;
+ }
+
+ ConnectionImpl(ConnectionInner innerObject,
+ com.azure.resourcemanager.datatransfer.DataTransferManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ this.resourceGroupName = ResourceManagerUtils.getValueFromIdByName(innerObject.id(), "resourceGroups");
+ this.connectionName = ResourceManagerUtils.getValueFromIdByName(innerObject.id(), "connections");
+ }
+
+ public Connection refresh() {
+ this.innerObject = serviceManager.serviceClient()
+ .getConnections()
+ .getByResourceGroupWithResponse(resourceGroupName, connectionName, Context.NONE)
+ .getValue();
+ return this;
+ }
+
+ public Connection refresh(Context context) {
+ this.innerObject = serviceManager.serviceClient()
+ .getConnections()
+ .getByResourceGroupWithResponse(resourceGroupName, connectionName, context)
+ .getValue();
+ return this;
+ }
+
+ public Connection link(ResourceBody connection) {
+ return serviceManager.connections().link(resourceGroupName, connectionName, connection);
+ }
+
+ public Connection link(ResourceBody connection, Context context) {
+ return serviceManager.connections().link(resourceGroupName, connectionName, connection, context);
+ }
+
+ public PagedIterable list() {
+ return serviceManager.connections().list(resourceGroupName, connectionName);
+ }
+
+ public PagedIterable list(Context context) {
+ return serviceManager.connections().list(resourceGroupName, connectionName, context);
+ }
+
+ public PagedIterable listPendingFlowsList() {
+ return serviceManager.connections().listPendingFlowsList(resourceGroupName, connectionName);
+ }
+
+ public PagedIterable listPendingFlowsList(Context context) {
+ return serviceManager.connections().listPendingFlowsList(resourceGroupName, connectionName, context);
+ }
+
+ public ConnectionImpl withRegion(Region location) {
+ this.innerModel().withLocation(location.toString());
+ return this;
+ }
+
+ public ConnectionImpl withRegion(String location) {
+ this.innerModel().withLocation(location);
+ return this;
+ }
+
+ public ConnectionImpl withTags(Map tags) {
+ this.innerModel().withTags(tags);
+ return this;
+ }
+
+ public ConnectionImpl withProperties(ConnectionProperties properties) {
+ this.innerModel().withProperties(properties);
+ return this;
+ }
+
+ public ConnectionImpl withIdentity(ManagedServiceIdentity identity) {
+ this.innerModel().withIdentity(identity);
+ return this;
+ }
+}
diff --git a/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/implementation/ConnectionsClientImpl.java b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/implementation/ConnectionsClientImpl.java
new file mode 100644
index 0000000000000..702e9595d389f
--- /dev/null
+++ b/sdk/datatransfer/azure-resourcemanager-datatransfer/src/main/java/com/azure/resourcemanager/datatransfer/implementation/ConnectionsClientImpl.java
@@ -0,0 +1,1707 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) TypeSpec Code Generator.
+
+package com.azure.resourcemanager.datatransfer.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.Patch;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Post;
+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.management.exception.ManagementException;
+import com.azure.core.management.polling.PollResult;
+import com.azure.core.util.BinaryData;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.core.util.polling.PollerFlux;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.datatransfer.fluent.ConnectionsClient;
+import com.azure.resourcemanager.datatransfer.fluent.models.ConnectionInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.PendingConnectionInner;
+import com.azure.resourcemanager.datatransfer.fluent.models.PendingFlowInner;
+import com.azure.resourcemanager.datatransfer.implementation.models.ConnectionListResult;
+import com.azure.resourcemanager.datatransfer.implementation.models.PendingConnectionListResult;
+import com.azure.resourcemanager.datatransfer.implementation.models.PendingFlowListResult;
+import com.azure.resourcemanager.datatransfer.models.ConnectionsPatch;
+import com.azure.resourcemanager.datatransfer.models.ResourceBody;
+import java.nio.ByteBuffer;
+import reactor.core.publisher.Flux;
+import reactor.core.publisher.Mono;
+
+/**
+ * An instance of this class provides access to all the operations defined in ConnectionsClient.
+ */
+public final class ConnectionsClientImpl implements ConnectionsClient {
+ /**
+ * The proxy service used to perform REST calls.
+ */
+ private final ConnectionsService service;
+
+ /**
+ * The service client containing this operation class.
+ */
+ private final DataTransferManagementClientImpl client;
+
+ /**
+ * Initializes an instance of ConnectionsClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ ConnectionsClientImpl(DataTransferManagementClientImpl client) {
+ this.service
+ = RestProxy.create(ConnectionsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for DataTransferManagementClientConnections to be used by the proxy
+ * service to perform REST calls.
+ */
+ @Host("{endpoint}")
+ @ServiceInterface(name = "DataTransferManagementClientConnections")
+ public interface ConnectionsService {
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> getByResourceGroup(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response getByResourceGroupSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, @HeaderParam("Accept") String accept, Context context);
+
+ @Put("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}")
+ @ExpectedResponses({ 200, 201 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> createOrUpdate(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") ConnectionInner connection,
+ Context context);
+
+ @Put("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}")
+ @ExpectedResponses({ 200, 201 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response createOrUpdateSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") ConnectionInner connection,
+ Context context);
+
+ @Patch("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}")
+ @ExpectedResponses({ 200, 202 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> update(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") ConnectionsPatch connection,
+ Context context);
+
+ @Patch("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}")
+ @ExpectedResponses({ 200, 202 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response updateSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") ConnectionsPatch connection,
+ Context context);
+
+ @Headers({ "Accept: application/json;q=0.9", "Content-Type: application/json" })
+ @Delete("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}")
+ @ExpectedResponses({ 202, 204 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> delete(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, Context context);
+
+ @Headers({ "Accept: application/json;q=0.9", "Content-Type: application/json" })
+ @Delete("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}")
+ @ExpectedResponses({ 202, 204 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response deleteSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listByResourceGroup(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response listByResourceGroupSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName, @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/providers/Microsoft.AzureDataTransfer/connections")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listBySubscription(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("/subscriptions/{subscriptionId}/providers/Microsoft.AzureDataTransfer/connections")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response listBySubscriptionSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept, Context context);
+
+ @Post("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}/link")
+ @ExpectedResponses({ 200, 202 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> link(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") ResourceBody connection,
+ Context context);
+
+ @Post("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}/link")
+ @ExpectedResponses({ 200, 202 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response linkSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, @HeaderParam("Content-Type") String contentType,
+ @HeaderParam("Accept") String accept, @BodyParam("application/json") ResourceBody connection,
+ Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Post("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}/listPendingConnections")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> list(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Post("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}/listPendingConnections")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response listSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Post("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}/listPendingFlows")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listPendingFlowsList(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Post("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AzureDataTransfer/connections/{connectionName}/listPendingFlows")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response listPendingFlowsListSync(@HostParam("endpoint") String endpoint,
+ @QueryParam("api-version") String apiVersion, @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("connectionName") String connectionName, @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listByResourceGroupNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink, @HostParam("endpoint") String endpoint,
+ @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response listByResourceGroupNextSync(
+ @PathParam(value = "nextLink", encoded = true) String nextLink, @HostParam("endpoint") String endpoint,
+ @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listBySubscriptionNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink, @HostParam("endpoint") String endpoint,
+ @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response listBySubscriptionNextSync(
+ @PathParam(value = "nextLink", encoded = true) String nextLink, @HostParam("endpoint") String endpoint,
+ @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink, @HostParam("endpoint") String endpoint,
+ @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response listNextSync(
+ @PathParam(value = "nextLink", encoded = true) String nextLink, @HostParam("endpoint") String endpoint,
+ @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listPendingFlowsListNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink, @HostParam("endpoint") String endpoint,
+ @HeaderParam("Accept") String accept, Context context);
+
+ @Headers({ "Content-Type: application/json" })
+ @Get("{nextLink}")
+ @ExpectedResponses({ 200 })
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Response listPendingFlowsListNextSync(
+ @PathParam(value = "nextLink", encoded = true) String nextLink, @HostParam("endpoint") String endpoint,
+ @HeaderParam("Accept") String accept, Context context);
+ }
+
+ /**
+ * Gets connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return connection resource along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getByResourceGroupWithResponseAsync(String resourceGroupName,
+ String connectionName) {
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.getByResourceGroup(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, connectionName, accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return connection resource on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getByResourceGroupAsync(String resourceGroupName, String connectionName) {
+ return getByResourceGroupWithResponseAsync(resourceGroupName, connectionName)
+ .flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Gets connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return connection resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getByResourceGroupWithResponse(String resourceGroupName, String connectionName,
+ Context context) {
+ final String accept = "application/json";
+ return service.getByResourceGroupSync(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, connectionName, accept, context);
+ }
+
+ /**
+ * Gets connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return connection resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ConnectionInner getByResourceGroup(String resourceGroupName, String connectionName) {
+ return getByResourceGroupWithResponse(resourceGroupName, connectionName, Context.NONE).getValue();
+ }
+
+ /**
+ * Creates or updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection resource definition along with {@link Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> createOrUpdateWithResponseAsync(String resourceGroupName,
+ String connectionName, ConnectionInner connection) {
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.createOrUpdate(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, connectionName, contentType, accept, connection,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Creates or updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection resource definition along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Response createOrUpdateWithResponse(String resourceGroupName, String connectionName,
+ ConnectionInner connection) {
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return service.createOrUpdateSync(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, connectionName, contentType, accept, connection,
+ Context.NONE);
+ }
+
+ /**
+ * Creates or updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the connection resource definition along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Response createOrUpdateWithResponse(String resourceGroupName, String connectionName,
+ ConnectionInner connection, Context context) {
+ final String contentType = "application/json";
+ final String accept = "application/json";
+ return service.createOrUpdateSync(this.client.getEndpoint(), this.client.getApiVersion(),
+ this.client.getSubscriptionId(), resourceGroupName, connectionName, contentType, accept, connection,
+ context);
+ }
+
+ /**
+ * Creates or updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link PollerFlux} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, ConnectionInner> beginCreateOrUpdateAsync(String resourceGroupName,
+ String connectionName, ConnectionInner connection) {
+ Mono>> mono
+ = createOrUpdateWithResponseAsync(resourceGroupName, connectionName, connection);
+ return this.client.getLroResult(mono, this.client.getHttpPipeline(),
+ ConnectionInner.class, ConnectionInner.class, this.client.getContext());
+ }
+
+ /**
+ * Creates or updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller, ConnectionInner> beginCreateOrUpdate(String resourceGroupName,
+ String connectionName, ConnectionInner connection) {
+ Response response = createOrUpdateWithResponse(resourceGroupName, connectionName, connection);
+ return this.client.getLroResult(response, ConnectionInner.class,
+ ConnectionInner.class, Context.NONE);
+ }
+
+ /**
+ * Creates or updates the connection resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param connectionName The name for the connection to perform the operation on.
+ * @param connection Connection body.
+ * @param context The context to associate with this operation.
+ * @throws IllegalArgumentException thrown if parameters fail the validation.
+ * @throws ManagementException thrown if the request is rejected by server.
+ * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
+ * @return the {@link SyncPoller} for polling of the connection resource definition.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ public SyncPoller