package Ġcom . ba ul supp . ok url . services . twitter Ċ Ċ import Ġcom . ba ul supp . ok social . output . handler . Output Handler Ċ import Ġcom . ba ul supp . ok url . auth enticator . Simple WebServer Ċ import Ġokhttp 3 . Ok HttpClient Ċ import Ġokhttp 3 . Response Ċ Ċ class ĠWeb Authorization Flow ( client : ĠOk HttpClient , Ġoutput Handler : ĠOutput Handler < Response >) Ġ: ĊĠ ĠTwitter Auth Flow ( client , Ġoutput Handler ) Ġ{ ĊĊĠ Ġsuspend Ġfun Ġauthor ise ( consumer Key : ĠString , Ġconsumer Secret : ĠString ): ĠTwitter Credentials Ġ{ ĊĠĠĠ ĠSimple WebServer Ġ{ ĊĠĠĠĠĠ Ġit . query Parameter (" oauth _ verifier ") !! ĊĠĠĠ Ġ}. use Ġ{ Ġs Ġ-> ĊĠĠĠĠĠ Ġval Ġun aut hed Ġ= ĠTwitter Credentials ( null , Ġconsumer Key , Ġconsumer Secret , Ġnull , Ġ"") ĊĊĠĠĠĠĠ Ġval Ġrequest Credentials Ġ= Ġgenerate Request Token ( un aut hed , Ġs . redirect Uri ) ĊĊĠĠĠĠĠ Ġshow User Login ( request Credentials ) ĊĊĠĠĠĠĠ Ġval Ġverifier Ġ= Ġs . waitFor Code () ĊĊĠĠĠĠĠ Ġreturn Ġgenerate AccessToken ( request Credentials , Ġverifier ) ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ