package Ġcn . hess ian . xiao ai Ċ Ċ import Ġio . netty . handler . codec . http . QueryString Decoder Ċ import Ġio . vertx . core . Multi Map Ċ import Ġio . vertx . core . http . impl . headers . Vert x HttpHeaders Ċ import Ġio . vertx . core . json . JsonArray Ċ import Ġio . vertx . core . json . JsonObject Ċ import Ġjava . net . URI Ċ Ċ class ĠHttp Command Ġ( val Ġurl : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmethod : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġheaders : ĠJson Array , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠcontentType : ĠString , Ġ// Ġdefault Ġfor Ġpost Ġis Ġ" application / x - www - form - urlencoded " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbody : ĠString ) Ġ{ ĊĊĠ Ġconstructor ( json : ĠJsonObject ) Ġ: Ġthis ( ĊĠĠĠ Ġurl Ġ= Ġjson . getString (" url "), ĊĠĠĠ Ġmethod Ġ= Ġjson . getString (" method "), ĊĠĠĠ Ġheaders Ġ= Ġjson . get JsonArray (" headers "), ĊĠĠĠ ĠcontentType Ġ= Ġjson . getString (" contentType "), ĊĠĠĠ Ġbody Ġ= Ġjson . getString (" body ") ĊĠ Ġ) ĊĊĊĠ Ġval Ġform Params : ĠMulti Map ĊĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠ Ġval Ġresult Ġ= ĠVert x HttpHeaders () ĊĠĠĠĠĠ Ġif Ġ( contentType Ġ== Ġ" application / x - www - form - urlencoded ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠqueryString Decoder Ġ= ĠQuery String Decoder ( URI (" ?$ body ")) ĊĠĠĠĠĠĠĠ ĠqueryString Decoder . parameters (). forEach Ġ{ Ġkey , Ġvalue Ġ-> ĊĠĠĠĠĠĠĠĠĠ Ġresult . add ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠ Ġ} Ċ Ċ } Ċ