/* Ċ Ġ* ĠĠĠ ĠCopyright Ġ 2 0 2 0 ĠT akt ik ĠSA Ċ Ġ* Ċ Ġ* ĠĠĠ Ġ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 Ġorg . t akt ik . couch db . entity Ċ Ċ import Ġcom . fasterxml . jackson . annotation . JsonIgnore Properties Ċ import Ġcom . fasterxml . jackson . annotation . JsonInclude Ċ import Ġcom . github . po zo . Kotlin Builder Ċ import Ġorg . t akt ik . couch db . C ouch Db Document Ċ Ċ @ JsonInclude ( JsonInclude . Include . NON _ NULL ) Ċ @ JsonIgnore Properties ( ignore Unknown Ġ= Ġtrue ) Ċ @ Kotlin Builder Ċ data Ġclass ĠRep lic ator Document ( ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġid : ĠString , ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġrev : ĠString ?, ĊĠĠĠĠĠĠĠ Ġval Ġsource : ĠString ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġval Ġtarget : ĠString ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġval Ġcreate _ target : ĠBoolean Ġ= Ġfalse , ĊĠĠĠĠĠĠĠ Ġval Ġcontinuous : ĠBoolean Ġ= Ġfalse , ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġrev History : ĠMap < String , ĠString >? Ġ= Ġnull Ċ ) Ġ: ĠCouch Db Document Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġwith Id Rev ( id : ĠString ?, Ġrev : ĠString ) Ġ= Ġid ?. let Ġ{ Ġthis . copy ( id Ġ= Ġit , Ġrev Ġ= Ġrev ) Ġ} Ġ?: Ġthis . copy ( rev Ġ= Ġrev ) Ċ } Ċ