public override void RegisterListener(OperationalListener listener) { this.listener = listener; CompletionReport report = new SuccessCompletionReport(typeof(OperationalStartupBehavior)); SendCompletionReport(report); }
/// <summary> /// Test executue a behavior /// </summary> /// <param name="b"></param> /// <param name="completionReport"></param> public bool TestExecute(Behavior b, out CompletionReport completionReport) { if (this.operationalTestFacade != null) { try { b.TimeStamp = CoreCommon.Communications.GetVehicleState().Timestamp; completionReport = this.operationalTestFacade.TestExecuteBehavior(b); ArbiterOutput.OutputNoLog("test execute: " + b.ShortBehaviorInformation() + " completion report: " + completionReport.GetType().ToString()); return(completionReport.Result == CompletionResult.Success); } catch (Exception e) { completionReport = new SuccessCompletionReport(b.GetType()); ArbiterOutput.OutputNoLog("test execute: " + b.ShortBehaviorInformation() + " encountered error: " + e.ToString()); this.TryOperationalTestFacadeConnect(); return(true); } } else { completionReport = new SuccessCompletionReport(b.GetType()); ArbiterOutput.OutputNoLog("test execute: " + b.ShortBehaviorInformation() + " encountered error: operational test facade does not exist"); this.TryOperationalTestFacadeConnect(); return(true); } }