public async Task OnReplyClick(Office.IRibbonControl control) { var message = FormatMessage(); try { var postId = _rootPostIdProvider.Get(); var session = await _sessionRepository.RestoreSession(); var post = await Task.Run(() => session.GetPost(postId)); await Task.Run(() => post.Reply(message)); } catch (UserAbortException) { } catch (MattermostException mex) { _errorDisplay.Display(mex); } catch (Exception exception) { _errorDisplay.Display(exception); } }
public string Format(string message, object[] args, StringTemplateParserOption options) { var template = parser.Parse(message, options); var str = stringProvider.Get(message); if (str == message) { return(processor.Process(template, args)); } var templateOverride = parser.Parse(str, options); return(processor.Process(template, templateOverride, args)); }
public string Get() { var uri = new Uri(_baseProvider.Get()); return(uri.Segments[3]); }