Skip to content

Commit 8e4f5db

Browse files
authored
Merge pull request #3 from DataOne/bugfix
Bugfix of long ids, #2
2 parents 9aabbc1 + d90d9a0 commit 8e4f5db

16 files changed

+57
-57
lines changed

src/YammerShell/CmdLets/GetYmGroup.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -64,16 +64,16 @@ protected override void ProcessRecord()
6464
private YammerGroup GetYammerGroupFromJToken(JToken group)
6565
{
6666
var yammerGroup = new YammerGroup();
67-
yammerGroup.Id = Convert.ToInt32(group["id"]);
67+
yammerGroup.Id = Convert.ToInt64(group["id"]);
6868
yammerGroup.Email = (group["email"] ?? string.Empty).ToString();
6969
yammerGroup.FullName = group["full_name"].ToString();
7070
yammerGroup.Name = group["name"].ToString();
71-
yammerGroup.NetworkId = Convert.ToInt32(group["network_id"]);
71+
yammerGroup.NetworkId = Convert.ToInt64(group["network_id"]);
7272
yammerGroup.Description = (group["description"] ?? string.Empty).ToString();
7373
yammerGroup.Privacy = group["privacy"].ToString();
7474
yammerGroup.Url = (group["web_url"] ?? string.Empty).ToString();
7575
yammerGroup.CreatedAt = (DateTime)(group["created_at"] ?? DateTime.MinValue);
76-
yammerGroup.CreatorId = Convert.ToInt32(group["creator_id"] ?? -1);
76+
yammerGroup.CreatorId = Convert.ToInt64(group["creator_id"] ?? -1);
7777
yammerGroup.Members = Convert.ToInt32(group["stats"]["members"]);
7878
return yammerGroup;
7979
}

src/YammerShell/CmdLets/GetYmMessage.cs

+10-10
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ public class GetYmMessage : PSCmdlet
4848
HelpMessage = "Id of a message",
4949
ParameterSetName = "Id"
5050
)]
51-
public int? Id { get; set; }
51+
public string Id { get; set; }
5252

5353
[Parameter(
5454
ValueFromPipelineByPropertyName = true,
@@ -62,15 +62,15 @@ public class GetYmMessage : PSCmdlet
6262
ValueFromPipeline = true,
6363
HelpMessage = "Returns messages older than this message ID"
6464
)]
65-
public int? OlderThan { get; set; }
65+
public string OlderThan { get; set; }
6666

6767
[Parameter(
6868
ValueFromPipelineByPropertyName = true,
6969
ValueFromPipeline = true,
7070
HelpMessage = "The feed of messages for a hashtag specified by the numeric string ID",
7171
ParameterSetName = "Topic"
7272
)]
73-
public int? Topic { get; set; }
73+
public string Topic { get; set; }
7474

7575
protected override void ProcessRecord()
7676
{
@@ -82,7 +82,7 @@ protected override void ProcessRecord()
8282
}
8383
_request = new Request(token.Value.ToString());
8484

85-
if (Id.HasValue)
85+
if (!string.IsNullOrEmpty(Id))
8686
{
8787
try
8888
{
@@ -162,7 +162,7 @@ public IEnumerable<YammerMessage> GetNetworkMessages()
162162
}
163163
}
164164

165-
if (Topic.HasValue)
165+
if (!string.IsNullOrEmpty(Topic))
166166
{
167167
requestUrl = Properties.Resources.YammerApi + "messages/about_topic/" + Topic + ".json";
168168
return GetMessagesFromApi(requestUrl, parameters);
@@ -210,13 +210,13 @@ private IEnumerable<YammerMessage> GetMessagesFromApi(string requestUrl, string
210210
private YammerMessage GetYammerMessage(JToken message)
211211
{
212212
var yammerMessage = new YammerMessage();
213-
yammerMessage.Id = Convert.ToInt32(message["id"]);
214-
yammerMessage.SenderId = Convert.ToInt32(message["sender_id"]);
215-
yammerMessage.RepliedToId = message.Value<int?>("replied_to_id");
213+
yammerMessage.Id = message["id"].ToString();
214+
yammerMessage.SenderId = message["sender_id"].ToString();
215+
yammerMessage.RepliedToId = message.Value<string>("replied_to_id");
216216
yammerMessage.CreatedAt = (DateTime)message["created_at"];
217-
yammerMessage.NetworkId = Convert.ToInt32(message["network_id"]);
217+
yammerMessage.NetworkId = message["network_id"].ToString();
218218
yammerMessage.MessageType = message["message_type"].ToString();
219-
yammerMessage.GroupId = message.Value<int?>("group_id");
219+
yammerMessage.GroupId = message.Value<string>("group_id");
220220
yammerMessage.Body = message["body"]["plain"].ToString();
221221
yammerMessage.Url = message["web_url"].ToString();
222222

src/YammerShell/CmdLets/GetYmNetwork.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public class GetYmNetwork : PSCmdlet
1717
Position = 0,
1818
HelpMessage = "With this parameter set you request all networks the user has access to but filtered by id."
1919
)]
20-
public int? Id { get; set; }
20+
public long? Id { get; set; }
2121

2222
protected override void ProcessRecord()
2323
{
@@ -36,7 +36,7 @@ protected override void ProcessRecord()
3636
var yammerNetworks = new List<YammerNetwork>();
3737
foreach (var network in JArray.Parse(result))
3838
{
39-
var networkId = Convert.ToInt32(network["id"]);
39+
var networkId = Convert.ToInt64(network["id"]);
4040
if (!Id.HasValue || Id == networkId)
4141
{
4242
yammerNetworks.Add(GetYammerNetwork(network, networkId));
@@ -51,7 +51,7 @@ protected override void ProcessRecord()
5151
}
5252
}
5353

54-
private YammerNetwork GetYammerNetwork(JToken network, int id)
54+
private YammerNetwork GetYammerNetwork(JToken network, long id)
5555
{
5656
var yammerNetwork = new YammerNetwork();
5757
yammerNetwork.Id = id;

src/YammerShell/CmdLets/GetYmUser.cs

+4-4
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public class GetYmUser : PSCmdlet
1818
HelpMessage = "ID of a user",
1919
ParameterSetName = "Id"
2020
)]
21-
public int? Id { get; set; }
21+
public long? Id { get; set; }
2222

2323
[ValidateRange(1,1000)]
2424
[Parameter(
@@ -174,7 +174,7 @@ private IEnumerable<YammerUser> GetYammerUsersInGroup(int? groupId)
174174
return allYammerUsers;
175175
}
176176

177-
public YammerUser GetYammerUser(int id)
177+
public YammerUser GetYammerUser(long id)
178178
{
179179
var result = _request.Get(string.Format("{0}users/{1}.json", Properties.Resources.YammerApi, id));
180180
var user = JObject.Parse(result);
@@ -249,7 +249,7 @@ public IEnumerable<YammerUser> GetYammerUsers()
249249
private YammerUser GetYammerUser(JToken user)
250250
{
251251
var yammerUser = new YammerUser();
252-
yammerUser.Id = Convert.ToInt32(GetToken(user, "id"));
252+
yammerUser.Id = Convert.ToInt64(GetToken(user, "id"));
253253
yammerUser.UserName = GetToken(user, "name");
254254
yammerUser.FirstName = GetToken(user, "first_name");
255255
yammerUser.LastName = GetToken(user, "last_name");
@@ -258,7 +258,7 @@ private YammerUser GetYammerUser(JToken user)
258258
yammerUser.JobTitle = GetToken(user, "job_title");
259259
yammerUser.Department = GetToken(user, "department");
260260
yammerUser.Timezone = GetToken(user, "timezone");
261-
yammerUser.NetworkId = Convert.ToInt32(GetToken(user, "network_id"));
261+
yammerUser.NetworkId = Convert.ToInt64(GetToken(user, "network_id"));
262262
yammerUser.NetworkName = GetToken(user, "network_name");
263263
yammerUser.Url = GetToken(user, "web_url");
264264
var activatedAt = user["activated_at"];

src/YammerShell/CmdLets/NewYmGroup.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ protected override void ProcessRecord()
5555
{
5656
var response = _request.Post(requestUrl, string.Empty);
5757
var newGroup = JObject.Parse(response);
58-
WriteObject(Convert.ToInt32(newGroup["id"]));
58+
WriteObject(Convert.ToInt64(newGroup["id"]));
5959
}
6060
catch (Exception e)
6161
{

src/YammerShell/CmdLets/NewYmMessage.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ protected override void ProcessRecord()
9191
var jObject = JObject.Parse(response);
9292
var messages = JArray.Parse(jObject["messages"].ToString());
9393
var id = messages[0]["id"];
94-
WriteObject(Convert.ToInt32(id));
94+
WriteObject(Convert.ToInt64(id));
9595
}
9696
catch (Exception e)
9797
{

src/YammerShell/CmdLets/NewYmUser.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ protected override void ProcessRecord()
104104
var url = string.Format("{0}users.json?{1}{2}{3}{4}{5}{6}", Properties.Resources.YammerApi, Email, fullName, jobTitle, departmentName, location, workTelephone);
105105
var response = _request.Post(url, string.Empty);
106106
var newUser = JObject.Parse(response);
107-
WriteObject(Convert.ToInt32(newUser["id"]));
107+
WriteObject(Convert.ToInt64(newUser["id"]));
108108
}
109109
catch (Exception e)
110110
{

src/YammerShell/CmdLets/RemoveYmMessage.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public class RemoveYmMessage : PSCmdlet
1515
Position = 0,
1616
HelpMessage = "ID of the message to delete"
1717
)]
18-
public int Id { get; set; }
18+
public long Id { get; set; }
1919

2020
protected override void ProcessRecord()
2121
{

src/YammerShell/CmdLets/SearchYmItem.cs

+14-14
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ private YammerSearchResult GetYammerSearchResult(JObject response)
113113
private YammerUser GetYammerUser(JToken user)
114114
{
115115
var yammerUser = new YammerUser();
116-
yammerUser.Id = Convert.ToInt32(GetToken(user, "id"));
116+
yammerUser.Id = Convert.ToInt64(GetToken(user, "id"));
117117
yammerUser.UserName = GetToken(user, "name");
118118
yammerUser.FirstName = GetToken(user, "first_name");
119119
yammerUser.LastName = GetToken(user, "last_name");
@@ -122,7 +122,7 @@ private YammerUser GetYammerUser(JToken user)
122122
yammerUser.JobTitle = GetToken(user, "job_title");
123123
yammerUser.Department = GetToken(user, "department");
124124
yammerUser.Timezone = GetToken(user, "timezone");
125-
yammerUser.NetworkId = Convert.ToInt32(GetToken(user, "network_id"));
125+
yammerUser.NetworkId = Convert.ToInt64(GetToken(user, "network_id"));
126126
yammerUser.NetworkName = GetToken(user, "network_name");
127127
yammerUser.Url = GetToken(user, "web_url");
128128
var activatedAt = user["activated_at"];
@@ -152,8 +152,8 @@ private YammerFile GetYammerFile(JToken file)
152152
{
153153
var yammerFile = new YammerFile();
154154

155-
yammerFile.Id = Convert.ToInt32(file["id"]);
156-
yammerFile.NetworkId = Convert.ToInt32(file["network_id"]);
155+
yammerFile.Id = Convert.ToInt64(file["id"]);
156+
yammerFile.NetworkId = Convert.ToInt64(file["network_id"]);
157157
yammerFile.GroupId = file.Value<int?>("group_id");
158158
yammerFile.OwnerId = file.Value<int?>("owner_id");
159159
yammerFile.Url = file["web_url"].ToString();
@@ -169,40 +169,40 @@ private YammerFile GetYammerFile(JToken file)
169169
private YammerTopic GetYammerTopic(JToken topic)
170170
{
171171
var yammerTopic = new YammerTopic();
172-
yammerTopic.Id = Convert.ToInt32(topic["id"]);
172+
yammerTopic.Id = Convert.ToInt64(topic["id"]);
173173
yammerTopic.Name = topic["name"].ToString();
174-
yammerTopic.NetworkId = Convert.ToInt32(topic["network_id"]);
174+
yammerTopic.NetworkId = Convert.ToInt64(topic["network_id"]);
175175
yammerTopic.Url = topic["web_url"].ToString();
176176
return yammerTopic;
177177
}
178178

179179
private YammerGroup GetYammerGroup(JToken group)
180180
{
181181
var yammerGroup = new YammerGroup();
182-
yammerGroup.Id = Convert.ToInt32(group["id"]);
182+
yammerGroup.Id = Convert.ToInt64(group["id"]);
183183
yammerGroup.Email = group["email"].ToString();
184184
yammerGroup.FullName = group["full_name"].ToString();
185185
yammerGroup.Name = group["name"].ToString();
186-
yammerGroup.NetworkId = Convert.ToInt32(group["network_id"]);
186+
yammerGroup.NetworkId = Convert.ToInt64(group["network_id"]);
187187
yammerGroup.Description = group["description"].ToString();
188188
yammerGroup.Privacy = group["privacy"].ToString();
189189
yammerGroup.Url = group["web_url"].ToString();
190190
yammerGroup.CreatedAt = (DateTime)group["created_at"];
191-
yammerGroup.CreatorId = Convert.ToInt32(group["creator_id"]);
191+
yammerGroup.CreatorId = Convert.ToInt64(group["creator_id"]);
192192
yammerGroup.Members = Convert.ToInt32(group["stats"]["members"]);
193193
return yammerGroup;
194194
}
195195

196196
private YammerMessage GetYammerMessage(JToken message)
197197
{
198198
var yammerMessage = new YammerMessage();
199-
yammerMessage.Id = Convert.ToInt32(message["id"]);
200-
yammerMessage.SenderId = Convert.ToInt32(message["sender_id"]);
201-
yammerMessage.RepliedToId = message.Value<int?>("replied_to_id");
199+
yammerMessage.Id = message["id"].ToString();
200+
yammerMessage.SenderId = message["sender_id"].ToString();
201+
yammerMessage.RepliedToId = message.Value<string>("replied_to_id");
202202
yammerMessage.CreatedAt = (DateTime)message["created_at"];
203-
yammerMessage.NetworkId = Convert.ToInt32(message["network_id"]);
203+
yammerMessage.NetworkId = message["network_id"].ToString();
204204
yammerMessage.MessageType = message["message_type"].ToString();
205-
yammerMessage.GroupId = message.Value<int?>("group_id");
205+
yammerMessage.GroupId = message.Value<string>("group_id");
206206
yammerMessage.Body = message["body"]["plain"].ToString();
207207
yammerMessage.Url = message["web_url"].ToString();
208208

src/YammerShell/CmdLets/ShowYmRelationships.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -75,15 +75,15 @@ private YammerUser GetYammerUser(JToken user)
7575
{
7676
var yammerUser = new YammerUser();
7777
yammerUser.UserName = GetToken(user, "name");
78-
yammerUser.Id = Convert.ToInt32(GetToken(user, "id"));
78+
yammerUser.Id = Convert.ToInt64(GetToken(user, "id"));
7979
yammerUser.FirstName = GetToken(user, "first_name");
8080
yammerUser.LastName = GetToken(user, "last_name");
8181
yammerUser.FullName = GetToken(user, "full_name");
8282
yammerUser.Email = GetToken(user, "email");
8383
yammerUser.JobTitle = GetToken(user, "job_title");
8484
yammerUser.Department = GetToken(user, "department");
8585
yammerUser.Timezone = GetToken(user, "timezone");
86-
yammerUser.NetworkId = Convert.ToInt32(GetToken(user, "network_id"));
86+
yammerUser.NetworkId = Convert.ToInt64(GetToken(user, "network_id"));
8787
yammerUser.NetworkName = GetToken(user, "network_name");
8888
yammerUser.Url = GetToken(user, "web_url");
8989
var activatedAt = user["activated_at"];

src/YammerShell/YammerObjects/YammerFile.cs

+4-4
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ namespace YammerShell.YammerObjects
44
{
55
public class YammerFile
66
{
7-
public int Id { get; set; }
8-
public int NetworkId { get; set; }
9-
public int? GroupId { get; set; }
10-
public int? OwnerId { get; set; }
7+
public long Id { get; set; }
8+
public long NetworkId { get; set; }
9+
public long? GroupId { get; set; }
10+
public long? OwnerId { get; set; }
1111
public string Url { get; set; }
1212
public string Name { get; set; }
1313
public string Description { get; set; }

src/YammerShell/YammerObjects/YammerGroup.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,16 @@ namespace YammerShell.YammerObjects
44
{
55
public class YammerGroup
66
{
7-
public int Id { get; set; }
7+
public long Id { get; set; }
88
public string Email { get; set; }
99
public string FullName { get; set; }
1010
public string Name { get; set; }
11-
public int NetworkId { get; set; }
11+
public long NetworkId { get; set; }
1212
public string Description { get; set; }
1313
public string Privacy { get; set; }
1414
public string Url { get; set; }
1515
public DateTime CreatedAt { get; set; }
16-
public int CreatorId { get; set; }
16+
public long CreatorId { get; set; }
1717
public int Members { get; set; }
1818
}
1919
}

src/YammerShell/YammerObjects/YammerMessage.cs

+5-5
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@ namespace YammerShell.YammerObjects
55
{
66
public class YammerMessage
77
{
8-
public int Id { get; set; }
9-
public int SenderId { get; set; }
10-
public int? RepliedToId { get; set; }
8+
public string Id { get; set; }
9+
public string SenderId { get; set; }
10+
public string RepliedToId { get; set; }
1111
public DateTime CreatedAt { get; set; }
12-
public int NetworkId { get; set; }
12+
public string NetworkId { get; set; }
1313
public string MessageType { get; set; }
14-
public int? GroupId { get; set; }
14+
public string GroupId { get; set; }
1515
public string Body { get; set; }
1616
public IEnumerable<string> AttachmentUrls { get; set; }
1717
public string Url { get; set; }

src/YammerShell/YammerObjects/YammerNetwork.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ namespace YammerShell.YammerObjects
44
{
55
public class YammerNetwork
66
{
7-
public int Id { get; set; }
7+
public long Id { get; set; }
88
public string Email { get; set; }
99
public string Name { get; set; }
1010
public string Url { get; set; }

src/YammerShell/YammerObjects/YammerTopic.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
{
33
public class YammerTopic
44
{
5-
public int Id { get; set; }
6-
public int NetworkId { get; set; }
5+
public long Id { get; set; }
6+
public long NetworkId { get; set; }
77
public string Name { get; set; }
88
public string Url { get; set; }
99
}

src/YammerShell/YammerObjects/YammerUser.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ namespace YammerShell.YammerObjects
55
{
66
public class YammerUser
77
{
8-
public int Id { get; set; }
8+
public long Id { get; set; }
99
public string UserName { get; set; }
1010
public string FirstName { get; set; }
1111
public string LastName { get; set; }
@@ -14,7 +14,7 @@ public class YammerUser
1414
public string JobTitle { get; set; }
1515
public string Department { get; set; }
1616
public string Timezone { get; set; }
17-
public int NetworkId { get; set; }
17+
public long NetworkId { get; set; }
1818
public string NetworkName { get; set; }
1919
public IEnumerable<string> PhoneNumbers { get; set; }
2020
public DateTime ActivatedAt { get; set; }

0 commit comments

Comments
 (0)