public Workflow(ILogger logger, ITwitterService twitterService, IFootballAPIClient footballAPI, IDatabaseOperations database, ITweetBuilder tweetBuilder, IInterestCalculator interestCalculator) { _logger = logger; _twitterService = twitterService; _footballAPI = footballAPI; _database = database; _tweetBuilder = tweetBuilder; _interestCalculator = interestCalculator; _getMatchScoreFromAPIStep = new GetMatchScoreFromAPI(_logger, _footballAPI); _getLastMatchCheckTimeStep = new GetLastMatchCheckTimeFromDatabase(_logger, _database); _buildMatchTweetStep = new BuildMatchTweet(_logger, _tweetBuilder); _getMatchesFromAPIStep = new GetMatchesFromAPI(_logger, _footballAPI); _getMatchesToSearchFromDatabaseStep = new GetMatchesToSearchFromDatabase(_logger, _database); _getMatchStatsFromAPIStep = new GetMatchStatsFromAPI(_logger, _footballAPI); _persistMatchesToDatabaseStep = new PersistMatchesToDatabase(_logger, _database); _processMatchStatsStep = new ProcessMatchStats(_logger, _interestCalculator); _sendMatchTweetStep = new SendMatchTweet(_logger, _twitterService); _updateMatchTwitterStatusStep = new UpdateMatchTwitterStatus(_logger, _database); }
public GetMatchScoreFromAPI(ILogger logger, IFootballAPIClient api) { _logger = logger; _api = api; }