protected virtual Task <T> ExecuteThrowingFunctionAsync <T>(string name, Func <Task <T> > method) { return(CoreUtility.ExecuteFunctionAsync <T>(string.Format("{0}.{1}", this.TrackPrefix, name), method, delegate(Exception ex) { throw ex; })); }
protected virtual Task <T> ExecuteFunctionAsync <T>(string name, Func <Task <T> > method, Action <Exception> onError = null) { return(CoreUtility.ExecuteFunctionAsync <T>(string.Format("{0}.{1}", this.TrackPrefix, name), method, onError)); }
protected virtual T ExecuteFunction <T>(string name, Func <T> method, Action <Exception> onError = null, bool supressMethodLogging = false) { return(CoreUtility.ExecuteFunction <T>(string.Format("{0}.{1}", this.TrackPrefix, name), method, onError, supressMethodLogging)); }
protected virtual T ExecuteThrowingFunction <T>(string name, Func <T> method, bool supressMethodLogging = false) { return(CoreUtility.ExecuteFunction <T>(string.Format("{0}.{1}", this.TrackPrefix, name), method, delegate(Exception ex) { throw ex; }, supressMethodLogging)); }
protected virtual void ExecuteMethod(string name, Action method, Action <Exception> onError = null, bool supressMethodLogging = false) { CoreUtility.ExecuteMethod(string.Format("{0}.{1}", this.TrackPrefix, name), method, onError, supressMethodLogging); }