Beispiel #1
0
        public async Task <Listing> GetMoreComments(string subredditId, string linkId, IEnumerable <string> ids)
        {
            var targetListing = new Listing {
                Data = new ListingData {
                    Children = new List <Thing>()
                }
            };
            DBCursor moreCursor = null;

            try
            {
                foreach (var id in ids)
                {
                    var keyspace = GenerateDirectKeyspace(subredditId, linkId, id);
                    moreCursor = await _commentsDB.SeekAsync(_commentsDB.GetKeys()[1], keyspace, DBReadFlags.NoLock);

                    await DeserializeCursor(moreCursor, -1, targetListing);

                    await FillInChildren(targetListing);
                }
            }
            finally
            {
                if (moreCursor != null)
                {
                    moreCursor.Dispose();
                }
            }
            return(targetListing);
        }