# coding: utf-8

"""
    EDIS public shipping API

    <div class=\"msgbox_important\"><p class=\"msgbox_importantInDiv\" data-mc-autonum=\"&lt;b&gt;&lt;span style=&quot;color: #dd1e31;&quot; class=&quot;mcFormatColor&quot;&gt;Important! &lt;/span&gt;&lt;/b&gt;\"><span class=\"autonumber\"><span><b><span style=\"color: #dd1e31;\" class=\"mcFormatColor\">Important!</span></b></span></span> This method is only available for Greater-China based sellers with an active eDIS account.</p></div><br>This API allows 3rd party developers in the Greater-China area to process package shipping details.  # noqa: E501

    OpenAPI spec version: 1.0.0
    
    Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

import pprint
import re  # noqa: F401

import six

class GetBatteryQualListResponsesData(object):
    """NOTE: This class is auto generated by the swagger code generator program.

    Do not edit the class manually.
    """
    """
    Attributes:
      swagger_types (dict): The key is attribute name
                            and the value is attribute type.
      attribute_map (dict): The key is attribute name
                            and the value is json key in definition.
    """
    swagger_types = {
        'href': 'str',
        'limit': 'int',
        'next': 'str',
        'offset': 'int',
        'prev': 'str',
        'qualifications': 'list[BatteryQualResponses]',
        'total': 'int'
    }

    attribute_map = {
        'href': 'href',
        'limit': 'limit',
        'next': 'next',
        'offset': 'offset',
        'prev': 'prev',
        'qualifications': 'qualifications',
        'total': 'total'
    }

    def __init__(self, href=None, limit=None, next=None, offset=None, prev=None, qualifications=None, total=None):  # noqa: E501
        """GetBatteryQualListResponsesData - a model defined in Swagger"""  # noqa: E501
        self._href = None
        self._limit = None
        self._next = None
        self._offset = None
        self._prev = None
        self._qualifications = None
        self._total = None
        self.discriminator = None
        if href is not None:
            self.href = href
        if limit is not None:
            self.limit = limit
        if next is not None:
            self.next = next
        if offset is not None:
            self.offset = offset
        if prev is not None:
            self.prev = prev
        if qualifications is not None:
            self.qualifications = qualifications
        if total is not None:
            self.total = total

    @property
    def href(self):
        """Gets the href of this GetBatteryQualListResponsesData.  # noqa: E501

        The URL to the current page of the result set.  # noqa: E501

        :return: The href of this GetBatteryQualListResponsesData.  # noqa: E501
        :rtype: str
        """
        return self._href

    @href.setter
    def href(self, href):
        """Sets the href of this GetBatteryQualListResponsesData.

        The URL to the current page of the result set.  # noqa: E501

        :param href: The href of this GetBatteryQualListResponsesData.  # noqa: E501
        :type: str
        """

        self._href = href

    @property
    def limit(self):
        """Gets the limit of this GetBatteryQualListResponsesData.  # noqa: E501

        The value of the <b>limit</b> parameter submitted in the request.  # noqa: E501

        :return: The limit of this GetBatteryQualListResponsesData.  # noqa: E501
        :rtype: int
        """
        return self._limit

    @limit.setter
    def limit(self, limit):
        """Sets the limit of this GetBatteryQualListResponsesData.

        The value of the <b>limit</b> parameter submitted in the request.  # noqa: E501

        :param limit: The limit of this GetBatteryQualListResponsesData.  # noqa: E501
        :type: int
        """

        self._limit = limit

    @property
    def next(self):
        """Gets the next of this GetBatteryQualListResponsesData.  # noqa: E501

        The URI for the next page of results. This value is returned if there is an additional page of results to return from the result set.  # noqa: E501

        :return: The next of this GetBatteryQualListResponsesData.  # noqa: E501
        :rtype: str
        """
        return self._next

    @next.setter
    def next(self, next):
        """Sets the next of this GetBatteryQualListResponsesData.

        The URI for the next page of results. This value is returned if there is an additional page of results to return from the result set.  # noqa: E501

        :param next: The next of this GetBatteryQualListResponsesData.  # noqa: E501
        :type: str
        """

        self._next = next

    @property
    def offset(self):
        """Gets the offset of this GetBatteryQualListResponsesData.  # noqa: E501

        The value of the <b>offset</b> parameter submitted in the request.  # noqa: E501

        :return: The offset of this GetBatteryQualListResponsesData.  # noqa: E501
        :rtype: int
        """
        return self._offset

    @offset.setter
    def offset(self, offset):
        """Sets the offset of this GetBatteryQualListResponsesData.

        The value of the <b>offset</b> parameter submitted in the request.  # noqa: E501

        :param offset: The offset of this GetBatteryQualListResponsesData.  # noqa: E501
        :type: int
        """

        self._offset = offset

    @property
    def prev(self):
        """Gets the prev of this GetBatteryQualListResponsesData.  # noqa: E501

        The URI for the previous page of results. This is returned if there is a previous page of results from the result set.  # noqa: E501

        :return: The prev of this GetBatteryQualListResponsesData.  # noqa: E501
        :rtype: str
        """
        return self._prev

    @prev.setter
    def prev(self, prev):
        """Sets the prev of this GetBatteryQualListResponsesData.

        The URI for the previous page of results. This is returned if there is a previous page of results from the result set.  # noqa: E501

        :param prev: The prev of this GetBatteryQualListResponsesData.  # noqa: E501
        :type: str
        """

        self._prev = prev

    @property
    def qualifications(self):
        """Gets the qualifications of this GetBatteryQualListResponsesData.  # noqa: E501

        This array returns information about each battery qualification associated with an eDIS account, such as the battery type, qualification name, and expiration date.  # noqa: E501

        :return: The qualifications of this GetBatteryQualListResponsesData.  # noqa: E501
        :rtype: list[BatteryQualResponses]
        """
        return self._qualifications

    @qualifications.setter
    def qualifications(self, qualifications):
        """Sets the qualifications of this GetBatteryQualListResponsesData.

        This array returns information about each battery qualification associated with an eDIS account, such as the battery type, qualification name, and expiration date.  # noqa: E501

        :param qualifications: The qualifications of this GetBatteryQualListResponsesData.  # noqa: E501
        :type: list[BatteryQualResponses]
        """

        self._qualifications = qualifications

    @property
    def total(self):
        """Gets the total of this GetBatteryQualListResponsesData.  # noqa: E501

        The total number of results that match the input criteria.  # noqa: E501

        :return: The total of this GetBatteryQualListResponsesData.  # noqa: E501
        :rtype: int
        """
        return self._total

    @total.setter
    def total(self, total):
        """Sets the total of this GetBatteryQualListResponsesData.

        The total number of results that match the input criteria.  # noqa: E501

        :param total: The total of this GetBatteryQualListResponsesData.  # noqa: E501
        :type: int
        """

        self._total = total

    def to_dict(self):
        """Returns the model properties as a dict"""
        result = {}

        for attr, _ in six.iteritems(self.swagger_types):
            value = getattr(self, attr)
            if isinstance(value, list):
                result[attr] = list(map(
                    lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
                    value
                ))
            elif hasattr(value, "to_dict"):
                result[attr] = value.to_dict()
            elif isinstance(value, dict):
                result[attr] = dict(map(
                    lambda item: (item[0], item[1].to_dict())
                    if hasattr(item[1], "to_dict") else item,
                    value.items()
                ))
            else:
                result[attr] = value
        if issubclass(GetBatteryQualListResponsesData, dict):
            for key, value in self.items():
                result[key] = value

        return result

    def to_str(self):
        """Returns the string representation of the model"""
        return pprint.pformat(self.to_dict())

    def __repr__(self):
        """For `print` and `pprint`"""
        return self.to_str()

    def __eq__(self, other):
        """Returns true if both objects are equal"""
        if not isinstance(other, GetBatteryQualListResponsesData):
            return False

        return self.__dict__ == other.__dict__

    def __ne__(self, other):
        """Returns true if both objects are not equal"""
        return not self == other
