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));
 }