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

com.amazonaws.services.costandusagereport.model.PutReportDefinitionRequest Maven / Gradle / Ivy

Go to download

The AWS Java SDK for AWS Cost and Usage Report module holds the client classes that are used for communicating with AWS Cost and Usage Report service.

The newest version!
/*
 * Copyright 2020-2025 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.costandusagereport.model;

import java.io.Serializable;
import javax.annotation.Generated;

import com.amazonaws.AmazonWebServiceRequest;

/**
 * 

* Creates a Cost and Usage Report. *

* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class PutReportDefinitionRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *

* Represents the output of the PutReportDefinition operation. The content consists of the detailed metadata and * data file information. *

*/ private ReportDefinition reportDefinition; /** *

* The tags to be assigned to the report definition resource. *

*/ private java.util.List tags; /** *

* Represents the output of the PutReportDefinition operation. The content consists of the detailed metadata and * data file information. *

* * @param reportDefinition * Represents the output of the PutReportDefinition operation. The content consists of the detailed metadata * and data file information. */ public void setReportDefinition(ReportDefinition reportDefinition) { this.reportDefinition = reportDefinition; } /** *

* Represents the output of the PutReportDefinition operation. The content consists of the detailed metadata and * data file information. *

* * @return Represents the output of the PutReportDefinition operation. The content consists of the detailed metadata * and data file information. */ public ReportDefinition getReportDefinition() { return this.reportDefinition; } /** *

* Represents the output of the PutReportDefinition operation. The content consists of the detailed metadata and * data file information. *

* * @param reportDefinition * Represents the output of the PutReportDefinition operation. The content consists of the detailed metadata * and data file information. * @return Returns a reference to this object so that method calls can be chained together. */ public PutReportDefinitionRequest withReportDefinition(ReportDefinition reportDefinition) { setReportDefinition(reportDefinition); return this; } /** *

* The tags to be assigned to the report definition resource. *

* * @return The tags to be assigned to the report definition resource. */ public java.util.List getTags() { return tags; } /** *

* The tags to be assigned to the report definition resource. *

* * @param tags * The tags to be assigned to the report definition resource. */ public void setTags(java.util.Collection tags) { if (tags == null) { this.tags = null; return; } this.tags = new java.util.ArrayList(tags); } /** *

* The tags to be assigned to the report definition resource. *

*

* NOTE: This method appends the values to the existing list (if any). Use * {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the * existing values. *

* * @param tags * The tags to be assigned to the report definition resource. * @return Returns a reference to this object so that method calls can be chained together. */ public PutReportDefinitionRequest withTags(Tag... tags) { if (this.tags == null) { setTags(new java.util.ArrayList(tags.length)); } for (Tag ele : tags) { this.tags.add(ele); } return this; } /** *

* The tags to be assigned to the report definition resource. *

* * @param tags * The tags to be assigned to the report definition resource. * @return Returns a reference to this object so that method calls can be chained together. */ public PutReportDefinitionRequest withTags(java.util.Collection tags) { setTags(tags); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getReportDefinition() != null) sb.append("ReportDefinition: ").append(getReportDefinition()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof PutReportDefinitionRequest == false) return false; PutReportDefinitionRequest other = (PutReportDefinitionRequest) obj; if (other.getReportDefinition() == null ^ this.getReportDefinition() == null) return false; if (other.getReportDefinition() != null && other.getReportDefinition().equals(this.getReportDefinition()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getReportDefinition() == null) ? 0 : getReportDefinition().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); return hashCode; } @Override public PutReportDefinitionRequest clone() { return (PutReportDefinitionRequest) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy