From 01c3bb03d4c9f07592121908a888181efef5c210 Mon Sep 17 00:00:00 2001 From: BoykoAlex Date: Thu, 13 Oct 2016 13:11:38 -0400 Subject: [PATCH] Tests for app-props-metadata --- .gitignore | 8 +- .../.gitignore | 1 + ...e.org.json-20140107-repackaged-sources.jar | Bin 0 -> 82993 bytes ...e.eclipse.org.json-20140107-repackaged.jar | Bin 0 -> 71288 bytes .../application-properties-metadata/pom.xml | 7 +- .../properties/metadata/FuzzyMapTest.java | 2 +- .../metadata/PropertiesIndexTest.java | 77 ++++++ .../properties/metadata/StringUtilTest.java | 2 +- .../demo-1/.mvn/wrapper/maven-wrapper.jar | Bin 0 -> 49502 bytes .../.mvn/wrapper/maven-wrapper.properties | 1 + .../src/test/resources/demo-1/mvnw | 233 ++++++++++++++++++ .../src/test/resources/demo-1/mvnw.cmd | 145 +++++++++++ .../src/test/resources/demo-1/pom.xml | 76 ++++++ .../java/com/example/Demo1Application.java | 12 + .../main/java/com/example/DemoProperties.java | 30 +++ .../src/main/java/com/example/RestApi.java | 16 ++ .../src/main/resources/application.properties | 0 .../com/example/Demo1ApplicationTests.java | 16 ++ .../commons/java-properties/.gitignore | 2 - 19 files changed, 618 insertions(+), 10 deletions(-) create mode 100644 vscode-extensions/commons/application-properties-metadata/lib/org.springframework.ide.eclipse.org.json-20140107-repackaged-sources.jar create mode 100644 vscode-extensions/commons/application-properties-metadata/lib/org.springframework.ide.eclipse.org.json-20140107-repackaged.jar create mode 100644 vscode-extensions/commons/application-properties-metadata/src/test/java/org/springframework/ide/vscode/boot/properties/metadata/PropertiesIndexTest.java create mode 100644 vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/.mvn/wrapper/maven-wrapper.jar create mode 100644 vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/.mvn/wrapper/maven-wrapper.properties create mode 100755 vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/mvnw create mode 100644 vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/mvnw.cmd create mode 100644 vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/pom.xml create mode 100644 vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/java/com/example/Demo1Application.java create mode 100644 vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/java/com/example/DemoProperties.java create mode 100644 vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/java/com/example/RestApi.java create mode 100644 vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/resources/application.properties create mode 100644 vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/test/java/com/example/Demo1ApplicationTests.java diff --git a/.gitignore b/.gitignore index 48d6e4304..b4893d734 100644 --- a/.gitignore +++ b/.gitignore @@ -7,9 +7,15 @@ *.jar *.war *.ear +# Exceptions +!**/.mvn/wrapper/maven-wrapper.jar # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid* target/ -*.log \ No newline at end of file +*.log + +# Mac OSX aux files +.DS_Store +**/.DS_Store \ No newline at end of file diff --git a/vscode-extensions/commons/application-properties-metadata/.gitignore b/vscode-extensions/commons/application-properties-metadata/.gitignore index 88b8d0751..5c6ddfba1 100644 --- a/vscode-extensions/commons/application-properties-metadata/.gitignore +++ b/vscode-extensions/commons/application-properties-metadata/.gitignore @@ -1,2 +1,3 @@ /.classpath /.project +!lib/**/*.jar \ No newline at end of file diff --git a/vscode-extensions/commons/application-properties-metadata/lib/org.springframework.ide.eclipse.org.json-20140107-repackaged-sources.jar b/vscode-extensions/commons/application-properties-metadata/lib/org.springframework.ide.eclipse.org.json-20140107-repackaged-sources.jar new file mode 100644 index 0000000000000000000000000000000000000000..a1226d8e75958d796dd79b275e3e0b5e899d5f95 GIT binary patch literal 82993 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 literal 0 HcmV?d00001 diff --git a/vscode-extensions/commons/application-properties-metadata/lib/org.springframework.ide.eclipse.org.json-20140107-repackaged.jar b/vscode-extensions/commons/application-properties-metadata/lib/org.springframework.ide.eclipse.org.json-20140107-repackaged.jar new file mode 100644 index 0000000000000000000000000000000000000000..04feaa8cce2c9f207c2e441c44943ccf07b56f3a GIT binary patch literal 71288 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

(A^ek5oN3_DATc7PFJyNgRj`X&+P(uumwU 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 - \ No newline at end of file diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/java/org/springframework/ide/vscode/boot/properties/metadata/FuzzyMapTest.java b/vscode-extensions/commons/application-properties-metadata/src/test/java/org/springframework/ide/vscode/boot/properties/metadata/FuzzyMapTest.java index ec078ed9c..3d114a0c2 100644 --- a/vscode-extensions/commons/application-properties-metadata/src/test/java/org/springframework/ide/vscode/boot/properties/metadata/FuzzyMapTest.java +++ b/vscode-extensions/commons/application-properties-metadata/src/test/java/org/springframework/ide/vscode/boot/properties/metadata/FuzzyMapTest.java @@ -21,7 +21,7 @@ import org.springframework.ide.vscode.boot.properties.util.FuzzyMap; import org.springframework.ide.vscode.boot.properties.util.FuzzyMap.Match; import org.springframework.ide.vscode.util.FuzzyMatcher; -public class FuzzyMapTests { +public class FuzzyMapTest { @Test public void testMatches() { diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/java/org/springframework/ide/vscode/boot/properties/metadata/PropertiesIndexTest.java b/vscode-extensions/commons/application-properties-metadata/src/test/java/org/springframework/ide/vscode/boot/properties/metadata/PropertiesIndexTest.java new file mode 100644 index 000000000..4c9775b14 --- /dev/null +++ b/vscode-extensions/commons/application-properties-metadata/src/test/java/org/springframework/ide/vscode/boot/properties/metadata/PropertiesIndexTest.java @@ -0,0 +1,77 @@ +/******************************************************************************* + * Copyright (c) 2016 Pivotal, Inc. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Pivotal, Inc. - initial API and implementation + *******************************************************************************/ +package org.springframework.ide.vscode.boot.properties.metadata; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; + +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; + +import org.junit.BeforeClass; +import org.junit.Test; +import org.springframework.ide.vscode.boot.properties.util.FuzzyMap; + +/** + * Sanity test the boot properties index + * + * @author Alex Boyko + * + */ +public class PropertiesIndexTest { + + /** + * Build test project demo-1 if it's not built already + * @throws Exception + */ + @BeforeClass + public static void initTestProject() throws Exception { + Path testProjectPath = Paths.get(PropertiesIndexTest.class.getResource("/demo-1").toURI()); + if (!Files.exists(testProjectPath.resolve("classpath.txt"))) { + testProjectPath.resolve("mvnw").toFile().setExecutable(true); + int result = Runtime.getRuntime().exec("./mvnw clean package", null, testProjectPath.toFile()).waitFor(); + if (result != 0) { + throw new RuntimeException("Failed to build test project"); + } + } + } + + @Test + public void springStandardPropertyPresent() throws Exception { + SpringPropertiesIndexManager indexManager = new SpringPropertiesIndexManager(ValueProviderRegistry.getDefault()); + FuzzyMap index = indexManager.get(Paths.get(getClass().getResource("/demo-1").toURI())); + PropertyInfo propertyInfo = index.get("server.port"); + assertNotNull(propertyInfo); + assertEquals(Integer.class.getName(), propertyInfo.getType()); + assertEquals("port", propertyInfo.getName()); + } + + @Test + public void customPropertyPresent() throws Exception { + SpringPropertiesIndexManager indexManager = new SpringPropertiesIndexManager(ValueProviderRegistry.getDefault()); + FuzzyMap index = indexManager.get(Paths.get(getClass().getResource("/demo-1").toURI())); + PropertyInfo propertyInfo = index.get("demo.settings.user"); + assertNotNull(propertyInfo); + assertEquals(String.class.getName(), propertyInfo.getType()); + assertEquals("user", propertyInfo.getName()); + } + + @Test + public void propertyNotPresent() throws Exception { + SpringPropertiesIndexManager indexManager = new SpringPropertiesIndexManager(ValueProviderRegistry.getDefault()); + FuzzyMap index = indexManager.get(Paths.get(getClass().getResource("/demo-1").toURI())); + PropertyInfo propertyInfo = index.get("my.server.port"); + assertNull(propertyInfo); + } + +} diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/java/org/springframework/ide/vscode/boot/properties/metadata/StringUtilTest.java b/vscode-extensions/commons/application-properties-metadata/src/test/java/org/springframework/ide/vscode/boot/properties/metadata/StringUtilTest.java index 0b4ac1cf1..76e96f6a6 100644 --- a/vscode-extensions/commons/application-properties-metadata/src/test/java/org/springframework/ide/vscode/boot/properties/metadata/StringUtilTest.java +++ b/vscode-extensions/commons/application-properties-metadata/src/test/java/org/springframework/ide/vscode/boot/properties/metadata/StringUtilTest.java @@ -18,7 +18,7 @@ import org.springframework.ide.vscode.boot.properties.util.StringUtil; /** * @author Kris De Volder */ -public class StringUtilTests { +public class StringUtilTest { @Test public void testUpperCaseToHyphens() throws Exception { diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/.mvn/wrapper/maven-wrapper.jar b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/.mvn/wrapper/maven-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..5fd4d5023f1463b5ba3970e33c460c1eb26d748d GIT binary patch literal 49502 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%0A$pwhjXzyA0ZzErH{1@M z22-6b1SQ!SMNyqj_7MXE2cwcEm)W)YwB)ji`3Y^5ABx--A11WB3mBQB<7K!~``j&@ z8PKJ^KSa>#M(rar$h}aBFuNI9sB5uAquDlzKW+hYB&WKf9i&+q$j5P;sz2u$f`uHS zaX8$!@N2b81<<0w<{CpXzQGqSZRpfVb3R%bjsw-Kl}2UH>}1M?MLA#ojYaagiYL!P z$_@7yOl~PbidzJ8yx{Jz9&4NS99(R5R&lf~X_{xjXj|tuvPgvzbyC}#ABy^+H+FN0 z8p5U!{kxOvdv3fr35|Kb`J(eXzo*GvF6`_5GI)&6EW}&OGp=!8n`W0mr_o~Xq-t?% z_pDDfIW#L^DmX?q#mA%Jz-f86KG`^7V|1zdA#4#<=}91g$#@J`gOqMu+7H&yMdNIt zp02(*8z*i{Zu;#S#uP#q!6oNjQzC|?>fgzorE(d+S#iv4$if+$-4$8&eo zuSZJ1>R2HJ^3T9dr{tn+#JMGv#x@&C$EZapW9)uhp0`rDsISKrv`~3j)08JZlP&}HwA!z^~-?Ma(x0_AS{@r z8!(Z}5d8+5f7`r3pw_a=Z`!0r6r4%OAGYBoq3T7^xI@9xG3prNo>`}k>@VAQk>(=DIy(szD&6@u?YVdC|pJLT@lx{=IZ; zIkO4)YWp*Dpp$`H$Ok#yf;yBmHvTb@)4j)jVNF-O?$nD25z7)I!cWQ|Yt zeS<_C{i|BS4HICD=}T(|)@vd(v!?P4t4>APo7`K5RJvcTpr_KgWeB~zMLknrKMgpx zyN-EI%es5e)FNho=}qGu$`98v(QDPUMUGrY4tq>?x$md>qgNO0@aAQLMLr8XD8z%; z2Osn1D>N^22w4Xb8{~fi^i~SthAo7%ZjNb)ikgj0_AsXqF_0+W6E_doOUi0uV6Lvg z98Xk#>IK|-YHx!XV64==b(nYKMEyqPF?D)yxE=~;LS?LI_0)|1!T3ZtLa?(qd|YlXdI-e$W z(3J*FbOe3cSXvDaTHU^Hqpf2i8aH+ZzqY$cFFIH;fxMtW^(AmiMkBtb9esujw?rte zoo&0%Afb~VBn6A1@R1!OFJ0)6)Fn72x{}7n z+b#5gMommvlyz7c@XE`{ zXj(%~zhQne`$UZ5#&JH0g={XdiEKUyUZwIMH1rZTl%r@(dsvBg5PwEk^<+f_Yd~a@ z%+u%0@?lPzTD>!bR(}RQoc>?JwI|dTEmoL`T?7B zYl^`d{9)rW)|4&_Uc3J=RW25@?ygT$C4l-nsr+B0>HjK~{|+nFYWkm77qP!iX}31a z^$Mj&DlEuh+s(y*%1DHpDT`(sv4|FUgw5IwR_k{lz0o=zIzuCNz|(LMNJwongUHy#|&`T5_TnHLo4d+5bE zo*yU%b=5~wR@CN3YB0To^mV?3SuD~%_?Q{LQ+U){I8r*?&}iWNtji=w&GuF9t~=Q2 z$1cFAw1BTAh23~s$Ht$w!S2!8I;ONwQnAJ;-P4$qOx-7&)dWgIoy-8{>qC8LE?LhJ zR-L4qCha@z*X+j|V<+C(v)-UZmK0CYB?5`xkI)g2KgKl-q&7(tjcrhp5ZaBma4wAd zn`{j>KNPG>Q$xr7zxX}iRo=M#@?>}?F`Sv+j6>G9tN!g@14LUf(YfA4e=z+4f zNpL4g?eJK`S${tcfA{wbn({8i+$wMaLhSJo`-Yp@G2i0Yq~@wdyFxoVH$w9{5Ql2t zFdKG?0$ zV7nmYC@PSsDhnELrvd8}+T=C6ZcR?`uapdWLc2eaww5vKtjQQgbvEr^)ga?IF;@1(?PAE8Xx5`Ej&qg|)5L}yQA1<^}Y zp7WZpk%}L9gMMyB^(mFrl&2Ng$@#Ox3@Z6r%eJ`sGDQbT0a9ruO`T|71C;oCFwTVT zaTnu)eVKURM`1QuvrBhj;1e>1TEZW54sKUfx0Z=N*;Jpdh~Aj-3WB zR|EYVGDxSvnjeA?xxGF41Wj?~loVahklw|zJ=v3pOEVZFJG^TvR z-tJN5m;wZp!E7=z;5J*Oaq%2bc|Jw!{|O+*sja+B(0D2_X`c2)nVkzP1S~LOj~xs!@>aN z3$K2^pW}@R-70K!X&s4DHHoV&BmGWTG4vi9P1H$JxmD|t_V{GlHZv(`yJ234IVuSr z~!;~#ublS8qdL8SJG@XRCwWhkZyg_EKH(sB2}QQSv4W}|CT0ntD_4Eyp519d1%yKvc33|`yW9QzeJ4*XLP7@l=td+bwxSL~jCf-ny)IDC^~u5s)E-y^FdtU?)hkN{82Y{Lo)bCWcBOx;Jbw;)Pg9bWQQTY-3RWehpok!>D>Sa2EcEOS@ua)#G3I+GxL_ra^92Y!}tMX zwAp*Fv-aAarn`ME7N#Uyim%ynre6u?KS15L#$#rKZSgLnXx;g8TP9suMpO055p278 z%o-6eT(3gdIVFN}Gb3k$zbTyrHYel1x6OxETsk&h0E?&}KUA4>2mi0len7~*;{Io~ znf+tX?|;&u^`Bk-KYtx6Rb6!y7F)kP<5OGX(;)+Re0Y;asCLP;3yO#p>BRy*>lC$}LiEEUGJHB!a=&3CddUu?Qw>{{zm)83wYRy%i}UV2s| z9e>ZXHzuMV#R1yJZato0-F|Jl_w2sUjAw@FzM=DxH}vM>dlB&bQ!>51aGc}&WAH`b z6M6iG$AyJIAJ7-c0+(;pf=2=!B=%yoM1i9r==Q+}CK3uW%##U1rP~mwjUb8PLsi8Q zq!aTLLYK4HQ$vN1sU;d3XW{oFA{u@1$tduWmdOqc(~AqWq+`V)G&?YOOwAK20x>{q zOgII2&A_FXPzVtgrD80Y5J+_SEmyUcdM2N%q);|ZF_m z)6PBcOcAAy3kN*`8ac%zPH3^61_zn6_2FT#NCOWYx>ezqZzCC;tzM%pJC^gFAFcTs ze6C3WE-a*=nt8tErPG9zfPRn$QHqB7aHe8x3w&rWT(0F54<2uBJDYtbB}y|@9V6T( zmM!t}T5SuwxyTCma14&l|yiQRw5Pn|OiDBkx z?4tUGrIVsC9zs=F{W>zl9XeknEc+~Mz7zCnefUPUF8iF?A)QJK8=84#-TLLxq?BTM z=VYjYW%TOhrBp>3D@K{vStlEUt%e{HRc=766AQ+s7V_F|1A!)P3?y*=gUgbZO;O39 zX*BC((-XbnoaRGxxhRQRVKCDG9|qC6?7TwCz{A{OZp$Wu(~0DFo(w^P3f>4gr8@P^ zl8`!vA=_fvwTZc%-Z42}m>Q;KQ~&v;ipZzbA2;}Peg*v}TlKRmU%4WNN<%qb!cLo= zoSx;XBrv4}ErykT!)z)Qar4o?(q6!mpWLNFe~Nz0S@yI{1)Lxt<0K=Q$~>*HH+Wbp zQ~fx0aup_lZb|e6*@IJOJjw~Ypiwdq69&Y2vthfGq6u1!Joy%;v;~4`B@B*S(}}i- zmZc^*aHOK(dd(geOKg)P+J4+*eThk;P@wRjvm}e)h|#EpsV9YoqqRW{)ABhRlvGA* zL$&k5w*_-X1ITCwXiH=)=5lzjxY5tQJTBrv<{dM7$98pdK%i;RGZtiJKaSGCji7w)aNrHu_9_IPGHS-mMN5AheTn_ia^YdunCzcp2ap8eI-RQEm zj(q7_CT)o|w_noPm@MVqIjv%H4Bdo6*9*!Zj)bLx!p9POp(`$dj1QW`V=;=|`Gx8QST=OnK5jlJX3!KBz>v7j$&5b5YrhIArRVL)1C^o{@DJ}*mk*s=< zDK{e2f%fG)mK_Mz*x@#ahOO)cQQ#VH+8Wef>NKWcu4J>PIc3iz8y6PwCmY|UQ(O3!B;HtsE&jvyv^XjL7Env5#i zH4-k5GzPr-%36#%+Hvw1*UiOIk3b7F^|1dPi!-i7C^ZWp~_KI%D!sGYb@@zXa?*{XfjZ~%Y^mT!kaK_>K8 z_jL78^ zS0eRdqZ0v~WWow1CE;vDBh#{w9R4JgB!})W9N{{D=p-RMnehZ#pH*ABzDP46ryZkt z4ek|LHS{CDhTTMQa3a5fO9OLg?y$+#Gi2}Fv>QD-+ZEQKX2Fv{jr~miXz1ZpPcXvJ zNvQT@kQbBz_Y4Kg)*`E2t;tPh5_7tSGvL-|-A`lgHX3uVG4jLev9>YCZUeNNzioL? z;OBD{z+=Gs3+*ph)#bO#7IHl|rOFfvpK%cF>W??Q!Nh&B@hByD&}g|>a?GJ4uhX3g zPJXKKAh&zWv&wITO66G{PuGLsxpWSqaadFsv>_vQt?LVslVob7wylsa+O`IYWySoO z$tw#v7=&7ZGZqS}N!c##5-bC%>ze*s0H9J%d|!JgE#uZ|k1_bAn*x(Y%r{c=(HLwNkPZOUT#@j4{YfG#@=49YJ{?7? zddbK}G-@Dod&^Vf`GOo)G|`n@kq?Z=o84x{889+?F*dQz(kr@9lQ-TXhGN`)^-Li1 zb}xO2W(FvB2)EA;%qAkHbDd&#h`iW06N1LYz%)9;A&A25joc!4x+4%D@w1R+doLs= z#@(A@oWJq?1*oT>$+4=V=UnuMvEk;IcEnp4kcC<_>x=Hw9~h+03Og7#DK(3y3ohIp z-gQ$-RQIJTx%0o@PDST|NW41VgAR?CH`Sj-OTS0)?Y*M_wo|92;Oz)aya`^I0@?S{ z<%^epAw!Tw(bvSmU_k~Im^%#|0`Xkcmxj;31jX2Gg?PbzdXp9Dg~P)PW+Xi%iWiCr zV-Vv9IR5guDS2lGV!lfTWxkD8w%yz=UB`2j2Zb0eg~arRA*Q6>`q=8#4&OC|L6O}8 z)!w(idG0yk-BF#~k@Avk>an9z_ibOP*Rb;db_PsakNWYdNoygT?yRG=+5>ud<6Vxhk?P9rk!+8?xMg!x5kD*f2XOd^`O3U zlO;ImEy0SYI_J05cMW{dk@%d@iZFCNhIVtOm8$viM>=zM+EKJG%c0)dZ0D$4*-psQ zW+Fq|WmbYkBh5|^-l$w-`Uy8#T#<+3=}z!(6RadEpFlr1f6OFuQ5sG735YicWaoYR z`wuEZT2dntHGC7G*Kzk$tsm?Fd25LTHJj?Zo2RH;9rW9WY1`;@t_O3NC};dayX;Ib zgq6afb4!50qL-o5%yzgcR-1Xm-l4SE!rE>o!L=E`Jeug(IoZ36piq6d)aek0AV)EJ zaha2uBM!>RkZHRN0#w07A=yf4(DBmy(IN6NdGe$?(7h?5H)*?(Li#GjB!M{nq@C3# z^y{4CK_XQKuO>(88PRb&&8LbRDW1Ib>gl6qu(7g}zSkf<8=nFPXE1~pvmOT3pn^sa z+6oK0Bn$TBMWYTmhJzk_6)$>>W)nF^N$ld9 z8f^Y^MLVz@5b}F0fZID^9%hRL#()Xw*%yhs&~|PK|MGI8zuO!f!FqbmX9icd zXU(JOCwac|Z|=Yr(>Q3)HsXl!^$8VSzsgI#)D2XkpZ2=WOBcFF!2&d;*nF%h0I!`mRHl$91jYzqtLfNHUoYzrMzjR)u zP_|Hti4^){G?Ge6L_T^zVdS@KHwtq^+*+aBNl=hVc6#KB-It()qb&8LhnVW9Yxn&S z&^s^u1OzB(d_ByXz=xm4cpJzNzV+Txh`~H(176n4RGlY6( zg?ed(a!J?4(oL}@UfBpgPL*)KrGtM_hMIdu!RywK@d!b-{YAY?(?w3yB@Fi3g|G)| zho%)<=%Q$Lo7S-BxEjTL;M74{y+`Q^Xg#j}VvF|Y>X7s+Ps~aqT--tJNd9U6;Ej&o zj@|!`{Xy90t_Zdb>+m8tCFJ@X(Y$mR>%)gv4Vt;oGr`idhQ7H1^L3v4<_2}-UoguorcscRfdgumUVa0mK7-Wm~#vbrnX9ro}@82q=9t;lM9nH<} zLL#=1L7*f+mQWfyFnETMi*fe8AI+gdY6BM7CkRS&i4$ZRv$v*=*`oo>TjZ84sYD&T zI!DgZ4ueeJKvjBAmHNu|A?R2>?p{kQCRy zRnGg@C%oB#-;H-o-n##G`wcPWhTviRCjB{?mR20|wE9Kn3m6(%Sf_oNXWP^b;dz7( zb{blETKwpl`AT#W7E6T|0*bl?%r{}-BYdwrn0zN(DZXM1~53hGjjP9xzr$p z>ZH?35!~7LHiD7yo7-zzH18eTSAZjW>7-q5TYzDvJ$$S$Z@q)h)ZnY(3YBl+_ZK~* zd6T1UEKdrzmv2xc>eFj2^eQPu;gqBdB@TLqWgPk|#WAS0c@!t08Ph)b>F3 zGP}9_Pfp;kelV05nUfnb%*Oa{h;3Yi^B5xyDM~1r@o%v#RYi-%EYfSYY&02eW#bGb zu8(H8i9zhyn%?kx5Txx^6 z2i}CK(HeQ_R2_u?PFp#6CK zjr}k8Cx#C?DFgP`uN<;}x*Gd$-JgG3J_i3s>fk@_Po}b|JNz=Dm+<{^51m=mO;n4B&azYm{>+VhB{iyxuW+j>w@>VHcJyoSBQi=hu0;p zPw3Aj?%Ai^UeD{ySPIqsf|v0L&f_fmE7oh(s|jwbkK5^AQ9F|;a5V}EdSE?fyxdgf zHTq!f0;+-V{0oF+l_~>rMGk?f~m^wDXlxqt1@+)6Zv?BNR$+%$i z*NF93f}~4d9H2C7@?IibyqUtLL!XZW2ap4fkkxMqDZuZ>`+AfWJQ%~O2WR}NoA=OP zieg@q!mP z?=qU=EE6L0_UpzXt0qwX2tF~}c|;`#MUY2TMz6k({hpkiSz>Dxt*4-PtkAdAA*0hn zk~CK6#V=*^m5 zg$tB6rSO-=9l>GAl^DjJBHdk0wD0(L!OrcZ?qmtYbl+}s(@rtE-O=RTx*1cZq~u~5 zQPVt(IB=*?Pm;Le%#i1SFxHY|>=Y$^RF-FGAUSkBpn`|+p!4RHyv-Q(XgZ5Xg5W}J z8RcT?+4FdVQ>z~9kP5By8eM95f_LDnsnA%K;i6`OpcuJS=^n|6nH-B2EhH=dLbO@Z zuw=Ug>7gsu33`Pzy3Lji0x8OCH={?VRqFEi;@oDIS<*?dG@9X1*tlYCm4YUIMhyfo zJ~=K@-X$D z<-4dH<-5o#yMj%f@U{nfWYVdrREJ}_o4&|c*_+M6gk z-Up9-i~jM-bwR;Bf0&C5wteli>r7ZjGi+mHk3aC4mS5 zPC^{w+G%menlWun+&<#i&DJ41thvk;OKZEB`S%sZ6 zzYpO2x_Ce@fa0LuIeC=7gRHN#os!MQ7h}m9k3@u68K2$&;_mSe2`>uvV<`RgC)TKX z`J}&Kb%*f{Oznj$%-QafB}Zb$Pi%@D&^ZTcgJ0+Bk6-iOJ-P|Q10)5ie2u0JzKb2r z2C@{f?ZBcPw5%h&aKG+6%Qvhw(t1Y{hZ82YE4(Tlk`2VCgE&1x;AUt+5U*$%>P|iWLeb_PJL!VX=b4#>#QM;TGjFHBNRy+d{v>2cVXFyqaLd300 zFHWrc8lB1KSOH3dkJClJ%A5oE^31WrQZ3^-3`Zk?1GqoV7Wr62=V9C=(;#R zhzXAT03)d z9OdZ|;CjSnqQeqF-CUNR=x9x76JYnpr|T+6u#$y=7cMVG72k4f*BJIG>l1NNvyv6NQzr4U`r;= z&%W1Ri2sI5p|8%q5~zM-AMptHj_eX7FzJN7t(%+2dA)efyFbePBsClxY_yMqWbEdT z+jm?SZgH3mCzU?e^psnyd8UK zfZ$^_^}C1WYB1-$m4qwT@#=wsAq$9Xj=%IRvc#V?1azEi|RSc;M zQn;3%Gjk3D)R+3`gZplB>Pt;g?#EiwRzxON;% z#P5IK*YAh1Md<$o21R}j^8Y#t#`fP`nErnb@&CkI{`XNXulcVIXwLcS%VE4i4-!8a zpj-q)#TqXkFg&z4G9pG45A-$B_Lfacr)H85ge*yqTLAb(oY1$6Xu7Rc%^aVOmzsKd z=WEXA40~hm@7FKD9t14nSRt)m0XWkP1YbAE009nIupf`md=v&J;C}estaY0%^Z;;lf>5AF-y%Xf1QEK(}4n+ zhKsTx^bQSpwM=UWd3WRcpEQfw>P%zuhLeEdY}s%cGitMZa14Ui*Mzm%=(7<#b2gHmJ?kdeymT7H+Z8k8tgd zp-dhC)R!P!)w(n%RgOi%^)LGZX)yxC%@f@d4x@IRbq{elrCHyIuphEE6qd6l6O`;B zi0WQg;j`hcu51uYTBSSYNvY{Lkn$iu=Ae0g6o1cSTRwXmEvNcNI zv;)Z_?g>?aG`Zp}*gY8%LGI}{>J#`x;v=*ykuY@z2Erz>@b*)tMp2>=C20MI8|{Z2 z9hbyDJ7d#MdWK&fyZB>Jdm!#x_uRw%>`OuM!&QMim}baa76{L|VAuq%1UpXVHsClm zPD4}hjj{lj`)aaD;x|PJ9v@?8gZ!t5hER6!b~HJ_l9P|(h&R6js3mAfrC|c+fcH^1 zPF*w*_~+k%_~6|eE;-x}zc%qi-D-UpTcAg|5@FCEbYw6FhECLo+mVn^>@s-RqkhuDbDmM~lo<4sa`|9|$AltN_;g>$|B}Qs zpWVSnKNq69{}?|I`EOT~owb>vzQg|?@OEL`xKtkxLeMnWZ@ejqjJ%orYIs!jq3 zTfqdNelN8sLy2|MAkv`bxx`RN?4Dq{EIvjMbjI57d*`pO?Ns{7jxNsbUp=rF$GCut z7#7Dm#Gvh}E8~2Tyhj2reA%=ji|G6yr%@QV{(90cE{JYOW$0F|2MO+TM^`cAu$B7s zmBV^{IqUIbw5~muv}st`dDdIxSU@Eb>xf3$qwEcg;H+vp1^ArN@A)RtQ4hrid2B{9 zb~pG8?SC3#xctpJXWRGXt=cx6Cw!IqoJrK)kuLL&`UYYB{R6Dw)k9nKy>R#q_X|V* z%zVsST$=d(HozVBc|=9<175^~M$v$hL9azT^)TL7BIA#qt>N2^iWvMQgt;!YZt~cv zn!x^OB!3mOVj>^^{mloGiJhLI4qy3Vt-148>9j~d8coH)q|Cg5P89Xj>>hjtzq5iT z%go41Nhi}x7ZztTWj|deVpj>Oc#IrI{NxIm;qhnuNlvNZ0}d=DVa}=H0}Vi-I+wKK z*1uD=0_)b-!9S^5#(%_>3jcS-mv^;yFtq$1)!wGk2QP%=EbpoW++nvbFgbun1Eqri z<%yp)iPo|>^$*IHm@*O74Jve%nSmDeNGrZ&)N9 z)1rSz4ib+_{4ss2rSXRiDy zgh(descvk^&W|y)Oj#V@#)C658!**J#=ckpxGniX#zs0tA~NG>E#Hn3Q3wdKBfMG& zK}2y#|FLt}E`UQ6t3jK#G&e22bMBc3=C)LyqU706frdCAqa;~Q0L5)KJ4?@h*FFu4 z!s=hOC;G?Q)BRKJ1q_XJ9W5LLejp1L*187&5Bo4Of)k>T=WpQl3v#4iX$574fW`p+ z3m}r-F8Gjv1m3yTia=+2An1+E&psbXKjH2{<1xMb37`|D<%7c`0`~m0r>AQD^%nUJ`%PxS>)*{i zg?VHw)ju!$@$>xGszUyM_BsCF3*%>rxVZ8vrYB?PvDBBHQWz04T&UpxKU7{ zrb~8R4W>e)){FrKo^O5ts8O^r^t70=!se(2-(8&aTdaFU2;SR=dyECLBp|MVU@JIt z)z$TAHMKRnyX*5;O<*xm+(>Fo41G;Tk0w01ilh#uFJa{teQne`QCOHZp`&du5gkAWr@9Ywz%@P@KB0bD{lXo7PmrPC%J!A z%orlB>F}qRa$`XC2Ai_4L56#h2GWm;>sScPxhMO5a*guk2 z+56H}PZnq-sxASPn!B~W#8B1W=OQPf-lEbhOh%>%{AND;w%w;t<8%a%HNk`LQ0GpT z6au2l)=Brql2Fq{Kw316jHdW-WF<{46(Xad0uxi%3aEARVi*dKaR^jjW)$<$7QEiF z0uK-~dQ@|hxT5M|t$pBl+9IJig2o;?4>qY%<|sZ4Rk0Dc{ud;zd`g$&UcwLjY))aV z4jh&lc(;hjQaWB)K9EB@b^I)LQ~N_;SFEEWA&}`)g!E7-wzF%J8)yZaSOeR=igBiM zaU=T>5*oyz3jYaqv-RSC;r$%d^Z(cbLGwTQiT+3KCMt*OBOD@rPZ}8;)1_*l<5aBp zjl{A?HiE$Y6$NWUgPY(x@k^9)A|CC#nqZ?B&q-ceGE;Y7F{@0{lQuPnsj0~YX(VoZ zdJ})6X8821kH4_0vt$gocDeSve(SuROm_bM98&+q72$1m(x?A;;)@TWyuVXQV!{#( z41CN;(vq_a|56Yny*sb>5`lt+>?dvF0++3L!wQ_eJmXi)z_1UAmNi80_bG^|J$GZs zK^|0X@8jq9pyPt$dpiWWAG)mNg7X_BME=&UYoq>nc0gtk_YoXNb5hYb!hG ztf(P(6Bcy6`wroiv-5NLLjVBx&|;W6WwKMmB+ph%7$AJfV95||OktlFlTMqdKP0i#Y*rj`(XeYUz=adk`3hA(LvO`y z|0%R3GMWC#x}RbCNX_Cf;_wEOS}%lqj#-CXQDIpi8Qis%Radz>q0vjbY&8DdR>jXU zmvR%au!=9lMN?P=hzQpNGOJRw?Cn8@B@kEp4r5$bgdM0?Fdua~*H~mGTf}17rZog% z!Kj#>m=l>Po$A`_fcT-pHy*aya+n%rXmG0CJ6a{nF%>TfyzKC2Dit7a;!8r;X^G$~ zS03MClV}lI)S^Py2I2rLnpjR64L!#Fl!mCP0td}~3GFB3?F31>5JCwIC zC~8VAun2Z}@%MZ{PlIWpU@CJ06F_<61le-_Ws+FSmJ@j>XyyV(BH@K!JRR^~iGjAh zQ+NnRD1C)ttcyijf*{xky2tyhTpJvac8m%=FR-LL@s>rN`?kMDGf2yMliwkYj= zwEEJ0wlFp%TmE6|fiti_^wVrxJ#gh7z@f0+P!kS>c>;BHH)N`PW0JHTqA?B~fz6H+ zdQq>iwU2Kne+4kR2e~l2`>(-^qqujX*@|w7k>s=e)Y-lwoI{$Tx_2}&y$9LZzKG-w z{TH06d?a9;01ze%EvqDCEt;qAaOYdf@X)zT)ScQs**7gQ**A5+o9p#P*X5~lMpNl2 z6p=Ecy7#f++P2sk;I2Nd`w-!5Y^3QHV0RVy2<55pqQ z&Q&b+JIKTf&6N(UjwrECT(BwKhkdpc#(Aq= zyG*N2frC~4B2Ko7O)bOHP8(}XKc;_(GP&+{?#dJ;Y$YXT$y<%YZmc>C?Sik?i?6E1 zk~VKGMLlNws0d#wk-11tBrAf?Tbes4F)oqxr_*7R-?Yn4IlyyP_ce6(J&tXSFI~P^ zYG1K1&Y@OY%nE}Gsa8~iq!!=l4a+yi7?Rxi#owl|2CnVfey<;AkI<2^CN^r`;-)ob zX7Ccao0G6Ic0ENcm7#3(8Y>}hb9aL6Gi?llW(Kss_CW07Z*0rgVhbod7+2-z3EC%( zq7QLJy|>bn^fyDVwISg;I%*4-lpnL5wLoe=B5sV^!Vdseg%7piW`#>KU*HD}MZ&J=jCFG;)9zqX;~A15Xsg;+mAtJruykiiD4Qc5$;lWT@^-j>F$$|0*{U zmrM6Kwy7I0>uJ&DC#8>dW7&)!1!_uGQ@Mvr)n^bH?_w|*J_E0?B{C&x%7+%$9&Umb zMv=?f8jwV=X`(6MfQLkyXGt_A~#T^(h~B7+v?~%F6k&ziM^m_Cqb!a zf0y+(L*8N@-&FfWsxPx%V97(F{QW`L&>2NJyB_}HBTWa|xRs*TT-y}_qovhF=%OCJ zf)sDf8#yYtG3ySQ*(qqz9dXI;CfS6yLi>4H9w9ii-!j5NwHL>oEN83>IsEP+V_1~u z`?}q?(o8RjDY5V?z9HC@t*0V_hFqA|HyZ8k)T!UJQ`KEKMLlNlIq<$2s!x;)o#SW0?w*zVYU?yc(v(2qyZg z0(^T!7Qzhpm)`?PLS7z|(>s+ZUO?_>f0y8LjB9{7he}@4-%l99L!vhyLW=yQr!);4vCSd-wC1QX-%H=?#UM-D_Wg8t3W z0*rY0Q4xwb5i(lBSOs^u(IgRSP$j!PkhbcIr^rh}e})V_kU5jW{q)m0CALP$`wKi& z?444cDxl;D;SqSw0^h%eA6Ro@BhxmD!}qpGb6OxRi6;iFai!)ctW|gmF3jQz2*O}Z z*TPvZAxFr1-Dd!53U_WQMQh$aauyVf;O60e>&G;Mg83(TOZt!6;s2KT{}By>k&-_m zA1YA0q3ID6fx`!qxy=@dYO@Rn%rEb~7P_%;Dxvl(WAfiJUtti0?~ah#_1`K#A}P2n z7^D~GQL#`hC}2w`btD`i%)VBWnn*jWF=d!kI*6T5-wBdsT)$EZD=mrn&EhxJQ^3>1 zbLeDA3&BIDAv=kWsp0t6>a3lITA;khMX^(B8Ecb^U%P-|RNGB@XLq*Q5a zR9aZ8RFNDYvD`dcva-5ti*`CcV%ltLG;emYG)5Hvo^Boe6!Fu0ekZ(k<<5G3_4>Mg z-?ILGT9yB`Gy?Cnu(PO#(bsKyf9>@F_MJQFZFaBE?dA7x40K@HNwA20g&JE&q z6&$MUcmsL)Sq;;@a9!*!?ct(XynVCJutm{pZ5w3Xci1lQ!9oB`xCdL! z6i6sX5X8iljX<8L4KC)P_hyjfBo3W=8BfQ5^inG|_NhXI*k)fvrDRq;Mtl#IdM%t^ zo(9yQnnQj}I{C__YBGYykMvG(5)bL%7>X@vm&+vnDMvZ(QMVC;#;@DZ9#6!r74JA`7phVA#`JE` z>BU^K@B>jj8Maz2m^>t$!%J^m)e|Ylem4L>e=OHtOVBCDy{0or$Np^VjdNl=g3xT8 zqsE*&O{Q9{>LhP;F2vpR<1t@fO4^Fbd{cO753U@l zLFAlS*(cze1w03?ZyLxG9S&n_udo?=8ddzgt#cv5fKd+uyogyl;44IK1&z^wj=!YK zzUD&kgK%`pt9A4nks?WMImECKCAt*xUXcPbo9e1&PmWU$X9~!}HO|j@r(`+=V^^Lc zcLMKF*Yj`EaS|pmb1uaDbkZvx6m%4{=z+MdgTuv?mT=4T&n?h7T_tQNFYhz$`~(DF zx4T%9nS-@(gWPm3?tZwJIpHDGWzAJ__zZKP;Hw>~%&n=s$Pn?6CaJ>bJzY?o)(O#~ z1fxWpkgP7ukZGyitR1C364Jp*?#{WzBom;9o=XrY;V#_Y5@5*}T5v*hcW#I;Sb)H; z6^g4&{fOcGP0zWCURc5J$ExdSY5s?r-^r#;|BS)8NjQH2--6b}!Q-Aa$mx_pNnz4q z(1_zCdqOu|4b4oo+-*jjTTV_j3WmL9=u`0(l@>00B5Vg?4f?fqwWRCX*2JwC(Yd+i z5A-Rm0r4e~4ceSJnEmWF6Nk>Q;(7sYyQ<-CgPa1fO8m6_pu=Maf0e2hd92Q#i7j?U z-VR;%F~r=@Xs>J2`Nx))UK=X`Shhg3AWzbwE<#%hM+KSQ)y~F!~7j*2}qu zgT9Z6kE4Z|n9Leb=N0%JnFI$AeNrV+!>E(WT7dyOjN~44BhNVL4(%Eo(1JGjS^)Oc zjSPsu`3wT8k`$>Na;G3pMU(9;+ov}PpiRt6*)WNMy(rEUak-14^(K`73yJ1#LZna? zS)ypsH=xt_ z1V%Pk;E@JqJeE1&xI}|JylZJSsu+mw#r=)G*5DBGv*`Q|1AC+!MW979QEZ{H5*8ZW z_U8EI1(M1LDjG^#yy~(OGH)?SdmR~=ma_^2Q#k>)`v#$t=~Ih|79!ZutXQTK^S&w` z1)ONotPDL(cz!_@bFBBOo6W@;7Zz--d9JaOs{)ss4P|Mr%>FaiMR=(fn-Y3SA->6~ zp`5h}dOcY_YfweZB*^el7qqa$&_r-Lg-I+9~U z`JxVCD<$VmoiR$g^3dU%7Sij)XYi*?$#ihSxCBHGOaRRr|Lo9+E}O~M>I}tnokI`}F32Aty#b8rpABEKl|B;*o8ge^^)Kyk z0!(>gFV=c)Q2Y%>gz+sa3xYTUy_X`rK5ca{{erC9WJ3EPKG{|Nng_-78kAD{oh_=K zn*wopK3cG}MBJf%6=}9YouD;zyWbjRt%A#pWc1zb3@FB`_Q~~UI!uvse(FQfl zUt=Qy2DSjwpzAUJ048~^;@Yo{C56R_8nZEeF}vm)0xoYe0y|tYI!>Y(d}mSro0`z; zeb6Eg*(a2{5Ypj8S$-_~L)+IlozZn|Iak`$jQKd63hldhts0=m>k~HC&`@|~;XaG6 zLVxC))8>^?13P*mV#ydlkC0V6AWK(BjWpqu| zbh7#bkKuL<kv5;Emm4zkF;X>rfbzAc7!Z)i};f=*bypYUD zho5-B5n;)FP(nzq8FG3TH?7l0vS{G}G9@~zxY>CqbX^mb$|JncS3I_2RD@?I9bz>LbX13A0N_LQmd(!3AxqmR_;3bJavc81%v z)Q~pDm0d1VrVe~>X?GOUOz94e6Nbt|fe6(S@cN64Gy6{i*TPukTmfvgPR>+qe>)@w z8mS6=rvR0~cqVfEWFsL|kZ3t~m-iV}va(IjJ;Hh4R9uISa6;@9d{D+7CwskGx!7MGZ6|rdE_I{cMD}-` zoi0%doDSznN-Evavf!_d@UNJt*Fl;hNrnVT2Fal8iBh(LU^l>8I1%x!q=6A@zO6O} zs0R@~z(6E;t~6L7tclb6A}zwwIvS;W`?F>>P)INWt6N9r4JbH*;&^6B!lHNAY+v3R zwCVoTTSL`1XtRZ_9vWH*(HcV?PImcNBOtbC4{U(v-HA~xMdpP8<);Xv0y_e1i%t|f zdyL`MtgjoC^Z-wGt@&6(9Wx>;qYcYwopK7H4iejT?T|>BSm)-fV&7yB;ANW4ZRzzc z?^;uh#-bDq@QjjBiIf-00TSw~)V;r?BHNEpDb(dLsJ_Z!zT7<{oC-V^NTEs|MeD0- zzuH~jmz>@&JaYIW>X&?~S>~+R!;wQOq|+{tI&#vV^n%|7ksh!vXzONlSb4zc!X;}> zMaUjix==sr4oMiHxL@~MPL%PrMzU{DPuz`9zWln9XnqKqNo3TZc;22OZ{ zy(90FLmd!qHIv!b-q){c(0@VYnzE(k5#rf~N5m{u-X za_J$`vM`7Bh@_`N%&n~35!O^m^pyWGR65?W@EH_fG}veT4I>@L72iny$1yuwBopv> zsSxe4Htw2+2f`M-+7|iva$OjEp*e=6r{J`{W_IyMTo#x0Yayp+V8z~17Hx&~6G%t? zN=#7bc$BWFl&qzMvU^iRl>Rvj(_`fR9T%ZBYX1?fg((%9FgbGrBl_7^rRQW9GA*@E zLN~c4F@W|oNmH$kHZ)4U$u(P4S;GSPDy671d;6L8z}?RfSb0PHN)PsKViOm_PLB-7 z+-+jjpC&oGWj(BQ{|L#DFOC3+-%fvGOOx^u^Ysxsq)Ox4^;}rM$!;(?`m@wtkXb~%u$Zx% za#IBD9hq=no-2H90jB}1^>TfWp)=Sb1v9w#UAHvYbn1PpHFbB+hwSXWK(ta=^8VN< z^j!PhT^ZXf#;?$ZWkn?(vJ20u-_SsGO1os)z;s=hI)d6iN-4mC9>EtcU@Mybflo@| z82lRHB)FEu4k@P9W+a)>t{^Jl;)gL&tWZBy(gWmfXX8XiUdnU>LtbceRd2RogiprV zK3KHRpSd5n#Hy5wQ!-Fg;{(9?K%pRuAEZwPR-E)JGeljq?MUmP=K$zkEO46*td&DL z%C4c|+^C204zq3rsTdE?%Y;lc1vKitClZ79P)GU-k`VCL5(kX_>5D{)C18r$^duj) zab$~pZ#$FLi^ihhytr80x6p2DsA3IsHPguaQ&s4izcL;7qGj1rPQM)4uc!I=d^j7S zs{`eqUlX0}s<8@_Iij-NBLD<2BE3VJ&k4Z6H;z?!7!7-XeeC-aX{Tl6ml!93m*cFJ z#Z5Q7fr}UC|2wXN*{|KEWPZ(V^*agnsVlrYkAd651IAl&yHxt9OnMCJBht5xn*lR2&NabYN zSWC^|d16K9!d@LjLiX4uEhz;%>2G#@i;bdI;t=8bK>y@P)WT!mDr~z}pG- zRg0M$Qpz0mbKF!xENTw8!Wwu{`9|04Gou}nTQ_L@`rl58B6UT^4~-?*}V`fYfKSaDIH zavlsK6XsL9-WmdH$C72oMpwJp)?;)Z4K6Es0B$SXP*QhM!gvpdUyI?}p1c2yYhY~r z_VvRqI~hi$_97U@cE5#Z{Zhy&EqB*`vAMpf?Ya?h{;uuk-}E1T!ah4kx_Q*9mOjl* zv62c1x-eMCSfQ*b3b|P6*~#_2>fN2y=iJQy-I$q_TIV>AHLGvxzY#v#{w}OBR>mny zZ+4AXVq%F7d*h&{U!c8&&KUXS@X->Bu@pTF71|eeQVYw8ns~h`7|n?)2@d35c_1Jn zeG)5*kFZ<}MejgYN(?7Nw?Mod)k5v*wm{$@osr)Ywv-QvXpeI;3Qku^T}zo`go?co z|65!$tORilITCe4GfhNoqaj~NtO|@obiA%Tub@&qQ)*Sn14oz#=<2osGcxe*+@PL< zyx=_nR&*Un8g$Iu#el1FV8xS6kKlqt6Q_nLmsoyCCicctlpM=xVMApO3V7u00mxNJ zn8H5H7~1cY0)_}KJSfc2QSG+HDoQlkX^Iwi_%Qb4&1XPlDw$%cwf-dlhzTK+<_D-) z&P@=34aLr)@%x%0WcLNFBZ4im4biAYc zX48#WytT#YP@@jEfGgaR&J#HZzJa@HjxyMYHe{pLPnxkn;~Nj*Rk*wS5*frI0o^@# z&G3U*-hF=Y_v1Euf&ZeY$+hsoi~%M`iq}OU5nnKjI6qCo7#tk{_f3pIO(8(pMmgCr#+;(8d(-5n@oY{gBKSFB;sfY zEGd8%M6}wgw88w$*dURSw+YzI2N!gycd}~V$*T@AlPt*-f=web80-YsRGL; zIurEoITNgt(oy6p0G%)TAq})jmI~qDOTd#8SWUAuE(*k}kk&NIGfR#?MWZ&@WgOiL z>$#C7>im5ft}NgVUz#o-;GS~3h`u>vuPTQ6J_?slXE&+uSm7V8X2xqGN*g32wQVF? z60uDVd}|BtzXW}IHl+O9$Y${gL@oN<={bc5POfF*UaM4*ulAX=jeCFG9716kCF{ap z+Aa!D*;gIqFWp_D0@7TOln&`G=|&m}X{5WP1i2vScNypR7x`wGaTX8H zJ@~rx)5+w$k^uMixVE%C0WLCO~Q+tBA;H0@eFG) z9eC{^DN&Wg*!QSPZ&6UQTXd8o&~Nom);LFsVoC&=vbu|xNN`s-1=AH*8)z4To#%#y zdd$@UB#=RyuU6;>-mgB-YAnr|4VG~L%5Zu?2?e8cV@hX1%$C z-Y!`@^OUFtA7Pe=$M(LJiXU=J1!QUEtKOP0NQ3X zL0EH2;5m@t@SxuG%G+4`P52~ZYSYtf<5_!E_05F>!Og3NVhP<3((hbndMVWA>MlDv zn$&G-7+NQ3%TTa+SwC{12rdHZ(>d@r=%m6}QzK^c#Jf1mYV4ihwfN65H)@P8$MxDc zTjl)d2R0#MAxtC@z=02~@CN4)F3cc@}c$eNk#9s}m0 zCQU1m>8KltX-7??Rz`KAa9O`78vwc z96b`^On^}8Uq2X$nJstj(oDH3I)|mIuLz zwkCtM6CN9f((dN*4jqG4{_r(Wh z2u?7~;PfTgKZy`BNs+soV7l`vUoj0Zs59#tk&2GGS#}^vM~n9_o1()DH&=e+1J8g6 z?KqAZE{5+wu z^h1JTDHbTO>mUG#C?;6@CZ1@94=<&=#wE65{;Up>sTq@gJ?nsNSa6zE7ZoR|eSK`& ziwVJeio-qK&1`}djVaTPBHAtX-iedlv!W}@HqzoQ&gu~oM(#ZleNhagi2S^z0$`*2 zvXv*_l*3vp7N$6SniJ6keA;%N);Z;F2X+yzHXEKK>|!l-K+oBIB9Rg(r?T)}`0nwz zW>J5H2T!yBBQv!CV3wS!?e?ao$JZGHB3>?^p;I0oEq1rFbn-K-z1;UX^Zco(t|y{F z&aaht8|ducgto&gzsFOSGgDA6d{NN+DwNR7IvD2_ztxv{`PTvRQAD{R>ii;bqI6H$ zi~7*gkXL6sk*D( zRfRn^T)TGZOa5H8)%KL|b$feS+tmm`x=ir7xA_SFtXdrfwMW*l6LlqDsdN9czC4LZ zxQ1hx2G%}RlTH8PFjxmCx{XLh9X)5F)BD@x`3Yu(w&|MQ@Wn))MQ5P40oe6lq zj6&YQ)Y$fsl?yoMn2DRKmBXL&;#5@wIec)ey+_r)wLWKQ$%Nl|=)1S>2v2Br1GB0z z{26J4KqT_fthh6KL4A_nUGh|M?rQeB3d2M>f>?eF=%>&KBi ztb~177I8YO@8HV-(xw2pP4vCgNM_ODMc*XT)Vb84bZ$(aRZCi0SD4Vb5~0yzn-7uD z8&6`h4|PfG#@4O=sM;eev2gieyH}I*Rnq8!MO>k8@S&aMNX9c!hpUjKeRDUN*M<4& z`yP541rMR2;EXAYLf51%0hfLwoLO*VT(v!KEHyrD(8{a*@p_=xOtG6Ck0QfS>k&u_69rGu_Jt&YG97L`S7&3_{l%EQ)VAjX z2UV7D9)#I1Jv#8Fd6X+dOxjZTXFW0vpAv0)rZ!Ck6!Fz&&ZCezKS|5 z__!pv3>!#(zZ}MQfb=Bz4!aBypX`XnE#6B?yfTCmP8;tZVe#%QC2|cSbs$Q7mx9Wk zrhgq}S`lflHu@AX)_|0m0Dgy%FGt|ZP!H;(BN8Ff)p``6P$lT2Z4~=eFDFmYJt6Yd zs+IG46y)X4Cg=VU%>5u$6hq|9hlX$~MPeX{3SWik%ZBMETV^`}7l|$=T9oPv=>MfAuVpVuT?xQI-5MnhAwB~WKF3p#jb^%x)hgQ5w zEYy^HY%m(3qgTb0>_xhyGy49WgkavN*iwr9){qxmZ}0h)}ji`R&Z0sEAcs4@JVrXS$uNXI67&^So5DE z_wSSV)|hizP*Za+cCTn0^tCx`&1B`kM^^O^qqM)Or4WgFyEKhu_AWCV(8q?&7iiv8?d=$)b z1MCx)Px;%)v~QO*(UKzoMpj-f68L&<9G&jy%k26a6l~xWa27d=0zy9Y?Knv>uTy3B z#R4dYL0;(wG{B!VU<) zL0dQ}cE7}kSnh!@UA2Nn@KkO8%G$oaXs^?*bXW`@IS`edO zPr)lZK}u7D_99TTzwi<#blDq<%z2HzF#{9rVJal40r))tDNA4@UK9YkbOz5og)RphDfLoH8TaTJ5@i1x@Ntowsmz3c5mldGTpqbAC8z+-y z3YUgK2;tdm95YQ4$o=gR_I;ot|JG0jq~!w!JryDgGKTgLd#SK)h0Z1kh907bO~U(% zT6jiFnX@TWSv@xNo`&z|2;9Rf1$ArDtzSTk!BFYr;&ymtj4Bt1vK|q*ut&Efy?Wd; zk}_qM;ziWm-`?rC{al#%^wRcw6wOCC6Gv|Oa7>zIK{tOroHE9p3-q;DwTZq9(y|SP zOB|hi75t%%z@ZErp@owZiI?H$xHMR7h2k#XwmQmT>7xof5gx@XC`fVWVA~cioSE&K zoAYasmf;04$arj zg1&eL7=I?+WRf^o3qFw^#Y?d9v=-_zeL94x2|usB_;~yo&#*;J>I2Yf+qzIM|Bzwn zf!lXOXQspLmvN-cJ7Fy^Z9K-=NwWY4W8RL-q!b82mgurWTar+^3SwpU*Swg_MY|-s469h*lM(kJ74z%e#v1B%~p6k+k`Zr4M;9Y)5 zrQ#%yC8mb5QdUfV#)WRwxc!2-9CA{=B zX*|`We_=f<%xhLdJy`#KbR#+lj|R6pJG@ZTcZtr=Ff(n00MTQyi<~xkl6_QIxuYG4 zAn6QsfWJSaT0)kmDQ#9{(H8{k;(F3zbIvl5oA9MZn}6VxAW4VEuDJQJ_tvW3^8<=i zgp3DjuXDefv#|&0?0j(&4lc6i2+%kQ@a&fm9)1GxAuGZrRy#lIac(Y6!xvAGHrz|( z)4AuuEkq7`w4@FDUqah3+{y7xTbMo!P#&kbRy-1zFRXRTL}Q62x?q@Ltwnr zqyF|*{ZdFu!MG|}fKcf)Jk0y#Qk3t&@IZLWry+1U{!CF4(R_B8fZnVnvN#y`yJk&8 z5o|-I$t$7DEs@z0(ie7=MpaKrn9UfAR;(N*a)J1eej0*KIXkIFx?K6bYtjN0RG<87MN5Ph zVo*0Xd;_STda7fc?U{jG%U9FOdo7NOGFCBEBwR&j;4Q&)m*JVsL7mSZgs;+{K}z*uLldQDk~pDMMpTRSMayDpW3jXcP-aFaK4SRwhOg43SAApaG6v=#1q zJc}I6RObkNMZVE@gW2>|4+xVVmeNu`#F_MzWq24w2tz{n%bb;&u07(#9!N=hc`@qKm@EtkN&lDJr;L zvk}HQSsd&o7#d_Yb%Py=9{clqy|F19S81|cMmz<+n!5J&3Ck5~Y}=}arb30r5}^V2 zwD^K-=syNKf8H+4r==Oz7M~|D34$w9WiTg+r6;uognB=hj*}U3^eWO|j0up?kWWmA zbEER8t!`eQ+ApRkQmsrzPN32!_e#P_Bfh6aGOTD3gOGBH=Ob&R+Zi30Sc%Aea9H~7 zEB4j%17ym*rkGd>UA_HLZ^3@`9`Eu;NC;;HEL3An;iEgR+j-;5@XGL#4o02(SG@?! zmNW>y;+PQTA_i>3r%-PIQ`x*!@b_24mk5(I-0 zzIJW*ZBIgn{B;FFhh;m=5q`WK>P;)21@!H0ON)E1P2mW93!PsfiMK!~#1#~LLfyQC z=}TF_5|H{5J7GF~A2vvJiJs7KH5%w}$Y@iz%2sMQefiYTC#VW!XWSEusTc6L|ImO) zFuc>MCylPg;Rn_By}7kLshEh9A0guK0m6Y_KKvx}_MX5@{;8^|M4lHz59q-^n>s3N%P-)wu*Apy1c*uY%ls6{?1UoxSMsVN7r!vmY$4U1ZpCFZp zSB*$nRK#ut<0W7!D`6u+bGR?I9e<3Zx6iW5FM1YNJ5roEjQwT4gD$elG@b7S?XgGj z6?8Gv(sGLkkFv-Bz!vs_FSNi1>W-{uoLZyfxL5}8Z{yqaEK9mx*?8EyKbB&|oe3nO z8VPv6K-BGik_oh;MUxzP=SHYz+sWoU*_Pc|ZAp%rEG2OgkyA{O@|sV48aj}*$c=#ReFzE9^##pCm4G| z2ExX>|7BshOX&F%0r(Syy*@UGUX!?ky}6Zz8#t5q|1GZL;`G!$N@DbUPo4((w_%ge zvSuqV7dVNPK^Ue9v@t}A{2cJ=Vt!H6_jWRDXA_0fHLnagK+aM{WcrW(C(d1S@nS3RlL zUYh7&54coZVswV%&><$802)Ds6(5Ty!)=(|2PPPUY}b*5H@uVe7@L=Qb0@q9St`u+ zN_!X`!fP90I@Pzd3+=S%-p@UT)RD36;vT`l)y>59$+Nk(IHfmD3&VHLW5m_Y`<9v9=7o^jo4Lz36MNl!%1 z3c{>#C-z6vmYddm?8F5!nukB?&9Qdzs!KMBj{!#L!8zi1kBIRuP=&b|uHG%D0++Ww zKF=0w;?gq+M!;#eX^_}Pr4<(R>gE(Ur;1)gwTux=f1IQG>fb4lRG zauq6JTk=W;nN0r%g|iMMZts2#+~Kw1kA-3nBBM<2&r;0npESg~K6u!!V7Y-zgy%jr z!=09xB~ev~Jcp)_SGwX7G$-j)q(48uz%aSH{(e4l252lUj``uz&I8@A_=KdyUZ?@Q(rXR552h$Wp&%Sm$b-Okpa9CMXW*$|8A3#-)8|R{nX6* zrI}P?wPY7piep=yrIXLRu5>57uq2UvzR<1~NwK~f8JrI9srnbs2UA;5UgdfyLRR&X zAXqb}GL2YZjX`a)UZ~1kU9Bst!uiUq9|M?TT{2V70AVJ|-z~5F6{)i=C=%eGKF6%Y z7Ft=6dZdWTXx8KXRhtxFSRyM*AuF=@3GUfDy+`L!cV z`(^xDDBY+K4#OC;>}DddEs8FK>ce{#!e2#ud;xxKyt5wP;!mD`4l^XIWLkqgMWo%f zaflwyB3@QC!jweeSK)r;DGG-cCu&bG3U3{ikLdi;H(v7DU?2%M?3qCC8b93Hb2PJ8 z@QeX-JYCs{mGVMLlFvfm&_dn3r$3Xx;jR^+ts(ChilDJchx+!Diue#c4B z*?P;?K7WLbI!9T{JovmNd>w<{$E!;H66`ObfV*qFGyRM4F5w9=Avky7CqrbX!vrp)1mkD1rC#mdLXdN5pFSJ z*(*Zoh!M$6Z&r2Qz%JRl;UnMd*_o@|;^NH2X#LxwMlEsQulGJjB@VuxX*cV4`Lws> zjl|ByKhtDk-fUo=Yh_xY^aZC}aF!_|(lIkA7TzQRY(t0p>Gd&tc> zes@Omai_pyi@$|MbZVE&ERRd{jvv1`xy40nO-yXFC#y+=4&S)Sp)+(Djck1bYeH4! zm3cZ@u`K`0Js)Lp=f+iJs`n|0M3vE<8>IBf1WpRk4Sn<9nsijK^v9}F8FXx52olT* z%Rek&eO%wFlj3mYQhb}!v=YZXUUOO=$D~YwDZ#~m7 z44|QAFF^b`OSw!ZP+^L^zK)1>UerWGO_E%p^2sP({CtErlFQfrt$O>4 zcuslow^_3ri0HuWcigZz2w%Q*7cm;>40)1o@kz}pysE50TzoIPQwuXFW}elhNffQq ztZ)$Oz@XwhOmbLQ@ zHdq2g<@TQ%lSARCV#zL2X2O~fLkuTD81 z;n(NWjoQXwD1@m_!wBJ5PzLd0<=A+CCKTW<`dnOI=yAmO5HaW9zyjJ<0ws*rHnyd_&^78n&clLII+-hONNCDg>?d-5cWDLC_b)9n6o{P1CU-$7L407s-_ z-pN>_?^HhHRDQmVX3NRF#4(=Jdi27iXbVZSm@Te&4UHIPDSbLIRgksrcMi!}LH8kx zi1kkV?^GlM!Caxc9^)p1vBDD=F(&PD^l79>spQ`#vz{QD@ z9VQiviBfRP&y$x0E-FU?(j7DNYgz5FnO9-1U7Fj10D;J3`ywYGRtdNp5Y>Qo+1-P@|$#4vrd!{It&D4(5 z88MK>t&(M*q{{bk+gKz8BV8NoUls7#Pa(Gk7HG*!WO1MnoAKw=-;D)9T2XpobRN@;R9$ zdDZ*TNdMDRe3pcxxWT#?Gvz6$N>L_At8M<_Nu!G9BUfJBQ zeod4i4j8la+F6~Ch&@o#a%JWXtFx6-@5vSL5;@>X>|ze$N=4Jovjt5>8c*=P)os?J z=UlsoH#$Jz7vfg0g=+%Jf)w{Z(Z%^d5W}1#^0}%BgEhRzNs8I2&P7V?GtK0o$CS>y zS%AH91idyPyNX-#5}K5@2VRQ>?Da%6Q(1)*NzRxW9-2LG&+L zW9v~&N*UPrd!ao6TTvM1O*2z1?grU81wdZsv-2#9){B=Yo58FPq{90cNRy?PdBzqr zbXR&i)#}mnzKE|yj_#pCV$njDr<`4a;0d&q@G_^+74Q(M$6rW^ZRcZS?r=zYm%#Gj z!Sc1I-ZxAVPnlVmU2ukuW86&QC4@4nDGZNmY%^`PdC5+u~%7?p{5Ihg@E{qe%G7|%$x8>B2lP60{y^WAi!)2f5_jj zyAZ&Czma_OcZ!1f$!-?4yN(KE{v8Flf2F|VM_l1=DI&Z}(RBvZ-?=MJurdV+bx}qc zMM>r#Mp-#9xf(Dlj7$ur%9-=K=m+1QT9ro_U?#&Wv%M{`+o5WT)8b>jv9 z{(W;{+`KsjQAHU^2{m;l1<5DCcK8k!lt%~8FU9>xGEa>%xpxcvNwk|}rEBVH6gs&y zcc%2{>C}&E29pz0OWd`^u-ES8cTVPzX`)(qt=d?&K@&=Rotx78SlqgrEVG_qUo)_mC$8U`F#qlHOCD&RSroexT?YJLzvne^0W z@;=|QRR6AVW@n3W0fEJOGM5gbEhzW#FFa{0FL+k>kgt~r3DnajgxZvn2mk*LWvgsJNdYFw~S!X4cFe+Q;Q-_W%N z9+%cg5D+rIfU$v>NB;`!-|$Y|w(+s#2VpgER|yU}|IL~d1DHEF1OAnnMj?dmwqP?|!Tm)27hExl-^LX;b^(CT z!UODGtX!?!0czl=9(xOLEjt>6{g40iN!)JVBc;&q!{D7LBTNX0>kPC%g@yXJ??CR3 z^oF;AH}dO}OTni1fx&;Ra!+t5|8G{gf|ZL4*w`O!41NfJAE&N>zi#R(&V#)+FzyN% z_g90{z|?BLiTfv@hp{u@$1u7B_-1N#iJ#RBzM2BR!2c8QKQ->n9NpJB+kXlz_@(`y zApg-W%GVs=-$=u6Jp_Mfr34rf;5=qxnT`lG`0>Z&B#n)_ODW`1+jPPicN} zhgOBZJau)7R=(j9e&@_!Y{d>iX#+|6|i>`&Q={(}Kji+O zpFcjFOMd9Ss|3O?C362PVeDvZY6)PztKhZE=cg?HTJXn${I25H4xgVwR(eM*+@Z8Irh^0H1^@(vM%fLB8x9<0IcS*cf20Th OJOEd-=rxTO#Qy`$*1Hh^ literal 0 HcmV?d00001 diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/.mvn/wrapper/maven-wrapper.properties b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 000000000..c954cec91 --- /dev/null +++ b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1 @@ +distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.3.9/apache-maven-3.3.9-bin.zip diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/mvnw b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/mvnw new file mode 100755 index 000000000..a1ba1bf55 --- /dev/null +++ b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/mvnw @@ -0,0 +1,233 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Maven2 Start Up Batch script +# +# Required ENV vars: +# ------------------ +# JAVA_HOME - location of a JDK home dir +# +# Optional ENV vars +# ----------------- +# M2_HOME - location of maven2's installed home dir +# MAVEN_OPTS - parameters passed to the Java VM when running Maven +# e.g. to debug Maven itself, use +# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# ---------------------------------------------------------------------------- + +if [ -z "$MAVEN_SKIP_RC" ] ; then + + if [ -f /etc/mavenrc ] ; then + . /etc/mavenrc + fi + + if [ -f "$HOME/.mavenrc" ] ; then + . "$HOME/.mavenrc" + fi + +fi + +# OS specific support. $var _must_ be set to either true or false. +cygwin=false; +darwin=false; +mingw=false +case "`uname`" in + CYGWIN*) cygwin=true ;; + MINGW*) mingw=true;; + Darwin*) darwin=true + # + # Look for the Apple JDKs first to preserve the existing behaviour, and then look + # for the new JDKs provided by Oracle. + # + if [ -z "$JAVA_HOME" ] && [ -L /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK ] ; then + # + # Apple JDKs + # + export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home + fi + + if [ -z "$JAVA_HOME" ] && [ -L /System/Library/Java/JavaVirtualMachines/CurrentJDK ] ; then + # + # Apple JDKs + # + export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/CurrentJDK/Contents/Home + fi + + if [ -z "$JAVA_HOME" ] && [ -L "/Library/Java/JavaVirtualMachines/CurrentJDK" ] ; then + # + # Oracle JDKs + # + export JAVA_HOME=/Library/Java/JavaVirtualMachines/CurrentJDK/Contents/Home + fi + + if [ -z "$JAVA_HOME" ] && [ -x "/usr/libexec/java_home" ]; then + # + # Apple JDKs + # + export JAVA_HOME=`/usr/libexec/java_home` + fi + ;; +esac + +if [ -z "$JAVA_HOME" ] ; then + if [ -r /etc/gentoo-release ] ; then + JAVA_HOME=`java-config --jre-home` + fi +fi + +if [ -z "$M2_HOME" ] ; then + ## resolve links - $0 may be a link to maven's home + PRG="$0" + + # need this for relative symlinks + while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG="`dirname "$PRG"`/$link" + fi + done + + saveddir=`pwd` + + M2_HOME=`dirname "$PRG"`/.. + + # make it fully qualified + M2_HOME=`cd "$M2_HOME" && pwd` + + cd "$saveddir" + # echo Using m2 at $M2_HOME +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin ; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --unix "$M2_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --unix "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +fi + +# For Migwn, ensure paths are in UNIX format before anything is touched +if $mingw ; then + [ -n "$M2_HOME" ] && + M2_HOME="`(cd "$M2_HOME"; pwd)`" + [ -n "$JAVA_HOME" ] && + JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" + # TODO classpath? +fi + +if [ -z "$JAVA_HOME" ]; then + javaExecutable="`which javac`" + if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then + # readlink(1) is not available as standard on Solaris 10. + readLink=`which readlink` + if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then + if $darwin ; then + javaHome="`dirname \"$javaExecutable\"`" + javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" + else + javaExecutable="`readlink -f \"$javaExecutable\"`" + fi + javaHome="`dirname \"$javaExecutable\"`" + javaHome=`expr "$javaHome" : '\(.*\)/bin'` + JAVA_HOME="$javaHome" + export JAVA_HOME + fi + fi +fi + +if [ -z "$JAVACMD" ] ; then + if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + else + JAVACMD="`which java`" + fi +fi + +if [ ! -x "$JAVACMD" ] ; then + echo "Error: JAVA_HOME is not defined correctly." >&2 + echo " We cannot execute $JAVACMD" >&2 + exit 1 +fi + +if [ -z "$JAVA_HOME" ] ; then + echo "Warning: JAVA_HOME environment variable is not set." +fi + +CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher + +# For Cygwin, switch paths to Windows format before running java +if $cygwin; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --path --windows "$M2_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --windows "$CLASSPATH"` +fi + +# traverses directory structure from process work directory to filesystem root +# first directory with .mvn subdirectory is considered project base directory +find_maven_basedir() { + local basedir=$(pwd) + local wdir=$(pwd) + while [ "$wdir" != '/' ] ; do + if [ -d "$wdir"/.mvn ] ; then + basedir=$wdir + break + fi + wdir=$(cd "$wdir/.."; pwd) + done + echo "${basedir}" +} + +# concatenates all lines of a file +concat_lines() { + if [ -f "$1" ]; then + echo "$(tr -s '\n' ' ' < "$1")" + fi +} + +export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-$(find_maven_basedir)} +MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" + +# Provide a "standardized" way to retrieve the CLI args that will +# work with both Windows and non-Windows executions. +MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" +export MAVEN_CMD_LINE_ARGS + +WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +exec "$JAVACMD" \ + $MAVEN_OPTS \ + -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ + "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ + ${WRAPPER_LAUNCHER} "$@" diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/mvnw.cmd b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/mvnw.cmd new file mode 100644 index 000000000..2b934e89d --- /dev/null +++ b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/mvnw.cmd @@ -0,0 +1,145 @@ +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Maven2 Start Up Batch script +@REM +@REM Required ENV vars: +@REM JAVA_HOME - location of a JDK home dir +@REM +@REM Optional ENV vars +@REM M2_HOME - location of maven2's installed home dir +@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands +@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending +@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven +@REM e.g. to debug Maven itself, use +@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM ---------------------------------------------------------------------------- + +@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' +@echo off +@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on' +@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% + +@REM set %HOME% to equivalent of $HOME +if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") + +@REM Execute a user defined script before this one +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre +@REM check for pre script, once with legacy .bat ending and once with .cmd ending +if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat" +if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd" +:skipRcPre + +@setlocal + +set ERROR_CODE=0 + +@REM To isolate internal variables from possible post scripts, we use another setlocal +@setlocal + +@REM ==== START VALIDATION ==== +if not "%JAVA_HOME%" == "" goto OkJHome + +echo. +echo Error: JAVA_HOME not found in your environment. >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +:OkJHome +if exist "%JAVA_HOME%\bin\java.exe" goto init + +echo. +echo Error: JAVA_HOME is set to an invalid directory. >&2 +echo JAVA_HOME = "%JAVA_HOME%" >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +@REM ==== END VALIDATION ==== + +:init + +set MAVEN_CMD_LINE_ARGS=%* + +@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". +@REM Fallback to current working directory if not found. + +set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% +IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir + +set EXEC_DIR=%CD% +set WDIR=%EXEC_DIR% +:findBaseDir +IF EXIST "%WDIR%"\.mvn goto baseDirFound +cd .. +IF "%WDIR%"=="%CD%" goto baseDirNotFound +set WDIR=%CD% +goto findBaseDir + +:baseDirFound +set MAVEN_PROJECTBASEDIR=%WDIR% +cd "%EXEC_DIR%" +goto endDetectBaseDir + +:baseDirNotFound +set MAVEN_PROJECTBASEDIR=%EXEC_DIR% +cd "%EXEC_DIR%" + +:endDetectBaseDir + +IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig + +@setlocal EnableExtensions EnableDelayedExpansion +for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a +@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% + +:endReadAdditionalConfig + +SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" + +set WRAPPER_JAR="".\.mvn\wrapper\maven-wrapper.jar"" +set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CMD_LINE_ARGS% +if ERRORLEVEL 1 goto error +goto end + +:error +set ERROR_CODE=1 + +:end +@endlocal & set ERROR_CODE=%ERROR_CODE% + +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost +@REM check for post script, once with legacy .bat ending and once with .cmd ending +if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat" +if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd" +:skipRcPost + +@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' +if "%MAVEN_BATCH_PAUSE%" == "on" pause + +if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE% + +exit /B %ERROR_CODE% \ No newline at end of file diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/pom.xml b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/pom.xml new file mode 100644 index 000000000..4de5ad42b --- /dev/null +++ b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/pom.xml @@ -0,0 +1,76 @@ + + + 4.0.0 + + com.example + demo + 0.0.1-SNAPSHOT + jar + + demo-1 + Demo project for Spring Boot + + + org.springframework.boot + spring-boot-starter-parent + 1.4.0.RELEASE + + + + + UTF-8 + UTF-8 + 1.8 + + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-test + test + + + org.springframework.boot + spring-boot-configuration-processor + true + + + org.springframework.boot + spring-boot-starter-actuator + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + org.apache.maven.plugins + maven-dependency-plugin + 2.9 + + + build-classpath + generate-sources + + build-classpath + + + + + classpath.txt + + + + + + + diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/java/com/example/Demo1Application.java b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/java/com/example/Demo1Application.java new file mode 100644 index 000000000..8f39b2fc2 --- /dev/null +++ b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/java/com/example/Demo1Application.java @@ -0,0 +1,12 @@ +package com.example; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class Demo1Application { + + public static void main(String[] args) { + SpringApplication.run(Demo1Application.class, args); + } +} diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/java/com/example/DemoProperties.java b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/java/com/example/DemoProperties.java new file mode 100644 index 000000000..f05598d03 --- /dev/null +++ b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/java/com/example/DemoProperties.java @@ -0,0 +1,30 @@ +package com.example; + +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +@ConfigurationProperties("demo.settings") +@Component +public class DemoProperties { + + private String user = "user"; + + private long timeout = 3000; + + public String getUser() { + return user; + } + + public void setUser(String user) { + this.user = user; + } + + public long getTimeout() { + return timeout; + } + + public void setTimeout(long timeout) { + this.timeout = timeout; + } + +} diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/java/com/example/RestApi.java b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/java/com/example/RestApi.java new file mode 100644 index 000000000..1a65edaf8 --- /dev/null +++ b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/java/com/example/RestApi.java @@ -0,0 +1,16 @@ +package com.example; + +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.RestController; + +@RestController +public class RestApi { + + @RequestMapping("/hello") + @ResponseBody + public String hello() { + return "hello!"; + } + +} diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/resources/application.properties b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/main/resources/application.properties new file mode 100644 index 000000000..e69de29bb diff --git a/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/test/java/com/example/Demo1ApplicationTests.java b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/test/java/com/example/Demo1ApplicationTests.java new file mode 100644 index 000000000..ccc49c598 --- /dev/null +++ b/vscode-extensions/commons/application-properties-metadata/src/test/resources/demo-1/src/test/java/com/example/Demo1ApplicationTests.java @@ -0,0 +1,16 @@ +package com.example; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@SpringBootTest +public class Demo1ApplicationTests { + + @Test + public void contextLoads() { + } + +} diff --git a/vscode-extensions/commons/java-properties/.gitignore b/vscode-extensions/commons/java-properties/.gitignore index ccff9aa90..3043ce56e 100644 --- a/vscode-extensions/commons/java-properties/.gitignore +++ b/vscode-extensions/commons/java-properties/.gitignore @@ -3,5 +3,3 @@ target .project .classpath *.iml -.DS_Store -**/.DS_Store \ No newline at end of file