/** * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for * license information. */ package com.microsoft.azure.management.sql; import com.microsoft.azure.management.apigeneration.Fluent; import com.microsoft.azure.management.resources.fluentcore.arm.models.HasId; import com.microsoft.azure.management.resources.fluentcore.arm.models.HasName; import com.microsoft.azure.management.resources.fluentcore.arm.models.HasResourceGroup; import com.microsoft.azure.management.resources.fluentcore.model.Refreshable; import com.microsoft.azure.management.resources.fluentcore.model.HasInner; import com.microsoft.azure.management.sql.implementation.ServiceTierAdvisorInner; import org.joda.time.DateTime; import java.util.List; import java.util.UUID; /** * An immutable client-side representation of an Azure SQL Service tier advisor. */ @Fluent public interface ServiceTierAdvisor extends Refreshable<ServiceTierAdvisor>, HasInner<ServiceTierAdvisorInner>, HasResourceGroup, HasName, HasId { /** * @return name of the SQL Server to which this replication belongs */ String sqlServerName(); /** * @return name of the SQL Database to which this replication belongs */ String databaseName(); /** * @return the observation period start (ISO8601 format). */ DateTime observationPeriodStart(); /** * @return the observation period start (ISO8601 format). */ DateTime observationPeriodEnd(); /** * @return the activeTimeRatio for service tier advisor. */ double activeTimeRatio(); /** * @return or sets minDtu for service tier advisor. */ double minDtu(); /** * @return or sets avgDtu for service tier advisor. */ double avgDtu(); /** * @return or sets maxDtu for service tier advisor. */ double maxDtu(); /** * @return or sets maxSizeInGB for service tier advisor. */ double maxSizeInGB(); /** * @return serviceLevelObjectiveUsageMetrics for the service tier * advisor. */ List<SloUsageMetricInterface> serviceLevelObjectiveUsageMetrics(); /** * @return or sets currentServiceLevelObjective for service tier advisor. */ String currentServiceLevelObjective(); /** * @return or sets currentServiceLevelObjectiveId for service tier advisor. */ UUID currentServiceLevelObjectiveId(); /** * @return or sets usageBasedRecommendationServiceLevelObjective for service * tier advisor. */ String usageBasedRecommendationServiceLevelObjective(); /** * @return or sets usageBasedRecommendationServiceLevelObjectiveId for * service tier advisor. */ UUID usageBasedRecommendationServiceLevelObjectiveId(); /** * @return or sets databaseSizeBasedRecommendationServiceLevelObjective for * service tier advisor. */ String databaseSizeBasedRecommendationServiceLevelObjective(); /** * @return or sets databaseSizeBasedRecommendationServiceLevelObjectiveId for * service tier advisor. */ UUID databaseSizeBasedRecommendationServiceLevelObjectiveId(); /** * @return or sets disasterPlanBasedRecommendationServiceLevelObjective for * service tier advisor. */ String disasterPlanBasedRecommendationServiceLevelObjective(); /** * @return or sets disasterPlanBasedRecommendationServiceLevelObjectiveId for * service tier advisor. */ UUID disasterPlanBasedRecommendationServiceLevelObjectiveId(); /** * @return or sets overallRecommendationServiceLevelObjective for service * tier advisor. */ String overallRecommendationServiceLevelObjective(); /** * @return or sets overallRecommendationServiceLevelObjectiveId for service * tier advisor. */ UUID overallRecommendationServiceLevelObjectiveId(); /** * @return or sets confidence for service tier advisor. */ double confidence(); }