summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/framing
Commit message (Collapse)AuthorAgeFilesLines
* Performnace fix, improves 6-8% on high core count machines.Carl C. Trieloff2008-05-292-4/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@661455 13f79535-47bb-0310-9956-ffa450edef68
* Removed obsolete src/qpid/client/SessionImpl.h .cppAlan Conway2008-05-272-275/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@660715 13f79535-47bb-0310-9956-ffa450edef68
* Speculative "fix" for solaris compile errors discussed on qpid-dev.Alan Conway2008-05-261-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@660302 13f79535-47bb-0310-9956-ffa450edef68
* Support for AMQP 0-10 sessions in C++ broker.Alan Conway2008-05-202-0/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@658246 13f79535-47bb-0310-9956-ffa450edef68
* Support for 0-10 sessions, not yet integrated. Misc minor fixes.Alan Conway2008-05-096-16/+28
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@654913 13f79535-47bb-0310-9956-ffa450edef68
* From https://issues.apache.org/jira/browse/QPID-879 contributed by Jonathan ↵Alan Conway2008-05-061-0/+5
| | | | | | | | | Robie. XML exchange allowing messages to be routed base on XQuery expressions. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@653854 13f79535-47bb-0310-9956-ffa450edef68
* QPID-989: fix decode of zero sized mapGordon Sim2008-05-012-14/+16
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@652558 13f79535-47bb-0310-9956-ffa450edef68
* QPID-988 and QPID-989: fixes to framing for final 0-10 specGordon Sim2008-04-302-15/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@652386 13f79535-47bb-0310-9956-ffa450edef68
* QPID-974: allow the size of the queue of outgoing frames to be restrictedGordon Sim2008-04-292-2/+1
| | | | | | | | QPID-544: tidy up configuration (ensuring desired settings are used correctly, allowing tcp socket options to be set etc) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@652083 13f79535-47bb-0310-9956-ffa450edef68
* Session state as per AMQP 0-10 specification.Alan Conway2008-04-271-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@651997 13f79535-47bb-0310-9956-ffa450edef68
* Generate c++ code from final 0-10 specGordon Sim2008-04-2416-162/+40
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@651423 13f79535-47bb-0310-9956-ffa450edef68
* Edits to doxygen comments for user documentation.Alan Conway2008-04-2415-59/+60
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@651321 13f79535-47bb-0310-9956-ffa450edef68
* - SequenceSet implemented on RangeSet.Alan Conway2008-04-232-202/+42
| | | | | | | - Reduced #include dependencides on SequenceSet.h git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@650906 13f79535-47bb-0310-9956-ffa450edef68
* QPID-947: update cpp and python management to 0-10 finalRafael H. Schloming2008-04-221-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@650565 13f79535-47bb-0310-9956-ffa450edef68
* QPID-920: send message-accept for acks (as well as completion)Gordon Sim2008-04-211-11/+15
| | | | | | | | * AckPolicy now maintains a set of transfered messages for cumulative accepts git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@650159 13f79535-47bb-0310-9956-ffa450edef68
* QPID-920: converted c++ client to use final 0-10 protocolGordon Sim2008-04-204-8/+8
| | | | | | | | | | * connection handler converted to using invoker & proxy and updated to final method defs * SessionCore & ExecutionHandler replace by SessionImpl * simplified handling of completion & results, removed handling of responses git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@649915 13f79535-47bb-0310-9956-ffa450edef68
* fix ambiguity problem found on gcc 3.4 compilersKim van der Riet2008-04-181-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@649642 13f79535-47bb-0310-9956-ffa450edef68
* src/tests/python_tests: fix exit status if QPID_NO_PREVIEW is set.Alan Conway2008-04-181-0/+14
| | | | | | | src/qpid/framing/AMQFrame.h: frame header setters/getters with 0-10 naming. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@649339 13f79535-47bb-0310-9956-ffa450edef68
* Patch for improved compatibility with gcc 3.4 and boost 1.33Andrew Stitcher2008-04-171-4/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@649294 13f79535-47bb-0310-9956-ffa450edef68
* Added missing .h files to Makefile.am to fix make rpmbuild.Alan Conway2008-04-172-2/+6
| | | | | | | | Add non-const Message::data() Make log/Statement.h public. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@649130 13f79535-47bb-0310-9956-ffa450edef68
* Fix encoding for sized structs.Alan Conway2008-04-161-9/+13
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@648724 13f79535-47bb-0310-9956-ffa450edef68
* Fix bug in Blob::assign assigning from an empty blob.Alan Conway2008-04-161-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@648706 13f79535-47bb-0310-9956-ffa450edef68
* Fix to struct32 encodingGordon Sim2008-04-141-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@647990 13f79535-47bb-0310-9956-ffa450edef68
* Use the errata file for final 0-10 that has a type code for xids without ↵Gordon Sim2008-04-142-0/+14
| | | | | | | | | | which dtx.recover can't work. Return the indoubt xids as an array of struct32s each of which contains an encoded xid. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@647903 13f79535-47bb-0310-9956-ffa450edef68
* Summary: added 0-10 Array encoding and decoding.Alan Conway2008-04-081-5/+7
| | | | | | | | | | | | | | | | | | | | | | | rubygen/0-10/allsegmenttypes.rb: test header,body and each command and control type. rubygen/0-10/specification.rb: enable packed encoding. src/qpid/amqp_0_10/Array.h: Implemented array and array domains. src/qpid/amqp_0_10/Codec.h: enable litte-endian encoding for pack bits src/qpid/amqp_0_10/Packer.h: use litte-endian encoding for pack bits src/qpid/amqp_0_10/Unit.cpp, .h: setting flags, fix op <<. src/qpid/amqp_0_10/complex_types.cpp, .h: added op << src/qpid/framing/Blob.h: copy-object template constructor. src/tests/amqp_0_10/serialize.cpp: - test Array Minor adjustments for new Array.h: src/qpid/amqp_0_10/Map.cpp src/qpid/amqp_0_10/Map.h src/qpid/amqp_0_10/UnknownType.h src/qpid/amqp_0_10/built_in_types.h src/qpid/amqp_0_10/Body.h git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@646054 13f79535-47bb-0310-9956-ffa450edef68
* Added a dump method to buffer for debugging io (patch from rafaels@redhat.com)Gordon Sim2008-04-012-0/+20
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@643478 13f79535-47bb-0310-9956-ffa450edef68
* Allow zero sized arrays (with no typecode or count)Gordon Sim2008-03-311-17/+19
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@643086 13f79535-47bb-0310-9956-ffa450edef68
* Updated xml fragment to reflect correct types for ↵Gordon Sim2008-03-314-1/+34
| | | | | | | | | | | | connection.start.mechanisms, connection.start.locales and connection.open.capabilities Updated connection handler in line with above changes Added Str16Value to FieldValues Allow Array instances of different types to be created git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@643067 13f79535-47bb-0310-9956-ffa450edef68
* Fix compile errors/warnings with gcc 4.3Alan Conway2008-03-252-2/+2
| | | | | | | | | | | | | - added missing #includes that were implicitly included via old headers. - add namespace-qualifiers to fix "changes meaning of name" warnings. - ./qpid/ptr_map.h:51: fixed "qualified return value" warning. - use const char* for "conversion from string constant to ‘char*’" warnings Applied patch from https://issues.apache.org/jira/browse/QPID-869 remove depenency on boost/date_time, causes warnings with gcc 4.3. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@640806 13f79535-47bb-0310-9956-ffa450edef68
* - Refactored RefCounted class to avoid virtual inheritanceAndrew Stitcher2008-03-241-3/+4
| | | | | | | | | | - Removed extraneous includes and definitions from RefCounted.h - Fixed all the places that were relying on RefCounted.h to be including the intrusive_ptr header file and were assuming that something had imported intrusive_ptr into the qpid namespace git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@640479 13f79535-47bb-0310-9956-ffa450edef68
* Make AsyncIOAcceptor multi-protocol:Alan Conway2008-03-183-2/+8
| | | | | | | | | - ConnectionCodec interface replaces ConnectionInputHandle, moves encoding/decoding out of AsyncIOAcceptor. - ConnectionCodec::Factory replaces ConnectionInputHandlerFactory - Acceptor creates version-specific ConnectionCodec based on protocol header. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@638590 13f79535-47bb-0310-9956-ffa450edef68
* rubygen/0-10/specification.rb:Alan Conway2008-03-111-11/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Simplified enum mapping/encoding. - struct encoding - ostream << operators src/qpid/Serializer.h - free funciton serialization - separate Encoder/Decoder for const correctness - split() to allow separate encode/decode for complex cases. src/qpid/amqp_0_10/Assembly.cpp, Assembly.h: AMQP 0-10 final Assembly src/qpid/amqp_0_10/Codec.h - Replaced enable_if with overloads, simpler & more flexible. src/qpid/amqp_0_10/Frame.cpp, .h: AMQP 0-10 final frame. src/qpid/amqp_0_10/Holder.h: - provide const and non-const apply src/qpid/amqp_0_10/Segment.cpp, .h: AMQP 0-10 final Segment. src/qpid/amqp_0_10/apply.h - ConstApplyFunctor for const apply. src/qpid/amqp_0_10/built_in_types.h - SerializableString encoding src/qpid/amqp_0_10/complex_types.cpp, .h - const application - Action base class for command/control. src/qpid/framing/AMQBody.h - removed 0-10 final changes, moving integration point down the stack. src/qpid/sys/Shlib.h - removed unused and uncompilable (on some compilers) function. src/qpid/sys/Time.h, .cpp - ostream << for AbsTime and Duration. src/tests/Assembly.cpp, Segment.cpp, apply.cpp, serialize.cpp: testing new code. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@636126 13f79535-47bb-0310-9956-ffa450edef68
* Fix message delivery for 0-10 final codepathGordon Sim2008-03-061-2/+6
| | | | | | | | Convert two more python tests to use 0-10 client git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@634229 13f79535-47bb-0310-9956-ffa450edef68
* forked python tests for 0-10 preview and 0-10 finalGordon Sim2008-03-051-1/+4
| | | | | | | | | | | fixed result handling in c++ broker modified testlib in python to allow new 0-10 client to be run as well converted query tests for final 0-10 added python tests for 0-10 final to automated set for c++ broker (most unconverted still) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@634003 13f79535-47bb-0310-9956-ffa450edef68
* Further updates to support final 0-10 specGordon Sim2008-03-043-5/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@633627 13f79535-47bb-0310-9956-ffa450edef68
* Completed holders, visitors and serialization for 0-10 commands and controls.Alan Conway2008-03-041-1/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@633533 13f79535-47bb-0310-9956-ffa450edef68
* Fixed consolidation of ranges and added further validation to tests.Gordon Sim2008-03-031-6/+10
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@633206 13f79535-47bb-0310-9956-ffa450edef68
* A further step to final 0-10 spec.Gordon Sim2008-03-0310-4/+332
| | | | | | | | | The extra.xml fragment adds class defs for connection in session that are in line with latest spec but use old schema. The preview codepath (99-0) remains unaltered. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@633108 13f79535-47bb-0310-9956-ffa450edef68
* - Added Buffer::Iterator so amqp_0_10::Codec can use a BufferAlan Conway2008-02-293-3/+104
| | | | | | | | - AMQBody wrappers for amqp_0_10::Command and Control - Extended AMQBody for CommandBody and ControlBody. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@632490 13f79535-47bb-0310-9956-ffa450edef68
* Template visitors for amqp_0_10::Command, Control and Struct.Alan Conway2008-02-291-1/+1
| | | | | | | Serialization for all str/vbin types. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@632457 13f79535-47bb-0310-9956-ffa450edef68
* QPID-820 from trossCarl C. Trieloff2008-02-282-1/+55
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@632087 13f79535-47bb-0310-9956-ffa450edef68
* Some refactoring of the 0-10 codepath (being migrated to final spec) that ↵Gordon Sim2008-02-252-0/+2
| | | | | | primarily colocates the current session and execution layers to facilitate implementing the new session layer that will now encompass this behaviour. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@630934 13f79535-47bb-0310-9956-ffa450edef68
* Start moving towards final 0-10 spec:Gordon Sim2008-02-211-1/+1
| | | | | | | | | | | | | * marked preview spec as 99-0 to distinguish it from 0-10 (which will now be used for the final version) * modified python client to treat 99-0 as 0-10 for now * modified broker to have two paths for the two different versions: 99-0 uses PreviewConnection, PreviewConnectionHandler and PreviewSessionHandler which are straight copy & pastes of the Connection, ConnectionHandler and SessionHandler now associated with 0-10 (so we can migrate the 0-10 path to the final spec without affecting clients working with the preview version) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@629883 13f79535-47bb-0310-9956-ffa450edef68
* AMQP 0-10 type system:Alan Conway2008-02-212-0/+6
| | | | | | | | | | | | | | | | | | - new lightweight templated serialization framework - all fixed-size built-in types tested and working - all vbin & str types implemented, tests disabled need to fix encoding. The following types remain to be implemented: byte-ranges 2 byte ranges within a 64-bit payload sequence-set 2 ranged set representation map 0xa8 4 a mapping of keys to typed values list 0xa9 4 a series of consecutive type-value pairs array 0xaa 4 a defined length collection of values of a single type struct32 0xab 4 a coded struct with a 32-bit size git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@629679 13f79535-47bb-0310-9956-ffa450edef68
* Broker::connect - connect to URL, return ConnectionInputHandler.Alan Conway2008-02-132-3/+37
| | | | | | | | | | | | | | | | | | M src/qpid/broker/Broker.cpp M src/qpid/broker/Broker.h M src/qpid/sys/Acceptor.h M src/qpid/sys/AsynchIOAcceptor.cpp AMQBody::match - test for matching frames. M src/qpid/framing/AMQBody.cpp M src/qpid/framing/AMQBody.h Url::throwIfEmpty() - test for empty URL. M src/qpid/Url.cpp M src/qpid/Url.h git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@627484 13f79535-47bb-0310-9956-ffa450edef68
* Re-enabled build of cluster code when openais is installed.Alan Conway2008-01-291-6/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@616507 13f79535-47bb-0310-9956-ffa450edef68
* Deleted unused classes, adjusted files that still mention them.Alan Conway2008-01-293-210/+0
| | | | | | | | | | | D src/qpid/framing/ChannelAdapter.cpp D src/qpid/framing/ChannelAdapter.h D src/qpid/framing/HandlerUpdater.h D src/tests/BrokerChannelTest.cpp D src/tests/MockChannel.h git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@616353 13f79535-47bb-0310-9956-ffa450edef68
* Client always collects at least an entire frameset into a single bufferAlan Conway2008-01-102-8/+7
| | | | | | | | | | | | | when possible. Based on patch from Gordon Sim. - Refactor Connector::writebuff, ::send as Connector::Writer - Collect frames up to EOF notifying AIO write. - Encode all available complete framesets into buffers as compactly as possible. - Logging buffer size and frames encoded per write for client and broker. - framing::Buffer added getPosition(), getSize(), default ctor, copy ctor. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@610972 13f79535-47bb-0310-9956-ffa450edef68
* Fixes to max frame size default and fragmentation on broker.Gordon Sim2007-12-181-1/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@605251 13f79535-47bb-0310-9956-ffa450edef68
* * Limited time allowed for reading on a single connection in a single go to 2msAndrew Stitcher2007-12-171-1/+1
| | | | | | | | * Limit bytes allowed to be written on a connection on a single go to the max ever read * Small performance fix for appending to FrameSets git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@604983 13f79535-47bb-0310-9956-ffa450edef68