public bool Equals(RoleType other) { if (ReferenceEquals(null, other)) return false; if (ReferenceEquals(this, other)) return true; return (0 == String.Compare(Moniker, other.Moniker, StringComparison.InvariantCultureIgnoreCase)); }
private uint GetWorkingWorkersNumber(RoleType roleType) { uint workerCounter = 0; if (AllWorkerRunners != null) foreach (WorkerRunner workerRunner in AllWorkerRunners.Values.Where(workerRunner => workerRunner.WorkAssignment.WorkRequest.RoleType == roleType && workerRunner.IsPresent)) { workerCounter++; } return workerCounter; }
public WorkerCard FindWorkerForRole(RoleType roleType) { return(WorkerCards.FirstOrDefault(workerCard => roleType == workerCard.RoleType)); }
/// <summary> /// Inits this instance. /// </summary> /// <remarks></remarks> private void Init() { try { InputDataPipeReceiveTimeout = new TimeSpan(0, 0, 10); PauseSleep = new TimeSpan(0, 0, 0, 10); RoleType = new RoleType(Utils.RemoveSuffix(GetType().Name, "Worker")); Debug.Assert(WorkerId != null); PipelineType = WorkAssignment.WorkRequest.PipelineType; PipelineId = WorkAssignment.WorkRequest.PipelineId; BootParameters = WorkAssignment.WorkRequest.BootParameters; JobParameters = WorkAssignment.WorkRequest.JobParameters; ReportPipe = new Pipe(WorkAssignment.WorkRequest.ReportPipeName); ReportPipe.Open(); WorkerStatistics = new WorkerStatistics(WorkAssignment, Environment.MachineName, ReportPipe); ReportPipe.Before = WorkerStatistics.PauseNetTime; ReportPipe.After = WorkerStatistics.ResumeNetTime; SetupInputDataPipe(WorkAssignment.WorkRequest.InputDataPipeName); SetupOutputSections(WorkAssignment.WorkRequest.OutputSections); SetupLogPipe(WorkAssignment.WorkRequest.LogDataPipeName); } catch (Exception ex) { Tracer.Fatal("Unable to initialize worker {0}. Exception: {1}", WorkerId, ex); throw; } }
public WorkerCard FindWorkerForRole(RoleType roleType) { return WorkerCards.FirstOrDefault(workerCard => roleType == workerCard.RoleType); }