| /* |
| * Copyright (c) 2007 Mockito contributors |
| * This program is made available under the terms of the MIT License. |
| */ |
| |
| package org.mockitousage.examples.use; |
| |
| import java.util.List; |
| |
| public class ArticleManager { |
| |
| private final ArticleCalculator calculator; |
| private final ArticleDatabase database; |
| |
| public ArticleManager(ArticleCalculator calculator, ArticleDatabase database) { |
| this.calculator = calculator; |
| this.database = database; |
| } |
| |
| public void updateArticleCounters(String newspaper) { |
| int articles = calculator.countArticles(newspaper); |
| int polishArticles = calculator.countArticlesInPolish(newspaper); |
| |
| database.updateNumberOfArticles(newspaper, articles); |
| database.updateNumberOfPolishArticles(newspaper, polishArticles); |
| database.updateNumberOfEnglishArticles(newspaper, articles - polishArticles); |
| } |
| |
| public void updateRelatedArticlesCounters(String newspaper) { |
| List<Article> articles = database.getArticlesFor("Guardian"); |
| for (Article article : articles) { |
| int numberOfRelatedArticles = calculator.countNumberOfRelatedArticles(article); |
| article.setNumberOfRelatedArticles(numberOfRelatedArticles); |
| database.save(article); |
| } |
| } |
| } |