package Ġcom . mobile j azz . har mony . kotlin . android . repository . validator . va stra . str ategies . reach ability Ċ Ċ import Ġandroid . annotation . Suppress Lint Ċ import Ġandroid . content . Context Ċ import Ġandroid . net . Connectivity Manager Ċ import Ġcom . mobile j azz . har mony . kotlin . core . repository . validator . va stra . str ategies . Validation Strategy Ċ import Ġcom . mobile j azz . har mony . kotlin . core . repository . validator . va stra . str ategies . Validation Strategy DataSource Ċ import Ġcom . mobile j azz . har mony . kotlin . core . repository . validator . va stra . str ategies . Validation Strategy Result Ċ Ċ class ĠRe ach ability Validation Strategy ( val Ġcontext : ĠContext ) Ġ: ĠValidation Strategy Ġ{ ĊĊĠ Ġ@ Suppress Lint (" Missing Permission ") ĊĠ Ġoverride Ġfun Ġ< T Ġ: ĠValidation Strategy DataSource > ĠisValid ( t : ĠT ): ĠValidation Strategy Result Ġ{ ĊĠĠĠ Ġval Ġconnectivity Manager Ġ= Ġcontext . getSystem Service ( Context . CONNECT IVITY _ SERVICE ) Ġas ĠConnect ivity Manager ĊĊĠĠĠ Ġval Ġis Connected Ġ= Ġconnectivity Manager . active Network Info ?. isConnected Ġ== Ġtrue ĊĊĠĠĠ Ġreturn Ġif Ġ( isConnected ) ĠValidation Strategy Result . UNKNOWN Ġelse ĠValidation Strategy Result . VALID ĊĠ Ġ} Ċ }