package Ġcom . pz pg . o gr . api . request Ċ Ċ import Ġandroid . util . Log Ċ import Ġcom . github . kit tin un f . fuel . Fuel Ċ import Ġcom . github . kit tin un f . fuel . core . File Data Part Ċ import Ġcom . github . kit tin un f . fuel . core . Fuel Error Ċ import Ġcom . github . kit tin un f . fuel . core . Headers Ċ import Ġcom . google . android . gms . auth . api . signin . Google SignIn Account Ċ import Ġkotlinx . coroutines . Dispatch ers Ċ import Ġkotlinx . coroutines . with Context Ċ import Ġorg . json . JSONArray Ċ import Ġorg . json . JSONObject Ċ import Ġjava . io . File Ċ Ċ /** Ċ Ġ* ĠClass Ġresponsible Ġfor Ġrequest Ġto Ġserver Ċ Ġ* Ċ Ġ* Ġ@ property [ server Url ] Ġthe Ġurl Ġof Ġthe Ġserver Ċ Ġ* Ċ Ġ* Ġ@ author ĠW ÅĤad ys ÅĤ aw ĠJ ako ÅĤ ce wic z Ċ Ġ*/ Ċ class ĠRequest Server ( private Ġval Ġserver Url : ĠString ) Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAuthor izes Ġa Ġuser Ġon Ġthe Ġserver Ġto Ġuse Ġthe ĠAPI ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param [ account ] Ġa Ġgoogle Ġaccount Ġhas ĠGoogle SignIn Account Ġtype ĊĠĠĠĠ Ġ* Ġ@ return ĠJSONObject Ġwhich Ġhas Ġthree Ġkeys Ġ" mail ", Ġ" jwt Token " Ġand Ġ" refresh Token " ĊĠĠĠĠ Ġ* Ġthis Ġthree Ġkeys Ġhave Ġstring Ġvalue ĊĠĠĠĠ Ġ* Ġ@ throws ĠBadRequest Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠTime Out Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠRequest Server Exception ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author ĠW ÅĤad ys ÅĤ aw ĠJ ako ÅĤ ce wic z ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġsuspend Ġfun Ġauthorize ( account : ĠGoogle SignIn Account ): ĠJSONObject Ġ= Ġwith Context ( Dispatch ers . IO ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġendpoint Ġ= Ġ"/ users / authenticate " ĊĠĠĠĠĠĠĠ ĠLog . i (" authorize ", Ġserver Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠ Ġval Ġmsg Ġ= ĠJSONObject () ĊĠĠĠĠĠĠĠ Ġmsg . accum ulate (" id Token ", Ġaccount . id Token ) ĊĠĠĠĠĠĠĠ Ġmsg . accum ulate (" auth Code ", Ġaccount . server Auth Code ) ĊĊĠĠĠĠĠĠĠ Ġval Ġ( request , Ġresponse , Ġresult ) Ġ= ĠF uel . post ( server Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. header ( Headers . CONTENT _ TYPE Ġto Ġ" application / json ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. body ( msg . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. response String () ĊĊĠĠĠĠĠĠĠ ĠLog . i (" authorize ", Ġresponse . statusCode . toString ()) ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Failure Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow Ġerror Manage (" authorize ", Ġresult , Ġresponse . statusCode ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Success Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġresult . get () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult ToJson Ġ= ĠJSONObject ( data ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" authorize ", Ġresponse . statusCode . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ with Context Ġresult ToJson ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠS uspend Ġmethod Ġto Ġrefresh Ġtoken Ġmethod Ġto Ġrefresh Ġthe Ġaccess Ġtoken Ġ" jwt Token " Ġwhen Ġthe Ġtime ĊĠĠĠĠ Ġ* Ġof Ġthe Ġtoken Ġhas Ġexpired . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param [ r Token ] Ġrefresh Ġtoken Ġwhich Ġhas Ġstring Ġtype ĊĠĠĠĠ Ġ* Ġ@ return ĠJSONObject Ġwhich Ġhas Ġthree Ġkeys Ġ" mail ", Ġ" jwt Token " Ġand Ġ" refresh Token " ĊĠĠĠĠ Ġ* Ġthis Ġthree Ġkeys Ġhave Ġstring Ġvalue ĊĠĠĠĠ Ġ* Ġ@ throws ĠBadRequest Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠTime Out Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠRequest Server Exception ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author ĠW ÅĤad ys ÅĤ aw ĠJ ako ÅĤ ce wic z ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġsuspend Ġfun Ġrefresh Token ( r Token : ĠString ): ĠJSONObject Ġ= Ġwith Context ( Dispatch ers . IO ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġendpoint Ġ= Ġ"/ users / refresh - token " ĊĠĠĠĠĠĠĠ ĠLog . i (" refresh Token ", Ġserver Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠ Ġval Ġbody Ġ= ĠJSONObject () ĊĠĠĠĠĠĠĠ Ġbody . accum ulate (" token ", Ġr Token ) ĊĊĠĠĠĠĠĠĠ Ġval Ġ( request , Ġresponse , Ġresult ) Ġ= ĠF uel . post ( server Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. header ( Headers . CONTENT _ TYPE Ġto Ġ" application / json ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. body ( body . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. response String () ĊĊĠĠĠĠĠĠĠ ĠLog . i (" refresh Token ", Ġresponse . statusCode . toString ()) ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Failure Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow Ġerror Manage (" refresh Token ", Ġresult , Ġresponse . statusCode ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Success Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġresult . get () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult ToJson Ġ= ĠJSONObject ( data ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" refresh Token ", Ġresponse . statusCode . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ with Context Ġresult ToJson ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠS uspend Ġmethod Ġto Ġupload Ġan Ġimage Ġwhich Ġwill Ġprocessed Ġto Ġthe Ġserver ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param [ dir ] Ġa Ġdirectory Ġwhere Ġthe Ġimage Ġis Ġlocated , Ġhas ĠString Ġtype ĊĠĠĠĠ Ġ* Ġ@ param [ name ] Ġa Ġname Ġof Ġthe Ġimage Ġhas ĠString Ġtype ĊĠĠĠĠ Ġ* Ġ@ param [ jwt Token ] Ġaccess Ġtoken Ġgotten Ġfrom Ġ[ refresh Token ] Ġmethod Ġor Ġ[ authorize ] ĊĠĠĠĠ Ġ* Ġ@ return Ġguid Ġof Ġthe Ġuploaded Ġimage , Ġhas ĠString Ġtype ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ throws ĠBadRequest Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠUnauthorized Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠTime Out Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠRequest Server Exception ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author ĠW ÅĤad ys ÅĤ aw ĠJ ako ÅĤ ce wic z ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġsuspend Ġfun Ġupload Image ( ĊĠĠĠĠĠĠĠ Ġdir : ĠString , ĊĠĠĠĠĠĠĠ Ġname : ĠString , ĊĠĠĠĠĠĠĠ Ġjwt Token : ĠString ĊĠĠĠ Ġ): ĠString Ġ= Ġwith Context ( Dispatch ers . IO ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġendpoint Ġ= Ġ"/ api / graphs / create " ĊĠĠĠĠĠĠĠ ĠLog . i (" upload Image ", Ġserver Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠ Ġval Ġfile Ġ= ĠFile Data Part . from ( dir , Ġname , Ġname Ġ= Ġ" file ") ĊĊĠĠĠĠĠĠĠ ĠLog . i (" upload Image ", Ġfile . toString ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġ( request , Ġresponse , Ġresult ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠF uel . upload ( server Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add ( file ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. header ( map Of (" authorization " Ġto Ġ" Bearer Ġ$ jwt Token ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. response String () ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Failure Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow Ġerror Manage (" upload Image ", Ġresult , Ġresponse . statusCode ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Success Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġresult . get () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult ToJson Ġ= ĠJSONObject ( data ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" upload Image ", Ġresponse . statusCode . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ with Context Ġresult ToJson . getString (" guid ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠS uspend Ġmethod Ġto Ġprocess Ġa Ġimage Ġfor Ġgraph Ġrecognition ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param [ guid ] Ġa Ġguid Ġof Ġthe Ġuploaded Ġimage Ġwhich Ġwe Ġwant Ġto Ġprocess ĊĠĠĠĠ Ġ* Ġ@ param [ jwt Token ] Ġaccess Ġtoken Ġgotten Ġfrom Ġ[ refresh Token ] Ġmethod Ġor Ġ[ authorize ] ĊĠĠĠĠ Ġ* Ġ@ param [ mode ] Ġa Ġmode Ġof Ġthe Ġrecognition ĊĠĠĠĠ Ġ* Ġ@ param [ format ] Ġrecognized Ġgraph Ġformat Ġwhich Ġwe Ġwant Ġto Ġtake Ġafter Ġprocessing ĊĠĠĠĠ Ġ* Ġ@ return Ġtemporary Ġfile Ġ( graph ) ĊĠĠĠĠ Ġ* Ġ@ throws ĠBadRequest Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠUnauthorized Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠTime Out Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠRequest Server Exception ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author ĠW ÅĤad ys ÅĤ aw ĠJ ako ÅĤ ce wic z ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġsuspend Ġfun Ġprocess Image ( ĊĠĠĠĠĠĠĠ Ġguid : ĠString , ĊĠĠĠĠĠĠĠ Ġjwt Token : ĠString , ĊĠĠĠĠĠĠĠ Ġmode : ĠProcess Mode ? ĊĠĠĠ Ġ) Ġ= Ġwith Context ( Dispatch ers . IO ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġendpoint Ġ= Ġ"/ api / graphs / process /" ĊĊĠĠĠĠĠĠĠ Ġval Ġprocess Mode Ġ= Ġmode ?. name Ġ?: ĠProcess Mode . AUTO . name ĊĊĠĠĠĠĠĠĠ ĠLog . i (" process Image ", Ġserver Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠ ĠLog . i (" process Image ĠMode ", Ġprocess Mode ) ĊĊĊĠĠĠĠĠĠĠ Ġval Ġbody Ġ= ĠJSONObject () ĊĠĠĠĠĠĠĠ Ġbody . accum ulate (" mode ", Ġprocess Mode ) ĊĊĠĠĠĠĠĠĠ Ġval Ġ( request , Ġresponse , Ġresult ) Ġ= ĠF uel . post ( server Url Ġ+ Ġendpoint Ġ+ Ġguid ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. timeout Read ( 1 0 0 0 0 0 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. body ( body . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. header ( Headers . CONTENT _ TYPE Ġto Ġ" application / json ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. header ( map Of (" authorization " Ġto Ġ" Bearer Ġ$ jwt Token ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. response String () ĊĊĠĠĠĠĠĠĠ ĠLog . i (" process Image ", Ġresponse . statusCode . toString ()) ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Failure Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow Ġerror Manage (" process Image ", Ġresult , Ġresponse . statusCode ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Success Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" process Image ", Ġresponse . statusCode . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠS uspend Ġmethod Ġto Ġdownload Ġa Ġfile Ġwhich Ġrepresentations Ġa Ġgraph Ġwhich Ġhas Ġbeen Ġrecogn itions Ġby Ġthe Ġserver ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param [ guid ] Ġa Ġguid Ġof Ġthe Ġuploaded Ġimage Ġwhich Ġwe Ġwant Ġto Ġprocess ĊĠĠĠĠ Ġ* Ġ@ param [ jwt Token ] Ġaccess Ġtoken Ġgotten Ġfrom Ġ[ refresh Token ] Ġmethod Ġor Ġ[ authorize ] ĊĠĠĠĠ Ġ* Ġ@ param [ format ] Ġrecognized Ġgraph Ġformat Ġwhich Ġwe Ġwant Ġto Ġtake Ġafter Ġprocessing ĊĠĠĠĠ Ġ* Ġ@ return Ġ[ File ] Ġtemporary Ġfile Ġ( graph ) ĊĠĠĠĠ Ġ* Ġ@ throws ĠBadRequest Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠUnauthorized Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠTime Out Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠRequest Server Exception ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author ĠW ÅĤad ys ÅĤ aw ĠJ ako ÅĤ ce wic z ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġsuspend Ġfun Ġdownload Graph ( ĊĠĠĠĠĠĠĠ Ġguid : ĠString , ĊĠĠĠĠĠĠĠ Ġformat : ĠGraph Format ?, ĊĠĠĠĠĠĠĠ Ġjwt Token : ĠString ĊĠĠĠ Ġ): ĠFile ? Ġ= Ġwith Context ( Dispatch ers . IO ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġendpoint Ġ= Ġ"/ api / graphs / get /" ĊĠĠĠĠĠĠĠ Ġval Ġparameters Ġ= ĠArrayList < Pair < String , ĠString >>() ĊĊĠĠĠĠĠĠĠ ĠLog . i (" download Graph ", Ġserver Url Ġ+ Ġendpoint ) ĊĊĠĠĠĠĠĠĠ Ġparameters . add (" format " Ġto Ġ( format ?. name Ġ?: ĠGraph Format . Graph ML . name )) ĊĊĠĠĠĠĠĠĠ Ġval Ġtemp File Ġ= ĠFile . create TempFile (" temp ", Ġ". tmp ") ĊĊĠĠĠĠĠĠĠ Ġval Ġ( request , Ġresponse , Ġresult ) Ġ= ĠF uel . download ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġserver Url Ġ+ Ġendpoint Ġ+ Ġguid , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparameters Ġ= Ġparameters ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. file Destination Ġ{ Ġ_, Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtemp File ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. header ( map Of (" authorization " Ġto Ġ" Bearer Ġ$ jwt Token ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. response String () ĊĊĠĠĠĠĠĠĠ ĠLog . i (" download Graph ", Ġresponse . statusCode . toString ()) ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Failure Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow Ġerror Manage (" download Graph ", Ġresult , Ġresponse . statusCode ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Success Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" download Graph ", Ġresponse . statusCode . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ with Context Ġtemp File ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠS uspend Ġmethod Ġto Ġget Ġhistory Ġfrom Ġthe Ġserver Ġabout Ġthe Ġuser Ġactivity ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param [ jwt Token ] Ġaccess Ġtoken Ġgotten Ġfrom Ġ[ refresh Token ] Ġmethod Ġor Ġ[ authorize ] ĊĠĠĠĠ Ġ* Ġ@ return [ JSONArray ] Ġarray Ġof Ġentities Ġwhere Ġcontains Ġname , Ġguid , Ġowners Email , ĠcreatedAt , Ġis Public ĊĠĠĠĠ Ġ* Ġ@ throws ĠBadRequest Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠUnauthorized Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠTime Out Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠRequest Server Exception ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author ĠW ÅĤad ys ÅĤ aw ĠJ ako ÅĤ ce wic z ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġsuspend Ġfun Ġget History ( jwt Token : ĠString ): ĠJSONArray Ġ= Ġwith Context ( Dispatch ers . IO ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġendpoint Ġ= Ġ"/ api / graphs / history " ĊĠĠĠĠĠĠĠ ĠLog . i (" get History ", Ġserver Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠ Ġval Ġ( request , Ġresponse , Ġresult ) Ġ= ĠF uel . get ( server Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. header ( map Of (" authorization " Ġto Ġ" Bearer Ġ$ jwt Token ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. response String () ĊĊĠĠĠĠĠĠĠ ĠLog . i (" get History ", Ġresponse . statusCode . toString ()) ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Failure Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow Ġerror Manage (" get History ", Ġresult , Ġresponse . statusCode ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Success Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġresult . get () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult ToJson Ġ= ĠJSONArray ( data ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" get History ", Ġresponse . statusCode . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ with Context Ġresult ToJson ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠS uspend Ġmethod Ġto Ġdelete Ġall Ġentities Ġwith Ġprocessed Ġgraphs Ġincludes Ġimage , Ġgraph Ml , Ġg 6 Ġfiles ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param [ jwt Token ] Ġaccess Ġtoken Ġgotten Ġfrom Ġ[ refresh Token ] Ġmethod Ġor Ġ[ authorize ] ĊĠĠĠĠ Ġ* Ġ@ return [ JSONArray ] Ġarray Ġof Ġentities Ġwhere Ġcontains Ġname , Ġguid , Ġowners Email , ĠcreatedAt , Ġis Public ĊĠĠĠĠ Ġ* Ġ@ throws ĠBadRequest Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠUnauthorized Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠTime Out Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠRequest Server Exception ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author ĠW ÅĤad ys ÅĤ aw ĠJ ako ÅĤ ce wic z ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġsuspend Ġfun Ġdelete All ( jwt Token : ĠString ) Ġ= Ġwith Context ( Dispatch ers . IO ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġendpoint Ġ= Ġ"/ api / graphs / delete - all " ĊĊĠĠĠĠĠĠĠ ĠLog . i (" request Ġto ", Ġserver Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠ Ġval Ġ( request , Ġresponse , Ġresult ) Ġ= ĠF uel . delete ( server Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. header ( map Of (" Authorization " Ġto Ġ" Bearer Ġ$ jwt Token ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. header ( map Of (" accept " Ġto Ġ"* /* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. response String () ĊĊĠĠĠĠĠĠĠ ĠLog . i (" delete All ", Ġresponse . statusCode . toString ()) ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Failure Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow Ġerror Manage (" delete All ", Ġresult , Ġresponse . statusCode ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Success Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" delete All ", Ġ" Success ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠS uspend Ġmethod Ġto Ġdelete Ġone Ġof Ġentities Ġwith Ġprocessed Ġgraphs Ġincludes Ġimage , Ġgraph Ml , Ġg 6 Ġfiles ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param [ guid ] Ġa Ġguid Ġof Ġthe Ġuploaded Ġimage Ġwhich Ġwe Ġwant Ġto Ġprocess ĊĠĠĠĠ Ġ* Ġ@ param [ jwt Token ] Ġaccess Ġtoken Ġgotten Ġfrom Ġ[ refresh Token ] Ġmethod Ġor Ġ[ authorize ] ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ return [ JSONArray ] Ġarray Ġof Ġentities Ġwhere Ġcontains Ġname , Ġguid , Ġowners Email , ĠcreatedAt , Ġis Public ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ throws ĠBadRequest Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠUnauthorized Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠTime Out Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠRequest Server Exception ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author ĠW ÅĤad ys ÅĤ aw ĠJ ako ÅĤ ce wic z ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġsuspend Ġfun Ġdelete Data ( guid : ĠString , Ġjwt Token : ĠString ) Ġ= Ġwith Context ( Dispatch ers . IO ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġendpoint Ġ= Ġ"/ api / graphs / delete /" ĊĊĠĠĠĠĠĠĠ ĠLog . i (" request Ġto ", Ġserver Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠ Ġval Ġ( request , Ġresponse , Ġresult ) Ġ= ĠF uel . delete ( server Url Ġ+ Ġendpoint Ġ+ Ġguid ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. header ( map Of (" Authorization " Ġto Ġ" Bearer Ġ$ jwt Token ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. header ( map Of (" accept " Ġto Ġ"* /* ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. response String () ĊĊĠĠĠĠĠĠĠ ĠLog . i (" delete Data ", Ġresponse . statusCode . toString ()) ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Failure Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow Ġerror Manage (" delete Data ", Ġresult , Ġresponse . statusCode ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Success Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" delete Data ", Ġ" delete Ġ$ guid Ġ- ĠSuccess ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠS uspend Ġmethod Ġto Ġre voke Ġtoken Ġwhen Ġuser Ġlogged Ġout ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param [ jwt Token ] Ġaccess Ġtoken Ġgotten Ġfrom Ġ[ refresh Token ] Ġmethod Ġor Ġ[ authorize ] ĊĠĠĠĠ Ġ* Ġ@ param [ r Token ] Ġrefresh Ġtoken Ġgotten Ġwhen Ġuser Ġauthorize Ġor Ġrefresh Ġjwt Token ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ throws ĠBadRequest Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠUnauthorized Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠTime Out Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠRequest Server Exception ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author ĠW ÅĤad ys ÅĤ aw ĠJ ako ÅĤ ce wic z ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġsuspend Ġfun Ġre voke Token ( jwt Token : ĠString , Ġr Token : ĠString ) Ġ= Ġwith Context ( Dispatch ers . IO ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġendpoint Ġ= Ġ"/ users / revoke - token " ĊĠĠĠĠĠĠĠ ĠLog . i (" request Ġto ", Ġserver Url Ġ+ Ġendpoint ) ĊĊĠĠĠĠĠĠĠ Ġval Ġbody Ġ= ĠJSONObject () ĊĠĠĠĠĠĠĠ Ġbody . accum ulate (" token ", Ġr Token ) ĊĊĠĠĠĠĠĠĠ Ġval Ġ( request , Ġresponse , Ġresult ) Ġ= ĠF uel . post ( server Url Ġ+ Ġendpoint ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. header ( map Of (" Authorization " Ġto Ġ" Bearer Ġ$ jwt Token ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. header ( Headers . CONTENT _ TYPE Ġto Ġ" application / json ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. body ( body . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. response String () ĊĊĠĠĠĠĠĠĠ ĠLog . i (" revoke Token ", Ġresponse . statusCode . toString ()) ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Failure Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow Ġerror Manage (" revoke Token ", Ġresult , Ġresponse . statusCode ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Ġcom . github . kit tin un f . result . Result . Success Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" revoke Token ", Ġ" Success ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠMethod Ġto Ġmanagement Ġof Ġexceptions Ġthrown Ġwhen Ġerrors Ġare Ġpresent Ġin Ġrequests Ġfrom Ġthe Ġserver Ñİ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param [ tag ] Ġtag Ġto Ġbe Ġshown Ġin Ġlogs ĊĠĠĠĠ Ġ* Ġ@ param [ result ] ĠError Ġresult Ġfrom Ġthe Ġresponse ĊĠĠĠĠ Ġ* Ġ@ param [ statusCode ] Ġresponse Ġstatus Ġcode ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ throws ĠBadRequest Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠUnauthorized Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠTime Out Exception ĊĠĠĠĠ Ġ* Ġ@ throws ĠRequest Server Exception ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ return [ Request Server Exception ] ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author ĠW ÅĤad ys ÅĤ aw ĠJ ako ÅĤ ce wic z ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun Ġerror Manage ( ĊĠĠĠĠĠĠĠ Ġtag : ĠString , ĊĠĠĠĠĠĠĠ Ġresult : Ġcom . github . kit tin un f . result . Result . Failure < Fuel Error >, ĊĠĠĠĠĠĠĠ ĠstatusCode : ĠInt ĊĠĠĠ Ġ): ĠThrowable Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġex Ġ= Ġresult . get Exception () ĊĠĠĠĠĠĠĠ ĠLog . e ( tag , Ġresult . error . message . toString ()) ĊĠĠĠĠĠĠĠ Ġwhen Ġ( statusCode ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠ 4 0 0 Ġ-> Ġthrow ĠBadRequest Exception (" Invalid Ġdata Ġin Ġrequest ") ĊĠĠĠĠĠĠĠĠĠĠĠĠ 4 0 1 Ġ-> Ġthrow ĠUnauthorized Exception (" User Ġnot Ġauthorized ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ- 1 Ġ-> Ġthrow ĠTime Out Exception (" Server Ġis Ġnot Ġavailable ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġthrow ĠRequest Server Exception (" Fuel ĠERROR : Ġ${ ex . message }") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ