All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.azure.resourcemanager.security.fluent.CustomRecommendationsClient Maven / Gradle / Ivy

// 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.CustomRecommendationInner;

/**
 * An instance of this class provides access to all the operations defined in CustomRecommendationsClient.
 */
public interface CustomRecommendationsClient {
    /**
     * Get a list of all relevant custom recommendations over a scope.
     * 
     * @param scope The scope of the custom recommendation. Valid scopes are: management group (format:
     * 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format:
     * 'subscriptions/{subscriptionId}'), or security connector (format:
     * 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'.
     * @throws IllegalArgumentException thrown if parameters fail the validation.
     * @throws com.azure.core.management.exception.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 relevant custom recommendations over a scope as paginated response with
     * {@link PagedIterable}.
     */
    @ServiceMethod(returns = ReturnType.COLLECTION)
    PagedIterable list(String scope);

    /**
     * Get a list of all relevant custom recommendations over a scope.
     * 
     * @param scope The scope of the custom recommendation. Valid scopes are: management group (format:
     * 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format:
     * 'subscriptions/{subscriptionId}'), or security connector (format:
     * 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'.
     * @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 relevant custom recommendations over a scope as paginated response with
     * {@link PagedIterable}.
     */
    @ServiceMethod(returns = ReturnType.COLLECTION)
    PagedIterable list(String scope, Context context);

    /**
     * Get a specific custom recommendation for the requested scope by customRecommendationName.
     * 
     * @param scope The scope of the custom recommendation. Valid scopes are: management group (format:
     * 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format:
     * 'subscriptions/{subscriptionId}'), or security connector (format:
     * 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'.
     * @param customRecommendationName Name of the Custom Recommendation.
     * @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 specific custom recommendation for the requested scope by customRecommendationName along with
     * {@link Response}.
     */
    @ServiceMethod(returns = ReturnType.SINGLE)
    Response getWithResponse(String scope, String customRecommendationName, Context context);

    /**
     * Get a specific custom recommendation for the requested scope by customRecommendationName.
     * 
     * @param scope The scope of the custom recommendation. Valid scopes are: management group (format:
     * 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format:
     * 'subscriptions/{subscriptionId}'), or security connector (format:
     * 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'.
     * @param customRecommendationName Name of the Custom Recommendation.
     * @throws IllegalArgumentException thrown if parameters fail the validation.
     * @throws com.azure.core.management.exception.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 specific custom recommendation for the requested scope by customRecommendationName.
     */
    @ServiceMethod(returns = ReturnType.SINGLE)
    CustomRecommendationInner get(String scope, String customRecommendationName);

    /**
     * Creates or updates a custom recommendation over a given scope.
     * 
     * @param scope The scope of the custom recommendation. Valid scopes are: management group (format:
     * 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format:
     * 'subscriptions/{subscriptionId}'), or security connector (format:
     * 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'.
     * @param customRecommendationName Name of the Custom Recommendation.
     * @param customRecommendationBody Custom Recommendation body.
     * @param context The context to associate with this operation.
     * @throws IllegalArgumentException thrown if parameters fail the validation.
     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
     * @return custom Recommendation along with {@link Response}.
     */
    @ServiceMethod(returns = ReturnType.SINGLE)
    Response createOrUpdateWithResponse(String scope, String customRecommendationName,
        CustomRecommendationInner customRecommendationBody, Context context);

    /**
     * Creates or updates a custom recommendation over a given scope.
     * 
     * @param scope The scope of the custom recommendation. Valid scopes are: management group (format:
     * 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format:
     * 'subscriptions/{subscriptionId}'), or security connector (format:
     * 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'.
     * @param customRecommendationName Name of the Custom Recommendation.
     * @param customRecommendationBody Custom Recommendation body.
     * @throws IllegalArgumentException thrown if parameters fail the validation.
     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
     * @return custom Recommendation.
     */
    @ServiceMethod(returns = ReturnType.SINGLE)
    CustomRecommendationInner createOrUpdate(String scope, String customRecommendationName,
        CustomRecommendationInner customRecommendationBody);

    /**
     * Delete a custom recommendation over a given scope.
     * 
     * @param scope The scope of the custom recommendation. Valid scopes are: management group (format:
     * 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format:
     * 'subscriptions/{subscriptionId}'), or security connector (format:
     * 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'.
     * @param customRecommendationName Name of the Custom Recommendation.
     * @param context The context to associate with this operation.
     * @throws IllegalArgumentException thrown if parameters fail the validation.
     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
     * @return the {@link Response}.
     */
    @ServiceMethod(returns = ReturnType.SINGLE)
    Response deleteWithResponse(String scope, String customRecommendationName, Context context);

    /**
     * Delete a custom recommendation over a given scope.
     * 
     * @param scope The scope of the custom recommendation. Valid scopes are: management group (format:
     * 'providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format:
     * 'subscriptions/{subscriptionId}'), or security connector (format:
     * 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})'.
     * @param customRecommendationName Name of the Custom Recommendation.
     * @throws IllegalArgumentException thrown if parameters fail the validation.
     * @throws com.azure.core.management.exception.ManagementException thrown if the request is rejected by server.
     * @throws RuntimeException all other wrapped checked exceptions if the request fails to be sent.
     */
    @ServiceMethod(returns = ReturnType.SINGLE)
    void delete(String scope, String customRecommendationName);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy