# coding: utf-8

from __future__ import absolute_import
from datetime import date, datetime  # noqa: F401

from typing import List, Dict  # noqa: F401

from swagger_server.models.base_model_ import Model
from swagger_server import util


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

    Do not edit the class manually.
    """
    def __init__(self, name: str=None, place: str=None, category: str=None):  # noqa: E501
        """Sport - a model defined in Swagger

        :param name: The name of this Sport.  # noqa: E501
        :type name: str
        :param place: The place of this Sport.  # noqa: E501
        :type place: str
        :param category: The category of this Sport.  # noqa: E501
        :type category: str
        """
        self.swagger_types = {
            'name': str,
            'place': str,
            'category': str
        }

        self.attribute_map = {
            'name': 'name',
            'place': 'place',
            'category': 'category'
        }
        self._name = name
        self._place = place
        self._category = category

    @classmethod
    def from_dict(cls, dikt) -> 'Sport':
        """Returns the dict as a model

        :param dikt: A dict.
        :type: dict
        :return: The Sport of this Sport.  # noqa: E501
        :rtype: Sport
        """
        return util.deserialize_model(dikt, cls)

    @property
    def name(self) -> str:
        """Gets the name of this Sport.


        :return: The name of this Sport.
        :rtype: str
        """
        return self._name

    @name.setter
    def name(self, name: str):
        """Sets the name of this Sport.


        :param name: The name of this Sport.
        :type name: str
        """

        self._name = name

    @property
    def place(self) -> str:
        """Gets the place of this Sport.


        :return: The place of this Sport.
        :rtype: str
        """
        return self._place

    @place.setter
    def place(self, place: str):
        """Sets the place of this Sport.


        :param place: The place of this Sport.
        :type place: str
        """

        self._place = place

    @property
    def category(self) -> str:
        """Gets the category of this Sport.


        :return: The category of this Sport.
        :rtype: str
        """
        return self._category

    @category.setter
    def category(self, category: str):
        """Sets the category of this Sport.


        :param category: The category of this Sport.
        :type category: str
        """

        self._category = category