# coding=utf-8
# --------------------------------------------------------------------------
# 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 FilesUpdateRequest(Model):
    """FilesUpdateRequest.

    All required parameters must be populated in order to send to Azure.

    :param display_name:
    :type display_name: str
    :param parent_folder_id: Required.
    :type parent_folder_id: str
    :param description:
    :type description: str
    :param group_ids:
    :type group_ids: list[str]
    """

    _validation = {
        'display_name': {'max_length': 223},
        'parent_folder_id': {'required': True},
    }

    _attribute_map = {
        'display_name': {'key': 'DisplayName', 'type': 'str'},
        'parent_folder_id': {'key': 'ParentFolderId', 'type': 'str'},
        'description': {'key': 'Description', 'type': 'str'},
        'group_ids': {'key': 'GroupIds', 'type': '[str]'},
    }

    def __init__(self, **kwargs):
        super(FilesUpdateRequest, self).__init__(**kwargs)
        self.display_name = kwargs.get('display_name', None)
        self.parent_folder_id = kwargs.get('parent_folder_id', None)
        self.description = kwargs.get('description', None)
        self.group_ids = kwargs.get('group_ids', None)
