Peter Johnson
|
1cc148848b
|
StartServer: Take persist_filename as a StringRef.
|
2015-07-19 16:11:56 -07:00 |
|
Peter Johnson
|
ec54904347
|
Tighten up C++ API implementation a bit.
|
2015-07-19 16:09:59 -07:00 |
|
Peter Johnson
|
0a18d2e57b
|
Storage: Make individual entries thread safe.
Also use shared_ptr to refer to entries rather than names.
|
2015-07-19 16:02:21 -07:00 |
|
Peter Johnson
|
c08e2ed8fc
|
ConcurrentQueue: Add size() function.
|
2015-07-18 01:32:21 -07:00 |
|
Peter Johnson
|
2437f06c7f
|
Implement majority of Storage functionality.
It's also now thread-safe.
|
2015-07-18 01:29:51 -07:00 |
|
Peter Johnson
|
9b7e265762
|
Continue implementing client.
|
2015-07-18 01:29:24 -07:00 |
|
Peter Johnson
|
c4a7f6ec9b
|
SavePersistent: Safely save through temp file.
Also change SavePersistent and LoadPersistent to take StringRef.
|
2015-07-18 00:39:08 -07:00 |
|
Peter Johnson
|
d05656b716
|
StorageEntry: Make data public, remove accessors.
Also add id and seq_num fields.
|
2015-07-17 23:41:25 -07:00 |
|
Peter Johnson
|
04789d9ae4
|
SequenceNumber: Add default constructor.
|
2015-07-17 23:41:05 -07:00 |
|
Peter Johnson
|
77acf1f35b
|
Implement Flush() API.
|
2015-07-17 22:40:00 -07:00 |
|
Peter Johnson
|
412e8034de
|
Start implementing client and server.
|
2015-07-17 22:39:36 -07:00 |
|
Peter Johnson
|
a6162ba990
|
NetworkConnection: Trigger threads as necessary in Stop().
|
2015-07-17 22:28:47 -07:00 |
|
Peter Johnson
|
7c51178608
|
TCPAcceptor: Add shutdown() function.
|
2015-07-17 22:28:13 -07:00 |
|
Peter Johnson
|
899c489124
|
TCPStream: Shutdown on close.
|
2015-07-17 22:27:49 -07:00 |
|
Peter Johnson
|
3062e1e740
|
Message: Add data accessors.
|
2015-07-17 19:41:40 -07:00 |
|
Peter Johnson
|
854bfba7c9
|
Value: Set last_change field.
|
2015-07-17 11:16:03 -07:00 |
|
Peter Johnson
|
1d4de091f9
|
Implement nt::Now().
|
2015-07-17 11:15:44 -07:00 |
|
Peter Johnson
|
440916cf2a
|
Fix string terminator in char** output.
|
2015-07-17 10:16:46 -07:00 |
|
Peter Johnson
|
3f4feb2f5c
|
Remove unused variable.
|
2015-07-17 10:16:31 -07:00 |
|
Peter Johnson
|
3025a7e51e
|
Finish C wrappers.
|
2015-07-17 08:47:25 -07:00 |
|
Peter Johnson
|
fcbd2751ba
|
Provide C++ API. Move all classes to "nt" namespace.
The C API is now just simple wrappers around the C++ API.
|
2015-07-17 07:21:07 -07:00 |
|
Peter Johnson
|
56f1481c24
|
Add Dispatcher.
|
2015-07-16 22:55:50 -07:00 |
|
Peter Johnson
|
2ea20b8e81
|
Value: Use NT_Value for internal storage.
This saves a tiny bit of space, but also allows for the NT_Value equivalent
of a Value to be provided with no copy cost (will be useful in the C API).
|
2015-07-16 21:44:37 -07:00 |
|
Peter Johnson
|
9906116d23
|
Don't base Value on NT_Value.
Also use std::string instead of NT_String.
Conversions to/from the internal structures will be done at the interface.
|
2015-07-16 01:38:27 -07:00 |
|
Peter Johnson
|
555725a05b
|
NetworkConnection: Don't explicitly declare default move constructor.
|
2015-07-15 23:29:17 -07:00 |
|
Peter Johnson
|
13cbf4e288
|
Message: use shared_ptr.
NetworkConnection: Own the input and output queues.
|
2015-07-15 21:20:18 -07:00 |
|
Peter Johnson
|
beb92e6cbf
|
NetworkConnection: Ignore duplicate Start() calls.
|
2015-07-14 23:15:30 -07:00 |
|
Peter Johnson
|
4d3fb3c497
|
Storage: Use unique_ptr for instance.
|
2015-07-14 23:15:08 -07:00 |
|
Peter Johnson
|
dbd0c98306
|
Message: implement MsgType constructor.
|
2015-07-14 23:09:56 -07:00 |
|
Peter Johnson
|
53fb702512
|
ConcurrentQueue: Add empty() function.
Change-Id: I563c0343f70a5e4577a6387914d821728cbdd007
|
2015-07-13 22:56:58 -07:00 |
|
Peter Johnson
|
e640708245
|
Start implementing network connectivity.
Change-Id: I82875bfd1c3a086033d22de636d4fb43455ebac3
|
2015-07-13 22:46:41 -07:00 |
|
Peter Johnson
|
8fdaf61ef1
|
Use typedef for GetEntryFunc function pointer.
Change-Id: I58d4be7783656eb712cb32cd17075b4f35886693
|
2015-07-13 22:45:35 -07:00 |
|
Peter Johnson
|
a5713252dc
|
Message::Read(): restructure to read directly into Message.
Change-Id: Ibed3d6d334130c165543fd20987ac5d54b0696eb
|
2015-07-12 23:35:23 -07:00 |
|
Peter Johnson
|
f5ec5e180d
|
Message: don't explicitly convert StringValue.
Change-Id: I2ab104d19e49c1b6d3384134587182ce9b8980f8
|
2015-07-12 23:14:48 -07:00 |
|
Peter Johnson
|
27e0f22c04
|
StringValue: Implictly convert/assign from StringRef.
Change-Id: I87f1e60a3e87db66c6efda824f9e66e919f0a5ea
|
2015-07-12 23:13:43 -07:00 |
|
Peter Johnson
|
2016bcb37a
|
Replace MessageReader and MessageWriter with Message.
Change-Id: I4b23d5a1e0e39dc2487f252a0947f11328e33090
|
2015-07-12 11:24:34 -07:00 |
|
Peter Johnson
|
1760d32019
|
MessageReader: Rename Run() to ReadMessage().
Change-Id: Id6312478e331c4d7f7832e214a57ecf0338e0fcb
|
2015-07-11 09:33:35 -07:00 |
|
Peter Johnson
|
9808c6e62b
|
Remove extra whitespace.
Change-Id: Ibbfe4f4e1b73f9dcf58cb3ae1f34ffa661ef5de0
|
2015-07-11 09:33:35 -07:00 |
|
Peter Johnson
|
071b278b71
|
MessageReader: Use rvalue refs and std::move for handlers.
Change-Id: Iedba512d64ef2674c18a88b9fb720b2a6346b902
|
2015-07-11 09:33:35 -07:00 |
|
Peter Johnson
|
f4673f3123
|
WireDecoder::Read(): Use const char instead of plain char.
Change-Id: I14932ccd174b70fa3f90676c66ac0907e6086238
MessageReader: Use StringRef for callbacks.
|
2015-07-11 09:33:35 -07:00 |
|
Peter Johnson
|
8ee4c36e02
|
MessageReader/MessageWriter: bring in proto_rev().
Change-Id: I7b4ce8a33fe480eb78fb36935de5480bdd1f6f13
|
2015-07-11 09:33:34 -07:00 |
|
Peter Johnson
|
0f876d1989
|
Use StringRef instead of NT_String in various places.
Change-Id: Ibd11e0e1c3157eb8647211797ef8b4aa63f58eb8
|
2015-07-11 09:33:34 -07:00 |
|
Peter Johnson
|
6aa32e8752
|
WireDecoder: Add overloads for StringValue and Value.
Change-Id: Idb41fd16fec8efc8b984c1a9b4d225829d16e344
StringValue: Add comparison operators.
|
2015-07-11 09:33:34 -07:00 |
|
Peter Johnson
|
a55b6565b8
|
WireDecoder ReadDouble: Use ref cast.
Change-Id: I47f23709960d13c005916b5d41d81339302adda5
|
2015-07-11 09:33:34 -07:00 |
|
Peter Johnson
|
c1c0c8d418
|
Optimize Write16/32/Double a bit.
Change-Id: I3d09a9d1b0b33da401312b3389234f7680da6f97
|
2015-07-11 09:33:34 -07:00 |
|
Peter Johnson
|
1634773529
|
Finish WireEncoder tests and fix a bug.
Change-Id: Iddb6003cf2050aebbda4650a5596342288432fde
|
2015-07-11 09:33:34 -07:00 |
|
Peter Johnson
|
9bd4a5ecc3
|
Add proto_rev accessors to WireEncoder and WireDecoder.
Change-Id: I401a0fbc675379c4d5b1dbcc42cbefe0311304f1
|
2015-07-11 09:33:34 -07:00 |
|
Peter Johnson
|
e7ba40dcfd
|
ReadUleb128: Take const buf.
Change-Id: Idd4637790938485a291a20eab4e14f5112c04c8a
|
2015-07-11 09:33:34 -07:00 |
|
Peter Johnson
|
ae42eee8e1
|
More Base64 fixes (correct decode return value).
Change-Id: Ic8f5eb7efd39e1d155a458aa41e430232bee7c7d
|
2015-07-11 09:33:34 -07:00 |
|
Peter Johnson
|
1e9b9b9a3e
|
Base64: Fix a little differently.
Change-Id: I394a1c99e1ecf87b4e236cf0aced5f9429364ace
|
2015-07-11 09:33:34 -07:00 |
|