/// <summary>
 /// Add the assembly needed for the given Type to all containers.
 /// </summary>
 /// <param name="type"></param>
 /// <returns></returns>
 public static ConfigurationModule AddGlobalAssemblyForType(ConfigurationModule conf, Type type)
 {
     return(conf.Set(GlobalAssemblies, GetAssemblyPathForType(type)));
 }
Beispiel #2
0
        public void OnNext(IAllocatedEvaluator eval)
        {
            try
            {
                _taskId = _failTaskName + "_" + eval.Id;
                Log.Log(Level.Info, "Submit task: {0}", _taskId);

                IConfiguration contextConfig =
                    ContextConfiguration.ConfigurationModule.Set(ContextConfiguration.Identifier, _taskId).Build();

                ConfigurationModule taskConfig =
                    TaskConfiguration.ConfigurationModule.Set(TaskConfiguration.Identifier, _taskId);

                switch (_failTaskName)
                {
                case "FailTask":
                    taskConfig = taskConfig.Set(TaskConfiguration.Task, GenericType <FailTask> .Class);
                    break;

                case "FailTaskCall":
                    taskConfig = taskConfig.Set(TaskConfiguration.Task, GenericType <FailTaskCall> .Class);
                    break;

                case "FailTaskMsg":
                    taskConfig = taskConfig
                                 .Set(TaskConfiguration.Task, GenericType <FailTaskMsg> .Class)
                                 .Set(TaskConfiguration.OnMessage, GenericType <FailTaskMsg> .Class);
                    break;

                case "FailTaskSuspend":
                    taskConfig = taskConfig
                                 .Set(TaskConfiguration.Task, GenericType <FailTaskSuspend> .Class)
                                 .Set(TaskConfiguration.OnSuspend, GenericType <FailTaskSuspend> .Class);
                    break;

                case "FailTaskStart":
                    taskConfig = taskConfig
                                 .Set(TaskConfiguration.Task, GenericType <FailTaskStart> .Class)
                                 .Set(TaskConfiguration.OnTaskStart, GenericType <FailTaskStart> .Class);
                    break;

                case "FailTaskStop":
                    taskConfig = taskConfig
                                 .Set(TaskConfiguration.Task, GenericType <FailTaskStop> .Class)
                                 .Set(TaskConfiguration.OnTaskStop, GenericType <FailTaskStop> .Class)
                                 .Set(TaskConfiguration.OnClose, GenericType <FailTaskStop> .Class);
                    break;

                case "FailTaskClose":
                    taskConfig = taskConfig
                                 .Set(TaskConfiguration.Task, GenericType <FailTaskClose> .Class)
                                 .Set(TaskConfiguration.OnClose, GenericType <FailTaskClose> .Class);
                    break;

                default:
                    break;
                }

                eval.SubmitContextAndTask(contextConfig, taskConfig.Build());
            }
            catch (BindException ex)
            {
                Log.Log(Level.Warning, "Configuration error", ex);
                throw new DriverSideFailure("Configuration error", ex);
            }
        }