#ifndef _ABSTRACTLISTACTION_H_ #define _ABSTRACTLISTACTION_H_ #include "oaiaction.h" #include "resumptiontoken.h" class abstractlistaction : public oaiaction { public: abstractlistaction(const text_t &name) : oaiaction(name) { } virtual bool output_document(ostream &output, recptproto *protocol, const text_t &collection, const text_t &OID, const text_t &metadataPrefix) = 0; virtual bool output_content(ostream &output, recptproto *protocol, oaiargs ¶ms); virtual bool output_content_for_set(ostream &output, recptproto *protocol, oaiargs ¶ms, text_t collection_name, text_t gsdl_classifier_OID, text_t set_name); protected: int output_docs; bool check_classifier(recptproto *protocol, const text_t &collection, const text_t &set_name); bool in_date_range(ostream &output, recptproto *protocol, oaiargs ¶ms, text_t& collection, text_t oai_OID, text_t from, text_t until); }; #endif