package Ġde . r ki . cor on aw arn app . cor on atest . type . rapid ant igen Ċ Ċ import Ġcom . google . gson . annotations . SerializedName Ċ import Ġde . r ki . cor on aw arn app . app config . Cor ona Test Config Ċ import Ġde . r ki . cor on aw arn app . cor on atest . server . Cor ona TestResult Ċ import Ġde . r ki . cor on aw arn app . cor on atest . server . Cor ona TestResult . PC R _ OR _ RAT _ PENDING Ċ import Ġde . r ki . cor on aw arn app . cor on atest . server . Cor ona TestResult . PC R _ OR _ RAT _ RE DE E MED Ċ import Ġde . r ki . cor on aw arn app . cor on atest . server . Cor ona TestResult . RAT _ INVALID Ċ import Ġde . r ki . cor on aw arn app . cor on atest . server . Cor ona TestResult . RAT _ NEGATIVE Ċ import Ġde . r ki . cor on aw arn app . cor on atest . server . Cor ona TestResult . RAT _ PENDING Ċ import Ġde . r ki . cor on aw arn app . cor on atest . server . Cor ona TestResult . RAT _ POSITIVE Ċ import Ġde . r ki . cor on aw arn app . cor on atest . server . Cor ona TestResult . RAT _ RE DE E MED Ċ import Ġde . r ki . cor on aw arn app . cor on atest . type . Cor ona Test Ċ import Ġde . r ki . cor on aw arn app . cor on atest . type . Registration Token Ċ import Ġde . r ki . cor on aw arn app . cor on atest . type . Test Identifier Ċ import Ġorg . joda . time . Instant Ċ import Ġorg . joda . time . LocalDate Ċ Ċ data Ġclass ĠR AC or ona Test ( ĊĠĠĠ Ġ@ SerializedName (" identifier ") ĊĠĠĠ Ġoverride Ġval Ġidentifier : ĠTest Identifier , ĊĊĠĠĠ Ġ@ SerializedName (" registered At ") ĊĠĠĠ Ġoverride Ġval Ġregistered At : ĠInstant , ĊĊĠĠĠ Ġ@ SerializedName (" registration Token ") ĊĠĠĠ Ġoverride Ġval Ġregistration Token : ĠRegistration Token , ĊĊĠĠĠ Ġ@ SerializedName (" is Submitted ") ĊĠĠĠ Ġoverride Ġval Ġis Submitted : ĠBoolean Ġ= Ġfalse , ĊĊĠĠĠ Ġ@ SerializedName (" is View ed ") ĊĠĠĠ Ġoverride Ġval Ġis View ed : ĠBoolean Ġ= Ġfalse , ĊĊĠĠĠ Ġ@ SerializedName (" did Show Badge ") ĊĠĠĠ Ġoverride Ġval Ġdid Show Badge : ĠBoolean Ġ= Ġfalse , ĊĊĠĠĠ Ġ@ SerializedName (" is Advanced Consent Given ") ĊĠĠĠ Ġoverride Ġval Ġis Advanced Consent Given : ĠBoolean Ġ= Ġfalse , ĊĊĠĠĠ Ġ@ SerializedName (" is Result Available Notification Sent ") ĊĠĠĠ Ġoverride Ġval Ġis Result Available Notification Sent : ĠBoolean Ġ= Ġfalse , ĊĊĠĠĠ Ġ@ SerializedName (" test Result Received At ") ĊĠĠĠ Ġoverride Ġval Ġtest Result Received At : ĠInstant ? Ġ= Ġnull , ĊĊĠĠĠ Ġ@ SerializedName (" last UpdatedAt ") ĊĠĠĠ Ġoverride Ġval Ġlast UpdatedAt : ĠInstant , ĊĊĠĠĠ Ġ@ SerializedName (" test Result ") ĊĠĠĠ Ġoverride Ġval Ġtest Result : ĠCor ona TestResult , ĊĊĠĠĠ Ġ@ SerializedName (" tested At ") ĊĠĠĠ Ġval Ġtested At : ĠInstant , ĊĊĠĠĠ Ġ@ SerializedName (" firstName ") ĊĠĠĠ Ġval ĠfirstName : ĠString ? Ġ= Ġnull , ĊĊĠĠĠ Ġ@ SerializedName (" lastName ") ĊĠĠĠ Ġval ĠlastName : ĠString ? Ġ= Ġnull , ĊĊĠĠĠ Ġ@ SerializedName (" date OfBirth ") ĊĠĠĠ Ġval Ġdate OfBirth : ĠLocalDate ? Ġ= Ġnull , ĊĊĠĠĠ Ġ@ SerializedName (" sample Collected At ") ĊĠĠĠ Ġval Ġsample Collected At : ĠInstant ? Ġ= Ġnull , ĊĊĠĠĠ Ġ@ Transient Ġoverride Ġval Ġis Processing : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġ@ Transient Ġoverride Ġval Ġlast Error : ĠThrowable ? Ġ= Ġnull , ĊĊĠĠĠ Ġ@ SerializedName (" is D cc Supported By P oc ") ĊĠĠĠ Ġoverride Ġval Ġis D cc Supported By P oc : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġ@ SerializedName (" is D cc Consent Given ") ĊĠĠĠ Ġoverride Ġval Ġis D cc Consent Given : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġ@ SerializedName (" is D cc DataSet Created ") ĊĠĠĠ Ġoverride Ġval Ġis D cc DataSet Created : ĠBoolean Ġ= Ġfalse , ĊĊĠĠĠ Ġ@ SerializedName (" lab Id ") ĊĠĠĠ Ġoverride Ġval Ġlab Id : ĠString ? Ġ= Ġnull , ĊĊĠĠĠ Ġ@ SerializedName (" qr Code Hash ") ĊĠĠĠ Ġoverride Ġval Ġqr Code Hash : ĠString ? Ġ= Ġnull , ĊĊĠĠĠ Ġ@ SerializedName (" re cyc led At ") ĊĠĠĠ Ġoverride Ġvar Ġre cyc led At : ĠInstant ? Ġ= Ġnull , Ċ ) Ġ: ĠCor ona Test Ġ{ ĊĊĠĠĠ Ġoverride Ġval Ġtype : ĠCor ona Test . Type ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠCor ona Test . Type . R AP ID _ ANT IG EN ĊĊĠĠĠ Ġprivate Ġfun Ġis Out dated ( now UTC : ĠInstant , Ġtest Config : ĠCor ona Test Config ): ĠBoolean Ġ= ĊĠĠĠĠĠĠĠ Ġtest Taken At . plus ( test Config . rat Parameters . hours To De em Test Out dated ). is Before ( now UTC ) ĊĊĠĠĠ Ġfun ĠgetState ( now UTC : ĠInstant , Ġtest Config : ĠCor ona Test Config ) Ġ= Ġwhen Ġ{ ĊĠĠĠĠĠĠĠ Ġis Re cyc led Ġ-> ĠState . REC Y C LED ĊĠĠĠĠĠĠĠ Ġtest Result Ġ== ĠR AT _ NEGATIVE Ġ&& Ġis Out dated ( now UTC , Ġtest Config ) Ġ-> ĠState . OUT D ATED ĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġwhen Ġ( test Result ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠP CR _ OR _ RAT _ PENDING , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR AT _ PENDING Ġ-> ĠState . PENDING ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR AT _ NEGATIVE Ġ-> ĠState . NEGATIVE ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR AT _ POSITIVE Ġ-> ĠState . POSITIVE ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR AT _ INVALID Ġ-> ĠState . INVALID ĊĠĠĠĠĠĠĠĠĠĠĠ ĠP CR _ OR _ RAT _ RE DE E MED , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR AT _ RE DE E MED Ġ-> ĠState . RE DE E MED ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġthrow ĠIllegalArgumentException (" Invalid ĠR AT Ġtest Ġstate Ġ$ test Result ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġtest Taken At : ĠInstant ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġsample Collected At Ġ?: Ġtested At ĊĊĠĠĠ Ġoverride Ġval Ġis Re dee med : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġtest Result Ġ== ĠP CR _ OR _ RAT _ RE DE E MED Ġ|| Ġtest Result Ġ== ĠR AT _ RE DE E MED ĊĊĠĠĠ Ġoverride Ġval Ġis Positive : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġtest Result Ġ== ĠR AT _ POSITIVE ĊĊĠĠĠ Ġoverride Ġval Ġis Negative : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġtest Result Ġ== ĠR AT _ NEGATIVE ĊĊĠĠĠ Ġoverride Ġval Ġis Pending : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġset Of ( PC R _ OR _ RAT _ PENDING , ĠR AT _ PENDING ). contains ( test Result ) ĊĊĠĠĠ Ġoverride Ġval Ġis Submission Allowed : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġis Positive Ġ&& Ġ! is Submitted ĊĊĠĠĠ Ġenum Ġclass ĠState Ġ{ ĊĠĠĠĠĠĠĠ ĠP ENDING , ĊĠĠĠĠĠĠĠ ĠINVALID , ĊĠĠĠĠĠĠĠ ĠPOS ITIVE , ĊĠĠĠĠĠĠĠ ĠNE G ATIVE , ĊĠĠĠĠĠĠĠ ĠRE DE E MED , ĊĠĠĠĠĠĠĠ ĠOUT D ATED , ĊĠĠĠĠĠĠĠ ĠRE CY C LED , ĊĠĠĠ Ġ} Ċ } Ċ