# coding: utf-8

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

from typing import List, Dict  # noqa: F401

from opera.api.openapi.models.base_model_ import Model
from opera.api.openapi import util


class UnpackagingInput(Model):
    """NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

    Do not edit the class manually.
    """

    def __init__(self, destination=None, csar=None):  # noqa: E501
        """UnpackagingInput - a model defined in OpenAPI

        :param destination: The destination of this UnpackagingInput.  # noqa: E501
        :type destination: str
        :param csar: The csar of this UnpackagingInput.  # noqa: E501
        :type csar: str
        """
        self.openapi_types = {
            'destination': str,
            'csar': str
        }

        self.attribute_map = {
            'destination': 'destination',
            'csar': 'csar'
        }

        self._destination = destination
        self._csar = csar

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

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

    @property
    def destination(self):
        """Gets the destination of this UnpackagingInput.


        :return: The destination of this UnpackagingInput.
        :rtype: str
        """
        return self._destination

    @destination.setter
    def destination(self, destination):
        """Sets the destination of this UnpackagingInput.


        :param destination: The destination of this UnpackagingInput.
        :type destination: str
        """

        self._destination = destination

    @property
    def csar(self):
        """Gets the csar of this UnpackagingInput.


        :return: The csar of this UnpackagingInput.
        :rtype: str
        """
        return self._csar

    @csar.setter
    def csar(self, csar):
        """Sets the csar of this UnpackagingInput.


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

        self._csar = csar
