Size: a a a

Scala User Group

2020 October 02

IK

Ivan Klass in Scala User Group
да :)
источник

AS

Artem Sokolov in Scala User Group
object + реализация метода apply
источник

IK

Ivan Klass in Scala User Group
Artem Sokolov
object + реализация метода apply
а имена аргументов-то?
источник

IK

Ivan Klass in Scala User Group
они же динамические
источник

R

RAFIZ in Scala User Group
Sergey Alaev
Если я помню постановку - нужно удалить n записей в одной транзакции, причем батчинг нельзя, т.к. удаление надежно вмуровано в бизнес-логику?
да да, все верно
источник

SA

Sergey Alaev in Scala User Group
RAFIZ
да да, все верно
тогда один коннекшн, как я написал.
источник

R

RAFIZ in Scala User Group
Sergey Alaev
тогда один коннекшн, как я написал.
спасибо. а транзакция то одна?или цель будет достигнута но в обход транзакций?
источник

AS

Artem Sokolov in Scala User Group
Ivan Klass
они же динамические
такс. а что вам тут мешает вызвать example( ... ) ?
источник

AS

Artem Sokolov in Scala User Group
там просто в нейм передастся apply
источник

IK

Ivan Klass in Scala User Group
Artem Sokolov
там просто в нейм передастся apply
ОГО
источник

IK

Ivan Klass in Scala User Group
спасибо, не знал, что можно имя пустым оставлять
источник

SA

Sergey Alaev in Scala User Group
RAFIZ
спасибо. а транзакция то одна?или цель будет достигнута но в обход транзакций?
И транзакция одна. Примитивная реализация на псевдокоде могла бы выглядеть так:
val executor = Executors.singleThreadExecutor()
// execute можно вызывать из любого потока - реализация гарантирует, что connection будет использоваться только на одном и том же потоке
def execute[A](cb: => A): Future[A] = executor.execute(() -> cb).toScalaFuture

И использовать execute для всей работы с коннекшном, от получения до закрытия транзакции
источник

R

RAFIZ in Scala User Group
Sergey Alaev
И транзакция одна. Примитивная реализация на псевдокоде могла бы выглядеть так:
val executor = Executors.singleThreadExecutor()
// execute можно вызывать из любого потока - реализация гарантирует, что connection будет использоваться только на одном и том же потоке
def execute[A](cb: => A): Future[A] = executor.execute(() -> cb).toScalaFuture

И использовать execute для всей работы с коннекшном, от получения до закрытия транзакции
спасибо 🙌🏾
источник

AS

Artem Sokolov in Scala User Group
Ivan Klass
спасибо, не знал, что можно имя пустым оставлять
источник

IK

Ivan Klass in Scala User Group
Да-да, я видел же, потому и написал спасибо. Ещё раз спасибо :)
источник

СГ

Сергей Голод... in Scala User Group
den_po
в последних сбт что-то делали с датами файлов вроде, чтоб получать каждый раз одинаковые бинари на выходе
хотите "прикол"?
cd project
sbt compile (компиляция успешно проходит, повторный запуск sbt compile не перекомпилирует заново проект)
cd ..
cp -a project/ project2/
cd project2
sbt compile

И оно заново ВСЁ перекомпилирует! Почему? Просто потому что имя каталога с проектом изменилось? (project -> project2). Возвращаюсь опять в project/, далее sbt compile - и опять не требуется перекомпиляция
источник

СГ

Сергей Голод... in Scala User Group
Сергей Голод
хотите "прикол"?
cd project
sbt compile (компиляция успешно проходит, повторный запуск sbt compile не перекомпилирует заново проект)
cd ..
cp -a project/ project2/
cd project2
sbt compile

И оно заново ВСЁ перекомпилирует! Почему? Просто потому что имя каталога с проектом изменилось? (project -> project2). Возвращаюсь опять в project/, далее sbt compile - и опять не требуется перекомпиляция
даже переименование собственного каталога в котором расположен проект приводит к его перекомпиляции
источник

S

Simon in Scala User Group
Сергей Голод
даже переименование собственного каталога в котором расположен проект приводит к его перекомпиляции
Вполне вероятно: имя проекта берется из имени каталога и затем уже переопределяется в проекте (или не переопределяется при желании), так что имя каталога важно
источник

СГ

Сергей Голод... in Scala User Group
Simon
Вполне вероятно: имя проекта берется из имени каталога и затем уже переопределяется в проекте (или не переопределяется при желании), так что имя каталога важно
а как переопределить имя проекта таким образом, чтобы имя каталога с репой проекта могло иметь любое название и процесс компиляции не зависел от этого (от имени каталога)?
источник

λ

λoλegΥch in Scala User Group
какой сбт?
источник