package Ġcom . ali . k ids fly Ċ Ċ import Ġcom . ali . k ids fly . model . Downloaded UserProfile Ċ import Ġcom . ali . k ids fly . model . UserProfile Ċ import Ġcom . google . gson . Gson Builder Ċ import Ġokhttp 3 . Ok HttpClient Ċ import Ġokhttp 3 . logging . Http Logging Interceptor Ċ import Ġretrofit 2 . Call Ċ import Ġretrofit 2 . Ret rofit Ċ import Ġretrofit 2 . converter . gson . Gson Converter Factory Ċ import Ġretrofit 2 . http .* Ċ import Ġjava . util . concurrent . TimeUnit Ċ Ċ interface ĠTrip Api Ġ{ ĊĊĠĠĠ Ġ@ POST (" parents / new ") ĊĠĠĠ Ġfun Ġpost UserProfile (@ Body Ġuser : ĠUser Profile ) Ġ: ĠCall < UserProfile > ĊĊĠĠĠ Ġ@ GET (" parents /{ parent id }") ĊĠĠĠ Ġfun ĠgetUser Profile Information (@ Path (" parent id ") Ġparent id : ĠInt ): ĠCall < Downloaded UserProfile > ĊĊĠĠĠ Ġcompanion Ġobject { ĊĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠBASE _ URL Ġ= Ġ" https :// k ids fly backend . herokuapp . com /" ĊĊĠĠĠĠĠĠĠ Ġfun Ġget Trip Api Call (): ĠTrip Api { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlogger Ġ= ĠHttp Logging Interceptor () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogger . level Ġ= ĠHttp Logging Interceptor . Level . BASIC ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogger . level Ġ= ĠHttp Logging Interceptor . Level . BODY ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġok HttpClient Ġ= ĠOk HttpClient . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Interceptor ( logger ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. retry On Connection Failure ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. read Timeout ( 1 0 , ĠTimeUnit . SECONDS ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. connect Timeout ( 1 5 , ĠTimeUnit . SECONDS ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgson Ġ= ĠGson Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Len ient () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. create () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġretrofit Ġ= ĠRet rofit . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. client ( ok HttpClient ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl ( BASE _ URL ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Converter Factory ( Gson Converter Factory . create ( gson )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġretrofit . create ( Trip Api :: class . java ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }