From 3bb0247c631511f2ea9c5f7896bf96892f8de58f Mon Sep 17 00:00:00 2001 From: Kunlin Yu Date: Mon, 25 Jan 2021 20:28:11 +0800 Subject: [PATCH 1/3] Remove useless debug log Signed-off-by: Kunlin Yu --- npm-debug.log | 23 ----------------------- 1 file changed, 23 deletions(-) delete mode 100644 npm-debug.log diff --git a/npm-debug.log b/npm-debug.log deleted file mode 100644 index 4e6b9e1..0000000 --- a/npm-debug.log +++ /dev/null @@ -1,23 +0,0 @@ -0 info it worked if it ends with ok -1 verbose cli [ 'C:\\Program Files\\nodejs\\node.exe', -1 verbose cli 'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js', -1 verbose cli 'start' ] -2 info using npm@3.10.8 -3 info using node@v6.9.1 -4 verbose config Skipping project config: C:\Users\stem/.npmrc. (matches userconfig) -5 verbose stack Error: ENOENT: no such file or directory, open 'C:\Users\stem\package.json' -5 verbose stack at Error (native) -6 verbose cwd C:\Users\stem\Documents\TEST\InFactory-master -7 error Windows_NT 10.0.18362 -8 error argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "start" -9 error node v6.9.1 -10 error npm v3.10.8 -11 error path C:\Users\stem\package.json -12 error code ENOENT -13 error errno -4058 -14 error syscall open -15 error enoent ENOENT: no such file or directory, open 'C:\Users\stem\package.json' -16 error enoent ENOENT: no such file or directory, open 'C:\Users\stem\package.json' -16 error enoent This is most likely not a problem with npm itself -16 error enoent and is related to npm not being able to find a file. -17 verbose exit [ -4058, true ] From 938cc37204807fc347622df51927feb498d22c81 Mon Sep 17 00:00:00 2001 From: Kunlin Yu Date: Mon, 25 Jan 2021 21:09:22 +0800 Subject: [PATCH 2/3] Remove useless build file Signed-off-by: Kunlin Yu --- database/bin/pom.xml | 67 ------------------ .../src/main/java/database/Connector.class | Bin 6764 -> 0 bytes .../edu/pnu/stem/database/Connector.class | Bin 8298 -> 0 bytes .../edu/pnu/stem/database/DeleteMap.class | Bin 1876 -> 0 bytes .../edu/pnu/stem/database/InsertMap.class | Bin 12138 -> 0 bytes .../edu/pnu/stem/database/SearchMap.class | Bin 10073 -> 0 bytes .../java/edu/pnu/stem/database/SqlUtil.class | Bin 4490 -> 0 bytes .../stem/db/dao/CellSpaceBoundaryDAO.class | Bin 670 -> 0 bytes .../edu/pnu/stem/db/dao/CellSpaceDAO.class | Bin 646 -> 0 bytes .../java/edu/pnu/stem/db/dao/EdgesDAO.class | Bin 634 -> 0 bytes .../java/edu/pnu/stem/db/dao/FeatureDAO.class | Bin 976 -> 0 bytes .../pnu/stem/db/dao/IndoorFeaturesDAO.class | Bin 5870 -> 0 bytes .../stem/db/dao/MultiLayeredGraphDAO.class | Bin 7898 -> 0 bytes .../java/edu/pnu/stem/db/dao/NodesDAO.class | Bin 634 -> 0 bytes .../stem/db/dao/PrimalSpaceFeaturesDAO.class | Bin 4687 -> 0 bytes .../edu/pnu/stem/db/dao/SpaceLayerDAO.class | Bin 649 -> 0 bytes .../edu/pnu/stem/db/dao/SpaceLayersDAO.class | Bin 652 -> 0 bytes .../java/edu/pnu/stem/db/dao/StateDAO.class | Bin 634 -> 0 bytes .../edu/pnu/stem/db/dao/TransitionDAO.class | Bin 649 -> 0 bytes .../src/test/java/edu/pnu/stem/AppTest.class | Bin 1397 -> 0 bytes 20 files changed, 67 deletions(-) delete mode 100644 database/bin/pom.xml delete mode 100644 database/bin/src/main/java/database/Connector.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/database/Connector.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/database/DeleteMap.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/database/InsertMap.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/database/SearchMap.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/database/SqlUtil.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/db/dao/CellSpaceBoundaryDAO.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/db/dao/CellSpaceDAO.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/db/dao/EdgesDAO.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/db/dao/FeatureDAO.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/db/dao/IndoorFeaturesDAO.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/db/dao/MultiLayeredGraphDAO.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/db/dao/NodesDAO.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/db/dao/PrimalSpaceFeaturesDAO.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/db/dao/SpaceLayerDAO.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/db/dao/SpaceLayersDAO.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/db/dao/StateDAO.class delete mode 100644 database/bin/src/main/java/edu/pnu/stem/db/dao/TransitionDAO.class delete mode 100644 database/bin/src/test/java/edu/pnu/stem/AppTest.class diff --git a/database/bin/pom.xml b/database/bin/pom.xml deleted file mode 100644 index 7f27ddd..0000000 --- a/database/bin/pom.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - 4.0.0 - - edu.pnu.stem.igml - indoorgml-factory - 0.0.1-SNAPSHOT - - edu.pnu.stem.igml - database - 0.0.1-SNAPSHOT - database - http://maven.apache.org - - UTF-8 - - - - edu.pnu.stem.igml - feature - 0.0.1-SNAPSHOT - - - org.springframework - spring-jdbc - ${spring.version} - - - junit - junit - 3.8.1 - test - - - - org.orbisgis - h2gis-ext - 1.3.2 - - - org.jvnet.ogc - gml-v_3_2_1 - 2.6.1 - - - - org.slf4j - slf4j-simple - 1.7.25 - - - org.jvnet.ogc - indoorgml-v_1_0 - ${ogc-schemas.version} - system - ${project.basedir}/../lib/indoorgml-v_1_0-2.6.2-SNAPSHOT.jar - - - org.locationtech.jts - jts-core - ${jts.version} - - - diff --git a/database/bin/src/main/java/database/Connector.class b/database/bin/src/main/java/database/Connector.class deleted file mode 100644 index 9a54ae2acf8018fc359078d7a774655ac760918b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6764 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 diff --git a/database/bin/src/main/java/edu/pnu/stem/database/SqlUtil.class b/database/bin/src/main/java/edu/pnu/stem/database/SqlUtil.class deleted file mode 100644 index e38b6c846e876c237f36202d086406819b941c6c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4490 zcmeHLUysv95T6YPc0$V0v``BDvm7l=xDvNlN=rkLdI+kM45umwQq`x8v*ecAUbDMK z+$XElO683QJ_aA8>a2av1)W7UQm#@Z9^$O+ncvRr%+7DtFaP=TZveOkH#}$%Sl22F z5+>5%F?-4aKF)(I%>!+C5{#K)Bc^#Ud=ft}BKBZ~!0AFRX6Yo@9zEufA#mcRNQJpY z;8?f!kig1qIp!WT39KH--cd>_A5IeQ#e-CFE#s$rOe2|OB4$R&lx9kfVxH(9Xsfxi z%juX$F;gg%vFLX;;dBj+>!WdfYh1rFZjFv5*EE%eCd@>;)SxbZmZ4>{y69%#y4klT z_3M$!c}0>*WoRKMB#l^Vu}7R%R{y`m^pn`hhh@va zN*Pc0DHfG?bkg(eTY*na1kQlPq-VI^^b~Hpd&9o}s8)eE7IMqE!vEFZ+ zKCBb+HPOcsV1dbQw)`PF{ ztZjF>2j3vSRFU!ETYPRSy9eLBc3!VovVBizjR%<>Jg;cD2zYSEF9LvEj@WPluU_$m z;24eoT7QB6Yp3-Gw4dW$16J{BWdMJt@!Bq>;9cn8T@&7e_wk8ExPrI`2xn>#It4Yx15QfKT+9XRLCC~#m(^Gm`Ul2kRAwdBNDbPboC5~Qunz;4aD}Pk*%aA~V zJ3k6BPLP^IPh4jG@y_fs@A&th?>_f7p6qxWrRjWUVH++iRz7gNY8 z`M@`g&W^Z=oZP?*Bdy6`W1st&&v*L%2JJUAV{KU^c%o zYLS9*%j06?WKI=6=C;9bCdnHH)45mDp37j${@-CgtxRO_Z2o^!J!ViXd=3iVnevZE zw~c;n96Sb^F})+8FC+Fnii7pL+MyLd^#g{Vr`0zY|Ds(FCKQXN==Uj(H!8Rf)AiW{ IiamJv7XxF$ga7~l diff --git a/database/bin/src/main/java/edu/pnu/stem/db/dao/CellSpaceDAO.class b/database/bin/src/main/java/edu/pnu/stem/db/dao/CellSpaceDAO.class deleted file mode 100644 index eedcb86ae701f28010d37df5a4efa4360d8bc988..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 646 zcmb7?O>Yx15QfKT+9XRLZD{YNr}ScT;M5`{REmU@(nCrmj$V73xOnZA?XCD{NFc$T zAB8$jkeUM*F5|D)ub-Lm??2yv0>CRc8bFVMNKwm1SugL@y^?4;+4@eVjEyw4G%Cn* zbZ*fqjql!G4WQ3pe=T*&FXdHzhdMLZdu_eVZy4;%PHq_V&x64Mj2KKFwHGmlID{vR z?SAqRQ*ifaxDHKgoysMD+R>wM2eQe1iBy;S;77#COb1 zz{GvXyir-Nc&3~9wI#0Yo0O+0d5Qug{^e7RJ~XYf+Gd`*79*kglw+rJhBl8?^7IaRB!;(_1<%eJve*-q5HU? diff --git a/database/bin/src/main/java/edu/pnu/stem/db/dao/EdgesDAO.class b/database/bin/src/main/java/edu/pnu/stem/db/dao/EdgesDAO.class deleted file mode 100644 index 157b941b64804470149134b144c2968e01e55baa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 634 zcma))O-~y!5QfJgkYpPgNXy-D3RShfZ~{~b0hKDH<-mv3qt_l1(_MSz57d8Fsg=r| zAB7kvt;nH=UdCVVyn1HFk54~;1Hb|7^q|AwUGPdY(pYgP@1;PUL~D}>5gVZ^p`{b& zdWPZb%23reRE$vKPRClN%gN1| zdJL|j$EUvr6*A<)i*gqzDH~&v6Y#v)Ky7rdt5sV z+`7mc8P%Le%Ea$2ajj-jjb*N}%s}P8e2T%Rrmc-Kk%!cxCo~(PPbxakmxWIDxd}X3 zjkm^<`z^iDUZy&(s!RSkg_vJR#ih+SOXC&GqJTbZ4q+W$GuW9-UmA58y|J^S+{n?C z9KNKcLVqQxHw?y8r(}I2y~*c4m)$rwfx-Lf|4;IWL2>DlSNPFn-_5@xUNi`Hfo4g6 x1ZZW%xIwYE_%my?11Nq$|LeH;0mBD6bznp>YqEZe;&7>gZ5S`^-cano+h-=evvkg}6?O+KEc#A$IP`x!33B9{>9N?FRtt!_xpZ2s|$>k8`GUe8$dMEJYO;x{6CD z^H`*@U?x72%vDytK0FDaL13#UW=v1wlk`k-N1!?2nbOJ~5V+FYJ0;L~WrPf%MWC}_ zzp>WXCR`)r%X@8QX|i)EC^vbbGUk-gw6G@4WM00YVQV~gB8^brE)_A)tQ~C^1@h0YgXk{Mmf{I zb}H##&6kK+X(eU$Z&rMw&QM0(MIpo1u@=VIx5H$}iZ#@cvr13akP=n8HI)C+6+#oP zx8VkK2y71Kliltmi&@Up^!=O^v)m+r{>QroxHjP`Y+@W>^lXlX z-=X=T8-9iMPeeCh3s=tpd~Vi=zh7Or1%AH`+lb$(@w>>rSHIl{ihBqRcmO+C_wgSb C_!lGq diff --git a/database/bin/src/main/java/edu/pnu/stem/db/dao/IndoorFeaturesDAO.class b/database/bin/src/main/java/edu/pnu/stem/db/dao/IndoorFeaturesDAO.class deleted file mode 100644 index d15557b4cf2186aa6fa827f42886f6234353512c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5870 zcmeHLZExH}5S~p!oO9Epq@+OF(rtLVgWv<&0wqx7T)A(B7185U2;7=~(gT>y0e~W(ZtJ?L8)U+grV7+|dTi z5?CvTI{-o)0xOdF+1OK*ftjxY zmm6@Nz~W(K_mv9N94r!Z=R1kP2i_icsT262z%fK1X{dsp$NlI_YBqNIoVwicm_nnF zIX|*pPFIl<3n{S@N-Vc$AtkHS4R}OlpsCNa)2A9e`O6Sl$a^9eRzj_n1Y{NAWMc|H z43ws+RrK7W4wDIVkJCZO_3dIUN&y44TQ=sInIKDLv7Ek%-VZq)OMB|ak)}9Vm@i!F zbkc?Fb0v~lXT3-(=3qu}-49%PnC4c*nR5E~_BY*T2KumLcUZVayIKjk+cF!Q2r3+* zX%vTCVS-8oiya*(nk}woi;9TG(&bNu#L=GO8@y(*r}Nep?IbZ~R+PykDKp?4q}e!n zT@`RobwC+SC@~uwu?}8{WOxnL1w6S16iv1o} zI}D{Jfh9X|nD>M!k=!3VoY8#|5x8ZS3+U0LMIDV|_-e%U(WDW$);vy3Cvjfhj-?hp z-;{eI5*XM>|0Rx)??uO?Pm}|D|MBHF`YIMb}OnY|NN;`ObXS|Nx#p3lLfuAZQ zPQ~JNLgESwZ1z|6fk;%-rO~uS*^{=_3}_Qr7=35JCj{oRXIV)%;0AUGlfVqPg>A>9 zsW#yAk=|yOO$gT!QH0H!9qfZda2>Gih`(3x2VlS)9+T?^n0P#w_E(el0OqeS|HIP4 z&v4-nyqkiHc$`h&5O@u*=QArGaTEX)GZ3?e5w95r(%Y|rH;jJ9n zwH(^?5RDd~trViI!rK_(cs%bEAlxoQcn{u3-kLb}6tsq4nUCv`vkwYTy9KCIu$JO| U1Yh8J0ok?SWB3$1+|%&cKL+QAuK)l5 diff --git a/database/bin/src/main/java/edu/pnu/stem/db/dao/MultiLayeredGraphDAO.class b/database/bin/src/main/java/edu/pnu/stem/db/dao/MultiLayeredGraphDAO.class deleted file mode 100644 index 73330e80673abbc124dc9011187738a21a016f18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7898 zcmeHMZFAd15Z+5d9J?WD18r%W(rb8gAlST=Qb?yW2GUL#C4o5Y3?I+Z)xIK2%ITCg zAK*XmUzlMA82HYQVpvIe5o0-8t4^lO@WHYy?LN2n-0t44@2|gq{R04Q!DkhiU~oIs zcC#;(*L))OL{mCZGw`BjXk@?XbefLvn;Vg9lqL41md*n$g5FoHtqM#rIG?Dv!s|A- zI!~l+DlpApr5N$P6eiLVaTr|nL|;1J2#sGx>aU%Sy(9a9D~x2YXl)LCyUJktuJV+* z$6&I){D{HSm%bw_@G^t>W6RdG_Vol+OZWA*+d8 zG-7reu|bVIoODdp4}5KSA{Fks+!kI8-I4szI*Y~yR5hI4(HtB^;YBOfadM|+HK@Lpg( z$VxZRaI`U%;=+r=AO+4q)~drJIcE{M@wwnJE46AXGX7H)2jpN>WaUZ^P+D?8xR3EF%qwk^DS#wy^}0N$EK*KIw?G`H>Aw^ZUUD zT{N50JJJgtr8G{H0;M2+NJ!)I;&I_ngPt@wx+jlySaJ#}vyYe2DIF`s>W#4Ylmf2? zvv6S+s<6P|V%<7!P}9X;jT_i`3+wF7sNa!#M_^CNV8QZj;XV>t#lH_8PMMwx8Qigo zJMDpdfIT-h&eua}hV#bYM*XD5J2v&&cH|k=m+Ri13KiPciW}CXp+?irSw}_t>I^J0 z_?^&uAE^|C{&2%jNs&SAxSL{dt8QhB_0^oU%sfhc139l*hYp97++@=~6DT>Hi{=dN}a9_eUK=Rn0FmlS-0!Q$>S#s++O2V9D@I{*Lx diff --git a/database/bin/src/main/java/edu/pnu/stem/db/dao/PrimalSpaceFeaturesDAO.class b/database/bin/src/main/java/edu/pnu/stem/db/dao/PrimalSpaceFeaturesDAO.class deleted file mode 100644 index 8f04c4aef805cc76335b4f16824438c81c77ad8c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4687 zcmds5ZFAd15Z-e_WV@y*35B+4$u-boLy&kWP?}C>+|n{(l%`Xso#EqIy4qKyJ8?P% z@-z4~%m7oq^9T4h3@anvs1djsYtIRp zkj`^<$Q^aT?pv@-;M{0Xz~sQ$??30B zv0#P3b~)xT5aJNHBw5J)M@-|zaQ&^{_YQa%1IXcGZ_#GsV92S@y?|*H zLYu#515US)7aMu8Q(kPpZzC^T)K@&FQW+XD;|;07k^H9!S;&t>F6@+FJ5|Uo!pY_o zVWhO7BdNrQfO<@(*nLhI6=|LIRd_>T;vWXTiVvZtCizAkXNo*+cjIQR=jQl0! zkZX}TjP+xqnTO8gW~h8RiBLP{Onbw-N4tJ|SNclnZ}!|h7H!j>(LxS7&BiW*3Qrgs zClS{eTN1$%&nQi^bLg&N61!?9qf4ywQRNtPwchb|7Hb1 zq~t1r7ZoTu8BtHnlw;u6g2_XCj@!Ht3ygjH;`TeZL;(8^~v3qHY3b{ZTOe1<#s z>BYi=&k3v-fLrk8zy2F!;fV9>i8#jH)B$c(Vz>&prN`qnJOC`H<2k)=KoierMn5pp z?*Pr;p!MC_*`@`D0| dYXt~3*dA&05!}SYx15QfKT+9XRLCD6O+DZQ+P#HmF{s1yllp@)=89KH55aoM$3{;1%WAr%Sk z{HTiY2B|^f!e#vR&Z}o;{Oj)a2LQZ)gAoiEh~SlIrLp2#-bjHuiOwbwBDO-;LQ5x> zom5!Kujt>rJ|Dr5!G5o8q+N;g`WjVau=mnf6JIgdSsYz57@j(fBbYFl-D}UhcYX{H z7~B15JqFj@pytZ8ooQq=&hpN?y1_Oa^I~$bMy^pc(vye~KFbyILjo)bu*`s^u1f+u z7Bu#;#6s zBWD#kd`NAL{z6i37|biDWOFIK$>%?p!?-qq!Sm`r$9ck_Si0mDzBRr1U&HQO1Yx15QfKT+9XRLC8c-MQ+in=)DuNWsDOmD&_hZkj$V73xa`_1e^m6BRRXEp z`=ctx2~vZ^h0FNsombDy`0oD4EdU(B{s4LmUIed1D~%PG@=6NSNpv=e5U~}y7Fs$n z@1(*?UZW51-kuJi&tP{YZlqm^)A|xsWU%wvSQFnc*qR-lGw7cKAR%4xso6!>`lg2FAbW)Po7dtjYRaisQ8kp2Bo>w@0xD&wc}l Czq@t- diff --git a/database/bin/src/main/java/edu/pnu/stem/db/dao/StateDAO.class b/database/bin/src/main/java/edu/pnu/stem/db/dao/StateDAO.class deleted file mode 100644 index ab75831bc2497c074d785e01eda1ce243bad8106..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 634 zcma))O-~y!5QfJgkYpPgn!?@X6sl@{>8YSf2&hykEr(E~9=-OEnC{vue<1!@B`VQ- ze-vVz6p=#@y^O!!dG*YU|2*8?1HgOO>p_RX+u)UGq_N^!-bjHuiPk0&A~r%-LQ5xR zQARvHKJP)7!Ol`vOFI|m)itWfVC%?O6F)N8m>gU(=$<%@Js2<;J!{XrcfJoV7~A}2 zJqB0bpytXot*K=+&hpl~s>UXK;Kkr#fn1}ir6*A<)ekvGzE5l=v6Y#v)Ky7r`&>H= z+`7mc8P$SE%Ea52xYjeN#xmDfW}xz4KE>d3)7D0r$U|z;6PgXtCl#INt3oFS+ytJi z#w%mV{fb^_FH;@Y)g}LuLd-9u;?icEmGPQoQ9vKIhp-7R8SG7_&yAWzZ|wXqH*z#3 zhp(xr&|gUE4TJI2DOq1iZ}R!?Wj8KNVDN7G|C2mqP|RHN3O||byZtocWrN@i&@AbX x0IiG|w-KM?;62_(4p zM%j*? zHZF`)-j+8?QemrFmpu8?+S#I1mEWgXf3{FmDp7KWqMD1pe6Hv&0_F&qC%{}5IRfrd zX_cqO23qkT7Bpa{x~-9GJrfJfQ=xeR%Kzt+^?y}$sf7;I$67f=Gd{Q|f^~FR=y;E6 zPot6QN*i>)!WZ20ScY|VPEVr`=>=7kn}oA8UbDFq&Gy%S-NbI=^0a!a{oj-=^;z=Y&9ZZle?GL^tMdhTXIZz5-4a yzYO3?kaiPexA{VC+yP_{(EBsW?qKkQrxpw`CQZ_BVH_+~@EJzU-4~24*nR|i?+`(;QV z!8<<+ah-M=lPWfeJ;aG~ug|$YKG(l~fBOMo3!4!d3~guAo|n$|4#kn^$*k&?y6QPE zi{8t!98e^}Ji|&I&V@ecy&oRR)H5tTS6cZO3~QbKX>`w9r4P2d`wa6tCX*3b49lnS zSJoQa#1+Xmx$w$pURpEEW#OLjxHT9{?vG2!13(h!lbu{R$5WxT z@q8%x2}Z(qJy(t^oheHN=EoEoNh@_q1S4w-nt!e+mhmL5K}IT zM0M;4Cuh)bZ@8#sja!rBIwvW(-~uUomGbBDg##_5ADfKRF-q$PwvwHpF}W1F8_uuN znH(t{&dk_a=-L2NGsZERxVnS|ERwDIl=rSGhSClMd4^%NZ&H!(3#-C>`g7iom1EfK zpYQc;h6NY4!O-k<`(fkTO{_5#7cuLl$;1!^AJLu}<~rT|Chjt%|1ROAUH(g5hIr3Z zHkGfbH5itrs@I05M&H$`(N0lIX#Yk@D{MMGj_{CrJxCRSlWyTFI4?r`%)K$O8iBr5 z&e0t)puTq40Bw;jB+y9WW0A(FzM$sNpm+Qo&5x_`S1kRcSp(N-3^|}@nZ~91JH`sG z)2xM6+?XOfnc_|mZq7hhuMq+Z!!6vNuG^|BIbpstW8LNq<~ghrP6PLFpWeV@dYXjv I0FSWo2LxY_wg3PC From aa531c07ebf63c39da7c1f3489e4ad6034bef69d Mon Sep 17 00:00:00 2001 From: Kunlin Yu Date: Tue, 9 Mar 2021 09:48:09 +0800 Subject: [PATCH 3/3] Remove trailling spaces and ^M Signed-off-by: Kunlin Yu --- .../java/edu/pnu/stem/binder/BindingNode.java | 36 +- .../pnu/stem/binder/Convert2FeatureClass.java | 202 ++++----- .../stem/binder/Convert2GeoJsonGeometry.java | 84 ++-- .../pnu/stem/binder/Convert2JTSGeometry.java | 388 +++++++++--------- .../pnu/stem/binder/Convert2JaxbClass.java | 70 ++-- .../pnu/stem/binder/Convert2JaxbGeometry.java | 340 +++++++-------- .../edu/pnu/stem/binder/Convert2Json.java | 6 +- .../edu/pnu/stem/binder/IndoorGMLMap.java | 60 +-- .../java/edu/pnu/stem/binder/JaxbUtil.java | 12 +- .../java/edu/pnu/stem/binder/Mashaller.java | 2 +- .../edu/pnu/stem/binder/SymbolListener.java | 20 +- .../edu/pnu/stem/binder/package-info.java | 2 +- 12 files changed, 611 insertions(+), 611 deletions(-) diff --git a/igml-feature/src/main/java/edu/pnu/stem/binder/BindingNode.java b/igml-feature/src/main/java/edu/pnu/stem/binder/BindingNode.java index 04d3fda..7693e22 100644 --- a/igml-feature/src/main/java/edu/pnu/stem/binder/BindingNode.java +++ b/igml-feature/src/main/java/edu/pnu/stem/binder/BindingNode.java @@ -11,13 +11,13 @@ * */ public class BindingNode { - + private Map attributes = new HashMap(); - + private Map associations = new HashMap(); - + private Map> collections = new HashMap>(); - + public void addAttribute(String key, Object value) { key = key.toUpperCase(); if( !attributes.containsKey(key)) { @@ -26,13 +26,13 @@ public void addAttribute(String key, Object value) { String msg = "Duplicated Key : " + key; throw new IllegalArgumentException(msg); } - + } - + public Object getAttribute(String key) { key = key.toUpperCase(); int idx= key.indexOf("/"); - + if(idx == -1) { return attributes.get(key); } else { @@ -47,26 +47,26 @@ public Object getAttribute(String key) { } } } - + public Map getAttributes() { return attributes; } - - + + public void addAssociation(String key, BindingNode node) { key = key.toUpperCase(); if( !associations.containsKey(key)) { associations.put(key, node); } else { String msg = "Duplicated Key : " + key; - throw new IllegalArgumentException(msg); + throw new IllegalArgumentException(msg); } } - + public BindingNode getAssociation(String key) { key = key.toUpperCase(); int idx= key.indexOf("/"); - + if(idx == -1) { return associations.get(key); } else { @@ -80,7 +80,7 @@ public BindingNode getAssociation(String key) { } } } - + public void addCollection(String key, BindingNode node) { key = key.toUpperCase(); if(!collections.containsKey(key)) { @@ -89,7 +89,7 @@ public void addCollection(String key, BindingNode node) { List bindingList = collections.get(key); bindingList.add(node); } - + public List getCollection(String key) { key = key.toUpperCase(); if(collections.containsKey(key)) { @@ -117,7 +117,7 @@ public Integer getInteger(String key) { return (Integer) value; } } - + public String getString(String key) { Object value = getAttribute(key); if(value == null) { @@ -126,7 +126,7 @@ public String getString(String key) { return (String) value; } } - - + + } diff --git a/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2FeatureClass.java b/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2FeatureClass.java index a58d471..7e701b6 100644 --- a/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2FeatureClass.java +++ b/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2FeatureClass.java @@ -80,7 +80,7 @@ import net.opengis.indoorgml.navigation.v_1_0.GeneralSpaceType; /** - * + * * @author Hyung-Gyu Ryoo (hyunggyu.ryoo@gmail.com, Pusan National Univeristy) * */ @@ -92,31 +92,31 @@ public static IndoorFeatures change2FeatureClass(IndoorGMLMap savedMap, String d if(newFeature == null) { newFeature = new IndoorFeatures(savedMap, feature.getId()); savedMap.setFeature(feature.getId(), "IndoorFeatures", newFeature); - } + } // Creating containing features PrimalSpaceFeatures childP = change2FeatureClass(savedMap, feature.getPrimalSpaceFeatures().getPrimalSpaceFeatures(), feature.getId()); newFeature.setPrimalSpaceFeatures(childP); - + MultiLayeredGraph childM = change2FeatureClass(savedMap, feature.getMultiLayeredGraph().getMultiLayeredGraph(), feature.getId()); newFeature.setMultiLayeredGraph(childM); - + return newFeature; } public static Object change2FeatureClass(IndoorGMLMap savedMap, String parentId, CellSpaceGeometryType feature) { Object newFeature = null; - + if (feature.isSetGeometry2D()) { AbstractSurfaceType geom = feature.getGeometry2D().getAbstractSurface().getValue(); if (geom instanceof PolygonType) { PolygonType poly = (PolygonType) geom; - + } else if (geom instanceof SurfaceType) { - + } else if (geom instanceof OrientableSurfaceType) { - + } else if (geom instanceof CompositeSurfaceType) { CompositeSurfaceType tempGeo = (CompositeSurfaceType) geom; List surfList = tempGeo.getSurfaceMember(); @@ -126,14 +126,14 @@ public static Object change2FeatureClass(IndoorGMLMap savedMap, String parentId, } else { //feature.isSetGeometry3D() AbstractSolidType geom = feature.getGeometry3D().getAbstractSolid().getValue(); if (geom instanceof SolidType) { - + } else if (geom instanceof CompositeSolidType) { - + } else { //TODO : Exception } } - + if (newFeature != null) { savedMap.setFeature(parentId, "Geometry", newFeature); } @@ -179,7 +179,7 @@ public static Object change2FeatureClass(IndoorGMLMap savedMap, String parentId, public static CellSpace change2FeatureClass(IndoorGMLMap savedMap, CellSpaceType feature, String parentId) { // Creating this feature CellSpace newFeature = (CellSpace) savedMap.getFeature(feature.getId()); - if(newFeature == null) { + if(newFeature == null) { if(savedMap.hasFutureID(feature.getId())){ newFeature = (CellSpace)savedMap.getFutureFeature(feature.getId()); } @@ -188,21 +188,21 @@ public static CellSpace change2FeatureClass(IndoorGMLMap savedMap, CellSpaceType } savedMap.setFeature(feature.getId(), "CellSpace", newFeature); } - - // Setting parent + + // Setting parent PrimalSpaceFeatures parent = (PrimalSpaceFeatures) savedMap.getFeature(parentId); newFeature.setParent(parent); - + // Creating containing features - + // 1. duality StatePropertyType stateProp = feature.getDuality(); if(stateProp != null){ // Check state is defined as instance or is referenced - + if(stateProp.getHref() != null) { String dualityId = stateProp.getHref().substring(1); - + State duality = (State) savedMap.getFeature(dualityId); if(duality != null) { newFeature.setDuality(duality); @@ -214,11 +214,11 @@ public static CellSpace change2FeatureClass(IndoorGMLMap savedMap, CellSpaceType //TODO } } - + // 2. geometry CellSpaceGeometryType cellSpaceGeom = feature.getCellSpaceGeometry(); if (cellSpaceGeom != null) { - change2FeatureClass(savedMap, feature.getId(), cellSpaceGeom); + change2FeatureClass(savedMap, feature.getId(), cellSpaceGeom); if(cellSpaceGeom.isSetGeometry2D()){ Polygon geom = Convert2JTSGeometry.convert2Polygon((PolygonType)feature.getCellSpaceGeometry().getGeometry2D().getAbstractSurface().getValue()); //GeometryUtil.setMetadata(geom, "id", feature.getCellSpaceGeometry().getGeometry2D().getAbstractSurface().getValue().getId()); @@ -229,7 +229,7 @@ else if(cellSpaceGeom.isSetGeometry3D()){ //GeometryUtil.setMetadata(geom, "id", feature.getCellSpaceGeometry().getGeometry3D().getAbstractSolid().getValue().getId()); newFeature.setGeometry(geom); } - + } else { //TODO : Exception System.out.println("Converter : There is no Geometry Information"); @@ -251,9 +251,9 @@ else if(cellSpaceGeom.isSetGeometry3D()){ //TODO }; } - + savedMap.removeFutureID(feature.getId()); - + return newFeature; } @@ -261,30 +261,30 @@ public static CellSpaceBoundary change2FeatureClass(IndoorGMLMap savedMap, CellS // Creating this feature CellSpaceBoundary newFeature = (CellSpaceBoundary) savedMap.getFeature(feature.getId()); if(newFeature == null) { - + if(savedMap.hasFutureID(feature.getId())){ newFeature = (CellSpaceBoundary)savedMap.getFutureFeature(feature.getId()); } else { newFeature = new CellSpaceBoundary(savedMap, feature.getId()); - } + } savedMap.setFeature(feature.getId(), "CellSpaceBoundary", newFeature); } - - // Setting parent + + // Setting parent PrimalSpaceFeatures parent = (PrimalSpaceFeatures) savedMap.getFeature(parentId); newFeature.setParent(parent); - + // Creating containing features // 1. duality TransitionPropertyType transitionProp = feature.getDuality(); if (transitionProp != null) { // Check transition is defined as instance or is referenced - + if(transitionProp.getHref() != null) { String dualityId = transitionProp.getHref().substring(1); - + Transition duality = (Transition) savedMap.getFeature(dualityId); if(duality != null) { newFeature.setDuality(duality); @@ -296,7 +296,7 @@ public static CellSpaceBoundary change2FeatureClass(IndoorGMLMap savedMap, CellS //TODO } } - + // 2. geometry CellSpaceBoundaryGeometryType cellSpaceBoundaryGeom = feature.getCellSpaceBoundaryGeometry(); if (cellSpaceBoundaryGeom != null) { @@ -305,7 +305,7 @@ public static CellSpaceBoundary change2FeatureClass(IndoorGMLMap savedMap, CellS //TODO : Exception System.out.println("Converter : There is no Geometry Information"); } - + return newFeature; } @@ -336,11 +336,11 @@ public static MultiLayeredGraph change2FeatureClass(IndoorGMLMap savedMap, Multi else{ newFeature = new MultiLayeredGraph(savedMap, feature.getId()); } - + savedMap.setFeature(feature.getId(), "MultiLayeredGraph", newFeature); } - - // Setting parent + + // Setting parent IndoorFeatures parent = (IndoorFeatures) savedMap.getFeature(parentId); newFeature.setParent(parent); @@ -352,7 +352,7 @@ public static MultiLayeredGraph change2FeatureClass(IndoorGMLMap savedMap, Multi //newFeature.addSpaceLayers(sls); } newFeature.setSpaceLayers(spaceLayers); - + ArrayList interEdges = new ArrayList(); for (InterEdgesType iet : feature.getInterEdges()) { InterEdges ie = change2FeatureClass(savedMap, iet, newFeature.getId()); @@ -373,14 +373,14 @@ public static SpaceLayers change2FeatureClass(IndoorGMLMap savedMap, SpaceLayers else{ newFeature = new SpaceLayers(savedMap, feature.getId()); } - + savedMap.setFeature(feature.getId(), "SpaceLayers", newFeature); } - - // Setting parent + + // Setting parent MultiLayeredGraph parent = (MultiLayeredGraph) savedMap.getFeature(parentId); newFeature.setParent(parent); - + // Creating containing features ArrayListspaceLayerMember = new ArrayList(); for (SpaceLayerMemberType slmType : feature.getSpaceLayerMember()) { @@ -400,11 +400,11 @@ public static InterEdges change2FeatureClass(IndoorGMLMap savedMap, InterEdgesTy newFeature = new InterEdges(savedMap, feature.getId()); savedMap.setFeature(feature.getId(), "InterEdges", newFeature); } - - // Setting parent + + // Setting parent MultiLayeredGraph parent = (MultiLayeredGraph) savedMap.getFeature(parentId); newFeature.setParent(parent); - + //TODO List interLayerConnectionMember = feature.getInterLayerConnectionMember(); List interLayerConnection = new ArrayList(); @@ -427,31 +427,31 @@ public static Edges change2FeatureClass(IndoorGMLMap savedMap, EdgesType feature // Creating this feature Edges newFeature = (Edges) savedMap.getFeature(feature.getId()); if(newFeature == null) { - + if(savedMap.hasFutureID(feature.getId())){ newFeature = (Edges)savedMap.getFutureFeature(feature.getId()); } else{ newFeature = new Edges(savedMap, feature.getId()); } - + savedMap.setFeature(feature.getId(), "Edges", newFeature); } - - // Setting parent + + // Setting parent SpaceLayer parent = (SpaceLayer) savedMap.getFeature(parentId); newFeature.setParent(parent); - + List tms = feature.getTransitionMember(); List transitionMemberReference = new ArrayList(); - + for(TransitionMemberType tmType : tms) { TransitionType tType = tmType.getTransition(); Transition t = change2FeatureClass(savedMap, tType, newFeature.getId()); transitionMemberReference.add(t); //newFeature.addTransitionMember(t); } - + newFeature.setTransitionMembers(transitionMemberReference); return newFeature; } @@ -466,21 +466,21 @@ public static InterLayerConnection change2FeatureClass(IndoorGMLMap savedMap, In else{ newFeature = new InterLayerConnection(savedMap, feature.getId()); } - + savedMap.setFeature(feature.getId(), "InterLayerConnection", newFeature); } - - // Setting parent + + // Setting parent InterEdges parent = (InterEdges) savedMap.getFeature(parentId); newFeature.setParent(parent); List spacelayerList = new ArrayList(); for (SpaceLayerPropertyType slpProp : feature.getConnectedLayers()) { - + SpaceLayer connected = null; if(slpProp.getHref() != null) { String href = slpProp.getHref().substring(1); - + connected = (SpaceLayer) savedMap.getFeature(href); if(connected == null) { //TODO @@ -499,11 +499,11 @@ public static InterLayerConnection change2FeatureClass(IndoorGMLMap savedMap, In List interConnectionList = new ArrayList(); for (StatePropertyType stateProp : feature.getInterConnects()) { - + State s = null; if(stateProp.getHref() != null) { String href = stateProp.getHref().substring(1); - + s = (State) savedMap.getFeature(href); if(s == null) { //TODO @@ -523,7 +523,7 @@ public static InterLayerConnection change2FeatureClass(IndoorGMLMap savedMap, In if (spacelayerList.size() != 2 || interConnectionList.size() != 2) { System.out.println("Converter : number of SpaceLayer or InterConnection is not 2 at InterLayerConnection"); } else { - + } return newFeature; @@ -540,27 +540,27 @@ public static PrimalSpaceFeatures change2FeatureClass(IndoorGMLMap savedMap, Pri else{ newFeature = new PrimalSpaceFeatures(savedMap, feature.getId()); } - + savedMap.setFeature(feature.getId(), "PrimalSpaceFeatures", newFeature); } - - // Setting parent + + // Setting parent IndoorFeatures parent = (IndoorFeatures) savedMap.getFeature(parentId); newFeature.setParent(parent); - + // Creating containing features for (CellSpaceMemberType csm : feature.getCellSpaceMember()) { CellSpaceType cs = csm.getCellSpace().getValue(); CellSpace c = change2FeatureClass(savedMap, cs, newFeature.getId()); newFeature.addCellSpaceMember(c); } - + for (CellSpaceBoundaryMemberType csbm : feature.getCellSpaceBoundaryMember()) { CellSpaceBoundaryType cs = csbm.getCellSpaceBoundary().getValue(); CellSpaceBoundary cb = change2FeatureClass(savedMap, cs, newFeature.getId()); newFeature.addCellSpaceBoundaryMember(cb); } - + return newFeature; } @@ -568,7 +568,7 @@ public static Nodes change2FeatureClass(IndoorGMLMap savedMap, NodesType feature // Creating this feature Nodes newFeature = (Nodes) savedMap.getFeature(feature.getId()); if(newFeature == null) { - + if(savedMap.hasFutureID(feature.getId())){ newFeature = (Nodes)savedMap.getFutureFeature(feature.getId()); } @@ -576,13 +576,13 @@ public static Nodes change2FeatureClass(IndoorGMLMap savedMap, NodesType feature newFeature = new Nodes(savedMap, feature.getId()); } savedMap.setFeature(feature.getId(), "Nodes", newFeature); - + } - + // Setting parent SpaceLayer parent = (SpaceLayer) savedMap.getFeature(parentId); newFeature.setParent(parent); - + List tempML = feature.getStateMember(); List stateList = new ArrayList(); @@ -592,7 +592,7 @@ public static Nodes change2FeatureClass(IndoorGMLMap savedMap, NodesType feature stateList.add(temp); } newFeature.setStateMember(stateList); - + savedMap.setFeature(feature.getId(), "Nodes", newFeature); return newFeature; } @@ -607,14 +607,14 @@ public static SpaceLayer change2FeatureClass(IndoorGMLMap savedMap, SpaceLayerTy else{ newFeature = new SpaceLayer(savedMap, feature.getId()); } - + savedMap.setFeature(feature.getId(), "SpaceLayer", newFeature); } - + // Setting parent SpaceLayers parent = (SpaceLayers) savedMap.getFeature(parentId); newFeature.setParent(parent); - + // newFeature.createDate = feature.getCreationDate(); // newFeature.terminateDate = feature.getTerminateDate(); newFeature.setClassType(feature.getClazz()); @@ -624,7 +624,7 @@ public static SpaceLayer change2FeatureClass(IndoorGMLMap savedMap, SpaceLayerTy Nodes ns = change2FeatureClass(savedMap, nodesType, newFeature.getId()); newFeature.addNodes(ns); } - + for (EdgesType edgesType : feature.getEdges()) { Edges ns = change2FeatureClass(savedMap, edgesType, newFeature.getId()); newFeature.addEdges(ns); @@ -646,9 +646,9 @@ public static State change2FeatureClass(IndoorGMLMap savedMap, StateType feature else{ newFeature = new State(savedMap, feature.getId()); } - + } - + // Setting parent Nodes parent = (Nodes) savedMap.getFeature(parentId); if(parent == null){ @@ -659,15 +659,15 @@ public static State change2FeatureClass(IndoorGMLMap savedMap, StateType feature parent = new Nodes(savedMap, parentId); } newFeature.setParent(parent); - + // 1. duality CellSpacePropertyType cellSpaceProp = feature.getDuality(); if(cellSpaceProp != null){ // Check state is defined as instance or is referenced - + if(cellSpaceProp.getHref() != null) { String dualityId = cellSpaceProp.getHref().substring(1); - + CellSpace duality = (CellSpace) savedMap.getFeature(dualityId); if(duality != null) { newFeature.setDuality(duality); @@ -679,14 +679,14 @@ public static State change2FeatureClass(IndoorGMLMap savedMap, StateType feature //TODO } } - + // 2. geometry if(feature.isSetGeometry()){ Point geom = Convert2JTSGeometry.convert2Point(feature.getGeometry().getPoint()); GeometryUtil.setMetadata(geom, "id", feature.getGeometry().getPoint().getId()); newFeature.setGeometry(geom); } - + // 3. connects List featureConnects = feature.getConnects(); for (TransitionPropertyType tProp : featureConnects) { @@ -697,7 +697,7 @@ public static State change2FeatureClass(IndoorGMLMap savedMap, StateType feature //TODO }; } - + savedMap.setFeature(feature.getId(), "State", newFeature); return newFeature; } @@ -712,13 +712,13 @@ public static Transition change2FeatureClass(IndoorGMLMap savedMap, TransitionTy else{ newFeature = new Transition(savedMap, feature.getId()); } - + } - + // Setting parent Edges parent = (Edges) savedMap.getFeature(parentId); newFeature.setParent(parent); - + // 2. geometry if(feature.isSetGeometry()){ LineString geom = Convert2JTSGeometry.convert2LineString((LineStringType)feature.getGeometry().getAbstractCurve().getValue()); @@ -729,24 +729,24 @@ public static Transition change2FeatureClass(IndoorGMLMap savedMap, TransitionTy // 3. connects List connects = feature.getConnects(); State[] sArr = new State[2]; - + String connects1Id = connects.get(0).getHref().substring(1); State connects1 = new State(savedMap,connects1Id); sArr[0] = connects1; - + String connects2Id = connects.get(1).getHref().substring(1); State connects2 = new State(savedMap,connects2Id); sArr[1] = connects2; newFeature.setConnects(sArr); - + // 4. duality CellSpaceBoundaryPropertyType cellSpaceBoundaryProp = feature.getDuality(); if(cellSpaceBoundaryProp != null){ // Check state is defined as instance or is referenced - + if(cellSpaceBoundaryProp.getHref() != null) { String dualityId = cellSpaceBoundaryProp.getHref().substring(1); - + CellSpaceBoundary duality = (CellSpaceBoundary) savedMap.getFeature(dualityId); if(duality != null) { newFeature.setDuality(duality); @@ -764,36 +764,36 @@ public static Transition change2FeatureClass(IndoorGMLMap savedMap, TransitionTy savedMap.setFeature(feature.getId(), "Transition", newFeature); return newFeature; } - - + + public static AnchorBoundary change2FeatureClass(IndoorGMLMap savedMap, AnchorBoundaryType feature, String parentId) { // Creating this feature AnchorBoundary newFeature = (AnchorBoundary) savedMap.getFeature(feature.getId()); if(newFeature == null) { - + if(savedMap.hasFutureID(feature.getId())){ newFeature = (AnchorBoundary)savedMap.getFutureFeature(feature.getId()); } else { newFeature = new AnchorBoundary(savedMap, feature.getId()); - } + } savedMap.setFeature(feature.getId(), "AnchorBoundary", newFeature); } - - // Setting parent + + // Setting parent PrimalSpaceFeatures parent = (PrimalSpaceFeatures) savedMap.getFeature(parentId); newFeature.setParent(parent); - + // Creating containing features // 1. duality TransitionPropertyType transitionProp = feature.getDuality(); if (transitionProp != null) { // Check transition is defined as instance or is referenced - + if(transitionProp.getHref() != null) { String dualityId = transitionProp.getHref().substring(1); - + Transition duality = (Transition) savedMap.getFeature(dualityId); if(duality != null) { newFeature.setDuality(duality); @@ -805,7 +805,7 @@ public static AnchorBoundary change2FeatureClass(IndoorGMLMap savedMap, AnchorBo //TODO } } - + // 2. geometry CellSpaceBoundaryGeometryType cellSpaceBoundaryGeom = feature.getCellSpaceBoundaryGeometry(); if (cellSpaceBoundaryGeom != null) { @@ -814,7 +814,7 @@ public static AnchorBoundary change2FeatureClass(IndoorGMLMap savedMap, AnchorBo //TODO : Exception System.out.println("Converter : There is no Geometry Information"); } - + return newFeature; } @@ -823,6 +823,6 @@ public static typeOfTopoExpressionCode change2FeatureClass(TypeOfTopoExpressionC return null; } - + } diff --git a/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2GeoJsonGeometry.java b/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2GeoJsonGeometry.java index 861863b..d549d80 100644 --- a/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2GeoJsonGeometry.java +++ b/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2GeoJsonGeometry.java @@ -14,7 +14,7 @@ public static JsonNode convert2GeoJson(JsonNode geometry, String featureType){ String geometryType = geometry.get("type").asText().trim(); ObjectMapper mapper = new ObjectMapper(); ObjectNode jsonNode = mapper .createObjectNode(); - + if(geometryType.equals("Solid")||(geometryType.equals("Surface") && geometry.get("properties").get("extrude").asText().trim().equals("true"))){ result = convert2Solid3D(geometry); jsonNode.put("type", "Solid"); @@ -46,7 +46,7 @@ else if(geometry.get("properties").get("extrude").asText().trim().equals("false" else if(featureType.equals("Transition")){ result = convert2Curve2D(geometry); } - + } else if(geometryType.equals("Point")){ result = convert2Point2D(geometry); @@ -54,15 +54,15 @@ else if(geometryType.equals("Point")){ else{ System.out.println("GeoJson : Not defined Geometry"); } - - - - + + + + return jsonNode; } public static List makeDoubleCoordinates(JsonNode coordinates){ ListcoordinatesToArray = new ArrayList(); - + for(int i = 0 ; i < coordinates.size() ; i++){ List coordinate = new ArrayList(); coordinate.add(coordinates.get(i).get(0).asDouble()); @@ -72,7 +72,7 @@ public static List makeDoubleCoordinates(JsonNode coordinates){ } coordinatesToArray.add(coordinate); } - + return coordinatesToArray; }; public static JsonNode convert2Solid3D(JsonNode geometry){ @@ -108,38 +108,38 @@ public static JsonNode convert2ExtrudedCurve3D(JsonNode geometry){ List coordInDouble = makeDoubleCoordinates(coordinates); List container = new ArrayList(); List polygon = new ArrayList(); - polygon.add(makeExtrudedCurve3D(coordInDouble, height)); + polygon.add(makeExtrudedCurve3D(coordInDouble, height)); //container.add(polygon); result = mapper.valueToTree(polygon); return result; - + } public static List makeExtrudedCurve3D(Listcoordinates, Double height){ - - + + List polygon = new ArrayList(); List extrudedPoint = new ArrayList(); - + polygon.add(new ArrayList(coordinates.get(0))); polygon.add(new ArrayList(coordinates.get(1))); - + extrudedPoint = new ArrayList(coordinates.get(1)); Double ground = extrudedPoint.get(2); extrudedPoint.remove(2); extrudedPoint.add(ground + height); polygon.add(new ArrayList(extrudedPoint)); - + extrudedPoint = new ArrayList(coordinates.get(0)); ground = extrudedPoint.get(2); extrudedPoint.remove(2); extrudedPoint.add(ground + height); polygon.add(new ArrayList(extrudedPoint)); - + polygon.add(new ArrayList(coordinates.get(0))); return polygon; } public static List makeSolid(List coordinates, Double height){ - + List result = new ArrayList(); List exterior = new ArrayList(); List interior = new ArrayList(); @@ -147,9 +147,9 @@ public static List makeSolid(List coordinates, Double height){ List upperSurface = new ArrayList(); List lowerSurface = new ArrayList(); List wholeSurface = new ArrayList(); - + for(int i = coordinates.size()-1 ; i > -1 ; i--){ - + ListtempList = new ArrayList(coordinates.get(i)); lowerSurface.add(tempList); } @@ -163,33 +163,33 @@ public static List makeSolid(List coordinates, Double height){ Double ground = 0.0; surface.add(coordinates.get(i)); surface.add(coordinates.get(i+1)); - + extrudedPoint = new ArrayList(coordinates.get(i+1)); ground = extrudedPoint.get(2); ground += height; extrudedPoint.remove(2); extrudedPoint.add(ground); - + surface.add(extrudedPoint); - + extrudedPoint = new ArrayList(coordinates.get(i)); ground = extrudedPoint.get(2); ground += height; extrudedPoint.remove(2); extrudedPoint.add(height); - + surface.add(extrudedPoint); surface.add(new ArrayList(coordinates.get(i))); wholeSurface.add(surface); exterior.add(new ArrayList(wholeSurface)); } - + //make 3d surface of the lid - + for(int i = 0 ; i < coordinates.size(); i++){ ListextrudedPoint = new ArrayList(coordinates.get(i)); Double ground = 0.0; - + ground = extrudedPoint.get(2); ground += height; extrudedPoint.remove(2); @@ -199,52 +199,52 @@ public static List makeSolid(List coordinates, Double height){ wholeSurface = new ArrayList(); wholeSurface.add(upperSurface); exterior.add(wholeSurface); - - + + result.add(exterior); result.add(interior); - + return result; } public static List makeSurface3D(List coordinates, Double height){ //List result = new ArrayList(); - + for(List coord : coordinates){ Double ground = .0; - + ground = (Double) coord.get(2); ground += height; coord.remove(2); coord.add(ground); - + } - + //result.add(coordinates); - + return coordinates; - + } - + public static List makeExtrudedCurve(List coordinates, Double height){ Listresult = new ArrayList(); //TODO : need to support linesting which has several points List upperRight = new ArrayList(); List upperLeft = new ArrayList(); - + upperRight.add((Double)coordinates.get(1).get(0)); upperRight.add((Double)coordinates.get(1).get(1)); upperRight.add((Double)coordinates.get(1).get(2)+height); - + upperLeft.add((Double)coordinates.get(0).get(0)); upperLeft.add((Double)coordinates.get(0).get(1)); upperLeft.add((Double)coordinates.get(0).get(2)+height); - + coordinates.add(upperRight); coordinates.add(upperLeft); - + //result.add(coordinates); return coordinates; } - - + + } diff --git a/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2JTSGeometry.java b/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2JTSGeometry.java index d70a692..e897da4 100644 --- a/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2JTSGeometry.java +++ b/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2JTSGeometry.java @@ -1,204 +1,204 @@ -package edu.pnu.stem.binder; - -import java.util.ArrayList; -import java.util.List; -import java.util.UUID; - -import javax.xml.bind.JAXBElement; - -import org.locationtech.jts.geom.Coordinate; -import org.locationtech.jts.geom.Geometry; -import org.locationtech.jts.geom.GeometryFactory; -import org.locationtech.jts.geom.LineString; -import org.locationtech.jts.geom.LinearRing; -import org.locationtech.jts.geom.MultiPolygon; -import org.locationtech.jts.geom.Point; -import org.locationtech.jts.geom.Polygon; - -import com.vividsolutions.jts.geom.Envelope; - -import edu.pnu.stem.geometry.jts.Envelope3D; -import edu.pnu.stem.geometry.jts.Solid; -import net.opengis.gml.v_3_2_1.AbstractRingType; -import net.opengis.gml.v_3_2_1.AbstractSurfaceType; -import net.opengis.gml.v_3_2_1.CompositeSurfaceType; -import net.opengis.gml.v_3_2_1.CoordinatesType; -import net.opengis.gml.v_3_2_1.DirectPositionListType; -import net.opengis.gml.v_3_2_1.DirectPositionType; -import net.opengis.gml.v_3_2_1.EnvelopeType; -import net.opengis.gml.v_3_2_1.LineStringType; -import net.opengis.gml.v_3_2_1.LinearRingType; -import net.opengis.gml.v_3_2_1.OrientableSurfaceType; -import net.opengis.gml.v_3_2_1.PointType; -import net.opengis.gml.v_3_2_1.PolygonType; -import net.opengis.gml.v_3_2_1.RingType; -import net.opengis.gml.v_3_2_1.ShellType; -import net.opengis.gml.v_3_2_1.SolidType; -import net.opengis.gml.v_3_2_1.SurfacePropertyType; -import net.opengis.gml.v_3_2_1.SurfaceType; - -public class Convert2JTSGeometry { - - private final static GeometryFactory geometryFactory = new GeometryFactory(); - - +package edu.pnu.stem.binder; + +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; + +import javax.xml.bind.JAXBElement; + +import org.locationtech.jts.geom.Coordinate; +import org.locationtech.jts.geom.Geometry; +import org.locationtech.jts.geom.GeometryFactory; +import org.locationtech.jts.geom.LineString; +import org.locationtech.jts.geom.LinearRing; +import org.locationtech.jts.geom.MultiPolygon; +import org.locationtech.jts.geom.Point; +import org.locationtech.jts.geom.Polygon; + +import com.vividsolutions.jts.geom.Envelope; + +import edu.pnu.stem.geometry.jts.Envelope3D; +import edu.pnu.stem.geometry.jts.Solid; +import net.opengis.gml.v_3_2_1.AbstractRingType; +import net.opengis.gml.v_3_2_1.AbstractSurfaceType; +import net.opengis.gml.v_3_2_1.CompositeSurfaceType; +import net.opengis.gml.v_3_2_1.CoordinatesType; +import net.opengis.gml.v_3_2_1.DirectPositionListType; +import net.opengis.gml.v_3_2_1.DirectPositionType; +import net.opengis.gml.v_3_2_1.EnvelopeType; +import net.opengis.gml.v_3_2_1.LineStringType; +import net.opengis.gml.v_3_2_1.LinearRingType; +import net.opengis.gml.v_3_2_1.OrientableSurfaceType; +import net.opengis.gml.v_3_2_1.PointType; +import net.opengis.gml.v_3_2_1.PolygonType; +import net.opengis.gml.v_3_2_1.RingType; +import net.opengis.gml.v_3_2_1.ShellType; +import net.opengis.gml.v_3_2_1.SolidType; +import net.opengis.gml.v_3_2_1.SurfacePropertyType; +import net.opengis.gml.v_3_2_1.SurfaceType; + +public class Convert2JTSGeometry { + + private final static GeometryFactory geometryFactory = new GeometryFactory(); + + public static Solid Convert2Solid(SolidType feature){ - Solid newFeature = null; - ShellType exterior = feature.getExterior().getShell(); - MultiPolygon shell = convert2MultiPolygon(exterior); - newFeature = new Solid(shell, null, geometryFactory); - if(feature.getId() == null) { - edu.pnu.stem.util.GeometryUtil.setMetadata(newFeature,"id", UUID.randomUUID().toString()); - } - else { - edu.pnu.stem.util.GeometryUtil.setMetadata(newFeature,"id", feature.getId()); - } - return newFeature; - } - + Solid newFeature = null; + ShellType exterior = feature.getExterior().getShell(); + MultiPolygon shell = convert2MultiPolygon(exterior); + newFeature = new Solid(shell, null, geometryFactory); + if(feature.getId() == null) { + edu.pnu.stem.util.GeometryUtil.setMetadata(newFeature,"id", UUID.randomUUID().toString()); + } + else { + edu.pnu.stem.util.GeometryUtil.setMetadata(newFeature,"id", feature.getId()); + } + return newFeature; + } + public static MultiPolygon convert2MultiPolygon(ShellType feature){ - MultiPolygon newFeature = null; - AbstractSurfaceType firstGeo = feature.getSurfaceMember().get(0).getAbstractSurface().getValue(); - ListmultiPolygonList = new ArrayList(); - MultiPolygon shell = null; - if(firstGeo instanceof CompositeSurfaceType){ - //TODO : support CompositeSurfaceType later - } - else if(firstGeo instanceof OrientableSurfaceType){ - SurfacePropertyType surface = ((OrientableSurfaceType) firstGeo).getBaseSurface(); - //surface.getHref() - //TODO : support OrientableSurfaceType later - } - else if(firstGeo instanceof PolygonType){ - ListpolygonList = new ArrayList(); - for(int i = 0 ; i < feature.getSurfaceMember().size() ; i++){ - polygonList.add((PolygonType)feature.getSurfaceMember().get(i).getAbstractSurface().getValue()); - } - - for(int i = 0 ; i < polygonList.size() ; i++){ - multiPolygonList.add(convert2Polygon(polygonList.get(i))); - Polygon[]temp = new Polygon[multiPolygonList.size()]; - shell = geometryFactory.createMultiPolygon(multiPolygonList.toArray(temp)); - } - } - else if(firstGeo instanceof SurfaceType){ - //TODO : support SurfaceType later - } - return shell; - } - /* - public Polygon Convert2Surface(SurfaceType feature){ - - - } - * */ - + MultiPolygon newFeature = null; + AbstractSurfaceType firstGeo = feature.getSurfaceMember().get(0).getAbstractSurface().getValue(); + ListmultiPolygonList = new ArrayList(); + MultiPolygon shell = null; + if(firstGeo instanceof CompositeSurfaceType){ + //TODO : support CompositeSurfaceType later + } + else if(firstGeo instanceof OrientableSurfaceType){ + SurfacePropertyType surface = ((OrientableSurfaceType) firstGeo).getBaseSurface(); + //surface.getHref() + //TODO : support OrientableSurfaceType later + } + else if(firstGeo instanceof PolygonType){ + ListpolygonList = new ArrayList(); + for(int i = 0 ; i < feature.getSurfaceMember().size() ; i++){ + polygonList.add((PolygonType)feature.getSurfaceMember().get(i).getAbstractSurface().getValue()); + } + + for(int i = 0 ; i < polygonList.size() ; i++){ + multiPolygonList.add(convert2Polygon(polygonList.get(i))); + Polygon[]temp = new Polygon[multiPolygonList.size()]; + shell = geometryFactory.createMultiPolygon(multiPolygonList.toArray(temp)); + } + } + else if(firstGeo instanceof SurfaceType){ + //TODO : support SurfaceType later + } + return shell; + } + /* + public Polygon Convert2Surface(SurfaceType feature){ + + + } + * */ + public static Polygon convert2Polygon(PolygonType feature){ - AbstractRingType ring = feature.getExterior().getAbstractRing().getValue(); - Polygon newFeature = null; - if(ring instanceof LinearRingType){ - newFeature = geometryFactory.createPolygon(convert2LinearRing((LinearRingType)ring)); - } - else if(ring instanceof RingType){ - //TODO : support RingType later - } - if(feature.getId() == null) { - edu.pnu.stem.util.GeometryUtil.setMetadata(newFeature,"id", UUID.randomUUID().toString()); - } - else { - edu.pnu.stem.util.GeometryUtil.setMetadata(newFeature,"id", feature.getId()); - } - return newFeature; - } + AbstractRingType ring = feature.getExterior().getAbstractRing().getValue(); + Polygon newFeature = null; + if(ring instanceof LinearRingType){ + newFeature = geometryFactory.createPolygon(convert2LinearRing((LinearRingType)ring)); + } + else if(ring instanceof RingType){ + //TODO : support RingType later + } + if(feature.getId() == null) { + edu.pnu.stem.util.GeometryUtil.setMetadata(newFeature,"id", UUID.randomUUID().toString()); + } + else { + edu.pnu.stem.util.GeometryUtil.setMetadata(newFeature,"id", feature.getId()); + } + return newFeature; + } public static LinearRing convert2LinearRing(LinearRingType feature){ - DirectPositionListType directpositionList = feature.getPosList(); - List> postList = feature.getPosOrPointPropertyOrPointRep(); - CoordinatesType coord = feature.getCoordinates(); - List coordList = new ArrayList(); - - if(directpositionList != null){ - //coord = convert2Coordinate(directpositionList); - } - else{ - if(postList.size() != 0){ - for( JAXBElement point : postList){ - coordList.add(convert2Coordinate((DirectPositionType)point.getValue())); - } - } - else{ - if(coord != null){ - - } - else{ - //TODO - //nogeometryexception - } - } - } - - Coordinate[] newCoordinate = new Coordinate[coordList.size()]; - coordList.toArray(newCoordinate); - - LinearRing newFeature = null; - - try{ - newFeature = geometryFactory.createLinearRing(newCoordinate); - } - catch(Exception e){ - e.printStackTrace(); - } - - return newFeature; - } - - public static LineString convert2LineString(LineStringType feature){ - List pointList = new ArrayList(); - - for(int i = 0 ; i < feature.getPosOrPointPropertyOrPointRep().size() ; i++){ - pointList.add(convert2Coordinate((DirectPositionType)feature.getPosOrPointPropertyOrPointRep().get(i).getValue())); - } + DirectPositionListType directpositionList = feature.getPosList(); + List> postList = feature.getPosOrPointPropertyOrPointRep(); + CoordinatesType coord = feature.getCoordinates(); + List coordList = new ArrayList(); + + if(directpositionList != null){ + //coord = convert2Coordinate(directpositionList); + } + else{ + if(postList.size() != 0){ + for( JAXBElement point : postList){ + coordList.add(convert2Coordinate((DirectPositionType)point.getValue())); + } + } + else{ + if(coord != null){ + + } + else{ + //TODO + //nogeometryexception + } + } + } + + Coordinate[] newCoordinate = new Coordinate[coordList.size()]; + coordList.toArray(newCoordinate); + + LinearRing newFeature = null; + + try{ + newFeature = geometryFactory.createLinearRing(newCoordinate); + } + catch(Exception e){ + e.printStackTrace(); + } + + return newFeature; + } + + public static LineString convert2LineString(LineStringType feature){ + List pointList = new ArrayList(); + + for(int i = 0 ; i < feature.getPosOrPointPropertyOrPointRep().size() ; i++){ + pointList.add(convert2Coordinate((DirectPositionType)feature.getPosOrPointPropertyOrPointRep().get(i).getValue())); + } Coordinate[] coordList = new Coordinate[pointList.size()]; - return geometryFactory.createLineString(pointList.toArray(coordList)); - } + return geometryFactory.createLineString(pointList.toArray(coordList)); + } public static Point convert2Point(PointType feature){ - Point newFeature = null; - newFeature = geometryFactory.createPoint(convert2Coordinate(feature.getPos())); - return newFeature; - } - + Point newFeature = null; + newFeature = geometryFactory.createPoint(convert2Coordinate(feature.getPos())); + return newFeature; + } + public static Coordinate convert2Coordinate(DirectPositionType feature){ - Coordinate newFeature = null; - Listcoordinates = feature.getValue(); - if(coordinates.size() == 2){ - newFeature = new Coordinate(coordinates.get(0), coordinates.get(1)); - } - else if(coordinates.size() == 3){ - newFeature = new Coordinate(coordinates.get(0), coordinates.get(1), coordinates.get(2)); - } - return newFeature; - } - + Coordinate newFeature = null; + Listcoordinates = feature.getValue(); + if(coordinates.size() == 2){ + newFeature = new Coordinate(coordinates.get(0), coordinates.get(1)); + } + else if(coordinates.size() == 3){ + newFeature = new Coordinate(coordinates.get(0), coordinates.get(1), coordinates.get(2)); + } + return newFeature; + } + public static List convert2CoordinateList(DirectPositionListType feature) { - List pointList = feature.getValue(); - List coordinateList = new ArrayList(); - if(feature.getSrsDimension().intValue() == 2) { - for(int i = 0 ; i < pointList.size(); i++) { - Coordinate temp = new Coordinate(pointList.get(i), pointList.get(i + 1)); - coordinateList.add(temp); - } - } - else if(feature.getSrsDimension().intValue() == 3) { - for(int i = 0 ; i < pointList.size(); i++) { - Coordinate temp = new Coordinate(pointList.get(i), pointList.get(i + 1), pointList.get(i + 2)); - coordinateList.add(temp); - } - } - else{ - //TODO : dimension error - } - return coordinateList; - } - -} + List pointList = feature.getValue(); + List coordinateList = new ArrayList(); + if(feature.getSrsDimension().intValue() == 2) { + for(int i = 0 ; i < pointList.size(); i++) { + Coordinate temp = new Coordinate(pointList.get(i), pointList.get(i + 1)); + coordinateList.add(temp); + } + } + else if(feature.getSrsDimension().intValue() == 3) { + for(int i = 0 ; i < pointList.size(); i++) { + Coordinate temp = new Coordinate(pointList.get(i), pointList.get(i + 1), pointList.get(i + 2)); + coordinateList.add(temp); + } + } + else{ + //TODO : dimension error + } + return coordinateList; + } + +} diff --git a/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2JaxbClass.java b/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2JaxbClass.java index 37e7725..bfa3d7a 100644 --- a/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2JaxbClass.java +++ b/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2JaxbClass.java @@ -96,7 +96,7 @@ public class Convert2JaxbClass { @SuppressWarnings("unchecked") public static CellSpaceType change2JaxbClass(IndoorGMLMap savedMap, CellSpace feature) throws JAXBException { - + CellSpaceType newFeature = indoorgmlcoreOF.createCellSpaceType(); StatePropertyType duality = new StatePropertyType(); @@ -166,7 +166,7 @@ public static CellSpaceType change2JaxbClass(IndoorGMLMap savedMap, CellSpace fe newFeature.setCellSpaceGeometry(cellSpaceGeometryType); } } - + return newFeature; } @@ -275,15 +275,15 @@ static public IndoorFeaturesType change2JaxbClass(IndoorGMLMap savedMap, IndoorF throws JAXBException { IndoorFeaturesType newFeature = new IndoorFeaturesType(); newFeature.setId(feature.getId()); - + if(feature.getBoundedBy() != null) { - Envelope e = (Envelope) savedMap.getFeature(feature.getBoundedBy().getId()); + Envelope e = (Envelope) savedMap.getFeature(feature.getBoundedBy().getId()); JAXBElement jaxbEnvelope = gmlOF.createEnvelope(change2JaxbClass(savedMap,e)); - BoundingShapeType bs = gmlOF.createBoundingShapeType(); + BoundingShapeType bs = gmlOF.createBoundingShapeType(); bs.setEnvelope(jaxbEnvelope); - newFeature.setBoundedBy(bs); + newFeature.setBoundedBy(bs); } - + if (feature.getPrimalSpaceFeatures() != null) { // Convert2FeatureClass.docContainer. PrimalSpaceFeatures p = (PrimalSpaceFeatures) savedMap.getFeature(feature.getPrimalSpaceFeatures().getId()); @@ -303,7 +303,7 @@ static public IndoorFeaturesType change2JaxbClass(IndoorGMLMap savedMap, IndoorF static public EnvelopeType change2JaxbClass(IndoorGMLMap savedMap, Envelope feature) throws JAXBException { EnvelopeType newFeature = new EnvelopeType(); - + Point low = (Point) feature.getLowerCorner(); Point upper = (Point) feature.getUpperCorner(); if (low != null) { @@ -312,7 +312,7 @@ static public EnvelopeType change2JaxbClass(IndoorGMLMap savedMap, Envelope feat } if (upper != null) { PointType point = Convert2JaxbGeometry.Convert2PointType(upper); - + newFeature.setUpperCorner(point.getPos()); } newFeature.setSrsName(feature.getSrsName()); @@ -491,8 +491,8 @@ static PrimalSpaceFeaturesType change2JaxbClass(IndoorGMLMap savedMap, PrimalSpa for (int i = 0; i < feature.getCellSpaceMember().size(); i++) { if (feature.getCellSpaceMember().get(i).getClass().getSimpleName().equals("GeneralSpace")) { - - + + GeneralSpace tempcellspace = (GeneralSpace) savedMap.getFeature(feature.getCellSpaceMember().get(i).getId()); CellSpaceMemberType tempcellspacemember = indoorgmlcoreOF.createCellSpaceMemberType(); tempcellspacemember.setCellSpace( @@ -500,7 +500,7 @@ static PrimalSpaceFeaturesType change2JaxbClass(IndoorGMLMap savedMap, PrimalSpa cellspacemember.add(tempcellspacemember); } else if (feature.getCellSpaceMember().get(i).getClass().getSimpleName().equals("TransitionSpace")) { - + TransitionSpace tempcellspace = (TransitionSpace) savedMap .getFeature(feature.getCellSpaceMember().get(i).getId()); CellSpaceMemberType tempcellspacemember = indoorgmlcoreOF.createCellSpaceMemberType(); @@ -508,7 +508,7 @@ static PrimalSpaceFeaturesType change2JaxbClass(IndoorGMLMap savedMap, PrimalSpa indoorgmlnaviOF.createTransitionSpace(change2JaxbClass(savedMap, tempcellspace))); cellspacemember.add(tempcellspacemember); } else if (feature.getCellSpaceMember().get(i).getClass().getSimpleName().equals("ConnectionSpace")) { - + ConnectionSpace tempcellspace = (ConnectionSpace) savedMap .getFeature(feature.getCellSpaceMember().get(i).getId()); CellSpaceMemberType tempcellspacemember = indoorgmlcoreOF.createCellSpaceMemberType(); @@ -517,7 +517,7 @@ static PrimalSpaceFeaturesType change2JaxbClass(IndoorGMLMap savedMap, PrimalSpa cellspacemember.add(tempcellspacemember); } else if (feature.getCellSpaceMember().get(i).getClass().getSimpleName().equals("AnchorSpace")) { - + AnchorSpace tempcellspace = (AnchorSpace) savedMap .getFeature(feature.getCellSpaceMember().get(i).getId()); CellSpaceMemberType tempcellspacemember = indoorgmlcoreOF.createCellSpaceMemberType(); @@ -526,7 +526,7 @@ static PrimalSpaceFeaturesType change2JaxbClass(IndoorGMLMap savedMap, PrimalSpa cellspacemember.add(tempcellspacemember); } else { - + CellSpace tempcellspace = (CellSpace) savedMap .getFeature(feature.getCellSpaceMember().get(i).getId()); CellSpaceMemberType tempcellspacemember = indoorgmlcoreOF.createCellSpaceMemberType(); @@ -540,28 +540,28 @@ static PrimalSpaceFeaturesType change2JaxbClass(IndoorGMLMap savedMap, PrimalSpa if (feature.getCellSpaceBoundaryMember() != null) { for (int i = 0; i < feature.getCellSpaceBoundaryMember().size(); i++) { - + if (feature.getCellSpaceBoundaryMember().get(i).getClass().getSimpleName().equals("AnchorBoundary")) { - + AnchorBoundary tempcellspace = (AnchorBoundary) savedMap.getFeature(feature.getCellSpaceBoundaryMember().get(i).getId()); CellSpaceBoundaryMemberType tempcellspacemember = indoorgmlcoreOF.createCellSpaceBoundaryMemberType(); tempcellspacemember.setCellSpaceBoundary(indoorgmlnaviOF.createAnchorBoundary(change2JaxbClass(savedMap, tempcellspace))); cellspaceboundarymember.add(tempcellspacemember); } else if(feature.getCellSpaceBoundaryMember().get(i).getClass().getSimpleName().equals("ConnectionBoundary")) { - + ConnectionBoundary tempcellspace = (ConnectionBoundary) savedMap.getFeature(feature.getCellSpaceBoundaryMember().get(i).getId()); CellSpaceBoundaryMemberType tempcellspacemember = indoorgmlcoreOF.createCellSpaceBoundaryMemberType(); tempcellspacemember.setCellSpaceBoundary(indoorgmlnaviOF.createConnectionBoundary(change2JaxbClass(savedMap, tempcellspace))); cellspaceboundarymember.add(tempcellspacemember); } else { - + CellSpaceBoundary tempcellspace = (CellSpaceBoundary) savedMap .getFeature(feature.getCellSpaceBoundaryMember().get(i).getId()); CellSpaceBoundaryMemberType tempcellspacemember = indoorgmlcoreOF.createCellSpaceBoundaryMemberType(); tempcellspacemember.setCellSpaceBoundary(indoorgmlcoreOF.createCellSpaceBoundary(change2JaxbClass(savedMap, tempcellspace))); - cellspaceboundarymember.add(tempcellspacemember); + cellspaceboundarymember.add(tempcellspacemember); } } @@ -678,7 +678,7 @@ static TransitionType change2JaxbClass(IndoorGMLMap savedMap, Transition feature } public static GeneralSpaceType change2JaxbClass(IndoorGMLMap savedMap, GeneralSpace feature) throws JAXBException { - + GeneralSpaceType newFeature = indoorgmlnaviOF.createGeneralSpaceType(); StatePropertyType duality = new StatePropertyType(); @@ -706,19 +706,19 @@ public static GeneralSpaceType change2JaxbClass(IndoorGMLMap savedMap, GeneralSp CodeType e = new CodeType(); e.setValue(feature.getClassType()); newFeature.setClazz(e); - + } if (feature.getFunctionType() != null) { CodeType e = new CodeType(); e.setValue(feature.getFunctionType()); newFeature.setFunction(e); - + } if (feature.getUsageType() != null) { CodeType e = new CodeType(); e.setValue(feature.getUsageType()); newFeature.setUsage(e); - + } newFeature.setId(feature.getId()); @@ -771,7 +771,7 @@ public static GeneralSpaceType change2JaxbClass(IndoorGMLMap savedMap, GeneralSp } public static TransitionSpaceType change2JaxbClass(IndoorGMLMap savedMap, TransitionSpace feature) throws JAXBException { - + TransitionSpaceType newFeature = indoorgmlnaviOF.createTransitionSpaceType(); StatePropertyType duality = new StatePropertyType(); @@ -799,13 +799,13 @@ public static TransitionSpaceType change2JaxbClass(IndoorGMLMap savedMap, Transi CodeType e = new CodeType(); e.setValue(feature.getClassType()); newFeature.setClazz(e); - + } if (feature.getFunctionType() != null) { CodeType e = new CodeType(); e.setValue(feature.getFunctionType()); newFeature.setFunction(e); - + } if (feature.getUsageType() != null) { CodeType e = new CodeType(); @@ -863,7 +863,7 @@ public static TransitionSpaceType change2JaxbClass(IndoorGMLMap savedMap, Transi public static ConnectionSpaceType change2JaxbClass(IndoorGMLMap savedMap, ConnectionSpace feature) throws JAXBException { - + ConnectionSpaceType newFeature = indoorgmlnaviOF.createConnectionSpaceType(); StatePropertyType duality = new StatePropertyType(); @@ -891,19 +891,19 @@ public static ConnectionSpaceType change2JaxbClass(IndoorGMLMap savedMap, Connec CodeType e = new CodeType(); e.setValue(feature.getClassType()); newFeature.setClazz(e); - + } if (feature.getFunctionType() != null) { CodeType e = new CodeType(); e.setValue(feature.getFunctionType()); newFeature.setFunction(e); - + } if (feature.getUsageType() != null) { CodeType e = new CodeType(); e.setValue(feature.getUsageType()); newFeature.setUsage(e); - + } newFeature.setId(feature.getId()); @@ -956,7 +956,7 @@ public static ConnectionSpaceType change2JaxbClass(IndoorGMLMap savedMap, Connec } public static AnchorSpaceType change2JaxbClass(IndoorGMLMap savedMap, AnchorSpace feature) throws JAXBException { - + AnchorSpaceType newFeature = indoorgmlnaviOF.createAnchorSpaceType(); StatePropertyType duality = new StatePropertyType(); @@ -984,19 +984,19 @@ public static AnchorSpaceType change2JaxbClass(IndoorGMLMap savedMap, AnchorSpac CodeType e = new CodeType(); e.setValue(feature.getClassType()); newFeature.setClazz(e); - + } if (feature.getFunctionType() != null) { CodeType e = new CodeType(); e.setValue(feature.getFunctionType()); newFeature.setFunction(e); - + } if (feature.getUsageType() != null) { CodeType e = new CodeType(); e.setValue(feature.getUsageType()); newFeature.setUsage(e); - + } newFeature.setId(feature.getId()); diff --git a/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2JaxbGeometry.java b/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2JaxbGeometry.java index 8f94270..834e70a 100644 --- a/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2JaxbGeometry.java +++ b/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2JaxbGeometry.java @@ -1,178 +1,178 @@ -package edu.pnu.stem.binder; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; - -import javax.xml.bind.JAXBElement; - -import org.locationtech.jts.geom.Coordinate; -import org.locationtech.jts.geom.LineString; -import org.locationtech.jts.geom.LinearRing; -import org.locationtech.jts.geom.MultiPolygon; -import org.locationtech.jts.geom.Point; -import org.locationtech.jts.geom.Polygon; - -import com.vividsolutions.jts.geom.Envelope; - -import edu.pnu.stem.geometry.jts.Envelope3D; -import edu.pnu.stem.geometry.jts.Solid; -import edu.pnu.stem.util.GeometryUtil; -import net.opengis.gml.v_3_2_1.AbstractRingPropertyType; -import net.opengis.gml.v_3_2_1.DirectPositionListType; -import net.opengis.gml.v_3_2_1.DirectPositionType; -import net.opengis.gml.v_3_2_1.EnvelopeType; -import net.opengis.gml.v_3_2_1.LineStringType; -import net.opengis.gml.v_3_2_1.LinearRingType; -import net.opengis.gml.v_3_2_1.PointType; -import net.opengis.gml.v_3_2_1.PolygonType; -import net.opengis.gml.v_3_2_1.ShellPropertyType; -import net.opengis.gml.v_3_2_1.ShellType; -import net.opengis.gml.v_3_2_1.SolidType; -import net.opengis.gml.v_3_2_1.SurfacePropertyType; - -public class Convert2JaxbGeometry { - private final static net.opengis.gml.v_3_2_1.ObjectFactory gmlFactory = new net.opengis.gml.v_3_2_1.ObjectFactory(); - - public static SolidType Convert2SolidType(Solid feature){ - MultiPolygon shell = feature.getShell(); +package edu.pnu.stem.binder; + +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.List; + +import javax.xml.bind.JAXBElement; + +import org.locationtech.jts.geom.Coordinate; +import org.locationtech.jts.geom.LineString; +import org.locationtech.jts.geom.LinearRing; +import org.locationtech.jts.geom.MultiPolygon; +import org.locationtech.jts.geom.Point; +import org.locationtech.jts.geom.Polygon; + +import com.vividsolutions.jts.geom.Envelope; + +import edu.pnu.stem.geometry.jts.Envelope3D; +import edu.pnu.stem.geometry.jts.Solid; +import edu.pnu.stem.util.GeometryUtil; +import net.opengis.gml.v_3_2_1.AbstractRingPropertyType; +import net.opengis.gml.v_3_2_1.DirectPositionListType; +import net.opengis.gml.v_3_2_1.DirectPositionType; +import net.opengis.gml.v_3_2_1.EnvelopeType; +import net.opengis.gml.v_3_2_1.LineStringType; +import net.opengis.gml.v_3_2_1.LinearRingType; +import net.opengis.gml.v_3_2_1.PointType; +import net.opengis.gml.v_3_2_1.PolygonType; +import net.opengis.gml.v_3_2_1.ShellPropertyType; +import net.opengis.gml.v_3_2_1.ShellType; +import net.opengis.gml.v_3_2_1.SolidType; +import net.opengis.gml.v_3_2_1.SurfacePropertyType; + +public class Convert2JaxbGeometry { + private final static net.opengis.gml.v_3_2_1.ObjectFactory gmlFactory = new net.opengis.gml.v_3_2_1.ObjectFactory(); + + public static SolidType Convert2SolidType(Solid feature){ + MultiPolygon shell = feature.getShell(); MultiPolygon[] holes = feature.getHoles(); - SolidType newFeature = gmlFactory.createSolidType(); - - ShellType exteriorShellType = Convert2ShellType(shell); - - ShellPropertyType shellProp = gmlFactory.createShellPropertyType(); - shellProp.setShell(exteriorShellType); - - newFeature.setExterior(shellProp); - - if(holes!=null) { - List holesPropList = new ArrayList(); - int index = 0; - for(MultiPolygon mp : holes) { - - ShellType interiorShellType = Convert2ShellType(mp); - ShellPropertyType inshellProp = gmlFactory.createShellPropertyType(); - inshellProp.setShell(interiorShellType); - holesPropList.add(inshellProp); - } - newFeature.setInterior(holesPropList); - } - - newFeature.setId(GeometryUtil.getMetadata(feature, "id")); - + SolidType newFeature = gmlFactory.createSolidType(); + + ShellType exteriorShellType = Convert2ShellType(shell); + + ShellPropertyType shellProp = gmlFactory.createShellPropertyType(); + shellProp.setShell(exteriorShellType); + + newFeature.setExterior(shellProp); + + if(holes!=null) { + List holesPropList = new ArrayList(); + int index = 0; + for(MultiPolygon mp : holes) { + + ShellType interiorShellType = Convert2ShellType(mp); + ShellPropertyType inshellProp = gmlFactory.createShellPropertyType(); + inshellProp.setShell(interiorShellType); + holesPropList.add(inshellProp); + } + newFeature.setInterior(holesPropList); + } + + newFeature.setId(GeometryUtil.getMetadata(feature, "id")); + return newFeature; - } - - public static ShellType Convert2ShellType(MultiPolygon feature){ - List surfaceProps = new ArrayList(); - ShellType newFeature = gmlFactory.createShellType(); - for(int i = 0 ; i < feature.getNumGeometries() ; i++){ - Polygon p = (Polygon) feature.getGeometryN(i); - PolygonType s = Convert2SurfaceType(p); - SurfacePropertyType sProp = gmlFactory.createSurfacePropertyType(); - sProp.setAbstractSurface(gmlFactory.createPolygon(s)); - surfaceProps.add(sProp); - } - - newFeature.setSurfaceMember(surfaceProps); - return newFeature; - } - - public static PolygonType Convert2SurfaceType(Polygon feature){ - PolygonType newFeature = gmlFactory.createPolygonType(); - - LinearRingType extRing = Convert2LinearRingType((LinearRing)feature.getExteriorRing()); - AbstractRingPropertyType extProp = gmlFactory.createAbstractRingPropertyType(); - extProp.setAbstractRing(gmlFactory.createLinearRing(extRing)); - newFeature.setExterior(extProp); - - int numofIntRing = feature.getNumInteriorRing(); - if(numofIntRing!= 0) { - List intProp = new ArrayList(); - for(int i = 0 ; i < numofIntRing; i++) { - LinearRingType tempIntRing = Convert2LinearRingType((LinearRing)feature.getInteriorRingN(i)); - AbstractRingPropertyType singleintProp = gmlFactory.createAbstractRingPropertyType(); - singleintProp.setAbstractRing(gmlFactory.createLinearRing(tempIntRing)); - intProp.add(singleintProp); - } - newFeature.setInterior(intProp); - } - - - if(feature.getNumInteriorRing() > 0) { - //TODO - } - newFeature.setId(GeometryUtil.getMetadata(feature, "id")); - return newFeature; - } - - public static LinearRingType Convert2LinearRingType(LinearRing feature){ - LinearRingType newFeature = gmlFactory.createLinearRingType(); - - List> dpList = new ArrayList>(); - for(int i = 0 ; i < feature.getCoordinates().length; i++){ - Coordinate c = feature.getCoordinates()[i]; - JAXBElement dpt = gmlFactory.createPos(Convert2CoordinateType(c, feature.getDimension())); - dpList.add(dpt); - } - - newFeature.setPosOrPointPropertyOrPointRep(dpList); + } + + public static ShellType Convert2ShellType(MultiPolygon feature){ + List surfaceProps = new ArrayList(); + ShellType newFeature = gmlFactory.createShellType(); + for(int i = 0 ; i < feature.getNumGeometries() ; i++){ + Polygon p = (Polygon) feature.getGeometryN(i); + PolygonType s = Convert2SurfaceType(p); + SurfacePropertyType sProp = gmlFactory.createSurfacePropertyType(); + sProp.setAbstractSurface(gmlFactory.createPolygon(s)); + surfaceProps.add(sProp); + } + + newFeature.setSurfaceMember(surfaceProps); + return newFeature; + } + + public static PolygonType Convert2SurfaceType(Polygon feature){ + PolygonType newFeature = gmlFactory.createPolygonType(); + + LinearRingType extRing = Convert2LinearRingType((LinearRing)feature.getExteriorRing()); + AbstractRingPropertyType extProp = gmlFactory.createAbstractRingPropertyType(); + extProp.setAbstractRing(gmlFactory.createLinearRing(extRing)); + newFeature.setExterior(extProp); + + int numofIntRing = feature.getNumInteriorRing(); + if(numofIntRing!= 0) { + List intProp = new ArrayList(); + for(int i = 0 ; i < numofIntRing; i++) { + LinearRingType tempIntRing = Convert2LinearRingType((LinearRing)feature.getInteriorRingN(i)); + AbstractRingPropertyType singleintProp = gmlFactory.createAbstractRingPropertyType(); + singleintProp.setAbstractRing(gmlFactory.createLinearRing(tempIntRing)); + intProp.add(singleintProp); + } + newFeature.setInterior(intProp); + } + + + if(feature.getNumInteriorRing() > 0) { + //TODO + } + newFeature.setId(GeometryUtil.getMetadata(feature, "id")); return newFeature; - } - + } + + public static LinearRingType Convert2LinearRingType(LinearRing feature){ + LinearRingType newFeature = gmlFactory.createLinearRingType(); + + List> dpList = new ArrayList>(); + for(int i = 0 ; i < feature.getCoordinates().length; i++){ + Coordinate c = feature.getCoordinates()[i]; + JAXBElement dpt = gmlFactory.createPos(Convert2CoordinateType(c, feature.getDimension())); + dpList.add(dpt); + } + + newFeature.setPosOrPointPropertyOrPointRep(dpList); + return newFeature; + } + public static LineStringType Convert2LineStringType(LineString feature){ - LineStringType newFeature = gmlFactory.createLineStringType(); - - List> dpList = new ArrayList>(); - for(int i = 0 ; i < feature.getCoordinates().length; i++){ - Coordinate c = feature.getCoordinates()[i]; - JAXBElement dpt = gmlFactory.createPos(Convert2CoordinateType(c, feature.getDimension())); - dpList.add(dpt); - } - - newFeature.setPosOrPointPropertyOrPointRep(dpList); - newFeature.setId(GeometryUtil.getMetadata(feature, "id")); + LineStringType newFeature = gmlFactory.createLineStringType(); + + List> dpList = new ArrayList>(); + for(int i = 0 ; i < feature.getCoordinates().length; i++){ + Coordinate c = feature.getCoordinates()[i]; + JAXBElement dpt = gmlFactory.createPos(Convert2CoordinateType(c, feature.getDimension())); + dpList.add(dpt); + } + + newFeature.setPosOrPointPropertyOrPointRep(dpList); + newFeature.setId(GeometryUtil.getMetadata(feature, "id")); return newFeature; } - - public static PointType Convert2PointType(Point feature){ - PointType newFeature = gmlFactory.createPointType(); - newFeature.setPos(Convert2CoordinateType(feature.getCoordinateSequence().getCoordinate(0), feature.getDimension())); - newFeature.setId(GeometryUtil.getMetadata(feature, "id")); + + public static PointType Convert2PointType(Point feature){ + PointType newFeature = gmlFactory.createPointType(); + newFeature.setPos(Convert2CoordinateType(feature.getCoordinateSequence().getCoordinate(0), feature.getDimension())); + newFeature.setId(GeometryUtil.getMetadata(feature, "id")); return newFeature; - } - - public DirectPositionListType Convert2DirectPositionType(Coordinate[] feature){ - DirectPositionListType newFeature = gmlFactory.createDirectPositionListType(); - return newFeature; - } - public static DirectPositionType Convert2CoordinateType(Coordinate feature, int dimension){ - DirectPositionType newFeature = gmlFactory.createDirectPositionType(); - int count = 0; - for (char ch: feature.toString().toCharArray()) { - if (ch == ',') { - count++; - } - } - if(count == 1){ - List points = new ArrayList(); - points.add(feature.x); - points.add(feature.y); - newFeature.setValue(points); - } - else if(count == 2){ - Listpoints = new ArrayList(); - points.add(feature.x); - points.add(feature.y); - points.add(feature.z); - newFeature.setValue(points); - } - count++; - BigInteger d = BigInteger.valueOf((long)count); - newFeature.setSrsDimension(d); - return newFeature; - } - - + } + + public DirectPositionListType Convert2DirectPositionType(Coordinate[] feature){ + DirectPositionListType newFeature = gmlFactory.createDirectPositionListType(); + return newFeature; + } + public static DirectPositionType Convert2CoordinateType(Coordinate feature, int dimension){ + DirectPositionType newFeature = gmlFactory.createDirectPositionType(); + int count = 0; + for (char ch: feature.toString().toCharArray()) { + if (ch == ',') { + count++; + } + } + if(count == 1){ + List points = new ArrayList(); + points.add(feature.x); + points.add(feature.y); + newFeature.setValue(points); + } + else if(count == 2){ + Listpoints = new ArrayList(); + points.add(feature.x); + points.add(feature.y); + points.add(feature.z); + newFeature.setValue(points); + } + count++; + BigInteger d = BigInteger.valueOf((long)count); + newFeature.setSrsDimension(d); + return newFeature; + } + + } diff --git a/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2Json.java b/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2Json.java index ddd7b71..4d3022d 100644 --- a/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2Json.java +++ b/igml-feature/src/main/java/edu/pnu/stem/binder/Convert2Json.java @@ -466,15 +466,15 @@ public static ObjectNode convert2JSON(IndoorGMLMap map, Envelope target) { properties.put("srsDimension", target.getSrsDimension()); } - + if (target.getDescription() != null) { if (properties == null) { properties = JsonNodeFactory.instance.objectNode(); } properties.put("description", target.getDescription()); } - - + + return result; } diff --git a/igml-feature/src/main/java/edu/pnu/stem/binder/IndoorGMLMap.java b/igml-feature/src/main/java/edu/pnu/stem/binder/IndoorGMLMap.java index fe8f6f6..4265ab5 100644 --- a/igml-feature/src/main/java/edu/pnu/stem/binder/IndoorGMLMap.java +++ b/igml-feature/src/main/java/edu/pnu/stem/binder/IndoorGMLMap.java @@ -16,14 +16,14 @@ public class IndoorGMLMap implements Serializable { protected ConcurrentHashMap> collection; private String docId; - + public IndoorGMLMap() { this.collection = new ConcurrentHashMap>(); setFeatureClassContainer(); } private void setFeatureClassContainer() { - + collection.put("ID", new ConcurrentHashMap()); collection.put("FutureID", new ConcurrentHashMap()); collection.put("IndoorFeatures", new ConcurrentHashMap()); @@ -42,18 +42,18 @@ private void setFeatureClassContainer() { collection.put("State", new ConcurrentHashMap()); collection.put("Reference", new ConcurrentHashMap()); collection.put("Envelope", new ConcurrentHashMap()); - collection.put("Geometry", new ConcurrentHashMap()); - + collection.put("Geometry", new ConcurrentHashMap()); + collection.put("GeneralSpace", new ConcurrentHashMap()); collection.put("TransitionSpace", new ConcurrentHashMap()); collection.put("ConnectionSpace", new ConcurrentHashMap()); collection.put("AnchorSpace", new ConcurrentHashMap()); - + collection.put("ConnectionBoundary", new ConcurrentHashMap()); collection.put("AnchorBoundary", new ConcurrentHashMap()); } - + public void clearMap() { collection.clear(); } @@ -66,7 +66,7 @@ public boolean hasID(String id) { } return flag; } - + public boolean hasFutureID(String id){ boolean flag = false; ConcurrentHashMap idContainer = getFeatureContainer("FutureID"); @@ -75,25 +75,25 @@ public boolean hasFutureID(String id){ } return flag; } - + public void setFutureFeature(String id, String featureName){ if(!hasID(id)){ collection.get("FutureID").put(id, featureName); //System.out.println("Do not forget to create the feature id : "+id+" later : " + featureName); } } - - public void setFutureFeature(String id, Object feature){ + + public void setFutureFeature(String id, Object feature){ collection.get("FutureID").put(id, feature); //System.out.println("Do not forget to create the feature id : "+id+" later"); } - + private void setID(String id, String featureName) { if(!hasID(id)){ getFeatureContainer("ID").put(id, featureName); } } - + public void removeFeature(String id) { if(hasID(id)) { String featurename = (String)collection.get("ID").get(id); @@ -101,22 +101,22 @@ public void removeFeature(String id) { removeID(id); } } - + public void removeFutureID(String id){ getFeatureContainer("FutureID").remove(id); //System.out.println("Remove Future ID : "+id); } - + private void removeID(String id){ getFeatureContainer("ID").remove(id); } - + public String getFeatureNameFromID(String id) { ConcurrentHashMap idContainer = getFeatureContainer("id"); String featureName = (String) idContainer.get(id); return featureName; } - + public ConcurrentHashMap getFeatureContainer(String featureName) { ConcurrentHashMap newFeatureContainer = null; @@ -132,7 +132,7 @@ public static Object getFeature(String id) { return Container.getInstance().getFeature(docId, id); } */ - + public Object getFeature(String id){ Object newFeature = null; if(hasID(id)){ @@ -144,7 +144,7 @@ public Object getFeature(String id){ } return newFeature; } - + public Object getFutureFeature(String id){ Object newFeature = null; if(hasFutureID(id)){ @@ -155,8 +155,8 @@ public Object getFutureFeature(String id){ } return newFeature; } - - + + // TODO : Merge those two functions with feature setter and getter public Geometry getFeature4Geometry(String id){ ConcurrentHashMap geomContainer = collection.get("Geometry"); @@ -181,7 +181,7 @@ public void setFeature4Geometry(String id, Geometry geom){ //Excpetion } } - + public void setFeature(String id, String featureName, Object featureValue){ if(!hasID(id)){ if(hasFutureID(id)){ @@ -194,12 +194,12 @@ public void setFeature(String id, String featureName, Object featureValue){ } else{ System.out.println("Already Exist Id : " + id+", Feature :" + featureName ); - + //container.get(featureName).put(id, featureValue); } } - - + + public void setReference(String id){ if(hasID(id)){ ConcurrentHashMap referenceContainer = getFeatureContainer("Reference"); @@ -216,21 +216,21 @@ public void setReference(String id){ } public void setDocId(String id) { - this.docId = id; + this.docId = id; } public String getDocId(){ return new String(this.docId); } - + public void Marshall(String path) { - - + + Enumeration fe = collection.get("IndoorFeatures").elements(); IndoorFeatures features = null; if(fe.hasMoreElements()) { features = (IndoorFeatures) fe.nextElement(); - - + + IndoorFeaturesType resultDoc; try { resultDoc = edu.pnu.stem.binder.Convert2JaxbClass.change2JaxbClass(this, features); diff --git a/igml-feature/src/main/java/edu/pnu/stem/binder/JaxbUtil.java b/igml-feature/src/main/java/edu/pnu/stem/binder/JaxbUtil.java index aeb20c2..f5e578f 100644 --- a/igml-feature/src/main/java/edu/pnu/stem/binder/JaxbUtil.java +++ b/igml-feature/src/main/java/edu/pnu/stem/binder/JaxbUtil.java @@ -7,18 +7,18 @@ public class JaxbUtil { public static JAXBContext createIndoorGMLContext() throws JAXBException { JAXBContext context = JAXBContext.newInstance( - "net.opengis.indoorgml.core.v_1_0" + - ":org.w3.XMLSchema" + - ":net.opengis.gml.v_3_2" + + "net.opengis.indoorgml.core.v_1_0" + + ":org.w3.XMLSchema" + + ":net.opengis.gml.v_3_2" + ":org.w3.xlink"); return context; } public static JAXBContext createGMLContext() throws JAXBException { JAXBContext context = JAXBContext.newInstance( - "net.opengis.gml.v_3_2" + - ":org.w3.XMLSchema" + - ":net.ascc.xml.schematron" + + "net.opengis.gml.v_3_2" + + ":org.w3.XMLSchema" + + ":net.ascc.xml.schematron" + ":org.w3.xlink"); return context; } diff --git a/igml-feature/src/main/java/edu/pnu/stem/binder/Mashaller.java b/igml-feature/src/main/java/edu/pnu/stem/binder/Mashaller.java index 101da54..ba5db74 100644 --- a/igml-feature/src/main/java/edu/pnu/stem/binder/Mashaller.java +++ b/igml-feature/src/main/java/edu/pnu/stem/binder/Mashaller.java @@ -25,7 +25,7 @@ public static void exportIndoorGMLCore(Properties props, String id, String fileP //IndoorFeaturesType indoorFeaturesType = Convert2JaxbClass.change2JaxbClass((IndoorFeatures)Convert2FeatureClass.docContainer.getFeature(id)); //marshalIndoorFeatures(filePath, indoorFeaturesType); } - + public static void marshalDocument(String path, IndoorGMLMap map) throws JAXBException, IOException { ConcurrentHashMap indoorfeatures = map.getFeatureContainer("IndoorFeatures"); String indoorfeaturesId = null; diff --git a/igml-feature/src/main/java/edu/pnu/stem/binder/SymbolListener.java b/igml-feature/src/main/java/edu/pnu/stem/binder/SymbolListener.java index c4f9742..be6751c 100644 --- a/igml-feature/src/main/java/edu/pnu/stem/binder/SymbolListener.java +++ b/igml-feature/src/main/java/edu/pnu/stem/binder/SymbolListener.java @@ -11,18 +11,18 @@ * */ public class SymbolListener extends javax.xml.bind.Unmarshaller.Listener { - + private Map idRegistryMap; private Map parentMap; private Map referenceRegistryMap; - + /** * AbstractGML Type */ private final Class _GMLType; - + /** - * + * */ public SymbolListener(Class abstractGMLType) { this.idRegistryMap = new HashMap(); @@ -39,19 +39,19 @@ public void afterUnmarshal(Object target, Object parent) { if(href != null) { href = href.replaceAll("#", ""); /*System.out.println("XLink : " + href);*/ - + //System.out.println("xlink target : " + target.getClass()); - + referenceRegistryMap.put(href, target); - + } } catch ( Exception e ) { //e.printStackTrace(); } try { - /* + /* if(target instanceof net.opengis.gml.v_3_1_1.AbstractGMLType) { String gmlId = ((net.opengis.gml.v_3_1_1.AbstractGMLType) target).getId(); if( gmlId != null ) { @@ -69,7 +69,7 @@ public void afterUnmarshal(Object target, Object parent) { idRegistryMap.put(gmlId, target); parentMap.put(target, parent); /*System.out.println("GMLID : " + gmlId);*/ - + //System.out.println("gml target : " + target.getClass()); } } @@ -77,7 +77,7 @@ public void afterUnmarshal(Object target, Object parent) { //e.printStackTrace(); } } - + public XLinkSymbolMap getSymbolMap() { return new XLinkSymbolMap(idRegistryMap, parentMap, referenceRegistryMap); } diff --git a/igml-feature/src/main/java/edu/pnu/stem/binder/package-info.java b/igml-feature/src/main/java/edu/pnu/stem/binder/package-info.java index e88810d..edb249f 100644 --- a/igml-feature/src/main/java/edu/pnu/stem/binder/package-info.java +++ b/igml-feature/src/main/java/edu/pnu/stem/binder/package-info.java @@ -1,5 +1,5 @@ /** - * + * */ /** * @author jungh