public PostRecurrenceController(ILogger <PostRecurrenceController> logger, IRedditService redditService, IConfiguration config) { _logger = logger; _redditService = redditService; _postRecurrenceStorage = new PostRecurrenceEntity(config["ConnectionString"]); _redditUserStorage = new RedditUserEntity(config["ConnectionString"]); }
public PostJob(ILogger <PostJob> logger, IRedditService redditService, IConfiguration config) { _logger = logger; _logger.LogWarning($"Starting post job. App Version {new Settings().AppVersion}"); _postRecurrenceStorage = new PostRecurrenceEntity(config["ConnectionString"]); _redditUserStorage = new RedditUserEntity(config["ConnectionString"]); _redditService = redditService; _logger.LogInformation("Starting PostJob"); }
public async Task <IActionResult> Post([FromBody] RequestDto request) { var redditUser = await _redditUserStorage.FindAsync(request.RedditUserId); if (redditUser == null) { return(BadRequest()); } var postRecurrence = new PostRecurrenceEntity(request.Title, request.Body, string.Join(",", request.Subreddits), request.Interval, request.Email, request.RedditUserId); var savedPostRecrrence = await _postRecurrenceStorage.CreateAsync(postRecurrence); return(Ok(new MessageDto($"Posts scheduled to begin {savedPostRecrrence.NextPost.UtcDateTime}. To stop recurring posts revoke access to app via reddit."))); }