package Ġcom . b ub bble . data . global . parsing Ċ Ċ import Ġokhttp 3 . Http Url Ċ import Ġokhttp 3 . Ok HttpClient Ċ import Ġokhttp 3 . Request Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠPage Downloader Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġok HttpClient : ĠOk HttpClient , Ċ ) Ġ{ ĊĊĠĠĠ Ġfun Ġdownload ( url : ĠHttp Url ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest : ĠRequest Ġ= ĠRequest . Builder (). url ( url ). build () ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= Ġok HttpClient . new Call ( request ). execute () ĊĠĠĠĠĠĠĠ Ġif Ġ( response . code Ġ== Ġ 2 0 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġresponse . body !!. string () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠPage Download Exception ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġ" An Ġerror Ġcaused Ġwhen Ġdownloading Ġpage ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhttp Code Ġ= Ġresponse . code , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Ġ= Ġresponse . body ?. string () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }