public void AddFilter(IActionConfirmationFilter filter) { if (!filterIdToFilter.ContainsKey(filter.GetFilterId())) { filterIdToFilter.Add(filter.GetFilterId(), filter); } }
private void confirmAction(Type action, bool isActionValid, List <IActionConfirmationFilter> filters, ActionConfirmationCallback successCallback, ActionConfirmationCallback failureCallback = null) { if (isActionValid && filters.Count > 0) { IActionConfirmationFilter actionConfirmationFilter = filters[0]; filters.RemoveAt(0); actionConfirmationFilter.ShowConfirmation(action, delegate(bool result) { confirmAction(action, result, filters, successCallback, failureCallback); }); } else if (isActionValid) { successCallback(); } else if (failureCallback != null) { failureCallback(); } }