<reponame>jensenbox/python-jamf
# coding: utf-8

"""
    Jamf Pro API

    ## Overview This is a sample Jamf Pro server which allows for usage without any authentication. The Jamf Pro environment which supports the Try it Out functionality does not run the current beta version of Jamf Pro, thus any newly added endpoints will result in an error and should be used soley for documentation purposes.   # noqa: E501

    The version of the OpenAPI document: 10.25.0
    Generated by: https://openapi-generator.tech
"""


import pprint
import re  # noqa: F401

import six

from jamf.configuration import Configuration


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

    Do not edit the class manually.
    """

    """
    Attributes:
      openapi_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.
    """
    openapi_types = {
        'assign_names_using': 'str',
        'prestage_device_names': 'list[MobileDevicePrestageNameV2]',
        'device_name_prefix': 'str',
        'device_name_suffix': 'str',
        'single_device_name': 'str',
        'manage_names': 'bool',
        'device_naming_configured': 'bool'
    }

    attribute_map = {
        'assign_names_using': 'assignNamesUsing',
        'prestage_device_names': 'prestageDeviceNames',
        'device_name_prefix': 'deviceNamePrefix',
        'device_name_suffix': 'deviceNameSuffix',
        'single_device_name': 'singleDeviceName',
        'manage_names': 'manageNames',
        'device_naming_configured': 'deviceNamingConfigured'
    }

    def __init__(self, assign_names_using=None, prestage_device_names=None, device_name_prefix=None, device_name_suffix=None, single_device_name=None, manage_names=None, device_naming_configured=None, local_vars_configuration=None):  # noqa: E501
        """MobileDevicePrestageNamesV2 - a model defined in OpenAPI"""  # noqa: E501
        if local_vars_configuration is None:
            local_vars_configuration = Configuration()
        self.local_vars_configuration = local_vars_configuration

        self._assign_names_using = None
        self._prestage_device_names = None
        self._device_name_prefix = None
        self._device_name_suffix = None
        self._single_device_name = None
        self._manage_names = None
        self._device_naming_configured = None
        self.discriminator = None

        if assign_names_using is not None:
            self.assign_names_using = assign_names_using
        if prestage_device_names is not None:
            self.prestage_device_names = prestage_device_names
        if device_name_prefix is not None:
            self.device_name_prefix = device_name_prefix
        if device_name_suffix is not None:
            self.device_name_suffix = device_name_suffix
        if single_device_name is not None:
            self.single_device_name = single_device_name
        if manage_names is not None:
            self.manage_names = manage_names
        if device_naming_configured is not None:
            self.device_naming_configured = device_naming_configured

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


        :return: The assign_names_using of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: str
        """
        return self._assign_names_using

    @assign_names_using.setter
    def assign_names_using(self, assign_names_using):
        """Sets the assign_names_using of this MobileDevicePrestageNamesV2.


        :param assign_names_using: The assign_names_using of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type assign_names_using: str
        """

        self._assign_names_using = assign_names_using

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


        :return: The prestage_device_names of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: list[MobileDevicePrestageNameV2]
        """
        return self._prestage_device_names

    @prestage_device_names.setter
    def prestage_device_names(self, prestage_device_names):
        """Sets the prestage_device_names of this MobileDevicePrestageNamesV2.


        :param prestage_device_names: The prestage_device_names of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type prestage_device_names: list[MobileDevicePrestageNameV2]
        """

        self._prestage_device_names = prestage_device_names

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


        :return: The device_name_prefix of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: str
        """
        return self._device_name_prefix

    @device_name_prefix.setter
    def device_name_prefix(self, device_name_prefix):
        """Sets the device_name_prefix of this MobileDevicePrestageNamesV2.


        :param device_name_prefix: The device_name_prefix of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type device_name_prefix: str
        """

        self._device_name_prefix = device_name_prefix

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


        :return: The device_name_suffix of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: str
        """
        return self._device_name_suffix

    @device_name_suffix.setter
    def device_name_suffix(self, device_name_suffix):
        """Sets the device_name_suffix of this MobileDevicePrestageNamesV2.


        :param device_name_suffix: The device_name_suffix of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type device_name_suffix: str
        """

        self._device_name_suffix = device_name_suffix

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


        :return: The single_device_name of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: str
        """
        return self._single_device_name

    @single_device_name.setter
    def single_device_name(self, single_device_name):
        """Sets the single_device_name of this MobileDevicePrestageNamesV2.


        :param single_device_name: The single_device_name of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type single_device_name: str
        """

        self._single_device_name = single_device_name

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


        :return: The manage_names of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: bool
        """
        return self._manage_names

    @manage_names.setter
    def manage_names(self, manage_names):
        """Sets the manage_names of this MobileDevicePrestageNamesV2.


        :param manage_names: The manage_names of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type manage_names: bool
        """

        self._manage_names = manage_names

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


        :return: The device_naming_configured of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: bool
        """
        return self._device_naming_configured

    @device_naming_configured.setter
    def device_naming_configured(self, device_naming_configured):
        """Sets the device_naming_configured of this MobileDevicePrestageNamesV2.


        :param device_naming_configured: The device_naming_configured of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type device_naming_configured: bool
        """

        self._device_naming_configured = device_naming_configured

    def to_dict(self):
        """Returns the model properties as a dict"""
        result = {}

        for attr, _ in six.iteritems(self.openapi_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

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

        return self.to_dict() == other.to_dict()

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

        return self.to_dict() != other.to_dict()

# coding: utf-8

"""
    Jamf Pro API

    ## Overview This is a sample Jamf Pro server which allows for usage without any authentication. The Jamf Pro environment which supports the Try it Out functionality does not run the current beta version of Jamf Pro, thus any newly added endpoints will result in an error and should be used soley for documentation purposes.   # noqa: E501

    The version of the OpenAPI document: 10.25.0
    Generated by: https://openapi-generator.tech
"""


import pprint
import re  # noqa: F401

import six

from jamf.configuration import Configuration


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

    Do not edit the class manually.
    """

    """
    Attributes:
      openapi_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.
    """
    openapi_types = {
        'assign_names_using': 'str',
        'prestage_device_names': 'list[MobileDevicePrestageNameV2]',
        'device_name_prefix': 'str',
        'device_name_suffix': 'str',
        'single_device_name': 'str',
        'manage_names': 'bool',
        'device_naming_configured': 'bool'
    }

    attribute_map = {
        'assign_names_using': 'assignNamesUsing',
        'prestage_device_names': 'prestageDeviceNames',
        'device_name_prefix': 'deviceNamePrefix',
        'device_name_suffix': 'deviceNameSuffix',
        'single_device_name': 'singleDeviceName',
        'manage_names': 'manageNames',
        'device_naming_configured': 'deviceNamingConfigured'
    }

    def __init__(self, assign_names_using=None, prestage_device_names=None, device_name_prefix=None, device_name_suffix=None, single_device_name=None, manage_names=None, device_naming_configured=None, local_vars_configuration=None):  # noqa: E501
        """MobileDevicePrestageNamesV2 - a model defined in OpenAPI"""  # noqa: E501
        if local_vars_configuration is None:
            local_vars_configuration = Configuration()
        self.local_vars_configuration = local_vars_configuration

        self._assign_names_using = None
        self._prestage_device_names = None
        self._device_name_prefix = None
        self._device_name_suffix = None
        self._single_device_name = None
        self._manage_names = None
        self._device_naming_configured = None
        self.discriminator = None

        if assign_names_using is not None:
            self.assign_names_using = assign_names_using
        if prestage_device_names is not None:
            self.prestage_device_names = prestage_device_names
        if device_name_prefix is not None:
            self.device_name_prefix = device_name_prefix
        if device_name_suffix is not None:
            self.device_name_suffix = device_name_suffix
        if single_device_name is not None:
            self.single_device_name = single_device_name
        if manage_names is not None:
            self.manage_names = manage_names
        if device_naming_configured is not None:
            self.device_naming_configured = device_naming_configured

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


        :return: The assign_names_using of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: str
        """
        return self._assign_names_using

    @assign_names_using.setter
    def assign_names_using(self, assign_names_using):
        """Sets the assign_names_using of this MobileDevicePrestageNamesV2.


        :param assign_names_using: The assign_names_using of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type assign_names_using: str
        """

        self._assign_names_using = assign_names_using

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


        :return: The prestage_device_names of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: list[MobileDevicePrestageNameV2]
        """
        return self._prestage_device_names

    @prestage_device_names.setter
    def prestage_device_names(self, prestage_device_names):
        """Sets the prestage_device_names of this MobileDevicePrestageNamesV2.


        :param prestage_device_names: The prestage_device_names of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type prestage_device_names: list[MobileDevicePrestageNameV2]
        """

        self._prestage_device_names = prestage_device_names

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


        :return: The device_name_prefix of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: str
        """
        return self._device_name_prefix

    @device_name_prefix.setter
    def device_name_prefix(self, device_name_prefix):
        """Sets the device_name_prefix of this MobileDevicePrestageNamesV2.


        :param device_name_prefix: The device_name_prefix of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type device_name_prefix: str
        """

        self._device_name_prefix = device_name_prefix

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


        :return: The device_name_suffix of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: str
        """
        return self._device_name_suffix

    @device_name_suffix.setter
    def device_name_suffix(self, device_name_suffix):
        """Sets the device_name_suffix of this MobileDevicePrestageNamesV2.


        :param device_name_suffix: The device_name_suffix of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type device_name_suffix: str
        """

        self._device_name_suffix = device_name_suffix

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


        :return: The single_device_name of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: str
        """
        return self._single_device_name

    @single_device_name.setter
    def single_device_name(self, single_device_name):
        """Sets the single_device_name of this MobileDevicePrestageNamesV2.


        :param single_device_name: The single_device_name of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type single_device_name: str
        """

        self._single_device_name = single_device_name

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


        :return: The manage_names of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: bool
        """
        return self._manage_names

    @manage_names.setter
    def manage_names(self, manage_names):
        """Sets the manage_names of this MobileDevicePrestageNamesV2.


        :param manage_names: The manage_names of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type manage_names: bool
        """

        self._manage_names = manage_names

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


        :return: The device_naming_configured of this MobileDevicePrestageNamesV2.  # noqa: E501
        :rtype: bool
        """
        return self._device_naming_configured

    @device_naming_configured.setter
    def device_naming_configured(self, device_naming_configured):
        """Sets the device_naming_configured of this MobileDevicePrestageNamesV2.


        :param device_naming_configured: The device_naming_configured of this MobileDevicePrestageNamesV2.  # noqa: E501
        :type device_naming_configured: bool
        """

        self._device_naming_configured = device_naming_configured

    def to_dict(self):
        """Returns the model properties as a dict"""
        result = {}

        for attr, _ in six.iteritems(self.openapi_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

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

        return self.to_dict() == other.to_dict()

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

        return self.to_dict() != other.to_dict()
# coding: utf-8 Jamf Pro API      ## Overview This is a sample Jamf Pro server which allows for usage without any authentication. The Jamf Pro environment which supports the Try it Out functionality does not run the current beta version of Jamf Pro, thus any newly added endpoints will result in an error and should be used soley for documentation purposes.   # noqa: E501      The version of the OpenAPI document: 10.25.0     Generated by: https://openapi-generator.tech # noqa: F401 NOTE: This class is auto generated by OpenAPI Generator.     Ref: https://openapi-generator.tech      Do not edit the class manually. Attributes:       openapi_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. # noqa: E501 MobileDevicePrestageNamesV2 - a model defined in OpenAPI # noqa: E501 Gets the assign_names_using of this MobileDevicePrestageNamesV2.  # noqa: E501           :return: The assign_names_using of this MobileDevicePrestageNamesV2.  # noqa: E501         :rtype: str Sets the assign_names_using of this MobileDevicePrestageNamesV2.           :param assign_names_using: The assign_names_using of this MobileDevicePrestageNamesV2.  # noqa: E501         :type assign_names_using: str Gets the prestage_device_names of this MobileDevicePrestageNamesV2.  # noqa: E501           :return: The prestage_device_names of this MobileDevicePrestageNamesV2.  # noqa: E501         :rtype: list[MobileDevicePrestageNameV2] Sets the prestage_device_names of this MobileDevicePrestageNamesV2.           :param prestage_device_names: The prestage_device_names of this MobileDevicePrestageNamesV2.  # noqa: E501         :type prestage_device_names: list[MobileDevicePrestageNameV2] Gets the device_name_prefix of this MobileDevicePrestageNamesV2.  # noqa: E501           :return: The device_name_prefix of this MobileDevicePrestageNamesV2.  # noqa: E501         :rtype: str Sets the device_name_prefix of this MobileDevicePrestageNamesV2.           :param device_name_prefix: The device_name_prefix of this MobileDevicePrestageNamesV2.  # noqa: E501         :type device_name_prefix: str Gets the device_name_suffix of this MobileDevicePrestageNamesV2.  # noqa: E501           :return: The device_name_suffix of this MobileDevicePrestageNamesV2.  # noqa: E501         :rtype: str Sets the device_name_suffix of this MobileDevicePrestageNamesV2.           :param device_name_suffix: The device_name_suffix of this MobileDevicePrestageNamesV2.  # noqa: E501         :type device_name_suffix: str Gets the single_device_name of this MobileDevicePrestageNamesV2.  # noqa: E501           :return: The single_device_name of this MobileDevicePrestageNamesV2.  # noqa: E501         :rtype: str Sets the single_device_name of this MobileDevicePrestageNamesV2.           :param single_device_name: The single_device_name of this MobileDevicePrestageNamesV2.  # noqa: E501         :type single_device_name: str Gets the manage_names of this MobileDevicePrestageNamesV2.  # noqa: E501           :return: The manage_names of this MobileDevicePrestageNamesV2.  # noqa: E501         :rtype: bool Sets the manage_names of this MobileDevicePrestageNamesV2.           :param manage_names: The manage_names of this MobileDevicePrestageNamesV2.  # noqa: E501         :type manage_names: bool Gets the device_naming_configured of this MobileDevicePrestageNamesV2.  # noqa: E501           :return: The device_naming_configured of this MobileDevicePrestageNamesV2.  # noqa: E501         :rtype: bool Sets the device_naming_configured of this MobileDevicePrestageNamesV2.           :param device_naming_configured: The device_naming_configured of this MobileDevicePrestageNamesV2.  # noqa: E501         :type device_naming_configured: bool Returns the model properties as a dict Returns the string representation of the model For `print` and `pprint` Returns true if both objects are equal Returns true if both objects are not equal