createWithResponse(
- String resourceGroupName, String serviceName, String apiCollectionId, Context context);
-
- /**
- * Onboard an Azure API Management API to Defender for APIs
- *
- * Onboard an Azure API Management API to Defender for APIs. The system will start monitoring the operations
- * within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been detected.
- *
- * @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serviceName The name of the API Management service.
- * @param apiCollectionId A string representing the apiCollections resource within the Microsoft.Security provider
- * namespace. This string matches the Azure API Management API name.
- * @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 API collection as represented by Defender for APIs.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- ApiCollectionResponseInner create(String resourceGroupName, String serviceName, String apiCollectionId);
-}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ApiCollectionsClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ApiCollectionsClient.java
index 6eded28ea973..7bde87fe2b8d 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ApiCollectionsClient.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ApiCollectionsClient.java
@@ -8,35 +8,98 @@
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.resourcemanager.security.fluent.models.ApiCollectionResponseInner;
+import com.azure.core.util.polling.SyncPoller;
+import com.azure.resourcemanager.security.fluent.models.ApiCollectionInner;
/** An instance of this class provides access to all the operations defined in ApiCollectionsClient. */
public interface ApiCollectionsClient {
/**
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs
+ * Gets a list of API collections within a subscription
*
- *
Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs. If an Azure API
- * Management API is onboarded to Defender for APIs, the system will monitor the operations within the Azure API
- * Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs.
+ *
+ * @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 API collections within a subscription that have been onboarded to Microsoft Defender for APIs
+ * as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Gets a list of API collections within a subscription
+ *
+ * Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs.
+ *
+ * @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 API collections within a subscription that have been onboarded to Microsoft Defender for APIs
+ * as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+
+ /**
+ * Gets a list of API collections within a resource group
+ *
+ * Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for
+ * APIs.
+ *
+ * @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 a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs
+ * as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName);
+
+ /**
+ * Gets a list of API collections within a resource group
+ *
+ * Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for
+ * APIs.
+ *
+ * @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 a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs
+ * as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable listByResourceGroup(String resourceGroupName, Context context);
+
+ /**
+ * Gets a list of onboarded Azure API Management APIs
+ *
+ * Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure
+ * API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serviceName The name of the API Management service.
* @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 Azure API Management APIs that have been onboarded to Defender for APIs as paginated response
- * with {@link PagedIterable}.
+ * @return a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs as paginated
+ * response with {@link PagedIterable}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(String resourceGroupName, String serviceName);
+ PagedIterable listByAzureApiManagementService(String resourceGroupName, String serviceName);
/**
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs
+ * Gets a list of onboarded Azure API Management APIs
*
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs. If an Azure API
- * Management API is onboarded to Defender for APIs, the system will monitor the operations within the Azure API
- * Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure
+ * API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serviceName The name of the API Management service.
@@ -44,49 +107,169 @@ public interface ApiCollectionsClient {
* @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 Azure API Management APIs that have been onboarded to Defender for APIs as paginated response
- * with {@link PagedIterable}.
+ * @return a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs as paginated
+ * response with {@link PagedIterable}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(String resourceGroupName, String serviceName, Context context);
+ PagedIterable listByAzureApiManagementService(
+ String resourceGroupName, String serviceName, Context context);
+
+ /**
+ * Gets an onboarded Azure API Management API
+ *
+ * Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API
+ * Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 Azure API Management API if it has been onboarded to Microsoft Defender for APIs along with {@link
+ * Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getByAzureApiManagementServiceWithResponse(
+ String resourceGroupName, String serviceName, String apiId, Context context);
+
+ /**
+ * Gets an onboarded Azure API Management API
+ *
+ * Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API
+ * Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 Azure API Management API if it has been onboarded to Microsoft Defender for APIs.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ApiCollectionInner getByAzureApiManagementService(String resourceGroupName, String serviceName, String apiId);
+
+ /**
+ * Onboard an Azure API Management API to Microsoft Defender for APIs
+ *
+ *
Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the
+ * operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been
+ * detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 an API collection as represented by Microsoft Defender for APIs.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ApiCollectionInner> beginOnboardAzureApiManagementApi(
+ String resourceGroupName, String serviceName, String apiId);
+
+ /**
+ * Onboard an Azure API Management API to Microsoft Defender for APIs
+ *
+ * Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the
+ * operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been
+ * detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 an API collection as represented by Microsoft Defender for APIs.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, ApiCollectionInner> beginOnboardAzureApiManagementApi(
+ String resourceGroupName, String serviceName, String apiId, Context context);
+
+ /**
+ * Onboard an Azure API Management API to Microsoft Defender for APIs
+ *
+ * Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the
+ * operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been
+ * detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 API collection as represented by Microsoft Defender for APIs.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ApiCollectionInner onboardAzureApiManagementApi(String resourceGroupName, String serviceName, String apiId);
+
+ /**
+ * Onboard an Azure API Management API to Microsoft Defender for APIs
+ *
+ *
Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the
+ * operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been
+ * detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 API collection as represented by Microsoft Defender for APIs.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ApiCollectionInner onboardAzureApiManagementApi(
+ String resourceGroupName, String serviceName, String apiId, Context context);
/**
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs
+ * Offboard an Azure API Management API from Microsoft Defender for APIs
*
- *
Gets an Azure API Management API if it has been onboarded to Defender for APIs. If an Azure API Management API
- * is onboarded to Defender for APIs, the system will monitor the operations within the Azure API Management API for
- * intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop monitoring the
+ * operations within the Azure API Management API for intrusive behaviors.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serviceName The name of the API Management service.
- * @param apiCollectionId A string representing the apiCollections resource within the Microsoft.Security provider
- * namespace. This string matches the Azure API Management API name.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
* @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 Azure API Management API if it has been onboarded to Defender for APIs along with {@link Response}.
+ * @return the {@link Response}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response getWithResponse(
- String resourceGroupName, String serviceName, String apiCollectionId, Context context);
+ Response offboardAzureApiManagementApiWithResponse(
+ String resourceGroupName, String serviceName, String apiId, Context context);
/**
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs
+ * Offboard an Azure API Management API from Microsoft Defender for APIs
*
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs. If an Azure API Management API
- * is onboarded to Defender for APIs, the system will monitor the operations within the Azure API Management API for
- * intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop monitoring the
+ * operations within the Azure API Management API for intrusive behaviors.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serviceName The name of the API Management service.
- * @param apiCollectionId A string representing the apiCollections resource within the Microsoft.Security provider
- * namespace. This string matches the Azure API Management API name.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
* @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 Azure API Management API if it has been onboarded to Defender for APIs.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- ApiCollectionResponseInner get(String resourceGroupName, String serviceName, String apiCollectionId);
+ void offboardAzureApiManagementApi(String resourceGroupName, String serviceName, String apiId);
}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/AzureDevOpsOrgsClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/AzureDevOpsOrgsClient.java
new file mode 100644
index 000000000000..f306bc8496c8
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/AzureDevOpsOrgsClient.java
@@ -0,0 +1,251 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.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.security.fluent.models.AzureDevOpsOrgInner;
+import com.azure.resourcemanager.security.fluent.models.AzureDevOpsOrgListResponseInner;
+
+/** An instance of this class provides access to all the operations defined in AzureDevOpsOrgsClient. */
+public interface AzureDevOpsOrgsClient {
+ /**
+ * Returns a list of all Azure DevOps organizations accessible by the user token consumed by the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listAvailableWithResponse(
+ String resourceGroupName, String securityConnectorName, Context context);
+
+ /**
+ * Returns a list of all Azure DevOps organizations accessible by the user token consumed by the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsOrgListResponseInner listAvailable(String resourceGroupName, String securityConnectorName);
+
+ /**
+ * Returns a list of Azure DevOps organizations onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String securityConnectorName);
+
+ /**
+ * Returns a list of Azure DevOps organizations onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String securityConnectorName, Context context);
+
+ /**
+ * Returns a monitored Azure DevOps organization resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @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 azure DevOps Organization resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String securityConnectorName, String orgName, Context context);
+
+ /**
+ * Returns a monitored Azure DevOps organization resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @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 azure DevOps Organization resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsOrgInner get(String resourceGroupName, String securityConnectorName, String orgName);
+
+ /**
+ * Creates or updates monitored Azure DevOps organization details.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param azureDevOpsOrg The Azure DevOps organization resource payload.
+ * @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 azure DevOps Organization resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, AzureDevOpsOrgInner> beginCreateOrUpdate(
+ String resourceGroupName, String securityConnectorName, String orgName, AzureDevOpsOrgInner azureDevOpsOrg);
+
+ /**
+ * Creates or updates monitored Azure DevOps organization details.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param azureDevOpsOrg The Azure DevOps organization resource payload.
+ * @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 azure DevOps Organization resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, AzureDevOpsOrgInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ AzureDevOpsOrgInner azureDevOpsOrg,
+ Context context);
+
+ /**
+ * Creates or updates monitored Azure DevOps organization details.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param azureDevOpsOrg The Azure DevOps organization resource payload.
+ * @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 azure DevOps Organization resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsOrgInner createOrUpdate(
+ String resourceGroupName, String securityConnectorName, String orgName, AzureDevOpsOrgInner azureDevOpsOrg);
+
+ /**
+ * Creates or updates monitored Azure DevOps organization details.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param azureDevOpsOrg The Azure DevOps organization resource payload.
+ * @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 azure DevOps Organization resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsOrgInner createOrUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ AzureDevOpsOrgInner azureDevOpsOrg,
+ Context context);
+
+ /**
+ * Updates monitored Azure DevOps organization details.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param azureDevOpsOrg The Azure DevOps organization resource payload.
+ * @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 azure DevOps Organization resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, AzureDevOpsOrgInner> beginUpdate(
+ String resourceGroupName, String securityConnectorName, String orgName, AzureDevOpsOrgInner azureDevOpsOrg);
+
+ /**
+ * Updates monitored Azure DevOps organization details.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param azureDevOpsOrg The Azure DevOps organization resource payload.
+ * @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 azure DevOps Organization resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, AzureDevOpsOrgInner> beginUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ AzureDevOpsOrgInner azureDevOpsOrg,
+ Context context);
+
+ /**
+ * Updates monitored Azure DevOps organization details.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param azureDevOpsOrg The Azure DevOps organization resource payload.
+ * @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 azure DevOps Organization resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsOrgInner update(
+ String resourceGroupName, String securityConnectorName, String orgName, AzureDevOpsOrgInner azureDevOpsOrg);
+
+ /**
+ * Updates monitored Azure DevOps organization details.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param azureDevOpsOrg The Azure DevOps organization resource payload.
+ * @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 azure DevOps Organization resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsOrgInner update(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ AzureDevOpsOrgInner azureDevOpsOrg,
+ Context context);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/AzureDevOpsProjectsClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/AzureDevOpsProjectsClient.java
new file mode 100644
index 000000000000..ef13605eba26
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/AzureDevOpsProjectsClient.java
@@ -0,0 +1,256 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.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.security.fluent.models.AzureDevOpsProjectInner;
+
+/** An instance of this class provides access to all the operations defined in AzureDevOpsProjectsClient. */
+public interface AzureDevOpsProjectsClient {
+ /**
+ * Returns a list of Azure DevOps projects onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String securityConnectorName, String orgName);
+
+ /**
+ * Returns a list of Azure DevOps projects onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(
+ String resourceGroupName, String securityConnectorName, String orgName, Context context);
+
+ /**
+ * Returns a monitored Azure DevOps project resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @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 azure DevOps Project resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String securityConnectorName, String orgName, String projectName, Context context);
+
+ /**
+ * Returns a monitored Azure DevOps project resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @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 azure DevOps Project resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsProjectInner get(
+ String resourceGroupName, String securityConnectorName, String orgName, String projectName);
+
+ /**
+ * Creates or updates a monitored Azure DevOps project resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param azureDevOpsProject The Azure DevOps project resource payload.
+ * @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 azure DevOps Project resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, AzureDevOpsProjectInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ AzureDevOpsProjectInner azureDevOpsProject);
+
+ /**
+ * Creates or updates a monitored Azure DevOps project resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param azureDevOpsProject The Azure DevOps project resource payload.
+ * @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 azure DevOps Project resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, AzureDevOpsProjectInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ AzureDevOpsProjectInner azureDevOpsProject,
+ Context context);
+
+ /**
+ * Creates or updates a monitored Azure DevOps project resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param azureDevOpsProject The Azure DevOps project resource payload.
+ * @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 azure DevOps Project resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsProjectInner createOrUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ AzureDevOpsProjectInner azureDevOpsProject);
+
+ /**
+ * Creates or updates a monitored Azure DevOps project resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param azureDevOpsProject The Azure DevOps project resource payload.
+ * @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 azure DevOps Project resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsProjectInner createOrUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ AzureDevOpsProjectInner azureDevOpsProject,
+ Context context);
+
+ /**
+ * Updates a monitored Azure DevOps project resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param azureDevOpsProject The Azure DevOps project resource payload.
+ * @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 azure DevOps Project resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, AzureDevOpsProjectInner> beginUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ AzureDevOpsProjectInner azureDevOpsProject);
+
+ /**
+ * Updates a monitored Azure DevOps project resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param azureDevOpsProject The Azure DevOps project resource payload.
+ * @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 azure DevOps Project resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, AzureDevOpsProjectInner> beginUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ AzureDevOpsProjectInner azureDevOpsProject,
+ Context context);
+
+ /**
+ * Updates a monitored Azure DevOps project resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param azureDevOpsProject The Azure DevOps project resource payload.
+ * @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 azure DevOps Project resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsProjectInner update(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ AzureDevOpsProjectInner azureDevOpsProject);
+
+ /**
+ * Updates a monitored Azure DevOps project resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param azureDevOpsProject The Azure DevOps project resource payload.
+ * @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 azure DevOps Project resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsProjectInner update(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ AzureDevOpsProjectInner azureDevOpsProject,
+ Context context);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/AzureDevOpsReposClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/AzureDevOpsReposClient.java
new file mode 100644
index 000000000000..65831decc2be
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/AzureDevOpsReposClient.java
@@ -0,0 +1,282 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.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.security.fluent.models.AzureDevOpsRepositoryInner;
+
+/** An instance of this class provides access to all the operations defined in AzureDevOpsReposClient. */
+public interface AzureDevOpsReposClient {
+ /**
+ * Returns a list of Azure DevOps repositories onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(
+ String resourceGroupName, String securityConnectorName, String orgName, String projectName);
+
+ /**
+ * Returns a list of Azure DevOps repositories onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(
+ String resourceGroupName, String securityConnectorName, String orgName, String projectName, Context context);
+
+ /**
+ * Returns a monitored Azure DevOps repository resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param repoName The repository name.
+ * @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 azure DevOps Repository resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ String repoName,
+ Context context);
+
+ /**
+ * Returns a monitored Azure DevOps repository resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param repoName The repository name.
+ * @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 azure DevOps Repository resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsRepositoryInner get(
+ String resourceGroupName, String securityConnectorName, String orgName, String projectName, String repoName);
+
+ /**
+ * Creates or updates a monitored Azure DevOps repository resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param repoName The repository name.
+ * @param azureDevOpsRepository The Azure DevOps repository resource payload.
+ * @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 azure DevOps Repository resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, AzureDevOpsRepositoryInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ String repoName,
+ AzureDevOpsRepositoryInner azureDevOpsRepository);
+
+ /**
+ * Creates or updates a monitored Azure DevOps repository resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param repoName The repository name.
+ * @param azureDevOpsRepository The Azure DevOps repository resource payload.
+ * @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 azure DevOps Repository resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, AzureDevOpsRepositoryInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ String repoName,
+ AzureDevOpsRepositoryInner azureDevOpsRepository,
+ Context context);
+
+ /**
+ * Creates or updates a monitored Azure DevOps repository resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param repoName The repository name.
+ * @param azureDevOpsRepository The Azure DevOps repository resource payload.
+ * @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 azure DevOps Repository resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsRepositoryInner createOrUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ String repoName,
+ AzureDevOpsRepositoryInner azureDevOpsRepository);
+
+ /**
+ * Creates or updates a monitored Azure DevOps repository resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param repoName The repository name.
+ * @param azureDevOpsRepository The Azure DevOps repository resource payload.
+ * @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 azure DevOps Repository resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsRepositoryInner createOrUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ String repoName,
+ AzureDevOpsRepositoryInner azureDevOpsRepository,
+ Context context);
+
+ /**
+ * Updates a monitored Azure DevOps repository resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param repoName The repository name.
+ * @param azureDevOpsRepository The Azure DevOps repository resource payload.
+ * @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 azure DevOps Repository resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, AzureDevOpsRepositoryInner> beginUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ String repoName,
+ AzureDevOpsRepositoryInner azureDevOpsRepository);
+
+ /**
+ * Updates a monitored Azure DevOps repository resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param repoName The repository name.
+ * @param azureDevOpsRepository The Azure DevOps repository resource payload.
+ * @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 azure DevOps Repository resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, AzureDevOpsRepositoryInner> beginUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ String repoName,
+ AzureDevOpsRepositoryInner azureDevOpsRepository,
+ Context context);
+
+ /**
+ * Updates a monitored Azure DevOps repository resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param repoName The repository name.
+ * @param azureDevOpsRepository The Azure DevOps repository resource payload.
+ * @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 azure DevOps Repository resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsRepositoryInner update(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ String repoName,
+ AzureDevOpsRepositoryInner azureDevOpsRepository);
+
+ /**
+ * Updates a monitored Azure DevOps repository resource.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param orgName The Azure DevOps organization name.
+ * @param projectName The project name.
+ * @param repoName The repository name.
+ * @param azureDevOpsRepository The Azure DevOps repository resource payload.
+ * @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 azure DevOps Repository resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ AzureDevOpsRepositoryInner update(
+ String resourceGroupName,
+ String securityConnectorName,
+ String orgName,
+ String projectName,
+ String repoName,
+ AzureDevOpsRepositoryInner azureDevOpsRepository,
+ Context context);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/DefenderForStoragesClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/DefenderForStoragesClient.java
new file mode 100644
index 000000000000..563cd6065573
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/DefenderForStoragesClient.java
@@ -0,0 +1,79 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.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.security.fluent.models.DefenderForStorageSettingInner;
+import com.azure.resourcemanager.security.models.SettingNameAutoGenerated;
+
+/** An instance of this class provides access to all the operations defined in DefenderForStoragesClient. */
+public interface DefenderForStoragesClient {
+ /**
+ * Gets the Defender for Storage settings for the specified storage account.
+ *
+ * @param resourceId The identifier of the resource.
+ * @param settingName Defender for Storage setting name.
+ * @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 Defender for Storage settings for the specified storage account along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceId, SettingNameAutoGenerated settingName, Context context);
+
+ /**
+ * Gets the Defender for Storage settings for the specified storage account.
+ *
+ * @param resourceId The identifier of the resource.
+ * @param settingName Defender for Storage setting name.
+ * @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 Defender for Storage settings for the specified storage account.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ DefenderForStorageSettingInner get(String resourceId, SettingNameAutoGenerated settingName);
+
+ /**
+ * Creates or updates the Defender for Storage settings on a specified storage account.
+ *
+ * @param resourceId The identifier of the resource.
+ * @param settingName Defender for Storage setting name.
+ * @param defenderForStorageSetting Defender for Storage Settings.
+ * @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 Defender for Storage resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createWithResponse(
+ String resourceId,
+ SettingNameAutoGenerated settingName,
+ DefenderForStorageSettingInner defenderForStorageSetting,
+ Context context);
+
+ /**
+ * Creates or updates the Defender for Storage settings on a specified storage account.
+ *
+ * @param resourceId The identifier of the resource.
+ * @param settingName Defender for Storage setting name.
+ * @param defenderForStorageSetting Defender for Storage Settings.
+ * @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 Defender for Storage resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ DefenderForStorageSettingInner create(
+ String resourceId,
+ SettingNameAutoGenerated settingName,
+ DefenderForStorageSettingInner defenderForStorageSetting);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/DevOpsConfigurationsClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/DevOpsConfigurationsClient.java
new file mode 100644
index 000000000000..1b86382b2652
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/DevOpsConfigurationsClient.java
@@ -0,0 +1,262 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.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.security.fluent.models.DevOpsConfigurationInner;
+
+/** An instance of this class provides access to all the operations defined in DevOpsConfigurationsClient. */
+public interface DevOpsConfigurationsClient {
+ /**
+ * List DevOps Configurations.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String securityConnectorName);
+
+ /**
+ * List DevOps Configurations.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(
+ String resourceGroupName, String securityConnectorName, Context context);
+
+ /**
+ * Gets a DevOps Configuration.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 DevOps Configuration along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String securityConnectorName, Context context);
+
+ /**
+ * Gets a DevOps Configuration.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 DevOps Configuration.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ DevOpsConfigurationInner get(String resourceGroupName, String securityConnectorName);
+
+ /**
+ * Creates or updates a DevOps Configuration.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param devOpsConfiguration The DevOps configuration resource payload.
+ * @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 devOps Configuration resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, DevOpsConfigurationInner> beginCreateOrUpdate(
+ String resourceGroupName, String securityConnectorName, DevOpsConfigurationInner devOpsConfiguration);
+
+ /**
+ * Creates or updates a DevOps Configuration.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param devOpsConfiguration The DevOps configuration resource payload.
+ * @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 devOps Configuration resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, DevOpsConfigurationInner> beginCreateOrUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ DevOpsConfigurationInner devOpsConfiguration,
+ Context context);
+
+ /**
+ * Creates or updates a DevOps Configuration.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param devOpsConfiguration The DevOps configuration resource payload.
+ * @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 devOps Configuration resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ DevOpsConfigurationInner createOrUpdate(
+ String resourceGroupName, String securityConnectorName, DevOpsConfigurationInner devOpsConfiguration);
+
+ /**
+ * Creates or updates a DevOps Configuration.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param devOpsConfiguration The DevOps configuration resource payload.
+ * @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 devOps Configuration resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ DevOpsConfigurationInner createOrUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ DevOpsConfigurationInner devOpsConfiguration,
+ Context context);
+
+ /**
+ * Updates a DevOps Configuration.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param devOpsConfiguration The DevOps configuration resource payload.
+ * @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 devOps Configuration resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, DevOpsConfigurationInner> beginUpdate(
+ String resourceGroupName, String securityConnectorName, DevOpsConfigurationInner devOpsConfiguration);
+
+ /**
+ * Updates a DevOps Configuration.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param devOpsConfiguration The DevOps configuration resource payload.
+ * @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 devOps Configuration resource.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ SyncPoller, DevOpsConfigurationInner> beginUpdate(
+ String resourceGroupName,
+ String securityConnectorName,
+ DevOpsConfigurationInner devOpsConfiguration,
+ Context context);
+
+ /**
+ * Updates a DevOps Configuration.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param devOpsConfiguration The DevOps configuration resource payload.
+ * @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 devOps Configuration resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ DevOpsConfigurationInner update(
+ String resourceGroupName, String securityConnectorName, DevOpsConfigurationInner devOpsConfiguration);
+
+ /**
+ * Updates a DevOps Configuration.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param devOpsConfiguration The DevOps configuration resource payload.
+ * @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 devOps Configuration resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ DevOpsConfigurationInner update(
+ String resourceGroupName,
+ String securityConnectorName,
+ DevOpsConfigurationInner devOpsConfiguration,
+ Context context);
+
+ /**
+ * Deletes a DevOps Connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 securityConnectorName);
+
+ /**
+ * Deletes a DevOps Connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 securityConnectorName, Context context);
+
+ /**
+ * Deletes a DevOps Connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 securityConnectorName);
+
+ /**
+ * Deletes a DevOps Connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 securityConnectorName, Context context);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ApiCollectionOffboardingsClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/DevOpsOperationResultsClient.java
similarity index 50%
rename from sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ApiCollectionOffboardingsClient.java
rename to sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/DevOpsOperationResultsClient.java
index 01617030ae54..9935fc201e77 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ApiCollectionOffboardingsClient.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/DevOpsOperationResultsClient.java
@@ -8,43 +8,37 @@
import com.azure.core.annotation.ServiceMethod;
import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
+import com.azure.resourcemanager.security.fluent.models.OperationStatusResultInner;
-/** An instance of this class provides access to all the operations defined in ApiCollectionOffboardingsClient. */
-public interface ApiCollectionOffboardingsClient {
+/** An instance of this class provides access to all the operations defined in DevOpsOperationResultsClient. */
+public interface DevOpsOperationResultsClient {
/**
- * Offboard an Azure API Management API from Defender for APIs
- *
- * Offboard an Azure API Management API from Defender for APIs. The system will stop monitoring the operations
- * within the Azure API Management API for intrusive behaviors.
+ * Get devops long running operation result.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serviceName The name of the API Management service.
- * @param apiCollectionId A string representing the apiCollections resource within the Microsoft.Security provider
- * namespace. This string matches the Azure API Management API name.
+ * @param securityConnectorName The security connector name.
+ * @param operationResultId The operation result Id.
* @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 Response}.
+ * @return devops long running operation result along with {@link Response}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response deleteWithResponse(
- String resourceGroupName, String serviceName, String apiCollectionId, Context context);
+ Response getWithResponse(
+ String resourceGroupName, String securityConnectorName, String operationResultId, Context context);
/**
- * Offboard an Azure API Management API from Defender for APIs
- *
- * Offboard an Azure API Management API from Defender for APIs. The system will stop monitoring the operations
- * within the Azure API Management API for intrusive behaviors.
+ * Get devops long running operation result.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serviceName The name of the API Management service.
- * @param apiCollectionId A string representing the apiCollections resource within the Microsoft.Security provider
- * namespace. This string matches the Azure API Management API name.
+ * @param securityConnectorName The security connector name.
+ * @param operationResultId The operation result Id.
* @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 devops long running operation result.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- void delete(String resourceGroupName, String serviceName, String apiCollectionId);
+ OperationStatusResultInner get(String resourceGroupName, String securityConnectorName, String operationResultId);
}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitHubOwnersClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitHubOwnersClient.java
new file mode 100644
index 000000000000..de8b306e89d1
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitHubOwnersClient.java
@@ -0,0 +1,101 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.security.fluent.models.GitHubOwnerInner;
+import com.azure.resourcemanager.security.fluent.models.GitHubOwnerListResponseInner;
+
+/** An instance of this class provides access to all the operations defined in GitHubOwnersClient. */
+public interface GitHubOwnersClient {
+ /**
+ * Returns a list of all GitHub owners accessible by the user token consumed by the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listAvailableWithResponse(
+ String resourceGroupName, String securityConnectorName, Context context);
+
+ /**
+ * Returns a list of all GitHub owners accessible by the user token consumed by the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GitHubOwnerListResponseInner listAvailable(String resourceGroupName, String securityConnectorName);
+
+ /**
+ * Returns a list of GitHub owners onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String securityConnectorName);
+
+ /**
+ * Returns a list of GitHub owners onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String securityConnectorName, Context context);
+
+ /**
+ * Returns a monitored GitHub owner.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param ownerName The GitHub owner name.
+ * @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 gitHub Owner resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String securityConnectorName, String ownerName, Context context);
+
+ /**
+ * Returns a monitored GitHub owner.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param ownerName The GitHub owner name.
+ * @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 gitHub Owner resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GitHubOwnerInner get(String resourceGroupName, String securityConnectorName, String ownerName);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitHubReposClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitHubReposClient.java
new file mode 100644
index 000000000000..01ccb8004896
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitHubReposClient.java
@@ -0,0 +1,78 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.security.fluent.models.GitHubRepositoryInner;
+
+/** An instance of this class provides access to all the operations defined in GitHubReposClient. */
+public interface GitHubReposClient {
+ /**
+ * Returns a list of GitHub repositories onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param ownerName The GitHub owner name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String securityConnectorName, String ownerName);
+
+ /**
+ * Returns a list of GitHub repositories onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param ownerName The GitHub owner name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(
+ String resourceGroupName, String securityConnectorName, String ownerName, Context context);
+
+ /**
+ * Returns a monitored GitHub repository.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param ownerName The GitHub owner name.
+ * @param repoName The repository name.
+ * @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 gitHub Repository resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String securityConnectorName, String ownerName, String repoName, Context context);
+
+ /**
+ * Returns a monitored GitHub repository.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param ownerName The GitHub owner name.
+ * @param repoName The repository name.
+ * @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 gitHub Repository resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GitHubRepositoryInner get(
+ String resourceGroupName, String securityConnectorName, String ownerName, String repoName);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitLabGroupsClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitLabGroupsClient.java
new file mode 100644
index 000000000000..8884096b831f
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitLabGroupsClient.java
@@ -0,0 +1,101 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.security.fluent.models.GitLabGroupInner;
+import com.azure.resourcemanager.security.fluent.models.GitLabGroupListResponseInner;
+
+/** An instance of this class provides access to all the operations defined in GitLabGroupsClient. */
+public interface GitLabGroupsClient {
+ /**
+ * Returns a list of all GitLab groups accessible by the user token consumed by the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listAvailableWithResponse(
+ String resourceGroupName, String securityConnectorName, Context context);
+
+ /**
+ * Returns a list of all GitLab groups accessible by the user token consumed by the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GitLabGroupListResponseInner listAvailable(String resourceGroupName, String securityConnectorName);
+
+ /**
+ * Returns a list of GitLab groups onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String securityConnectorName);
+
+ /**
+ * Returns a list of GitLab groups onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @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 list of RP resources which supports pagination as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String securityConnectorName, Context context);
+
+ /**
+ * Returns a monitored GitLab Group resource for a given fully-qualified name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param groupFQName The GitLab group fully-qualified name.
+ * @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 gitLab Group resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName, String securityConnectorName, String groupFQName, Context context);
+
+ /**
+ * Returns a monitored GitLab Group resource for a given fully-qualified name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param groupFQName The GitLab group fully-qualified name.
+ * @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 gitLab Group resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GitLabGroupInner get(String resourceGroupName, String securityConnectorName, String groupFQName);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitLabProjectsClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitLabProjectsClient.java
new file mode 100644
index 000000000000..413456baa6e5
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitLabProjectsClient.java
@@ -0,0 +1,84 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.security.fluent.models.GitLabProjectInner;
+
+/** An instance of this class provides access to all the operations defined in GitLabProjectsClient. */
+public interface GitLabProjectsClient {
+ /**
+ * Gets a list of GitLab projects that are directly owned by given group and onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param groupFQName The GitLab group fully-qualified name.
+ * @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 GitLab projects that are directly owned by given group and onboarded to the connector as
+ * paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(String resourceGroupName, String securityConnectorName, String groupFQName);
+
+ /**
+ * Gets a list of GitLab projects that are directly owned by given group and onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param groupFQName The GitLab group fully-qualified name.
+ * @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 GitLab projects that are directly owned by given group and onboarded to the connector as
+ * paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(
+ String resourceGroupName, String securityConnectorName, String groupFQName, Context context);
+
+ /**
+ * Returns a monitored GitLab Project resource for a given fully-qualified group name and project name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param groupFQName The GitLab group fully-qualified name.
+ * @param projectName The project name.
+ * @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 gitLab Project resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ String resourceGroupName,
+ String securityConnectorName,
+ String groupFQName,
+ String projectName,
+ Context context);
+
+ /**
+ * Returns a monitored GitLab Project resource for a given fully-qualified group name and project name.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param groupFQName The GitLab group fully-qualified name.
+ * @param projectName The project name.
+ * @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 gitLab Project resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GitLabProjectInner get(
+ String resourceGroupName, String securityConnectorName, String groupFQName, String projectName);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitLabSubgroupsClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitLabSubgroupsClient.java
new file mode 100644
index 000000000000..8f1549117e5b
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/GitLabSubgroupsClient.java
@@ -0,0 +1,44 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.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.security.fluent.models.GitLabGroupListResponseInner;
+
+/** An instance of this class provides access to all the operations defined in GitLabSubgroupsClient. */
+public interface GitLabSubgroupsClient {
+ /**
+ * Gets nested subgroups of given GitLab Group which are onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param groupFQName The GitLab group fully-qualified name.
+ * @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 nested subgroups of given GitLab Group which are onboarded to the connector along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response listWithResponse(
+ String resourceGroupName, String securityConnectorName, String groupFQName, Context context);
+
+ /**
+ * Gets nested subgroups of given GitLab Group which are onboarded to the connector.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param securityConnectorName The security connector name.
+ * @param groupFQName The GitLab group fully-qualified name.
+ * @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 nested subgroups of given GitLab Group which are onboarded to the connector.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GitLabGroupListResponseInner list(String resourceGroupName, String securityConnectorName, String groupFQName);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/HealthReportsClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/HealthReportsClient.java
index 57ee9785cfd2..ab86a82e0368 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/HealthReportsClient.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/HealthReportsClient.java
@@ -7,6 +7,7 @@
import com.azure.core.annotation.ReturnType;
import com.azure.core.annotation.ServiceMethod;
import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
import com.azure.resourcemanager.security.fluent.models.HealthReportInner;
@@ -40,4 +41,31 @@ public interface HealthReportsClient {
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
PagedIterable list(String scope, Context context);
+
+ /**
+ * Get health report of resource.
+ *
+ * @param resourceId The identifier of the resource.
+ * @param healthReportName The health report Key - Unique key for the health report type.
+ * @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 health report of resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(String resourceId, String healthReportName, Context context);
+
+ /**
+ * Get health report of resource.
+ *
+ * @param resourceId The identifier of the resource.
+ * @param healthReportName The health report Key - Unique key for the health report type.
+ * @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 health report of resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ HealthReportInner get(String resourceId, String healthReportName);
}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/IngestionSettingsClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/IngestionSettingsClient.java
deleted file mode 100644
index c0765e68586c..000000000000
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/IngestionSettingsClient.java
+++ /dev/null
@@ -1,169 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.security.fluent;
-
-import com.azure.core.annotation.ReturnType;
-import com.azure.core.annotation.ServiceMethod;
-import com.azure.core.http.rest.PagedIterable;
-import com.azure.core.http.rest.Response;
-import com.azure.core.util.Context;
-import com.azure.resourcemanager.security.fluent.models.ConnectionStringsInner;
-import com.azure.resourcemanager.security.fluent.models.IngestionSettingInner;
-import com.azure.resourcemanager.security.fluent.models.IngestionSettingTokenInner;
-
-/** An instance of this class provides access to all the operations defined in IngestionSettingsClient. */
-public interface IngestionSettingsClient {
- /**
- * Settings for ingesting security data and logs to correlate with resources associated with the 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 list of ingestion settings as paginated response with {@link PagedIterable}.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list();
-
- /**
- * Settings for ingesting security data and logs to correlate with resources associated with the 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 list of ingestion settings as paginated response with {@link PagedIterable}.
- */
- @ServiceMethod(returns = ReturnType.COLLECTION)
- PagedIterable list(Context context);
-
- /**
- * Settings for ingesting security data and logs to correlate with resources associated with the subscription.
- *
- * @param ingestionSettingName Name of the ingestion setting.
- * @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 configures how to correlate scan data and logs with resources associated with the subscription along with
- * {@link Response}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response getWithResponse(String ingestionSettingName, Context context);
-
- /**
- * Settings for ingesting security data and logs to correlate with resources associated with the subscription.
- *
- * @param ingestionSettingName Name of the ingestion setting.
- * @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 configures how to correlate scan data and logs with resources associated with the subscription.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- IngestionSettingInner get(String ingestionSettingName);
-
- /**
- * Create setting for ingesting security data and logs to correlate with resources associated with the subscription.
- *
- * @param ingestionSettingName Name of the ingestion setting.
- * @param ingestionSetting Ingestion setting object.
- * @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 configures how to correlate scan data and logs with resources associated with the subscription along with
- * {@link Response}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response createWithResponse(
- String ingestionSettingName, IngestionSettingInner ingestionSetting, Context context);
-
- /**
- * Create setting for ingesting security data and logs to correlate with resources associated with the subscription.
- *
- * @param ingestionSettingName Name of the ingestion setting.
- * @param ingestionSetting Ingestion setting object.
- * @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 configures how to correlate scan data and logs with resources associated with the subscription.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- IngestionSettingInner create(String ingestionSettingName, IngestionSettingInner ingestionSetting);
-
- /**
- * Deletes the ingestion settings for this subscription.
- *
- * @param ingestionSettingName Name of the ingestion setting.
- * @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 Response}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response deleteWithResponse(String ingestionSettingName, Context context);
-
- /**
- * Deletes the ingestion settings for this subscription.
- *
- * @param ingestionSettingName Name of the ingestion setting.
- * @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 ingestionSettingName);
-
- /**
- * Returns the token that is used for correlating ingested telemetry with the resources in the subscription.
- *
- * @param ingestionSettingName Name of the ingestion setting.
- * @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 configures how to correlate scan data and logs with resources associated with the subscription along with
- * {@link Response}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response listTokensWithResponse(String ingestionSettingName, Context context);
-
- /**
- * Returns the token that is used for correlating ingested telemetry with the resources in the subscription.
- *
- * @param ingestionSettingName Name of the ingestion setting.
- * @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 configures how to correlate scan data and logs with resources associated with the subscription.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- IngestionSettingTokenInner listTokens(String ingestionSettingName);
-
- /**
- * Connection strings for ingesting security scan logs and data.
- *
- * @param ingestionSettingName Name of the ingestion setting.
- * @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 string for ingesting security data and logs along with {@link Response}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- Response listConnectionStringsWithResponse(String ingestionSettingName, Context context);
-
- /**
- * Connection strings for ingesting security scan logs and data.
- *
- * @param ingestionSettingName Name of the ingestion setting.
- * @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 string for ingesting security data and logs.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- ConnectionStringsInner listConnectionStrings(String ingestionSettingName);
-}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ResourceProvidersClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ResourceProvidersClient.java
new file mode 100644
index 000000000000..099992cef0fa
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ResourceProvidersClient.java
@@ -0,0 +1,63 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.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.security.fluent.models.GetSensitivitySettingsResponseInner;
+import com.azure.resourcemanager.security.models.UpdateSensitivitySettingsRequest;
+
+/** An instance of this class provides access to all the operations defined in ResourceProvidersClient. */
+public interface ResourceProvidersClient {
+ /**
+ * Updates data sensitivity settings for sensitive data discovery.
+ *
+ * @param sensitivitySettings The data sensitivity settings 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 data sensitivity settings for sensitive data discovery along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response updateSensitivitySettingsWithResponse(
+ UpdateSensitivitySettingsRequest sensitivitySettings, Context context);
+
+ /**
+ * Updates data sensitivity settings for sensitive data discovery.
+ *
+ * @param sensitivitySettings The data sensitivity settings 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 data sensitivity settings for sensitive data discovery.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GetSensitivitySettingsResponseInner updateSensitivitySettings(UpdateSensitivitySettingsRequest sensitivitySettings);
+
+ /**
+ * Gets data sensitivity settings for sensitive data discovery.
+ *
+ * @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 data sensitivity settings for sensitive data discovery along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getSensitivitySettingsWithResponse(Context context);
+
+ /**
+ * Gets data sensitivity settings for sensitive data discovery.
+ *
+ * @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 data sensitivity settings for sensitive data discovery.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ GetSensitivitySettingsResponseInner getSensitivitySettings();
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/SecurityCenter.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/SecurityCenter.java
index 3632a9b91815..544f5cb1dcb5 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/SecurityCenter.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/SecurityCenter.java
@@ -324,6 +324,20 @@ public interface SecurityCenter {
*/
ConnectorsClient getConnectors();
+ /**
+ * Gets the ResourceProvidersClient object to access its operations.
+ *
+ * @return the ResourceProvidersClient object.
+ */
+ ResourceProvidersClient getResourceProviders();
+
+ /**
+ * Gets the SensitivitySettingsClient object to access its operations.
+ *
+ * @return the SensitivitySettingsClient object.
+ */
+ SensitivitySettingsClient getSensitivitySettings();
+
/**
* Gets the AlertsClient object to access its operations.
*
@@ -338,13 +352,6 @@ public interface SecurityCenter {
*/
SettingsClient getSettings();
- /**
- * Gets the IngestionSettingsClient object to access its operations.
- *
- * @return the IngestionSettingsClient object.
- */
- IngestionSettingsClient getIngestionSettings();
-
/**
* Gets the SoftwareInventoriesClient object to access its operations.
*
@@ -402,18 +409,39 @@ public interface SecurityCenter {
ApiCollectionsClient getApiCollections();
/**
- * Gets the ApiCollectionOnboardingsClient object to access its operations.
+ * Gets the SqlVulnerabilityAssessmentScansClient object to access its operations.
*
- * @return the ApiCollectionOnboardingsClient object.
+ * @return the SqlVulnerabilityAssessmentScansClient object.
*/
- ApiCollectionOnboardingsClient getApiCollectionOnboardings();
+ SqlVulnerabilityAssessmentScansClient getSqlVulnerabilityAssessmentScans();
/**
- * Gets the ApiCollectionOffboardingsClient object to access its operations.
+ * Gets the SqlVulnerabilityAssessmentScanResultsClient object to access its operations.
*
- * @return the ApiCollectionOffboardingsClient object.
+ * @return the SqlVulnerabilityAssessmentScanResultsClient object.
*/
- ApiCollectionOffboardingsClient getApiCollectionOffboardings();
+ SqlVulnerabilityAssessmentScanResultsClient getSqlVulnerabilityAssessmentScanResults();
+
+ /**
+ * Gets the SqlVulnerabilityAssessmentBaselineRulesClient object to access its operations.
+ *
+ * @return the SqlVulnerabilityAssessmentBaselineRulesClient object.
+ */
+ SqlVulnerabilityAssessmentBaselineRulesClient getSqlVulnerabilityAssessmentBaselineRules();
+
+ /**
+ * Gets the SecurityOperatorsClient object to access its operations.
+ *
+ * @return the SecurityOperatorsClient object.
+ */
+ SecurityOperatorsClient getSecurityOperators();
+
+ /**
+ * Gets the ServerVulnerabilityAssessmentsSettingsClient object to access its operations.
+ *
+ * @return the ServerVulnerabilityAssessmentsSettingsClient object.
+ */
+ ServerVulnerabilityAssessmentsSettingsClient getServerVulnerabilityAssessmentsSettings();
/**
* Gets the HealthReportsClient object to access its operations.
@@ -423,44 +451,86 @@ public interface SecurityCenter {
HealthReportsClient getHealthReports();
/**
- * Gets the HealthReportOperationsClient object to access its operations.
+ * Gets the DefenderForStoragesClient object to access its operations.
*
- * @return the HealthReportOperationsClient object.
+ * @return the DefenderForStoragesClient object.
*/
- HealthReportOperationsClient getHealthReportOperations();
+ DefenderForStoragesClient getDefenderForStorages();
/**
- * Gets the SqlVulnerabilityAssessmentScansClient object to access its operations.
+ * Gets the AzureDevOpsOrgsClient object to access its operations.
*
- * @return the SqlVulnerabilityAssessmentScansClient object.
+ * @return the AzureDevOpsOrgsClient object.
*/
- SqlVulnerabilityAssessmentScansClient getSqlVulnerabilityAssessmentScans();
+ AzureDevOpsOrgsClient getAzureDevOpsOrgs();
/**
- * Gets the SqlVulnerabilityAssessmentScanResultsClient object to access its operations.
+ * Gets the AzureDevOpsProjectsClient object to access its operations.
*
- * @return the SqlVulnerabilityAssessmentScanResultsClient object.
+ * @return the AzureDevOpsProjectsClient object.
*/
- SqlVulnerabilityAssessmentScanResultsClient getSqlVulnerabilityAssessmentScanResults();
+ AzureDevOpsProjectsClient getAzureDevOpsProjects();
/**
- * Gets the SqlVulnerabilityAssessmentBaselineRulesClient object to access its operations.
+ * Gets the AzureDevOpsReposClient object to access its operations.
*
- * @return the SqlVulnerabilityAssessmentBaselineRulesClient object.
+ * @return the AzureDevOpsReposClient object.
*/
- SqlVulnerabilityAssessmentBaselineRulesClient getSqlVulnerabilityAssessmentBaselineRules();
+ AzureDevOpsReposClient getAzureDevOpsRepos();
/**
- * Gets the SecurityConnectorsClient object to access its operations.
+ * Gets the DevOpsConfigurationsClient object to access its operations.
*
- * @return the SecurityConnectorsClient object.
+ * @return the DevOpsConfigurationsClient object.
*/
- SecurityConnectorsClient getSecurityConnectors();
+ DevOpsConfigurationsClient getDevOpsConfigurations();
/**
- * Gets the SecurityOperatorsClient object to access its operations.
+ * Gets the GitHubOwnersClient object to access its operations.
*
- * @return the SecurityOperatorsClient object.
+ * @return the GitHubOwnersClient object.
*/
- SecurityOperatorsClient getSecurityOperators();
+ GitHubOwnersClient getGitHubOwners();
+
+ /**
+ * Gets the GitHubReposClient object to access its operations.
+ *
+ * @return the GitHubReposClient object.
+ */
+ GitHubReposClient getGitHubRepos();
+
+ /**
+ * Gets the GitLabGroupsClient object to access its operations.
+ *
+ * @return the GitLabGroupsClient object.
+ */
+ GitLabGroupsClient getGitLabGroups();
+
+ /**
+ * Gets the GitLabSubgroupsClient object to access its operations.
+ *
+ * @return the GitLabSubgroupsClient object.
+ */
+ GitLabSubgroupsClient getGitLabSubgroups();
+
+ /**
+ * Gets the GitLabProjectsClient object to access its operations.
+ *
+ * @return the GitLabProjectsClient object.
+ */
+ GitLabProjectsClient getGitLabProjects();
+
+ /**
+ * Gets the DevOpsOperationResultsClient object to access its operations.
+ *
+ * @return the DevOpsOperationResultsClient object.
+ */
+ DevOpsOperationResultsClient getDevOpsOperationResults();
+
+ /**
+ * Gets the SecurityConnectorsClient object to access its operations.
+ *
+ * @return the SecurityConnectorsClient object.
+ */
+ SecurityConnectorsClient getSecurityConnectors();
}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/HealthReportOperationsClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/SensitivitySettingsClient.java
similarity index 56%
rename from sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/HealthReportOperationsClient.java
rename to sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/SensitivitySettingsClient.java
index 9127fc7b309b..600866a35bde 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/HealthReportOperationsClient.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/SensitivitySettingsClient.java
@@ -8,34 +8,29 @@
import com.azure.core.annotation.ServiceMethod;
import com.azure.core.http.rest.Response;
import com.azure.core.util.Context;
-import com.azure.resourcemanager.security.fluent.models.HealthReportInner;
+import com.azure.resourcemanager.security.fluent.models.GetSensitivitySettingsListResponseInner;
-/** An instance of this class provides access to all the operations defined in HealthReportOperationsClient. */
-public interface HealthReportOperationsClient {
+/** An instance of this class provides access to all the operations defined in SensitivitySettingsClient. */
+public interface SensitivitySettingsClient {
/**
- * Get health report of resource.
+ * Gets a list with a single sensitivity settings resource.
*
- * @param resourceId The identifier of the resource.
- * @param healthReportName The health report Key - Unique key for the health report type.
* @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 health report of resource along with {@link Response}.
+ * @return a list with a single sensitivity settings resource along with {@link Response}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- Response getWithResponse(String resourceId, String healthReportName, Context context);
+ Response listWithResponse(Context context);
/**
- * Get health report of resource.
+ * Gets a list with a single sensitivity settings resource.
*
- * @param resourceId The identifier of the resource.
- * @param healthReportName The health report Key - Unique key for the health report type.
- * @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 health report of resource.
+ * @return a list with a single sensitivity settings resource.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- HealthReportInner get(String resourceId, String healthReportName);
+ GetSensitivitySettingsListResponseInner list();
}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ServerVulnerabilityAssessmentsSettingsClient.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ServerVulnerabilityAssessmentsSettingsClient.java
new file mode 100644
index 000000000000..88643e1d8c6f
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/ServerVulnerabilityAssessmentsSettingsClient.java
@@ -0,0 +1,126 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent;
+
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.util.Context;
+import com.azure.resourcemanager.security.fluent.models.ServerVulnerabilityAssessmentsSettingInner;
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsSettingKindName;
+
+/**
+ * An instance of this class provides access to all the operations defined in
+ * ServerVulnerabilityAssessmentsSettingsClient.
+ */
+public interface ServerVulnerabilityAssessmentsSettingsClient {
+ /**
+ * Get a list of all the server vulnerability assessments settings over a subscription level scope.
+ *
+ * @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 all the server vulnerability assessments settings over a subscription level scope as paginated
+ * response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list();
+
+ /**
+ * Get a list of all the server vulnerability assessments settings over a subscription level scope.
+ *
+ * @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 all the server vulnerability assessments settings over a subscription level scope as paginated
+ * response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ PagedIterable list(Context context);
+
+ /**
+ * Get a server vulnerability assessments setting of the requested kind, that is set on the subscription.
+ *
+ * @param settingKind The kind of the server vulnerability assessments setting.
+ * @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 server vulnerability assessments setting of the requested kind, that is set on the subscription along
+ * with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response getWithResponse(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind, Context context);
+
+ /**
+ * Get a server vulnerability assessments setting of the requested kind, that is set on the subscription.
+ *
+ * @param settingKind The kind of the server vulnerability assessments setting.
+ * @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 server vulnerability assessments setting of the requested kind, that is set on the subscription.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServerVulnerabilityAssessmentsSettingInner get(ServerVulnerabilityAssessmentsSettingKindName settingKind);
+
+ /**
+ * Create or update a server vulnerability assessments setting of the requested kind on the subscription.
+ *
+ * @param settingKind The kind of the server vulnerability assessments setting.
+ * @param serverVulnerabilityAssessmentsSetting A server vulnerability assessments setting over a predefined scope.
+ * @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 base vulnerability assessments setting on servers in the defined scope along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response createOrUpdateWithResponse(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind,
+ ServerVulnerabilityAssessmentsSettingInner serverVulnerabilityAssessmentsSetting,
+ Context context);
+
+ /**
+ * Create or update a server vulnerability assessments setting of the requested kind on the subscription.
+ *
+ * @param settingKind The kind of the server vulnerability assessments setting.
+ * @param serverVulnerabilityAssessmentsSetting A server vulnerability assessments setting over a predefined scope.
+ * @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 base vulnerability assessments setting on servers in the defined scope.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ ServerVulnerabilityAssessmentsSettingInner createOrUpdate(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind,
+ ServerVulnerabilityAssessmentsSettingInner serverVulnerabilityAssessmentsSetting);
+
+ /**
+ * Delete the server vulnerability assessments setting of the requested kind from the subscription.
+ *
+ * @param settingKind The kind of the server vulnerability assessments setting.
+ * @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 Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ Response deleteWithResponse(ServerVulnerabilityAssessmentsSettingKindName settingKind, Context context);
+
+ /**
+ * Delete the server vulnerability assessments setting of the requested kind from the subscription.
+ *
+ * @param settingKind The kind of the server vulnerability assessments setting.
+ * @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(ServerVulnerabilityAssessmentsSettingKindName settingKind);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ApiCollectionInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ApiCollectionInner.java
new file mode 100644
index 000000000000..991e370d2b2a
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ApiCollectionInner.java
@@ -0,0 +1,142 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.core.management.ProxyResource;
+import com.azure.resourcemanager.security.models.ProvisioningState;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** An API collection as represented by Microsoft Defender for APIs. */
+@Immutable
+public final class ApiCollectionInner extends ProxyResource {
+ /*
+ * Describes the properties of an API collection.
+ */
+ @JsonProperty(value = "properties")
+ private ApiCollectionProperties innerProperties;
+
+ /** Creates an instance of ApiCollectionInner class. */
+ public ApiCollectionInner() {
+ }
+
+ /**
+ * Get the innerProperties property: Describes the properties of an API collection.
+ *
+ * @return the innerProperties value.
+ */
+ private ApiCollectionProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the provisioningState property: Gets the provisioning state of the API collection.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.innerProperties() == null ? null : this.innerProperties().provisioningState();
+ }
+
+ /**
+ * Get the displayName property: The display name of the API collection.
+ *
+ * @return the displayName value.
+ */
+ public String displayName() {
+ return this.innerProperties() == null ? null : this.innerProperties().displayName();
+ }
+
+ /**
+ * Get the discoveredVia property: The resource Id of the resource from where this API collection was discovered.
+ *
+ * @return the discoveredVia value.
+ */
+ public String discoveredVia() {
+ return this.innerProperties() == null ? null : this.innerProperties().discoveredVia();
+ }
+
+ /**
+ * Get the baseUrl property: The base URI for this API collection. All endpoints of this API collection extend this
+ * base URI.
+ *
+ * @return the baseUrl value.
+ */
+ public String baseUrl() {
+ return this.innerProperties() == null ? null : this.innerProperties().baseUrl();
+ }
+
+ /**
+ * Get the numberOfApiEndpoints property: The number of API endpoints discovered in this API collection.
+ *
+ * @return the numberOfApiEndpoints value.
+ */
+ public Long numberOfApiEndpoints() {
+ return this.innerProperties() == null ? null : this.innerProperties().numberOfApiEndpoints();
+ }
+
+ /**
+ * Get the numberOfInactiveApiEndpoints property: The number of API endpoints in this API collection that have not
+ * received any API traffic in the last 30 days.
+ *
+ * @return the numberOfInactiveApiEndpoints value.
+ */
+ public Long numberOfInactiveApiEndpoints() {
+ return this.innerProperties() == null ? null : this.innerProperties().numberOfInactiveApiEndpoints();
+ }
+
+ /**
+ * Get the numberOfUnauthenticatedApiEndpoints property: The number of API endpoints in this API collection that are
+ * unauthenticated.
+ *
+ * @return the numberOfUnauthenticatedApiEndpoints value.
+ */
+ public Long numberOfUnauthenticatedApiEndpoints() {
+ return this.innerProperties() == null ? null : this.innerProperties().numberOfUnauthenticatedApiEndpoints();
+ }
+
+ /**
+ * Get the numberOfExternalApiEndpoints property: The number of API endpoints in this API collection for which API
+ * traffic from the internet was observed.
+ *
+ * @return the numberOfExternalApiEndpoints value.
+ */
+ public Long numberOfExternalApiEndpoints() {
+ return this.innerProperties() == null ? null : this.innerProperties().numberOfExternalApiEndpoints();
+ }
+
+ /**
+ * Get the numberOfApiEndpointsWithSensitiveDataExposed property: The number of API endpoints in this API collection
+ * which are exposing sensitive data in their requests and/or responses.
+ *
+ * @return the numberOfApiEndpointsWithSensitiveDataExposed value.
+ */
+ public Long numberOfApiEndpointsWithSensitiveDataExposed() {
+ return this.innerProperties() == null
+ ? null
+ : this.innerProperties().numberOfApiEndpointsWithSensitiveDataExposed();
+ }
+
+ /**
+ * Get the sensitivityLabel property: The highest priority sensitivity label from Microsoft Purview in this API
+ * collection.
+ *
+ * @return the sensitivityLabel value.
+ */
+ public String sensitivityLabel() {
+ return this.innerProperties() == null ? null : this.innerProperties().sensitivityLabel();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ApiCollectionProperties.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ApiCollectionProperties.java
index 951e62c71a5c..1b031de018a9 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ApiCollectionProperties.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ApiCollectionProperties.java
@@ -4,33 +4,89 @@
package com.azure.resourcemanager.security.fluent.models;
-import com.azure.core.annotation.Fluent;
-import com.fasterxml.jackson.annotation.JsonInclude;
+import com.azure.core.annotation.Immutable;
+import com.azure.resourcemanager.security.models.ProvisioningState;
import com.fasterxml.jackson.annotation.JsonProperty;
-import java.util.Map;
/** Describes the properties of an API collection. */
-@Fluent
+@Immutable
public final class ApiCollectionProperties {
/*
- * The display name of the Azure API Management API.
+ * Gets the provisioning state of the API collection.
*/
- @JsonProperty(value = "displayName")
+ @JsonProperty(value = "provisioningState", access = JsonProperty.Access.WRITE_ONLY)
+ private ProvisioningState provisioningState;
+
+ /*
+ * The display name of the API collection.
+ */
+ @JsonProperty(value = "displayName", access = JsonProperty.Access.WRITE_ONLY)
private String displayName;
/*
- * Additional data regarding the API collection.
+ * The resource Id of the resource from where this API collection was discovered.
+ */
+ @JsonProperty(value = "discoveredVia", access = JsonProperty.Access.WRITE_ONLY)
+ private String discoveredVia;
+
+ /*
+ * The base URI for this API collection. All endpoints of this API collection extend this base URI.
+ */
+ @JsonProperty(value = "baseUrl", access = JsonProperty.Access.WRITE_ONLY)
+ private String baseUrl;
+
+ /*
+ * The number of API endpoints discovered in this API collection.
*/
- @JsonProperty(value = "additionalData")
- @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
- private Map additionalData;
+ @JsonProperty(value = "numberOfApiEndpoints", access = JsonProperty.Access.WRITE_ONLY)
+ private Long numberOfApiEndpoints;
+
+ /*
+ * The number of API endpoints in this API collection that have not received any API traffic in the last 30 days.
+ */
+ @JsonProperty(value = "numberOfInactiveApiEndpoints", access = JsonProperty.Access.WRITE_ONLY)
+ private Long numberOfInactiveApiEndpoints;
+
+ /*
+ * The number of API endpoints in this API collection that are unauthenticated.
+ */
+ @JsonProperty(value = "numberOfUnauthenticatedApiEndpoints", access = JsonProperty.Access.WRITE_ONLY)
+ private Long numberOfUnauthenticatedApiEndpoints;
+
+ /*
+ * The number of API endpoints in this API collection for which API traffic from the internet was observed.
+ */
+ @JsonProperty(value = "numberOfExternalApiEndpoints", access = JsonProperty.Access.WRITE_ONLY)
+ private Long numberOfExternalApiEndpoints;
+
+ /*
+ * The number of API endpoints in this API collection which are exposing sensitive data in their requests and/or
+ * responses.
+ */
+ @JsonProperty(value = "numberOfApiEndpointsWithSensitiveDataExposed", access = JsonProperty.Access.WRITE_ONLY)
+ private Long numberOfApiEndpointsWithSensitiveDataExposed;
+
+ /*
+ * The highest priority sensitivity label from Microsoft Purview in this API collection.
+ */
+ @JsonProperty(value = "sensitivityLabel", access = JsonProperty.Access.WRITE_ONLY)
+ private String sensitivityLabel;
/** Creates an instance of ApiCollectionProperties class. */
public ApiCollectionProperties() {
}
/**
- * Get the displayName property: The display name of the Azure API Management API.
+ * Get the provisioningState property: Gets the provisioning state of the API collection.
+ *
+ * @return the provisioningState value.
+ */
+ public ProvisioningState provisioningState() {
+ return this.provisioningState;
+ }
+
+ /**
+ * Get the displayName property: The display name of the API collection.
*
* @return the displayName value.
*/
@@ -39,34 +95,81 @@ public String displayName() {
}
/**
- * Set the displayName property: The display name of the Azure API Management API.
+ * Get the discoveredVia property: The resource Id of the resource from where this API collection was discovered.
+ *
+ * @return the discoveredVia value.
+ */
+ public String discoveredVia() {
+ return this.discoveredVia;
+ }
+
+ /**
+ * Get the baseUrl property: The base URI for this API collection. All endpoints of this API collection extend this
+ * base URI.
+ *
+ * @return the baseUrl value.
+ */
+ public String baseUrl() {
+ return this.baseUrl;
+ }
+
+ /**
+ * Get the numberOfApiEndpoints property: The number of API endpoints discovered in this API collection.
+ *
+ * @return the numberOfApiEndpoints value.
+ */
+ public Long numberOfApiEndpoints() {
+ return this.numberOfApiEndpoints;
+ }
+
+ /**
+ * Get the numberOfInactiveApiEndpoints property: The number of API endpoints in this API collection that have not
+ * received any API traffic in the last 30 days.
+ *
+ * @return the numberOfInactiveApiEndpoints value.
+ */
+ public Long numberOfInactiveApiEndpoints() {
+ return this.numberOfInactiveApiEndpoints;
+ }
+
+ /**
+ * Get the numberOfUnauthenticatedApiEndpoints property: The number of API endpoints in this API collection that are
+ * unauthenticated.
+ *
+ * @return the numberOfUnauthenticatedApiEndpoints value.
+ */
+ public Long numberOfUnauthenticatedApiEndpoints() {
+ return this.numberOfUnauthenticatedApiEndpoints;
+ }
+
+ /**
+ * Get the numberOfExternalApiEndpoints property: The number of API endpoints in this API collection for which API
+ * traffic from the internet was observed.
*
- * @param displayName the displayName value to set.
- * @return the ApiCollectionProperties object itself.
+ * @return the numberOfExternalApiEndpoints value.
*/
- public ApiCollectionProperties withDisplayName(String displayName) {
- this.displayName = displayName;
- return this;
+ public Long numberOfExternalApiEndpoints() {
+ return this.numberOfExternalApiEndpoints;
}
/**
- * Get the additionalData property: Additional data regarding the API collection.
+ * Get the numberOfApiEndpointsWithSensitiveDataExposed property: The number of API endpoints in this API collection
+ * which are exposing sensitive data in their requests and/or responses.
*
- * @return the additionalData value.
+ * @return the numberOfApiEndpointsWithSensitiveDataExposed value.
*/
- public Map additionalData() {
- return this.additionalData;
+ public Long numberOfApiEndpointsWithSensitiveDataExposed() {
+ return this.numberOfApiEndpointsWithSensitiveDataExposed;
}
/**
- * Set the additionalData property: Additional data regarding the API collection.
+ * Get the sensitivityLabel property: The highest priority sensitivity label from Microsoft Purview in this API
+ * collection.
*
- * @param additionalData the additionalData value to set.
- * @return the ApiCollectionProperties object itself.
+ * @return the sensitivityLabel value.
*/
- public ApiCollectionProperties withAdditionalData(Map additionalData) {
- this.additionalData = additionalData;
- return this;
+ public String sensitivityLabel() {
+ return this.sensitivityLabel;
}
/**
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ApiCollectionResponseInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ApiCollectionResponseInner.java
deleted file mode 100644
index 6224a7ea4eb4..000000000000
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ApiCollectionResponseInner.java
+++ /dev/null
@@ -1,90 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.security.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.management.ProxyResource;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.util.Map;
-
-/** An API collection as represented by Defender for APIs. */
-@Fluent
-public final class ApiCollectionResponseInner extends ProxyResource {
- /*
- * Describes the properties of an API collection.
- */
- @JsonProperty(value = "properties")
- private ApiCollectionProperties innerProperties;
-
- /** Creates an instance of ApiCollectionResponseInner class. */
- public ApiCollectionResponseInner() {
- }
-
- /**
- * Get the innerProperties property: Describes the properties of an API collection.
- *
- * @return the innerProperties value.
- */
- private ApiCollectionProperties innerProperties() {
- return this.innerProperties;
- }
-
- /**
- * Get the displayName property: The display name of the Azure API Management API.
- *
- * @return the displayName value.
- */
- public String displayName() {
- return this.innerProperties() == null ? null : this.innerProperties().displayName();
- }
-
- /**
- * Set the displayName property: The display name of the Azure API Management API.
- *
- * @param displayName the displayName value to set.
- * @return the ApiCollectionResponseInner object itself.
- */
- public ApiCollectionResponseInner withDisplayName(String displayName) {
- if (this.innerProperties() == null) {
- this.innerProperties = new ApiCollectionProperties();
- }
- this.innerProperties().withDisplayName(displayName);
- return this;
- }
-
- /**
- * Get the additionalData property: Additional data regarding the API collection.
- *
- * @return the additionalData value.
- */
- public Map additionalData() {
- return this.innerProperties() == null ? null : this.innerProperties().additionalData();
- }
-
- /**
- * Set the additionalData property: Additional data regarding the API collection.
- *
- * @param additionalData the additionalData value to set.
- * @return the ApiCollectionResponseInner object itself.
- */
- public ApiCollectionResponseInner withAdditionalData(Map additionalData) {
- if (this.innerProperties() == null) {
- this.innerProperties = new ApiCollectionProperties();
- }
- this.innerProperties().withAdditionalData(additionalData);
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (innerProperties() != null) {
- innerProperties().validate();
- }
- }
-}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/AzureDevOpsOrgInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/AzureDevOpsOrgInner.java
new file mode 100644
index 000000000000..b4da9a4a6e2a
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/AzureDevOpsOrgInner.java
@@ -0,0 +1,71 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.security.models.AzureDevOpsOrgProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Azure DevOps Organization resource. */
+@Fluent
+public final class AzureDevOpsOrgInner extends ProxyResource {
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * Azure DevOps Organization properties.
+ */
+ @JsonProperty(value = "properties")
+ private AzureDevOpsOrgProperties properties;
+
+ /** Creates an instance of AzureDevOpsOrgInner class. */
+ public AzureDevOpsOrgInner() {
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the properties property: Azure DevOps Organization properties.
+ *
+ * @return the properties value.
+ */
+ public AzureDevOpsOrgProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: Azure DevOps Organization properties.
+ *
+ * @param properties the properties value to set.
+ * @return the AzureDevOpsOrgInner object itself.
+ */
+ public AzureDevOpsOrgInner withProperties(AzureDevOpsOrgProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/AzureDevOpsOrgListResponseInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/AzureDevOpsOrgListResponseInner.java
new file mode 100644
index 000000000000..0c2e692bbd0a
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/AzureDevOpsOrgListResponseInner.java
@@ -0,0 +1,80 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** List of RP resources which supports pagination. */
+@Fluent
+public final class AzureDevOpsOrgListResponseInner {
+ /*
+ * Gets or sets list of resources.
+ */
+ @JsonProperty(value = "value")
+ private List value;
+
+ /*
+ * Gets or sets next link to scroll over the results.
+ */
+ @JsonProperty(value = "nextLink")
+ private String nextLink;
+
+ /** Creates an instance of AzureDevOpsOrgListResponseInner class. */
+ public AzureDevOpsOrgListResponseInner() {
+ }
+
+ /**
+ * Get the value property: Gets or sets list of resources.
+ *
+ * @return the value value.
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value property: Gets or sets list of resources.
+ *
+ * @param value the value value to set.
+ * @return the AzureDevOpsOrgListResponseInner object itself.
+ */
+ public AzureDevOpsOrgListResponseInner withValue(List value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Get the nextLink property: Gets or sets next link to scroll over the results.
+ *
+ * @return the nextLink value.
+ */
+ public String nextLink() {
+ return this.nextLink;
+ }
+
+ /**
+ * Set the nextLink property: Gets or sets next link to scroll over the results.
+ *
+ * @param nextLink the nextLink value to set.
+ * @return the AzureDevOpsOrgListResponseInner object itself.
+ */
+ public AzureDevOpsOrgListResponseInner withNextLink(String nextLink) {
+ this.nextLink = nextLink;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (value() != null) {
+ value().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/AzureDevOpsProjectInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/AzureDevOpsProjectInner.java
new file mode 100644
index 000000000000..003c0f4e98df
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/AzureDevOpsProjectInner.java
@@ -0,0 +1,71 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.security.models.AzureDevOpsProjectProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Azure DevOps Project resource. */
+@Fluent
+public final class AzureDevOpsProjectInner extends ProxyResource {
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * Azure DevOps Project properties.
+ */
+ @JsonProperty(value = "properties")
+ private AzureDevOpsProjectProperties properties;
+
+ /** Creates an instance of AzureDevOpsProjectInner class. */
+ public AzureDevOpsProjectInner() {
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the properties property: Azure DevOps Project properties.
+ *
+ * @return the properties value.
+ */
+ public AzureDevOpsProjectProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: Azure DevOps Project properties.
+ *
+ * @param properties the properties value to set.
+ * @return the AzureDevOpsProjectInner object itself.
+ */
+ public AzureDevOpsProjectInner withProperties(AzureDevOpsProjectProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/AzureDevOpsRepositoryInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/AzureDevOpsRepositoryInner.java
new file mode 100644
index 000000000000..2d4233411ad8
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/AzureDevOpsRepositoryInner.java
@@ -0,0 +1,71 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.security.models.AzureDevOpsRepositoryProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Azure DevOps Repository resource. */
+@Fluent
+public final class AzureDevOpsRepositoryInner extends ProxyResource {
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * Azure DevOps Repository properties.
+ */
+ @JsonProperty(value = "properties")
+ private AzureDevOpsRepositoryProperties properties;
+
+ /** Creates an instance of AzureDevOpsRepositoryInner class. */
+ public AzureDevOpsRepositoryInner() {
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the properties property: Azure DevOps Repository properties.
+ *
+ * @return the properties value.
+ */
+ public AzureDevOpsRepositoryProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: Azure DevOps Repository properties.
+ *
+ * @param properties the properties value to set.
+ * @return the AzureDevOpsRepositoryInner object itself.
+ */
+ public AzureDevOpsRepositoryInner withProperties(AzureDevOpsRepositoryProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ConnectionStringsInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ConnectionStringsInner.java
deleted file mode 100644
index 4e21ee921fae..000000000000
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ConnectionStringsInner.java
+++ /dev/null
@@ -1,62 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.security.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.security.models.IngestionConnectionString;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import java.util.List;
-
-/** Connection string for ingesting security data and logs. */
-@Fluent
-public final class ConnectionStringsInner {
- /*
- * Connection strings
- */
- @JsonProperty(value = "value", required = true)
- private List value;
-
- /** Creates an instance of ConnectionStringsInner class. */
- public ConnectionStringsInner() {
- }
-
- /**
- * Get the value property: Connection strings.
- *
- * @return the value value.
- */
- public List value() {
- return this.value;
- }
-
- /**
- * Set the value property: Connection strings.
- *
- * @param value the value value to set.
- * @return the ConnectionStringsInner object itself.
- */
- public ConnectionStringsInner withValue(List value) {
- this.value = value;
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- if (value() == null) {
- throw LOGGER
- .logExceptionAsError(
- new IllegalArgumentException("Missing required property value in model ConnectionStringsInner"));
- } else {
- value().forEach(e -> e.validate());
- }
- }
-
- private static final ClientLogger LOGGER = new ClientLogger(ConnectionStringsInner.class);
-}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/DefenderForStorageSettingInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/DefenderForStorageSettingInner.java
new file mode 100644
index 000000000000..4a5809d19fc9
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/DefenderForStorageSettingInner.java
@@ -0,0 +1,218 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.resourcemanager.security.models.OperationStatusAutoGenerated;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** The Defender for Storage resource. */
+@Fluent
+public final class DefenderForStorageSettingInner extends ProxyResource {
+ /*
+ * Defender for Storage resource properties.
+ */
+ @JsonProperty(value = "properties")
+ private DefenderForStorageSettingProperties innerProperties;
+
+ /** Creates an instance of DefenderForStorageSettingInner class. */
+ public DefenderForStorageSettingInner() {
+ }
+
+ /**
+ * Get the innerProperties property: Defender for Storage resource properties.
+ *
+ * @return the innerProperties value.
+ */
+ private DefenderForStorageSettingProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * Get the isEnabled property: Indicates whether Defender for Storage is enabled on this storage account.
+ *
+ * @return the isEnabled value.
+ */
+ public Boolean isEnabled() {
+ return this.innerProperties() == null ? null : this.innerProperties().isEnabled();
+ }
+
+ /**
+ * Set the isEnabled property: Indicates whether Defender for Storage is enabled on this storage account.
+ *
+ * @param isEnabled the isEnabled value to set.
+ * @return the DefenderForStorageSettingInner object itself.
+ */
+ public DefenderForStorageSettingInner withIsEnabled(Boolean isEnabled) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new DefenderForStorageSettingProperties();
+ }
+ this.innerProperties().withIsEnabled(isEnabled);
+ return this;
+ }
+
+ /**
+ * Get the overrideSubscriptionLevelSettings property: Indicates whether the settings defined for this storage
+ * account should override the settings defined for the subscription.
+ *
+ * @return the overrideSubscriptionLevelSettings value.
+ */
+ public Boolean overrideSubscriptionLevelSettings() {
+ return this.innerProperties() == null ? null : this.innerProperties().overrideSubscriptionLevelSettings();
+ }
+
+ /**
+ * Set the overrideSubscriptionLevelSettings property: Indicates whether the settings defined for this storage
+ * account should override the settings defined for the subscription.
+ *
+ * @param overrideSubscriptionLevelSettings the overrideSubscriptionLevelSettings value to set.
+ * @return the DefenderForStorageSettingInner object itself.
+ */
+ public DefenderForStorageSettingInner withOverrideSubscriptionLevelSettings(
+ Boolean overrideSubscriptionLevelSettings) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new DefenderForStorageSettingProperties();
+ }
+ this.innerProperties().withOverrideSubscriptionLevelSettings(overrideSubscriptionLevelSettings);
+ return this;
+ }
+
+ /**
+ * Get the scanResultsEventGridTopicResourceId property: Optional. Resource id of an Event Grid Topic to send scan
+ * results to.
+ *
+ * @return the scanResultsEventGridTopicResourceId value.
+ */
+ public String scanResultsEventGridTopicResourceId() {
+ return this.innerProperties() == null ? null : this.innerProperties().scanResultsEventGridTopicResourceId();
+ }
+
+ /**
+ * Set the scanResultsEventGridTopicResourceId property: Optional. Resource id of an Event Grid Topic to send scan
+ * results to.
+ *
+ * @param scanResultsEventGridTopicResourceId the scanResultsEventGridTopicResourceId value to set.
+ * @return the DefenderForStorageSettingInner object itself.
+ */
+ public DefenderForStorageSettingInner withScanResultsEventGridTopicResourceId(
+ String scanResultsEventGridTopicResourceId) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new DefenderForStorageSettingProperties();
+ }
+ this.innerProperties().withScanResultsEventGridTopicResourceId(scanResultsEventGridTopicResourceId);
+ return this;
+ }
+
+ /**
+ * Get the operationStatus property: Upon failure or partial success. Additional data describing Malware Scanning
+ * enable/disable operation.
+ *
+ * @return the operationStatus value.
+ */
+ public OperationStatusAutoGenerated operationStatus() {
+ return this.innerProperties() == null ? null : this.innerProperties().operationStatus();
+ }
+
+ /**
+ * Get the isEnabledMalwareScanningIsEnabled property: Indicates whether On Upload malware scanning should be
+ * enabled.
+ *
+ * @return the isEnabledMalwareScanningIsEnabled value.
+ */
+ public Boolean isEnabledMalwareScanningIsEnabled() {
+ return this.innerProperties() == null ? null : this.innerProperties().isEnabledMalwareScanningIsEnabled();
+ }
+
+ /**
+ * Set the isEnabledMalwareScanningIsEnabled property: Indicates whether On Upload malware scanning should be
+ * enabled.
+ *
+ * @param isEnabledMalwareScanningIsEnabled the isEnabledMalwareScanningIsEnabled value to set.
+ * @return the DefenderForStorageSettingInner object itself.
+ */
+ public DefenderForStorageSettingInner withIsEnabledMalwareScanningIsEnabled(
+ Boolean isEnabledMalwareScanningIsEnabled) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new DefenderForStorageSettingProperties();
+ }
+ this.innerProperties().withIsEnabledMalwareScanningIsEnabled(isEnabledMalwareScanningIsEnabled);
+ return this;
+ }
+
+ /**
+ * Get the capGBPerMonth property: Defines the max GB to be scanned per Month. Set to -1 if no capping is needed.
+ *
+ * @return the capGBPerMonth value.
+ */
+ public Integer capGBPerMonth() {
+ return this.innerProperties() == null ? null : this.innerProperties().capGBPerMonth();
+ }
+
+ /**
+ * Set the capGBPerMonth property: Defines the max GB to be scanned per Month. Set to -1 if no capping is needed.
+ *
+ * @param capGBPerMonth the capGBPerMonth value to set.
+ * @return the DefenderForStorageSettingInner object itself.
+ */
+ public DefenderForStorageSettingInner withCapGBPerMonth(Integer capGBPerMonth) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new DefenderForStorageSettingProperties();
+ }
+ this.innerProperties().withCapGBPerMonth(capGBPerMonth);
+ return this;
+ }
+
+ /**
+ * Get the isEnabledSensitiveDataDiscoveryIsEnabled property: Indicates whether Sensitive Data Discovery should be
+ * enabled.
+ *
+ * @return the isEnabledSensitiveDataDiscoveryIsEnabled value.
+ */
+ public Boolean isEnabledSensitiveDataDiscoveryIsEnabled() {
+ return this.innerProperties() == null
+ ? null
+ : this.innerProperties().isEnabledSensitiveDataDiscoveryIsEnabled();
+ }
+
+ /**
+ * Set the isEnabledSensitiveDataDiscoveryIsEnabled property: Indicates whether Sensitive Data Discovery should be
+ * enabled.
+ *
+ * @param isEnabledSensitiveDataDiscoveryIsEnabled the isEnabledSensitiveDataDiscoveryIsEnabled value to set.
+ * @return the DefenderForStorageSettingInner object itself.
+ */
+ public DefenderForStorageSettingInner withIsEnabledSensitiveDataDiscoveryIsEnabled(
+ Boolean isEnabledSensitiveDataDiscoveryIsEnabled) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new DefenderForStorageSettingProperties();
+ }
+ this.innerProperties().withIsEnabledSensitiveDataDiscoveryIsEnabled(isEnabledSensitiveDataDiscoveryIsEnabled);
+ return this;
+ }
+
+ /**
+ * Get the operationStatusSensitiveDataDiscoveryOperationStatus property: Upon failure or partial success.
+ * Additional data describing Sensitive Data Discovery enable/disable operation.
+ *
+ * @return the operationStatusSensitiveDataDiscoveryOperationStatus value.
+ */
+ public OperationStatusAutoGenerated operationStatusSensitiveDataDiscoveryOperationStatus() {
+ return this.innerProperties() == null
+ ? null
+ : this.innerProperties().operationStatusSensitiveDataDiscoveryOperationStatus();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/DefenderForStorageSettingProperties.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/DefenderForStorageSettingProperties.java
new file mode 100644
index 000000000000..db3349e34512
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/DefenderForStorageSettingProperties.java
@@ -0,0 +1,234 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.security.models.OperationStatusAutoGenerated;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Defender for Storage resource properties. */
+@Fluent
+public final class DefenderForStorageSettingProperties {
+ /*
+ * Indicates whether Defender for Storage is enabled on this storage account.
+ */
+ @JsonProperty(value = "isEnabled")
+ private Boolean isEnabled;
+
+ /*
+ * Properties of Malware Scanning.
+ */
+ @JsonProperty(value = "malwareScanning")
+ private MalwareScanningProperties innerMalwareScanning;
+
+ /*
+ * Properties of Sensitive Data Discovery.
+ */
+ @JsonProperty(value = "sensitiveDataDiscovery")
+ private SensitiveDataDiscoveryProperties innerSensitiveDataDiscovery;
+
+ /*
+ * Indicates whether the settings defined for this storage account should override the settings defined for the
+ * subscription.
+ */
+ @JsonProperty(value = "overrideSubscriptionLevelSettings")
+ private Boolean overrideSubscriptionLevelSettings;
+
+ /** Creates an instance of DefenderForStorageSettingProperties class. */
+ public DefenderForStorageSettingProperties() {
+ }
+
+ /**
+ * Get the isEnabled property: Indicates whether Defender for Storage is enabled on this storage account.
+ *
+ * @return the isEnabled value.
+ */
+ public Boolean isEnabled() {
+ return this.isEnabled;
+ }
+
+ /**
+ * Set the isEnabled property: Indicates whether Defender for Storage is enabled on this storage account.
+ *
+ * @param isEnabled the isEnabled value to set.
+ * @return the DefenderForStorageSettingProperties object itself.
+ */
+ public DefenderForStorageSettingProperties withIsEnabled(Boolean isEnabled) {
+ this.isEnabled = isEnabled;
+ return this;
+ }
+
+ /**
+ * Get the innerMalwareScanning property: Properties of Malware Scanning.
+ *
+ * @return the innerMalwareScanning value.
+ */
+ private MalwareScanningProperties innerMalwareScanning() {
+ return this.innerMalwareScanning;
+ }
+
+ /**
+ * Get the innerSensitiveDataDiscovery property: Properties of Sensitive Data Discovery.
+ *
+ * @return the innerSensitiveDataDiscovery value.
+ */
+ private SensitiveDataDiscoveryProperties innerSensitiveDataDiscovery() {
+ return this.innerSensitiveDataDiscovery;
+ }
+
+ /**
+ * Get the overrideSubscriptionLevelSettings property: Indicates whether the settings defined for this storage
+ * account should override the settings defined for the subscription.
+ *
+ * @return the overrideSubscriptionLevelSettings value.
+ */
+ public Boolean overrideSubscriptionLevelSettings() {
+ return this.overrideSubscriptionLevelSettings;
+ }
+
+ /**
+ * Set the overrideSubscriptionLevelSettings property: Indicates whether the settings defined for this storage
+ * account should override the settings defined for the subscription.
+ *
+ * @param overrideSubscriptionLevelSettings the overrideSubscriptionLevelSettings value to set.
+ * @return the DefenderForStorageSettingProperties object itself.
+ */
+ public DefenderForStorageSettingProperties withOverrideSubscriptionLevelSettings(
+ Boolean overrideSubscriptionLevelSettings) {
+ this.overrideSubscriptionLevelSettings = overrideSubscriptionLevelSettings;
+ return this;
+ }
+
+ /**
+ * Get the scanResultsEventGridTopicResourceId property: Optional. Resource id of an Event Grid Topic to send scan
+ * results to.
+ *
+ * @return the scanResultsEventGridTopicResourceId value.
+ */
+ public String scanResultsEventGridTopicResourceId() {
+ return this.innerMalwareScanning() == null
+ ? null
+ : this.innerMalwareScanning().scanResultsEventGridTopicResourceId();
+ }
+
+ /**
+ * Set the scanResultsEventGridTopicResourceId property: Optional. Resource id of an Event Grid Topic to send scan
+ * results to.
+ *
+ * @param scanResultsEventGridTopicResourceId the scanResultsEventGridTopicResourceId value to set.
+ * @return the DefenderForStorageSettingProperties object itself.
+ */
+ public DefenderForStorageSettingProperties withScanResultsEventGridTopicResourceId(
+ String scanResultsEventGridTopicResourceId) {
+ if (this.innerMalwareScanning() == null) {
+ this.innerMalwareScanning = new MalwareScanningProperties();
+ }
+ this.innerMalwareScanning().withScanResultsEventGridTopicResourceId(scanResultsEventGridTopicResourceId);
+ return this;
+ }
+
+ /**
+ * Get the operationStatus property: Upon failure or partial success. Additional data describing Malware Scanning
+ * enable/disable operation.
+ *
+ * @return the operationStatus value.
+ */
+ public OperationStatusAutoGenerated operationStatus() {
+ return this.innerMalwareScanning() == null ? null : this.innerMalwareScanning().operationStatus();
+ }
+
+ /**
+ * Get the isEnabled property: Indicates whether On Upload malware scanning should be enabled.
+ *
+ * @return the isEnabled value.
+ */
+ public Boolean isEnabledMalwareScanningIsEnabled() {
+ return this.innerMalwareScanning() == null ? null : this.innerMalwareScanning().isEnabled();
+ }
+
+ /**
+ * Set the isEnabled property: Indicates whether On Upload malware scanning should be enabled.
+ *
+ * @param isEnabled the isEnabled value to set.
+ * @return the DefenderForStorageSettingProperties object itself.
+ */
+ public DefenderForStorageSettingProperties withIsEnabledMalwareScanningIsEnabled(Boolean isEnabled) {
+ if (this.innerMalwareScanning() == null) {
+ this.innerMalwareScanning = new MalwareScanningProperties();
+ }
+ this.innerMalwareScanning().withIsEnabled(isEnabled);
+ return this;
+ }
+
+ /**
+ * Get the capGBPerMonth property: Defines the max GB to be scanned per Month. Set to -1 if no capping is needed.
+ *
+ * @return the capGBPerMonth value.
+ */
+ public Integer capGBPerMonth() {
+ return this.innerMalwareScanning() == null ? null : this.innerMalwareScanning().capGBPerMonth();
+ }
+
+ /**
+ * Set the capGBPerMonth property: Defines the max GB to be scanned per Month. Set to -1 if no capping is needed.
+ *
+ * @param capGBPerMonth the capGBPerMonth value to set.
+ * @return the DefenderForStorageSettingProperties object itself.
+ */
+ public DefenderForStorageSettingProperties withCapGBPerMonth(Integer capGBPerMonth) {
+ if (this.innerMalwareScanning() == null) {
+ this.innerMalwareScanning = new MalwareScanningProperties();
+ }
+ this.innerMalwareScanning().withCapGBPerMonth(capGBPerMonth);
+ return this;
+ }
+
+ /**
+ * Get the isEnabled property: Indicates whether Sensitive Data Discovery should be enabled.
+ *
+ * @return the isEnabled value.
+ */
+ public Boolean isEnabledSensitiveDataDiscoveryIsEnabled() {
+ return this.innerSensitiveDataDiscovery() == null ? null : this.innerSensitiveDataDiscovery().isEnabled();
+ }
+
+ /**
+ * Set the isEnabled property: Indicates whether Sensitive Data Discovery should be enabled.
+ *
+ * @param isEnabled the isEnabled value to set.
+ * @return the DefenderForStorageSettingProperties object itself.
+ */
+ public DefenderForStorageSettingProperties withIsEnabledSensitiveDataDiscoveryIsEnabled(Boolean isEnabled) {
+ if (this.innerSensitiveDataDiscovery() == null) {
+ this.innerSensitiveDataDiscovery = new SensitiveDataDiscoveryProperties();
+ }
+ this.innerSensitiveDataDiscovery().withIsEnabled(isEnabled);
+ return this;
+ }
+
+ /**
+ * Get the operationStatus property: Upon failure or partial success. Additional data describing Sensitive Data
+ * Discovery enable/disable operation.
+ *
+ * @return the operationStatus value.
+ */
+ public OperationStatusAutoGenerated operationStatusSensitiveDataDiscoveryOperationStatus() {
+ return this.innerSensitiveDataDiscovery() == null ? null : this.innerSensitiveDataDiscovery().operationStatus();
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerMalwareScanning() != null) {
+ innerMalwareScanning().validate();
+ }
+ if (innerSensitiveDataDiscovery() != null) {
+ innerSensitiveDataDiscovery().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/DevOpsConfigurationInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/DevOpsConfigurationInner.java
new file mode 100644
index 000000000000..f32a28a5accc
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/DevOpsConfigurationInner.java
@@ -0,0 +1,71 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.security.models.DevOpsConfigurationProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** DevOps Configuration resource. */
+@Fluent
+public final class DevOpsConfigurationInner extends ProxyResource {
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * DevOps Configuration properties.
+ */
+ @JsonProperty(value = "properties")
+ private DevOpsConfigurationProperties properties;
+
+ /** Creates an instance of DevOpsConfigurationInner class. */
+ public DevOpsConfigurationInner() {
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the properties property: DevOps Configuration properties.
+ *
+ * @return the properties value.
+ */
+ public DevOpsConfigurationProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: DevOps Configuration properties.
+ *
+ * @param properties the properties value to set.
+ * @return the DevOpsConfigurationInner object itself.
+ */
+ public DevOpsConfigurationInner withProperties(DevOpsConfigurationProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GetSensitivitySettingsListResponseInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GetSensitivitySettingsListResponseInner.java
new file mode 100644
index 000000000000..0e2bf79a0bd5
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GetSensitivitySettingsListResponseInner.java
@@ -0,0 +1,54 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** A list with a single sensitivity settings resource. */
+@Fluent
+public final class GetSensitivitySettingsListResponseInner {
+ /*
+ * The value property.
+ */
+ @JsonProperty(value = "value")
+ private List value;
+
+ /** Creates an instance of GetSensitivitySettingsListResponseInner class. */
+ public GetSensitivitySettingsListResponseInner() {
+ }
+
+ /**
+ * Get the value property: The value property.
+ *
+ * @return the value value.
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value property: The value property.
+ *
+ * @param value the value value to set.
+ * @return the GetSensitivitySettingsListResponseInner object itself.
+ */
+ public GetSensitivitySettingsListResponseInner withValue(List value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (value() != null) {
+ value().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GetSensitivitySettingsResponseInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GetSensitivitySettingsResponseInner.java
new file mode 100644
index 000000000000..b1418837f06b
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GetSensitivitySettingsResponseInner.java
@@ -0,0 +1,55 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.resourcemanager.security.models.GetSensitivitySettingsResponseProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Data sensitivity settings for sensitive data discovery. */
+@Fluent
+public final class GetSensitivitySettingsResponseInner extends ProxyResource {
+ /*
+ * The sensitivity settings properties
+ */
+ @JsonProperty(value = "properties")
+ private GetSensitivitySettingsResponseProperties properties;
+
+ /** Creates an instance of GetSensitivitySettingsResponseInner class. */
+ public GetSensitivitySettingsResponseInner() {
+ }
+
+ /**
+ * Get the properties property: The sensitivity settings properties.
+ *
+ * @return the properties value.
+ */
+ public GetSensitivitySettingsResponseProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: The sensitivity settings properties.
+ *
+ * @param properties the properties value to set.
+ * @return the GetSensitivitySettingsResponseInner object itself.
+ */
+ public GetSensitivitySettingsResponseInner withProperties(GetSensitivitySettingsResponseProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitHubOwnerInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitHubOwnerInner.java
new file mode 100644
index 000000000000..cba72af3bc9d
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitHubOwnerInner.java
@@ -0,0 +1,71 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.security.models.GitHubOwnerProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** GitHub Owner resource. */
+@Fluent
+public final class GitHubOwnerInner extends ProxyResource {
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * GitHub Owner properties.
+ */
+ @JsonProperty(value = "properties")
+ private GitHubOwnerProperties properties;
+
+ /** Creates an instance of GitHubOwnerInner class. */
+ public GitHubOwnerInner() {
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the properties property: GitHub Owner properties.
+ *
+ * @return the properties value.
+ */
+ public GitHubOwnerProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: GitHub Owner properties.
+ *
+ * @param properties the properties value to set.
+ * @return the GitHubOwnerInner object itself.
+ */
+ public GitHubOwnerInner withProperties(GitHubOwnerProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitHubOwnerListResponseInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitHubOwnerListResponseInner.java
new file mode 100644
index 000000000000..3ecc4dec827a
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitHubOwnerListResponseInner.java
@@ -0,0 +1,80 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** List of RP resources which supports pagination. */
+@Fluent
+public final class GitHubOwnerListResponseInner {
+ /*
+ * Gets or sets list of resources.
+ */
+ @JsonProperty(value = "value")
+ private List value;
+
+ /*
+ * Gets or sets next link to scroll over the results.
+ */
+ @JsonProperty(value = "nextLink")
+ private String nextLink;
+
+ /** Creates an instance of GitHubOwnerListResponseInner class. */
+ public GitHubOwnerListResponseInner() {
+ }
+
+ /**
+ * Get the value property: Gets or sets list of resources.
+ *
+ * @return the value value.
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value property: Gets or sets list of resources.
+ *
+ * @param value the value value to set.
+ * @return the GitHubOwnerListResponseInner object itself.
+ */
+ public GitHubOwnerListResponseInner withValue(List value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Get the nextLink property: Gets or sets next link to scroll over the results.
+ *
+ * @return the nextLink value.
+ */
+ public String nextLink() {
+ return this.nextLink;
+ }
+
+ /**
+ * Set the nextLink property: Gets or sets next link to scroll over the results.
+ *
+ * @param nextLink the nextLink value to set.
+ * @return the GitHubOwnerListResponseInner object itself.
+ */
+ public GitHubOwnerListResponseInner withNextLink(String nextLink) {
+ this.nextLink = nextLink;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (value() != null) {
+ value().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitHubRepositoryInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitHubRepositoryInner.java
new file mode 100644
index 000000000000..8cfaf36c6a2b
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitHubRepositoryInner.java
@@ -0,0 +1,71 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.security.models.GitHubRepositoryProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** GitHub Repository resource. */
+@Fluent
+public final class GitHubRepositoryInner extends ProxyResource {
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * GitHub Repository properties.
+ */
+ @JsonProperty(value = "properties")
+ private GitHubRepositoryProperties properties;
+
+ /** Creates an instance of GitHubRepositoryInner class. */
+ public GitHubRepositoryInner() {
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the properties property: GitHub Repository properties.
+ *
+ * @return the properties value.
+ */
+ public GitHubRepositoryProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: GitHub Repository properties.
+ *
+ * @param properties the properties value to set.
+ * @return the GitHubRepositoryInner object itself.
+ */
+ public GitHubRepositoryInner withProperties(GitHubRepositoryProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitLabGroupInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitLabGroupInner.java
new file mode 100644
index 000000000000..bd590fa17108
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitLabGroupInner.java
@@ -0,0 +1,71 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.security.models.GitLabGroupProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** GitLab Group resource. */
+@Fluent
+public final class GitLabGroupInner extends ProxyResource {
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * GitLab Group properties.
+ */
+ @JsonProperty(value = "properties")
+ private GitLabGroupProperties properties;
+
+ /** Creates an instance of GitLabGroupInner class. */
+ public GitLabGroupInner() {
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the properties property: GitLab Group properties.
+ *
+ * @return the properties value.
+ */
+ public GitLabGroupProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: GitLab Group properties.
+ *
+ * @param properties the properties value to set.
+ * @return the GitLabGroupInner object itself.
+ */
+ public GitLabGroupInner withProperties(GitLabGroupProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitLabGroupListResponseInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitLabGroupListResponseInner.java
new file mode 100644
index 000000000000..300bd853a62a
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitLabGroupListResponseInner.java
@@ -0,0 +1,80 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** List of RP resources which supports pagination. */
+@Fluent
+public final class GitLabGroupListResponseInner {
+ /*
+ * Gets or sets list of resources.
+ */
+ @JsonProperty(value = "value")
+ private List value;
+
+ /*
+ * Gets or sets next link to scroll over the results.
+ */
+ @JsonProperty(value = "nextLink")
+ private String nextLink;
+
+ /** Creates an instance of GitLabGroupListResponseInner class. */
+ public GitLabGroupListResponseInner() {
+ }
+
+ /**
+ * Get the value property: Gets or sets list of resources.
+ *
+ * @return the value value.
+ */
+ public List value() {
+ return this.value;
+ }
+
+ /**
+ * Set the value property: Gets or sets list of resources.
+ *
+ * @param value the value value to set.
+ * @return the GitLabGroupListResponseInner object itself.
+ */
+ public GitLabGroupListResponseInner withValue(List value) {
+ this.value = value;
+ return this;
+ }
+
+ /**
+ * Get the nextLink property: Gets or sets next link to scroll over the results.
+ *
+ * @return the nextLink value.
+ */
+ public String nextLink() {
+ return this.nextLink;
+ }
+
+ /**
+ * Set the nextLink property: Gets or sets next link to scroll over the results.
+ *
+ * @param nextLink the nextLink value to set.
+ * @return the GitLabGroupListResponseInner object itself.
+ */
+ public GitLabGroupListResponseInner withNextLink(String nextLink) {
+ this.nextLink = nextLink;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (value() != null) {
+ value().forEach(e -> e.validate());
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitLabProjectInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitLabProjectInner.java
new file mode 100644
index 000000000000..99447a1a92a4
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/GitLabProjectInner.java
@@ -0,0 +1,71 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.security.models.GitLabProjectProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** GitLab Project resource. */
+@Fluent
+public final class GitLabProjectInner extends ProxyResource {
+ /*
+ * Metadata pertaining to creation and last modification of the resource.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /*
+ * GitLab Project properties.
+ */
+ @JsonProperty(value = "properties")
+ private GitLabProjectProperties properties;
+
+ /** Creates an instance of GitLabProjectInner class. */
+ public GitLabProjectInner() {
+ }
+
+ /**
+ * Get the systemData property: Metadata pertaining to creation and last modification of the resource.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Get the properties property: GitLab Project properties.
+ *
+ * @return the properties value.
+ */
+ public GitLabProjectProperties properties() {
+ return this.properties;
+ }
+
+ /**
+ * Set the properties property: GitLab Project properties.
+ *
+ * @param properties the properties value to set.
+ * @return the GitLabProjectInner object itself.
+ */
+ public GitLabProjectInner withProperties(GitLabProjectProperties properties) {
+ this.properties = properties;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (properties() != null) {
+ properties().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/HealthReportInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/HealthReportInner.java
index 31f24ba0c299..313c2339fe03 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/HealthReportInner.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/HealthReportInner.java
@@ -13,6 +13,7 @@
import com.azure.resourcemanager.security.models.StatusAutoGenerated;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;
+import java.util.Map;
/** The health report resource. */
@Fluent
@@ -151,6 +152,39 @@ public HealthReportInner withAffectedDefendersPlans(List affectedDefende
return this;
}
+ /**
+ * Get the affectedDefendersSubPlans property: The affected defenders sub plans by unhealthy report.
+ *
+ * @return the affectedDefendersSubPlans value.
+ */
+ public List affectedDefendersSubPlans() {
+ return this.innerProperties() == null ? null : this.innerProperties().affectedDefendersSubPlans();
+ }
+
+ /**
+ * Set the affectedDefendersSubPlans property: The affected defenders sub plans by unhealthy report.
+ *
+ * @param affectedDefendersSubPlans the affectedDefendersSubPlans value to set.
+ * @return the HealthReportInner object itself.
+ */
+ public HealthReportInner withAffectedDefendersSubPlans(List affectedDefendersSubPlans) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new HealthReportProperties();
+ }
+ this.innerProperties().withAffectedDefendersSubPlans(affectedDefendersSubPlans);
+ return this;
+ }
+
+ /**
+ * Get the reportAdditionalData property: Additional data for the given health report, this field can include more
+ * details on the resource and the health scenario.
+ *
+ * @return the reportAdditionalData value.
+ */
+ public Map reportAdditionalData() {
+ return this.innerProperties() == null ? null : this.innerProperties().reportAdditionalData();
+ }
+
/**
* Get the issues property: A collection of the issues in the report.
*
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/HealthReportProperties.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/HealthReportProperties.java
index 98ee1832e128..e0c6c1c0a9b8 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/HealthReportProperties.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/HealthReportProperties.java
@@ -10,8 +10,10 @@
import com.azure.resourcemanager.security.models.Issue;
import com.azure.resourcemanager.security.models.ResourceDetailsAutoGenerated;
import com.azure.resourcemanager.security.models.StatusAutoGenerated;
+import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;
+import java.util.Map;
/** Describes properties of the health report. */
@Fluent
@@ -46,6 +48,20 @@ public final class HealthReportProperties {
@JsonProperty(value = "affectedDefendersPlans")
private List affectedDefendersPlans;
+ /*
+ * The affected defenders sub plans by unhealthy report
+ */
+ @JsonProperty(value = "affectedDefendersSubPlans")
+ private List affectedDefendersSubPlans;
+
+ /*
+ * Additional data for the given health report, this field can include more details on the resource and the health
+ * scenario.
+ */
+ @JsonProperty(value = "reportAdditionalData", access = JsonProperty.Access.WRITE_ONLY)
+ @JsonInclude(value = JsonInclude.Include.NON_NULL, content = JsonInclude.Include.ALWAYS)
+ private Map reportAdditionalData;
+
/*
* A collection of the issues in the report
*/
@@ -156,6 +172,36 @@ public HealthReportProperties withAffectedDefendersPlans(List affectedDe
return this;
}
+ /**
+ * Get the affectedDefendersSubPlans property: The affected defenders sub plans by unhealthy report.
+ *
+ * @return the affectedDefendersSubPlans value.
+ */
+ public List affectedDefendersSubPlans() {
+ return this.affectedDefendersSubPlans;
+ }
+
+ /**
+ * Set the affectedDefendersSubPlans property: The affected defenders sub plans by unhealthy report.
+ *
+ * @param affectedDefendersSubPlans the affectedDefendersSubPlans value to set.
+ * @return the HealthReportProperties object itself.
+ */
+ public HealthReportProperties withAffectedDefendersSubPlans(List affectedDefendersSubPlans) {
+ this.affectedDefendersSubPlans = affectedDefendersSubPlans;
+ return this;
+ }
+
+ /**
+ * Get the reportAdditionalData property: Additional data for the given health report, this field can include more
+ * details on the resource and the health scenario.
+ *
+ * @return the reportAdditionalData value.
+ */
+ public Map reportAdditionalData() {
+ return this.reportAdditionalData;
+ }
+
/**
* Get the issues property: A collection of the issues in the report.
*
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/IngestionSettingInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/IngestionSettingInner.java
deleted file mode 100644
index 6bf368c4d201..000000000000
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/IngestionSettingInner.java
+++ /dev/null
@@ -1,51 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.security.fluent.models;
-
-import com.azure.core.annotation.Fluent;
-import com.azure.core.management.ProxyResource;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-/** Configures how to correlate scan data and logs with resources associated with the subscription. */
-@Fluent
-public final class IngestionSettingInner extends ProxyResource {
- /*
- * Ingestion setting data
- */
- @JsonProperty(value = "properties")
- private Object properties;
-
- /** Creates an instance of IngestionSettingInner class. */
- public IngestionSettingInner() {
- }
-
- /**
- * Get the properties property: Ingestion setting data.
- *
- * @return the properties value.
- */
- public Object properties() {
- return this.properties;
- }
-
- /**
- * Set the properties property: Ingestion setting data.
- *
- * @param properties the properties value to set.
- * @return the IngestionSettingInner object itself.
- */
- public IngestionSettingInner withProperties(Object properties) {
- this.properties = properties;
- return this;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- }
-}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/IngestionSettingTokenInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/IngestionSettingTokenInner.java
deleted file mode 100644
index dd95c8c94ce6..000000000000
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/IngestionSettingTokenInner.java
+++ /dev/null
@@ -1,40 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.security.fluent.models;
-
-import com.azure.core.annotation.Immutable;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-/** Configures how to correlate scan data and logs with resources associated with the subscription. */
-@Immutable
-public final class IngestionSettingTokenInner {
- /*
- * The token is used for correlating security data and logs with the resources in the subscription.
- */
- @JsonProperty(value = "token", access = JsonProperty.Access.WRITE_ONLY)
- private String token;
-
- /** Creates an instance of IngestionSettingTokenInner class. */
- public IngestionSettingTokenInner() {
- }
-
- /**
- * Get the token property: The token is used for correlating security data and logs with the resources in the
- * subscription.
- *
- * @return the token value.
- */
- public String token() {
- return this.token;
- }
-
- /**
- * Validates the instance.
- *
- * @throws IllegalArgumentException thrown if the instance is not valid.
- */
- public void validate() {
- }
-}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/MalwareScanningProperties.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/MalwareScanningProperties.java
new file mode 100644
index 000000000000..47787eb930de
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/MalwareScanningProperties.java
@@ -0,0 +1,137 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.security.models.OperationStatusAutoGenerated;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Properties of Malware Scanning. */
+@Fluent
+public final class MalwareScanningProperties {
+ /*
+ * Properties of On Upload malware scanning.
+ */
+ @JsonProperty(value = "onUpload")
+ private OnUploadProperties innerOnUpload;
+
+ /*
+ * Optional. Resource id of an Event Grid Topic to send scan results to.
+ */
+ @JsonProperty(value = "scanResultsEventGridTopicResourceId")
+ private String scanResultsEventGridTopicResourceId;
+
+ /*
+ * Upon failure or partial success. Additional data describing Malware Scanning enable/disable operation.
+ */
+ @JsonProperty(value = "operationStatus", access = JsonProperty.Access.WRITE_ONLY)
+ private OperationStatusAutoGenerated operationStatus;
+
+ /** Creates an instance of MalwareScanningProperties class. */
+ public MalwareScanningProperties() {
+ }
+
+ /**
+ * Get the innerOnUpload property: Properties of On Upload malware scanning.
+ *
+ * @return the innerOnUpload value.
+ */
+ private OnUploadProperties innerOnUpload() {
+ return this.innerOnUpload;
+ }
+
+ /**
+ * Get the scanResultsEventGridTopicResourceId property: Optional. Resource id of an Event Grid Topic to send scan
+ * results to.
+ *
+ * @return the scanResultsEventGridTopicResourceId value.
+ */
+ public String scanResultsEventGridTopicResourceId() {
+ return this.scanResultsEventGridTopicResourceId;
+ }
+
+ /**
+ * Set the scanResultsEventGridTopicResourceId property: Optional. Resource id of an Event Grid Topic to send scan
+ * results to.
+ *
+ * @param scanResultsEventGridTopicResourceId the scanResultsEventGridTopicResourceId value to set.
+ * @return the MalwareScanningProperties object itself.
+ */
+ public MalwareScanningProperties withScanResultsEventGridTopicResourceId(
+ String scanResultsEventGridTopicResourceId) {
+ this.scanResultsEventGridTopicResourceId = scanResultsEventGridTopicResourceId;
+ return this;
+ }
+
+ /**
+ * Get the operationStatus property: Upon failure or partial success. Additional data describing Malware Scanning
+ * enable/disable operation.
+ *
+ * @return the operationStatus value.
+ */
+ public OperationStatusAutoGenerated operationStatus() {
+ return this.operationStatus;
+ }
+
+ /**
+ * Get the isEnabled property: Indicates whether On Upload malware scanning should be enabled.
+ *
+ * @return the isEnabled value.
+ */
+ public Boolean isEnabled() {
+ return this.innerOnUpload() == null ? null : this.innerOnUpload().isEnabled();
+ }
+
+ /**
+ * Set the isEnabled property: Indicates whether On Upload malware scanning should be enabled.
+ *
+ * @param isEnabled the isEnabled value to set.
+ * @return the MalwareScanningProperties object itself.
+ */
+ public MalwareScanningProperties withIsEnabled(Boolean isEnabled) {
+ if (this.innerOnUpload() == null) {
+ this.innerOnUpload = new OnUploadProperties();
+ }
+ this.innerOnUpload().withIsEnabled(isEnabled);
+ return this;
+ }
+
+ /**
+ * Get the capGBPerMonth property: Defines the max GB to be scanned per Month. Set to -1 if no capping is needed.
+ *
+ * @return the capGBPerMonth value.
+ */
+ public Integer capGBPerMonth() {
+ return this.innerOnUpload() == null ? null : this.innerOnUpload().capGBPerMonth();
+ }
+
+ /**
+ * Set the capGBPerMonth property: Defines the max GB to be scanned per Month. Set to -1 if no capping is needed.
+ *
+ * @param capGBPerMonth the capGBPerMonth value to set.
+ * @return the MalwareScanningProperties object itself.
+ */
+ public MalwareScanningProperties withCapGBPerMonth(Integer capGBPerMonth) {
+ if (this.innerOnUpload() == null) {
+ this.innerOnUpload = new OnUploadProperties();
+ }
+ this.innerOnUpload().withCapGBPerMonth(capGBPerMonth);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (innerOnUpload() != null) {
+ innerOnUpload().validate();
+ }
+ if (operationStatus() != null) {
+ operationStatus().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/MdeOnboardingDataInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/MdeOnboardingDataInner.java
index bd385f7c835d..dad1e98dfee8 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/MdeOnboardingDataInner.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/MdeOnboardingDataInner.java
@@ -11,6 +11,8 @@
/** The resource of the configuration or data needed to onboard the machine to MDE. */
@Fluent
public final class MdeOnboardingDataInner extends ProxyResource {
+ private static final byte[] EMPTY_BYTE_ARRAY = new byte[0];
+
/*
* Properties of the MDE configuration or data parameter needed to onboard the machine to MDE
*/
@@ -38,7 +40,7 @@ private MdeOnboardingDataProperties innerProperties() {
* @return the onboardingPackageWindows value.
*/
public byte[] onboardingPackageWindows() {
- return this.innerProperties() == null ? new byte[0] : this.innerProperties().onboardingPackageWindows();
+ return this.innerProperties() == null ? EMPTY_BYTE_ARRAY : this.innerProperties().onboardingPackageWindows();
}
/**
@@ -63,7 +65,7 @@ public MdeOnboardingDataInner withOnboardingPackageWindows(byte[] onboardingPack
* @return the onboardingPackageLinux value.
*/
public byte[] onboardingPackageLinux() {
- return this.innerProperties() == null ? new byte[0] : this.innerProperties().onboardingPackageLinux();
+ return this.innerProperties() == null ? EMPTY_BYTE_ARRAY : this.innerProperties().onboardingPackageLinux();
}
/**
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/OnUploadProperties.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/OnUploadProperties.java
new file mode 100644
index 000000000000..3d5e06a1baae
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/OnUploadProperties.java
@@ -0,0 +1,76 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Properties of On Upload malware scanning. */
+@Fluent
+public final class OnUploadProperties {
+ /*
+ * Indicates whether On Upload malware scanning should be enabled.
+ */
+ @JsonProperty(value = "isEnabled")
+ private Boolean isEnabled;
+
+ /*
+ * Defines the max GB to be scanned per Month. Set to -1 if no capping is needed.
+ */
+ @JsonProperty(value = "capGBPerMonth")
+ private Integer capGBPerMonth;
+
+ /** Creates an instance of OnUploadProperties class. */
+ public OnUploadProperties() {
+ }
+
+ /**
+ * Get the isEnabled property: Indicates whether On Upload malware scanning should be enabled.
+ *
+ * @return the isEnabled value.
+ */
+ public Boolean isEnabled() {
+ return this.isEnabled;
+ }
+
+ /**
+ * Set the isEnabled property: Indicates whether On Upload malware scanning should be enabled.
+ *
+ * @param isEnabled the isEnabled value to set.
+ * @return the OnUploadProperties object itself.
+ */
+ public OnUploadProperties withIsEnabled(Boolean isEnabled) {
+ this.isEnabled = isEnabled;
+ return this;
+ }
+
+ /**
+ * Get the capGBPerMonth property: Defines the max GB to be scanned per Month. Set to -1 if no capping is needed.
+ *
+ * @return the capGBPerMonth value.
+ */
+ public Integer capGBPerMonth() {
+ return this.capGBPerMonth;
+ }
+
+ /**
+ * Set the capGBPerMonth property: Defines the max GB to be scanned per Month. Set to -1 if no capping is needed.
+ *
+ * @param capGBPerMonth the capGBPerMonth value to set.
+ * @return the OnUploadProperties object itself.
+ */
+ public OnUploadProperties withCapGBPerMonth(Integer capGBPerMonth) {
+ this.capGBPerMonth = capGBPerMonth;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/OperationStatusResultInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/OperationStatusResultInner.java
new file mode 100644
index 000000000000..30e54eccef6e
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/OperationStatusResultInner.java
@@ -0,0 +1,247 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.management.exception.ManagementError;
+import com.azure.core.util.logging.ClientLogger;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.time.OffsetDateTime;
+import java.util.List;
+
+/** The current status of an async operation. */
+@Fluent
+public final class OperationStatusResultInner {
+ /*
+ * Fully qualified ID for the async operation.
+ */
+ @JsonProperty(value = "id")
+ private String id;
+
+ /*
+ * Name of the async operation.
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /*
+ * Operation status.
+ */
+ @JsonProperty(value = "status", required = true)
+ private String status;
+
+ /*
+ * Percent of the operation that is complete.
+ */
+ @JsonProperty(value = "percentComplete")
+ private Float percentComplete;
+
+ /*
+ * The start time of the operation.
+ */
+ @JsonProperty(value = "startTime")
+ private OffsetDateTime startTime;
+
+ /*
+ * The end time of the operation.
+ */
+ @JsonProperty(value = "endTime")
+ private OffsetDateTime endTime;
+
+ /*
+ * The operations list.
+ */
+ @JsonProperty(value = "operations")
+ private List operations;
+
+ /*
+ * If present, details of the operation error.
+ */
+ @JsonProperty(value = "error")
+ private ManagementError error;
+
+ /** Creates an instance of OperationStatusResultInner class. */
+ public OperationStatusResultInner() {
+ }
+
+ /**
+ * Get the id property: Fully qualified ID for the async operation.
+ *
+ * @return the id value.
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * Set the id property: Fully qualified ID for the async operation.
+ *
+ * @param id the id value to set.
+ * @return the OperationStatusResultInner object itself.
+ */
+ public OperationStatusResultInner withId(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get the name property: Name of the async operation.
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name property: Name of the async operation.
+ *
+ * @param name the name value to set.
+ * @return the OperationStatusResultInner object itself.
+ */
+ public OperationStatusResultInner withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the status property: Operation status.
+ *
+ * @return the status value.
+ */
+ public String status() {
+ return this.status;
+ }
+
+ /**
+ * Set the status property: Operation status.
+ *
+ * @param status the status value to set.
+ * @return the OperationStatusResultInner object itself.
+ */
+ public OperationStatusResultInner withStatus(String status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get the percentComplete property: Percent of the operation that is complete.
+ *
+ * @return the percentComplete value.
+ */
+ public Float percentComplete() {
+ return this.percentComplete;
+ }
+
+ /**
+ * Set the percentComplete property: Percent of the operation that is complete.
+ *
+ * @param percentComplete the percentComplete value to set.
+ * @return the OperationStatusResultInner object itself.
+ */
+ public OperationStatusResultInner withPercentComplete(Float percentComplete) {
+ this.percentComplete = percentComplete;
+ return this;
+ }
+
+ /**
+ * Get the startTime property: The start time of the operation.
+ *
+ * @return the startTime value.
+ */
+ public OffsetDateTime startTime() {
+ return this.startTime;
+ }
+
+ /**
+ * Set the startTime property: The start time of the operation.
+ *
+ * @param startTime the startTime value to set.
+ * @return the OperationStatusResultInner object itself.
+ */
+ public OperationStatusResultInner withStartTime(OffsetDateTime startTime) {
+ this.startTime = startTime;
+ return this;
+ }
+
+ /**
+ * Get the endTime property: The end time of the operation.
+ *
+ * @return the endTime value.
+ */
+ public OffsetDateTime endTime() {
+ return this.endTime;
+ }
+
+ /**
+ * Set the endTime property: The end time of the operation.
+ *
+ * @param endTime the endTime value to set.
+ * @return the OperationStatusResultInner object itself.
+ */
+ public OperationStatusResultInner withEndTime(OffsetDateTime endTime) {
+ this.endTime = endTime;
+ return this;
+ }
+
+ /**
+ * Get the operations property: The operations list.
+ *
+ * @return the operations value.
+ */
+ public List operations() {
+ return this.operations;
+ }
+
+ /**
+ * Set the operations property: The operations list.
+ *
+ * @param operations the operations value to set.
+ * @return the OperationStatusResultInner object itself.
+ */
+ public OperationStatusResultInner withOperations(List operations) {
+ this.operations = operations;
+ return this;
+ }
+
+ /**
+ * Get the error property: If present, details of the operation error.
+ *
+ * @return the error value.
+ */
+ public ManagementError error() {
+ return this.error;
+ }
+
+ /**
+ * Set the error property: If present, details of the operation error.
+ *
+ * @param error the error value to set.
+ * @return the OperationStatusResultInner object itself.
+ */
+ public OperationStatusResultInner withError(ManagementError error) {
+ this.error = error;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (status() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property status in model OperationStatusResultInner"));
+ }
+ if (operations() != null) {
+ operations().forEach(e -> e.validate());
+ }
+ }
+
+ private static final ClientLogger LOGGER = new ClientLogger(OperationStatusResultInner.class);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/SensitiveDataDiscoveryProperties.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/SensitiveDataDiscoveryProperties.java
new file mode 100644
index 000000000000..b44b7ed8f61c
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/SensitiveDataDiscoveryProperties.java
@@ -0,0 +1,70 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.security.models.OperationStatusAutoGenerated;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Properties of Sensitive Data Discovery. */
+@Fluent
+public final class SensitiveDataDiscoveryProperties {
+ /*
+ * Indicates whether Sensitive Data Discovery should be enabled.
+ */
+ @JsonProperty(value = "isEnabled")
+ private Boolean isEnabled;
+
+ /*
+ * Upon failure or partial success. Additional data describing Sensitive Data Discovery enable/disable operation.
+ */
+ @JsonProperty(value = "operationStatus", access = JsonProperty.Access.WRITE_ONLY)
+ private OperationStatusAutoGenerated operationStatus;
+
+ /** Creates an instance of SensitiveDataDiscoveryProperties class. */
+ public SensitiveDataDiscoveryProperties() {
+ }
+
+ /**
+ * Get the isEnabled property: Indicates whether Sensitive Data Discovery should be enabled.
+ *
+ * @return the isEnabled value.
+ */
+ public Boolean isEnabled() {
+ return this.isEnabled;
+ }
+
+ /**
+ * Set the isEnabled property: Indicates whether Sensitive Data Discovery should be enabled.
+ *
+ * @param isEnabled the isEnabled value to set.
+ * @return the SensitiveDataDiscoveryProperties object itself.
+ */
+ public SensitiveDataDiscoveryProperties withIsEnabled(Boolean isEnabled) {
+ this.isEnabled = isEnabled;
+ return this;
+ }
+
+ /**
+ * Get the operationStatus property: Upon failure or partial success. Additional data describing Sensitive Data
+ * Discovery enable/disable operation.
+ *
+ * @return the operationStatus value.
+ */
+ public OperationStatusAutoGenerated operationStatus() {
+ return this.operationStatus;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (operationStatus() != null) {
+ operationStatus().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ServerVulnerabilityAssessmentsAzureSettingProperties.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ServerVulnerabilityAssessmentsAzureSettingProperties.java
new file mode 100644
index 000000000000..0b7512c36bb2
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ServerVulnerabilityAssessmentsAzureSettingProperties.java
@@ -0,0 +1,65 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+/** Describes the vulnerability assessments setting properties on Azure servers in the defined scope. */
+@Fluent
+public final class ServerVulnerabilityAssessmentsAzureSettingProperties {
+ /*
+ * The selected vulnerability assessments provider on Azure servers in the defined scope.
+ */
+ @JsonProperty(value = "selectedProvider", required = true)
+ private ServerVulnerabilityAssessmentsAzureSettingSelectedProvider selectedProvider;
+
+ /** Creates an instance of ServerVulnerabilityAssessmentsAzureSettingProperties class. */
+ public ServerVulnerabilityAssessmentsAzureSettingProperties() {
+ }
+
+ /**
+ * Get the selectedProvider property: The selected vulnerability assessments provider on Azure servers in the
+ * defined scope.
+ *
+ * @return the selectedProvider value.
+ */
+ public ServerVulnerabilityAssessmentsAzureSettingSelectedProvider selectedProvider() {
+ return this.selectedProvider;
+ }
+
+ /**
+ * Set the selectedProvider property: The selected vulnerability assessments provider on Azure servers in the
+ * defined scope.
+ *
+ * @param selectedProvider the selectedProvider value to set.
+ * @return the ServerVulnerabilityAssessmentsAzureSettingProperties object itself.
+ */
+ public ServerVulnerabilityAssessmentsAzureSettingProperties withSelectedProvider(
+ ServerVulnerabilityAssessmentsAzureSettingSelectedProvider selectedProvider) {
+ this.selectedProvider = selectedProvider;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (selectedProvider() == null) {
+ throw LOGGER
+ .logExceptionAsError(
+ new IllegalArgumentException(
+ "Missing required property selectedProvider in model"
+ + " ServerVulnerabilityAssessmentsAzureSettingProperties"));
+ }
+ }
+
+ private static final ClientLogger LOGGER =
+ new ClientLogger(ServerVulnerabilityAssessmentsAzureSettingProperties.class);
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ServerVulnerabilityAssessmentsSettingInner.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ServerVulnerabilityAssessmentsSettingInner.java
new file mode 100644
index 000000000000..659bf15b6771
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/fluent/models/ServerVulnerabilityAssessmentsSettingInner.java
@@ -0,0 +1,52 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.fluent.models;
+
+import com.azure.core.annotation.Immutable;
+import com.azure.core.management.ProxyResource;
+import com.azure.core.management.SystemData;
+import com.azure.resourcemanager.security.models.AzureServersSetting;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/** A base vulnerability assessments setting on servers in the defined scope. */
+@JsonTypeInfo(
+ use = JsonTypeInfo.Id.NAME,
+ include = JsonTypeInfo.As.PROPERTY,
+ property = "kind",
+ defaultImpl = ServerVulnerabilityAssessmentsSettingInner.class)
+@JsonTypeName("ServerVulnerabilityAssessmentsSetting")
+@JsonSubTypes({@JsonSubTypes.Type(name = "AzureServersSetting", value = AzureServersSetting.class)})
+@Immutable
+public class ServerVulnerabilityAssessmentsSettingInner extends ProxyResource {
+ /*
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ */
+ @JsonProperty(value = "systemData", access = JsonProperty.Access.WRITE_ONLY)
+ private SystemData systemData;
+
+ /** Creates an instance of ServerVulnerabilityAssessmentsSettingInner class. */
+ public ServerVulnerabilityAssessmentsSettingInner() {
+ }
+
+ /**
+ * Get the systemData property: Azure Resource Manager metadata containing createdBy and modifiedBy information.
+ *
+ * @return the systemData value.
+ */
+ public SystemData systemData() {
+ return this.systemData;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionImpl.java
new file mode 100644
index 000000000000..61a1a1426384
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionImpl.java
@@ -0,0 +1,81 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.implementation;
+
+import com.azure.resourcemanager.security.fluent.models.ApiCollectionInner;
+import com.azure.resourcemanager.security.models.ApiCollection;
+import com.azure.resourcemanager.security.models.ProvisioningState;
+
+public final class ApiCollectionImpl implements ApiCollection {
+ private ApiCollectionInner innerObject;
+
+ private final com.azure.resourcemanager.security.SecurityManager serviceManager;
+
+ ApiCollectionImpl(
+ ApiCollectionInner innerObject, com.azure.resourcemanager.security.SecurityManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public String id() {
+ return this.innerModel().id();
+ }
+
+ public String name() {
+ return this.innerModel().name();
+ }
+
+ public String type() {
+ return this.innerModel().type();
+ }
+
+ public ProvisioningState provisioningState() {
+ return this.innerModel().provisioningState();
+ }
+
+ public String displayName() {
+ return this.innerModel().displayName();
+ }
+
+ public String discoveredVia() {
+ return this.innerModel().discoveredVia();
+ }
+
+ public String baseUrl() {
+ return this.innerModel().baseUrl();
+ }
+
+ public Long numberOfApiEndpoints() {
+ return this.innerModel().numberOfApiEndpoints();
+ }
+
+ public Long numberOfInactiveApiEndpoints() {
+ return this.innerModel().numberOfInactiveApiEndpoints();
+ }
+
+ public Long numberOfUnauthenticatedApiEndpoints() {
+ return this.innerModel().numberOfUnauthenticatedApiEndpoints();
+ }
+
+ public Long numberOfExternalApiEndpoints() {
+ return this.innerModel().numberOfExternalApiEndpoints();
+ }
+
+ public Long numberOfApiEndpointsWithSensitiveDataExposed() {
+ return this.innerModel().numberOfApiEndpointsWithSensitiveDataExposed();
+ }
+
+ public String sensitivityLabel() {
+ return this.innerModel().sensitivityLabel();
+ }
+
+ public ApiCollectionInner innerModel() {
+ return this.innerObject;
+ }
+
+ private com.azure.resourcemanager.security.SecurityManager manager() {
+ return this.serviceManager;
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionOffboardingsImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionOffboardingsImpl.java
deleted file mode 100644
index 8e6f9091324b..000000000000
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionOffboardingsImpl.java
+++ /dev/null
@@ -1,43 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.security.implementation;
-
-import com.azure.core.http.rest.Response;
-import com.azure.core.util.Context;
-import com.azure.core.util.logging.ClientLogger;
-import com.azure.resourcemanager.security.fluent.ApiCollectionOffboardingsClient;
-import com.azure.resourcemanager.security.models.ApiCollectionOffboardings;
-
-public final class ApiCollectionOffboardingsImpl implements ApiCollectionOffboardings {
- private static final ClientLogger LOGGER = new ClientLogger(ApiCollectionOffboardingsImpl.class);
-
- private final ApiCollectionOffboardingsClient innerClient;
-
- private final com.azure.resourcemanager.security.SecurityManager serviceManager;
-
- public ApiCollectionOffboardingsImpl(
- ApiCollectionOffboardingsClient innerClient,
- com.azure.resourcemanager.security.SecurityManager serviceManager) {
- this.innerClient = innerClient;
- this.serviceManager = serviceManager;
- }
-
- public Response deleteWithResponse(
- String resourceGroupName, String serviceName, String apiCollectionId, Context context) {
- return this.serviceClient().deleteWithResponse(resourceGroupName, serviceName, apiCollectionId, context);
- }
-
- public void delete(String resourceGroupName, String serviceName, String apiCollectionId) {
- this.serviceClient().delete(resourceGroupName, serviceName, apiCollectionId);
- }
-
- private ApiCollectionOffboardingsClient serviceClient() {
- return this.innerClient;
- }
-
- private com.azure.resourcemanager.security.SecurityManager manager() {
- return this.serviceManager;
- }
-}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionOnboardingsImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionOnboardingsImpl.java
deleted file mode 100644
index 0fc34f165495..000000000000
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionOnboardingsImpl.java
+++ /dev/null
@@ -1,60 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.security.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.security.fluent.ApiCollectionOnboardingsClient;
-import com.azure.resourcemanager.security.fluent.models.ApiCollectionResponseInner;
-import com.azure.resourcemanager.security.models.ApiCollectionOnboardings;
-import com.azure.resourcemanager.security.models.ApiCollectionResponse;
-
-public final class ApiCollectionOnboardingsImpl implements ApiCollectionOnboardings {
- private static final ClientLogger LOGGER = new ClientLogger(ApiCollectionOnboardingsImpl.class);
-
- private final ApiCollectionOnboardingsClient innerClient;
-
- private final com.azure.resourcemanager.security.SecurityManager serviceManager;
-
- public ApiCollectionOnboardingsImpl(
- ApiCollectionOnboardingsClient innerClient, com.azure.resourcemanager.security.SecurityManager serviceManager) {
- this.innerClient = innerClient;
- this.serviceManager = serviceManager;
- }
-
- public Response createWithResponse(
- String resourceGroupName, String serviceName, String apiCollectionId, Context context) {
- Response inner =
- this.serviceClient().createWithResponse(resourceGroupName, serviceName, apiCollectionId, context);
- if (inner != null) {
- return new SimpleResponse<>(
- inner.getRequest(),
- inner.getStatusCode(),
- inner.getHeaders(),
- new ApiCollectionResponseImpl(inner.getValue(), this.manager()));
- } else {
- return null;
- }
- }
-
- public ApiCollectionResponse create(String resourceGroupName, String serviceName, String apiCollectionId) {
- ApiCollectionResponseInner inner = this.serviceClient().create(resourceGroupName, serviceName, apiCollectionId);
- if (inner != null) {
- return new ApiCollectionResponseImpl(inner, this.manager());
- } else {
- return null;
- }
- }
-
- private ApiCollectionOnboardingsClient serviceClient() {
- return this.innerClient;
- }
-
- private com.azure.resourcemanager.security.SecurityManager manager() {
- return this.serviceManager;
- }
-}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionResponseImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionResponseImpl.java
deleted file mode 100644
index 1427fdd1513f..000000000000
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionResponseImpl.java
+++ /dev/null
@@ -1,55 +0,0 @@
-// Copyright (c) Microsoft Corporation. All rights reserved.
-// Licensed under the MIT License.
-// Code generated by Microsoft (R) AutoRest Code Generator.
-
-package com.azure.resourcemanager.security.implementation;
-
-import com.azure.resourcemanager.security.fluent.models.ApiCollectionResponseInner;
-import com.azure.resourcemanager.security.models.ApiCollectionResponse;
-import java.util.Collections;
-import java.util.Map;
-
-public final class ApiCollectionResponseImpl implements ApiCollectionResponse {
- private ApiCollectionResponseInner innerObject;
-
- private final com.azure.resourcemanager.security.SecurityManager serviceManager;
-
- ApiCollectionResponseImpl(
- ApiCollectionResponseInner innerObject, com.azure.resourcemanager.security.SecurityManager serviceManager) {
- this.innerObject = innerObject;
- this.serviceManager = serviceManager;
- }
-
- public String id() {
- return this.innerModel().id();
- }
-
- public String name() {
- return this.innerModel().name();
- }
-
- public String type() {
- return this.innerModel().type();
- }
-
- public String displayName() {
- return this.innerModel().displayName();
- }
-
- public Map additionalData() {
- Map inner = this.innerModel().additionalData();
- if (inner != null) {
- return Collections.unmodifiableMap(inner);
- } else {
- return Collections.emptyMap();
- }
- }
-
- public ApiCollectionResponseInner innerModel() {
- return this.innerObject;
- }
-
- private com.azure.resourcemanager.security.SecurityManager manager() {
- return this.serviceManager;
- }
-}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionsClientImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionsClientImpl.java
index 08310c38ed47..36c52999210d 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionsClientImpl.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ApiCollectionsClientImpl.java
@@ -4,6 +4,7 @@
package com.azure.resourcemanager.security.implementation;
+import com.azure.core.annotation.Delete;
import com.azure.core.annotation.ExpectedResponses;
import com.azure.core.annotation.Get;
import com.azure.core.annotation.HeaderParam;
@@ -11,6 +12,7 @@
import com.azure.core.annotation.Host;
import com.azure.core.annotation.HostParam;
import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Put;
import com.azure.core.annotation.QueryParam;
import com.azure.core.annotation.ReturnType;
import com.azure.core.annotation.ServiceInterface;
@@ -23,11 +25,16 @@
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.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.security.fluent.ApiCollectionsClient;
-import com.azure.resourcemanager.security.fluent.models.ApiCollectionResponseInner;
-import com.azure.resourcemanager.security.models.ApiCollectionResponseList;
+import com.azure.resourcemanager.security.fluent.models.ApiCollectionInner;
+import com.azure.resourcemanager.security.models.ApiCollectionList;
+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 ApiCollectionsClient. */
@@ -56,12 +63,36 @@ public final class ApiCollectionsClientImpl implements ApiCollectionsClient {
@Host("{$host}")
@ServiceInterface(name = "SecurityCenterApiCol")
public interface ApiCollectionsService {
+ @Headers({"Content-Type: application/json"})
+ @Get("/subscriptions/{subscriptionId}/providers/Microsoft.Security/apiCollections")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> list(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/apiCollections")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listByResourceGroup(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
@Headers({"Content-Type: application/json"})
@Get(
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
- Mono> list(
+ Mono> listByAzureApiManagementService(
@HostParam("$host") String endpoint,
@PathParam("subscriptionId") String subscriptionId,
@PathParam("resourceGroupName") String resourceGroupName,
@@ -72,15 +103,45 @@ Mono> list(
@Headers({"Content-Type: application/json"})
@Get(
- "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiCollectionId}")
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiId}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
- Mono> get(
+ Mono> getByAzureApiManagementService(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("serviceName") String serviceName,
+ @PathParam("apiId") String apiId,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Put(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiId}")
+ @ExpectedResponses({200, 201})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono>> onboardAzureApiManagementApi(
+ @HostParam("$host") String endpoint,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("resourceGroupName") String resourceGroupName,
+ @PathParam("serviceName") String serviceName,
+ @PathParam("apiId") String apiId,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Delete(
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiId}")
+ @ExpectedResponses({200, 204})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> offboardAzureApiManagementApi(
@HostParam("$host") String endpoint,
@PathParam("subscriptionId") String subscriptionId,
@PathParam("resourceGroupName") String resourceGroupName,
@PathParam("serviceName") String serviceName,
- @PathParam("apiCollectionId") String apiCollectionId,
+ @PathParam("apiId") String apiId,
@QueryParam("api-version") String apiVersion,
@HeaderParam("Accept") String accept,
Context context);
@@ -89,7 +150,27 @@ Mono> get(
@Get("{nextLink}")
@ExpectedResponses({200})
@UnexpectedResponseExceptionType(ManagementException.class)
- Mono> listNext(
+ Mono> listBySubscriptionNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listByResourceGroupNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listByAzureApiManagementServiceNext(
@PathParam(value = "nextLink", encoded = true) String nextLink,
@HostParam("$host") String endpoint,
@HeaderParam("Accept") String accept,
@@ -97,23 +178,171 @@ Mono> listNext(
}
/**
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs
+ * Gets a list of API collections within a subscription
+ *
+ * Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs.
+ *
+ * @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 a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs
+ * along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync() {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String apiVersion = "2023-11-15";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .list(this.client.getEndpoint(), this.client.getSubscriptionId(), apiVersion, accept, context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets a list of API collections within a subscription
+ *
+ * Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs.
+ *
+ * @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 a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs
+ * along with {@link PagedResponse} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listSinglePageAsync(Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ final String apiVersion = "2023-11-15";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .list(this.client.getEndpoint(), this.client.getSubscriptionId(), apiVersion, accept, context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Gets a list of API collections within a subscription
*
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs. If an Azure API
- * Management API is onboarded to Defender for APIs, the system will monitor the operations within the Azure API
- * Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs.
+ *
+ * @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 a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs
+ * as paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync() {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(), nextLink -> listBySubscriptionNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * Gets a list of API collections within a subscription
+ *
+ * Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs.
+ *
+ * @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 a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs
+ * as paginated response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(Context context) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(context), nextLink -> listBySubscriptionNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Gets a list of API collections within a subscription
+ *
+ * Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs.
+ *
+ * @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 a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs
+ * as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list() {
+ return new PagedIterable<>(listAsync());
+ }
+
+ /**
+ * Gets a list of API collections within a subscription
+ *
+ * Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs.
+ *
+ * @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 a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs
+ * as paginated response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list(Context context) {
+ return new PagedIterable<>(listAsync(context));
+ }
+
+ /**
+ * Gets a list of API collections within a resource group
+ *
+ * Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for
+ * APIs.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serviceName The name of the API Management service.
* @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 a list of Azure API Management APIs that have been onboarded to Defender for APIs along with {@link
- * PagedResponse} on successful completion of {@link Mono}.
+ * @return a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs
+ * along with {@link PagedResponse} on successful completion of {@link Mono}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> listSinglePageAsync(
- String resourceGroupName, String serviceName) {
+ private Mono> listByResourceGroupSinglePageAsync(String resourceGroupName) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
@@ -130,24 +359,20 @@ private Mono> listSinglePageAsync(
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- if (serviceName == null) {
- return Mono.error(new IllegalArgumentException("Parameter serviceName is required and cannot be null."));
- }
- final String apiVersion = "2022-11-20-preview";
+ final String apiVersion = "2023-11-15";
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
- .list(
+ .listByResourceGroup(
this.client.getEndpoint(),
this.client.getSubscriptionId(),
resourceGroupName,
- serviceName,
apiVersion,
accept,
context))
- .>map(
+ .>map(
res ->
new PagedResponseBase<>(
res.getRequest(),
@@ -160,24 +385,22 @@ private Mono> listSinglePageAsync(
}
/**
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs
+ * Gets a list of API collections within a resource group
*
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs. If an Azure API
- * Management API is onboarded to Defender for APIs, the system will monitor the operations within the Azure API
- * Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for
+ * APIs.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serviceName The name of the API Management service.
* @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 a list of Azure API Management APIs that have been onboarded to Defender for APIs along with {@link
- * PagedResponse} on successful completion of {@link Mono}.
+ * @return a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs
+ * along with {@link PagedResponse} on successful completion of {@link Mono}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> listSinglePageAsync(
- String resourceGroupName, String serviceName, Context context) {
+ private Mono> listByResourceGroupSinglePageAsync(
+ String resourceGroupName, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
@@ -194,18 +417,14 @@ private Mono> listSinglePageAsync(
return Mono
.error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
}
- if (serviceName == null) {
- return Mono.error(new IllegalArgumentException("Parameter serviceName is required and cannot be null."));
- }
- final String apiVersion = "2022-11-20-preview";
+ final String apiVersion = "2023-11-15";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
- .list(
+ .listByResourceGroup(
this.client.getEndpoint(),
this.client.getSubscriptionId(),
resourceGroupName,
- serviceName,
apiVersion,
accept,
context)
@@ -221,112 +440,101 @@ private Mono> listSinglePageAsync(
}
/**
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs
+ * Gets a list of API collections within a resource group
*
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs. If an Azure API
- * Management API is onboarded to Defender for APIs, the system will monitor the operations within the Azure API
- * Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for
+ * APIs.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serviceName The name of the API Management service.
* @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 a list of Azure API Management APIs that have been onboarded to Defender for APIs as paginated response
- * with {@link PagedFlux}.
+ * @return a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs
+ * as paginated response with {@link PagedFlux}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- private PagedFlux listAsync(String resourceGroupName, String serviceName) {
+ private PagedFlux listByResourceGroupAsync(String resourceGroupName) {
return new PagedFlux<>(
- () -> listSinglePageAsync(resourceGroupName, serviceName), nextLink -> listNextSinglePageAsync(nextLink));
+ () -> listByResourceGroupSinglePageAsync(resourceGroupName),
+ nextLink -> listByResourceGroupNextSinglePageAsync(nextLink));
}
/**
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs
+ * Gets a list of API collections within a resource group
*
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs. If an Azure API
- * Management API is onboarded to Defender for APIs, the system will monitor the operations within the Azure API
- * Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for
+ * APIs.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serviceName The name of the API Management service.
* @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 a list of Azure API Management APIs that have been onboarded to Defender for APIs as paginated response
- * with {@link PagedFlux}.
+ * @return a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs
+ * as paginated response with {@link PagedFlux}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- private PagedFlux listAsync(
- String resourceGroupName, String serviceName, Context context) {
+ private PagedFlux listByResourceGroupAsync(String resourceGroupName, Context context) {
return new PagedFlux<>(
- () -> listSinglePageAsync(resourceGroupName, serviceName, context),
- nextLink -> listNextSinglePageAsync(nextLink, context));
+ () -> listByResourceGroupSinglePageAsync(resourceGroupName, context),
+ nextLink -> listByResourceGroupNextSinglePageAsync(nextLink, context));
}
/**
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs
+ * Gets a list of API collections within a resource group
*
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs. If an Azure API
- * Management API is onboarded to Defender for APIs, the system will monitor the operations within the Azure API
- * Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for
+ * APIs.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serviceName The name of the API Management service.
* @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 a list of Azure API Management APIs that have been onboarded to Defender for APIs as paginated response
- * with {@link PagedIterable}.
+ * @return a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs
+ * as paginated response with {@link PagedIterable}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- public PagedIterable list(String resourceGroupName, String serviceName) {
- return new PagedIterable<>(listAsync(resourceGroupName, serviceName));
+ public PagedIterable listByResourceGroup(String resourceGroupName) {
+ return new PagedIterable<>(listByResourceGroupAsync(resourceGroupName));
}
/**
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs
+ * Gets a list of API collections within a resource group
*
- * Gets a list of Azure API Management APIs that have been onboarded to Defender for APIs. If an Azure API
- * Management API is onboarded to Defender for APIs, the system will monitor the operations within the Azure API
- * Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for
+ * APIs.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
- * @param serviceName The name of the API Management service.
* @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 a list of Azure API Management APIs that have been onboarded to Defender for APIs as paginated response
- * with {@link PagedIterable}.
+ * @return a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs
+ * as paginated response with {@link PagedIterable}.
*/
@ServiceMethod(returns = ReturnType.COLLECTION)
- public PagedIterable list(
- String resourceGroupName, String serviceName, Context context) {
- return new PagedIterable<>(listAsync(resourceGroupName, serviceName, context));
+ public PagedIterable listByResourceGroup(String resourceGroupName, Context context) {
+ return new PagedIterable<>(listByResourceGroupAsync(resourceGroupName, context));
}
/**
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs
+ * Gets a list of onboarded Azure API Management APIs
*
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs. If an Azure API Management API
- * is onboarded to Defender for APIs, the system will monitor the operations within the Azure API Management API for
- * intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure
+ * API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serviceName The name of the API Management service.
- * @param apiCollectionId A string representing the apiCollections resource within the Microsoft.Security provider
- * namespace. This string matches the Azure API Management API name.
* @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 an Azure API Management API if it has been onboarded to Defender for APIs along with {@link Response} on
- * successful completion of {@link Mono}.
+ * @return a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs along with
+ * {@link PagedResponse} on successful completion of {@link Mono}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> getWithResponseAsync(
- String resourceGroupName, String serviceName, String apiCollectionId) {
+ private Mono> listByAzureApiManagementServiceSinglePageAsync(
+ String resourceGroupName, String serviceName) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
@@ -346,49 +554,51 @@ private Mono> getWithResponseAsync(
if (serviceName == null) {
return Mono.error(new IllegalArgumentException("Parameter serviceName is required and cannot be null."));
}
- if (apiCollectionId == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter apiCollectionId is required and cannot be null."));
- }
- final String apiVersion = "2022-11-20-preview";
+ final String apiVersion = "2023-11-15";
final String accept = "application/json";
return FluxUtil
.withContext(
context ->
service
- .get(
+ .listByAzureApiManagementService(
this.client.getEndpoint(),
this.client.getSubscriptionId(),
resourceGroupName,
serviceName,
- apiCollectionId,
apiVersion,
accept,
context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
.contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
}
/**
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs
+ * Gets a list of onboarded Azure API Management APIs
*
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs. If an Azure API Management API
- * is onboarded to Defender for APIs, the system will monitor the operations within the Azure API Management API for
- * intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure
+ * API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serviceName The name of the API Management service.
- * @param apiCollectionId A string representing the apiCollections resource within the Microsoft.Security provider
- * namespace. This string matches the Azure API Management API name.
* @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 an Azure API Management API if it has been onboarded to Defender for APIs along with {@link Response} on
- * successful completion of {@link Mono}.
+ * @return a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs along with
+ * {@link PagedResponse} on successful completion of {@link Mono}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> getWithResponseAsync(
- String resourceGroupName, String serviceName, String apiCollectionId, Context context) {
+ private Mono> listByAzureApiManagementServiceSinglePageAsync(
+ String resourceGroupName, String serviceName, Context context) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
@@ -408,123 +618,989 @@ private Mono> getWithResponseAsync(
if (serviceName == null) {
return Mono.error(new IllegalArgumentException("Parameter serviceName is required and cannot be null."));
}
- if (apiCollectionId == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter apiCollectionId is required and cannot be null."));
- }
- final String apiVersion = "2022-11-20-preview";
+ final String apiVersion = "2023-11-15";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
- .get(
+ .listByAzureApiManagementService(
this.client.getEndpoint(),
this.client.getSubscriptionId(),
resourceGroupName,
serviceName,
- apiCollectionId,
apiVersion,
accept,
- context);
+ context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
}
/**
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs
+ * Gets a list of onboarded Azure API Management APIs
*
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs. If an Azure API Management API
- * is onboarded to Defender for APIs, the system will monitor the operations within the Azure API Management API for
- * intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure
+ * API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serviceName The name of the API Management service.
- * @param apiCollectionId A string representing the apiCollections resource within the Microsoft.Security provider
- * namespace. This string matches the Azure API Management API name.
* @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 an Azure API Management API if it has been onboarded to Defender for APIs on successful completion of
- * {@link Mono}.
+ * @return a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs as paginated
+ * response with {@link PagedFlux}.
*/
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono getAsync(
- String resourceGroupName, String serviceName, String apiCollectionId) {
- return getWithResponseAsync(resourceGroupName, serviceName, apiCollectionId)
- .flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listByAzureApiManagementServiceAsync(
+ String resourceGroupName, String serviceName) {
+ return new PagedFlux<>(
+ () -> listByAzureApiManagementServiceSinglePageAsync(resourceGroupName, serviceName),
+ nextLink -> listByAzureApiManagementServiceNextSinglePageAsync(nextLink));
}
/**
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs
+ * Gets a list of onboarded Azure API Management APIs
*
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs. If an Azure API Management API
- * is onboarded to Defender for APIs, the system will monitor the operations within the Azure API Management API for
- * intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure
+ * API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serviceName The name of the API Management service.
- * @param apiCollectionId A string representing the apiCollections resource within the Microsoft.Security provider
- * namespace. This string matches the Azure API Management API name.
* @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 an Azure API Management API if it has been onboarded to Defender for APIs along with {@link Response}.
+ * @return a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs as paginated
+ * response with {@link PagedFlux}.
*/
- @ServiceMethod(returns = ReturnType.SINGLE)
- public Response getWithResponse(
- String resourceGroupName, String serviceName, String apiCollectionId, Context context) {
- return getWithResponseAsync(resourceGroupName, serviceName, apiCollectionId, context).block();
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listByAzureApiManagementServiceAsync(
+ String resourceGroupName, String serviceName, Context context) {
+ return new PagedFlux<>(
+ () -> listByAzureApiManagementServiceSinglePageAsync(resourceGroupName, serviceName, context),
+ nextLink -> listByAzureApiManagementServiceNextSinglePageAsync(nextLink, context));
}
/**
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs
+ * Gets a list of onboarded Azure API Management APIs
*
- * Gets an Azure API Management API if it has been onboarded to Defender for APIs. If an Azure API Management API
- * is onboarded to Defender for APIs, the system will monitor the operations within the Azure API Management API for
- * intrusive behaviors and provide alerts for attacks that have been detected.
+ *
Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure
+ * API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
*
* @param resourceGroupName The name of the resource group. The name is case insensitive.
* @param serviceName The name of the API Management service.
- * @param apiCollectionId A string representing the apiCollections resource within the Microsoft.Security provider
- * namespace. This string matches the Azure API Management API name.
* @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 an Azure API Management API if it has been onboarded to Defender for APIs.
+ * @return a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs as paginated
+ * response with {@link PagedIterable}.
*/
- @ServiceMethod(returns = ReturnType.SINGLE)
- public ApiCollectionResponseInner get(String resourceGroupName, String serviceName, String apiCollectionId) {
- return getWithResponse(resourceGroupName, serviceName, apiCollectionId, Context.NONE).getValue();
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable listByAzureApiManagementService(
+ String resourceGroupName, String serviceName) {
+ return new PagedIterable<>(listByAzureApiManagementServiceAsync(resourceGroupName, serviceName));
}
/**
- * Get the next page of items.
+ * Gets a list of onboarded Azure API Management APIs
*
- * @param nextLink The URL to get the next list of items
- * The nextLink parameter.
+ *
Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure
+ * API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @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 a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs as paginated
+ * response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable listByAzureApiManagementService(
+ String resourceGroupName, String serviceName, Context context) {
+ return new PagedIterable<>(listByAzureApiManagementServiceAsync(resourceGroupName, serviceName, context));
+ }
+
+ /**
+ * Gets an onboarded Azure API Management API
+ *
+ * Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API
+ * Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
* @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 page of a list of API collections as represented by Defender for APIs along with {@link PagedResponse} on
- * successful completion of {@link Mono}.
+ * @return an Azure API Management API if it has been onboarded to Microsoft Defender for APIs along with {@link
+ * Response} on successful completion of {@link Mono}.
*/
@ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> listNextSinglePageAsync(String nextLink) {
- if (nextLink == null) {
- return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
- }
+ private Mono> getByAzureApiManagementServiceWithResponseAsync(
+ String resourceGroupName, String serviceName, String apiId) {
if (this.client.getEndpoint() == null) {
return Mono
.error(
new IllegalArgumentException(
"Parameter this.client.getEndpoint() is required and cannot be null."));
}
- final String accept = "application/json";
- return FluxUtil
- .withContext(context -> service.listNext(nextLink, this.client.getEndpoint(), accept, context))
- .>map(
- res ->
- new PagedResponseBase<>(
- res.getRequest(),
- res.getStatusCode(),
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (serviceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter serviceName is required and cannot be null."));
+ }
+ if (apiId == null) {
+ return Mono.error(new IllegalArgumentException("Parameter apiId is required and cannot be null."));
+ }
+ final String apiVersion = "2023-11-15";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .getByAzureApiManagementService(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ serviceName,
+ apiId,
+ apiVersion,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets an onboarded Azure API Management API
+ *
+ * Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API
+ * Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 an Azure API Management API if it has been onboarded to Microsoft Defender for APIs along with {@link
+ * Response} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getByAzureApiManagementServiceWithResponseAsync(
+ String resourceGroupName, String serviceName, String apiId, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (serviceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter serviceName is required and cannot be null."));
+ }
+ if (apiId == null) {
+ return Mono.error(new IllegalArgumentException("Parameter apiId is required and cannot be null."));
+ }
+ final String apiVersion = "2023-11-15";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .getByAzureApiManagementService(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ serviceName,
+ apiId,
+ apiVersion,
+ accept,
+ context);
+ }
+
+ /**
+ * Gets an onboarded Azure API Management API
+ *
+ * Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API
+ * Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 an Azure API Management API if it has been onboarded to Microsoft Defender for APIs on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getByAzureApiManagementServiceAsync(
+ String resourceGroupName, String serviceName, String apiId) {
+ return getByAzureApiManagementServiceWithResponseAsync(resourceGroupName, serviceName, apiId)
+ .flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Gets an onboarded Azure API Management API
+ *
+ * Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API
+ * Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 an Azure API Management API if it has been onboarded to Microsoft Defender for APIs along with {@link
+ * Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response getByAzureApiManagementServiceWithResponse(
+ String resourceGroupName, String serviceName, String apiId, Context context) {
+ return getByAzureApiManagementServiceWithResponseAsync(resourceGroupName, serviceName, apiId, context).block();
+ }
+
+ /**
+ * Gets an onboarded Azure API Management API
+ *
+ * Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API
+ * Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the
+ * Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 an Azure API Management API if it has been onboarded to Microsoft Defender for APIs.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public ApiCollectionInner getByAzureApiManagementService(
+ String resourceGroupName, String serviceName, String apiId) {
+ return getByAzureApiManagementServiceWithResponse(resourceGroupName, serviceName, apiId, Context.NONE)
+ .getValue();
+ }
+
+ /**
+ * Onboard an Azure API Management API to Microsoft Defender for APIs
+ *
+ *
Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the
+ * operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been
+ * detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 an API collection as represented by Microsoft Defender for APIs along with {@link Response} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> onboardAzureApiManagementApiWithResponseAsync(
+ String resourceGroupName, String serviceName, String apiId) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (serviceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter serviceName is required and cannot be null."));
+ }
+ if (apiId == null) {
+ return Mono.error(new IllegalArgumentException("Parameter apiId is required and cannot be null."));
+ }
+ final String apiVersion = "2023-11-15";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .onboardAzureApiManagementApi(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ serviceName,
+ apiId,
+ apiVersion,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Onboard an Azure API Management API to Microsoft Defender for APIs
+ *
+ * Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the
+ * operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been
+ * detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 an API collection as represented by Microsoft Defender for APIs along with {@link Response} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono>> onboardAzureApiManagementApiWithResponseAsync(
+ String resourceGroupName, String serviceName, String apiId, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (this.client.getSubscriptionId() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getSubscriptionId() is required and cannot be null."));
+ }
+ if (resourceGroupName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null."));
+ }
+ if (serviceName == null) {
+ return Mono.error(new IllegalArgumentException("Parameter serviceName is required and cannot be null."));
+ }
+ if (apiId == null) {
+ return Mono.error(new IllegalArgumentException("Parameter apiId is required and cannot be null."));
+ }
+ final String apiVersion = "2023-11-15";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .onboardAzureApiManagementApi(
+ this.client.getEndpoint(),
+ this.client.getSubscriptionId(),
+ resourceGroupName,
+ serviceName,
+ apiId,
+ apiVersion,
+ accept,
+ context);
+ }
+
+ /**
+ * Onboard an Azure API Management API to Microsoft Defender for APIs
+ *
+ * Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the
+ * operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been
+ * detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 an API collection as represented by Microsoft Defender for APIs.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux, ApiCollectionInner> beginOnboardAzureApiManagementApiAsync(
+ String resourceGroupName, String serviceName, String apiId) {
+ Mono>> mono =
+ onboardAzureApiManagementApiWithResponseAsync(resourceGroupName, serviceName, apiId);
+ return this
+ .client
+ .getLroResult(
+ mono,
+ this.client.getHttpPipeline(),
+ ApiCollectionInner.class,
+ ApiCollectionInner.class,
+ this.client.getContext());
+ }
+
+ /**
+ * Onboard an Azure API Management API to Microsoft Defender for APIs
+ *
+ * Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the
+ * operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been
+ * detected.
+ *
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param serviceName The name of the API Management service.
+ * @param apiId API revision identifier. Must be unique in the API Management service instance. Non-current revision
+ * has ;rev=n as a suffix where n is the revision number.
+ * @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 PollerFlux} for polling of an API collection as represented by Microsoft Defender for APIs.
+ */
+ @ServiceMethod(returns = ReturnType.LONG_RUNNING_OPERATION)
+ private PollerFlux