35 #include <ServerFunctionsList.h>
51 string xml_value =
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
56 ServerFunctionsList *sfList = libdap::ServerFunctionsList::TheList();
57 std::multimap<string,libdap::ServerFunction *>::iterator begin = sfList->begin();
58 std::multimap<string,libdap::ServerFunction *>::iterator end = sfList->end();
59 std::multimap<string,libdap::ServerFunction *>::iterator sfit;
61 xml_value +=
"<ds:functions xmlns:ds=\"http://xml.opendap.org/ns/DAP/4.0/dataset-services#\">\n";
62 for(sfit=begin; sfit!=end; sfit++){
63 sf = sfList->getFunction(sfit);
64 if(sf->canOperateOn(dds)){
65 xml_value +=
" <ds:function name=\"" + sf->getName() +
"\""+
66 " version=\"" + sf->getVersion() +
"\""+
67 " type=\"" + sf->getTypeString() +
"\""+
68 " role=\"" + sf->getRole() +
"\""+
70 xml_value +=
" <ds:Description href=\"" + sf->getDocUrl() +
"\">" + sf->getDescriptionString() +
"</ds:Description>\n";
71 xml_value +=
" </ds:function>\n";
74 xml_value +=
"</functions>\n";
76 Str *response =
new Str(
"version");
78 response->set_value(xml_value);
void function_version(int, BaseType *[], DDS &dds, BaseType **btpp)
This server-side function returns version information for the server-side functions.