From abf2e72efa039de94570156c6fefb02198649375 Mon Sep 17 00:00:00 2001 From: kiri_feather Date: Wed, 5 Jan 2011 12:24:57 +0000 Subject: [PATCH] =?utf8?q?Twitter=E6=A4=9C=E7=B4=A2yats=E3=81=AE=E3=82=A2?= =?utf8?q?=E3=83=89=E3=83=AC=E3=82=B9=E5=A4=89=E6=9B=B4=E5=AF=BE=E5=BF=9C?= =?utf8?q?=20userStream=5FStatusArrived=E3=81=A7=E3=82=A8=E3=83=A9?= =?utf8?q?=E3=83=BC=E3=83=8F=E3=83=B3=E3=83=89=E3=83=AA=E3=83=B3=E3=82=B0?= =?utf8?q?=EF=BC=88=E6=83=B3=E5=AE=9A=E5=A4=96=E3=81=AE=E3=83=87=E3=83=BC?= =?utf8?q?=E3=82=BF=E3=81=8C=E6=9D=A5=E3=81=9F=E5=A0=B4=E5=90=88=E3=81=AE?= =?utf8?q?=E5=AF=BE=E5=BF=9C=E3=80=82=E3=83=87=E3=83=90=E3=83=83=E3=82=B0?= =?utf8?q?=E7=94=A8=E3=80=82=EF=BC=89=20US=E3=81=AEDelete=E3=82=A4?= =?utf8?q?=E3=83=99=E3=83=B3=E3=83=88=E3=81=AF=E3=82=A4=E3=83=99=E3=83=B3?= =?utf8?q?=E3=83=88=E3=83=AD=E3=82=B0=E3=81=8B=E3=82=89=E9=99=A4=E5=A4=96?= =?utf8?q?=E3=80=82=20US=E3=81=AEDelete=E3=82=A4=E3=83=99=E3=83=B3?= =?utf8?q?=E3=83=88=E3=81=A7=E5=BD=93=E8=A9=B2=E7=99=BA=E8=A8=80=E3=81=AEF?= =?utf8?q?av/Unfav=E3=82=A4=E3=83=99=E3=83=B3=E3=83=88=E3=82=92=E3=82=A4?= =?utf8?q?=E3=83=99=E3=83=B3=E3=83=88=E3=83=AD=E3=82=B0=E3=81=8B=E3=82=89?= =?utf8?q?=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit git-svn-id: http://svn.sourceforge.jp/svnroot/tween/trunk@1318 e39ad16e-3079-482e-bb30-4b4d378143b6 --- Tween/My Project/Resources.Designer.vb | 2 +- Tween/My Project/Resources.en.resx | 2 +- Tween/My Project/Resources.resx | 2 +- Tween/My Project/Resources.zh-CHS.resx | 2 +- Tween/Twitter.vb | 101 ++++++++++++++++++--------------- 5 files changed, 58 insertions(+), 51 deletions(-) diff --git a/Tween/My Project/Resources.Designer.vb b/Tween/My Project/Resources.Designer.vb index df7a1240..33632dd9 100644 --- a/Tween/My Project/Resources.Designer.vb +++ b/Tween/My Project/Resources.Designer.vb @@ -1948,7 +1948,7 @@ Namespace My.Resources End Property ''' - ''' http://pcod.no-ip.org/yats/search?query={0} に類似しているローカライズされた文字列を検索します。 + ''' http://yats-data.com/yats/search?query={0} に類似しているローカライズされた文字列を検索します。 ''' Friend ReadOnly Property SearchItem3Url() As String Get diff --git a/Tween/My Project/Resources.en.resx b/Tween/My Project/Resources.en.resx index 84e8b601..0769db1b 100644 --- a/Tween/My Project/Resources.en.resx +++ b/Tween/My Project/Resources.en.resx @@ -418,7 +418,7 @@ http://www.google.com/search?q={0} - http://pcod.no-ip.org/yats/search?query={0} + http://yats-data.com/yats/search?query={0} http://search.twitter.com/search?q={0} diff --git a/Tween/My Project/Resources.resx b/Tween/My Project/Resources.resx index cd3a983d..7c9d1b23 100644 --- a/Tween/My Project/Resources.resx +++ b/Tween/My Project/Resources.resx @@ -443,7 +443,7 @@ http://www.google.com/search?hl=ja&q={0} - http://pcod.no-ip.org/yats/search?query={0} + http://yats-data.com/yats/search?query={0} http://search.twitter.com/search?q={0} diff --git a/Tween/My Project/Resources.zh-CHS.resx b/Tween/My Project/Resources.zh-CHS.resx index 20165570..c7e2ae6d 100644 --- a/Tween/My Project/Resources.zh-CHS.resx +++ b/Tween/My Project/Resources.zh-CHS.resx @@ -412,7 +412,7 @@ http://www.google.com.hk/search?q={0} - http://pcod.no-ip.org/yats/search?query={0} + http://yats-data.com/yats/search?query={0} http://search.twitter.com/search?q={0} diff --git a/Tween/Twitter.vb b/Tween/Twitter.vb index e82e10da..0ebfe6c4 100644 --- a/Tween/Twitter.vb +++ b/Tween/Twitter.vb @@ -2760,56 +2760,56 @@ Public Class Twitter Dim isDm As Boolean = False - Using jsonReader As XmlDictionaryReader = JsonReaderWriterFactory.CreateJsonReader(Encoding.UTF8.GetBytes(line), XmlDictionaryReaderQuotas.Max) - Dim xElm As XElement = XElement.Load(jsonReader) - If xElm.Element("friends") IsNot Nothing Then - Debug.Print("friends") - Exit Sub - ElseIf xElm.Element("delete") IsNot Nothing Then - Debug.Print("delete") - Dim post As PostClass = Nothing - Dim id As Int64 - If xElm.Element("delete").Element("direct_message") IsNot Nothing AndAlso - xElm.Element("delete").Element("direct_message").Element("id") IsNot Nothing Then - id = CLng(xElm.Element("delete").Element("direct_message").Element("id").Value) - RaiseEvent PostDeleted(id, post) - ElseIf xElm.Element("delete").Element("status") IsNot Nothing AndAlso - xElm.Element("delete").Element("status").Element("id") IsNot Nothing Then - id = CLng(xElm.Element("delete").Element("status").Element("id").Value) - RaiseEvent PostDeleted(id, post) - Else - TraceOut("delete:" + line) + Try + Using jsonReader As XmlDictionaryReader = JsonReaderWriterFactory.CreateJsonReader(Encoding.UTF8.GetBytes(line), XmlDictionaryReaderQuotas.Max) + Dim xElm As XElement = XElement.Load(jsonReader) + If xElm.Element("friends") IsNot Nothing Then + Debug.Print("friends") + Exit Sub + ElseIf xElm.Element("delete") IsNot Nothing Then + Debug.Print("delete") + Dim post As PostClass = Nothing + Dim id As Int64 + If xElm.Element("delete").Element("direct_message") IsNot Nothing AndAlso + xElm.Element("delete").Element("direct_message").Element("id") IsNot Nothing Then + id = CLng(xElm.Element("delete").Element("direct_message").Element("id").Value) + RaiseEvent PostDeleted(id, post) + ElseIf xElm.Element("delete").Element("status") IsNot Nothing AndAlso + xElm.Element("delete").Element("status").Element("id") IsNot Nothing Then + id = CLng(xElm.Element("delete").Element("status").Element("id").Value) + RaiseEvent PostDeleted(id, post) + Else + TraceOut("delete:" + line) + Exit Sub + End If + CreateDeleteEvent(DateTime.Now, id, post) + Exit Sub + ElseIf xElm.Element("limit") IsNot Nothing Then + Debug.Print(line) + Exit Sub + ElseIf xElm.Element("event") IsNot Nothing Then + Debug.Print("event: " + xElm.Element("event").Value) + CreateEventFromJson(line) + Exit Sub + ElseIf xElm.Element("direct_message") IsNot Nothing Then + Debug.Print("direct_message") + isDm = True + ElseIf xElm.Element("scrub_geo") IsNot Nothing Then + Try + Debug.Print("scrub_geo: user_id=" + xElm.Element("user_id").Value.ToString + " up_to_status_id=" + xElm.Element("up_to_status_id").Value.ToString) + Catch ex As Exception + TraceOut("scrub_geo:" + line) + End Try Exit Sub End If - CreateDeleteEvent(DateTime.Now, id, post) - Exit Sub - ElseIf xElm.Element("limit") IsNot Nothing Then - Debug.Print(line) - Exit Sub - ElseIf xElm.Element("event") IsNot Nothing Then - Debug.Print("event: " + xElm.Element("event").Value) - CreateEventFromJson(line) - Exit Sub - ElseIf xElm.Element("direct_message") IsNot Nothing Then - Debug.Print("direct_message") - isDm = True - ElseIf xElm.Element("scrub_geo") IsNot Nothing Then - Try - Debug.Print("scrub_geo: user_id=" + xElm.Element("user_id").Value.ToString + " up_to_status_id=" + xElm.Element("up_to_status_id").Value.ToString) - Catch ex As Exception - TraceOut("scrub_geo:" + line) - End Try - Exit Sub - End If - End Using + End Using - Dim res As New StringBuilder - res.Length = 0 - res.Append("[") - res.Append(line) - res.Append("]") + Dim res As New StringBuilder + res.Length = 0 + res.Append("[") + res.Append(line) + res.Append("]") - Try If isDm Then CreateDirectMessagesFromJson(res.ToString, WORKERTYPE.UserStream, False) Else @@ -2825,6 +2825,7 @@ Public Class Twitter Private Sub CreateDeleteEvent(ByVal createdat As DateTime, ByVal id As Int64, ByVal post As PostClass) Dim evt As New FormattedEvent evt.CreatedAt = createdat + evt.Id = id If post Is Nothing Then Dim tmp As PostClass = (From p In _deletemessages Where p.Id = id).FirstOrDefault If tmp IsNot Nothing Then @@ -2849,7 +2850,13 @@ Public Class Twitter evt.Username = post.Name evt.Target = If(post.Data.Length > 5, post.Data.Substring(0, 5) + "...", post.Data) + " [" + post.PDate.ToString + "]" End If - Me.StoredEvent.Insert(0, evt) + For i As Integer = Me.StoredEvent.Count - 1 To 0 Step -1 + Dim sEvt As FormattedEvent = Me.StoredEvent(i) + If sEvt.Id = id AndAlso (sEvt.Event = "favorite" OrElse sEvt.Event = "unfavorite") Then + Me.StoredEvent.RemoveAt(i) + End If + Next + 'Me.StoredEvent.Insert(0, evt) RaiseEvent UserStreamEventReceived(evt) End Sub -- 2.11.0