<commit_before># Copyright (c) 2012-2018, <NAME> <<EMAIL>>
# All rights reserved.
#
# See LICENSE file for full license.

from . import AWSObject, AWSProperty
from .validators import boolean, integer


class ServiceAccountCredentials(AWSProperty):
    props = {
        'AccountName': (basestring, True),
        'AccountPassword': (basestring, True),
    }


class DirectoryConfig(AWSObject):
    resource_type = "AWS::AppStream::DirectoryConfig"

    props = {
        'DirectoryName': (basestring, True),
        'OrganizationalUnitDistinguishedNames': ([basestring], True),
        'ServiceAccountCredentials': (ServiceAccountCredentials, True),
    }


class ComputeCapacity(AWSProperty):
    props = {
        'DesiredInstances': (integer, True),
    }


class VpcConfig(AWSProperty):
    props = {
        'SecurityGroupIds': ([basestring], False),
        'SubnetIds': ([basestring], False),
    }


class DomainJoinInfo(AWSProperty):
    props = {
        'DirectoryName': (basestring, False),
        'OrganizationalUnitDistinguishedName': (basestring, False),
    }


class Fleet(AWSObject):
    resource_type = "AWS::AppStream::Fleet"

    props = {
        'ComputeCapacity': (ComputeCapacity, True),
        'Description': (basestring, False),
        'DisconnectTimeoutInSeconds': (integer, False),
        'DisplayName': (basestring, False),
        'DomainJoinInfo': (DomainJoinInfo, False),
        'EnableDefaultInternetAccess': (boolean, False),
        'FleetType': (basestring, False),
        'ImageArn': (basestring, False),
        'ImageName': (basestring, False),
        'InstanceType': (basestring, True),
        'MaxUserDurationInSeconds': (integer, False),
        'Name': (basestring, False),
        'VpcConfig': (VpcConfig, False),
    }


class VpcConfig(AWSProperty):
    props = {
        'SecurityGroupIds': ([basestring], False),
        'SubnetIds': ([basestring], False),
    }


class DomainJoinInfo(AWSProperty):
    props = {
        'DirectoryName': (basestring, False),
        'OrganizationalUnitDistinguishedName': (basestring, False),
    }


class ImageBuilder(AWSObject):
    resource_type = "AWS::AppStream::ImageBuilder"

    props = {
        'AppstreamAgentVersion': (basestring, False),
        'Description': (basestring, False),
        'DisplayName': (basestring, False),
        'DomainJoinInfo': (DomainJoinInfo, False),
        'EnableDefaultInternetAccess': (boolean, False),
        'ImageArn': (basestring, False),
        'ImageName': (basestring, False),
        'InstanceType': (basestring, True),
        'Name': (basestring, False),
        'VpcConfig': (VpcConfig, False),
    }


class StackFleetAssociation(AWSObject):
    resource_type = "AWS::AppStream::StackFleetAssociation"
<commit_msg>Remove duplicate VpcConfig/DomainJoinInfo classes from AppStream (#1285)<commit_after># Copyright (c) 2012-2018, <NAME> <<EMAIL>>
# All rights reserved.
#
# See LICENSE file for full license.

from . import AWSObject, AWSProperty
from .validators import boolean, integer


class ServiceAccountCredentials(AWSProperty):
    props = {
        'AccountName': (basestring, True),
        'AccountPassword': (basestring, True),
    }


class DirectoryConfig(AWSObject):
    resource_type = "AWS::AppStream::DirectoryConfig"

    props = {
        'DirectoryName': (basestring, True),
        'OrganizationalUnitDistinguishedNames': ([basestring], True),
        'ServiceAccountCredentials': (ServiceAccountCredentials, True),
    }


class ComputeCapacity(AWSProperty):
    props = {
        'DesiredInstances': (integer, True),
    }


class VpcConfig(AWSProperty):
    props = {
        'SecurityGroupIds': ([basestring], False),
        'SubnetIds': ([basestring], False),
    }


class DomainJoinInfo(AWSProperty):
    props = {
        'DirectoryName': (basestring, False),
        'OrganizationalUnitDistinguishedName': (basestring, False),
    }


class Fleet(AWSObject):
    resource_type = "AWS::AppStream::Fleet"

    props = {
        'ComputeCapacity': (ComputeCapacity, True),
        'Description': (basestring, False),
        'DisconnectTimeoutInSeconds': (integer, False),
        'DisplayName': (basestring, False),
        'DomainJoinInfo': (DomainJoinInfo, False),
        'EnableDefaultInternetAccess': (boolean, False),
        'FleetType': (basestring, False),
        'ImageArn': (basestring, False),
        'ImageName': (basestring, False),
        'InstanceType': (basestring, True),
        'MaxUserDurationInSeconds': (integer, False),
        'Name': (basestring, False),
        'VpcConfig': (VpcConfig, False),
    }


class ImageBuilder(AWSObject):
    resource_type = "AWS::AppStream::ImageBuilder"

    props = {
        'AppstreamAgentVersion': (basestring, False),
        'Description': (basestring, False),
        'DisplayName': (basestring, False),
        'DomainJoinInfo': (DomainJoinInfo, False),
        'EnableDefaultInternetAccess': (boolean, False),
        'ImageArn': (basestring, False),
        'ImageName': (basestring, False),
        'InstanceType': (basestring, True),
        'Name': (basestring, False),
        'VpcConfig': (VpcConfig, False),
    }


class StackFleetAssociation(AWSObject):
    resource_type = "AWS::AppStream::StackFleetAssociation"

{'fraction_non_alphanumeric': 0.13545816733067728, 'fraction_numerical': 0.0037943464238284954, 'mean_word_length': 3.4982935153583616, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1845685', 'n_tokens_mistral': 1621, 'n_tokens_neox': 1556, 'n_words': 332}