2727import de .flapdoodle .embed .mongo .Command ;
2828import de .flapdoodle .embed .mongo .MongodExecutable ;
2929import de .flapdoodle .embed .mongo .MongodStarter ;
30- import de .flapdoodle .embed .mongo .config .DownloadConfigBuilder ;
31- import de .flapdoodle .embed .mongo .config .ExtractedArtifactStoreBuilder ;
32- import de .flapdoodle .embed .mongo .config .IMongodConfig ;
33- import de .flapdoodle .embed .mongo .config .MongodConfigBuilder ;
30+ import de .flapdoodle .embed .mongo .config .Defaults ;
31+ import de .flapdoodle .embed .mongo .config .ImmutableMongodConfig ;
32+ import de .flapdoodle .embed .mongo .config .MongodConfig ;
3433import de .flapdoodle .embed .mongo .config .Net ;
35- import de .flapdoodle .embed .mongo .config .RuntimeConfigBuilder ;
3634import de .flapdoodle .embed .mongo .config .Storage ;
3735import de .flapdoodle .embed .mongo .distribution .Feature ;
3836import de .flapdoodle .embed .mongo .distribution .IFeatureAwareVersion ;
3937import de .flapdoodle .embed .mongo .distribution .Version ;
4038import de .flapdoodle .embed .mongo .distribution .Versions ;
41- import de .flapdoodle .embed .process .config .IRuntimeConfig ;
39+ import de .flapdoodle .embed .process .config .RuntimeConfig ;
4240import de .flapdoodle .embed .process .config .io .ProcessOutput ;
43- import de .flapdoodle .embed .process .config .store .IDownloadConfig ;
44- import de .flapdoodle .embed .process .distribution . GenericVersion ;
41+ import de .flapdoodle .embed .process .config .store .DownloadConfig ;
42+ import de .flapdoodle .embed .process .config . store . ImmutableDownloadConfig ;
4543import de .flapdoodle .embed .process .io .Processors ;
4644import de .flapdoodle .embed .process .io .Slf4jLevel ;
4745import de .flapdoodle .embed .process .io .progress .Slf4jProgressListener ;
4846import de .flapdoodle .embed .process .runtime .Network ;
49- import de .flapdoodle .embed .process .store .ArtifactStoreBuilder ;
47+ import de .flapdoodle .embed .process .store .ExtractedArtifactStore ;
5048import org .slf4j .Logger ;
5149import org .slf4j .LoggerFactory ;
5250
8179 * @author Yogesh Lonkar
8280 * @author Mark Paluch
8381 * @author Issam El-atif
82+ * @author Paulius Dambrauskas
8483 * @since 1.3.0
8584 */
8685@ Configuration (proxyBeanMethods = false )
@@ -97,14 +96,14 @@ public class EmbeddedMongoAutoConfiguration {
9796
9897 private final MongoProperties properties ;
9998
100- public EmbeddedMongoAutoConfiguration (MongoProperties properties , EmbeddedMongoProperties embeddedProperties ) {
99+ public EmbeddedMongoAutoConfiguration (MongoProperties properties ) {
101100 this .properties = properties ;
102101 }
103102
104103 @ Bean (initMethod = "start" , destroyMethod = "stop" )
105104 @ ConditionalOnMissingBean
106- public MongodExecutable embeddedMongoServer (IMongodConfig mongodConfig , IRuntimeConfig runtimeConfig ,
107- ApplicationContext context ) throws IOException {
105+ public MongodExecutable embeddedMongoServer (MongodConfig mongodConfig , RuntimeConfig runtimeConfig ,
106+ ApplicationContext context ) {
108107 Integer configuredPort = this .properties .getPort ();
109108 if (configuredPort == null || configuredPort == 0 ) {
110109 setEmbeddedPort (context , mongodConfig .net ().getPort ());
@@ -113,7 +112,7 @@ public MongodExecutable embeddedMongoServer(IMongodConfig mongodConfig, IRuntime
113112 return mongodStarter .prepare (mongodConfig );
114113 }
115114
116- private MongodStarter getMongodStarter (IRuntimeConfig runtimeConfig ) {
115+ private MongodStarter getMongodStarter (RuntimeConfig runtimeConfig ) {
117116 if (runtimeConfig == null ) {
118117 return MongodStarter .getDefaultInstance ();
119118 }
@@ -122,8 +121,8 @@ private MongodStarter getMongodStarter(IRuntimeConfig runtimeConfig) {
122121
123122 @ Bean
124123 @ ConditionalOnMissingBean
125- public IMongodConfig embeddedMongoConfiguration (EmbeddedMongoProperties embeddedProperties ) throws IOException {
126- MongodConfigBuilder builder = new MongodConfigBuilder ().version (determineVersion (embeddedProperties ));
124+ public MongodConfig embeddedMongoConfiguration (EmbeddedMongoProperties embeddedProperties ) throws IOException {
125+ ImmutableMongodConfig . Builder builder = MongodConfig . builder ().version (determineVersion (embeddedProperties ));
127126 EmbeddedMongoProperties .Storage storage = embeddedProperties .getStorage ();
128127 if (storage != null ) {
129128 String databaseDir = storage .getDatabaseDir ();
@@ -149,9 +148,11 @@ private IFeatureAwareVersion determineVersion(EmbeddedMongoProperties embeddedPr
149148 return version ;
150149 }
151150 }
152- return Versions .withFeatures (new GenericVersion (embeddedProperties .getVersion ()));
151+ return Versions
152+ .withFeatures (de .flapdoodle .embed .process .distribution .Version .of (embeddedProperties .getVersion ()));
153153 }
154- return Versions .withFeatures (new GenericVersion (embeddedProperties .getVersion ()),
154+ return Versions .withFeatures (
155+ de .flapdoodle .embed .process .distribution .Version .of (embeddedProperties .getVersion ()),
155156 embeddedProperties .getFeatures ().toArray (new Feature [0 ]));
156157 }
157158
@@ -189,29 +190,29 @@ private Map<String, Object> getMongoPorts(MutablePropertySources sources) {
189190
190191 @ Configuration (proxyBeanMethods = false )
191192 @ ConditionalOnClass (Logger .class )
192- @ ConditionalOnMissingBean (IRuntimeConfig .class )
193+ @ ConditionalOnMissingBean (RuntimeConfig .class )
193194 static class RuntimeConfigConfiguration {
194195
195196 @ Bean
196- IRuntimeConfig embeddedMongoRuntimeConfig (
197+ RuntimeConfig embeddedMongoRuntimeConfig (
197198 ObjectProvider <DownloadConfigBuilderCustomizer > downloadConfigBuilderCustomizers ) {
198199 Logger logger = LoggerFactory .getLogger (getClass ().getPackage ().getName () + ".EmbeddedMongo" );
199200 ProcessOutput processOutput = new ProcessOutput (Processors .logTo (logger , Slf4jLevel .INFO ),
200201 Processors .logTo (logger , Slf4jLevel .ERROR ),
201202 Processors .named ("[console>]" , Processors .logTo (logger , Slf4jLevel .DEBUG )));
202- return new RuntimeConfigBuilder ().defaultsWithLogger (Command .MongoD , logger ).processOutput (processOutput )
203+
204+ return Defaults .runtimeConfigFor (Command .MongoD , logger ).processOutput (processOutput )
203205 .artifactStore (getArtifactStore (logger , downloadConfigBuilderCustomizers .orderedStream ()))
204- .daemonProcess (false ).build ();
206+ .isDaemonProcess (false ).build ();
205207 }
206208
207- private ArtifactStoreBuilder getArtifactStore (Logger logger ,
209+ private ExtractedArtifactStore getArtifactStore (Logger logger ,
208210 Stream <DownloadConfigBuilderCustomizer > downloadConfigBuilderCustomizers ) {
209- DownloadConfigBuilder downloadConfigBuilder = new DownloadConfigBuilder ()
210- .defaultsForCommand (Command .MongoD );
211+ ImmutableDownloadConfig .Builder downloadConfigBuilder = Defaults .downloadConfigFor (Command .MongoD );
211212 downloadConfigBuilder .progressListener (new Slf4jProgressListener (logger ));
212213 downloadConfigBuilderCustomizers .forEach ((customizer ) -> customizer .customize (downloadConfigBuilder ));
213- IDownloadConfig downloadConfig = downloadConfigBuilder .build ();
214- return new ExtractedArtifactStoreBuilder (). defaults (Command .MongoD ).download (downloadConfig );
214+ DownloadConfig downloadConfig = downloadConfigBuilder .build ();
215+ return Defaults . extractedArtifactStoreFor (Command .MongoD ).withDownloadConfig (downloadConfig );
215216 }
216217
217218 }
0 commit comments