Stel Flapdoodle se aflaai-volmag voordat MongoDB begin
Pas DownloadPackage aan in 'n oorgangsgebaseerde Flapdoodle-opstelling, en onthou dat 'n warm kas die volmagpad kan oorslaan.
As die opstart misluk terwyl die MongoDB-argief afgelaai word, stel Flapdoodle se pakket-aflaaier op. Die HTTP-volmaglys kan kandidaat-eindpunte vir 'n openbare aflaairoete lewer. Die databasis-kliënt het nog nie sy latere verbinding gemaak nie.
Die moderne oorgangsgebaseerde aanpassing lewer die volmag deur DownloadPackage:
Mongod mongod = new Mongod() {
@Override
public DownloadPackage downloadPackage() {
return DownloadPackage.withDefaults()
.withDownloadConfig(DownloadConfig.defaults()
.withProxyFactory(() -> Proxys.httpProxy("proxy.example", 8080)));
}
};Gebruik die klasse uit die gekose Flapdoodle MongoDB- en embedded-process-biblioteke, en gebruik dan hierdie aangepaste Mongod in die toepassing of toetsopstelling. Die lambda lewer die HTTP-volmag; die argief-URL bly die aflaai-bestemming.
'n Suksesvolle gekaste opstart gebruik nie daardie volmag nie. Die pakket-oorgang kyk eerste na die aflaai-kas, so onderskei 'n kas-treffer van 'n werklike argief-aflaai wanneer jy die opstartresultaat beoordeel.
Hierdie patroon hoort by die oorgangs-API. Ouer RuntimeConfig-bouers en Spring Boot se voormalige DownloadConfigBuilderCustomizer gebruik ander aanpassings- en kas-uitleg-koppelvlakke; pas die voorbeeld by die afhanklikheidsgenerasie in die toepassing aan.