package Ġcom . inverse . un official . prox ert v . base . client . intercept ors Ċ Ċ import Ġcom . inverse . un official . prox ert v . model . Server Config Ċ import Ġokhttp 3 . Interceptor Ċ import Ġokhttp 3 . Response Ċ Ċ /** Ċ Ġ* ĠAn Ġinterceptor Ġthat Ġoverrides Ġthe Ġcache Ġheader Ċ Ġ*/ Ċ class ĠPro xer Cache Rewrite Interceptor ( val Ġserver Config : ĠServer Config ) Ġ: ĠInter ceptor Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġintercept ( chain : ĠInter ceptor . Chain ): ĠResponse ? Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= Ġchain . request () ĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= Ġchain . proceed ( request ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( request . url (). host (). contains ( server Config . host ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ&& Ġrequest . method (). equals (" GET ", Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ&& Ġresponse . is Successful ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmax Age Ġ= Ġwhen Ġ( request . url (). toString ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġserver Config . top Access List Url (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġserver Config . top Rating List Url (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġserver Config . top Rating Movie List Url (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġserver Config . air ing List Url () Ġ-> Ġ 1 4 4 0 0 Ġ// Ġ 4 h ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ 1 8 0 0 Ġ// Ġ 3 0 Ġmin ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġresponse . newBuilder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. header (" Cache - Control ", Ġ" max - age =$ max Age ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. remove Header (" Pr agma ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġresponse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }