public static void Verify(IApprovalApprover approver, IApprovalFailureReporter reporter) { if (approver.Approve()) approver.CleanUpAfterSucess(reporter); else { approver.ReportFailure(reporter); if (reporter is IReporterWithApprovalPower && ((IReporterWithApprovalPower)reporter).ApprovedWhenReported()) approver.CleanUpAfterSucess(reporter); else approver.Fail(); } }
public static void Verify(IApprovalApprover approver, IApprovalFailureReporter reporter) { if (approver.Approve()) { approver.CleanUpAfterSuccess(reporter); } else { approver.ReportFailure(reporter); if (reporter is IReporterWithApprovalPower power && power.ApprovedWhenReported()) { approver.CleanUpAfterSuccess(power); }
public static void Approve(IApprovalApprover approver, IApprovalFailureReporter reporter) { if (approver.Approve()) { approver.CleanUpAfterSucess(reporter); } else { approver.ReportFailure(reporter); if (reporter is IReporterWithApprovalPower && ((IReporterWithApprovalPower)reporter).ApprovedWhenReported()) { approver.CleanUpAfterSucess(reporter); } else { approver.Fail(); } } }
public static void Verify(IApprovalApprover approver, IApprovalFailureReporter reporter) { if (approver.Approve()) { approver.CleanUpAfterSuccess(reporter); } else { approver.ReportFailure(reporter); var power = reporter as IReporterWithApprovalPower; if (power != null && power.ApprovedWhenReported()) { approver.CleanUpAfterSuccess(power); } else { approver.Fail(); } } }
public static void Verify(IApprovalApprover approver, IApprovalFailureReporter reporter) { Approver.Verify(approver, reporter); }
public static void Verify(IApprovalApprover approver) { Approver.Verify(approver, GetReporter()); }