in fapi-client/src/main/scala/com/gu/facia/api/FAPI.scala [34:46]
def getCollection(collectionId: String)
(implicit capiClient: ContentApiClient, faciaClient: ApiClient, ec: ExecutionContext): Response[Collection] = {
val fCollectionJson = faciaClient.collection(collectionId)
val fConfigJson = faciaClient.config
for {
collectionJson <- Response.Async.Right(fCollectionJson)
configJson <- Response.Async.Right(fConfigJson)
collectionConfigJson <- Response.fromOption(configJson.collections.get(collectionId), NotFound(s"Collection config not found for $collectionId"))
collectionConfig = CollectionConfig.fromCollectionJson(collectionConfigJson)
} yield {
Collection.fromCollectionJsonConfigAndContent(collectionId, collectionJson, collectionConfig)
}
}