StarryEyes.Anomaly.TwitterApi.DataModels.TwitterStatus.SetTextAndEntities C# (CSharp) Method

SetTextAndEntities() private method

private SetTextAndEntities ( dynamic root ) : void
root dynamic
return void
        private void SetTextAndEntities(dynamic root)
        {
            if (root.full_text())
            {
                this.Text = ParsingExtension.ResolveEntity(root.full_text);
            }
            else if (root.text())
            {
                this.Text = ParsingExtension.ResolveEntity(root.text);
            }
            if (root.extended_entities())
            {
                // get correctly typed entities array
                var orgEntities = (TwitterEntity[])Enumerable.ToArray(TwitterEntity.GetEntities(root.entities));
                var extEntities = (TwitterEntity[])Enumerable.ToArray(TwitterEntity.GetEntities(root.extended_entities));

                // merge entities
                this.Entities = orgEntities
                    .Where(e => e.EntityType != EntityType.Media)
                    .Concat(extEntities) // extended entities contains media entities only.
                    .ToArray();
            }
            else if (root.entities())
            {
                this.Entities = Enumerable.ToArray(TwitterEntity.GetEntities(root.entities));
            }
            else
            {
                this.Entities = new TwitterEntity[0];
            }
        }