# coding: utf-8

"""
    Unofficial Degiro API

    Unofficial Degiro API  # noqa: E501

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

import pprint
import re  # noqa: F401

import six


class ConfigResponseData(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 = {
        'trading_url': 'str',
        'pa_url': 'str',
        'reporting_url': 'str',
        'payment_service_url': 'str',
        'cash_solutions_url': 'str',
        'product_search_url': 'str',
        'dictionary_url': 'str',
        'product_types_url': 'str',
        'companies_service_url': 'str',
        'i18n_url': 'str',
        'vwd_quotecast_service_url': 'str',
        'vwd_news_url': 'str',
        'vwd_gossips_url': 'str',
        'first_login_wizard_url': 'str',
        'task_manager_url': 'str',
        'landing_path': 'str',
        'beta_landing_path': 'str',
        'mobile_landing_path': 'str',
        'login_url': 'str',
        'session_id': 'str',
        'client_id': 'str'
    }

    attribute_map = {
        'trading_url': 'tradingUrl',
        'pa_url': 'paUrl',
        'reporting_url': 'reportingUrl',
        'payment_service_url': 'paymentServiceUrl',
        'cash_solutions_url': 'cashSolutionsUrl',
        'product_search_url': 'productSearchUrl',
        'dictionary_url': 'dictionaryUrl',
        'product_types_url': 'productTypesUrl',
        'companies_service_url': 'companiesServiceUrl',
        'i18n_url': 'i18nUrl',
        'vwd_quotecast_service_url': 'vwdQuotecastServiceUrl',
        'vwd_news_url': 'vwdNewsUrl',
        'vwd_gossips_url': 'vwdGossipsUrl',
        'first_login_wizard_url': 'firstLoginWizardUrl',
        'task_manager_url': 'taskManagerUrl',
        'landing_path': 'landingPath',
        'beta_landing_path': 'betaLandingPath',
        'mobile_landing_path': 'mobileLandingPath',
        'login_url': 'loginUrl',
        'session_id': 'sessionId',
        'client_id': 'clientId'
    }

    def __init__(self, trading_url=None, pa_url=None, reporting_url=None, payment_service_url=None, cash_solutions_url=None, product_search_url=None, dictionary_url=None, product_types_url=None, companies_service_url=None, i18n_url=None, vwd_quotecast_service_url=None, vwd_news_url=None, vwd_gossips_url=None, first_login_wizard_url=None, task_manager_url=None, landing_path=None, beta_landing_path=None, mobile_landing_path=None, login_url=None, session_id=None, client_id=None):  # noqa: E501
        """ConfigResponseData - a model defined in Swagger"""  # noqa: E501
        self._trading_url = None
        self._pa_url = None
        self._reporting_url = None
        self._payment_service_url = None
        self._cash_solutions_url = None
        self._product_search_url = None
        self._dictionary_url = None
        self._product_types_url = None
        self._companies_service_url = None
        self._i18n_url = None
        self._vwd_quotecast_service_url = None
        self._vwd_news_url = None
        self._vwd_gossips_url = None
        self._first_login_wizard_url = None
        self._task_manager_url = None
        self._landing_path = None
        self._beta_landing_path = None
        self._mobile_landing_path = None
        self._login_url = None
        self._session_id = None
        self._client_id = None
        self.discriminator = None
        if trading_url is not None:
            self.trading_url = trading_url
        if pa_url is not None:
            self.pa_url = pa_url
        if reporting_url is not None:
            self.reporting_url = reporting_url
        if payment_service_url is not None:
            self.payment_service_url = payment_service_url
        if cash_solutions_url is not None:
            self.cash_solutions_url = cash_solutions_url
        if product_search_url is not None:
            self.product_search_url = product_search_url
        if dictionary_url is not None:
            self.dictionary_url = dictionary_url
        if product_types_url is not None:
            self.product_types_url = product_types_url
        if companies_service_url is not None:
            self.companies_service_url = companies_service_url
        if i18n_url is not None:
            self.i18n_url = i18n_url
        if vwd_quotecast_service_url is not None:
            self.vwd_quotecast_service_url = vwd_quotecast_service_url
        if vwd_news_url is not None:
            self.vwd_news_url = vwd_news_url
        if vwd_gossips_url is not None:
            self.vwd_gossips_url = vwd_gossips_url
        if first_login_wizard_url is not None:
            self.first_login_wizard_url = first_login_wizard_url
        if task_manager_url is not None:
            self.task_manager_url = task_manager_url
        if landing_path is not None:
            self.landing_path = landing_path
        if beta_landing_path is not None:
            self.beta_landing_path = beta_landing_path
        if mobile_landing_path is not None:
            self.mobile_landing_path = mobile_landing_path
        if login_url is not None:
            self.login_url = login_url
        self.session_id = session_id
        self.client_id = client_id

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


        :return: The trading_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._trading_url

    @trading_url.setter
    def trading_url(self, trading_url):
        """Sets the trading_url of this ConfigResponseData.


        :param trading_url: The trading_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._trading_url = trading_url

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


        :return: The pa_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._pa_url

    @pa_url.setter
    def pa_url(self, pa_url):
        """Sets the pa_url of this ConfigResponseData.


        :param pa_url: The pa_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._pa_url = pa_url

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


        :return: The reporting_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._reporting_url

    @reporting_url.setter
    def reporting_url(self, reporting_url):
        """Sets the reporting_url of this ConfigResponseData.


        :param reporting_url: The reporting_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._reporting_url = reporting_url

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


        :return: The payment_service_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._payment_service_url

    @payment_service_url.setter
    def payment_service_url(self, payment_service_url):
        """Sets the payment_service_url of this ConfigResponseData.


        :param payment_service_url: The payment_service_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._payment_service_url = payment_service_url

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


        :return: The cash_solutions_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._cash_solutions_url

    @cash_solutions_url.setter
    def cash_solutions_url(self, cash_solutions_url):
        """Sets the cash_solutions_url of this ConfigResponseData.


        :param cash_solutions_url: The cash_solutions_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._cash_solutions_url = cash_solutions_url

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


        :return: The product_search_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._product_search_url

    @product_search_url.setter
    def product_search_url(self, product_search_url):
        """Sets the product_search_url of this ConfigResponseData.


        :param product_search_url: The product_search_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._product_search_url = product_search_url

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


        :return: The dictionary_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._dictionary_url

    @dictionary_url.setter
    def dictionary_url(self, dictionary_url):
        """Sets the dictionary_url of this ConfigResponseData.


        :param dictionary_url: The dictionary_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._dictionary_url = dictionary_url

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


        :return: The product_types_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._product_types_url

    @product_types_url.setter
    def product_types_url(self, product_types_url):
        """Sets the product_types_url of this ConfigResponseData.


        :param product_types_url: The product_types_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._product_types_url = product_types_url

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


        :return: The companies_service_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._companies_service_url

    @companies_service_url.setter
    def companies_service_url(self, companies_service_url):
        """Sets the companies_service_url of this ConfigResponseData.


        :param companies_service_url: The companies_service_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._companies_service_url = companies_service_url

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


        :return: The i18n_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._i18n_url

    @i18n_url.setter
    def i18n_url(self, i18n_url):
        """Sets the i18n_url of this ConfigResponseData.


        :param i18n_url: The i18n_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._i18n_url = i18n_url

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


        :return: The vwd_quotecast_service_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._vwd_quotecast_service_url

    @vwd_quotecast_service_url.setter
    def vwd_quotecast_service_url(self, vwd_quotecast_service_url):
        """Sets the vwd_quotecast_service_url of this ConfigResponseData.


        :param vwd_quotecast_service_url: The vwd_quotecast_service_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._vwd_quotecast_service_url = vwd_quotecast_service_url

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


        :return: The vwd_news_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._vwd_news_url

    @vwd_news_url.setter
    def vwd_news_url(self, vwd_news_url):
        """Sets the vwd_news_url of this ConfigResponseData.


        :param vwd_news_url: The vwd_news_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._vwd_news_url = vwd_news_url

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


        :return: The vwd_gossips_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._vwd_gossips_url

    @vwd_gossips_url.setter
    def vwd_gossips_url(self, vwd_gossips_url):
        """Sets the vwd_gossips_url of this ConfigResponseData.


        :param vwd_gossips_url: The vwd_gossips_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._vwd_gossips_url = vwd_gossips_url

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


        :return: The first_login_wizard_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._first_login_wizard_url

    @first_login_wizard_url.setter
    def first_login_wizard_url(self, first_login_wizard_url):
        """Sets the first_login_wizard_url of this ConfigResponseData.


        :param first_login_wizard_url: The first_login_wizard_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._first_login_wizard_url = first_login_wizard_url

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


        :return: The task_manager_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._task_manager_url

    @task_manager_url.setter
    def task_manager_url(self, task_manager_url):
        """Sets the task_manager_url of this ConfigResponseData.


        :param task_manager_url: The task_manager_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._task_manager_url = task_manager_url

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


        :return: The landing_path of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._landing_path

    @landing_path.setter
    def landing_path(self, landing_path):
        """Sets the landing_path of this ConfigResponseData.


        :param landing_path: The landing_path of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._landing_path = landing_path

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


        :return: The beta_landing_path of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._beta_landing_path

    @beta_landing_path.setter
    def beta_landing_path(self, beta_landing_path):
        """Sets the beta_landing_path of this ConfigResponseData.


        :param beta_landing_path: The beta_landing_path of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._beta_landing_path = beta_landing_path

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


        :return: The mobile_landing_path of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._mobile_landing_path

    @mobile_landing_path.setter
    def mobile_landing_path(self, mobile_landing_path):
        """Sets the mobile_landing_path of this ConfigResponseData.


        :param mobile_landing_path: The mobile_landing_path of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._mobile_landing_path = mobile_landing_path

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


        :return: The login_url of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._login_url

    @login_url.setter
    def login_url(self, login_url):
        """Sets the login_url of this ConfigResponseData.


        :param login_url: The login_url of this ConfigResponseData.  # noqa: E501
        :type: str
        """

        self._login_url = login_url

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


        :return: The session_id of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._session_id

    @session_id.setter
    def session_id(self, session_id):
        """Sets the session_id of this ConfigResponseData.


        :param session_id: The session_id of this ConfigResponseData.  # noqa: E501
        :type: str
        """
        if session_id is None:
            raise ValueError("Invalid value for `session_id`, must not be `None`")  # noqa: E501

        self._session_id = session_id

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


        :return: The client_id of this ConfigResponseData.  # noqa: E501
        :rtype: str
        """
        return self._client_id

    @client_id.setter
    def client_id(self, client_id):
        """Sets the client_id of this ConfigResponseData.


        :param client_id: The client_id of this ConfigResponseData.  # noqa: E501
        :type: str
        """
        if client_id is None:
            raise ValueError("Invalid value for `client_id`, must not be `None`")  # noqa: E501

        self._client_id = client_id

    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(ConfigResponseData, 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, ConfigResponseData):
            return False

        return self.__dict__ == other.__dict__

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