/* Ċ Ġ* ĠSPDX - File Copyright Text : Ġ 2 0 2 1 ĠEric ĠNe id hard t Ċ Ġ* ĠSPDX - License - Identifier : ĠMIT Ċ Ġ*/ Ċ package Ġorg . ne id hard t . rx address . nom in at im Ċ Ċ import Ġio . reactivex . rx java 3 . core . Single Ċ import Ġorg . ne id hard t . rx address . nom in at im . model . SearchResult Ċ import Ġretrofit 2 . Ret rofit Ċ import Ġretrofit 2 . adapter . rx java 3 . Rx Java 3 Call Adapter Factory Ċ import Ġretrofit 2 . converter . gson . Gson Converter Factory Ċ import Ġretrofit 2 . http . GET Ċ import Ġretrofit 2 . http . Query Ċ Ċ private Ġinterface ĠNom in at im Api Ġ{ Ċ ĉ @ GET (" search ? format = json v 2 ") Ċ ĉ fun Ġsearch (@ Query (" q ") Ġquery : ĠString ): ĠSingle < List < SearchResult >> Ċ } Ċ Ċ class ĠNom in at im ApiService Ġ{ ĊĊ ĉ private Ġval Ġnom in at im Api : ĠNom in at im Api Ġ= ĠRet rofit . Builder () Ċĉ ĉ . baseUrl (" https :// nom in at im . openstreetmap . org /") Ċĉ ĉ . add Call Adapter Factory ( Rx Java 3 Call Adapter Factory . create ()) Ġ// Ġreturn Ġrx Ġobservable Ċĉ ĉ . add Converter Factory ( Gson Converter Factory . create ()) Ġ// Ġuse Ġgson Ġfor Ġserialization Ċĉ ĉ . build () Ċĉ ĉ . create ( Nom in at im Api :: class . java ) ĊĊ ĉ /** Ċĉ Ġ* Ġget SearchResults Ġreturns Ġaddress Ġinformation Ġfrom ĠNom in at im . Ċĉ Ġ* ĠIt Ġuses ĠRX Ġand ĠRet rofit Ġto Ġget Ġthe Ġdata . Ċĉ Ġ* Ċĉ Ġ* Ġ@ param Ġquery ĠThe Ġquery Ġto Ġobtain Ġaddresses Ġfor . Ċĉ Ġ* Ġ@ return ĠList Ġof Ġsearch Ġresults . Ċĉ Ġ*/ Ċ ĉ fun Ġget SearchResults ( query : ĠString ): ĠSingle < List < SearchResult >> Ġ{ Ċĉ ĉ return Ġnom in at im Api . search ( query ) Ċ ĉ } Ċ }