private static void Main(string[] args) { JsonObjectReader objectReader = new JsonObjectReader(); dynamic book = new JObject(); book.title = "The Greatest Book Ever"; book.publishDate = DateTime.Parse("01/15/2015"); book.authors = new JArray("Margaret Jones", "Eli Mather", "Ted Smith"); /*------------------------------------------------------*/ var objectFileDir = Directory.GetCurrentDirectory(); var objectFile = Path.Combine(objectFileDir, "Book.json"); var obj = objectReader.LoadJsonObject(objectFile); Console.WriteLine("//////////////////////////////////////////////"); foreach (var token in obj.Properties()) { Console.WriteLine(token.Name + " - " + token.Value); Console.WriteLine("Token indexed: " + obj[token.Name]); } //var foo = obj.Where(p => p.Name == "Title");//.Select(p => p.Value); //TO DO /* * register methods on objects - store in JSON file with object properties * get data on the property, search the object properties? */ if (Debugger.IsAttached) { Console.Read(); } }
public ServerEmojiUpdate(JObject data) { JsonObjectReader r = data.GetReader(); ServerId = r.ReadSnowflake("guild_id"); Emojis = r.ReadObjectArray <EmojiJson>("emojis").Select(x => ServerEmoji.CreateFromJson(ServerId, x, null)).ToArray(); }
public ServerRole(JObject data) { JsonObjectReader r = data.GetReader(); ServerId = r.ReadSnowflake("server_id"); Role = Role.CreateFromJson(ServerId, r.ReadObject <RoleJson>("role"), null); }
public ServerUserUpdate(JObject data) : base(data, true) { JsonObjectReader r = data.GetReader(); UserRoles = r.ReadSnowflakeArray("roles"); Nickname = r.ReadString("nick"); }
public RawMessage(JObject data, bool isSet) { JsonObjectReader r = data.GetReader(); ChannelId = r.ReadSnowflake("channel_id"); Messages = isSet ? r.ReadSnowflakeArray("ids") : new ulong[] { r.ReadSnowflake("id") }; }
public Webhook(JObject data) { JsonObjectReader r = data.GetReader(); ServerId = r.ReadSnowflake("guild_id"); ChannelId = r.ReadSnowflake("channel_id"); }
public ReactionRemoveAll(JObject data) { JsonObjectReader r = data.GetReader(); MessageId = r.ReadSnowflake("message_id"); ChannelId = r.ReadSnowflake("channel_id"); }
public static UnityObjectHandle ToObjectHandle(Object obj) { var handle = new UnityObjectHandle(); if (!obj || null == obj) { return(handle); } #if UNITY_EDITOR var json = UnityEditor.EditorJsonUtility.ToJson(new Container { o = obj }); json = json.Substring(5, json.Length - 6); var reader = new JsonObjectReader(json); reader.ReadBeginObject(); reader.ReadPropertyNameSegment(); // fileID handle.FileId = reader.ReadInt64(); reader.ReadValueSeparator(); reader.ReadPropertyNameSegment(); // guid handle.Guid = reader.ReadString(); reader.ReadValueSeparator(); reader.ReadPropertyNameSegment(); // type handle.Type = reader.ReadInt32(); reader.ReadValueSeparator(); #endif return(handle); }
public ServerRoleDelete(JObject data) { JsonObjectReader r = data.GetReader(); RoleId = r.ReadSnowflake("role_id"); ServerId = r.ReadSnowflake("guild_id"); }
public GatewayHelloData(JObject obj) : this() { var r = new JsonObjectReader(obj); HeartbeatInterval = TimeSpan.FromMilliseconds(r.ReadDouble(_heartbeatKey)); ConnectedServers = r.ReadStringArray(_traceKey); }
internal WebhookMessage(JsonObjectReader r) : base(r) { WebhookId = r.ReadString("webhook_id"); Type = MessageType.Webhook; var json = r.ReadObject <UserJson>("author"); WebhookUsername = json.username; WebhookAvatar = json.avatar; }
public ChannelPinsUpdate(JObject data) { JsonObjectReader r = data.GetReader(); ChannelId = r.ReadSnowflake("channel_id"); string ts = r.ReadNullableString("list_pin_timestamp"); LastPinTime = ts != null?DateTime.Parse(ts) : DateTime.MinValue; }
internal override void UpdateInstance(JsonObjectReader r) { base.UpdateInstance(r); WebhookId = r.ReadString("webhook_id"); Type = MessageType.Webhook; var json = r.ReadObject <UserJson>("author"); WebhookUsername = json.username; WebhookAvatar = json.avatar; }
public ServerUserSet(JObject data) { JsonObjectReader r = data.GetReader(); ServerId = r.ReadSnowflake("guild_id"); Users = r.ReadObjectArray <ServerUserJson>("members").Select(x => { User res = User.CreateFromJson(x.user, ServerId); LazyUser.PushServerData(ServerId, x); return(res); }).ToArray(); }
public Ready(JObject data) { JsonObjectReader r = data.GetReader(); ProtocolVersion = r.ReadInt32("v"); ClientServerUser = User.CreateFromJson(r.ReadObject("user").ToObject <UserJson>(), null); // ReSharper disable once CoVariantArrayConversion (read-only) DmChannels = r.ReadArray("private_channels").AllObject <ChannelJson>().Select(x => DirectMessageTextChannel.CreateFromJson(x, null)).ToArray(); ServersToCreate = r.ReadObjectArray <UaServerJson>("guilds").Where(x => x.unavailable).Select(x => x.id).ToList(); SessionId = r.ReadString("session_id"); Trace = r.ReadStringArray("_trace"); }
public Reaction(JObject data) { JsonObjectReader r = data.GetReader(); ReactorId = r.ReadSnowflake("user_id"); MessageId = r.ReadSnowflake("message_id"); ChannelId = r.ReadSnowflake("channel_id"); JsonObjectReader re = r.ReadObject("emoji"); ulong? emojiId = re.ReadNullableSnowflake("id"); string name = re.ReadString("name"); Emoji = emojiId != null ? (Emoji) new LazyServerEmoji((ulong)emojiId, name) : new GlobalEmoji(name); }
internal virtual void UpdateInstance(JsonObjectReader r) { ulong cid = r.ReadSnowflake("channel_id"); if (cid != ChannelId) { ChannelId = cid; Channel = new CachedPromise <TextChannel>(new AliasCache <IChannel, TextChannel>(ChannelUtils._globalCache), ChannelId, TextChannel.GetAsync); } // author and webhook_id should be dealt with in this method's overloads if (r.Contains("content")) { Content = r.ReadString("content"); } if (r.Contains("timestamp")) { CreationTime = DateTime.Parse(r.ReadString("timestamp")); } if (r.Contains("edited_timestamp")) { string letStr = r.ReadNullableString("edited_timestamp"); if (letStr != null) { LastEditTime = (DateTime?)DateTime.Parse(letStr); } } if (r.Contains("tts")) { IsTextToSpeech = r.ReadBoolean("tts"); } if (r.Contains("mention_everyone")) { MentionedEveryone = r.ReadBoolean("mention_everyone"); } if (r.Contains("mentions")) { MentionedUsers = r.ReadObjectArray <UserJson>("mentions").Select(x => User.CreateFromJson(x, null)).ToIdDic(); } if (r.Contains("mention_roles")) { MentionedRoles = r.ReadObjectArray <RoleJson>("mention_roles").Select(x => Role.CreateFromJson(((IServerChannel)Channel.GetCachedValue()).ServerId, x, null)).ToIdDic(); } if (r.Contains("pinned")) { IsPinned = r.ReadBoolean("pinned"); } if (r.Contains("type")) { MsgType = (InternalMessageType)r.ReadInt32("type"); } }
public ServerUser(JObject data, bool seperate) { if (seperate) { JsonObjectReader r = data.GetReader(); ServerId = r.ReadSnowflake("guild_id"); Data = User.CreateFromJson(r.ReadObject <UserJson>("user"), ServerId); } else { var json = data.ToObject <ServerUserGatewayJson>(); ServerId = json.guild_id; Data = User.CreateFromJson(json, ServerId); } }
public override void Initialize(IHostContext hostContext) { base.Initialize(hostContext); var assembly = Assembly.GetExecutingAssembly(); var json = default(string); using (var stream = assembly.GetManifestResourceStream("GitHub.Runner.Worker.action_yaml.json")) using (var streamReader = new StreamReader(stream)) { json = streamReader.ReadToEnd(); } var objectReader = new JsonObjectReader(null, json); _actionManifestSchema = TemplateSchema.Load(objectReader); ArgUtil.NotNull(_actionManifestSchema, nameof(_actionManifestSchema)); Trace.Info($"Load schema file with definitions: {StringUtil.ConvertToJson(_actionManifestSchema.Definitions.Keys)}"); }
internal static Message Create(JObject obj) { JsonObjectReader r = obj.GetReader(); ulong id = r.ReadSnowflake("id"); return(_cache.Mutex(() => { Message res; if (_cache.Contains(id)) { res = _cache[id]; res.UpdateInstance(r); } else { res = r.Contains("webhook_id") ? (Message) new WebhookMessage(r) : new StandardMessage(r); } return res; })); }
internal static Message Update(JObject obj) { JsonObjectReader r = obj.GetReader(); ulong id = r.ReadSnowflake("id"); return(_cache.Mutex(() => { Message res; if (_cache.Contains(id)) { res = _cache[id]; res.UpdateInstance(r); } else { // TODO: Create new message object when GET Message endpoint is done res = null; } return res; })); }
// TODO: Make channel concrete instead of a promise, and thus fix the cast error protected Message(JsonObjectReader r) { Id = r.ReadSnowflake("id"); ChannelId = r.ReadSnowflake("channel_id"); Channel = new CachedPromise <TextChannel>(new AliasCache <IChannel, TextChannel>(ChannelUtils._globalCache), ChannelId, TextChannel.GetAsync); Content = r.ReadString("content"); CreationTime = DateTime.Parse(r.ReadString("timestamp")); string letStr = r.ReadNullableString("edited_timestamp"); if (letStr != null) { LastEditTime = (DateTime?)DateTime.Parse(letStr); } IsTextToSpeech = r.ReadBoolean("tts"); MentionedEveryone = r.ReadBoolean("mention_everyone"); MentionedUsers = r.ReadObjectArray <UserJson>("mentions").Select(x => User.CreateFromJson(x, null)).ToIdDic(); MentionedRoles = r.ReadObjectArray <RoleJson>("mention_roles").Select(x => Role.CreateFromJson(((IServerChannel)Channel.GetCachedValue()).ServerId, x, null)).ToIdDic(); IsPinned = r.ReadBoolean("pinned"); MsgType = (InternalMessageType)r.ReadInt32("type"); _cache.Add(this); }
public void SetUp() { var srTracker = new StreamReader(mockTrackerPath); mockTrackerData = srTracker.ReadToEnd(); var srDevice = new StreamReader(mockDevicePath); mockDeviceData = srDevice.ReadToEnd(); Mock <IFileMgr> mockFileMgr = new Mock <IFileMgr>(); mockFileMgr.Setup(fm => fm.GetContent(mockTrackerPath)).Returns(mockTrackerData); mockFileMgr.Setup(fm => fm.GetContent(mockDevicePath)).Returns(mockDeviceData); jsonObjectReaderTracker = new JsonObjectReader <TrackerRecord>(mockFileMgr.Object); jsonObjectReaderDevice = new JsonObjectReader <DeviceRecord>(mockFileMgr.Object); }
internal StandardMessage(JsonObjectReader r) : base(r) { Author = User.CreateFromJson(r.ReadObject <UserJson>("author"), null); Type = Author.IsBot ? MessageType.Bot : MessageType.User; }