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

Last change on this file since 18891 was 18891, checked in by kjdon, 15 years ago

new field metadataSet, and getMetadataSet() method

  • Property svn:keywords set to Author Date Id Revision
File size: 2.0 KB
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 repository browser.