aboutsummaryrefslogtreecommitdiff
path: root/src/stable/conduit.cpp (unfollow)
AgeCommit message (Collapse)Author
2018-02-27Added helper methods to Bu::List that were missing.Mike Buland
2018-02-20Json parse fixes.Mike Buland
It didn't handle empty arrays or objects correctly.
2018-02-05Removed some debugging.Mike Buland
2018-02-02UpdateMike Buland
2018-02-02Include real error messages on error?Mike Buland
2018-01-29Changes related to debugging an issue.Mike Buland
It may not have had as much to do with low-level protocol details, and a lot of this can be reverted, but I can't revert it right now. I'll look it over later in the week.
2018-01-24Json stuffMike Buland
2018-01-22Fixed escaped character encoding in Json decoding.Mike Buland
2018-01-22Added an unshare function to Bu::SharedCore.Mike Buland
It simply forces a hard copy, which means the instance you called this on will be independant of any other copies. It's something that should exist, but I'm not sure if unshare is the right name. It's in there now, though.
2018-01-18Made json much more helpful. Fixed array iterators.Mike Buland
2017-10-18I think this version works.Mike Buland
It would be really cool to add more features, like pre-websocket negotiation and callbacks for serving web content, etc.
2017-08-30Json now can take a UtfString as a text component.Mike Buland
It immedaitely converts it to UTF-8 and stores it for now, but later on we may keep it longer, do some better validation, and have encoding options.
2017-08-23Json has a "has" function now.Mike Buland
2017-08-23Added append to the json interface.Mike Buland
It needs a lot more help.
2017-08-23Fixed string constructor.Mike Buland
2017-08-22Doxywarn and api weren't on the ignore list.Mike Buland
2017-08-22Updated json.Mike Buland
It needs a lot more work before it can be used to programattically build complex objects, but it's a great start.
2017-06-07Changed interface slightly, it's easier to create json programmatically.Mike Buland
2017-06-06Updated .gitignore, included terrible json test.Mike Buland
2017-06-06Reading, writing, and accessing loaded data all work.Mike Buland
2017-06-06Hey! This is a much better structure for the Json class.Mike Buland
This new setup is one class for everything, the values are kept in a union, and the instance knows what type it is. The tree of objects is a tree of instantiations of the same class. It's much simpler, it's much easier to write, and maybe even easier to use.
2017-06-05Json?Mike Buland
I'm honestly not sure what kind of interface I want here, or how to organize it. It may just be better to expand the whole thing, spread it out some.
2016-12-29Updated the gitignore.Mike Buland
2016-09-22Included the experimental TeeStream.Mike Buland
This allows you to write data to multiple streams simultaneously and easily. It's pretty much complete, but it feels like it could use more...features somehow.
2016-09-21Tweaks to make building on windows easier.Mike Buland
Also, just building without bzip2 or lzma easier.
2016-01-03Added some more campatibility between Bu::String::iterator andMike Buland
Bu::String::const_iterator that should have always been there.
2015-09-13The cache wasn't accessible from CacheObject decendants that were const.Mike Buland
2015-08-25Added more lock/unlock features to the cache Lockers. That...was a weirdMike Buland
sentence, but it's true. Also, oddly enough, Lockers aren't thread-safe, but they shouldn't ever have to be. Figure that one out!
2015-08-24Added some refcount debugging.Mike Buland
2015-08-24Minor stability/speed improvements, don't try to write null strings to a stream.Mike Buland
2015-08-22Added some handy functions to inject data back into the telnet buffer.Mike Buland
This is great if you want to pre-fill a field, say.
2015-08-22Minor tweak to non-canoninical callback handling. It had the same problem thatMike Buland
the canonical mode had so long ago.
2015-08-16Thread safety update for the previous commit. I left one structure accessMike Buland
unprotected, but fortunately this time I was able to use a read lock which is much lest nasty and persistant.
2015-08-16Fixed a highly essoteric issue. The ReadWriteMutex was locked in write whileMike Buland
syncing changes. That was important so that more changes wouldn't be added while we're writing, but it also meant that in a very particular circumstance where one thread was syncing changes, another was marking changes as having happened, and another locked an object that was being written because it had changes they would all deadlock. This should be fixed now.
2015-08-16Couldn't print out the minimum value for any given signed integer. I fixed theMike Buland
code, but I have a feeling the fix could be much better. I'll look into it later on.
2015-07-20Added a close function. It's nice to be able to close your connection wheneverMike Buland
you want to.
2015-07-14constant cache pointers can now be bound and unbound. It may seem odd, but it'sMike Buland
important, they are references to constant data, weather they should be able to become bound still.
2015-07-07In theory the protocol client shouldn't send a backspace to indicate that aMike Buland
backspace key was pressed, backspace is to move the cursor back one non-destructively, DEL is sent to indicate that a backspace was pressed. I now treat BS as DEL when serving because some clients (windows), send the BS instead of DEL key and everything else just seems to take it. I think there's a way to negotiate that, which I'll look into later.
2015-07-07Fixed the buffering code in ProtocolTelnet to clear the buffer before handingMike Buland
you the next line.
2015-06-16Const chnaged functions. I think this makes sense.Mike Buland
2014-11-28Heh, autoconfig didn't work on systems without /dev/nullMike Buland
(*caugh* windows *caugh*)
2014-11-28Autoconfig now detects libraries that libbu++ can use and generates theMike Buland
appropriate headers. bin2cpp now uses those headers to compile correctly despite having missing filters.
2014-11-28Minor tweak to bin2cpp, it now will now include a comment showing you the nameMike Buland
of each file in the source. It would be nice to have an enumeration or something at some point too.
2014-10-03Tweaked Bu::Uuid loading to pad it's data more cleanly. This will help ensureMike Buland
that we don't get valgrind errors, and is probably safer in general. Added Bu::ArchiveStream. It could use some tweaks, but as a quick hack it's handy to allow systems that can only read/write from/to streams to work with archives.
2014-08-14Neither the Bu::Client class or the Bu::ProtocolTelnet class were threadsafeMike Buland
and both really need to be. Bu::Client is used in multi-threaded applications and has been for a while, so it's a no brainer. It may need a little bit more safety added around variable access, but all the buffers are safe now. ProtocolTelnet has it's own issus, and I should probably rework a few parts of it before too long so we can better accomidate things like line editing.
2014-08-12Minor tweak to the read/write mutex test.Mike Buland
2014-08-08The cache didn't handle syncing objects that were marked changed and thenMike Buland
deleted before the sync could occur properly. They are now ignored during sync.
2014-07-22Deferred erase now works on cache entries. You can erase a cache entry whileMike Buland
it still has active references, and it will be safely cleaned up when the last reference is released.
2014-06-13Telnet really needed a flush function. Now it has one.Mike Buland
We can't be waiting for an update later on to flush our buffers all the time!
2014-03-05Added a method to null/clear a cache pointer, and one to see if it's set at all.Mike Buland