# 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 BaseStationNodeChild(Model):
    """BaseStationNodeChild.

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

    :param base_station_id: Required.
    :type base_station_id: long
    :param base_station_name:
    :type base_station_name: str
    :param base_station_serial_number: Required.
    :type base_station_serial_number: str
    :param base_station_receiver_serial_number: Required.
    :type base_station_receiver_serial_number: str
    """

    _validation = {
        'base_station_id': {'required': True},
        'base_station_serial_number': {'required': True, 'max_length': 8},
        'base_station_receiver_serial_number': {'required': True, 'max_length': 8},
    }

    _attribute_map = {
        'base_station_id': {'key': 'BaseStationId', 'type': 'long'},
        'base_station_name': {'key': 'BaseStationName', 'type': 'str'},
        'base_station_serial_number': {'key': 'BaseStationSerialNumber', 'type': 'str'},
        'base_station_receiver_serial_number': {'key': 'BaseStationReceiverSerialNumber', 'type': 'str'},
    }

    def __init__(self, **kwargs):
        super(BaseStationNodeChild, self).__init__(**kwargs)
        self.base_station_id = kwargs.get('base_station_id', None)
        self.base_station_name = kwargs.get('base_station_name', None)
        self.base_station_serial_number = kwargs.get('base_station_serial_number', None)
        self.base_station_receiver_serial_number = kwargs.get('base_station_receiver_serial_number', None)
