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.

Artikli relatati