root/gsdl/trunk/src/oaiservr/oaiconfig.h @ 14285

Revision 14285, 1.8 KB (checked in by xiao, 13 years ago)

add a member field 'baseURL'

  • Property svn:keywords set to Author Date Id Revision
Line 
1#ifndef _OAICONFIG_H_
2#define _OAICONFIG_H_
3
4#include "cnfgable.h"
5
6#include <map>
7
8// TODO: sort out the members of oaicollectconfig as private/public and add
9//       corresponding set/get functions
10
11class oaicollectconfig {
12 public:
13  oaicollectconfig(const text_t &collectname) { this->collection = collectname; }
14  text_t    collection;
15  text_t    maintainer;
16  text_t    repositoryName;
17  text_t    baseURL;
18  text_tmap fieldMap;    // maps from OAI name to GSDL name
19};
20
21typedef map<text_t, oaicollectconfig *, lttext_t> oaicollectmap;
22
23class oaiconfig : configurable {
24 public:
25  oaiconfig();
26  oaiconfig(text_t &gsdlhome, text_t &gsdlcollect);
27  ~oaiconfig();
28  virtual void  configure(const text_t &key, const text_tarray &cfgline);
29  text_t        getCollectionConfig(const text_t &collection, const text_t &field);
30  text_tarray & getCollectionsList() { return this->collectList; }
31  text_t        getMapping(const text_t &collection, const text_t &collectfield);
32  text_t        getMapping(const text_t &collection, const text_t &collectfield, const text_t &format);
33  text_tmap   * getInformation() { return &this->infoMap; }
34  int           getOAIVersion();
35  int           resumeAfter();
36 private:
37  void configureCollection(const text_t &gsdlhome, const text_t &collection);
38 
39  text_tarray collectList;  // The list of collections to be taken in hand
40  text_tmap infoMap;        // Holds the information to be given in the case
41                            // of an OAI identify request
42  oaicollectmap collectMap; // The configuration of collections
43  text_t collection;        // Used to track which collection is being configured
44  text_t oaiVersion;        // The version of OAI running
45  int    resumptionSize;    // The number of items to produce before spitting out a
46                            // resumptionToken
47};
48#endif
Note: See TracBrowser for help on using the browser.