22
33import berlin .yuna .natsserver .config .NatsServerConfig ;
44import berlin .yuna .natsserver .logic .NatsServer ;
5+ import berlin .yuna .system .logic .SystemUtil ;
56import org .slf4j .Logger ;
67import org .springframework .beans .factory .config .ConfigurableListableBeanFactory ;
78import org .springframework .beans .factory .support .DefaultSingletonBeanRegistry ;
@@ -51,7 +52,7 @@ public void customizeContext(ConfigurableApplicationContext context, MergedConte
5152
5253 NatsServer natsServerBean = new NatsServer (enableNatsServer .natsServerConfig ());
5354 natsServerBean .port (overwritePort (natsServerBean ));
54- String sourceUrl = environment . getProperty ( "nats. source.default" );
55+ String sourceUrl = overwriteSourceUrl ( environment , natsServerBean . source () );
5556 natsServerBean .source (isEmpty (sourceUrl ) ? natsServerBean .source () : sourceUrl );
5657 natsServerBean .setNatsServerConfig (mergeConfig (environment , natsServerBean .getNatsServerConfig ()));
5758
@@ -67,6 +68,10 @@ public void customizeContext(ConfigurableApplicationContext context, MergedConte
6768 ((DefaultSingletonBeanRegistry ) beanFactory ).registerDisposableBean (NatsServer .BEAN_NAME , natsServerBean );
6869 }
6970
71+ private String overwriteSourceUrl (final ConfigurableEnvironment environment , final String fallback ) {
72+ return environment .getProperty ("nats.source.default" , environment .getProperty ("nats.source." + SystemUtil .getOsType ().toString ().toLowerCase (), fallback ));
73+ }
74+
7075 private int overwritePort (NatsServer natsServerBean ) {
7176 return enableNatsServer .port () != (Integer ) NatsServerConfig .PORT .getDefaultValue () ? enableNatsServer .port () : natsServerBean .port ();
7277 }
0 commit comments