summaryrefslogtreecommitdiff
path: root/cpp/src
Commit message (Collapse)AuthorAgeFilesLines
* Refresh of transitional xml to more closely reflect latest specificationGordon Sim2007-08-2121-155/+312
| | | | | | | | | Initial execution-result support (not yet handled on c++ client) Generation is now all done through the ruby code (it is a little slower at present I'm afraid, will try to speed it up over the next weeks) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@568174 13f79535-47bb-0310-9956-ffa450edef68
* Fixed Blob bug causing test crashes/hangs.Alan Conway2007-08-207-30/+171
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@567755 13f79535-47bb-0310-9956-ffa450edef68
* Undo over-hasty commitAlan Conway2007-08-201-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@567701 13f79535-47bb-0310-9956-ffa450edef68
* get() returns 0 if Blob is empty.Alan Conway2007-08-201-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@567698 13f79535-47bb-0310-9956-ffa450edef68
* If neither --listen nor --publish is specified, do both.Alan Conway2007-08-201-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@567696 13f79535-47bb-0310-9956-ffa450edef68
* r1036@fuschia: andrew | 2007-08-20 01:41:12 +0100Andrew Stitcher2007-08-202-2/+2
| | | | | | | Small fixes to allow code to compile git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@567515 13f79535-47bb-0310-9956-ffa450edef68
* * src/qpid/framing/MethodHolder.hAlan Conway2007-08-185-16/+31
| | | | | | | | | | | | | * src/qpid/framing/Blob.h - add empty() test - get() returns 0 when empty * src/qpid/client/Response.h: assert checks. * src/tests/perftest.cpp: default to listen and publish. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@567221 13f79535-47bb-0310-9956-ffa450edef68
* Fix memory leak in client_test, caused by bug in Blob.h.Alan Conway2007-08-172-10/+13
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@567129 13f79535-47bb-0310-9956-ffa450edef68
* - few more clean-ups for async message store.Carl C. Trieloff2007-08-173-1/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@567119 13f79535-47bb-0310-9956-ffa450edef68
* Fix cluster code for heap reuduction commit.Alan Conway2007-08-173-2/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@567109 13f79535-47bb-0310-9956-ffa450edef68
* * Fixes for code generation.Alan Conway2007-08-172-39/+15
| | | | | | | | | | - Generate make fragments in $(srcdir) to fix VPATH builds. - rubygen: generates its own .mk fragment - rubygen: moved template info from Makefile.am to generated rubygen.mk, fixes circular dependency between Makefile and rubygen.mk - removed unused templates. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@567072 13f79535-47bb-0310-9956-ffa450edef68
* fix for new heap modelCarl C. Trieloff2007-08-171-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@567061 13f79535-47bb-0310-9956-ffa450edef68
* - corrected getMessageCount() for async messagesCarl C. Trieloff2007-08-172-1/+24
| | | | | | | | - added test for async message count. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@567059 13f79535-47bb-0310-9956-ffa450edef68
* - Fix for asyncIO for storeCarl C. Trieloff2007-08-163-5/+18
| | | | | | | | | | | | | | | | | | - Fix for dtx async IO recover - Temp patch for Tx commit ( existing bug uncovered ) - All store tests should be working again Know issues: - If a msg is sent to more than one queue, then the io complete is signaled on the first record written, not the last - Open issues for tx begin then commit with no prepare using duarble msgs and async IO. async complete bit not set on recovery. will be fixed with next commit. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@566846 13f79535-47bb-0310-9956-ffa450edef68
* AMQBodies are no longer allocated on the heap and passed with shared_ptr.Alan Conway2007-08-1684-1088/+824
| | | | | | | | | | | | | | | | | | | | | | | | | | AMQFrame contains a boost::variant of AMQHeaderBody,AMQContentBody, AMQHeatbeatBody, and MethodHolder. A variant is basically a type-safe union, it can allocate any of the types in-place. MethodHolder contains a Blob, a less sophisticated kind of variant, which can contain any of the concrete method body types. Using variants for all the method types causes outrageous compile times and bloated library symbol names. Blob lacks some of the finer features of variant and needs help from generated code. For now both are hidden to the rest of the code base behind AMQFrame and MethodBody classes so if/when we decide to settle on just one "variant" type solution we can do so. This commit touches nearly 100 files, mostly converting method signatures with shared_ptr<FooBody> to FooBody* or FooBody&, and converting stored shared_ptr<AMQBody> to AMQFrame and share_ptr<AMQMethodBody> to MethodHolder. There is one outstanding client memory leak, which I will fix in my next commit. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@566822 13f79535-47bb-0310-9956-ffa450edef68
* Minor cleanup.Gordon Sim2007-08-161-1/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@566601 13f79535-47bb-0310-9956-ffa450edef68
* Bug fix for client shutdown.Gordon Sim2007-08-161-15/+14
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@566527 13f79535-47bb-0310-9956-ffa450edef68
* - async message fix in dequeueCarl C. Trieloff2007-08-152-1/+27
| | | | | | | | - addition of test for async enqueue of messages on BrokerQueue git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@566306 13f79535-47bb-0310-9956-ffa450edef68
* async IO for broker storeCarl C. Trieloff2007-08-1510-12/+122
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@566289 13f79535-47bb-0310-9956-ffa450edef68
* Altered old client channel to use new generated session interface (primarily ↵Gordon Sim2007-08-154-112/+46
| | | | | | to reduce the number of places where method bodies are constructed). git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@566274 13f79535-47bb-0310-9956-ffa450edef68
* * perftest/topic_publisher.cpp, topic_listener.cpp:Alan Conway2007-08-153-0/+312
| | | | | | | | | | | | Combined into a single preftest.cpp executable and moved to src/tests. New perftest: - Supports all client-side options (--host, --port etc.) - Can be run as producer (--listen), consumer (--publish) or both. - --count specifies number of messages (default 500000 as before) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@566211 13f79535-47bb-0310-9956-ffa450edef68
* Add missing files to source lists for distcheck.Alan Conway2007-08-151-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@566119 13f79535-47bb-0310-9956-ffa450edef68
* Add qpid/Msg.h to sourc lists.Alan Conway2007-08-141-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@565950 13f79535-47bb-0310-9956-ffa450edef68
* Fix compile error.Alan Conway2007-08-141-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@565925 13f79535-47bb-0310-9956-ffa450edef68
* Inlined functions that should be inline.Alan Conway2007-08-141-4/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@565924 13f79535-47bb-0310-9956-ffa450edef68
* Simple inline message construction for exceptions.Alan Conway2007-08-141-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@565919 13f79535-47bb-0310-9956-ffa450edef68
* Simple inline message construction for exceptions.Alan Conway2007-08-141-0/+58
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@565918 13f79535-47bb-0310-9956-ffa450edef68
* Removed unused types: RequestId, ResponseId, MethodContext.Alan Conway2007-08-1423-169/+36
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@565821 13f79535-47bb-0310-9956-ffa450edef68
* Deleted following files that are obsolete for 0-10:Alan Conway2007-08-1426-932/+14
| | | | | | | | | | | | | | | | | | | src/qpid/framing/AMQRequestBody.cpp src/qpid/framing/AMQRequestBody.h src/qpid/framing/AMQResponseBody.cpp src/qpid/framing/AMQResponseBody.h src/qpid/framing/Correlator.cpp src/qpid/framing/Correlator.h src/qpid/framing/MethodContext.cpp src/qpid/framing/Requester.cpp src/qpid/framing/Requester.h src/qpid/framing/Responder.cpp src/qpid/framing/Responder.h Made changes to support their deletion. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@565770 13f79535-47bb-0310-9956-ffa450edef68
* Removed some unused files.Gordon Sim2007-08-148-431/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@565764 13f79535-47bb-0310-9956-ffa450edef68
* Undoing change to asyncio as incomplete writes aren't handled.Gordon Sim2007-08-142-76/+27
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@565725 13f79535-47bb-0310-9956-ffa450edef68
* Fix assertions that cause make -DNDEBUG to fail.Alan Conway2007-08-131-4/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@565495 13f79535-47bb-0310-9956-ffa450edef68
* Broker management of message acknowledgements now runs entirely off ↵Gordon Sim2007-08-1025-239/+750
| | | | | | | | | | execution layer. Flow control support. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@564611 13f79535-47bb-0310-9956-ffa450edef68
* Ensure MethodHolderMaxSize.h is built at the right time.Alan Conway2007-08-101-2/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@564605 13f79535-47bb-0310-9956-ffa450edef68
* Update CLEANFILES for distcheck.Alan Conway2007-08-101-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@564452 13f79535-47bb-0310-9956-ffa450edef68
* 2007-08-09 <aconway@redhat.com>Alan Conway2007-08-102-1/+1
| | | | | | | | | | | | * src/qpid/framing/MethodHolder.h, .cpp: Replace boost::variant with Blob. * rubygen/templates/MethodHolder.rb: Generate support files for Blob-based MethodHolder. * src/Makefile.am: generate MethodHolder suppport files. * rubygen/cppgen.rb: Minor fixes/enhancements. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@564447 13f79535-47bb-0310-9956-ffa450edef68
* Revert $(dirname $0) changes, break distclean/rpm builds.Alan Conway2007-08-101-7/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@564446 13f79535-47bb-0310-9956-ffa450edef68
* * src/qpid/framing/MethodHolder.h, .cpp:Alan Conway2007-08-094-85/+63
| | | | | | | | | | | Replace boost::variant with Blob. * rubygen/templates/MethodHolder.rb: Generate support files for Blob-based MethodHolder. * src/Makefile.am: generate MethodHolder suppport files. * rubygen/cppgen.rb: Minor fixes/enhancements. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@564409 13f79535-47bb-0310-9956-ffa450edef68
* Blob: a crude kind of variant that avoids template hell.Alan Conway2007-08-091-0/+134
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@564372 13f79535-47bb-0310-9956-ffa450edef68
* r948@fuschia: andrew | 2007-08-09 18:46:30 +0100Andrew Stitcher2007-08-095-34/+82
| | | | | | | | | | | | | | | | | | | | | r913@fuschia: andrew | 2007-08-07 12:56:10 +0100 Removed extraneous parameter when creating Broker Acceptor r949@fuschia: andrew | 2007-08-09 18:46:30 +0100 r914@fuschia: andrew | 2007-08-07 12:56:55 +0100 Work in Progress: making the client library use the AsynchIO layer r950@fuschia: andrew | 2007-08-09 18:46:30 +0100 r937@fuschia: andrew | 2007-08-09 02:29:41 +0100 Shutdown connection properly r951@fuschia: andrew | 2007-08-09 18:46:31 +0100 r952@fuschia: andrew | 2007-08-09 19:27:03 +0100 Finishing touches to first cut of AsynchIO for client git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@564333 13f79535-47bb-0310-9956-ffa450edef68
* * rubygen/amqpgen.rb: workaround XML namespace problem with ruby 1.8.6.Alan Conway2007-08-091-2/+3
| | | | | | | * src/Makefile.am: fixed so error in rubygen causes build to fail. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@564286 13f79535-47bb-0310-9956-ffa450edef68
* Fixed distcheckGordon Sim2007-08-091-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@564137 13f79535-47bb-0310-9956-ffa450edef68
* Moved Proxy generation to rubygen.Alan Conway2007-08-093-33/+27
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@564051 13f79535-47bb-0310-9956-ffa450edef68
* Removed new Frame & MethodHolder classes from build.Alan Conway2007-08-082-11/+1
| | | | | | | Excessive compilation time. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@563975 13f79535-47bb-0310-9956-ffa450edef68
* NullMessageStore log levels changed from warning to info.Alan Conway2007-08-082-12/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@563880 13f79535-47bb-0310-9956-ffa450edef68
* * src/tests/start_broker: Pass script parameters to broker.Alan Conway2007-08-085-8/+55
| | | | | | | | | | | | | * src/qpid/sys/Serializer.cpp: Corrected log levels. * src/tests/.valgrind.supp-default: Suppress probably benign leaks and uninit param errors from asynch IO code. Need verification they are beningn. * src/qpid/sys/AsynchIOAcceptor.cpp(run): Fix memory leak. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@563879 13f79535-47bb-0310-9956-ffa450edef68
* Fixed include guard.Alan Conway2007-08-081-3/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@563826 13f79535-47bb-0310-9956-ffa450edef68
* * Summary: new Frame type to replace AMQFrame. Instead of holdingAlan Conway2007-08-0710-6/+569
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a shared_ptr to a heap-allocated AMQBody subclass, it holds the body in-line in a boost::variant of all the concrete AMQBody subclasses. Actually there are nested variants, the compiler does not cope well with a single variant of 130-some types. Creating, encoding and decoding a local Frame doess 0 heap allocation apart from that done by the concrete AMQBody::encode/decode - e.g. method bodies with std::string fields. for method bodies All variants contain type boost::blank. This guarantees 0 heap alloocation by the variant and represents the "uninitialized" state. variant.h provides NoBlankVisitor to help write visitors for variants containing blank. * src/qpid/framing/MethodHolder.h, .cpp: Holds a variant containing a method body. * src/qpid/framing/Frame.h, .cpp: New Frame holds body in a variant rather than via heap allocation. * src/qpid/framing/variant.h: Utilities for using boost::variant. * src/qpid/framing/amqp_types.h: Added FrameType typedef. * src/qpid/framing/AMQMethodBody.h: Friends with MethodHolder. * src/Makefile.am: - Improved ruby generation rule. - Run method_variants template. - Added new source files - Pre-compiled header rule for method_variants.h * rubygen/templates/method_variants.rb: Generate variants to hold methods of each class, and MethodVariant to hold all the class variants. * rubygen/cppgen.rb: variant, tuple methods. * MethodBodyClass.h.tmpl: Added default constructor to method bodies. * amqpgen.rb (AmqpRoot::merge): fix bug in merge. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@563683 13f79535-47bb-0310-9956-ffa450edef68
* Send flush after get request. Fixes perftest.Gordon Sim2007-08-062-1/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@563163 13f79535-47bb-0310-9956-ffa450edef68
* Channel dispatcher needs ti be joined on destruction.Gordon Sim2007-08-063-22/+12
| | | | | | | | Also minor cleanup: removed redundant method and friend declarations. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@563136 13f79535-47bb-0310-9956-ffa450edef68