Issettja l-proxy tat-tniżżil ta' Flapdoodle qabel ma jibda MongoDB
Ippersonalizza DownloadPackage f'setup Flapdoodle ibbażat fuq tranżizzjonijiet, u ftakar li cache sħuna tista' taqbeż il-passaġġ tal-proxy.
Jekk il-bidu jonqos waqt li jkun qed jinkiseb l-arkivju MongoDB, ikkonfigura d-downloader tal-pakketti ta' Flapdoodle. Il-lista tal-proxy HTTP tista' tipprovdi punti tat-tmiem kandidati għal rotta pubblika tat-tniżżil. Il-klijent tad-database għadu ma għamilx il-konnessjoni aktar tard tiegħu.
Il-personalizzazzjoni moderna ibbażata fuq tranżizzjonijiet tipprovdi l-proxy permezz ta' DownloadPackage:
Mongod mongod = new Mongod() {
@Override
public DownloadPackage downloadPackage() {
return DownloadPackage.withDefaults()
.withDownloadConfig(DownloadConfig.defaults()
.withProxyFactory(() -> Proxys.httpProxy("proxy.example", 8080)));
}
};Uża l-klassijiet mil-libreriji Flapdoodle MongoDB u embedded-process magħżula, imbagħad uża dan Mongod personalizzat fl-applikazzjoni jew fis-setup tat-test. Il-lambda tipprovdi l-proxy HTTP; l-URL tal-arkivju jibqa' d-destinazzjoni tat-tniżżil.
Bidu b'suċċess mill-cache ma jużax dak il-proxy. It-tranżizzjoni tal-pakkett tiċċekkja l-cache tat-tniżżil l-ewwel, għalhekk iddistingwi bejn hit fil-cache u ġibda reali tal-arkivju meta tevalwa r-riżultat tal-bidu.
Dan il-mudell jappartjeni għall-API tat-tranżizzjonijiet. Il-beniijiet eqdem ta' RuntimeConfig u l-eks DownloadConfigBuilderCustomizer ta' Spring Boot jużaw interfaces differenti ta' personalizzazzjoni u tqassim tal-cache; qabbel l-eżempju mal-ġenerazzjoni tad-dipendenzi fl-applikazzjoni.