package Ġcom . rag d roid . api ĊĊ Ċ import Ġjavax . inject . Singleton Ċ Ċ import Ġdagger . Module Ċ import Ġcom . rag d roid . api . d agger . Api Module Ċ import Ġdagger . Provides Ċ import Ġokhttp 3 . mock webserver . Dispatcher Ċ import Ġokhttp 3 . mock webserver . Mock WebServer Ċ Ċ /** Ċ Ġ* ĠContains Ġthe Ġ` Mock WebServer ` Ġlogic Ġand Ġis Ġextending Ġby Ġthe Ġ` local ` Ġbuild Ġvariant Ġmodule Ġand Ġis Ċ Ġ* Ġalso Ġextended Ġby Ġ` test ` Ġmodule . ĠLocal Api Module Ġis Ġresponsible Ġfor Ġproviding Ġthe Ġappropriate ĠURL Ċ Ġ* Ġon Ġwhich ĠMock WebServer Ġruns . ĠIt Ġalso Ġinitializes Ġthe Ġ` Local Response Dispatcher ` Ġwhich Ġselects Ġthe Ċ Ġ* Ġappropriate Ġ` json ` Ġfile Ġfrom Ġthe Ġ` local - resources ` Ġmodule . Ċ Ġ* ĠCreated Ġby Ġgar ima - f ue led Ġon Ġ 3 1 / 0 3 / 1 7 . Ċ Ġ*/ Ċ @ Module Ċ abstract Ġclass ĠLocal Api Module Ġ: ĠApi Module () Ġ{ ĊĊĠĠĠ Ġprotected Ġval Ġmock WebServer : ĠMock WebServer Ġ= ĠMock WebServer () ĊĠĠĠ Ġprivate Ġval Ġresponse Dispatcher : ĠLocal Response Dispatcher Ġ= ĠLocal Response Dispatcher () ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġmock WebServer . set Dispatcher ( response Dispatcher ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġmock Api Url (): ĠString ? Ġ= Ġmock WebServer . url ("/ "). toString () ĊĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġ@ Singleton ĊĠĠĠ Ġfun Ġprovide Default Mock WebServer (): ĠMock WebServer Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmock WebServer ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġval Ġtest Dispatcher : ĠDispatcher ĊĠĠĠĠĠĠĠ Ġ@ Provides ĊĠĠĠĠĠĠĠ Ġ@ Singleton ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġresponse Dispatcher Ċ } Ċ