# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class CopyMeterRequest(Model):
    """Defines a meter whose use or cost will be copied when calculating a bill
    The meter may have a commodity which is different than the destination
    meter
    When doing the calculation we will sum the use or cost across all accounts
    this meter is associated with for the billing period begin run.

    All required parameters must be populated in order to send to Azure.

    :param meter_id: Required. Meter from which use or cost will be copied
     <span class='property-internal'>Required</span> <span
     class='property-internal'>Topmost (LogicalDevice)</span>
    :type meter_id: int
    :param percentage: Required. Percentage of use or cost to copy
     Pass the percentage value
     For example 50.5% should be 50.5 <span
     class='property-internal'>Required</span> <span class='property-info'>Max
     scale of 8</span>
    :type percentage: float
    """

    _validation = {
        'meter_id': {'required': True},
        'percentage': {'required': True},
    }

    _attribute_map = {
        'meter_id': {'key': 'meterId', 'type': 'int'},
        'percentage': {'key': 'percentage', 'type': 'float'},
    }

    def __init__(self, **kwargs):
        super(CopyMeterRequest, self).__init__(**kwargs)
        self.meter_id = kwargs.get('meter_id', None)
        self.percentage = kwargs.get('percentage', None)
