Ejemplo n.º 1
0
        public async Task ProcessBookmark(CreateBookmarkRequest request)
        {
            var response = await _httpClient.GetAsync(request.Url);

            if (response.IsSuccessStatusCode)
            {
                var tempFileName = Path.GetTempFileName();
                using (var fileStream =
                           new FileStream(tempFileName, FileMode.CreateNew, FileAccess.ReadWrite))
                {
                    var stream = await response.Content.ReadAsStreamAsync();

                    await stream.CopyToAsync(fileStream);
                }

                var result = KindleConverter.Create(tempFileName)
                             .SetCompressionLevel(CompressionLevel.NoCompression)
                             .Convert();
                if (result.IsSuccess)
                {
                    string filePath = tempFileName.Replace(".tmp", ".mobi");
                    await _capPublisher.PublishAsync(Constants.SaveBookmarkQueue, new SaveBookmarkRequest()
                    {
                        UserId   = request.UserId,
                        Url      = request.Url,
                        FilePath = filePath
                    });
                }
            }
        }
        public ActionResult Post([FromBody] Bookmark bookmark)
        {
            CreateBookmarkRequest request = new CreateBookmarkRequest
            {
                FeatureId = bookmark.Url
            };

            requestBus.ProcessRequest <CreateBookmarkRequest, object>(request);

            return(Ok());
        }
Ejemplo n.º 3
0
        public async Task <ResponseBase> AddToQueueAsync(CreateBookmarkRequest request)
        {
            var response = new ResponseBase();

            try
            {
                request.UserId = _userProvider.GetUserId();
                await _capPublisher.PublishAsync(Constants.BookmarkQueue, request);

                response.StatusCode = (int)HttpStatusCode.Accepted;
            }
            catch (Exception)
            {
                response.StatusCode = (int)HttpStatusCode.InternalServerError;
            }

            return(response);
        }
        public void CreateBookmark(string featureId)
        {
            CreateBookmarkRequest request = new CreateBookmarkRequest
            {
                FeatureId = featureId
            };

            Bookmark bookmark = requestBus.ProcessRequest <CreateBookmarkRequest, Bookmark>(request);

            CreateBookmarkViewModel viewModel = new CreateBookmarkViewModel
            {
                IsSuccess = true,
                Url       = bookmark.Url
            };

            CreateBookmarkView view = new CreateBookmarkView(viewModel);

            view.Display();
        }
 public Task CreateBookmark([FromQuery] CreateBookmarkRequest createBookmarkRequest)
 {
     return(_textBusiness.CreateBookmarkAsync(new CreateBookmark(UserId, createBookmarkRequest.TextId)));
 }
Ejemplo n.º 6
0
        public async Task <IActionResult> Create([FromBody] CreateBookmarkRequest request)
        {
            var response = await _bookmarkService.AddToQueueAsync(request);

            return(Result(response));
        }