/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 2 0 ĠNational ĠInstitute Ġof ĠInform atics Ċ Ġ* Ċ Ġ* Ġ ĠLicensed Ġto Ġthe ĠApache ĠSoftware ĠFoundation Ġ( ASF ) Ġunder Ġone Ċ Ġ* Ġ Ġor Ġmore Ġcontributor Ġlicense Ġagreements . Ġ ĠSee Ġthe ĠNOTICE Ġfile Ċ Ġ* Ġ Ġdistributed Ġwith Ġthis Ġwork Ġfor Ġadditional Ġinformation Ċ Ġ* Ġ Ġregarding Ġcopyright Ġownership . Ġ ĠThe ĠASF Ġlicenses Ġthis Ġfile Ċ Ġ* Ġ Ġto Ġyou Ġ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 Ġjp . ad . sin et . stream . android . api Ċ Ċ import Ġjp . ad . sin et . stream . android . utils . DateTime Util Ċ import Ġjava . util .* Ċ Ċ open Ġclass ĠMessage < T >( ĊĠĠĠ Ġprivate Ġval Ġm Value : ĠT , ĊĠĠĠ Ġprivate Ġval Ġm Topic : ĠString , ĊĠĠĠ Ġprivate Ġval Ġm Timestamp Micro seconds : ĠLong ?, ĊĠĠĠ Ġprivate Ġval Ġm RawData : ĠAny ? Ċ ) Ġ{ ĊĠĠĠ Ġval Ġpayload : ĠT ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġm Value ĊĊĠĠĠ Ġval Ġtopic : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġm Topic ĊĊĠĠĠ Ġval Ġtimestamp : ĠLong ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġif Ġ( Objects . isNull ( m Timestamp Micro seconds )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠOld Ġmessage Ġformat Ġwhich Ġhas Ġno Ġtimestamp ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġm Timestamp Micro seconds ?. div ( 1 0 0 0 L ) ĊĊĠĠĠ Ġval Ġraw data : ĠAny ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġm RawData ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠdateTime Util Ġ= ĠDateTime Util () ĊĠĠĠĠĠĠĠ Ġreturn Ġ" Message Ġ{ topic (" Ġ+ Ġtopic Ġ+ Ġ"), \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" timestamp (" Ġ+ Ġtimestamp ?. let Ġ{ ĠdateTime Util . to Iso 8 6 0 1 String ( it ) Ġ} Ġ+ Ġ"), \ n " Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" value (" Ġ+ Ġpayload . toString () Ġ+ Ġ") }" ĊĠĠĠ Ġ} Ċ } Ċ