Пример #1
0
        public async Task <HttpResponseMessage> GetFeed([FromUri] string subscriptionId)
        {
            var          subscription = new SubscriptionId(subscriptionId);
            AtomDocument document     = await atomDocumentRetriever.GetHeadDocument(subscription);

            return(SerialiseDocumentToResonse(document));
        }
        public async Task <AtomDocument> GetHeadDocument(SubscriptionId subscriptionId)
        {
            logger.Info("LoggingAtomDocumentRetrieverDecorator.GetHeadDocument " + subscriptionId.Id);
            try
            {
                var document = await decoratedRetriever.GetHeadDocument(subscriptionId);

                logger.Info($"LoggingAtomDocumentRetrieverDecorator.GetHeadDocument: Returning id {document.DocumentId.Id} with {document.Entries.Count} events in");

                logger.Info(new AtomDocumentSerialiser().Serialise(document, "http://localhost:3600/events/atom/document/"));

                return(document);
            }
            catch (System.Exception e)
            {
                logger.Error(e.ToString());
                throw;
            }
        }