root/gsdl/trunk/runtime-src/src/oaiservr/oaiconfig.h @ 18891

Revision 18891, 2.0 KB (checked in by kjdon, 11 years ago)

new field metadataSet, and getMetadataSet() method

  • 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; // URL of oaiserver.cgi
18  text_t    baseDocRoot; // Base URL for gsdl directory
19  text_tmap fieldMap;    // maps from OAI name to GSDL name
20};
21
22typedef map<text_t, oaicollectconfig *, lttext_t> oaicollectmap;
23
24class oaiconfig : configurable {
25 public:
26  oaiconfig();
27  oaiconfig(text_t &gsdlhome, text_t &gsdlcollect);
28  ~oaiconfig();
29  virtual void  configure(const text_t &key, const text_tarray &cfgline);
30  text_t        getCollectionConfig(const text_t &collection, const text_t &field);
31  text_tarray & getCollectionsList() { return this->collectList; }
32  text_tset & getMetadataSet() { return this->metadataSet; }
33  text_t        getMapping(const text_t &collection, const text_t &collectfield);
34  text_t        getMapping(const text_t &collection, const text_t &collectfield, const text_t &format);
35  text_tmap   * getInformation() { return &this->infoMap; }
36  int           getOAIVersion();
37  int           resumeAfter();
38 private:
39  void configureCollection(const text_t &gsdlhome, const text_t &collection);
40 
41  text_tarray collectList;  // The list of collections to be taken in hand
42  text_tset metadataSet; // The list of metadata sets to be supported
43  text_tmap infoMap;        // Holds the information to be given in the case
44                            // of an OAI identify request
45  oaicollectmap collectMap; // The configuration of collections
46  text_t collection;        // Used to track which collection is being configured
47  text_t oaiVersion;        // The version of OAI running
48  int    resumptionSize;    // The number of items to produce before spitting out a
49                            // resumptionToken
50 
51};
52#endif
Note: See TracBrowser for help on using the browser.