File tree Expand file tree Collapse file tree 1 file changed +18
-4
lines changed
src/main/java/com/mageddo/dnsproxyserver/server Expand file tree Collapse file tree 1 file changed +18
-4
lines changed Original file line number Diff line number Diff line change 9
9
10
10
import javax .inject .Inject ;
11
11
import javax .inject .Singleton ;
12
-
13
12
import java .util .Set ;
14
13
15
14
import static com .mageddo .dnsproxyserver .quarkus .Quarkus .isTest ;
19
18
@ RequiredArgsConstructor (onConstructor = @ __ ({@ Inject }))
20
19
public class Starter {
21
20
21
+ public static final String DNS_SERVER_MUST_START_FLAG = "mg.server.server.must-start" ;
22
22
private final ServerStarter dnsServerStarter ;
23
23
private final WebServer webServer ;
24
24
private final Set <StartupEvent > startupEvents ;
25
25
26
26
public void start () {
27
- if (isTest ()){
28
- log .warn ("status=onTest, disabled=[dnsServer, startupEvents]" );
27
+ if (isTest ()) {
28
+ log .warn ("status=onTest, disabled=[startupEvents]" );
29
29
} else {
30
30
this .startupEvents .forEach (StartupEvent ::onStart );
31
+ }
32
+ if (shouldStartDnsServer ()) {
31
33
this .dnsServerStarter .start ();
32
34
}
33
35
this .webServer .start (Configs .getInstance ().getWebServerPort ());
34
36
}
35
37
36
- public void stop (){
38
+ private static boolean shouldStartDnsServer () {
39
+ return !isTest () || isMustStartFlagActive ();
40
+ }
41
+
42
+ private static boolean isMustStartFlagActive () {
43
+ return Boolean .getBoolean (DNS_SERVER_MUST_START_FLAG );
44
+ }
45
+
46
+ public static void setMustStartFlagActive (boolean b ) {
47
+ System .setProperty (DNS_SERVER_MUST_START_FLAG , String .valueOf (b ));
48
+ }
49
+
50
+ public void stop () {
37
51
this .dnsServerStarter .stop ();
38
52
this .webServer .stop ();
39
53
}
You can’t perform that action at this time.
0 commit comments