package ĠSky flow . collect . elements . valid ations Ċ Ċ import ĠSky flow . utils . Utils Ċ import Ġandroid . text . TextUtils Ċ import Ġandroid . util . Log Ċ import Ġcom . Sky flow . collect . elements . valid ations . Sky flow ValidationError Ċ import Ġcom . Sky flow . collect . elements . valid ations . Validation Rule Ċ Ċ class ĠSky flow Validate Year ( override Ġvar Ġerror : ĠSky flow ValidationError Ġ= Ġ" INVALID _ EXPI RE _ YEAR ", var Ġformat : String =" yy ") Ġ: ĠValidation Rule , Sky flow Internal Validation Protocol Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġvalidate ( text : ĠString ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif ( text !!. isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ(! TextUtils . is Digits Only ( text )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif (!( format . equals (" yy ") Ġ|| Ġformat . equals (" yyyy "))) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif ( text . length Ġ!= Ġformat . length ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġyear Ġ= Ġtext . toInt () ĊĠĠĠĠĠĠĠ Ġval Ġcurrent Year Ġ= ĠUtils . current Four Digit Year () ĊĠĠĠĠĠĠĠ Ġif ( format . equals (" yy ") Ġ&& Ġ( year <( current Year % 1 0 0 ) Ġ|| Ġyear >(( current Year % 1 0 0 )+ 5 0 ))) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġif ( format . equals (" yyyy ") Ġ&& Ġ( year <( current Year ) Ġ|| Ġyear >( current Year + 5 0 ))) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} Ċ }