package Ġk ad . messages . re ceiv ers Ċ Ċ import Ġjava . io . IOException Ċ import Ġk ad . K Server Ċ import Ġk ad . messages . Message Ċ import Ġk ad . d ht . KD HT Ċ import Ġk ad . d ht . K Storage Entry Ċ import Ġk ad . node . K Node Ċ import Ġk ad . messages . K Store Message Ċ import Ġk ad . routing . K Routing Table Ċ Ċ /** ĠReceiver Ġfor Ġincoming ĠK Store Message Ġ*/ Ċ class ĠK Store Receiver Ġ( private Ġval Ġserver Ġ: ĠK Server , Ġprivate Ġval Ġrouting Table Ġ: ĠK Routing Table , Ġprivate Ġval Ġd ht Ġ: ĠK D HT ) Ġ: ĠReceiver Ċ { ĊĠĠ Ġoverride Ġfun Ġreceive Ġ( message Ġ: ĠMessage , Ġconversation Id Ġ: ĠInt ) ĊĠĠ Ġ{ ĊĠĠĠĠĠ Ġif Ġ( message Ġis ĠK Store Message ) ĊĠĠĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠĠ Ġ/* ĠInsert Ġthe Ġmessage Ġsender Ġinto Ġthis Ġnode 's Ġrouting Ġtable Ġ*/ ĊĠĠĠĠĠĠĠĠ Ġrouting Table . insert ( Ġmessage . origin Ġ) ĊĊĠĠĠĠĠĠĠĠ Ġtry ĊĠĠĠĠĠĠĠĠ Ġ{ ĠĠ Ġ/* ĠK Store Message Ġthis ĠK Content Ġinto Ġthe ĠD HT Ġ*/ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcontent Ġ= Ġmessage . payload ĊĠĠĠĠĠĠĠĠĠĠĠ Ġd ht . store ( Ġcontent Ġ) ĊĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠ Ġcatch Ġ( e : ĠIOException ) ĊĠĠĠĠĠĠĠĠ Ġ{ println ( Ġ" Unable Ġto Ġstore Ġreceived Ġcontent ; ĠMessage : Ġ" Ġ+ Ġe . message Ġ)} ĊĠĠĠĠĠ Ġ} ĊĠĠ Ġ} Ċ } Ċ