/* * 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); } } }