Changeset 191
- Timestamp:
- 1999-03-08T18:07:42+13:00 (25 years ago)
- Location:
- trunk/gsdl/src/colservr
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gsdl/src/colservr/collectserver.cpp
r186 r191 12 12 /* 13 13 $Log$ 14 Revision 1.3 1999/03/08 05:07:42 rjmcnab 15 Made some alterations to fit with the changes to the comtypes. Added the 16 "filteroptdefault" configuration option to alter default filter options. 17 14 18 Revision 1.2 1999/03/03 23:28:29 sjboddie 15 19 … … 29 33 collectserver::collectserver () { 30 34 configinfo.collection = "null"; 35 36 37 // set up the QueryFilter information 38 FilterDescript_t &queryfilter = filterinfo.filterOptions["QueryFilter"]; 39 queryfilter.filterName = "QueryFilter"; 40 41 // -- onePerQuery StartResults integer 42 FilterOption_t &qfopt1 = queryfilter.filterOptions["StartResults"]; 43 qfopt1.name = "StartResults"; 44 qfopt1.type = FilterOption_t::integert; 45 qfopt1.repeatable = FilterOption_t::onePerQuery; 46 qfopt1.defaultValue = 1; 47 qfopt1.validValues.push_back ("1"); 48 qfopt1.validValues.push_back ("500"); 49 50 // -- onePerQuery EndResults integer 51 FilterOption_t &qfopt2 = queryfilter.filterOptions["EndResults"]; 52 qfopt2.name = "EndResults"; 53 qfopt2.type = FilterOption_t::integert; 54 qfopt2.repeatable = FilterOption_t::onePerQuery; 55 qfopt2.defaultValue = 20; 56 qfopt2.validValues.push_back ("1"); 57 qfopt2.validValues.push_back ("500"); 58 59 // -- onePerQuery QueryType enumerated (boolean, ranked) 60 FilterOption_t &qfopt3 = queryfilter.filterOptions["QueryType"]; 61 qfopt3.name = "QueryType"; 62 qfopt3.type = FilterOption_t::enumeratedt; 63 qfopt3.repeatable = FilterOption_t::onePerQuery; 64 qfopt3.defaultValue = "boolean"; 65 qfopt3.validValues.push_back ("boolean"); 66 qfopt3.validValues.push_back ("ranked"); 67 68 // -- onePerTerm Term string ??? 69 FilterOption_t &qfopt3b = queryfilter.filterOptions["Term"]; 70 qfopt3b.name = "Term"; 71 qfopt3b.type = FilterOption_t::stringt; 72 qfopt3b.repeatable = FilterOption_t::onePerTerm; 73 qfopt3b.defaultValue = ""; 74 75 // -- onePerTerm Casefold boolean 76 FilterOption_t &qfopt4 = queryfilter.filterOptions["Casefold"]; 77 qfopt4.name = "Casefold"; 78 qfopt4.type = FilterOption_t::booleant; 79 qfopt4.repeatable = FilterOption_t::onePerTerm; 80 qfopt4.defaultValue = "on"; 81 qfopt4.validValues.push_back ("on"); 82 qfopt4.validValues.push_back ("off"); 83 84 // -- onePerTerm Stem boolean 85 FilterOption_t &qfopt5 = queryfilter.filterOptions["Stem"]; 86 qfopt5.name = "Stem"; 87 qfopt5.type = FilterOption_t::booleant; 88 qfopt5.repeatable = FilterOption_t::onePerTerm; 89 qfopt5.defaultValue = "on"; 90 qfopt5.validValues.push_back ("on"); 91 qfopt5.validValues.push_back ("off"); 92 93 // -- onePerTerm Index enumerated 94 FilterOption_t &qfopt6 = queryfilter.filterOptions["Index"]; 95 qfopt6.name = "Index"; 96 qfopt6.type = FilterOption_t::enumeratedt; 97 qfopt6.repeatable = FilterOption_t::onePerTerm; 98 qfopt6.defaultValue = ""; 99 100 // -- onePerTerm Subcollection enumerated 101 FilterOption_t &qfopt7 = queryfilter.filterOptions["Subcollection"]; 102 qfopt7.name = "Subcollection"; 103 qfopt7.type = FilterOption_t::enumeratedt; 104 qfopt7.repeatable = FilterOption_t::onePerTerm; 105 qfopt7.defaultValue = ""; 106 107 108 // set up the BrowseFilter information 109 FilterDescript_t &browsefilter = filterinfo.filterOptions["BrowseFilter"]; 110 browsefilter.filterName = "BrowseFilter"; 111 112 // -- onePerQuery StartResults integer 113 FilterOption_t &bfopt1 = browsefilter.filterOptions["StartResults"]; 114 bfopt1.name = "StartResults"; 115 bfopt1.type = FilterOption_t::integert; 116 bfopt1.repeatable = FilterOption_t::onePerQuery; 117 bfopt1.defaultValue = 1; 118 bfopt1.validValues.push_back ("1"); 119 bfopt1.validValues.push_back ("500"); 120 121 // -- onePerQuery EndResults integer 122 FilterOption_t &bfopt2 = browsefilter.filterOptions["EndResults"]; 123 bfopt2.name = "EndResults"; 124 bfopt2.type = FilterOption_t::integert; 125 bfopt2.repeatable = FilterOption_t::onePerQuery; 126 bfopt2.defaultValue = 20; 127 bfopt2.validValues.push_back ("1"); 128 bfopt2.validValues.push_back ("500"); 129 130 // -- onePerQuery ParentNode string ("" will return the browsing available) 131 FilterOption_t &bfopt3 = browsefilter.filterOptions["ParentNode"]; 132 bfopt3.name = "ParentNode"; 133 bfopt3.type = FilterOption_t::stringt; 134 bfopt3.repeatable = FilterOption_t::onePerQuery; 135 bfopt3.defaultValue = ""; 31 136 } 32 137 … … 38 143 // it contains. The configuration should take place just before initialisation. 39 144 void collectserver::configure (const text_t &key, const text_tarray &cfgline) { 40 // configure the collection server 41 if (cfgline.size() >= 1) { 145 if (key == "indexmap") configinfo.indexmap = cfgline; 146 else if (key == "subcollectionmap") configinfo.subcollectionmap = cfgline; 147 else if (key == "languagemap") configinfo.languagemap = cfgline; 148 149 else if (cfgline.size() >= 1) { 42 150 const text_t &value = cfgline[0]; 43 151 if (key == "gsdlhome") configinfo.gsdlhome = value; … … 59 167 else if (key == "numwords") collectinfo.numWords = value.getint(); 60 168 else if (key == "numbytes") collectinfo.numBytes = value.getint(); 169 170 else if ((key == "filteroptdefault") && (cfgline.size() == 2)) { 171 // set this default for each type of filter 172 FilterDescript_tmap::iterator filteropthere = filterinfo.filterOptions.begin(); 173 FilterDescript_tmap::iterator filteroptend = filterinfo.filterOptions.end(); 174 175 while (filteropthere != filteroptend) { 176 // see if this filter has an option with this name 177 FilterOption_tmap &fotm = (*filteropthere).second.filterOptions; 178 if (fotm.find(cfgline[0]) != fotm.end()) { 179 (*(fotm.find(cfgline[0]))).second.defaultValue = cfgline[1]; 180 } 181 182 filteropthere++; 183 } 184 } 61 185 } 62 186 } … … 82 206 void collectserver::get_filteroptions (InfoFilterOptionsResponse_t &response, 83 207 comerror_t &err, ostream &/*logout*/) { 208 84 209 err = noError; 85 210 } … … 88 213 FilterResponse_t &response, 89 214 comerror_t &err, ostream &/*logout*/) { 215 if (request.filterName == "QueryFilter") { 216 // return documents 217 218 219 } else { 220 } 221 222 223 90 224 err = noError; 91 225 } -
trunk/gsdl/src/colservr/collectserver.h
r186 r191 39 39 text_t collection; 40 40 text_t collectdir; 41 text_tarray indexmap; 42 text_tarray subcollectionmap; 43 text_tarray languagemap; 41 44 }; 45 42 46 43 47 class collectserver { … … 45 49 colservrconf configinfo; 46 50 ColInfoResponse_t collectinfo; 51 InfoFilterOptionsResponse_t filterinfo; 47 52 public: 48 53 collectserver ();
Note:
See TracChangeset
for help on using the changeset viewer.