package Ġnet . cord a . serialization . internal . amqp . custom Ċ Ċ import Ġnet . cord a . core . Keep For DJ VM Ċ import Ġnet . cord a . serialization . internal . amqp . Custom Serializer Ċ import Ġnet . cord a . serialization . internal . amqp . Serializer Factory Ċ import Ġjava . time . Offset Time Ċ import Ġjava . util .* Ċ Ċ /** Ċ Ġ* ĠA Ġserializer Ġfor Ġ[ Optional ] Ġthat Ġuses Ġa Ġproxy Ġobject Ġto Ġwrite Ġout Ġthe Ġvalue Ġstored Ġin Ġthe Ġoptional Ġor Ġ[ Optional . EMPTY ]. Ċ Ġ*/ Ċ class ĠOptional Serializer ( factory : ĠSerializer Factory ) Ġ: ĠCustom Serializer . Proxy < Optional <* >, ĠOptional Serializer . Optional Proxy >( Optional :: class . java , ĠOptional Proxy :: class . java , Ġfactory ) Ġ{ ĊĊĠĠĠ Ġpublic Ġoverride Ġfun Ġto Proxy ( obj : Ġjava . util . Optional < *> ): ĠOptional Proxy Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠOptional Proxy ( obj . orElse ( null )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġpublic Ġoverride Ġfun Ġfrom Proxy ( proxy : ĠOptional Proxy ): ĠOptional < *> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠOptional . of Nullable ( proxy . item ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Keep For DJ VM ĊĠĠĠ Ġdata Ġclass ĠOptional Proxy ( val Ġitem : ĠAny ?) Ċ }