OSDN Git Service

DataModel再修正
[opentween/open-tween.git] / Tween / DataModel.vb
1 Imports System.Runtime.InteropServices
2 Imports System.Runtime.Serialization
3
4 Public Class TwitterDataModel
5
6     <DataContract()> _
7     Public Class Annotations
8         <DataMember(Name:="ConversationRole", IsRequired:=False)> Public ConversationRole As String
9         <DataMember(Name:="FromUser", IsRequired:=False)> Public FromUser As String
10     End Class
11
12     <DataContract()> _
13     Public Class Urls
14         <DataMember(Name:="urls")> Public Urls As String
15         <DataMember(Name:="indices")> Public Indices(2) As Integer
16     End Class
17
18     <DataContract()> _
19     Public Class Hashtags
20         <DataMember(Name:="indices")> Public Indices(2) As Integer
21         <DataMember(Name:="text")> Public Text As String
22     End Class
23
24     <DataContract()> _
25     Public Class UserMentions
26         <DataMember(Name:="indices")> Public Indices(2) As Integer
27         <DataMember(Name:="screen_name")> Public ScreenName As String
28         <DataMember(Name:="name")> Public Name As String
29         <DataMember(Name:="id")> Public Id As Int64
30     End Class
31
32     <DataContract()> _
33     Public Class Entities
34         <DataMember(Name:="urls")> Public Urls() As Urls
35         <DataMember(Name:="hashtags")> Public Hashtags() As Hashtags
36         <DataMember(Name:="user_mentions")> Public UserMentions() As UserMentions
37     End Class
38
39     <DataContract()> _
40     Public Class User
41         <DataMember(Name:="statuses_count")> Public StatusesCount As Int64
42         <DataMember(Name:="profile_sidebar_fill_color")> Public ProfileSidebarFillColor As String
43         <DataMember(Name:="show_all_inline_media")> Public ShowAllInlineMedia As Boolean
44         <DataMember(Name:="profile_use_background_image")> Public ProfileUseBackgroundImage As Boolean
45         <DataMember(Name:="contributors_enabled")> Public ContributorsEnabled As Boolean
46         <DataMember(Name:="profile_sidebar_border_color")> Public ProfileSidebarBorderColor As String
47         <DataMember(Name:="location")> Public Location As String
48         <DataMember(Name:="geo_enabled")> Public GeoEnabled As Boolean
49         <DataMember(Name:="description")> Public Description As String
50         <DataMember(Name:="friends_count")> Public FriendsCount As Integer
51         <DataMember(Name:="verified")> Public Verified As Boolean
52         <DataMember(Name:="favourites_count")> Public FavouritesCount As Integer
53         <DataMember(Name:="created_at")> Public CreatedAt As String
54         <DataMember(Name:="profile_background_color")> Public ProfileBackgroundColor As String
55         <DataMember(Name:="follow_request_sent")> Public FollowRequestSent As String                'nullの場合があるのでboolean不可
56         <DataMember(Name:="time_zone")> Public TimeZone As String
57         <DataMember(Name:="followers_count")> Public FollowersCount As Integer
58         <DataMember(Name:="url")> Public Url As String
59         <DataMember(Name:="profile_image_url")> Public ProfileImageUrl As String
60         <DataMember(Name:="notifications")> Public Notifications As String                          'nullの場合があるのでboolean不可
61         <DataMember(Name:="profile_text_color")> Public ProfileTextColor As String
62         <DataMember(Name:="protected")> Public [Protected] As Boolean
63         <DataMember(Name:="id_str")> Public IdStr As String
64         <DataMember(Name:="lang")> Public Lang As String
65         <DataMember(Name:="profile_background_image_url")> Public ProfileBackgroundImageUrl As String
66         <DataMember(Name:="screen_name")> Public ScreenName As String
67         <DataMember(Name:="name")> Public Name As String
68         <DataMember(Name:="following")> Public Following As String
69         <DataMember(Name:="profile_link_color")> Public ProfileLinkColor As String
70         <DataMember(Name:="id")> Public Id As Int64
71         <DataMember(Name:="listed_count")> Public ListedCount As Integer
72         <DataMember(Name:="profile_background_tile")> Public ProfileBackgroundTile As Boolean
73         <DataMember(Name:="utc_offset")> Public UtcOffset As String
74         <DataMember(Name:="place", IsRequired:=False)> Public Place As Place
75     End Class
76
77     <DataContract()> _
78     Public Class Coordinates
79         <DataMember(Name:="type", IsRequired:=False)> Public Type As String
80         <DataMember(Name:="coordinates", IsRequired:=False)> Public Coordinates(2) As Double
81     End Class
82
83     <DataContract()> _
84     Public Class Geo
85         <DataMember(Name:="type", IsRequired:=False)> Public Type As String
86         <DataMember(Name:="coordinates", IsRequired:=False)> Public Coordinates(2) As Double
87     End Class
88
89     <DataContract()> _
90     Public Class BoundingBox
91         <DataMember(Name:="type", IsRequired:=False)> Public Type As String
92         <DataMember(Name:="coordinates", IsRequired:=False)> Public Coordinates As Double()()()
93     End Class
94
95     <DataContract()> _
96     Public Class Attributes
97         <DataMember(Name:="street_address", IsRequired:=False)> Public StreetAddress As String
98     End Class
99
100     <DataContract()> _
101     Public Class Place
102         <DataMember(Name:="url")> Public Url As String
103         <DataMember(Name:="bounding_box", IsRequired:=False)> Public BoundingBox As BoundingBox
104         <DataMember(Name:="street_address", IsRequired:=False)> Public StreetAddress As String
105         <DataMember(Name:="full_name")> Public FullName As String
106         <DataMember(Name:="name")> Public Name As String
107         '<DataMember(Name:="attributes", IsRequired:=False)> Public attributes As attributes
108         <DataMember(Name:="country_code", IsRequired:=False)> Public CountryCode As String
109         <DataMember(Name:="id")> Public Id As String
110         <DataMember(Name:="country")> Public Country As String
111         <DataMember(Name:="place_type")> Public PlaceType As String
112     End Class
113
114     <DataContract()> _
115     Public Class RetweetedStatus
116         <DataMember(Name:="coordinates", IsRequired:=False)> Public Coordinates As Coordinates
117         <DataMember(Name:="geo", IsRequired:=False)> Public Geo As Geo
118         <DataMember(Name:="in_reply_to_user_id")> Public InReplyToUserId As String
119         <DataMember(Name:="source")> Public Source As String
120         <DataMember(Name:="user")> Public User As User
121         <DataMember(Name:="in_reply_to_screen_name")> Public InReplyToScreenName As String
122         <DataMember(Name:="created_at")> Public CreatedAt As String
123         <DataMember(Name:="contributors")> Public Contributors As Integer()
124         <DataMember(Name:="favorited")> Public Favorited As Boolean
125         <DataMember(Name:="truncated")> Public Truncated As Boolean
126         <DataMember(Name:="id")> Public Id As Int64
127         <DataMember(Name:="annotations", IsRequired:=False)> Public Annotations As Annotations
128         <DataMember(Name:="place", IsRequired:=False)> Public Place As Place
129         <DataMember(Name:="in_reply_to_status_id")> Public InReplyToStatusId As String
130         <DataMember(Name:="text")> Public Text As String
131     End Class
132
133     <DataContract()> _
134     Public Class Status
135         <DataMember(Name:="in_reply_to_status_id_str")> Public InReplyToStatusIdStr As String
136         <DataMember(Name:="contributors", IsRequired:=False)> Public Contributors As Integer()
137         <DataMember(Name:="in_reply_to_screen_name")> Public InReplyToScreenName As String
138         <DataMember(Name:="in_reply_to_status_id")> Public InReplyToStatusId As String
139         <DataMember(Name:="in_reply_to_user_id_str")> Public InReplyToUserIdStr As String
140         <DataMember(Name:="retweet_count")> Public RetweetCount As String
141         <DataMember(Name:="created_at")> Public CreatedAt As String
142         <DataMember(Name:="geo", IsRequired:=False)> Public Geo As Geo
143         <DataMember(Name:="retweeted")> Public Retweeted As Boolean
144         <DataMember(Name:="in_reply_to_user_id")> Public InReplyToUserId As String
145         <DataMember(Name:="source")> Public Source As String
146         <DataMember(Name:="id_str")> Public IdStr As String
147         <DataMember(Name:="coordinates", IsRequired:=False)> Public Coordinates As Coordinates
148         <DataMember(Name:="truncated")> Public Truncated As Boolean
149         <DataMember(Name:="place", IsRequired:=False)> Public Place As Place
150         <DataMember(Name:="user")> Public User As User
151         <DataMember(Name:="retweeted_status", IsRequired:=False)> Public RetweetedStatus As RetweetedStatus
152         <DataMember(Name:="id")> Public Id As Int64
153         <DataMember(Name:="favorited")> Public Favorited As Boolean
154         <DataMember(Name:="text")> Public Text As String
155     End Class
156
157     <DataContract()> _
158     Public Class Directmessage
159         <DataMember(Name:="created_at")> Public CreatedAt As String
160         <DataMember(Name:="sender_id")> Public SenderId As Int64
161         <DataMember(Name:="sender_screen_name")> Public SenderScreenName As String
162         <DataMember(Name:="sender")> Public Sender As User
163         <DataMember(Name:="id_str")> Public IdStr As String
164         <DataMember(Name:="recipient")> Public Recipient As User
165         <DataMember(Name:="recipient_screen_name")> Public RecipientScreenName As String
166         <DataMember(Name:="recipient_id")> Public RecipientId As Int64
167         <DataMember(Name:="id")> Public Id As Int64
168         <DataMember(Name:="text")> Public Text As String
169     End Class
170
171     <DataContract()> _
172     Public Class Friendsevent
173         <DataMember(Name:="friends")> Public Friends As Int64()
174     End Class
175
176     <DataContract()> _
177     Public Class DeletedStatusContent
178         <DataMember(Name:="id")> Public Id As Int64
179         <DataMember(Name:="user_id")> Public UserId As Int64
180     End Class
181
182     <DataContract()> _
183     Public Class DeletedStatus
184         <DataMember(Name:="status")> Public Status As DeletedStatusContent
185     End Class
186
187     <DataContract()> _
188     Public Class DeleteEvent
189         <DataMember(Name:="delete")> Public [Event] As DeletedStatus
190     End Class
191
192     <DataContract()> _
193     Public Class DeletedDirectmessage
194         <DataMember(Name:="direct_message")> Public Directmessage As DeletedStatusContent
195     End Class
196
197     <DataContract()> _
198     Public Class DeleteDirectmessageEvent
199         <DataMember(Name:="delete")> Public [Event] As DeletedDirectmessage
200     End Class
201     <DataContract()> _
202     Public Class DirectmessageEvent
203         <DataMember(Name:="direct_message")> Public Directmessage As Directmessage
204     End Class
205
206     <DataContract()> _
207     Public Class TrackCount
208         <DataMember(Name:="track")> Public Track As Integer
209     End Class
210
211     <DataContract()> _
212     Public Class LimitEvent
213         <DataMember(Name:="limit")> Public Limit As TrackCount
214     End Class
215
216     <DataContract()> _
217     Public Class EventData
218         <DataMember(Name:="target")> Public Target As User
219         <DataMember(Name:="target_object", isRequired:=False)> Public TargetObject As Status
220         <DataMember(Name:="created_at")> Public CreatedAt As String
221         <DataMember(Name:="event")> Public [Event] As String
222         <DataMember(Name:="source")> Public Source As User
223     End Class
224
225     <DataContract()> _
226     Public Class RelatedTweet
227         <DataMember(Name:="annotations")> Public Annotations As Annotations
228         <DataMember(Name:="kind")> Public Kind As String
229         <DataMember(Name:="score")> Public Score As Double
230         <DataMember(Name:="value")> Public Status As Status
231     End Class
232
233     <DataContract()> _
234     Public Class RelatedResult
235         <DataMember(Name:="annotations")> Public Annotations As Annotations
236         <DataMember(Name:="groupName")> Public GroupName As String
237         <DataMember(Name:="resultType")> Public ResultType As String
238         <DataMember(Name:="results")> Public Results As RelatedTweet()
239         <DataMember(Name:="score")> Public Score As Double
240     End Class
241 End Class