示例#1
0
        public static IHelperTask GetCleanTask(
            this ITaskHelper helper,
            string cleanCategory = "",
            string targetName    = "All",
            bool isTarget        = true)
        {
            if (helper == null)
            {
                return(null);
            }

            if (string.IsNullOrWhiteSpace(targetName))
            {
                targetName = "All";
            }

            if (string.IsNullOrWhiteSpace(cleanCategory))
            {
                cleanCategory = "Generic";
            }

            cleanCategory = $"Clean-{cleanCategory}";
            var taskName = $"{cleanCategory}-{targetName}";

            var task = helper.GetTask(taskName, isTarget, "Clean", cleanCategory);

            if (targetName == "All")
            {
                var defaultTask = helper.GetDefaultCleanTask();
                helper.AddTaskDependency(defaultTask, task);
            }

            return(task);
        }
示例#2
0
        public static IHelperTask AddToTestTask(
            this ITaskHelper helper,
            string targetName,
            string testCategory,
            bool isTarget         = true,
            string parentTaskName = "")
        {
            if (string.IsNullOrWhiteSpace(targetName))
            {
                throw new ArgumentNullException(nameof(targetName));
            }

            if (string.IsNullOrWhiteSpace(testCategory))
            {
                throw new ArgumentNullException(nameof(testCategory));
            }

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

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

            helper.AddTaskDependency(parentTask, newTask);

            return(newTask);
        }
示例#3
0
        internal static IHelperTask GetDocBuildTask(
            this ITaskHelper helper,
            string targetName = "All",
            bool isTarget     = true)
        {
            if (helper == null)
            {
                return(null);
            }

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

            if (isTarget)
            {
                var extractTask = helper.GetDocExtractTask(targetName);
                helper.AddTaskDependency(buildTask, extractTask);
            }

            return(buildTask);
        }
        internal static IHelperTask GetPreBuildTask(
            this ITaskHelper helper,
            string targetName = "All",
            bool isTarget     = true)
        {
            if (helper == null)
            {
                return(null);
            }

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

            if (isTarget)
            {
                var clnTask = helper.GetBuildCleanTask(targetName);
                helper.AddTaskDependency(preBuildTask, clnTask);
            }

            return(preBuildTask);
        }
        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);
        }
示例#6
0
        public static IHelperTask GetTestCleanTask(
            this ITaskHelper helper,
            string testCategory = "Generic",
            string targetName   = "All",
            bool isTarget       = true)
        {
            if (helper == null)
            {
                return(null);
            }

            var taskName = $"{testCategory}-{targetName}";

            var task = helper.GetCleanTask(TargetCategory, taskName, isTarget);

            if (targetName == "All")
            {
                var defaultTask = helper.GetDefaultCleanTask();
                helper.AddTaskDependency(defaultTask, task);
            }

            return(task);
        }
示例#7
0
        internal static IHelperTask AddToDocPostBuildTask(
            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.GetDocPostBuildTask() : helper.GetDocPostBuildTask(parentTaskName);
            var newTask     = helper.GetDocPostBuildTask(newTaskName, isTarget);

            helper.AddTaskDependency(parentTask, newTask);

            return(newTask);
        }