From a65684d92a9d1870205b182df08a34b3df85466f Mon Sep 17 00:00:00 2001 From: pavl_g Date: Wed, 5 Jun 2024 22:18:16 +0200 Subject: [PATCH] electrostatic4j: added buildSrc Core --- .../jme3/serial4j/actions/package-info.class | Bin 0 -> 133 bytes .../main/com/serial4j/build/CompileX86.class | Bin 0 -> 4380 bytes .../com/serial4j/build/UnixScriptRunner.class | Bin 0 -> 3600 bytes .../build/actions/Permissioning.class | Bin 0 -> 4929 bytes .../build/actions/ScriptExecutor.class | Bin 0 -> 6152 bytes .../com/serial4j/build/package-info.class | Bin 0 -> 126 bytes .../serial4j/build/util/ConsoleUtils.class | Bin 0 -> 4330 bytes .../com/serial4j/build/util/JarMetadata.class | Bin 0 -> 5871 bytes .../serial4j/build/util/package-info.class | Bin 0 -> 131 bytes .../buildSrc/build/libs/buildSrc.jar | Bin 0 -> 16845 bytes .../source-roots/buildSrc/source-roots.txt | 6 ++ .../buildSrc/build/tmp/jar/MANIFEST.MF | 2 + .../com/serial4j/build/CompileX86.groovy | 67 +++++++++++++++++ .../serial4j/build/UnixScriptRunner.groovy | 58 +++++++++++++++ .../build/actions/Permissioning.groovy | 45 +++++++++++ .../build/actions/ScriptExecutor.groovy | 70 ++++++++++++++++++ .../build/actions/package-info.groovy | 4 + .../com/serial4j/build/package-info.groovy | 4 + .../serial4j/build/util/ConsoleUtils.groovy | 64 ++++++++++++++++ .../serial4j/build/util/JarMetadata.groovy | 19 +++++ .../serial4j/build/util/package-info.groovy | 4 + 21 files changed, 343 insertions(+) create mode 100644 electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/jme3/serial4j/actions/package-info.class create mode 100644 electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/CompileX86.class create mode 100644 electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/UnixScriptRunner.class create mode 100644 electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/actions/Permissioning.class create mode 100644 electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/actions/ScriptExecutor.class create mode 100644 electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/package-info.class create mode 100644 electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/util/ConsoleUtils.class create mode 100644 electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/util/JarMetadata.class create mode 100644 electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/util/package-info.class create mode 100644 electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/libs/buildSrc.jar create mode 100755 electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/source-roots/buildSrc/source-roots.txt create mode 100755 electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/tmp/jar/MANIFEST.MF create mode 100755 electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/CompileX86.groovy create mode 100755 electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/UnixScriptRunner.groovy create mode 100755 electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/actions/Permissioning.groovy create mode 100755 electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/actions/ScriptExecutor.groovy create mode 100755 electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/actions/package-info.groovy create mode 100755 electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/package-info.groovy create mode 100755 electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/util/ConsoleUtils.groovy create mode 100755 electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/util/JarMetadata.groovy create mode 100755 electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/util/package-info.groovy diff --git a/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/jme3/serial4j/actions/package-info.class b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/jme3/serial4j/actions/package-info.class new file mode 100644 index 0000000000000000000000000000000000000000..cbf02fb602f41d713bc1ccf100183ea157f40be9 GIT binary patch literal 133 zcmX^0Z`VEs1_l!bc18xZT3%)}g%Ed9jflFa^`DK-i3|ztarA5i9Zkai$ UYzz!c3@ktkL4c6~$OZCQ0oDQ|fB*mh literal 0 HcmV?d00001 diff --git a/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/CompileX86.class b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/CompileX86.class new file mode 100644 index 0000000000000000000000000000000000000000..d2ed0804549fc1c0b3548d7054b7cc9fdaf41c3c GIT binary patch literal 4380 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 S50hR)wMOU{_y^^dLHjS#0#X?O literal 0 HcmV?d00001 diff --git a/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/actions/ScriptExecutor.class b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/actions/ScriptExecutor.class new file mode 100644 index 0000000000000000000000000000000000000000..a1cb0a7e34793aca3092fd6e14fd15b950009b84 GIT binary patch literal 6152 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 literal 0 HcmV?d00001 diff --git a/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/package-info.class b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/package-info.class new file mode 100644 index 0000000000000000000000000000000000000000..fc3afcfbad30c1de3c2554cf5f15a14cdde29c10 GIT binary patch literal 126 zcmX^0Z`VEs1_l!bc18yI{iM>&oD}_n#N_P6^i6R literal 0 HcmV?d00001 diff --git a/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/util/ConsoleUtils.class b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/util/ConsoleUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..79889b76f10a3255d5891bb1570b637099753e6b GIT binary patch literal 4330 zcmcIn`F9i775<(qdt@PO7_%9YHna{{vK$4~ki-TGc350&L$PDm&_c)Z*d8L!D5DXH z+q8tFTiSGA(sXar1lrP;B_Rfy;BIhE|AYQ7oY3#ijAS_olKjx)Gj~S!-FM$zzI*TU zf8M?N4uCG)RA|dNvzemlT1LL>L}sF7)SwhroG?xrnY>|7 zXAVxBFms-UI)!!9uH&4X3;6r|@A7KBLQA!lhXPS*YAbq%XXX0xMzPp$PdN&y0mq%r z&A+LNOSE8C_`ug}Qmhb_clTqkE1i#^HFI%Xe2nAXmkfxnx_8a_tLBoMT$T6vK4o@CW| zAuEA4Jh%)W$0j*3vII!Ob4Aab)sR$Z7Nz@4k5(2;*PBbABiNQ!h|5|KP=)^LWBt7M z+ zd#-8B5&>aA#d3j7zz>5;<{`mV$V~Q&o*0o;4pnbyYRYuY$-|~GX}TKri9jRaUKXg* zS(f=!m~H{9=azDw<0?E_o!1aMRl&X&zy>fVX&h46axXLw=Ul7c_0D;wG@9L$M!^${ z5BUHqdLz!rT!D#vlWsJwOW(<2WZ?T~c&p56pr|%Cr z8pae7IYX>s=qdC5^%lsnCynDs9G}6_rKRR;(eOEmy)#=dTyx0r_B>TGSjwC4?Q%Kx zM-n)W&x?zOxVTJ8+mHOD{7eX0E~H6FvqHqOm()cSy4aDKdLMs_g;R|*3UHZ_;*65#s9_k!vb9xm{!YGtWWhtmNP+g_UtB%t^H8Gh9GLtC7X1!RqLCO<2iKnH-Kclc* zrb$(E@2C;LySMu<;ENK(XA_8_QQG~N720cprN#i%@EoC0HZ>TZJF1T_1N4I`Bx0V& z3vryrR|3TqzY_SG45rigy25?s;pMr8U7T{<*~~uEHeJIrCz*&1cP{taEHB&0b9GG+ z%n6fQGb5tFGHs6wt830{4KLA>qFEi`_3h;o{O(t=k>gCEsm-4di?jUxs_gL=kr{TT zyu+q6Dm!P2L2Wsr%QO3Au#~qQ-y#$9Xw}vbOv%w09_J|xdQ~@z;m0u)SWbRR<#@_H zN!M~_3_lHI{WeS$M0pH9BUnw>jo}yEv7OhhO6zOe8N;uLK7spyWpn>;{E5S^o3~^5 zokD#s?-a@Zy~3(mhAV6%UTfz2ZiC#v^Yloau1Meq_@P`s{=hrXhgYKEPw#0U0RU^p zQLagUj^iBulEC-yeZl^Df@iVR?nst~i;Ns2Pv4gmW#xMD2HuS05-un3I?jk6^Tbtk zL6qCqsGNRPWUn!%hTQrRcpE*9wC5dOYx+19q?tGb)2P8KF^B7j5Z1e&-a(@f{%)2; z4V7jmOgH4jD>nwVkJiIM+()gV#r?Z&+mY)abIw^a?3CP`x!1~@*g|WgV5>uPMO>Nz z)A1tWSjPABau?(~E`eg6#53M8DZRj7Tlq_}w-)oflce6l>eOYl4yIGb-^7OW*aa>r z{GBwxH+aFk5BKxkh>zf-p^B@h=i$IEUqy%hKvs`*=o_=CE7%-Chu)sm`Pmu46>N!O z>CHVW{)^1sYP1B>%en_jc+`VjJXLhkuZ+L-aOT5e?lM*-ArK zbFYS-5&V;@Yq+Z(t$fyF6E+}4Tes3$v3?ER1U|{%+xSk=n@8{{d5z@V&5vEaAG<4l z^w#pD@Bih;Ci=0NezeotB<)VUj~|a?5B*tSx?JvTpqFPQAA@OqZ&u%**88*i0jA+# z9n(Of@1MsL3)nx@Ii|X!tREWWtLOj^=W-(QOv3()>?nP?i_Kn8Aou6HV1i5qyAlVGQ}G9 zYdDsS+~x%#s)7GNmIAKie&;Q0;;NtfA+*rzF6!CJXB+l0zaz}>2*1bh7`1o9L=Ost z&9m6yKc~n)P5w*dzfAtCpax0y9Hr$=5xEH#fWoxg}v106TfEZli~b$s9wPIX+yH_lU3 z`9NnsYr2INjrJ*-ok3=i;ajS3ZR!nd7{7t&`LWbE%ax@noW=bOQ2iRdjek?PiH5$& z_c!@`i;u#0@ZC_M&bJuYkm{fgDR%gKq(_8%*f-eLxod%Iv(zO97%BY${YS$oeWU&p z(suo2(yaap=`NqYTmLz~d-Y$E_WAt1`mg!j@6%EJxBSlOuaZvbuaQpsbjGI^sc#C8 zW+x7h-sr~{SgoIZ8^;bXkbk^}bK`o1J?pRHxpX-G7afZCg_gEo#DyDJNqQM?EpWqu no6zTR<-j#u8t2x(UBU&%?)qZv82eSX(4?`ME8L*o2(c5CYxQd#bAHk_h#Pv-uL~# z^L>*?p1tn@0P94Bz}abYES}RWUCpi=jSuGaY$l$!^=$lN)#}o0HKW?91R-!q=cqcN z#e$E7_26+Nvxw{_4%fHfvTMd~JPOE-oI zZ)I1ad!V}tJq=2@zB7Lx+!_Rmv(b#2a8Z9UzdRdcz7F=PrvJ56gio;EYu zh?>vEJv&(1P?oHvn?}4qOHibN0pifrE+BRjm@#sdvn_B+iN)E6&IX;S*r*%2y;-2H zZmxETxl8rE0*h;hHM?ESW|O+DwOW?CPoSx;zP~)yykYBOT0BkkIiiox9Bh%X0%wHb z!;1u#my=%KE8{do!U*C_fh8<8=@_V>fIv-M{Yi9_aW-n1{W&sDMNK6=t&&lNMf_Ax zPPIq$oIr43AZJ_7tQ$6&E*(;AC!(+tg0Z7oCAQm}-fpC?c~E6~jw2^WwC>8xpJ0;Pz&#FEjB zmM}J8ql6^_Ys-d}=c;7d(#P$#eYVDd*P2nsZOxMK5`l19&DlL>&%SYzbAGXHJTXP4 za3iePI0Y!JXbWQtC{P22wwH{)ii|iP8~Le3fd?u+4bP{-oM@9keqF%J?Rm@6*wc-5 zGxl~0SV|z^oI?hHz!mzbr_SK~nqD}BVAB>?Z_kbbYhGy4k}xU|8n?6w-OT6MZ~-2I0*gGSc51mC zdsK$$x@epUDtM512nlQ`R?90H^G|?E$4FFtomwc6DCXvxWUhFInKzEj|=S(7HRS#4O&&KRm=Z(197+21HI)k7C#B+bo8 zWJJwH1~tuyaFFX+Efd+J+anP*lFN^4mPfQ_L{E=I=*%ExoV72a8%|2t`e0Ub>Fp6M zl6LEF$;lxzZ)74Sv1e)Hsy)&eNtyXbZp6%IGZBj}B1de5@9Y_A41gIL+MdXSX648% zjUl|7Rb3OtO?WQ_F;!V=+?JGazJ!~}f*aFRik$w(UsvDD=@|}z5-c>+{)X^jf&Tw5 z!-~Rd#wBx?WbDC5Ip;nmqY`1h;Xlqe7KE^X(r-=U+J@E;J}F~?yZI^JltYk7yT(z~ z3gLhZ+1;Duy@eqxq`F5bcZF?^hj38FLU(&wMz#BNpNz%s)BU6?cXMoaGE_-3jh$}%AdvOII})4V=0!gq7PAfR5lmN^tTeeNEtZ; z)$NWq6^nP#)|YQW%P=HBkKjvTJd7{9j0;d@e3d)Lhw(Lm(`R~w*`AE=Pm8V;>YkUo z{v6b(UyC~#s#Cq8jb&wRAmLjiiki!UD1p;TyO6?83%8k7wcKbFwb^GB1rU7&#FOTb zy;B>~sG~`145&8k^c3yI#|GAN4^W%~Ua6|@4WT215elW8ew7x&V-#^@;#NC^pM*e{ zW^hb5^0^Rx9>VSruBPU)oB)CIC~(Sp@?_n=^V!hC@meM02lye^rpM_s;)OGj@cZZV zO>QKV)t8IIAHsM7f0Xe(e4m5x&*bFUia5up68=KpgJcvLf8`GPDf~^wukjlO{Ew3q zUgx{zUrhUNGNH;}NHU(rXe9}LhK$`#Z8bFvow}iQ=f?)A15~L*a*JY;zk5~s@}_rh zv1X@h!(Khdg|yW$OuqQ(%A1mpbmzRwngfL$&i3F$*Wnyp`52q-wooErAV! zssiLKHC$!@nyI2VGgS{~rZPeP@bNbi%{5#soS8}mP<;C=ob+Ox@<_=33{8Lc3q-5ifOED4n$)s4&kimL7dwhtO-U3?nPZqu&<%HqNajh zqBRwLcM~=B$n=j*yn@iyBTW51^9aybkC=mtpH`DJ-l<0e8i|^p7`>lX<5=Ti*h)Km zvYIh;#kw0DQ4K|sDu^;jWs`X=clazSNLl1?qz^-^MU%&I9nCB)%p5zT_aJ(J-dxl! zuf+~8ndq3xMO=dyV;!AiyF_T_y`{`y`y|dkh)v4oX>2`)&CCme`7^Ke{DKZ#=$*Wd zwBx+#c4WttZA~%dqNeC!bo+1^JALR{-M2cXB%6q-^FEEf{RsP~aapRXFQ#118>24GgY^=wkg%c1Al(He)?)-ZDO(CKTL5^Y2e97*I7R@C=K^Fn z)3|a!R>l;I2yz9u0orlUIcV+qplzFjw!eV3tqj^q`tr$p=G;V~!J4e}&`vZdKE+4o zyejZq`-mc+uEZ-iONxz9y&qTOl^)xN5pvj$I&A$%u^~Xels}pb+#gQ){X3@dnpE`( z_Q30pz&CIQK{$_o;?dy^chS6f_ho%4f73LsKZY9yQUQ8;$3QALv(R@4@45{OkKm@1 z@}5K3|KLF1tOr}*KY~04Ptw=D7vO_TeOeKZfCMju#1&D9J0<>3E7=7 zhwLsU`*e`W?smw!R+o@Xt#-)nVX}KGnCy^4*4&(2-N}pTau@C8~K$3W))Sj&nUiI z5sFUZ3kN1~yfbzji+FV!UrBXN;dtyIzRqqDf)k5uUG+4UNYq#e?l8PaiPOwRKZVLj zUFsnO4)jG+R3ND|^2+RaDh3G&-*!T-igJt#!#C*nP5KFZ2jBG=Dl|K}8I2JSE~jpo zayj+RP!Xp)*HcI(UJPJYRN1CHnv5zJDL0ky z6+?d+^vK&ibaj(>@*ymy@gV+wj1Fu+4rLnu+)Ba*k-e8bjVg&Q QU7z6k@1s9*1f4nbU(oIxzW@LL literal 0 HcmV?d00001 diff --git a/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/util/package-info.class b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/classes/groovy/main/com/serial4j/build/util/package-info.class new file mode 100644 index 0000000000000000000000000000000000000000..4abb9a7bade1db8ad447682a66ec222a5f38b4eb GIT binary patch literal 131 zcmX^0Z`VEs1_l!bc18x3{iM>&oD}`ilFS_ag2d$P#Pn3%%)GRG zb_Pa927#=^vPAuy#JqHU|D>$cv0iq9W`7 literal 0 HcmV?d00001 diff --git a/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/libs/buildSrc.jar b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/build/libs/buildSrc.jar new file mode 100644 index 0000000000000000000000000000000000000000..79d843b23b85205206f92653f7b36d6efa8b6355 GIT binary patch literal 16845 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�mCJU5{SnUZ! zA$5NNk002}D7BaD;!~1RlEpd=kq7<#xHCxV8XgfG2nZ4WKOS2uTbsH5(SfPpWNmHq zkN!&)GgTB-OfPy+aQ%63LAyc`!Kw|)TzZjGrh;5jQ>ag$Y2dra-~kfcEENh(1==U( zbKc`;1*JXii(3?Y`E3JJQ+K1V-~IjlC@5TvPn*xKnxE3V-=2;LfIRQx^b+FJ6ltvw z>$jk_L~G%yv>Ub>+VR}-t(llm@X`{9xBL{;(8K1APzADv}NfsE- zr?OWqSX@bpvP}+}?Y$09)6Q8!vB9QDGTk+9!q&uB4G~fp&sY={XH?3ph~KeTO2v*Z zcAHT7iPGClS+o`7vP_{19R=7!j%df1E;gc%6~wcd4jW>1!WYD+?W#^U=ehz?JjjK1 z57mX#LQtxAcPD$q2$KdmAjG$ zk{t%kWSQix_+=*Pw9TyhW~9k;mw1hnsYP-*FdOAp2b=Yd9JD6HSBc$>Bq{{HIa^+4 zL#KQ&?GY95nD6|?Z3#23petvilSK$s8H*CN9YTZGArEE(;)<09;$#9u_Z>_U!*8rL zD@MabA8$qopS{71+bzw)4e1MD^wJG&2GzlSTvrAS8X%7aJ`+_Qs|0KwU&Puue)Wkd zW?ZN@_=Iy~!B~d`7qHUd`^i4EUZC2Y1_WyI4VYBPj*ERM_yAa+8+Mp6mt1N}JmiRm3tB{Oi+W|1fi z#SW{nS>l*@Y?gq}0;0ANLEZIKrhDQGAZ63*TdtZ)W5Pgirl@(kKZHwNK1sR;5|tYk z@#sc^55=A|idh52)F1be70{no76O~VFyPpLyYTz5vnIsBhtyz!fvYGv};?wRs{CE+woWAAcnlMZ_B zzkzAqUx-MwF|he|d5QIV^~h&8UM$~j_MLFt*QRUTM?{Pvsai_cT^GVeVu`AxmdC1L z_uBcQ>T;-eVk(*$Ms*jcQ9ePftam*$P+7b4z&Wy7sK%I&e!b1FbW_~QzlIf~c-YP+ zsfhRDx67G&(H=CR(|#fTseg@n#`Yv4H+2J_JT5)Aw2A0)OLa^-_tE~k;$y$S_>^5B z@O-d{BWb6%esMD&7M$Fx58lMZxzI88DH6g8-_~7f*Mpb_7)gKa%Dm7V*(rNp`a1Ka zk&@7~&bVMi|Ar3NBV>#6_v}#4YtRWpM_yur({KR6hAA8FGxf7@alav4tsYG+kH^V1 z?56z#cYl+CYuasmq7eMmMaXc44%aDjAKq?#7q5Jj8wJx@QM(6nzGNbn>=v8`*wr_T z5#x^3u=0mvnuU|bhp)#@1i zyEWM1e%2QL^p&v=U`p*+kYtBTSadY4ks0B?P(L6_B{ZX`RMIoBpRp-`Vc2}`^wg3T zPS2D$rq?$oz5v1?LFm9pWqgyS2@mhxGmYC9|FUU$&RjOGY->eq&`6QqS;vT<{$n$@ z6OD)F(Qx$#=!(P_60~5-MXbksykK>$8z7^x_C;HN##64$`XjWUd?7d^T8M^}a(`ev zJucck1-*xI%Smj9Q;7XlA3`*2rF6;ssfCXzsc$%EaG!y83ATFuwM1m@CwwVn*Y46? zmkl6S`$qCjGjE9ay+1(27_aCG05iSyaCHg z0fV4^_|J0T_l@eiAp)HU{`&o=c=%soecYt@jLS`rhiDje`$dKuwN0L{SWj1)6M--1pgC? z`_B05=Kh5KA@=>dxqs<{|4AVC*98A*d45+5|AQ*WC*;2n{kwMf_aJ}Qu>6x-{$1Jf z7kBxOApc6y@;mu2vVW}puTHc-?APk=y?^}+^8eeH_B+e(eQE#T$?+k07wG>dmVfI~ z`) Arrays.asList(runner.getScriptArgs())); + } catch(IOException | InterruptedException e) { + e.printStackTrace(); + } + } + + private void executeScript(final String script, final ArrayList args) throws IOException, InterruptedException { + ArrayList command = new ArrayList<>(); + command.add(getBash()); + command.add(script); + + /* copy the args into the shell command */ + for (int i = 0; i < args.size(); i++) { + command.add(args.get(i)); + } + + Process run = Runtime.getRuntime().exec((String[]) command.toArray()); + + if (run.waitFor() == 1) { + System.out.println("Run Failed !"); + } + + ConsoleUtils.printConsoleInput(run); + ConsoleUtils.printConsoleError(run); + + /* release resources */ + run.destroy(); + run = null; + command.clear(); + command = null; + } + + /** + * Retrieves the system specific bash binary. + * + * @return a string representation of the bash (bourne-again-shell) + */ + private String getBash() { + if (!System.getProperty("os.name").contains("Windows")) { + return "bash"; + } + return "C:\\Program Files\\Git\\bin\\bash.exe"; + } + +} diff --git a/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/actions/package-info.groovy b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/actions/package-info.groovy new file mode 100755 index 0000000..97fb36a --- /dev/null +++ b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/actions/package-info.groovy @@ -0,0 +1,4 @@ +/** + * Holds the task actions for the {@link com.jme3.build.UnixScriptRunner}. + */ +package com.jme3.serial4j.actions; \ No newline at end of file diff --git a/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/package-info.groovy b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/package-info.groovy new file mode 100755 index 0000000..f7dac21 --- /dev/null +++ b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/package-info.groovy @@ -0,0 +1,4 @@ +/** + * Holds the native build implementation for the jme3-alloc-native project. + */ +package com.serial4j.build; \ No newline at end of file diff --git a/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/util/ConsoleUtils.groovy b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/util/ConsoleUtils.groovy new file mode 100755 index 0000000..5e11edb --- /dev/null +++ b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/util/ConsoleUtils.groovy @@ -0,0 +1,64 @@ +package com.serial4j.build.util; + +import java.io.BufferedReader; +import java.io.InputStreamReader; +import java.io.InputStream; +import java.io.IOException; +import java.io.PrintStream; +import java.lang.Process; + +/** + * Some useful console io utils to provide log errors and info. + * + * @author pavl_g + */ +public final class ConsoleUtils { + private ConsoleUtils() { + } + + /** + * Prints the process input-stream to the [stdout]. + * + * @param process a {@link java.lang.Process} process + */ + public static void printConsoleInput(final Process process) { + try { + printInputStream(process.getInputStream(), System.out); + } catch(IOException e) { + e.printStackTrace(); + } + } + + /** + * Prints the process input-stream to the [stderr]. + * + * @param process a {@link java.lang.Process} process + */ + public static void printConsoleError(final Process process) { + try { + printInputStream(process.getErrorStream(), System.err); + } catch(IOException e) { + e.printStackTrace(); + } + } + + /** + * Prints an input-stream content to a stream [e.g: stdout, stderr]. + * + * @param in an input-stream to print its content + * @param stream an output-stream to print on it + */ + public static int printInputStream(final InputStream in, final PrintStream stream) throws IOException { + BufferedReader reader = new BufferedReader(new InputStreamReader(in)); + try { + for (String out = null; (out = reader.readLine()) != null;) { + stream.println(out); + } + } finally { + reader.close(); + in.close(); + reader = null; + } + return 0; + } +} diff --git a/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/util/JarMetadata.groovy b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/util/JarMetadata.groovy new file mode 100755 index 0000000..2401d41 --- /dev/null +++ b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/util/JarMetadata.groovy @@ -0,0 +1,19 @@ +package com.serial4j.build.util; + +public enum JarMetadata { + BASE_NAME("serial4j"), VERSION("0.1-A"), EXT(".jar"), TARGET("desktop"); + + String data; + + JarMetadata(final String data) { + this.data = data; + } + + public void setData(final String data) { + this.data = data; + } + + public String getData() { + return data; + } +} diff --git a/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/util/package-info.groovy b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/util/package-info.groovy new file mode 100755 index 0000000..cfe6420 --- /dev/null +++ b/electrostatic-sandbox-framework/electrostatic4j/buildSrc/src/main/groovy/com/serial4j/build/util/package-info.groovy @@ -0,0 +1,4 @@ +/** + * Holds the utilities for the build api. + */ +package com.serial4j.build.util; \ No newline at end of file