package Ġcom . wang . kotlin demo . clazz Ċ Ċ import Ġcom . wang . kotlin demo . function . getLogger Ċ import Ġkotlin . properties . ReadWrite Property Ċ import Ġkotlin . reflect . K Property Ċ Ċ /** Ċ Ġ* ĠCreated Ġon Ġ 2 0 1 7 / 6 / 2 . Ċ Ġ* ĠAuthor : Ġw ang Ċ Ġ*/ Ċ class ĠDelegate Ġ: ĠRead Write Property < Any ?, ĠString > Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠgetValue ( this Ref : ĠAny ?, Ġproperty : ĠK Property < *> ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ"$ this Ref , Ġthank Ġyou Ġfor Ġdeleg ating Ġ'${ property . name }' Ġto Ġme !" ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠsetValue ( this Ref : ĠAny ?, Ġproperty : ĠK Property <* >, Ġvalue : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġget Logger (). invoke ("$ value Ġhas Ġbeen Ġassigned Ġto Ġ'${ property . name }' Ġin Ġ$ this Ref .") ĊĠĠĠ Ġ} Ċ }