318{
320 throw mp::XMLError("Empty XML Document");
321
323
325 {
329 throw mp::XMLError("YAZ XML Include failed");
330 }
331
332 mp::xml::check_element_mp(
root,
"metaproxy");
333
335
336 if (mp::xml::is_element_mp(
node,
"dlpath"))
337 {
340 }
341
342 if (mp::xml::check_element_mp(
node,
"start"))
343 {
345 for (attr =
node->properties; attr; attr = attr->next)
346 {
347 std::string
name = std::string((
const char *) attr->name);
348 std::string value;
349
351 value = std::string((const char *)attr->children->content);
352
355 else if (
name ==
"base")
356 ;
357 else
358 throw mp::XMLError("Only attribute route allowed"
359 " in element 'start'. Got " +
name);
360 }
362 }
363
364 if (mp::xml::is_element_mp(
node,
"filters"))
365 {
369
371 }
372
373 mp::xml::check_element_mp(
node,
"routes");
374
377
380 {
381 throw mp::XMLError("Unexpected element "
382 + std::string((
const char *)
node->name));
383 }
384
387 {
388 if (mp::xml::is_element_mp(
node,
"filters"))
390 mp::xml::jump_to_children(
node,
392 else if (mp::xml::is_element_mp(
node,
"routes"))
393 {
397 {
398 if (mp::xml::is_element_mp(
n,
"route"))
399 {
402
403 }
405 }
406 }
408 }
409 std::map<std::string,RouterFleXML::Route>::iterator it;
412 throw mp::XMLError(
"Start route '" +
m_start_route +
"' not found");
413}