コード例 #1
0
        internal static IHelperTask AddToBuildTask(
            this ITaskHelper helper,
            string targetName,
            bool isTarget         = true,
            string parentTaskName = "")
        {
            if (string.IsNullOrWhiteSpace(targetName))
            {
                throw new ArgumentNullException(nameof(targetName));
            }

            if (!isTarget && string.IsNullOrWhiteSpace(parentTaskName))
            {
                throw new ArgumentNullException(nameof(parentTaskName));
            }

            var newTaskName = isTarget ? targetName : $"{parentTaskName}-{targetName}";
            var parentTask  = isTarget ? helper.GetBuildTask() : helper.AddToBuildTask(parentTaskName);
            var newTask     = helper.GetBuildTask(newTaskName, isTarget);

            helper.AddTaskDependency(parentTask, newTask);

            return(newTask);
        }
コード例 #2
0
        internal static IHelperTask GetPostBuildTask(
            this ITaskHelper helper,
            string targetName = "All",
            bool isTarget     = true)
        {
            if (helper == null)
            {
                return(null);
            }

            var postBuildTask =
                helper.GetTask($"{PostBuildTaskName}-{targetName}", isTarget, TargetCategory, PostBuildTaskName);

            if (isTarget && helper.BuildAllDependencies)
            {
                var buildTask = helper.GetBuildTask(targetName);
                helper.AddTaskDependency(postBuildTask, buildTask);
            }

            return(postBuildTask);
        }