package Ġcom . t corner . flex validation Ċ Ċ import Ġjava . util . regex . Pattern Ċ Ċ /** Ċ Ġ* Ġvalidates Ġif Ġnumber Ġis Ġa Ġvalid Ġyear , Ġvalidates Ġonly Ċ Ġ* Ġby Ġits Ġlength Ġand Ġcharacters Ċ Ġ* Ċ Ġ* Ġ 2 0 0 0 Ġis Ġtrue Ċ Ġ* Ġ 2 0 0 Ġis Ġfalse Ċ Ġ* Ġ 2 0 0 A Ġis Ġfalse Ċ Ġ*/ Ċ class ĠYear Validation Ġ: ĠValidation () Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠYEAR _ VALIDATION : ĠPattern Ġ= ĠPattern . compile ("^ \\ d { 1 , 1 0 }\ $ ") ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠYEAR _ LENGTH Ġ= Ġ 4 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress (" Magic Number ") ĊĠĠĠ Ġoverride Ġfun ĠisValid ( o : ĠAny ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( o ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠString Ġ-> Ġo . matches ( YEAR _ VALIDATION . to Regex ()) Ġ&& Ġo . length Ġ== ĠYEAR _ LENGTH ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠInt Ġ-> Ġo . toString (). length Ġ== ĠYEAR _ LENGTH ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ