ONE源代码分析——core4之Message

Message由节点产生,并在节点之间进行传递。

Message类:

数据域:

static final String TTL_SECONDS_S

DTNHost from:源节点

DTNHost to:目的节点

String id

int size:message的大小

List<DTNHost> path:message所经过的节点

static int nextUniqueId:下一的id

int uniqueId:本message的唯一标示符

double timeReceived:接收时间

double timeCreated:创建时间

int initTtl

int responseSize:如果对于该message要求一个回应,该对象表示回应message大小

Message requestMsg:回应Message

Map<String, Object> properties:普通message属性容器。所有存储的值都是不可变的。

String appID:创建message的app的ID


函数域:

构造函数Message(DTNHost from, DYNHost to, String id, int size)创建一个Message。将from节点加入path中。


void addProperty(String key, Object value)将value对象存入代表该message的key对应的值中。


void updateProperty(String key, Object value)将新的键值对应组加入属性列表。


MessageListener类:

这个接口类用于想要被通知关于节点间message信息的类。

void newMessage(Message m)当一个新的message创建的时候,调用该函数。


void messageTransferStarted(Message m, DTNHost from, DTNHost to)当一个message转发开始的时候调用该函数。


void messageDeleted(Message m, DTNHost where, boolean droppped)当一个message被删除时,调用该函数。where参数表示message在哪个节点被删除,dropped为真表示message是被丢掉的,为假表示message是被remove的。


void messageTransferAborted(Message m, DTNHost from, DTNHost to)当一个message的传递在结束前被终止时,调用该函数。参数to表示目前该message身在何处。


void messageTransferred(Message m, DTNHost from, DTNHost to, boolean firstDelivery)当一个message从一个节点成功传递到另一个节点时,调用该函数。参数firstDelivery表示目标节点是message的最终目的地并且第一次接收到该message。








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ymaym

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值