что-то типа LazySingltonResource[F]?
Проблема/задача в следующем:
Есть приложение, которому нужно работать с другими сервисами по http.
Сча для этого создается http4s.Client[F], который распихивается по различным местам(3 места).
Однако настройки приложения позволяют работать и без взаимодействия с другими сервисами.
Например, заменяя отправку запросов логгированием в файл.
И вот хочется такую штуку
LazySingltonResource.createIfNotExists(): Resource[F, Client[F]]
чтобы она создавала ресурс при первом вызове, подсчитывала кол-во использований и закрывала ресурс, как только все секции
.use { resource => ... } завершены.
А если после завершения последнего юза снова понадобится?
давно играюсь с этой идей. В таком варианте пишется легко, но мне хочется большего.
Обсуждают сегодня