in mobile-save-for-later/src/main/scala/com/gu/sfl/lib/SavedArticlesMerger.scala [20:30]
private def persistMergedArticles(userId: String, articles: SavedArticles)( persistOperation: (String, SavedArticles) => Try[Option[SavedArticles]] ): Either[SaveForLaterError, SavedArticles] = {
val articlesToPersist = articles.mostRecent(savedArticlesMergerConfig.maxSavedArticlesLimit)
persistOperation(userId, articlesToPersist) match {
case Success(Some(articles)) =>
logger.debug(s"success persisting articles for ${userId}")
Right(articles)
case Failure(e) =>
logger.debug(s"Error persisting articles for ${userId}. Error: ${e.getMessage}")
Left(SavedArticleMergeError("Could not update articles"))
}
}