/* Ċ Ġ* Ġ ĠCopyright Ġ 2 0 1 9 ĠArc us ĠProject . Ċ Ġ* Ċ Ġ* Ġ ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġ Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* Ġ ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* Ġ ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġ Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* Ġ ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* Ġ ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġ Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġar cus . app . pair ing . hub Ċ Ċ import Ġandroid . support . annotation . String Res Ċ import Ġandroid . text . Editable Ċ import Ġandroid . text . Input Filter Ċ import Ġandroid . text . Text Watcher Ċ import Ġar cus . app . R ĊĊ Ċ class ĠHub Id Input Text Watcher Ġ: ĠText Watcher Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġstarting Length Ġ= Ġ 0 ĊĠĠĠ Ġvar ĠisValid Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġprivate Ġset ĊĊĠĠĠ Ġ@ String Res ĊĠĠĠ Ġvar Ġerror Res Ġ= Ġ ĠR . string . v 3 _ hub _ step _ 3 _ error _ text ĊĠĠĠĠĠĠĠ Ġprivate Ġset ĊĊĠĠĠ Ġoverride Ġfun Ġafter TextChanged ( s : ĠEdit able ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġs ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it . length Ġ== Ġ 3 Ġ&& Ġstarting Length Ġ< Ġit . length ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . append ("- ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠisValid Ġ= Ġs ?. matches ( HUB _ REGEX ) Ġ== Ġtrue ĊĠĠĠĠĠĠĠ Ġif Ġ(! isValid ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġerror Res Ġ= Ġif Ġ( s . isNull Or Blank ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . v 3 _ hub _ step _ 3 _ error _ text ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . hub _ id _ wrong _ format ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġbefore TextChanged ( s : ĠCharSequence ?, Ġstart : ĠInt , Ġcount : ĠInt , Ġafter : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġs ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstarting Length Ġ= Ġit . length ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġoverride Ġfun Ġon TextChanged ( s : ĠCharSequence ?, Ġstart : ĠInt , Ġbefore : ĠInt , Ġcount : ĠInt ) Ġ{ Ġ/* ĠN op ĠN op ĠN op Ġ*/ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠH UB _ REGEX Ġ= Ġ"^ [ a - zA - Z ]{ 3 , }\\ - \\ d { 4 , }". to Regex () ĊĠĠĠ Ġ} Ċ } Ċ Ċ val Ġhub Id Input Fil ers Ġ= ĠarrayOf ( ĊĠĠĠ ĠInput Filter . Length Filter ( 8 ), ĊĠĠĠ ĠInput Filter . All Caps () Ċ )