From ef3e158c8fc2834324ba1d724ba1a7ff7c100641 Mon Sep 17 00:00:00 2001 From: DmitriyMX Date: Sun, 8 Apr 2018 13:35:50 +0300 Subject: [PATCH] Config --- pom.xml | 5 +++ src/main/java/mc/core/Config.java | 11 ++++++ src/main/java/mc/core/Main.java | 7 ++++ .../mc/core/embedded/ConfigFromSpring.java | 37 ++++++++++++++++++ src/main/resources/icon.png | Bin 0 -> 1675 bytes src/main/resources/spring.xml | 5 +++ 6 files changed, 65 insertions(+) create mode 100644 src/main/java/mc/core/Config.java create mode 100644 src/main/java/mc/core/embedded/ConfigFromSpring.java create mode 100644 src/main/resources/icon.png diff --git a/pom.xml b/pom.xml index 9822425..1e5e435 100644 --- a/pom.xml +++ b/pom.xml @@ -59,6 +59,11 @@ lombok 1.16.16 + + commons-io + commons-io + 2.6 + diff --git a/src/main/java/mc/core/Config.java b/src/main/java/mc/core/Config.java new file mode 100644 index 0000000..a772dd1 --- /dev/null +++ b/src/main/java/mc/core/Config.java @@ -0,0 +1,11 @@ +/* + * DmitriyMX + * 2018-04-08 + */ +package mc.core; + +public interface Config { + int getMaxPlayers(); + String getDescriptionServer(); + String getFaviconBase64(); +} diff --git a/src/main/java/mc/core/Main.java b/src/main/java/mc/core/Main.java index 19d18dc..6d4275f 100644 --- a/src/main/java/mc/core/Main.java +++ b/src/main/java/mc/core/Main.java @@ -4,11 +4,18 @@ */ package mc.core; +import lombok.extern.slf4j.Slf4j; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; +@Slf4j public class Main { public static void main(String[] args) { ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml"); + Config config = context.getBean("config", Config.class); + + log.info("Description: {}", config.getDescriptionServer()); + log.info("Max online: {}", config.getMaxPlayers()); + log.info("Favicon (base64): {}", config.getFaviconBase64()); } } diff --git a/src/main/java/mc/core/embedded/ConfigFromSpring.java b/src/main/java/mc/core/embedded/ConfigFromSpring.java new file mode 100644 index 0000000..5c4841e --- /dev/null +++ b/src/main/java/mc/core/embedded/ConfigFromSpring.java @@ -0,0 +1,37 @@ +/* + * DmitriyMX + * 2018-04-08 + */ +package mc.core.embedded; + +import lombok.Getter; +import lombok.extern.slf4j.Slf4j; +import mc.core.Config; +import org.apache.commons.io.FileUtils; + +import java.io.File; +import java.io.IOException; +import java.util.Base64; + +@Slf4j +@Getter +public class ConfigFromSpring implements Config { + private String descriptionServer; + private String faviconBase64; + private int maxPlayers; + + public ConfigFromSpring(String descriptionServer, int maxPlayers, File faviconImageFile) { + this.descriptionServer = descriptionServer; + this.maxPlayers = maxPlayers; + try { + faviconBase64 = new String( + Base64.getEncoder().encode( + FileUtils.readFileToByteArray(faviconImageFile) + ) + ); + } catch (IOException e) { + log.warn("Con't load favicon", e); + faviconBase64 = null; + } + } +} diff --git a/src/main/resources/icon.png b/src/main/resources/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..d512fc5472e1d4b4573ba22b5e3e71587dbd4c9f GIT binary patch literal 1675 zcmV;626Xv}P)09zrl&^1WzcGf>6{pC7KKEp~p(7 zm8$R+BqT&YDrzr1B0?|WNG@&Q)Kgp3N=;EK4kUb5;xDLFQ7H?^5{eKeBm_fnt9);4 z_pn}j*IwH*J2STPlPs-g-^_dS+u4~n@6BpcQ&VUHf&eZ8_=ZvbTL2dT7&48Zlvb7b zWGbk@IDkU&w+{BsqbR#>t3NK?x*}u~Fo3erLlWB^vb8%Pv0Z5doP}xJElKUw!>yvO zvoabJC13)kF_$IS!i&pA-4h~>1O)0youCA81SSzd02{oOy^Me#(LSBG!vOFzZzbLl zunv>ycEuMkC(ICQ1s(zlywz-H;Z9ZWW}5U?3LZ=s>>jR;tiWJoJf zw-5CQ_z4`7NgE>svoEgDYHWu5;9OG&Pkzm3mLSdy4dU>?XFOGcl+vm`)fxfZ4n-@F z$z)&{%r1$mpxZKd-HS2Xdx)26p7GAxI{*OLY!-<`0>NNo_e9tA>y*+#dzl*nM@0Kttz#*yDvK`y0*UpH(X>rVM`=}ojZD5?-?68 zq@O*oAGpUcqZTpe|NcS26u0jodJ?uL0i9_bW z_df{fuSbHe>%US;Pg?}Y3}8Ai{Ui;auiD@8`Fxm}eSv&FkFG=6uy3{yxxs?>ov>&iFj2AYnKF#@HDT^oJ?v4^y(6l?EFLn)FF< z&!Nv9|DWEx>pGj;p?VT@gGGXL0-oNyTUFMI4zfaJc6d`jsUOhyZg1&2^>`W|b_B3J z}SADsBhDam=pu7tF21QY! zHr^DC17%nElnM=gpO5)x_XJfV6bgY-dKysd2jm)r!diuRyu3TL6L1uQXYSnKkAz*z zbE|8JMz;b0mX}xHM*(49<594blX76Clq0kgpu}Cvt*)Ub*hj@Jf9O$#f;+9AFM2|wG0Lza89UDD8SgLuKs%Ajn^iH5Dtfd8VR6U1mpl*0q`ZO zlA{L?a2qCqcs#}|8;ixRpvD8Obxh8}8aU1hGM>^mZY^%KS8vW6cX}DiT;b5AY>MG;n+=(kc=NAqF@e7;k1M1aoy@HHNc! z?+Ay(AcXt^&I8_FQe$6%<4{F2NFanD7K;S|oZ+qOH8;2cbC@xmD^^7UAq0ew>qT2U zIc}oK(PKsB=NbvhBq5nhf)H}9sQZ{mTe7mlmth)nu%3_z387HPdg6yPGkzxJV@=uV z@!K$o&;VR@6W}4Cv$NCc^woGgZnZ1*^IVlN!6B3*%|V!lvCacbBzy;81Wour^M8T$ Vqx`lI%8LL1002ovPDHLkV1m=#{XPHy literal 0 HcmV?d00001 diff --git a/src/main/resources/spring.xml b/src/main/resources/spring.xml index 60dc04d..d71d9fa 100644 --- a/src/main/resources/spring.xml +++ b/src/main/resources/spring.xml @@ -2,4 +2,9 @@ + + + + + \ No newline at end of file