public bool TryGetValue(string typableMapId, out Misuzilla.Applications.TwitterIrcGateway.Status status) { Int64 statusId; status = null; if (_typableMap.TryGetValue(typableMapId, out statusId)) { using (TwitterIrcGatewayDataContext ctx = new TwitterIrcGatewayDataContext()) { var dbStatus = ctx.Status.Where(s => s.Id == statusId).FirstOrDefault(); if (dbStatus != null) { status = new TwitterIrcGateway.Status(); status.Id = dbStatus.Id; status.Text = dbStatus.Text; status.InReplyToStatusId = dbStatus.InReplyToId.HasValue ? dbStatus.InReplyToId.Value.ToString() : null; status.CreatedAt = dbStatus.CreatedAt; status.User = new TwitterIrcGateway.User(); status.User.ScreenName = dbStatus.ScreenName; if (dbStatus.User != null) { status.User.Id = dbStatus.User.Id; status.User.ScreenName = dbStatus.User.ScreenName; status.User.Name = dbStatus.User.Name; status.User.Protected = dbStatus.User.IsProtected; status.User.ProfileImageUrl = dbStatus.User.ProfileImageUrl; } } } } return(status != null); }
public Boolean TryGetValue(String typableMapId, out Status status) { StorageItem <Status> storageItem; if (_typableMap.TryGetValue(typableMapId, out storageItem)) { status = storageItem.Value; return(true); } status = null; return(false); }
public Boolean Process(PrivMsgMessage message) { if (_commands.Count == 0) { return(false); } Match m = _matchRE.Match(message.Content); if (m.Success) { try { Status status; if (TypableMap.TryGetValue(m.Groups["tid"].Value, out status)) { _commands[m.Groups["cmd"].Value].Process(this, message, status, m.Groups["args"].Value); } else { Session.SendServer(new NoticeMessage { Receiver = message.Receiver, Content = "エラー: 指定された TypableMap の ID は存在しません。" }); } } catch (Exception ex) { Session.SendServer(new NoticeMessage { Receiver = message.Receiver, Content = "エラー: TypableMap の処理中にエラーが発生しました。" }); foreach (var line in ex.ToString().Split('\n')) { Session.SendServer(new NoticeMessage { Receiver = message.Receiver, Content = line }); } } return(true); // 握りつぶす } return(false); }
public Boolean TryGetValue(String typableMapId, out Status status) { Int64 statusId; status = null; if (_typableMap.TryGetValue(typableMapId, out statusId)) { try { status = _session.TwitterService.GetStatusById(statusId); return(status != null); } catch (TwitterServiceException) {} catch (IOException) {} catch (WebException) {} } return(false); }
public Boolean TryGetValue(String typableMapId, out Status status) { return(_typableMap.TryGetValue(typableMapId, out status)); }