com.azure.resourcemanager.costmanagement.fluent.models.ReportManifest Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-resourcemanager-costmanagement Show documentation
Show all versions of azure-resourcemanager-costmanagement Show documentation
This package contains Microsoft Azure SDK for CostManagement Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. CostManagement management client provides access to CostManagement resources for Azure Enterprise Subscriptions. Package tag package-2022-10.
The newest version!
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.
package com.azure.resourcemanager.costmanagement.fluent.models;
import com.azure.core.annotation.Fluent;
import com.azure.resourcemanager.costmanagement.models.BlobInfo;
import com.azure.resourcemanager.costmanagement.models.CostDetailsDataFormat;
import com.azure.resourcemanager.costmanagement.models.GenerateCostDetailsReportRequestDefinition;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;
/** The manifest of the report generated by the operation. */
@Fluent
public final class ReportManifest {
/*
* The Manifest version.
*/
@JsonProperty(value = "manifestVersion")
private String manifestVersion;
/*
* The data format of the report
*/
@JsonProperty(value = "dataFormat")
private CostDetailsDataFormat dataFormat;
/*
* The total number of bytes in all blobs.
*/
@JsonProperty(value = "byteCount")
private Long byteCount;
/*
* The total number of blobs.
*/
@JsonProperty(value = "blobCount")
private Integer blobCount;
/*
* Is the data in compressed format.
*/
@JsonProperty(value = "compressData")
private Boolean compressData;
/*
* The context of the Cost Details request.
*/
@JsonProperty(value = "requestContext")
private RequestContext innerRequestContext;
/*
* List of blob information generated by this operation.
*/
@JsonProperty(value = "blobs")
private List blobs;
/** Creates an instance of ReportManifest class. */
public ReportManifest() {
}
/**
* Get the manifestVersion property: The Manifest version.
*
* @return the manifestVersion value.
*/
public String manifestVersion() {
return this.manifestVersion;
}
/**
* Set the manifestVersion property: The Manifest version.
*
* @param manifestVersion the manifestVersion value to set.
* @return the ReportManifest object itself.
*/
public ReportManifest withManifestVersion(String manifestVersion) {
this.manifestVersion = manifestVersion;
return this;
}
/**
* Get the dataFormat property: The data format of the report.
*
* @return the dataFormat value.
*/
public CostDetailsDataFormat dataFormat() {
return this.dataFormat;
}
/**
* Set the dataFormat property: The data format of the report.
*
* @param dataFormat the dataFormat value to set.
* @return the ReportManifest object itself.
*/
public ReportManifest withDataFormat(CostDetailsDataFormat dataFormat) {
this.dataFormat = dataFormat;
return this;
}
/**
* Get the byteCount property: The total number of bytes in all blobs.
*
* @return the byteCount value.
*/
public Long byteCount() {
return this.byteCount;
}
/**
* Set the byteCount property: The total number of bytes in all blobs.
*
* @param byteCount the byteCount value to set.
* @return the ReportManifest object itself.
*/
public ReportManifest withByteCount(Long byteCount) {
this.byteCount = byteCount;
return this;
}
/**
* Get the blobCount property: The total number of blobs.
*
* @return the blobCount value.
*/
public Integer blobCount() {
return this.blobCount;
}
/**
* Set the blobCount property: The total number of blobs.
*
* @param blobCount the blobCount value to set.
* @return the ReportManifest object itself.
*/
public ReportManifest withBlobCount(Integer blobCount) {
this.blobCount = blobCount;
return this;
}
/**
* Get the compressData property: Is the data in compressed format.
*
* @return the compressData value.
*/
public Boolean compressData() {
return this.compressData;
}
/**
* Set the compressData property: Is the data in compressed format.
*
* @param compressData the compressData value to set.
* @return the ReportManifest object itself.
*/
public ReportManifest withCompressData(Boolean compressData) {
this.compressData = compressData;
return this;
}
/**
* Get the innerRequestContext property: The context of the Cost Details request.
*
* @return the innerRequestContext value.
*/
private RequestContext innerRequestContext() {
return this.innerRequestContext;
}
/**
* Get the blobs property: List of blob information generated by this operation.
*
* @return the blobs value.
*/
public List blobs() {
return this.blobs;
}
/**
* Set the blobs property: List of blob information generated by this operation.
*
* @param blobs the blobs value to set.
* @return the ReportManifest object itself.
*/
public ReportManifest withBlobs(List blobs) {
this.blobs = blobs;
return this;
}
/**
* Get the requestScope property: The request scope of the request.
*
* @return the requestScope value.
*/
public String requestScope() {
return this.innerRequestContext() == null ? null : this.innerRequestContext().requestScope();
}
/**
* Set the requestScope property: The request scope of the request.
*
* @param requestScope the requestScope value to set.
* @return the ReportManifest object itself.
*/
public ReportManifest withRequestScope(String requestScope) {
if (this.innerRequestContext() == null) {
this.innerRequestContext = new RequestContext();
}
this.innerRequestContext().withRequestScope(requestScope);
return this;
}
/**
* Get the requestBody property: The request payload body provided in Cost Details call.
*
* @return the requestBody value.
*/
public GenerateCostDetailsReportRequestDefinition requestBody() {
return this.innerRequestContext() == null ? null : this.innerRequestContext().requestBody();
}
/**
* Set the requestBody property: The request payload body provided in Cost Details call.
*
* @param requestBody the requestBody value to set.
* @return the ReportManifest object itself.
*/
public ReportManifest withRequestBody(GenerateCostDetailsReportRequestDefinition requestBody) {
if (this.innerRequestContext() == null) {
this.innerRequestContext = new RequestContext();
}
this.innerRequestContext().withRequestBody(requestBody);
return this;
}
/**
* Validates the instance.
*
* @throws IllegalArgumentException thrown if the instance is not valid.
*/
public void validate() {
if (innerRequestContext() != null) {
innerRequestContext().validate();
}
if (blobs() != null) {
blobs().forEach(e -> e.validate());
}
}
}