Exemplo n.º 1
0
        private void UnsafeGenericReceive(IEnumerable <ITweetable> list, TwitterResponse response)
        {
            TweetEqualityComparer comparer = new TweetEqualityComparer();

            IsLoading = false;
            if (list == null || response.StatusCode != HttpStatusCode.OK)
            {
                if (Error != null)
                {
                    Error(response);
                }
                return;
            }

            if (SourceChanging != null)
            {
                SourceChanging(this, new EventArgs());
            }

            if (list.Any())
            {
                if (list.FirstOrDefault() is TwitterDirectMessage &&
                    (Resource.Type == ResourceType.Messages && string.IsNullOrWhiteSpace(Resource.Data)))
                {
                    LoadMessages(list.OfType <TwitterDirectMessage>());
                }
                else
                {
                    LoadTweetables(list);
                }
            }

            if (LoadFinished != null && _resource.Type != ResourceType.Conversation)
            {
                LoadFinished(this, new EventArgs());
            }
            else if (PartialLoad != null && _resource.Type == ResourceType.Conversation)
            {
                PartialLoad(this, new EventArgs()); // When loading conversations, calls to this function will be partial.
            }
            SaveToCacheAsync();
        }
Exemplo n.º 2
0
        private void UnsafeGenericReceive(IEnumerable<ITweetable> list, TwitterResponse response)
        {
            TweetEqualityComparer comparer = new TweetEqualityComparer();

            IsLoading = false;
            if (list == null || response.StatusCode != HttpStatusCode.OK)
            {
                if (Error != null)
                    Error(response);
                return;
            }

            if (SourceChanging != null)
                SourceChanging(this, new EventArgs());

            if (list.Any())
            {
                if (list.FirstOrDefault() is TwitterDirectMessage
                    && (Resource.Type == ResourceType.Messages && string.IsNullOrWhiteSpace(Resource.Data)))
                    LoadMessages(list.OfType<TwitterDirectMessage>());
                else
                    LoadTweetables(list);
            }

            if (LoadFinished != null && _resource.Type != ResourceType.Conversation)
                LoadFinished(this, new EventArgs());
            else if (PartialLoad != null && _resource.Type == ResourceType.Conversation)
                PartialLoad(this, new EventArgs()); // When loading conversations, calls to this function will be partial.

            SaveToCacheAsync();
        }