package Ġcom . system kern . kom mon s Ċ Ċ import Ġkotlin . reflect . K Class Ċ import Ġkotlin . reflect . K Property 1 Ċ import Ġkotlin . reflect . full . declared Member Properties Ċ Ċ private Ġval Ġhal Ignore Fields Ġ= Ġset Of ( ĊĠĠĠ Ġ" com . fasterxml . jackson . annotation . JsonIgnore " Ċ ) Ċ Ċ val Ġ< T Ġ: ĠAny > ĠK Class < T >. entity Properties : ĠList < K Property 1 < T , Ġ* >> ĊĠĠĠ Ġget () Ġ= Ġdeclared Member Properties ĊĠĠĠĠĠĠĠ Ġ. filter Not Ġ{ Ġit . name Ġ== Ġ" id " Ġ} ĊĠĠĠĠĠĠĠ Ġ. filter Not Ġ{ Ġit . is Hal Re levant () Ġ} ĊĠĠĠĠĠĠĠ Ġ. filter Not Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . annotations ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġit . annotation Class . qualified Name Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. any Ġ{ Ġit Ġin Ġhal Ignore Fields Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊ Ċ val Ġ< T Ġ: ĠAny > ĠK Class < T >. HAL Re levant Properties : ĠList < K Property 1 < T , Ġ* >> ĊĠĠĠ Ġget () Ġ= Ġdeclared Member Properties ĊĠĠĠĠĠĠĠ Ġ. filter Ġ{ Ġit . name Ġ!= Ġ" id " Ġ} ĊĠĠĠĠĠĠĠ Ġ. filter Ġ{ Ġit . is Hal Re levant () Ġ} ĊĊ Ċ private Ġval Ġhal Re levant Annotation Classes Ġ= Ġset Of ( ĊĠĠĠ Ġ" javax . persistence . One ToOne ", ĊĠĠĠ Ġ" javax . persistence . OneToMany ", ĊĠĠĠ Ġ" javax . persistence . ManyToOne ", ĊĠĠĠ Ġ" javax . persistence . ManyToMany " Ċ ) Ċ Ċ private Ġfun Ġ< T Ġ: ĠAny > ĠK Property 1 < T , Ġ* >. is Hal Re levant (): ĠBoolean Ġ= ĊĠĠĠ Ġ( this . returnType . is Collection Ġ// Ġreturn Ġall Ġcollections ĊĠĠĠĠĠĠĠ Ġ// Ġall Ġentity Ġclasses ĊĠĠĠĠĠĠĠ Ġ|| Ġ( this . returnType . classifier Ġas ĠK Class <* >) ĊĠĠĠĠĠĠĠ Ġ. annotations ĊĠĠĠĠĠĠĠ Ġ. any Ġ{ Ġit . annotation Class . qualified Name Ġ== Ġ" javax . persistence . Entity " Ġ} ĊĠĠĠĠĠĠĠ Ġ// Ġand Ġall Ġclasses Ġthat Ġare Ġannotated Ġcorrectly ĊĠĠĠĠĠĠĠ Ġ|| Ġthis . annotations . any Ġ{ Ġit . annotation Class . qualified Name Ġin Ġhal Re levant Annotation Classes Ġ} ĊĠĠĠĠĠĠĠ Ġ) Ċ