public ApplicationRunner(ICommandLineParser commandLineParser, ITaskieServiceLocator taskieServiceLocator, ITaskieApplication taskieApplication) { _commandLineParser = commandLineParser; _taskieApplication = getInstanceFromServiceLocator(taskieServiceLocator) ?? taskieApplication; _taskieApplication.Startup(); }
private static ITaskieApplication getInstanceFromServiceLocator(ITaskieServiceLocator taskieServiceLocator) { try { return taskieServiceLocator.GetInstance<ITaskieApplication>(); } catch (Exception) { return null; } }
public static void RunWith(string[] arguments, ITaskieServiceLocator taskieServiceLocator) { if (taskieServiceLocator == null) { throw new ArgumentNullException("taskieServiceLocator"); } var container = IoC.CreateContainer(); container.Inject(taskieServiceLocator); using (var applicationRunner = container.GetInstance<IApplicationRunner>()) { applicationRunner.RunWith(arguments); } }
public TaskResolver(ITaskieServiceLocator taskieServiceLocator) { _allRunnableTasks = taskieServiceLocator.GetAllInstances<ITask>(); }