All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.azure.core.ResourceGroupCostManagementViewArgs Maven / Gradle / Ivy
Go to download
A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.azure.core;
import com.pulumi.azure.core.inputs.ResourceGroupCostManagementViewDatasetArgs;
import com.pulumi.azure.core.inputs.ResourceGroupCostManagementViewKpiArgs;
import com.pulumi.azure.core.inputs.ResourceGroupCostManagementViewPivotArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class ResourceGroupCostManagementViewArgs extends com.pulumi.resources.ResourceArgs {
public static final ResourceGroupCostManagementViewArgs Empty = new ResourceGroupCostManagementViewArgs();
/**
* Whether the costs data in the Cost Management View are accumulated over time. Changing this forces a new Cost Management View for a Resource Group to be created.
*
*/
@Import(name="accumulated", required=true)
private Output accumulated;
/**
* @return Whether the costs data in the Cost Management View are accumulated over time. Changing this forces a new Cost Management View for a Resource Group to be created.
*
*/
public Output accumulated() {
return this.accumulated;
}
/**
* Chart type of the main view in Cost Analysis. Possible values are `Area`, `GroupedColumn`, `Line`, `StackedColumn` and `Table`.
*
*/
@Import(name="chartType", required=true)
private Output chartType;
/**
* @return Chart type of the main view in Cost Analysis. Possible values are `Area`, `GroupedColumn`, `Line`, `StackedColumn` and `Table`.
*
*/
public Output chartType() {
return this.chartType;
}
/**
* A `dataset` block as defined below.
*
*/
@Import(name="dataset", required=true)
private Output dataset;
/**
* @return A `dataset` block as defined below.
*
*/
public Output dataset() {
return this.dataset;
}
/**
* User visible input name of the Cost Management View.
*
*/
@Import(name="displayName", required=true)
private Output displayName;
/**
* @return User visible input name of the Cost Management View.
*
*/
public Output displayName() {
return this.displayName;
}
/**
* One or more `kpi` blocks as defined below, to show in Cost Analysis UI.
*
*/
@Import(name="kpis")
private @Nullable Output> kpis;
/**
* @return One or more `kpi` blocks as defined below, to show in Cost Analysis UI.
*
*/
public Optional>> kpis() {
return Optional.ofNullable(this.kpis);
}
/**
* The name which should be used for this Cost Management View for a Resource Group. Changing this forces a new Cost Management View for a Resource Group to be created.
*
*/
@Import(name="name")
private @Nullable Output name;
/**
* @return The name which should be used for this Cost Management View for a Resource Group. Changing this forces a new Cost Management View for a Resource Group to be created.
*
*/
public Optional> name() {
return Optional.ofNullable(this.name);
}
/**
* One or more `pivot` blocks as defined below, containing the configuration of 3 sub-views in the Cost Analysis UI. Non table views should have three pivots.
*
*/
@Import(name="pivots")
private @Nullable Output> pivots;
/**
* @return One or more `pivot` blocks as defined below, containing the configuration of 3 sub-views in the Cost Analysis UI. Non table views should have three pivots.
*
*/
public Optional>> pivots() {
return Optional.ofNullable(this.pivots);
}
/**
* The type of the report. The only possible value is `Usage`.
*
*/
@Import(name="reportType", required=true)
private Output reportType;
/**
* @return The type of the report. The only possible value is `Usage`.
*
*/
public Output reportType() {
return this.reportType;
}
/**
* The ID of the Resource Group this View is scoped to. Changing this forces a new Cost Management View for a Resource Group to be created.
*
*/
@Import(name="resourceGroupId", required=true)
private Output resourceGroupId;
/**
* @return The ID of the Resource Group this View is scoped to. Changing this forces a new Cost Management View for a Resource Group to be created.
*
*/
public Output resourceGroupId() {
return this.resourceGroupId;
}
/**
* The time frame for pulling data for the report. Possible values are `Custom`, `MonthToDate`, `WeekToDate` and `YearToDate`.
*
*/
@Import(name="timeframe", required=true)
private Output timeframe;
/**
* @return The time frame for pulling data for the report. Possible values are `Custom`, `MonthToDate`, `WeekToDate` and `YearToDate`.
*
*/
public Output timeframe() {
return this.timeframe;
}
private ResourceGroupCostManagementViewArgs() {}
private ResourceGroupCostManagementViewArgs(ResourceGroupCostManagementViewArgs $) {
this.accumulated = $.accumulated;
this.chartType = $.chartType;
this.dataset = $.dataset;
this.displayName = $.displayName;
this.kpis = $.kpis;
this.name = $.name;
this.pivots = $.pivots;
this.reportType = $.reportType;
this.resourceGroupId = $.resourceGroupId;
this.timeframe = $.timeframe;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(ResourceGroupCostManagementViewArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private ResourceGroupCostManagementViewArgs $;
public Builder() {
$ = new ResourceGroupCostManagementViewArgs();
}
public Builder(ResourceGroupCostManagementViewArgs defaults) {
$ = new ResourceGroupCostManagementViewArgs(Objects.requireNonNull(defaults));
}
/**
* @param accumulated Whether the costs data in the Cost Management View are accumulated over time. Changing this forces a new Cost Management View for a Resource Group to be created.
*
* @return builder
*
*/
public Builder accumulated(Output accumulated) {
$.accumulated = accumulated;
return this;
}
/**
* @param accumulated Whether the costs data in the Cost Management View are accumulated over time. Changing this forces a new Cost Management View for a Resource Group to be created.
*
* @return builder
*
*/
public Builder accumulated(Boolean accumulated) {
return accumulated(Output.of(accumulated));
}
/**
* @param chartType Chart type of the main view in Cost Analysis. Possible values are `Area`, `GroupedColumn`, `Line`, `StackedColumn` and `Table`.
*
* @return builder
*
*/
public Builder chartType(Output chartType) {
$.chartType = chartType;
return this;
}
/**
* @param chartType Chart type of the main view in Cost Analysis. Possible values are `Area`, `GroupedColumn`, `Line`, `StackedColumn` and `Table`.
*
* @return builder
*
*/
public Builder chartType(String chartType) {
return chartType(Output.of(chartType));
}
/**
* @param dataset A `dataset` block as defined below.
*
* @return builder
*
*/
public Builder dataset(Output dataset) {
$.dataset = dataset;
return this;
}
/**
* @param dataset A `dataset` block as defined below.
*
* @return builder
*
*/
public Builder dataset(ResourceGroupCostManagementViewDatasetArgs dataset) {
return dataset(Output.of(dataset));
}
/**
* @param displayName User visible input name of the Cost Management View.
*
* @return builder
*
*/
public Builder displayName(Output displayName) {
$.displayName = displayName;
return this;
}
/**
* @param displayName User visible input name of the Cost Management View.
*
* @return builder
*
*/
public Builder displayName(String displayName) {
return displayName(Output.of(displayName));
}
/**
* @param kpis One or more `kpi` blocks as defined below, to show in Cost Analysis UI.
*
* @return builder
*
*/
public Builder kpis(@Nullable Output> kpis) {
$.kpis = kpis;
return this;
}
/**
* @param kpis One or more `kpi` blocks as defined below, to show in Cost Analysis UI.
*
* @return builder
*
*/
public Builder kpis(List kpis) {
return kpis(Output.of(kpis));
}
/**
* @param kpis One or more `kpi` blocks as defined below, to show in Cost Analysis UI.
*
* @return builder
*
*/
public Builder kpis(ResourceGroupCostManagementViewKpiArgs... kpis) {
return kpis(List.of(kpis));
}
/**
* @param name The name which should be used for this Cost Management View for a Resource Group. Changing this forces a new Cost Management View for a Resource Group to be created.
*
* @return builder
*
*/
public Builder name(@Nullable Output name) {
$.name = name;
return this;
}
/**
* @param name The name which should be used for this Cost Management View for a Resource Group. Changing this forces a new Cost Management View for a Resource Group to be created.
*
* @return builder
*
*/
public Builder name(String name) {
return name(Output.of(name));
}
/**
* @param pivots One or more `pivot` blocks as defined below, containing the configuration of 3 sub-views in the Cost Analysis UI. Non table views should have three pivots.
*
* @return builder
*
*/
public Builder pivots(@Nullable Output> pivots) {
$.pivots = pivots;
return this;
}
/**
* @param pivots One or more `pivot` blocks as defined below, containing the configuration of 3 sub-views in the Cost Analysis UI. Non table views should have three pivots.
*
* @return builder
*
*/
public Builder pivots(List pivots) {
return pivots(Output.of(pivots));
}
/**
* @param pivots One or more `pivot` blocks as defined below, containing the configuration of 3 sub-views in the Cost Analysis UI. Non table views should have three pivots.
*
* @return builder
*
*/
public Builder pivots(ResourceGroupCostManagementViewPivotArgs... pivots) {
return pivots(List.of(pivots));
}
/**
* @param reportType The type of the report. The only possible value is `Usage`.
*
* @return builder
*
*/
public Builder reportType(Output reportType) {
$.reportType = reportType;
return this;
}
/**
* @param reportType The type of the report. The only possible value is `Usage`.
*
* @return builder
*
*/
public Builder reportType(String reportType) {
return reportType(Output.of(reportType));
}
/**
* @param resourceGroupId The ID of the Resource Group this View is scoped to. Changing this forces a new Cost Management View for a Resource Group to be created.
*
* @return builder
*
*/
public Builder resourceGroupId(Output resourceGroupId) {
$.resourceGroupId = resourceGroupId;
return this;
}
/**
* @param resourceGroupId The ID of the Resource Group this View is scoped to. Changing this forces a new Cost Management View for a Resource Group to be created.
*
* @return builder
*
*/
public Builder resourceGroupId(String resourceGroupId) {
return resourceGroupId(Output.of(resourceGroupId));
}
/**
* @param timeframe The time frame for pulling data for the report. Possible values are `Custom`, `MonthToDate`, `WeekToDate` and `YearToDate`.
*
* @return builder
*
*/
public Builder timeframe(Output timeframe) {
$.timeframe = timeframe;
return this;
}
/**
* @param timeframe The time frame for pulling data for the report. Possible values are `Custom`, `MonthToDate`, `WeekToDate` and `YearToDate`.
*
* @return builder
*
*/
public Builder timeframe(String timeframe) {
return timeframe(Output.of(timeframe));
}
public ResourceGroupCostManagementViewArgs build() {
if ($.accumulated == null) {
throw new MissingRequiredPropertyException("ResourceGroupCostManagementViewArgs", "accumulated");
}
if ($.chartType == null) {
throw new MissingRequiredPropertyException("ResourceGroupCostManagementViewArgs", "chartType");
}
if ($.dataset == null) {
throw new MissingRequiredPropertyException("ResourceGroupCostManagementViewArgs", "dataset");
}
if ($.displayName == null) {
throw new MissingRequiredPropertyException("ResourceGroupCostManagementViewArgs", "displayName");
}
if ($.reportType == null) {
throw new MissingRequiredPropertyException("ResourceGroupCostManagementViewArgs", "reportType");
}
if ($.resourceGroupId == null) {
throw new MissingRequiredPropertyException("ResourceGroupCostManagementViewArgs", "resourceGroupId");
}
if ($.timeframe == null) {
throw new MissingRequiredPropertyException("ResourceGroupCostManagementViewArgs", "timeframe");
}
return $;
}
}
}