package Ġorg . mit all ast . queue . cr dt . routing Ċ Ċ import Ġorg . mit all ast . queue . common . codec . Codec Ċ import Ġorg . mit all ast . queue . common . codec . Message Ċ import Ġorg . mit all ast . queue . transport . Discovery Node Ċ Ċ class ĠRouting Replica Ġ@ Jvm Over loads Ġconstructor ( ĊĠĠĠ Ġval Ġid : ĠLong , ĊĠĠĠ Ġval Ġmember : ĠDiscovery Node , ĊĠĠĠ Ġval Ġstate : ĠState Ġ= ĠState . OPEN ED ) Ġ: ĠMessage Ġ{ ĊĊĠĠĠ Ġenum Ġclass ĠState Ġ{ ĊĠĠĠĠĠĠĠ ĠOPEN ED , ĠCLO SED ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġis Opened : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġstate Ġ== ĠState . OPEN ED ĊĊĠĠĠ Ġval Ġis Closed : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġstate Ġ== ĠState . CLOSED ĊĊĠĠĠ Ġfun Ġclose (): ĠRouting Replica Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠRouting Replica ( id , Ġmember , ĠState . CLOSED ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcodec Ġ= ĠCodec . of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ:: Routing Replica , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRouting Replica :: id , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRouting Replica :: member , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRouting Replica :: state , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCodec . long Codec (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDiscovery Node . codec , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCodec . enum Codec ( State :: class . java ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ