Convert fully to protobuf (was partially JSON) (#402)
* Convert fully to protobuf (was partially JSON) * Handle all floating promises * Remove stringified proto from trace logging It wasn't proving to be very useful.
This commit is contained in:
@@ -9,84 +9,128 @@ enum Module {
|
||||
Trash = 5;
|
||||
}
|
||||
|
||||
// A proxy identified by a unique name like "fs".
|
||||
message NamedProxyMessage {
|
||||
uint64 id = 1;
|
||||
Module module = 2;
|
||||
string method = 3;
|
||||
repeated string args = 4;
|
||||
}
|
||||
message Argument {
|
||||
message ErrorValue {
|
||||
string message = 1;
|
||||
string stack = 2;
|
||||
string code = 3;
|
||||
}
|
||||
|
||||
// A general proxy identified by an ID like WriteStream.
|
||||
message NumberedProxyMessage {
|
||||
uint64 id = 1;
|
||||
uint64 proxy_id = 2;
|
||||
string method = 3;
|
||||
repeated string args = 4;
|
||||
message BufferValue {
|
||||
bytes data = 1;
|
||||
}
|
||||
|
||||
message ObjectValue {
|
||||
map<string, Argument> data = 1;
|
||||
}
|
||||
|
||||
message ArrayValue {
|
||||
repeated Argument data = 1;
|
||||
}
|
||||
|
||||
message ProxyValue {
|
||||
uint64 id = 1;
|
||||
}
|
||||
|
||||
message FunctionValue {
|
||||
uint64 id = 1;
|
||||
}
|
||||
|
||||
message NullValue {}
|
||||
|
||||
message UndefinedValue {}
|
||||
|
||||
oneof msg {
|
||||
ErrorValue error = 1;
|
||||
BufferValue buffer = 2;
|
||||
ObjectValue object = 3;
|
||||
ArrayValue array = 4;
|
||||
ProxyValue proxy = 5;
|
||||
FunctionValue function = 6;
|
||||
NullValue null = 7;
|
||||
UndefinedValue undefined = 8;
|
||||
double number = 9;
|
||||
string string = 10;
|
||||
bool boolean = 11;
|
||||
}
|
||||
}
|
||||
|
||||
// Call a remote method.
|
||||
message MethodMessage {
|
||||
message Method {
|
||||
// A proxy identified by a unique name like "fs".
|
||||
message Named {
|
||||
uint64 id = 1;
|
||||
Module module = 2;
|
||||
string method = 3;
|
||||
repeated Argument args = 4;
|
||||
}
|
||||
|
||||
// A general proxy identified by an ID like WriteStream.
|
||||
message Numbered {
|
||||
uint64 id = 1;
|
||||
uint64 proxy_id = 2;
|
||||
string method = 3;
|
||||
repeated Argument args = 4;
|
||||
}
|
||||
|
||||
// Remote method failed.
|
||||
message Fail {
|
||||
uint64 id = 1;
|
||||
Argument response = 2;
|
||||
}
|
||||
|
||||
// Remote method succeeded.
|
||||
message Success {
|
||||
uint64 id = 1;
|
||||
Argument response = 2;
|
||||
}
|
||||
|
||||
oneof msg {
|
||||
NamedProxyMessage named_proxy = 1;
|
||||
NumberedProxyMessage numbered_proxy = 2;
|
||||
Method.Named named_proxy = 1;
|
||||
Method.Numbered numbered_proxy = 2;
|
||||
}
|
||||
}
|
||||
|
||||
// Call a remote callback.
|
||||
message CallbackMessage {
|
||||
message Callback {
|
||||
// A remote callback for uniquely named proxy.
|
||||
message Named {
|
||||
Module module = 1;
|
||||
uint64 callback_id = 2;
|
||||
repeated Argument args = 3;
|
||||
}
|
||||
|
||||
// A remote callback for a numbered proxy.
|
||||
message Numbered {
|
||||
uint64 proxy_id = 1;
|
||||
uint64 callback_id = 2;
|
||||
repeated Argument args = 3;
|
||||
}
|
||||
|
||||
oneof msg {
|
||||
NamedCallbackMessage named_callback = 1;
|
||||
NumberedCallbackMessage numbered_callback = 2;
|
||||
Callback.Named named_callback = 1;
|
||||
Callback.Numbered numbered_callback = 2;
|
||||
}
|
||||
}
|
||||
|
||||
// A remote callback for uniquely named proxy.
|
||||
message NamedCallbackMessage {
|
||||
Module module = 1;
|
||||
uint64 callback_id = 2;
|
||||
repeated string args = 3;
|
||||
}
|
||||
|
||||
// A remote callback for a numbered proxy.
|
||||
message NumberedCallbackMessage {
|
||||
uint64 proxy_id = 1;
|
||||
uint64 callback_id = 2;
|
||||
repeated string args = 3;
|
||||
}
|
||||
|
||||
// Emit an event.
|
||||
message EventMessage {
|
||||
oneof msg {
|
||||
NamedEventMessage named_event = 1;
|
||||
NumberedEventMessage numbered_event = 2;
|
||||
message Event {
|
||||
// Emit an event on a uniquely named proxy.
|
||||
message Named {
|
||||
Module module = 1;
|
||||
string event = 2;
|
||||
repeated Argument args = 3;
|
||||
}
|
||||
}
|
||||
|
||||
// Emit an event on a uniquely named proxy.
|
||||
message NamedEventMessage {
|
||||
Module module = 1;
|
||||
string event = 2;
|
||||
repeated string args = 3;
|
||||
}
|
||||
// Emit an event on a numbered proxy.
|
||||
message Numbered {
|
||||
uint64 proxy_id = 1;
|
||||
string event = 2;
|
||||
repeated Argument args = 3;
|
||||
}
|
||||
|
||||
// Emit an event on a numbered proxy.
|
||||
message NumberedEventMessage {
|
||||
uint64 proxy_id = 1;
|
||||
string event = 2;
|
||||
repeated string args = 3;
|
||||
}
|
||||
|
||||
// Remote method failed.
|
||||
message FailMessage {
|
||||
uint64 id = 1;
|
||||
string response = 2;
|
||||
}
|
||||
|
||||
// Remote method succeeded.
|
||||
message SuccessMessage {
|
||||
uint64 id = 1;
|
||||
string response = 2;
|
||||
oneof msg {
|
||||
Event.Named named_event = 1;
|
||||
Event.Numbered numbered_event = 2;
|
||||
}
|
||||
}
|
||||
|
||||
message Ping {}
|
||||
|
||||
Reference in New Issue
Block a user