diff --git a/sdk/security/azure-resourcemanager-security/CHANGELOG.md b/sdk/security/azure-resourcemanager-security/CHANGELOG.md
index bd1644944ed7..a8f0ca34fd30 100644
--- a/sdk/security/azure-resourcemanager-security/CHANGELOG.md
+++ b/sdk/security/azure-resourcemanager-security/CHANGELOG.md
@@ -1,6 +1,8 @@
# Release History
-## 1.0.0-beta.6 (Unreleased)
+## 1.0.0-beta.1 (2023-06-19)
+
+- Azure Resource Manager Security client library for Java. This package contains Microsoft Azure SDK for Security Management SDK. API spec for Microsoft.Security (Azure Security Center) resource provider. Package tag package-composite-v3. For documentation on how to use this package, please see [Azure Management Libraries for Java](https://aka.ms/azsdk/java/mgmt).
### Features Added
diff --git a/sdk/security/azure-resourcemanager-security/README.md b/sdk/security/azure-resourcemanager-security/README.md
index 960b33cd33f3..014cf669049a 100644
--- a/sdk/security/azure-resourcemanager-security/README.md
+++ b/sdk/security/azure-resourcemanager-security/README.md
@@ -32,7 +32,7 @@ Various documentation is available to help you get started
com.azure.resourcemanagerazure-resourcemanager-security
- 1.0.0-beta.5
+ 1.0.0-beta.6
```
[//]: # ({x-version-update-end})
diff --git a/sdk/security/azure-resourcemanager-security/SAMPLE.md b/sdk/security/azure-resourcemanager-security/SAMPLE.md
index 3972495626d9..4c1ebdbc18b8 100644
--- a/sdk/security/azure-resourcemanager-security/SAMPLE.md
+++ b/sdk/security/azure-resourcemanager-security/SAMPLE.md
@@ -172,12 +172,9 @@
- [List](#governancerules_list)
- [OperationResults](#governancerules_operationresults)
-## HealthReportOperation
-
-- [Get](#healthreportoperation_get)
-
## HealthReports
+- [Get](#healthreports_get)
- [List](#healthreports_list)
## InformationProtectionPolicies
@@ -262,6 +259,11 @@
- [Get](#regulatorycompliancestandards_get)
- [List](#regulatorycompliancestandards_list)
+## ResourceProvider
+
+- [GetSensitivitySettings](#resourceprovider_getsensitivitysettings)
+- [UpdateSensitivitySettings](#resourceprovider_updatesensitivitysettings)
+
## SecureScoreControlDefinitions
- [List](#securescorecontroldefinitions_list)
@@ -320,6 +322,10 @@
- [List](#securitysolutionsreferencedata_list)
- [ListByHomeRegion](#securitysolutionsreferencedata_listbyhomeregion)
+## SensitivitySettings
+
+- [List](#sensitivitysettings_list)
+
## ServerVulnerabilityAssessment
- [CreateOrUpdate](#servervulnerabilityassessment_createorupdate)
@@ -327,6 +333,13 @@
- [Get](#servervulnerabilityassessment_get)
- [ListByExtendedResource](#servervulnerabilityassessment_listbyextendedresource)
+## ServerVulnerabilityAssessmentsSettings
+
+- [CreateOrUpdate](#servervulnerabilityassessmentssettings_createorupdate)
+- [Delete](#servervulnerabilityassessmentssettings_delete)
+- [Get](#servervulnerabilityassessmentssettings_get)
+- [List](#servervulnerabilityassessmentssettings_list)
+
## Settings
- [Get](#settings_get)
@@ -3488,13 +3501,13 @@ public final class GovernanceRulesOperationResultsSamples {
}
```
-### HealthReportOperation_Get
+### HealthReports_Get
```java
-/** Samples for HealthReportOperation Get. */
-public final class HealthReportOperationGetSamples {
+/** Samples for HealthReports Get. */
+public final class HealthReportsGetSamples {
/*
- * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/HealthReports/GetHealthReport_example.json
+ * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/GetHealthReports_example.json
*/
/**
* Sample code: Get health report of resource.
@@ -3503,7 +3516,7 @@ public final class HealthReportOperationGetSamples {
*/
public static void getHealthReportOfResource(com.azure.resourcemanager.security.SecurityManager manager) {
manager
- .healthReportOperations()
+ .healthReports()
.getWithResponse(
"subscriptions/a1efb6ca-fbc5-4782-9aaa-5c7daded1ce2/resourcegroups/E2E-IBB0WX/providers/Microsoft.Security/securityconnectors/AwsConnectorAllOfferings",
"909c629a-bf39-4521-8e4f-10b443a0bc02",
@@ -3518,7 +3531,7 @@ public final class HealthReportOperationGetSamples {
/** Samples for HealthReports List. */
public final class HealthReportsListSamples {
/*
- * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/HealthReports/ListHealthReports_example.json
+ * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/ListHealthReports_example.json
*/
/**
* Sample code: List health reports.
@@ -4784,6 +4797,60 @@ public final class RegulatoryComplianceStandardsListSamples {
}
```
+### ResourceProvider_GetSensitivitySettings
+
+```java
+/** Samples for ResourceProvider GetSensitivitySettings. */
+public final class ResourceProviderGetSensitivitySettingsSamples {
+ /*
+ * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettings_example.json
+ */
+ /**
+ * Sample code: Get sensitivity settings.
+ *
+ * @param manager Entry point to SecurityManager.
+ */
+ public static void getSensitivitySettings(com.azure.resourcemanager.security.SecurityManager manager) {
+ manager.resourceProviders().getSensitivitySettingsWithResponse(com.azure.core.util.Context.NONE);
+ }
+}
+```
+
+### ResourceProvider_UpdateSensitivitySettings
+
+```java
+import com.azure.resourcemanager.security.models.UpdateSensitivitySettingsRequest;
+import java.util.Arrays;
+import java.util.UUID;
+
+/** Samples for ResourceProvider UpdateSensitivitySettings. */
+public final class ResourceProviderUpdateSensitivitySettingsSamples {
+ /*
+ * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/PutSensitivitySettings_example.json
+ */
+ /**
+ * Sample code: Update sensitivity settings.
+ *
+ * @param manager Entry point to SecurityManager.
+ */
+ public static void updateSensitivitySettings(com.azure.resourcemanager.security.SecurityManager manager) {
+ manager
+ .resourceProviders()
+ .updateSensitivitySettingsWithResponse(
+ new UpdateSensitivitySettingsRequest()
+ .withSensitiveInfoTypesIds(
+ Arrays
+ .asList(
+ UUID.fromString("f2f8a7a1-28c0-404b-9ab4-30a0a7af18cb"),
+ UUID.fromString("b452f22b-f87d-4f48-8490-ecf0873325b5"),
+ UUID.fromString("d59ee8b6-2618-404b-a5e7-aa377cd67543")))
+ .withSensitivityThresholdLabelOrder(2.0F)
+ .withSensitivityThresholdLabelId(UUID.fromString("f2f8a7a1-28c0-404b-9ab4-30a0a7af18cb")),
+ com.azure.core.util.Context.NONE);
+ }
+}
+```
+
### SecureScoreControlDefinitions_List
```java
@@ -5497,6 +5564,25 @@ public final class SecuritySolutionsReferenceDataListByHomeRegionSamples {
}
```
+### SensitivitySettings_List
+
+```java
+/** Samples for SensitivitySettings List. */
+public final class SensitivitySettingsListSamples {
+ /*
+ * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettingsList_example.json
+ */
+ /**
+ * Sample code: Get sensitivity settings list.
+ *
+ * @param manager Entry point to SecurityManager.
+ */
+ public static void getSensitivitySettingsList(com.azure.resourcemanager.security.SecurityManager manager) {
+ manager.sensitivitySettings().listWithResponse(com.azure.core.util.Context.NONE);
+ }
+}
+```
+
### ServerVulnerabilityAssessment_CreateOrUpdate
```java
@@ -5595,6 +5681,107 @@ public final class ServerVulnerabilityAssessmentListByExtendedResourceSamples {
}
```
+### ServerVulnerabilityAssessmentsSettings_CreateOrUpdate
+
+```java
+import com.azure.resourcemanager.security.models.AzureServersSetting;
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider;
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsSettingKindName;
+
+/** Samples for ServerVulnerabilityAssessmentsSettings CreateOrUpdate. */
+public final class ServerVulnerabilityAssessmentsSettingsCreateOrUpdateSamples {
+ /*
+ * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/PutServerVulnerabilityAssessmentsSetting_example.json
+ */
+ /**
+ * Sample code: Set a server vulnerability assessments setting of the kind settingKind on the subscription.
+ *
+ * @param manager Entry point to SecurityManager.
+ */
+ public static void setAServerVulnerabilityAssessmentsSettingOfTheKindSettingKindOnTheSubscription(
+ com.azure.resourcemanager.security.SecurityManager manager) {
+ manager
+ .serverVulnerabilityAssessmentsSettings()
+ .createOrUpdateWithResponse(
+ ServerVulnerabilityAssessmentsSettingKindName.AZURE_SERVERS_SETTING,
+ new AzureServersSetting()
+ .withSelectedProvider(ServerVulnerabilityAssessmentsAzureSettingSelectedProvider.MDE_TVM),
+ com.azure.core.util.Context.NONE);
+ }
+}
+```
+
+### ServerVulnerabilityAssessmentsSettings_Delete
+
+```java
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsSettingKindName;
+
+/** Samples for ServerVulnerabilityAssessmentsSettings Delete. */
+public final class ServerVulnerabilityAssessmentsSettingsDeleteSamples {
+ /*
+ * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/DeleteServerVulnerabilityAssessmentsSetting_example.json
+ */
+ /**
+ * Sample code: Delete the server vulnerability assessments setting of the kind settingKind from the subscription.
+ *
+ * @param manager Entry point to SecurityManager.
+ */
+ public static void deleteTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindFromTheSubscription(
+ com.azure.resourcemanager.security.SecurityManager manager) {
+ manager
+ .serverVulnerabilityAssessmentsSettings()
+ .deleteWithResponse(
+ ServerVulnerabilityAssessmentsSettingKindName.AZURE_SERVERS_SETTING, com.azure.core.util.Context.NONE);
+ }
+}
+```
+
+### ServerVulnerabilityAssessmentsSettings_Get
+
+```java
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsSettingKindName;
+
+/** Samples for ServerVulnerabilityAssessmentsSettings Get. */
+public final class ServerVulnerabilityAssessmentsSettingsGetSamples {
+ /*
+ * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/GetServerVulnerabilityAssessmentsSetting_example.json
+ */
+ /**
+ * Sample code: Get the server vulnerability assessments setting of the kind settingKind that is set on the
+ * subscription.
+ *
+ * @param manager Entry point to SecurityManager.
+ */
+ public static void getTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindThatIsSetOnTheSubscription(
+ com.azure.resourcemanager.security.SecurityManager manager) {
+ manager
+ .serverVulnerabilityAssessmentsSettings()
+ .getWithResponse(
+ ServerVulnerabilityAssessmentsSettingKindName.AZURE_SERVERS_SETTING, com.azure.core.util.Context.NONE);
+ }
+}
+```
+
+### ServerVulnerabilityAssessmentsSettings_List
+
+```java
+/** Samples for ServerVulnerabilityAssessmentsSettings List. */
+public final class ServerVulnerabilityAssessmentsSettingsListSamples {
+ /*
+ * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/ListServerVulnerabilityAssessmentsSettings_example.json
+ */
+ /**
+ * Sample code: List the server vulnerability assessments settings set on the subscription.
+ *
+ * @param manager Entry point to SecurityManager.
+ */
+ public static void listTheServerVulnerabilityAssessmentsSettingsSetOnTheSubscription(
+ com.azure.resourcemanager.security.SecurityManager manager) {
+ manager.serverVulnerabilityAssessmentsSettings().list(com.azure.core.util.Context.NONE);
+ }
+}
+```
+
### Settings_Get
```java
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/SecurityManager.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/SecurityManager.java
index 80fd7da717a7..81aa0337bd24 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/SecurityManager.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/SecurityManager.java
@@ -49,7 +49,6 @@
import com.azure.resourcemanager.security.implementation.ExternalSecuritySolutionsImpl;
import com.azure.resourcemanager.security.implementation.GovernanceAssignmentsImpl;
import com.azure.resourcemanager.security.implementation.GovernanceRulesImpl;
-import com.azure.resourcemanager.security.implementation.HealthReportOperationsImpl;
import com.azure.resourcemanager.security.implementation.HealthReportsImpl;
import com.azure.resourcemanager.security.implementation.InformationProtectionPoliciesImpl;
import com.azure.resourcemanager.security.implementation.IngestionSettingsImpl;
@@ -65,6 +64,7 @@
import com.azure.resourcemanager.security.implementation.RegulatoryComplianceAssessmentsImpl;
import com.azure.resourcemanager.security.implementation.RegulatoryComplianceControlsImpl;
import com.azure.resourcemanager.security.implementation.RegulatoryComplianceStandardsImpl;
+import com.azure.resourcemanager.security.implementation.ResourceProvidersImpl;
import com.azure.resourcemanager.security.implementation.SecureScoreControlDefinitionsImpl;
import com.azure.resourcemanager.security.implementation.SecureScoreControlsImpl;
import com.azure.resourcemanager.security.implementation.SecureScoresImpl;
@@ -76,7 +76,9 @@
import com.azure.resourcemanager.security.implementation.SecurityOperatorsImpl;
import com.azure.resourcemanager.security.implementation.SecuritySolutionsImpl;
import com.azure.resourcemanager.security.implementation.SecuritySolutionsReferenceDatasImpl;
+import com.azure.resourcemanager.security.implementation.SensitivitySettingsImpl;
import com.azure.resourcemanager.security.implementation.ServerVulnerabilityAssessmentsImpl;
+import com.azure.resourcemanager.security.implementation.ServerVulnerabilityAssessmentsSettingsImpl;
import com.azure.resourcemanager.security.implementation.SettingsImpl;
import com.azure.resourcemanager.security.implementation.SoftwareInventoriesImpl;
import com.azure.resourcemanager.security.implementation.SqlVulnerabilityAssessmentBaselineRulesImpl;
@@ -111,7 +113,6 @@
import com.azure.resourcemanager.security.models.ExternalSecuritySolutions;
import com.azure.resourcemanager.security.models.GovernanceAssignments;
import com.azure.resourcemanager.security.models.GovernanceRules;
-import com.azure.resourcemanager.security.models.HealthReportOperations;
import com.azure.resourcemanager.security.models.HealthReports;
import com.azure.resourcemanager.security.models.InformationProtectionPolicies;
import com.azure.resourcemanager.security.models.IngestionSettings;
@@ -127,6 +128,7 @@
import com.azure.resourcemanager.security.models.RegulatoryComplianceAssessments;
import com.azure.resourcemanager.security.models.RegulatoryComplianceControls;
import com.azure.resourcemanager.security.models.RegulatoryComplianceStandards;
+import com.azure.resourcemanager.security.models.ResourceProviders;
import com.azure.resourcemanager.security.models.SecureScoreControlDefinitions;
import com.azure.resourcemanager.security.models.SecureScoreControls;
import com.azure.resourcemanager.security.models.SecureScores;
@@ -137,7 +139,9 @@
import com.azure.resourcemanager.security.models.SecurityOperators;
import com.azure.resourcemanager.security.models.SecuritySolutions;
import com.azure.resourcemanager.security.models.SecuritySolutionsReferenceDatas;
+import com.azure.resourcemanager.security.models.SensitivitySettings;
import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessments;
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsSettings;
import com.azure.resourcemanager.security.models.Settings;
import com.azure.resourcemanager.security.models.SoftwareInventories;
import com.azure.resourcemanager.security.models.SqlVulnerabilityAssessmentBaselineRules;
@@ -238,6 +242,10 @@ public final class SecurityManager {
private Connectors connectors;
+ private ResourceProviders resourceProviders;
+
+ private SensitivitySettings sensitivitySettings;
+
private Alerts alerts;
private Settings settings;
@@ -264,10 +272,6 @@ public final class SecurityManager {
private ApiCollectionOffboardings apiCollectionOffboardings;
- private HealthReports healthReports;
-
- private HealthReportOperations healthReportOperations;
-
private SqlVulnerabilityAssessmentScans sqlVulnerabilityAssessmentScans;
private SqlVulnerabilityAssessmentScanResults sqlVulnerabilityAssessmentScanResults;
@@ -278,6 +282,10 @@ public final class SecurityManager {
private SecurityOperators securityOperators;
+ private ServerVulnerabilityAssessmentsSettings serverVulnerabilityAssessmentsSettings;
+
+ private HealthReports healthReports;
+
private final SecurityCenter clientObject;
private SecurityManager(HttpPipeline httpPipeline, AzureProfile profile, Duration defaultPollInterval) {
@@ -443,7 +451,7 @@ public SecurityManager authenticate(TokenCredential credential, AzureProfile pro
.append("-")
.append("com.azure.resourcemanager.security")
.append("/")
- .append("1.0.0-beta.5");
+ .append("1.0.0-beta.1");
if (!Configuration.getGlobalConfiguration().get("AZURE_TELEMETRY_DISABLED", false)) {
userAgentBuilder
.append(" (")
@@ -1014,6 +1022,30 @@ public Connectors connectors() {
return connectors;
}
+ /**
+ * Gets the resource collection API of ResourceProviders.
+ *
+ * @return Resource collection API of ResourceProviders.
+ */
+ public ResourceProviders resourceProviders() {
+ if (this.resourceProviders == null) {
+ this.resourceProviders = new ResourceProvidersImpl(clientObject.getResourceProviders(), this);
+ }
+ return resourceProviders;
+ }
+
+ /**
+ * Gets the resource collection API of SensitivitySettings.
+ *
+ * @return Resource collection API of SensitivitySettings.
+ */
+ public SensitivitySettings sensitivitySettings() {
+ if (this.sensitivitySettings == null) {
+ this.sensitivitySettings = new SensitivitySettingsImpl(clientObject.getSensitivitySettings(), this);
+ }
+ return sensitivitySettings;
+ }
+
/**
* Gets the resource collection API of Alerts.
*
@@ -1175,31 +1207,6 @@ public ApiCollectionOffboardings apiCollectionOffboardings() {
return apiCollectionOffboardings;
}
- /**
- * Gets the resource collection API of HealthReports.
- *
- * @return Resource collection API of HealthReports.
- */
- public HealthReports healthReports() {
- if (this.healthReports == null) {
- this.healthReports = new HealthReportsImpl(clientObject.getHealthReports(), this);
- }
- return healthReports;
- }
-
- /**
- * Gets the resource collection API of HealthReportOperations.
- *
- * @return Resource collection API of HealthReportOperations.
- */
- public HealthReportOperations healthReportOperations() {
- if (this.healthReportOperations == null) {
- this.healthReportOperations =
- new HealthReportOperationsImpl(clientObject.getHealthReportOperations(), this);
- }
- return healthReportOperations;
- }
-
/**
* Gets the resource collection API of SqlVulnerabilityAssessmentScans.
*
@@ -1265,6 +1272,32 @@ public SecurityOperators securityOperators() {
return securityOperators;
}
+ /**
+ * Gets the resource collection API of ServerVulnerabilityAssessmentsSettings.
+ *
+ * @return Resource collection API of ServerVulnerabilityAssessmentsSettings.
+ */
+ public ServerVulnerabilityAssessmentsSettings serverVulnerabilityAssessmentsSettings() {
+ if (this.serverVulnerabilityAssessmentsSettings == null) {
+ this.serverVulnerabilityAssessmentsSettings =
+ new ServerVulnerabilityAssessmentsSettingsImpl(
+ clientObject.getServerVulnerabilityAssessmentsSettings(), this);
+ }
+ return serverVulnerabilityAssessmentsSettings;
+ }
+
+ /**
+ * Gets the resource collection API of HealthReports.
+ *
+ * @return Resource collection API of HealthReports.
+ */
+ public HealthReports healthReports() {
+ if (this.healthReports == null) {
+ this.healthReports = new HealthReportsImpl(clientObject.getHealthReports(), this);
+ }
+ return healthReports;
+ }
+
/**
* @return Wrapped service client SecurityCenter providing direct access to the underlying auto-generated API
* implementation, based on Azure REST API.
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/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..b98bd733ae3d 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.
*
@@ -415,20 +429,6 @@ public interface SecurityCenter {
*/
ApiCollectionOffboardingsClient getApiCollectionOffboardings();
- /**
- * Gets the HealthReportsClient object to access its operations.
- *
- * @return the HealthReportsClient object.
- */
- HealthReportsClient getHealthReports();
-
- /**
- * Gets the HealthReportOperationsClient object to access its operations.
- *
- * @return the HealthReportOperationsClient object.
- */
- HealthReportOperationsClient getHealthReportOperations();
-
/**
* Gets the SqlVulnerabilityAssessmentScansClient object to access its operations.
*
@@ -463,4 +463,18 @@ public interface SecurityCenter {
* @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.
+ *
+ * @return the HealthReportsClient object.
+ */
+ HealthReportsClient getHealthReports();
}
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/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/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/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/GetSensitivitySettingsListResponseImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/GetSensitivitySettingsListResponseImpl.java
new file mode 100644
index 000000000000..cf452cee7ba5
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/GetSensitivitySettingsListResponseImpl.java
@@ -0,0 +1,48 @@
+// 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.GetSensitivitySettingsListResponseInner;
+import com.azure.resourcemanager.security.fluent.models.GetSensitivitySettingsResponseInner;
+import com.azure.resourcemanager.security.models.GetSensitivitySettingsListResponse;
+import com.azure.resourcemanager.security.models.GetSensitivitySettingsResponse;
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
+
+public final class GetSensitivitySettingsListResponseImpl implements GetSensitivitySettingsListResponse {
+ private GetSensitivitySettingsListResponseInner innerObject;
+
+ private final com.azure.resourcemanager.security.SecurityManager serviceManager;
+
+ GetSensitivitySettingsListResponseImpl(
+ GetSensitivitySettingsListResponseInner innerObject,
+ com.azure.resourcemanager.security.SecurityManager serviceManager) {
+ this.innerObject = innerObject;
+ this.serviceManager = serviceManager;
+ }
+
+ public List value() {
+ List inner = this.innerModel().value();
+ if (inner != null) {
+ return Collections
+ .unmodifiableList(
+ inner
+ .stream()
+ .map(inner1 -> new GetSensitivitySettingsResponseImpl(inner1, this.manager()))
+ .collect(Collectors.toList()));
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public GetSensitivitySettingsListResponseInner 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/GetSensitivitySettingsResponseImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/GetSensitivitySettingsResponseImpl.java
new file mode 100644
index 000000000000..b0a80f10452a
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/GetSensitivitySettingsResponseImpl.java
@@ -0,0 +1,46 @@
+// 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.GetSensitivitySettingsResponseInner;
+import com.azure.resourcemanager.security.models.GetSensitivitySettingsResponse;
+import com.azure.resourcemanager.security.models.GetSensitivitySettingsResponseProperties;
+
+public final class GetSensitivitySettingsResponseImpl implements GetSensitivitySettingsResponse {
+ private GetSensitivitySettingsResponseInner innerObject;
+
+ private final com.azure.resourcemanager.security.SecurityManager serviceManager;
+
+ GetSensitivitySettingsResponseImpl(
+ GetSensitivitySettingsResponseInner 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 GetSensitivitySettingsResponseProperties properties() {
+ return this.innerModel().properties();
+ }
+
+ public GetSensitivitySettingsResponseInner 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/HealthReportImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportImpl.java
index e93fab68ae8e..f238c398a50c 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportImpl.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportImpl.java
@@ -13,6 +13,7 @@
import com.azure.resourcemanager.security.models.StatusAutoGenerated;
import java.util.Collections;
import java.util.List;
+import java.util.Map;
public final class HealthReportImpl implements HealthReport {
private HealthReportInner innerObject;
@@ -61,6 +62,24 @@ public List affectedDefendersPlans() {
}
}
+ public List affectedDefendersSubPlans() {
+ List inner = this.innerModel().affectedDefendersSubPlans();
+ if (inner != null) {
+ return Collections.unmodifiableList(inner);
+ } else {
+ return Collections.emptyList();
+ }
+ }
+
+ public Map reportAdditionalData() {
+ Map inner = this.innerModel().reportAdditionalData();
+ if (inner != null) {
+ return Collections.unmodifiableMap(inner);
+ } else {
+ return Collections.emptyMap();
+ }
+ }
+
public List issues() {
List inner = this.innerModel().issues();
if (inner != null) {
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportOperationsClientImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportOperationsClientImpl.java
deleted file mode 100644
index d2c16f0a8577..000000000000
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportOperationsClientImpl.java
+++ /dev/null
@@ -1,180 +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.annotation.ExpectedResponses;
-import com.azure.core.annotation.Get;
-import com.azure.core.annotation.HeaderParam;
-import com.azure.core.annotation.Headers;
-import com.azure.core.annotation.Host;
-import com.azure.core.annotation.HostParam;
-import com.azure.core.annotation.PathParam;
-import com.azure.core.annotation.QueryParam;
-import com.azure.core.annotation.ReturnType;
-import com.azure.core.annotation.ServiceInterface;
-import com.azure.core.annotation.ServiceMethod;
-import com.azure.core.annotation.UnexpectedResponseExceptionType;
-import com.azure.core.http.rest.Response;
-import com.azure.core.http.rest.RestProxy;
-import com.azure.core.management.exception.ManagementException;
-import com.azure.core.util.Context;
-import com.azure.core.util.FluxUtil;
-import com.azure.resourcemanager.security.fluent.HealthReportOperationsClient;
-import com.azure.resourcemanager.security.fluent.models.HealthReportInner;
-import reactor.core.publisher.Mono;
-
-/** An instance of this class provides access to all the operations defined in HealthReportOperationsClient. */
-public final class HealthReportOperationsClientImpl implements HealthReportOperationsClient {
- /** The proxy service used to perform REST calls. */
- private final HealthReportOperationsService service;
-
- /** The service client containing this operation class. */
- private final SecurityCenterImpl client;
-
- /**
- * Initializes an instance of HealthReportOperationsClientImpl.
- *
- * @param client the instance of the service client containing this operation class.
- */
- HealthReportOperationsClientImpl(SecurityCenterImpl client) {
- this.service =
- RestProxy
- .create(HealthReportOperationsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
- this.client = client;
- }
-
- /**
- * The interface defining all the services for SecurityCenterHealthReportOperations to be used by the proxy service
- * to perform REST calls.
- */
- @Host("{$host}")
- @ServiceInterface(name = "SecurityCenterHealth")
- public interface HealthReportOperationsService {
- @Headers({"Content-Type: application/json"})
- @Get("/{resourceId}/providers/Microsoft.Security/healthReports/{healthReportName}")
- @ExpectedResponses({200})
- @UnexpectedResponseExceptionType(ManagementException.class)
- Mono> get(
- @HostParam("$host") String endpoint,
- @QueryParam("api-version") String apiVersion,
- @PathParam(value = "resourceId", encoded = true) String resourceId,
- @PathParam("healthReportName") String healthReportName,
- @HeaderParam("Accept") String accept,
- 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 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} on successful completion of {@link Mono}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> getWithResponseAsync(String resourceId, String healthReportName) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (resourceId == null) {
- return Mono.error(new IllegalArgumentException("Parameter resourceId is required and cannot be null."));
- }
- if (healthReportName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter healthReportName is required and cannot be null."));
- }
- final String apiVersion = "2023-02-01-preview";
- final String accept = "application/json";
- return FluxUtil
- .withContext(
- context ->
- service.get(this.client.getEndpoint(), apiVersion, resourceId, healthReportName, accept, context))
- .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
- }
-
- /**
- * 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 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} on successful completion of {@link Mono}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono> getWithResponseAsync(
- String resourceId, String healthReportName, Context context) {
- if (this.client.getEndpoint() == null) {
- return Mono
- .error(
- new IllegalArgumentException(
- "Parameter this.client.getEndpoint() is required and cannot be null."));
- }
- if (resourceId == null) {
- return Mono.error(new IllegalArgumentException("Parameter resourceId is required and cannot be null."));
- }
- if (healthReportName == null) {
- return Mono
- .error(new IllegalArgumentException("Parameter healthReportName is required and cannot be null."));
- }
- final String apiVersion = "2023-02-01-preview";
- final String accept = "application/json";
- context = this.client.mergeContext(context);
- return service.get(this.client.getEndpoint(), apiVersion, resourceId, healthReportName, accept, 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 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 on successful completion of {@link Mono}.
- */
- @ServiceMethod(returns = ReturnType.SINGLE)
- private Mono getAsync(String resourceId, String healthReportName) {
- return getWithResponseAsync(resourceId, healthReportName).flatMap(res -> Mono.justOrEmpty(res.getValue()));
- }
-
- /**
- * 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 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)
- public Response getWithResponse(String resourceId, String healthReportName, Context context) {
- return getWithResponseAsync(resourceId, healthReportName, context).block();
- }
-
- /**
- * 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 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)
- public HealthReportInner get(String resourceId, String healthReportName) {
- return getWithResponse(resourceId, healthReportName, Context.NONE).getValue();
- }
-}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportOperationsImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportOperationsImpl.java
deleted file mode 100644
index 6824b37162f9..000000000000
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportOperationsImpl.java
+++ /dev/null
@@ -1,58 +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.HealthReportOperationsClient;
-import com.azure.resourcemanager.security.fluent.models.HealthReportInner;
-import com.azure.resourcemanager.security.models.HealthReport;
-import com.azure.resourcemanager.security.models.HealthReportOperations;
-
-public final class HealthReportOperationsImpl implements HealthReportOperations {
- private static final ClientLogger LOGGER = new ClientLogger(HealthReportOperationsImpl.class);
-
- private final HealthReportOperationsClient innerClient;
-
- private final com.azure.resourcemanager.security.SecurityManager serviceManager;
-
- public HealthReportOperationsImpl(
- HealthReportOperationsClient innerClient, com.azure.resourcemanager.security.SecurityManager serviceManager) {
- this.innerClient = innerClient;
- this.serviceManager = serviceManager;
- }
-
- public Response getWithResponse(String resourceId, String healthReportName, Context context) {
- Response inner = this.serviceClient().getWithResponse(resourceId, healthReportName, context);
- if (inner != null) {
- return new SimpleResponse<>(
- inner.getRequest(),
- inner.getStatusCode(),
- inner.getHeaders(),
- new HealthReportImpl(inner.getValue(), this.manager()));
- } else {
- return null;
- }
- }
-
- public HealthReport get(String resourceId, String healthReportName) {
- HealthReportInner inner = this.serviceClient().get(resourceId, healthReportName);
- if (inner != null) {
- return new HealthReportImpl(inner, this.manager());
- } else {
- return null;
- }
- }
-
- private HealthReportOperationsClient 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/HealthReportsClientImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportsClientImpl.java
index 06047bcaac58..729e04fc57e3 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportsClientImpl.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportsClientImpl.java
@@ -67,6 +67,18 @@ Mono> list(
@HeaderParam("Accept") String accept,
Context context);
+ @Headers({"Content-Type: application/json"})
+ @Get("/{resourceId}/providers/Microsoft.Security/healthReports/{healthReportName}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> get(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam(value = "resourceId", encoded = true) String resourceId,
+ @PathParam("healthReportName") String healthReportName,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
@Headers({"Content-Type: application/json"})
@Get("{nextLink}")
@ExpectedResponses({200})
@@ -101,7 +113,7 @@ private Mono> listSinglePageAsync(String scope)
if (scope == null) {
return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
}
- final String apiVersion = "2023-02-01-preview";
+ final String apiVersion = "2023-05-01-preview";
final String accept = "application/json";
return FluxUtil
.withContext(context -> service.list(this.client.getEndpoint(), apiVersion, scope, accept, context))
@@ -141,7 +153,7 @@ private Mono> listSinglePageAsync(String scope,
if (scope == null) {
return Mono.error(new IllegalArgumentException("Parameter scope is required and cannot be null."));
}
- final String apiVersion = "2023-02-01-preview";
+ final String apiVersion = "2023-05-01-preview";
final String accept = "application/json";
context = this.client.mergeContext(context);
return service
@@ -224,6 +236,119 @@ public PagedIterable list(String scope, Context context) {
return new PagedIterable<>(listAsync(scope, 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 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} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(String resourceId, String healthReportName) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceId == null) {
+ return Mono.error(new IllegalArgumentException("Parameter resourceId is required and cannot be null."));
+ }
+ if (healthReportName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter healthReportName is required and cannot be null."));
+ }
+ final String apiVersion = "2023-05-01-preview";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service.get(this.client.getEndpoint(), apiVersion, resourceId, healthReportName, accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * 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 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} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(
+ String resourceId, String healthReportName, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (resourceId == null) {
+ return Mono.error(new IllegalArgumentException("Parameter resourceId is required and cannot be null."));
+ }
+ if (healthReportName == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter healthReportName is required and cannot be null."));
+ }
+ final String apiVersion = "2023-05-01-preview";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.get(this.client.getEndpoint(), apiVersion, resourceId, healthReportName, accept, 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 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 on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getAsync(String resourceId, String healthReportName) {
+ return getWithResponseAsync(resourceId, healthReportName).flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * 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 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)
+ public Response getWithResponse(String resourceId, String healthReportName, Context context) {
+ return getWithResponseAsync(resourceId, healthReportName, context).block();
+ }
+
+ /**
+ * 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 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)
+ public HealthReportInner get(String resourceId, String healthReportName) {
+ return getWithResponse(resourceId, healthReportName, Context.NONE).getValue();
+ }
+
/**
* Get the next page of items.
*
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportsImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportsImpl.java
index cf87726c0272..25b8654b5480 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportsImpl.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/HealthReportsImpl.java
@@ -5,6 +5,8 @@
package com.azure.resourcemanager.security.implementation;
import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.SimpleResponse;
import com.azure.core.util.Context;
import com.azure.core.util.logging.ClientLogger;
import com.azure.resourcemanager.security.fluent.HealthReportsClient;
@@ -35,6 +37,28 @@ public PagedIterable list(String scope, Context context) {
return Utils.mapPage(inner, inner1 -> new HealthReportImpl(inner1, this.manager()));
}
+ public Response getWithResponse(String resourceId, String healthReportName, Context context) {
+ Response inner = this.serviceClient().getWithResponse(resourceId, healthReportName, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new HealthReportImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public HealthReport get(String resourceId, String healthReportName) {
+ HealthReportInner inner = this.serviceClient().get(resourceId, healthReportName);
+ if (inner != null) {
+ return new HealthReportImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
private HealthReportsClient serviceClient() {
return this.innerClient;
}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ResourceProvidersClientImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ResourceProvidersClientImpl.java
new file mode 100644
index 000000000000..9b600fe64146
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ResourceProvidersClientImpl.java
@@ -0,0 +1,280 @@
+// 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.annotation.BodyParam;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.resourcemanager.security.fluent.ResourceProvidersClient;
+import com.azure.resourcemanager.security.fluent.models.GetSensitivitySettingsResponseInner;
+import com.azure.resourcemanager.security.models.UpdateSensitivitySettingsRequest;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in ResourceProvidersClient. */
+public final class ResourceProvidersClientImpl implements ResourceProvidersClient {
+ /** The proxy service used to perform REST calls. */
+ private final ResourceProvidersService service;
+
+ /** The service client containing this operation class. */
+ private final SecurityCenterImpl client;
+
+ /**
+ * Initializes an instance of ResourceProvidersClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ ResourceProvidersClientImpl(SecurityCenterImpl client) {
+ this.service =
+ RestProxy.create(ResourceProvidersService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for SecurityCenterResourceProviders to be used by the proxy service to
+ * perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "SecurityCenterResour")
+ public interface ResourceProvidersService {
+ @Headers({"Content-Type: application/json"})
+ @Put("/providers/Microsoft.Security/sensitivitySettings/current")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> updateSensitivitySettings(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @BodyParam("application/json") UpdateSensitivitySettingsRequest sensitivitySettings,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("/providers/Microsoft.Security/sensitivitySettings/current")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> getSensitivitySettings(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ 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 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} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> updateSensitivitySettingsWithResponseAsync(
+ UpdateSensitivitySettingsRequest sensitivitySettings) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (sensitivitySettings == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter sensitivitySettings is required and cannot be null."));
+ } else {
+ sensitivitySettings.validate();
+ }
+ final String apiVersion = "2023-02-15-preview";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .updateSensitivitySettings(
+ this.client.getEndpoint(), apiVersion, sensitivitySettings, accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * 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 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} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> updateSensitivitySettingsWithResponseAsync(
+ UpdateSensitivitySettingsRequest sensitivitySettings, Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ if (sensitivitySettings == null) {
+ return Mono
+ .error(new IllegalArgumentException("Parameter sensitivitySettings is required and cannot be null."));
+ } else {
+ sensitivitySettings.validate();
+ }
+ final String apiVersion = "2023-02-15-preview";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .updateSensitivitySettings(this.client.getEndpoint(), apiVersion, sensitivitySettings, accept, 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 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 on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono updateSensitivitySettingsAsync(
+ UpdateSensitivitySettingsRequest sensitivitySettings) {
+ return updateSensitivitySettingsWithResponseAsync(sensitivitySettings)
+ .flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * 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 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)
+ public Response updateSensitivitySettingsWithResponse(
+ UpdateSensitivitySettingsRequest sensitivitySettings, Context context) {
+ return updateSensitivitySettingsWithResponseAsync(sensitivitySettings, context).block();
+ }
+
+ /**
+ * 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 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)
+ public GetSensitivitySettingsResponseInner updateSensitivitySettings(
+ UpdateSensitivitySettingsRequest sensitivitySettings) {
+ return updateSensitivitySettingsWithResponse(sensitivitySettings, Context.NONE).getValue();
+ }
+
+ /**
+ * Gets data sensitivity settings for sensitive data discovery.
+ *
+ * @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 data sensitivity settings for sensitive data discovery along with {@link Response} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getSensitivitySettingsWithResponseAsync() {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String apiVersion = "2023-02-15-preview";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context -> service.getSensitivitySettings(this.client.getEndpoint(), apiVersion, accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * 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 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} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getSensitivitySettingsWithResponseAsync(
+ Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String apiVersion = "2023-02-15-preview";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.getSensitivitySettings(this.client.getEndpoint(), apiVersion, accept, context);
+ }
+
+ /**
+ * Gets data sensitivity settings for sensitive data discovery.
+ *
+ * @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 data sensitivity settings for sensitive data discovery on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getSensitivitySettingsAsync() {
+ return getSensitivitySettingsWithResponseAsync().flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * 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 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)
+ public Response getSensitivitySettingsWithResponse(Context context) {
+ return getSensitivitySettingsWithResponseAsync(context).block();
+ }
+
+ /**
+ * Gets data sensitivity settings for sensitive data discovery.
+ *
+ * @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 data sensitivity settings for sensitive data discovery.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public GetSensitivitySettingsResponseInner getSensitivitySettings() {
+ return getSensitivitySettingsWithResponse(Context.NONE).getValue();
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ResourceProvidersImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ResourceProvidersImpl.java
new file mode 100644
index 000000000000..ea74d0b57fd0
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ResourceProvidersImpl.java
@@ -0,0 +1,85 @@
+// 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.ResourceProvidersClient;
+import com.azure.resourcemanager.security.fluent.models.GetSensitivitySettingsResponseInner;
+import com.azure.resourcemanager.security.models.GetSensitivitySettingsResponse;
+import com.azure.resourcemanager.security.models.ResourceProviders;
+import com.azure.resourcemanager.security.models.UpdateSensitivitySettingsRequest;
+
+public final class ResourceProvidersImpl implements ResourceProviders {
+ private static final ClientLogger LOGGER = new ClientLogger(ResourceProvidersImpl.class);
+
+ private final ResourceProvidersClient innerClient;
+
+ private final com.azure.resourcemanager.security.SecurityManager serviceManager;
+
+ public ResourceProvidersImpl(
+ ResourceProvidersClient innerClient, com.azure.resourcemanager.security.SecurityManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public Response updateSensitivitySettingsWithResponse(
+ UpdateSensitivitySettingsRequest sensitivitySettings, Context context) {
+ Response inner =
+ this.serviceClient().updateSensitivitySettingsWithResponse(sensitivitySettings, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new GetSensitivitySettingsResponseImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public GetSensitivitySettingsResponse updateSensitivitySettings(
+ UpdateSensitivitySettingsRequest sensitivitySettings) {
+ GetSensitivitySettingsResponseInner inner = this.serviceClient().updateSensitivitySettings(sensitivitySettings);
+ if (inner != null) {
+ return new GetSensitivitySettingsResponseImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response getSensitivitySettingsWithResponse(Context context) {
+ Response inner =
+ this.serviceClient().getSensitivitySettingsWithResponse(context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new GetSensitivitySettingsResponseImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public GetSensitivitySettingsResponse getSensitivitySettings() {
+ GetSensitivitySettingsResponseInner inner = this.serviceClient().getSensitivitySettings();
+ if (inner != null) {
+ return new GetSensitivitySettingsResponseImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ private ResourceProvidersClient 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/SecurityCenterImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/SecurityCenterImpl.java
index 2f43f2f9a553..fd1ee8e43f46 100644
--- a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/SecurityCenterImpl.java
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/SecurityCenterImpl.java
@@ -47,7 +47,6 @@
import com.azure.resourcemanager.security.fluent.ExternalSecuritySolutionsClient;
import com.azure.resourcemanager.security.fluent.GovernanceAssignmentsClient;
import com.azure.resourcemanager.security.fluent.GovernanceRulesClient;
-import com.azure.resourcemanager.security.fluent.HealthReportOperationsClient;
import com.azure.resourcemanager.security.fluent.HealthReportsClient;
import com.azure.resourcemanager.security.fluent.InformationProtectionPoliciesClient;
import com.azure.resourcemanager.security.fluent.IngestionSettingsClient;
@@ -63,6 +62,7 @@
import com.azure.resourcemanager.security.fluent.RegulatoryComplianceAssessmentsClient;
import com.azure.resourcemanager.security.fluent.RegulatoryComplianceControlsClient;
import com.azure.resourcemanager.security.fluent.RegulatoryComplianceStandardsClient;
+import com.azure.resourcemanager.security.fluent.ResourceProvidersClient;
import com.azure.resourcemanager.security.fluent.SecureScoreControlDefinitionsClient;
import com.azure.resourcemanager.security.fluent.SecureScoreControlsClient;
import com.azure.resourcemanager.security.fluent.SecureScoresClient;
@@ -74,7 +74,9 @@
import com.azure.resourcemanager.security.fluent.SecurityOperatorsClient;
import com.azure.resourcemanager.security.fluent.SecuritySolutionsClient;
import com.azure.resourcemanager.security.fluent.SecuritySolutionsReferenceDatasClient;
+import com.azure.resourcemanager.security.fluent.SensitivitySettingsClient;
import com.azure.resourcemanager.security.fluent.ServerVulnerabilityAssessmentsClient;
+import com.azure.resourcemanager.security.fluent.ServerVulnerabilityAssessmentsSettingsClient;
import com.azure.resourcemanager.security.fluent.SettingsClient;
import com.azure.resourcemanager.security.fluent.SoftwareInventoriesClient;
import com.azure.resourcemanager.security.fluent.SqlVulnerabilityAssessmentBaselineRulesClient;
@@ -648,6 +650,30 @@ public ConnectorsClient getConnectors() {
return this.connectors;
}
+ /** The ResourceProvidersClient object to access its operations. */
+ private final ResourceProvidersClient resourceProviders;
+
+ /**
+ * Gets the ResourceProvidersClient object to access its operations.
+ *
+ * @return the ResourceProvidersClient object.
+ */
+ public ResourceProvidersClient getResourceProviders() {
+ return this.resourceProviders;
+ }
+
+ /** The SensitivitySettingsClient object to access its operations. */
+ private final SensitivitySettingsClient sensitivitySettings;
+
+ /**
+ * Gets the SensitivitySettingsClient object to access its operations.
+ *
+ * @return the SensitivitySettingsClient object.
+ */
+ public SensitivitySettingsClient getSensitivitySettings() {
+ return this.sensitivitySettings;
+ }
+
/** The AlertsClient object to access its operations. */
private final AlertsClient alerts;
@@ -804,30 +830,6 @@ public ApiCollectionOffboardingsClient getApiCollectionOffboardings() {
return this.apiCollectionOffboardings;
}
- /** The HealthReportsClient object to access its operations. */
- private final HealthReportsClient healthReports;
-
- /**
- * Gets the HealthReportsClient object to access its operations.
- *
- * @return the HealthReportsClient object.
- */
- public HealthReportsClient getHealthReports() {
- return this.healthReports;
- }
-
- /** The HealthReportOperationsClient object to access its operations. */
- private final HealthReportOperationsClient healthReportOperations;
-
- /**
- * Gets the HealthReportOperationsClient object to access its operations.
- *
- * @return the HealthReportOperationsClient object.
- */
- public HealthReportOperationsClient getHealthReportOperations() {
- return this.healthReportOperations;
- }
-
/** The SqlVulnerabilityAssessmentScansClient object to access its operations. */
private final SqlVulnerabilityAssessmentScansClient sqlVulnerabilityAssessmentScans;
@@ -888,6 +890,30 @@ public SecurityOperatorsClient getSecurityOperators() {
return this.securityOperators;
}
+ /** The ServerVulnerabilityAssessmentsSettingsClient object to access its operations. */
+ private final ServerVulnerabilityAssessmentsSettingsClient serverVulnerabilityAssessmentsSettings;
+
+ /**
+ * Gets the ServerVulnerabilityAssessmentsSettingsClient object to access its operations.
+ *
+ * @return the ServerVulnerabilityAssessmentsSettingsClient object.
+ */
+ public ServerVulnerabilityAssessmentsSettingsClient getServerVulnerabilityAssessmentsSettings() {
+ return this.serverVulnerabilityAssessmentsSettings;
+ }
+
+ /** The HealthReportsClient object to access its operations. */
+ private final HealthReportsClient healthReports;
+
+ /**
+ * Gets the HealthReportsClient object to access its operations.
+ *
+ * @return the HealthReportsClient object.
+ */
+ public HealthReportsClient getHealthReports() {
+ return this.healthReports;
+ }
+
/**
* Initializes an instance of SecurityCenter client.
*
@@ -953,6 +979,8 @@ public SecurityOperatorsClient getSecurityOperators() {
this.secureScoreControlDefinitions = new SecureScoreControlDefinitionsClientImpl(this);
this.securitySolutions = new SecuritySolutionsClientImpl(this);
this.connectors = new ConnectorsClientImpl(this);
+ this.resourceProviders = new ResourceProvidersClientImpl(this);
+ this.sensitivitySettings = new SensitivitySettingsClientImpl(this);
this.alerts = new AlertsClientImpl(this);
this.settings = new SettingsClientImpl(this);
this.ingestionSettings = new IngestionSettingsClientImpl(this);
@@ -966,13 +994,13 @@ public SecurityOperatorsClient getSecurityOperators() {
this.apiCollections = new ApiCollectionsClientImpl(this);
this.apiCollectionOnboardings = new ApiCollectionOnboardingsClientImpl(this);
this.apiCollectionOffboardings = new ApiCollectionOffboardingsClientImpl(this);
- this.healthReports = new HealthReportsClientImpl(this);
- this.healthReportOperations = new HealthReportOperationsClientImpl(this);
this.sqlVulnerabilityAssessmentScans = new SqlVulnerabilityAssessmentScansClientImpl(this);
this.sqlVulnerabilityAssessmentScanResults = new SqlVulnerabilityAssessmentScanResultsClientImpl(this);
this.sqlVulnerabilityAssessmentBaselineRules = new SqlVulnerabilityAssessmentBaselineRulesClientImpl(this);
this.securityConnectors = new SecurityConnectorsClientImpl(this);
this.securityOperators = new SecurityOperatorsClientImpl(this);
+ this.serverVulnerabilityAssessmentsSettings = new ServerVulnerabilityAssessmentsSettingsClientImpl(this);
+ this.healthReports = new HealthReportsClientImpl(this);
}
/**
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/SensitivitySettingsClientImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/SensitivitySettingsClientImpl.java
new file mode 100644
index 000000000000..c771f61b3a11
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/SensitivitySettingsClientImpl.java
@@ -0,0 +1,148 @@
+// Copyright (c) Microsoft Corporation. All rights reserved.
+// Licensed under the MIT License.
+// Code generated by Microsoft (R) AutoRest Code Generator.
+
+package com.azure.resourcemanager.security.implementation;
+
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.resourcemanager.security.fluent.SensitivitySettingsClient;
+import com.azure.resourcemanager.security.fluent.models.GetSensitivitySettingsListResponseInner;
+import reactor.core.publisher.Mono;
+
+/** An instance of this class provides access to all the operations defined in SensitivitySettingsClient. */
+public final class SensitivitySettingsClientImpl implements SensitivitySettingsClient {
+ /** The proxy service used to perform REST calls. */
+ private final SensitivitySettingsService service;
+
+ /** The service client containing this operation class. */
+ private final SecurityCenterImpl client;
+
+ /**
+ * Initializes an instance of SensitivitySettingsClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ SensitivitySettingsClientImpl(SecurityCenterImpl client) {
+ this.service =
+ RestProxy.create(SensitivitySettingsService.class, client.getHttpPipeline(), client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for SecurityCenterSensitivitySettings to be used by the proxy service to
+ * perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "SecurityCenterSensit")
+ public interface SensitivitySettingsService {
+ @Headers({"Content-Type: application/json"})
+ @Get("/providers/Microsoft.Security/sensitivitySettings")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> list(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Gets a list with a single sensitivity settings resource.
+ *
+ * @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 with a single sensitivity settings resource along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listWithResponseAsync() {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String apiVersion = "2023-02-15-preview";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(context -> service.list(this.client.getEndpoint(), apiVersion, accept, context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Gets a list with a single sensitivity settings resource.
+ *
+ * @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 with a single sensitivity settings resource along with {@link Response} on successful completion
+ * of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listWithResponseAsync(Context context) {
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String apiVersion = "2023-02-15-preview";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service.list(this.client.getEndpoint(), apiVersion, accept, context);
+ }
+
+ /**
+ * Gets a list with a single sensitivity settings resource.
+ *
+ * @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 with a single sensitivity settings resource on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono listAsync() {
+ return listWithResponseAsync().flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * Gets a list with a single sensitivity settings resource.
+ *
+ * @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 with a single sensitivity settings resource along with {@link Response}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public Response listWithResponse(Context context) {
+ return listWithResponseAsync(context).block();
+ }
+
+ /**
+ * Gets a list with a single sensitivity settings resource.
+ *
+ * @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 with a single sensitivity settings resource.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ public GetSensitivitySettingsListResponseInner list() {
+ return listWithResponse(Context.NONE).getValue();
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/SensitivitySettingsImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/SensitivitySettingsImpl.java
new file mode 100644
index 000000000000..209d1528fb41
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/SensitivitySettingsImpl.java
@@ -0,0 +1,58 @@
+// 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.SensitivitySettingsClient;
+import com.azure.resourcemanager.security.fluent.models.GetSensitivitySettingsListResponseInner;
+import com.azure.resourcemanager.security.models.GetSensitivitySettingsListResponse;
+import com.azure.resourcemanager.security.models.SensitivitySettings;
+
+public final class SensitivitySettingsImpl implements SensitivitySettings {
+ private static final ClientLogger LOGGER = new ClientLogger(SensitivitySettingsImpl.class);
+
+ private final SensitivitySettingsClient innerClient;
+
+ private final com.azure.resourcemanager.security.SecurityManager serviceManager;
+
+ public SensitivitySettingsImpl(
+ SensitivitySettingsClient innerClient, com.azure.resourcemanager.security.SecurityManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public Response listWithResponse(Context context) {
+ Response inner = this.serviceClient().listWithResponse(context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new GetSensitivitySettingsListResponseImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public GetSensitivitySettingsListResponse list() {
+ GetSensitivitySettingsListResponseInner inner = this.serviceClient().list();
+ if (inner != null) {
+ return new GetSensitivitySettingsListResponseImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ private SensitivitySettingsClient 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/ServerVulnerabilityAssessmentsSettingImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ServerVulnerabilityAssessmentsSettingImpl.java
new file mode 100644
index 000000000000..b17fd95bfb88
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ServerVulnerabilityAssessmentsSettingImpl.java
@@ -0,0 +1,46 @@
+// 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.management.SystemData;
+import com.azure.resourcemanager.security.fluent.models.ServerVulnerabilityAssessmentsSettingInner;
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsSetting;
+
+public final class ServerVulnerabilityAssessmentsSettingImpl implements ServerVulnerabilityAssessmentsSetting {
+ private ServerVulnerabilityAssessmentsSettingInner innerObject;
+
+ private final com.azure.resourcemanager.security.SecurityManager serviceManager;
+
+ ServerVulnerabilityAssessmentsSettingImpl(
+ ServerVulnerabilityAssessmentsSettingInner 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 SystemData systemData() {
+ return this.innerModel().systemData();
+ }
+
+ public ServerVulnerabilityAssessmentsSettingInner 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/ServerVulnerabilityAssessmentsSettingsClientImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ServerVulnerabilityAssessmentsSettingsClientImpl.java
new file mode 100644
index 000000000000..1f84251d69ed
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ServerVulnerabilityAssessmentsSettingsClientImpl.java
@@ -0,0 +1,762 @@
+// 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.annotation.BodyParam;
+import com.azure.core.annotation.Delete;
+import com.azure.core.annotation.ExpectedResponses;
+import com.azure.core.annotation.Get;
+import com.azure.core.annotation.HeaderParam;
+import com.azure.core.annotation.Headers;
+import com.azure.core.annotation.Host;
+import com.azure.core.annotation.HostParam;
+import com.azure.core.annotation.PathParam;
+import com.azure.core.annotation.Put;
+import com.azure.core.annotation.QueryParam;
+import com.azure.core.annotation.ReturnType;
+import com.azure.core.annotation.ServiceInterface;
+import com.azure.core.annotation.ServiceMethod;
+import com.azure.core.annotation.UnexpectedResponseExceptionType;
+import com.azure.core.http.rest.PagedFlux;
+import com.azure.core.http.rest.PagedIterable;
+import com.azure.core.http.rest.PagedResponse;
+import com.azure.core.http.rest.PagedResponseBase;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.RestProxy;
+import com.azure.core.management.exception.ManagementException;
+import com.azure.core.util.Context;
+import com.azure.core.util.FluxUtil;
+import com.azure.resourcemanager.security.fluent.ServerVulnerabilityAssessmentsSettingsClient;
+import com.azure.resourcemanager.security.fluent.models.ServerVulnerabilityAssessmentsSettingInner;
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsSettingKindName;
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsSettingsList;
+import reactor.core.publisher.Mono;
+
+/**
+ * An instance of this class provides access to all the operations defined in
+ * ServerVulnerabilityAssessmentsSettingsClient.
+ */
+public final class ServerVulnerabilityAssessmentsSettingsClientImpl
+ implements ServerVulnerabilityAssessmentsSettingsClient {
+ /** The proxy service used to perform REST calls. */
+ private final ServerVulnerabilityAssessmentsSettingsService service;
+
+ /** The service client containing this operation class. */
+ private final SecurityCenterImpl client;
+
+ /**
+ * Initializes an instance of ServerVulnerabilityAssessmentsSettingsClientImpl.
+ *
+ * @param client the instance of the service client containing this operation class.
+ */
+ ServerVulnerabilityAssessmentsSettingsClientImpl(SecurityCenterImpl client) {
+ this.service =
+ RestProxy
+ .create(
+ ServerVulnerabilityAssessmentsSettingsService.class,
+ client.getHttpPipeline(),
+ client.getSerializerAdapter());
+ this.client = client;
+ }
+
+ /**
+ * The interface defining all the services for SecurityCenterServerVulnerabilityAssessmentsSettings to be used by
+ * the proxy service to perform REST calls.
+ */
+ @Host("{$host}")
+ @ServiceInterface(name = "SecurityCenterServer")
+ public interface ServerVulnerabilityAssessmentsSettingsService {
+ @Headers({"Content-Type: application/json"})
+ @Get("/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> list(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get(
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings/{settingKind}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> get(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("settingKind") ServerVulnerabilityAssessmentsSettingKindName settingKind,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Put(
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings/{settingKind}")
+ @ExpectedResponses({200, 201})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> createOrUpdate(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("settingKind") ServerVulnerabilityAssessmentsSettingKindName settingKind,
+ @BodyParam("application/json")
+ ServerVulnerabilityAssessmentsSettingInner serverVulnerabilityAssessmentsSetting,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Delete(
+ "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings/{settingKind}")
+ @ExpectedResponses({200, 204})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> delete(
+ @HostParam("$host") String endpoint,
+ @QueryParam("api-version") String apiVersion,
+ @PathParam("subscriptionId") String subscriptionId,
+ @PathParam("settingKind") ServerVulnerabilityAssessmentsSettingKindName settingKind,
+ @HeaderParam("Accept") String accept,
+ Context context);
+
+ @Headers({"Content-Type: application/json"})
+ @Get("{nextLink}")
+ @ExpectedResponses({200})
+ @UnexpectedResponseExceptionType(ManagementException.class)
+ Mono> listBySubscriptionNext(
+ @PathParam(value = "nextLink", encoded = true) String nextLink,
+ @HostParam("$host") String endpoint,
+ @HeaderParam("Accept") String accept,
+ Context context);
+ }
+
+ /**
+ * Get a list of all the server vulnerability assessments settings over a subscription level scope.
+ *
+ * @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 all the server vulnerability assessments settings over a subscription level scope 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-05-01";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get 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 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 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-05-01";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .list(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), accept, context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+
+ /**
+ * Get a list of all the server vulnerability assessments settings over a subscription level scope.
+ *
+ * @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 all the server vulnerability assessments settings over a subscription level scope as paginated
+ * response with {@link PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync() {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(), nextLink -> listBySubscriptionNextSinglePageAsync(nextLink));
+ }
+
+ /**
+ * 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 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 PagedFlux}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ private PagedFlux listAsync(Context context) {
+ return new PagedFlux<>(
+ () -> listSinglePageAsync(context), nextLink -> listBySubscriptionNextSinglePageAsync(nextLink, context));
+ }
+
+ /**
+ * Get a list of all the server vulnerability assessments settings over a subscription level scope.
+ *
+ * @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 all the server vulnerability assessments settings over a subscription level scope as paginated
+ * response with {@link PagedIterable}.
+ */
+ @ServiceMethod(returns = ReturnType.COLLECTION)
+ public PagedIterable list() {
+ return new PagedIterable<>(listAsync());
+ }
+
+ /**
+ * 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 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)
+ public PagedIterable list(Context context) {
+ return new PagedIterable<>(listAsync(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 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} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind) {
+ 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 (settingKind == null) {
+ return Mono.error(new IllegalArgumentException("Parameter settingKind is required and cannot be null."));
+ }
+ final String apiVersion = "2023-05-01";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .get(
+ this.client.getEndpoint(),
+ apiVersion,
+ this.client.getSubscriptionId(),
+ settingKind,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * 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 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} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> getWithResponseAsync(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind, 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 (settingKind == null) {
+ return Mono.error(new IllegalArgumentException("Parameter settingKind is required and cannot be null."));
+ }
+ final String apiVersion = "2023-05-01";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .get(this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), settingKind, accept, 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 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 on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono getAsync(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind) {
+ return getWithResponseAsync(settingKind).flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * 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 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)
+ public Response getWithResponse(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind, Context context) {
+ return getWithResponseAsync(settingKind, context).block();
+ }
+
+ /**
+ * 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 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)
+ public ServerVulnerabilityAssessmentsSettingInner get(ServerVulnerabilityAssessmentsSettingKindName settingKind) {
+ return getWithResponse(settingKind, Context.NONE).getValue();
+ }
+
+ /**
+ * 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 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} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> createOrUpdateWithResponseAsync(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind,
+ ServerVulnerabilityAssessmentsSettingInner serverVulnerabilityAssessmentsSetting) {
+ 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 (settingKind == null) {
+ return Mono.error(new IllegalArgumentException("Parameter settingKind is required and cannot be null."));
+ }
+ if (serverVulnerabilityAssessmentsSetting == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter serverVulnerabilityAssessmentsSetting is required and cannot be null."));
+ } else {
+ serverVulnerabilityAssessmentsSetting.validate();
+ }
+ final String apiVersion = "2023-05-01";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .createOrUpdate(
+ this.client.getEndpoint(),
+ apiVersion,
+ this.client.getSubscriptionId(),
+ settingKind,
+ serverVulnerabilityAssessmentsSetting,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * 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 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} on
+ * successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> createOrUpdateWithResponseAsync(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind,
+ ServerVulnerabilityAssessmentsSettingInner serverVulnerabilityAssessmentsSetting,
+ 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 (settingKind == null) {
+ return Mono.error(new IllegalArgumentException("Parameter settingKind is required and cannot be null."));
+ }
+ if (serverVulnerabilityAssessmentsSetting == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter serverVulnerabilityAssessmentsSetting is required and cannot be null."));
+ } else {
+ serverVulnerabilityAssessmentsSetting.validate();
+ }
+ final String apiVersion = "2023-05-01";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .createOrUpdate(
+ this.client.getEndpoint(),
+ apiVersion,
+ this.client.getSubscriptionId(),
+ settingKind,
+ serverVulnerabilityAssessmentsSetting,
+ accept,
+ 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 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 on successful completion of
+ * {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono createOrUpdateAsync(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind,
+ ServerVulnerabilityAssessmentsSettingInner serverVulnerabilityAssessmentsSetting) {
+ return createOrUpdateWithResponseAsync(settingKind, serverVulnerabilityAssessmentsSetting)
+ .flatMap(res -> Mono.justOrEmpty(res.getValue()));
+ }
+
+ /**
+ * 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 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)
+ public Response createOrUpdateWithResponse(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind,
+ ServerVulnerabilityAssessmentsSettingInner serverVulnerabilityAssessmentsSetting,
+ Context context) {
+ return createOrUpdateWithResponseAsync(settingKind, serverVulnerabilityAssessmentsSetting, context).block();
+ }
+
+ /**
+ * 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 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)
+ public ServerVulnerabilityAssessmentsSettingInner createOrUpdate(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind,
+ ServerVulnerabilityAssessmentsSettingInner serverVulnerabilityAssessmentsSetting) {
+ return createOrUpdateWithResponse(settingKind, serverVulnerabilityAssessmentsSetting, Context.NONE).getValue();
+ }
+
+ /**
+ * 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 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} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> deleteWithResponseAsync(ServerVulnerabilityAssessmentsSettingKindName settingKind) {
+ 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 (settingKind == null) {
+ return Mono.error(new IllegalArgumentException("Parameter settingKind is required and cannot be null."));
+ }
+ final String apiVersion = "2023-05-01";
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context ->
+ service
+ .delete(
+ this.client.getEndpoint(),
+ apiVersion,
+ this.client.getSubscriptionId(),
+ settingKind,
+ accept,
+ context))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * 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 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} on successful completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> deleteWithResponseAsync(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind, 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 (settingKind == null) {
+ return Mono.error(new IllegalArgumentException("Parameter settingKind is required and cannot be null."));
+ }
+ final String apiVersion = "2023-05-01";
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .delete(
+ this.client.getEndpoint(), apiVersion, this.client.getSubscriptionId(), settingKind, accept, 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 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 {@link Mono} that completes when a successful response is received.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono deleteAsync(ServerVulnerabilityAssessmentsSettingKindName settingKind) {
+ return deleteWithResponseAsync(settingKind).flatMap(ignored -> Mono.empty());
+ }
+
+ /**
+ * 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 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)
+ public Response deleteWithResponse(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind, Context context) {
+ return deleteWithResponseAsync(settingKind, context).block();
+ }
+
+ /**
+ * 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 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)
+ public void delete(ServerVulnerabilityAssessmentsSettingKindName settingKind) {
+ deleteWithResponse(settingKind, Context.NONE);
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The URL to get the next list of items
+ *
The nextLink parameter.
+ * @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 page of a server vulnerability assessments settings list along with {@link PagedResponse} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listBySubscriptionNextSinglePageAsync(
+ String nextLink) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ return FluxUtil
+ .withContext(
+ context -> service.listBySubscriptionNext(nextLink, this.client.getEndpoint(), accept, context))
+ .>map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null))
+ .contextWrite(context -> context.putAll(FluxUtil.toReactorContext(this.client.getContext()).readOnly()));
+ }
+
+ /**
+ * Get the next page of items.
+ *
+ * @param nextLink The URL to get the next list of items
+ *
The nextLink parameter.
+ * @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 page of a server vulnerability assessments settings list along with {@link PagedResponse} on successful
+ * completion of {@link Mono}.
+ */
+ @ServiceMethod(returns = ReturnType.SINGLE)
+ private Mono> listBySubscriptionNextSinglePageAsync(
+ String nextLink, Context context) {
+ if (nextLink == null) {
+ return Mono.error(new IllegalArgumentException("Parameter nextLink is required and cannot be null."));
+ }
+ if (this.client.getEndpoint() == null) {
+ return Mono
+ .error(
+ new IllegalArgumentException(
+ "Parameter this.client.getEndpoint() is required and cannot be null."));
+ }
+ final String accept = "application/json";
+ context = this.client.mergeContext(context);
+ return service
+ .listBySubscriptionNext(nextLink, this.client.getEndpoint(), accept, context)
+ .map(
+ res ->
+ new PagedResponseBase<>(
+ res.getRequest(),
+ res.getStatusCode(),
+ res.getHeaders(),
+ res.getValue().value(),
+ res.getValue().nextLink(),
+ null));
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ServerVulnerabilityAssessmentsSettingsImpl.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ServerVulnerabilityAssessmentsSettingsImpl.java
new file mode 100644
index 000000000000..9fede1af25f2
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/implementation/ServerVulnerabilityAssessmentsSettingsImpl.java
@@ -0,0 +1,113 @@
+// 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.PagedIterable;
+import com.azure.core.http.rest.Response;
+import com.azure.core.http.rest.SimpleResponse;
+import com.azure.core.util.Context;
+import com.azure.core.util.logging.ClientLogger;
+import com.azure.resourcemanager.security.fluent.ServerVulnerabilityAssessmentsSettingsClient;
+import com.azure.resourcemanager.security.fluent.models.ServerVulnerabilityAssessmentsSettingInner;
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsSetting;
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsSettingKindName;
+import com.azure.resourcemanager.security.models.ServerVulnerabilityAssessmentsSettings;
+
+public final class ServerVulnerabilityAssessmentsSettingsImpl implements ServerVulnerabilityAssessmentsSettings {
+ private static final ClientLogger LOGGER = new ClientLogger(ServerVulnerabilityAssessmentsSettingsImpl.class);
+
+ private final ServerVulnerabilityAssessmentsSettingsClient innerClient;
+
+ private final com.azure.resourcemanager.security.SecurityManager serviceManager;
+
+ public ServerVulnerabilityAssessmentsSettingsImpl(
+ ServerVulnerabilityAssessmentsSettingsClient innerClient,
+ com.azure.resourcemanager.security.SecurityManager serviceManager) {
+ this.innerClient = innerClient;
+ this.serviceManager = serviceManager;
+ }
+
+ public PagedIterable list() {
+ PagedIterable inner = this.serviceClient().list();
+ return Utils.mapPage(inner, inner1 -> new ServerVulnerabilityAssessmentsSettingImpl(inner1, this.manager()));
+ }
+
+ public PagedIterable list(Context context) {
+ PagedIterable inner = this.serviceClient().list(context);
+ return Utils.mapPage(inner, inner1 -> new ServerVulnerabilityAssessmentsSettingImpl(inner1, this.manager()));
+ }
+
+ public Response getWithResponse(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind, Context context) {
+ Response inner =
+ this.serviceClient().getWithResponse(settingKind, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new ServerVulnerabilityAssessmentsSettingImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public ServerVulnerabilityAssessmentsSetting get(ServerVulnerabilityAssessmentsSettingKindName settingKind) {
+ ServerVulnerabilityAssessmentsSettingInner inner = this.serviceClient().get(settingKind);
+ if (inner != null) {
+ return new ServerVulnerabilityAssessmentsSettingImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response createOrUpdateWithResponse(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind,
+ ServerVulnerabilityAssessmentsSettingInner serverVulnerabilityAssessmentsSetting,
+ Context context) {
+ Response inner =
+ this
+ .serviceClient()
+ .createOrUpdateWithResponse(settingKind, serverVulnerabilityAssessmentsSetting, context);
+ if (inner != null) {
+ return new SimpleResponse<>(
+ inner.getRequest(),
+ inner.getStatusCode(),
+ inner.getHeaders(),
+ new ServerVulnerabilityAssessmentsSettingImpl(inner.getValue(), this.manager()));
+ } else {
+ return null;
+ }
+ }
+
+ public ServerVulnerabilityAssessmentsSetting createOrUpdate(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind,
+ ServerVulnerabilityAssessmentsSettingInner serverVulnerabilityAssessmentsSetting) {
+ ServerVulnerabilityAssessmentsSettingInner inner =
+ this.serviceClient().createOrUpdate(settingKind, serverVulnerabilityAssessmentsSetting);
+ if (inner != null) {
+ return new ServerVulnerabilityAssessmentsSettingImpl(inner, this.manager());
+ } else {
+ return null;
+ }
+ }
+
+ public Response deleteWithResponse(
+ ServerVulnerabilityAssessmentsSettingKindName settingKind, Context context) {
+ return this.serviceClient().deleteWithResponse(settingKind, context);
+ }
+
+ public void delete(ServerVulnerabilityAssessmentsSettingKindName settingKind) {
+ this.serviceClient().delete(settingKind);
+ }
+
+ private ServerVulnerabilityAssessmentsSettingsClient 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/models/AzureServersSetting.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/AzureServersSetting.java
new file mode 100644
index 000000000000..9ed8800df2cc
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/AzureServersSetting.java
@@ -0,0 +1,77 @@
+// 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.models;
+
+import com.azure.core.annotation.Fluent;
+import com.azure.resourcemanager.security.fluent.models.ServerVulnerabilityAssessmentsAzureSettingProperties;
+import com.azure.resourcemanager.security.fluent.models.ServerVulnerabilityAssessmentsSettingInner;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+import com.fasterxml.jackson.annotation.JsonTypeName;
+
+/** A vulnerability assessments setting on Azure servers in the defined scope. */
+@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "kind")
+@JsonTypeName("AzureServersSetting")
+@Fluent
+public final class AzureServersSetting extends ServerVulnerabilityAssessmentsSettingInner {
+ /*
+ * The vulnerability assessments setting properties on Azure servers in the defined scope.
+ */
+ @JsonProperty(value = "properties")
+ private ServerVulnerabilityAssessmentsAzureSettingProperties innerProperties;
+
+ /** Creates an instance of AzureServersSetting class. */
+ public AzureServersSetting() {
+ }
+
+ /**
+ * Get the innerProperties property: The vulnerability assessments setting properties on Azure servers in the
+ * defined scope.
+ *
+ * @return the innerProperties value.
+ */
+ private ServerVulnerabilityAssessmentsAzureSettingProperties innerProperties() {
+ return this.innerProperties;
+ }
+
+ /**
+ * 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.innerProperties() == null ? null : this.innerProperties().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 AzureServersSetting object itself.
+ */
+ public AzureServersSetting withSelectedProvider(
+ ServerVulnerabilityAssessmentsAzureSettingSelectedProvider selectedProvider) {
+ if (this.innerProperties() == null) {
+ this.innerProperties = new ServerVulnerabilityAssessmentsAzureSettingProperties();
+ }
+ this.innerProperties().withSelectedProvider(selectedProvider);
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ @Override
+ public void validate() {
+ super.validate();
+ if (innerProperties() != null) {
+ innerProperties().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/BuiltInInfoType.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/BuiltInInfoType.java
new file mode 100644
index 000000000000..bf091ee53058
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/BuiltInInfoType.java
@@ -0,0 +1,103 @@
+// 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.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.UUID;
+
+/** Pre-configured sensitive information type. */
+@Fluent
+public final class BuiltInInfoType {
+ /*
+ * Display name of the info type
+ */
+ @JsonProperty(value = "name")
+ private String name;
+
+ /*
+ * Id of the info type
+ */
+ @JsonProperty(value = "id")
+ private UUID id;
+
+ /*
+ * Category of the built-in info type
+ */
+ @JsonProperty(value = "type")
+ private String type;
+
+ /** Creates an instance of BuiltInInfoType class. */
+ public BuiltInInfoType() {
+ }
+
+ /**
+ * Get the name property: Display name of the info type.
+ *
+ * @return the name value.
+ */
+ public String name() {
+ return this.name;
+ }
+
+ /**
+ * Set the name property: Display name of the info type.
+ *
+ * @param name the name value to set.
+ * @return the BuiltInInfoType object itself.
+ */
+ public BuiltInInfoType withName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * Get the id property: Id of the info type.
+ *
+ * @return the id value.
+ */
+ public UUID id() {
+ return this.id;
+ }
+
+ /**
+ * Set the id property: Id of the info type.
+ *
+ * @param id the id value to set.
+ * @return the BuiltInInfoType object itself.
+ */
+ public BuiltInInfoType withId(UUID id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * Get the type property: Category of the built-in info type.
+ *
+ * @return the type value.
+ */
+ public String type() {
+ return this.type;
+ }
+
+ /**
+ * Set the type property: Category of the built-in info type.
+ *
+ * @param type the type value to set.
+ * @return the BuiltInInfoType object itself.
+ */
+ public BuiltInInfoType withType(String type) {
+ this.type = type;
+ 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/models/GetSensitivitySettingsListResponse.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/GetSensitivitySettingsListResponse.java
new file mode 100644
index 000000000000..31d08ba42210
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/GetSensitivitySettingsListResponse.java
@@ -0,0 +1,25 @@
+// 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.models;
+
+import com.azure.resourcemanager.security.fluent.models.GetSensitivitySettingsListResponseInner;
+import java.util.List;
+
+/** An immutable client-side representation of GetSensitivitySettingsListResponse. */
+public interface GetSensitivitySettingsListResponse {
+ /**
+ * Gets the value property: The value property.
+ *
+ * @return the value value.
+ */
+ List value();
+
+ /**
+ * Gets the inner com.azure.resourcemanager.security.fluent.models.GetSensitivitySettingsListResponseInner object.
+ *
+ * @return the inner object.
+ */
+ GetSensitivitySettingsListResponseInner innerModel();
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/GetSensitivitySettingsResponse.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/GetSensitivitySettingsResponse.java
new file mode 100644
index 000000000000..32e2c0f60f39
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/GetSensitivitySettingsResponse.java
@@ -0,0 +1,45 @@
+// 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.models;
+
+import com.azure.resourcemanager.security.fluent.models.GetSensitivitySettingsResponseInner;
+
+/** An immutable client-side representation of GetSensitivitySettingsResponse. */
+public interface GetSensitivitySettingsResponse {
+ /**
+ * Gets the id property: Fully qualified resource Id for the resource.
+ *
+ * @return the id value.
+ */
+ String id();
+
+ /**
+ * Gets the name property: The name of the resource.
+ *
+ * @return the name value.
+ */
+ String name();
+
+ /**
+ * Gets the type property: The type of the resource.
+ *
+ * @return the type value.
+ */
+ String type();
+
+ /**
+ * Gets the properties property: The sensitivity settings properties.
+ *
+ * @return the properties value.
+ */
+ GetSensitivitySettingsResponseProperties properties();
+
+ /**
+ * Gets the inner com.azure.resourcemanager.security.fluent.models.GetSensitivitySettingsResponseInner object.
+ *
+ * @return the inner object.
+ */
+ GetSensitivitySettingsResponseInner innerModel();
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/GetSensitivitySettingsResponseProperties.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/GetSensitivitySettingsResponseProperties.java
new file mode 100644
index 000000000000..3e261692951f
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/GetSensitivitySettingsResponseProperties.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.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+import java.util.UUID;
+
+/** The sensitivity settings properties. */
+@Fluent
+public final class GetSensitivitySettingsResponseProperties {
+ /*
+ * List of selected sensitive info types' IDs.
+ */
+ @JsonProperty(value = "sensitiveInfoTypesIds")
+ private List sensitiveInfoTypesIds;
+
+ /*
+ * The order of the sensitivity threshold label. Any label at or above this order will be considered sensitive. If
+ * set to -1, sensitivity by labels is turned off
+ */
+ @JsonProperty(value = "sensitivityThresholdLabelOrder")
+ private Float sensitivityThresholdLabelOrder;
+
+ /*
+ * The id of the sensitivity threshold label. Any label at or above this rank will be considered sensitive.
+ */
+ @JsonProperty(value = "sensitivityThresholdLabelId")
+ private UUID sensitivityThresholdLabelId;
+
+ /*
+ * Microsoft information protection built-in and custom information types, labels, and integration status.
+ */
+ @JsonProperty(value = "mipInformation")
+ private GetSensitivitySettingsResponsePropertiesMipInformation mipInformation;
+
+ /** Creates an instance of GetSensitivitySettingsResponseProperties class. */
+ public GetSensitivitySettingsResponseProperties() {
+ }
+
+ /**
+ * Get the sensitiveInfoTypesIds property: List of selected sensitive info types' IDs.
+ *
+ * @return the sensitiveInfoTypesIds value.
+ */
+ public List sensitiveInfoTypesIds() {
+ return this.sensitiveInfoTypesIds;
+ }
+
+ /**
+ * Set the sensitiveInfoTypesIds property: List of selected sensitive info types' IDs.
+ *
+ * @param sensitiveInfoTypesIds the sensitiveInfoTypesIds value to set.
+ * @return the GetSensitivitySettingsResponseProperties object itself.
+ */
+ public GetSensitivitySettingsResponseProperties withSensitiveInfoTypesIds(List sensitiveInfoTypesIds) {
+ this.sensitiveInfoTypesIds = sensitiveInfoTypesIds;
+ return this;
+ }
+
+ /**
+ * Get the sensitivityThresholdLabelOrder property: The order of the sensitivity threshold label. Any label at or
+ * above this order will be considered sensitive. If set to -1, sensitivity by labels is turned off.
+ *
+ * @return the sensitivityThresholdLabelOrder value.
+ */
+ public Float sensitivityThresholdLabelOrder() {
+ return this.sensitivityThresholdLabelOrder;
+ }
+
+ /**
+ * Set the sensitivityThresholdLabelOrder property: The order of the sensitivity threshold label. Any label at or
+ * above this order will be considered sensitive. If set to -1, sensitivity by labels is turned off.
+ *
+ * @param sensitivityThresholdLabelOrder the sensitivityThresholdLabelOrder value to set.
+ * @return the GetSensitivitySettingsResponseProperties object itself.
+ */
+ public GetSensitivitySettingsResponseProperties withSensitivityThresholdLabelOrder(
+ Float sensitivityThresholdLabelOrder) {
+ this.sensitivityThresholdLabelOrder = sensitivityThresholdLabelOrder;
+ return this;
+ }
+
+ /**
+ * Get the sensitivityThresholdLabelId property: The id of the sensitivity threshold label. Any label at or above
+ * this rank will be considered sensitive.
+ *
+ * @return the sensitivityThresholdLabelId value.
+ */
+ public UUID sensitivityThresholdLabelId() {
+ return this.sensitivityThresholdLabelId;
+ }
+
+ /**
+ * Set the sensitivityThresholdLabelId property: The id of the sensitivity threshold label. Any label at or above
+ * this rank will be considered sensitive.
+ *
+ * @param sensitivityThresholdLabelId the sensitivityThresholdLabelId value to set.
+ * @return the GetSensitivitySettingsResponseProperties object itself.
+ */
+ public GetSensitivitySettingsResponseProperties withSensitivityThresholdLabelId(UUID sensitivityThresholdLabelId) {
+ this.sensitivityThresholdLabelId = sensitivityThresholdLabelId;
+ return this;
+ }
+
+ /**
+ * Get the mipInformation property: Microsoft information protection built-in and custom information types, labels,
+ * and integration status.
+ *
+ * @return the mipInformation value.
+ */
+ public GetSensitivitySettingsResponsePropertiesMipInformation mipInformation() {
+ return this.mipInformation;
+ }
+
+ /**
+ * Set the mipInformation property: Microsoft information protection built-in and custom information types, labels,
+ * and integration status.
+ *
+ * @param mipInformation the mipInformation value to set.
+ * @return the GetSensitivitySettingsResponseProperties object itself.
+ */
+ public GetSensitivitySettingsResponseProperties withMipInformation(
+ GetSensitivitySettingsResponsePropertiesMipInformation mipInformation) {
+ this.mipInformation = mipInformation;
+ return this;
+ }
+
+ /**
+ * Validates the instance.
+ *
+ * @throws IllegalArgumentException thrown if the instance is not valid.
+ */
+ public void validate() {
+ if (mipInformation() != null) {
+ mipInformation().validate();
+ }
+ }
+}
diff --git a/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/GetSensitivitySettingsResponsePropertiesMipInformation.java b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/GetSensitivitySettingsResponsePropertiesMipInformation.java
new file mode 100644
index 000000000000..3f853cadea93
--- /dev/null
+++ b/sdk/security/azure-resourcemanager-security/src/main/java/com/azure/resourcemanager/security/models/GetSensitivitySettingsResponsePropertiesMipInformation.java
@@ -0,0 +1,140 @@
+// 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.models;
+
+import com.azure.core.annotation.Fluent;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+
+/** Microsoft information protection built-in and custom information types, labels, and integration status. */
+@Fluent
+public final class GetSensitivitySettingsResponsePropertiesMipInformation {
+ /*
+ * Microsoft information protection integration status
+ */
+ @JsonProperty(value = "mipIntegrationStatus")
+ private MipIntegrationStatus mipIntegrationStatus;
+
+ /*
+ * List of Microsoft information protection sensitivity labels
+ */
+ @JsonProperty(value = "labels")
+ private List