Exemplo n.º 1
0
        public async Task <UserComic> CreateUserComic(IResolverContext context)
        {
            Comic            comicInput       = context.Argument <Comic> ("comic");
            StorageContainer storageContainer = context
                                                .Argument <StorageContainer>("storageContainer");

            string userId = context.Argument <string> ("userId");

            if (comicInput is null)
            {
                throw new System.ArgumentNullException(nameof(comicInput));
            }

            _logger.LogDebug("Executing mutation with comic titled: {title}", comicInput.Title);

            UserComic response = await _comicApiRepository.CreateUserComic(
                comicInput,
                storageContainer,
                userId);

            if (response is null)
            {
                throw new CreateComicException($"Unable to add comic {comicInput.Id} for user {userId}");
            }

            return(response);
        }
Exemplo n.º 2
0
        public void Add(int id, string userId)
        {
            if (string.IsNullOrWhiteSpace(userId))
            {
                return;
            }
            var comic = _comicRepository.GetById(id);

            if (comic == null)
            {
                return;
            }
            if (IsFollowing(id, userId))
            {
                return;
            }

            var userComic = new UserComic
            {
                Date    = DateTime.Now,
                ComicId = id,
                UserId  = userId
            };

            _repository.Add(userComic);
            SaveChanges();
        }
        public async Task <UserComic> CreateUserComic(
            UserComic comic,
            string subject)
        {
            var userComic = await ComicStorageClient.Create(comic, subject);

            return(userComic);
        }