00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef _LazyLoadedContent_
00022 #define _LazyLoadedContent_
00023
00024 #include "Content.h"
00025 #include "MessageStore.h"
00026 #include "BrokerMessageBase.h"
00027
00028 namespace qpid {
00029 namespace broker {
00030 class LazyLoadedContent : public Content{
00031 MessageStore* const store;
00032 Message* const msg;
00033 const uint64_t expectedSize;
00034 public:
00035 LazyLoadedContent(
00036 MessageStore* const store, Message* const msg,
00037 uint64_t expectedSize);
00038 ~LazyLoadedContent();
00039 void add(qpid::framing::AMQContentBody::shared_ptr data);
00040 uint32_t size();
00041 void send(
00042 framing::ChannelAdapter&,
00043 uint32_t framesize);
00044 void encode(qpid::framing::Buffer& buffer);
00045 };
00046 }
00047 }
00048
00049
00050 #endif