<commit_before>//-----------------------------------------------------------------------
// <copyright file="Parallel.cs">(c) http://www.codeplex.com/MSBuildExtensionPack. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.</copyright>
//-----------------------------------------------------------------------
namespace MSBuild.ExtensionPack.Framework
{
    using System;
    using System.Globalization;
    using System.Linq;
    using Microsoft.Build.Framework;

    /// <summary>
    /// <b>Valid TaskActions are:</b>
    /// <para><i>BuildTargetsInParallel</i> (<b>Required: </b> Targets <b>Optional:</b> AdditionalProperties, ProjectFile, WaitAll, WorkingDirectory)</para>
    /// <para><i>BuildTargetSetsInParallel</i> (<b>Required: </b> Targets <b>Optional:</b> AdditionalProperties, ProjectFile, WaitAll, WorkingDirectory)</para>
    /// <para><b>Remote Execution Support:</b> NA</para>
    /// </summary>
    /// <example>
    /// <code lang="xml"><![CDATA[
    /// ]]></code>    
    /// </example>
    [HelpUrl("")]
    public class Parallel : BaseTask
    {
        private const string BuildTargetsInParallelTaskAction = "BuildTargetsInParallel";
        private const string BuildTargetSetsInParallelTaskAction = "BuildTargetSetsInParallel";
        private bool waitAll = true;

        [DropdownValue(BuildTargetsInParallelTaskAction)]
        [DropdownValue(BuildTargetSetsInParallelTaskAction)]
        public override string TaskAction
        {
            get { return base.TaskAction; }
            set { base.TaskAction = value; }
        }

        /// <summary>
        /// Specifies whether to wait for all Targets to complete execution before returning to MSBuild or whether to wait for all to complete. Default is true.<commit_msg>Framework\Parallel.cs: Add sample to class<commit_after>//-----------------------------------------------------------------------
// <copyright file="Parallel.cs">(c) http://www.codeplex.com/MSBuildExtensionPack. This source is subject to the Microsoft Permissive License. See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx. All other rights reserved.</copyright>
//-----------------------------------------------------------------------
namespace MSBuild.ExtensionPack.Framework
{
    using System;
    using System.Globalization;
    using System.Linq;
    using Microsoft.Build.Framework;

    /// <summary>
    /// <b>Valid TaskActions are:</b>
    /// <para><i>BuildTargetsInParallel</i> (<b>Required: </b> Targets <b>Optional:</b> AdditionalProperties, ProjectFile, WaitAll, WorkingDirectory)</para>
    /// <para><i>BuildTargetSetsInParallel</i> (<b>Required: </b> Targets <b>Optional:</b> AdditionalProperties, ProjectFile, WaitAll, WorkingDirectory)</para>
    /// <para><b>Remote Execution Support:</b> NA</para>
    /// </summary>
    /// <example>
    /// <code lang="xml"><![CDATA[
    /// <Project ToolsVersion="4.0" InitialTargets="Throttle" DefaultTargets="Normal;BuildTargetSetsInParallel;BuildTargetsInParallel" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    ///     <PropertyGroup>
    ///         <TPath>$(MSBuildProjectDirectory)\..\MSBuild.ExtensionPack.tasks</TPath>
    ///         <TPath Condition="Exists('$(MSBuildProjectDirectory)\..\..\Common\MSBuild.ExtensionPack.tasks')">$(MSBuildProjectDirectory)\..\..\Common\MSBuild.ExtensionPack.tasks</TPath>
    ///     </PropertyGroup>
    ///     <Import Project="$(TPath)"/>
    ///     <ItemGroup>
    ///         <MyTargetSets Include="1">
    ///             <Targets>Target1;Target2</Targets>
    ///             <Properties>MyPropValue=MyPropValue1</Properties>
    ///         </MyTargetSets>
    ///         <MyTargetSets Include="2">
    ///             <Targets>Target3</Targets>
    ///         </MyTargetSets>
    ///         <MyTargets Include="Target1">
    ///             <Properties>MyPropValue=MyPropValue1</Properties>
    ///         </MyTargets>
    ///         <MyTargets Include="Target2;Target3"/>
    ///     </ItemGroup>
    ///     <Target Name="Normal" DependsOnTargets="Target1;Target2;Target3"/>
    ///     <Target Name="BuildTargetSetsInParallel">
    ///         <MSBuild.ExtensionPack.Framework.Parallel TaskAction="BuildTargetSetsInParallel" Targets="@(MyTargetSets)" AdditionalProperties="SkipInitial=true"/>
    ///     </Target>
    ///     <Target Name="BuildTargetsInParallel">
    ///         <MSBuild.ExtensionPack.Framework.Parallel TaskAction="BuildTargetsInParallel" Targets="@(MyTargets)" AdditionalProperties="SkipInitial=true"/>
    ///     </Target>
    ///     <Target Name="Target1">
    ///         <MSBuild.ExtensionPack.Framework.Thread TaskAction="Sleep" Timeout="1000"/>
    ///         <Message Text="MyPropValue = $(MyPropValue)" Importance="High"/>
    ///     </Target>
    ///     <Target Name="Target2">
    ///         <MSBuild.ExtensionPack.Framework.Thread TaskAction="Sleep" Timeout="4000"/>
    ///     </Target>
    ///     <Target Name="Target3">
    ///         <MSBuild.ExtensionPack.Framework.Thread TaskAction="Sleep" Timeout="2000"/>
    ///     </Target>
    ///     <Target Name="Throttle" Condition="$(SkipInitial) != 'true'">
    ///         <MSBuild.ExtensionPack.Framework.Thread TaskAction="Sleep" Timeout="1000"/>
    ///     </Target>
    /// </Project>
    /// ]]></code>
    /// </example>
    [HelpUrl("")]
    public class Parallel : BaseTask
    {
        private const string BuildTargetsInParallelTaskAction = "BuildTargetsInParallel";
        private const string BuildTargetSetsInParallelTaskAction = "BuildTargetSetsInParallel";
        private bool waitAll = true;

        [DropdownValue(BuildTargetsInParallelTaskAction)]
        [DropdownValue(BuildTargetSetsInParallelTaskAction)]
        public override string TaskAction
        {
            get { return base.TaskAction; }
            set { base.TaskAction = value; }
        }

        /// <summary>
        /// Specifies whether to wait for all Targets to complete execution before returning to MSBuild or whether to wait for all to complete. Default is true.
{'fraction_non_alphanumeric': 0.18858242463117383, 'fraction_numerical': 0.006093649775497113, 'mean_word_length': 2.4044759825327513, 'pattern_counts': {'":': 0, '<': 113, '<?xml version=': 0, '>': 113, 'https://': 0, 'lorem ipsum': 0, 'www.': 4, 'xml': 3}, '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': '525837', 'n_tokens_mistral': 1679, 'n_tokens_neox': 1652, 'n_words': 316}