Exemple #1
0
 public TaskDefinition GetTaskByMethod(MethodInfo methodInfo)
 {
     if (TaskDefinitionsByMethod.TryGetValue(methodInfo, out var definition))
     {
         return(definition);
     }
     return(null);
 }
Exemple #2
0
        public void AddTask(TaskDefinition taskDefinition)
        {
            if (taskDefinition == null)
            {
                throw new ArgumentNullException(nameof(taskDefinition));
            }

            if (TaskDefinitionsByName.ContainsKey(taskDefinition.Name))
            {
                throw new ArgumentException($"Attempting to add task with duplcate name [{taskDefinition.Name}]");
            }

            if (TaskDefinitionsByMethod.ContainsKey(taskDefinition.Method))
            {
                throw new ArgumentException($"Task for method is already registered: {taskDefinition.Method}");
            }

            _logger.LogInformation($"Registering task: {taskDefinition.Name}");

            TaskDefinitionsByName.Add(taskDefinition.Name, taskDefinition);
            TaskDefinitionsByMethod.Add(taskDefinition.Method, taskDefinition);
        }