From 7736a8120472043c3ce92510e0c0ef7047125338 Mon Sep 17 00:00:00 2001 From: SangYeong Park Date: Fri, 20 Sep 2024 21:44:34 +0900 Subject: [PATCH] feat: read '/' as '_' --- .../server/controller/PriceController.class | Bin 2559 -> 2720 bytes .../resources/main/application.properties | 3 ++- .../stash-dir/PriceController.class.uniqueId0 | Bin 2559 -> 3563 bytes .../stash-dir/PriceService.class.uniqueId1 | Bin 7307 -> 0 bytes .../compileJava/previous-compilation-data.bin | Bin 71479 -> 71479 bytes .../server/controller/PriceController.java | 5 +++-- .../com/swdc/server/service/PriceService.java | 2 +- 7 files changed, 6 insertions(+), 4 deletions(-) delete mode 100644 server/build/tmp/compileJava/compileTransaction/stash-dir/PriceService.class.uniqueId1 diff --git a/server/build/classes/java/main/com/swdc/server/controller/PriceController.class b/server/build/classes/java/main/com/swdc/server/controller/PriceController.class index 31c476d758bb086137b3c0c9e2b3abb3fd6eade7..1bb56eb1c056d62dc4f51940057dc38d69f120be 100644 GIT binary patch delta 735 zcmZ`$-A)rh7(FxFcGtD7W(`d+kZ6Je+hVCdMM0ZxaEU6@hi=A`6Z)VP%^X;D_AG+)xzrXDO7{{|M`=ea6Feo63 z7V-qoMg~J^oI+8+4E*&~Rr3X=2j*U=H>$X*8ujATiV7C|SFim>%^%yRAHJ8lgC(3c zaVCwkI2V4G_3Q}Fo4An1D8>Z(-Wh%2lCf!xU_6ZpRKj0IGc}1W6PLH=6AjVZQ&Ua9 zz81Xo8tSF*Z9Z?VcpLt@3RH6~*xpI@%Kj22nMA;e-XJr`r!b8KuCV$^w20METIE)E z${BFnHVUJr`x(ReZgZ%O@+a;~T;+NcDXu4w#Yyy_9|a7e43{qyaE&|ju@+`*P@{sIWC<#jaEmP2qResJCQVT?jXOk>qCm!=5-_Xp0}I3~b?@?9 zT!z@dJ=|ySP!#R~NfbE3C~9Rl>I@$>*t2!CLK_$V1&d9#N;<`{_*f@}-AQ3hlkXT=03q$MANX{uejvqzhHO^sO^q9cH?L>x%k)~GtqAp h+CozBpB~0Cb)qYeh!T(W`b3*@SbMCWayOon`U?*yWbgn0 delta 593 zcmZvZ$xZ@65QhI*n1KaGdyy%^~2QPCpFU*7@D#Mi1Tl#z_eQ(*XE7Z_0Y$f}Um7JuO_V!t`nl4n8^dZmi4sK>M1%}2jrJ_&ptBJ0 z!rSCsbFch`mh*^2YRJfRG5$cOiV9B~KAvOfM+_r~Qzpr3DJ;-i_mZ)QDqoc0GFU)Z zOIW6YuvX~Pn4iZgEuAVctkLpO%ch3Gwa&;^NMkgZ3FZI|?tZFmaBrSLxxf~-=^GF| z?9dQ>iCc73{OPF9QW|}hY$n}B{eN66t@OU5OJ? zdl(*!jXjEs@m4qiF$2qa#*CACLZZ!=H&?G#M8eoIs$u=15r0dO2tI{#3S*y{BIiIV U9Ln=Z&M3m{Cf~>W>dooo87r_e1DI zzk@^?14s(o48k2ZYJ{G@vmMI1Itao&_du21NQL_~rQK!eS8FOYYX|sjneAu`ufV+-O_BaxUn*~SzHvzDHvb;}*2BKXVR)7;=zG z;~dfg*B;6}8EVzasU0Pw#RRY3b|ee*&=>fB5jmqc$dz}tw}Q} zd=0l9d_9djc#8?$iwaW#mX6KP+axWtoUE!!P-XhPcdAdlcI)X|KSl@fwt#R4K|)0- zg<-sx#w_L-@lZ8tvcjDfI(IVg3#KCcikj)*uuI-^w}fGG5las4rm>6_fyqixccX)9 z#nzq*-Adr=FsQN6O}bZ1TDQJgeayg$GBwE;lRN+HV$&+9idVMgk>zh8?_f2JHQW=p za+XB`&#}_i!=T!%=mn*vCH{j>7Fy}i;s2?Ui4#DpL0x*jTMzu5U|}xCYk__{jSUn8 zawoPo`OJPWFSXhU!bbx6God;2-kTV6u+`Ov;`SAHJsXS_e>)Ip_TKnREwnRV+BNrV zM0&C#keIhwKa%%+wbrbcRalhe8WSOt4=S>@B}31Aw}c6nKZ|AR1ox+B*o?p+6JBoz zA-gZLzt#0kE}zXifm9<-nvz%LN61s--nMCDB(}^C+s)cd>1B3o8_kl>6R&i@5SJp= zkfGE;C@|cmriE3-9H_2SUsr5vbT7Nn^tD%4TVCYR_gUW$wA3C?0D)Wi(;7{;{^%;d{0j4S?r4|X#7T2L6+T1&i$~o6IzZ;${!3%Ripd+4jjW{Kukt9A!;Sql5;IX+C{D_V2 z_`>1&`@x=S-F}FOd9}o2(zcO5bXId~Vr(?Na79=0L9o|s^r+m9-q*FT_^8o!FtiH& zLC5^o&8YK~XqlLowOYZ`YGx2W78o%c=7Q~<$&l%s7{n*Mf6N)7EhQs22fS5%%8SR- z{+L^1jpR&4Gv$=KX0Ao4nkyt(hZ|qkfL><2y*;eTv8U9;EcMsm~$)2B#1I z#PD?DbBtsYM|cr9M3$;o+o}Ph8aTr1R`qwh@%|UMnjOd{4lyyEG|J==ZdhfOpEv)C zTW#@lOPra>ymN?eOgm<}bA)*-pZqfxu4kPahxq0niKq|XJ;fe)>j w&@yB$yb-@OwJ}Rg?DIQEq7Nv0VxJ$|=TGeOr}p`C{F1X$obfCC2ERl0KlF3&{r~^~ delta 737 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 diff --git a/server/src/main/java/com/swdc/server/controller/PriceController.java b/server/src/main/java/com/swdc/server/controller/PriceController.java index 911721b..0ef5d13 100644 --- a/server/src/main/java/com/swdc/server/controller/PriceController.java +++ b/server/src/main/java/com/swdc/server/controller/PriceController.java @@ -36,9 +36,10 @@ public class PriceController { public Price getPriceInfo(@PathVariable String platform, HttpServletRequest request, @PathVariable String product_id) { String restOfPath = (String) request.getAttribute(HandlerMapping.PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE); String bestMatchPattern = (String) request.getAttribute(HandlerMapping.BEST_MATCHING_PATTERN_ATTRIBUTE); - String category_name = new AntPathMatcher().extractPathWithinPattern(bestMatchPattern, restOfPath); + String category_name_with_separator = new AntPathMatcher().extractPathWithinPattern(bestMatchPattern, restOfPath); - category_name = UriUtils.decode(category_name, StandardCharsets.UTF_8); + category_name_with_separator = UriUtils.decode(category_name_with_separator, StandardCharsets.UTF_8); + String category_name = category_name_with_separator.replace("/", "_"); return priceService.getProductDetails(platform, category_name, product_id); } diff --git a/server/src/main/java/com/swdc/server/service/PriceService.java b/server/src/main/java/com/swdc/server/service/PriceService.java index 986a8d9..64f8dca 100644 --- a/server/src/main/java/com/swdc/server/service/PriceService.java +++ b/server/src/main/java/com/swdc/server/service/PriceService.java @@ -41,7 +41,7 @@ public class PriceService { /** * - * file system에서 "fileSystemPath/platform/category_name/product_id.txt"에 해당하는 product의 가격 정보를 반환 + * file system에서 "{fileSystemPath}/platform/category_name/product_id.txt"에 해당하는 product의 가격 정보를 반환 * */ public Price getProductDetails(String platform, String category_name, String product_id) {