package Ġcom . wn sg ml 9 7 2 . str ada . api . v 1 . product . coffee . domain Ċ Ċ import Ġcom . wn sg ml 9 7 2 . str ada . api . base . Long Jpa Entity Ċ import Ġjavax . persistence . Entity Ċ import Ġjavax . persistence . Id Ċ import Ġjavax . persistence . Column Ċ import Ġjavax . persistence . OneToMany Ċ import Ġjavax . persistence . Cascade Type Ċ Ċ @ Entity Ċ @ SuppressWarnings (" Long Parameter List ") Ċ class ĠC offee ( ĊĊĠĠĠ Ġ@ Id ĊĠĠĠ Ġ@ Column ( length Ġ= Ġ 2 5 ) ĊĠĠĠ Ġoverride Ġvar Ġid : ĠLong ?, ĊĊĠĠĠ Ġ@ Column ( unique Ġ= Ġtrue ) ĊĠĠĠ Ġval Ġname : ĠString , ĊĊĠĠĠ Ġval ĠimageUrl : ĠString , ĊĊĠĠĠ Ġval Ġprice : ĠInt , ĊĊĠĠĠ Ġval Ġdescription : ĠString , ĊĊĠĠĠ Ġval Ġcategory : ĠString , ĊĊĠĠĠ Ġ@ OneToMany ( mapped By Ġ= Ġ" coffee ", Ġorphan Removal Ġ= Ġtrue , Ġcascade Ġ= Ġ[ Cascade Type . PER SIST , ĠCascade Type . MERGE ]) ĊĠĠĠ Ġvar Ġbean C off ees : ĠList < Bean C offee > Ġ= Ġmutable ListOf () Ċ Ċ ) Ġ: ĠLong Jpa Entity () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġequal Properties ( other : ĠAny ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġother Ġis ĠC offee Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ== Ġother . id Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ== Ġother . name Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠimageUrl Ġ== Ġother . imageUrl Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprice Ġ== Ġother . price Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ== Ġother . description Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcategory Ġ== Ġother . category Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbean C off ees Ġ== Ġother . bean C off ees ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġof ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid : ĠLong , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠimageUrl : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprice : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdescription : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcategory : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbean C off ees : ĠList < Bean C offee > ĊĠĠĠĠĠĠĠ Ġ) Ġ= ĠC offee ( id , Ġname , ĠimageUrl , Ġprice , Ġdescription , Ġcategory , Ġbean C off ees ) ĊĠĠĠ Ġ} Ċ } Ċ