# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class ProviderData(Model):
    """ProviderData.

    Variables are only populated by the server, and will be ignored when
    sending a request.

    :param id:
    :type id: str
    :param name:
    :type name: str
    :param value:
    :type value: object
    :param location:
    :type location: str
    :param is_secret:
    :type is_secret: bool
    :param is_shared:
    :type is_shared: bool
    :param scope:
    :type scope: int
    :param data_type:
    :type data_type: int
    :ivar string_value:
    :vartype string_value: str
    """

    _validation = {
        'string_value': {'readonly': True},
    }

    _attribute_map = {
        'id': {'key': 'id', 'type': 'str'},
        'name': {'key': 'name', 'type': 'str'},
        'value': {'key': 'value', 'type': 'object'},
        'location': {'key': 'location', 'type': 'str'},
        'is_secret': {'key': 'isSecret', 'type': 'bool'},
        'is_shared': {'key': 'isShared', 'type': 'bool'},
        'scope': {'key': 'scope', 'type': 'int'},
        'data_type': {'key': 'dataType', 'type': 'int'},
        'string_value': {'key': 'stringValue', 'type': 'str'},
    }

    def __init__(self, **kwargs):
        super(ProviderData, self).__init__(**kwargs)
        self.id = kwargs.get('id', None)
        self.name = kwargs.get('name', None)
        self.value = kwargs.get('value', None)
        self.location = kwargs.get('location', None)
        self.is_secret = kwargs.get('is_secret', None)
        self.is_shared = kwargs.get('is_shared', None)
        self.scope = kwargs.get('scope', None)
        self.data_type = kwargs.get('data_type', None)
        self.string_value = None
