1 /* Copyright (c) 2019 AT&T Intellectual Property. #
\r
3 # Licensed under the Apache License, Version 2.0 (the "License"); #
\r
4 # you may not use this file except in compliance with the License. #
\r
5 # You may obtain a copy of the License at #
\r
7 # http://www.apache.org/licenses/LICENSE-2.0 #
\r
9 # Unless required by applicable law or agreed to in writing, software #
\r
10 # distributed under the License is distributed on an "AS IS" BASIS, #
\r
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
\r
12 # See the License for the specific language governing permissions and #
\r
13 # limitations under the License. #
\r
14 ##############################################################################*/
\r
17 package org.oran.otf.api.tests.config;
\r
19 import de.flapdoodle.embed.mongo.Command;
\r
20 import de.flapdoodle.embed.mongo.MongodExecutable;
\r
21 import de.flapdoodle.embed.mongo.MongodStarter;
\r
22 import de.flapdoodle.embed.mongo.config.DownloadConfigBuilder;
\r
23 import de.flapdoodle.embed.mongo.config.ExtractedArtifactStoreBuilder;
\r
24 import de.flapdoodle.embed.mongo.config.IMongodConfig;
\r
25 import de.flapdoodle.embed.mongo.config.MongodConfigBuilder;
\r
26 import de.flapdoodle.embed.mongo.config.Net;
\r
27 import de.flapdoodle.embed.mongo.config.RuntimeConfigBuilder;
\r
28 import de.flapdoodle.embed.mongo.distribution.Version.Main;
\r
29 import de.flapdoodle.embed.process.config.IRuntimeConfig;
\r
30 import de.flapdoodle.embed.process.config.store.HttpProxyFactory;
\r
31 import de.flapdoodle.embed.process.runtime.Network;
\r
32 import org.springframework.beans.factory.annotation.Autowired;
\r
33 import org.springframework.context.annotation.Bean;
\r
34 import org.springframework.context.annotation.Configuration;
\r
35 import org.springframework.context.annotation.Profile;
\r
39 public class InMemory {
\r
40 @Autowired MongodStarter mongodStarter;
\r
43 public MongodStarter mongodStarter(){
\r
44 Command command = Command.MongoD;
\r
45 IRuntimeConfig runtimeConfig = new RuntimeConfigBuilder()
\r
47 .artifactStore(new ExtractedArtifactStoreBuilder()
\r
49 .download(new DownloadConfigBuilder()
\r
50 .defaultsForCommand(command)
\r
51 //.downloadPath("http://fastdl.mongodb.org/win32/")
\r
52 .proxyFactory(new HttpProxyFactory("localhost",8080))))
\r
55 MongodStarter starter = MongodStarter.getInstance(runtimeConfig);
\r
57 return MongodStarter.getInstance(runtimeConfig);
\r
60 public MongodExecutable mongodExecutable()throws Exception{
\r
61 IMongodConfig mongodConfig = new MongodConfigBuilder().version(Main.PRODUCTION)
\r
62 .net(new Net("localhost", 5555, Network.localhostIsIPv6()))
\r
64 //MongodStarter starter = MongodStarter.getDefaultInstance();
\r
65 return mongodStarter.prepare(mongodConfig);
\r