32 BundleSet::Factory* BundleSet::__factory__ = NULL;
36 if (__factory__ != NULL)
delete __factory__;
50 if (BundleSet::__factory__ != NULL) {
51 BundleSetImpl *set = BundleSet::__factory__->create(listener,bf_size);
52 if (set != NULL)
return set;
59 BundleSetImpl* BundleSet::__create(
const std::string &name, Listener* listener,
Size bf_size)
61 if (BundleSet::__factory__ != NULL) {
62 BundleSetImpl *set = BundleSet::__factory__->create(name, listener, bf_size);
63 if (set != NULL)
return set;
67 return new MemoryBundleSet(name, listener, bf_size);
71 : _set_impl(
BundleSet::__create(listener, bf_size))
76 : _set_impl(
BundleSet::__create(name, listener, bf_size))
81 : _set_impl(other._set_impl->copy())
91 _set_impl->assign(other._set_impl);
97 _set_impl->add(bundle);
107 return _set_impl->has(bundle);
112 return _set_impl->size();
117 _set_impl->expire(timestamp);
122 return _set_impl->getBloomFilter();
127 return _set_impl->getNotIn(filter);
132 return _set_impl->sync();
137 return _set_impl->getLength();
142 return _set_impl->serialize(stream);
147 return _set_impl->deserialize(stream);
virtual Size size() const
BundleSet & operator=(const BundleSet &)
std::set< dtn::data::MetaBundle > getNotIn(const ibrcommon::BloomFilter &filter) const
std::ostream & operator<<(std::ostream &stream, const BundleID &obj)
std::istream & deserialize(std::istream &stream)
BundleSet(BundleSet::Listener *listener=NULL, Length bf_size=1024)
std::ostream & serialize(std::ostream &stream) const
virtual void add(const dtn::data::MetaBundle &bundle)
static void setFactory(dtn::data::BundleSet::Factory *)
virtual bool has(const dtn::data::BundleID &bundle) const
std::istream & operator>>(std::istream &stream, BundleID &obj)
virtual void expire(const Timestamp timestamp)
const ibrcommon::BloomFilter & getBloomFilter() const