# coding: utf-8

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

from typing import List, Dict  # noqa: F401

from tapi_server.models.base_model_ import Model
from tapi_server import util


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

    Do not edit the class manually.
    """
    def __init__(self, cep_id_or_name: str=None, nep_id_or_name: str=None, node_id_or_name: str=None, topology_id_or_name: str=None):  # noqa: E501
        """TapiConnectivityGetconnectionendpointdetailsInput - a model defined in Swagger

        :param cep_id_or_name: The cep_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.  # noqa: E501
        :type cep_id_or_name: str
        :param nep_id_or_name: The nep_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.  # noqa: E501
        :type nep_id_or_name: str
        :param node_id_or_name: The node_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.  # noqa: E501
        :type node_id_or_name: str
        :param topology_id_or_name: The topology_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.  # noqa: E501
        :type topology_id_or_name: str
        """
        self.swagger_types = {
            'cep_id_or_name': str,
            'nep_id_or_name': str,
            'node_id_or_name': str,
            'topology_id_or_name': str
        }

        self.attribute_map = {
            'cep_id_or_name': 'cep-id-or-name',
            'nep_id_or_name': 'nep-id-or-name',
            'node_id_or_name': 'node-id-or-name',
            'topology_id_or_name': 'topology-id-or-name'
        }
        self._cep_id_or_name = cep_id_or_name
        self._nep_id_or_name = nep_id_or_name
        self._node_id_or_name = node_id_or_name
        self._topology_id_or_name = topology_id_or_name

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

        :param dikt: A dict.
        :type: dict
        :return: The tapi.connectivity.getconnectionendpointdetails.Input of this TapiConnectivityGetconnectionendpointdetailsInput.  # noqa: E501
        :rtype: TapiConnectivityGetconnectionendpointdetailsInput
        """
        return util.deserialize_model(dikt, cls)

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

        none  # noqa: E501

        :return: The cep_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.
        :rtype: str
        """
        return self._cep_id_or_name

    @cep_id_or_name.setter
    def cep_id_or_name(self, cep_id_or_name: str):
        """Sets the cep_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.

        none  # noqa: E501

        :param cep_id_or_name: The cep_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.
        :type cep_id_or_name: str
        """

        self._cep_id_or_name = cep_id_or_name

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

        none  # noqa: E501

        :return: The nep_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.
        :rtype: str
        """
        return self._nep_id_or_name

    @nep_id_or_name.setter
    def nep_id_or_name(self, nep_id_or_name: str):
        """Sets the nep_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.

        none  # noqa: E501

        :param nep_id_or_name: The nep_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.
        :type nep_id_or_name: str
        """

        self._nep_id_or_name = nep_id_or_name

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

        none  # noqa: E501

        :return: The node_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.
        :rtype: str
        """
        return self._node_id_or_name

    @node_id_or_name.setter
    def node_id_or_name(self, node_id_or_name: str):
        """Sets the node_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.

        none  # noqa: E501

        :param node_id_or_name: The node_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.
        :type node_id_or_name: str
        """

        self._node_id_or_name = node_id_or_name

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

        none  # noqa: E501

        :return: The topology_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.
        :rtype: str
        """
        return self._topology_id_or_name

    @topology_id_or_name.setter
    def topology_id_or_name(self, topology_id_or_name: str):
        """Sets the topology_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.

        none  # noqa: E501

        :param topology_id_or_name: The topology_id_or_name of this TapiConnectivityGetconnectionendpointdetailsInput.
        :type topology_id_or_name: str
        """

        self._topology_id_or_name = topology_id_or_name
