# coding: utf-8

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

from typing import List, Dict  # noqa: F401

from src.models.base_model_ import Model
from src import util


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

    Do not edit the class manually.
    """
    def __init__(self, log_time=None, details=None):  # noqa: E501
        """HealthInfo - a model defined in Swagger

        :param log_time: The log_time of this HealthInfo.  # noqa: E501
        :type log_time: datetime
        :param details: The details of this HealthInfo.  # noqa: E501
        :type details: str
        """
        self.swagger_types = {
            'log_time': datetime,
            'details': str
        }

        self.attribute_map = {
            'log_time': 'log_time',
            'details': 'details'
        }
        self._log_time = log_time
        self._details = details

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

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

    @property
    def log_time(self):
        """Gets the log_time of this HealthInfo.


        :return: The log_time of this HealthInfo.
        :rtype: datetime
        """
        return self._log_time

    @log_time.setter
    def log_time(self, log_time):
        """Sets the log_time of this HealthInfo.


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

        self._log_time = log_time

    @property
    def details(self):
        """Gets the details of this HealthInfo.


        :return: The details of this HealthInfo.
        :rtype: str
        """
        return self._details

    @details.setter
    def details(self, details):
        """Sets the details of this HealthInfo.


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

        self._details = details