File Applications/DHT/DHTMessage.msg
Contains:
cplusplus {{
#include <OverlayKey.h>
#include <IPvXAddress.h>
#include <BinaryValue.h>
#include <NodeHandle.h>
#include <BaseOverlayMessage_m.h>
#define DHTCALL_L(msg) (BASECALL_L(msg) + KEY_L)
#define PUTCALL_L(msg) (DHTCALL_L(msg) + msg->getValue().size() * sizeof(char) + sizeof(int) + sizeof(bool) * 2 + NODEHANDLE_L)
#define GETCALL_L(msg) (DHTCALL_L(msg) + sizeof(bool))
#define DHTRESPONSE_L(msg) (BASERESPONSE_L(msg) + KEY_L + msg->getValue().size() * sizeof(char))
#define PUTRESPONSE_L(msg) (DHTRESPONSE_L(msg))
#define GETRESPONSE_L(msg) (DHTRESPONSE_L(msg) + sizeof(bool))
}};
class BaseRpcMessage;
class BaseCallMessage;
class BaseResponseMessage;
class noncobject OverlayKey;
class noncobject IPvXAddress;
class noncobject BinaryValue;
class noncobject NodeHandle;
message DHTMessageCall extends BaseCallMessage
{
fields:
OverlayKey key;
};
message DHTPutCall extends DHTMessageCall {
fields:
BinaryValue value;
int ttl;
bool isModifiable;
bool maintenance;
NodeHandle ownerNode;
};
message DHTGetCall extends DHTMessageCall {
fields:
bool isHash;
};
message DHTMessageResponse extends BaseResponseMessage
{
fields:
OverlayKey key;
BinaryValue value;
};
message DHTPutResponse extends DHTMessageResponse {
};
message DHTGetResponse extends DHTMessageResponse {
fields:
bool isHash;
};
message DHTTtlTimer
{
fields:
OverlayKey key;
};