Ställ in Flapdoodles nedladdningsproxy innan MongoDB startar
Anpassa DownloadPackage i en övergångsbaserad Flapdoodle-konfiguration och kom ihåg att en varm cache kan hoppa över proxyvägen.
Om starten misslyckas när MongoDB-arkivet hämtas, konfigurera Flapdoodles paketnedladdare. HTTP-proxylistan kan ge kandidatändpunkter för en offentlig nedladdningsväg. Databasklienten har ännu inte gjort sin senare anslutning.
Den moderna övergångsbaserade anpassningen tillhandahåller proxyn via DownloadPackage:
Mongod mongod = new Mongod() {
@Override
public DownloadPackage downloadPackage() {
return DownloadPackage.withDefaults()
.withDownloadConfig(DownloadConfig.defaults()
.withProxyFactory(() -> Proxys.httpProxy("proxy.example", 8080)));
}
};Använd klasserna från de valda Flapdoodle MongoDB- och embedded-process-biblioteken och använd sedan denna anpassade Mongod i applikationen eller testuppsättningen. Lambdan tillhandahåller HTTP-proxyn; arkiv-URL:en är fortfarande nedladdningsmålet.
En lyckad start från cachen använder inte den proxyn. Paketövergången kontrollerar nedladdningscachen först, så skilj en cacheträff från en faktisk arkivhämtning när du utvärderar startresultatet.
Detta mönster hör till övergångs-API:t. Äldre RuntimeConfig-byggare och Spring Boots tidigare DownloadConfigBuilderCustomizer använder andra anpassnings- och cachelayoutgränssnitt; matcha exemplet mot beroendegenerationen i applikationen.