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

com.azure.resourcemanager.recoveryservicesbackup.models.TieringCostRehydrationInfo Maven / Gradle / Ivy

Go to download

This package contains Microsoft Azure SDK for RecoveryServicesBackup Management SDK. For documentation on how to use this package, please see https://aka.ms/azsdk/java/mgmt. Open API 2.0 Specs for Azure RecoveryServices Backup service. Package tag package-2024-04.

There is a newer version: 1.5.0
Show 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.recoveryservicesbackup.models;

import com.azure.core.annotation.Fluent;
import com.azure.resourcemanager.recoveryservicesbackup.fluent.models.TieringCostInfoInner;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.annotation.JsonTypeName;

/**
 * Response parameters for tiering cost info for rehydration.
 */
@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "objectType")
@JsonTypeName("TieringCostRehydrationInfo")
@Fluent
public final class TieringCostRehydrationInfo extends TieringCostInfoInner {
    /*
     * Rehydration size in bytes
     */
    @JsonProperty(value = "rehydrationSizeInBytes", required = true)
    private long rehydrationSizeInBytes;

    /*
     * Source tier to target tier rehydration cost per GB per month
     */
    @JsonProperty(value = "retailRehydrationCostPerGBPerMonth", required = true)
    private double retailRehydrationCostPerGBPerMonth;

    /**
     * Creates an instance of TieringCostRehydrationInfo class.
     */
    public TieringCostRehydrationInfo() {
    }

    /**
     * Get the rehydrationSizeInBytes property: Rehydration size in bytes.
     * 
     * @return the rehydrationSizeInBytes value.
     */
    public long rehydrationSizeInBytes() {
        return this.rehydrationSizeInBytes;
    }

    /**
     * Set the rehydrationSizeInBytes property: Rehydration size in bytes.
     * 
     * @param rehydrationSizeInBytes the rehydrationSizeInBytes value to set.
     * @return the TieringCostRehydrationInfo object itself.
     */
    public TieringCostRehydrationInfo withRehydrationSizeInBytes(long rehydrationSizeInBytes) {
        this.rehydrationSizeInBytes = rehydrationSizeInBytes;
        return this;
    }

    /**
     * Get the retailRehydrationCostPerGBPerMonth property: Source tier to target tier rehydration cost per GB per
     * month.
     * 
     * @return the retailRehydrationCostPerGBPerMonth value.
     */
    public double retailRehydrationCostPerGBPerMonth() {
        return this.retailRehydrationCostPerGBPerMonth;
    }

    /**
     * Set the retailRehydrationCostPerGBPerMonth property: Source tier to target tier rehydration cost per GB per
     * month.
     * 
     * @param retailRehydrationCostPerGBPerMonth the retailRehydrationCostPerGBPerMonth value to set.
     * @return the TieringCostRehydrationInfo object itself.
     */
    public TieringCostRehydrationInfo
        withRetailRehydrationCostPerGBPerMonth(double retailRehydrationCostPerGBPerMonth) {
        this.retailRehydrationCostPerGBPerMonth = retailRehydrationCostPerGBPerMonth;
        return this;
    }

    /**
     * Validates the instance.
     * 
     * @throws IllegalArgumentException thrown if the instance is not valid.
     */
    @Override
    public void validate() {
        super.validate();
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy