X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=example-module%2Ffilter_myfilter.cpp;h=c1310c449ee42d1051950fbb4889cbf9c4b2cce7;hb=75eedebe94c90cf8b72499594fa7f5a12f34c192;hp=2e6c5e5db4ed4e7925165322c110b91d97843786;hpb=50597d2f7d3607e91c94601eb8eb495d73be3eae;p=metaproxy-moved-to-github.git diff --git a/example-module/filter_myfilter.cpp b/example-module/filter_myfilter.cpp index 2e6c5e5..c1310c4 100644 --- a/example-module/filter_myfilter.cpp +++ b/example-module/filter_myfilter.cpp @@ -1,5 +1,5 @@ /* This file is part of Metaproxy. - Copyright (C) 2005-2012 Index Data + Copyright (C) Index Data Metaproxy is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free @@ -30,13 +30,13 @@ namespace metaproxy_1 { class Filter_myfilter: public mp::filter::Base { public: void process(mp::Package & package) const; - void configure(const xmlNode *ptr, bool test_only); + void configure(const xmlNode *ptr, bool test_only, const char *path); }; } } void mp::filter::Filter_myfilter::process(mp::Package & package) const -{ // See src/filter_backend_test.cpp for a more comprehensive +{ // See src/filter_backend_test.cpp for a more comprehensive // example of a dummy Z-server Z_GDU *gdu = package.request().get(); Z_APDU *apdu_res = 0; @@ -49,24 +49,24 @@ void mp::filter::Filter_myfilter::process(mp::Package & package) const return; } Z_APDU *apdu_req = gdu->u.z3950; - if (apdu_req->which == Z_APDU_initRequest) + if (apdu_req->which == Z_APDU_initRequest) { yaz_log(YLOG_LOG, "myfilter::process: Init request"); - apdu_res= odr.create_initResponse( apdu_req, + apdu_res= odr.create_initResponse( apdu_req, YAZ_BIB1_PERMANENT_SYSTEM_ERROR, "Not implemented!"); package.response() = apdu_res; } - else + else { yaz_log(YLOG_LOG, "myfilter::process: Unknown request type"); package.move(); // Send on to other filters } } -void mp::filter::Filter_myfilter::configure(const xmlNode *ptr, bool test_only) +void mp::filter::Filter_myfilter::configure(const xmlNode *ptr, bool test_only, const char *path) { - yaz_log(YLOG_LOG, "myfilter::configure"); - for (ptr = ptr->children; ptr; ptr = ptr->next) + yaz_log(YLOG_LOG, "myfilter::configure called with test_only %d and %s", test_only, path); + for (ptr = ptr->children; ptr; ptr = ptr->next) { if (ptr->type != XML_ELEMENT_NODE) continue; @@ -76,7 +76,7 @@ void mp::filter::Filter_myfilter::configure(const xmlNode *ptr, bool test_only) yaz_log(YLOG_LOG, "myfilter::configure: %s", msg.c_str() ); } - else + else { throw mp::filter::FilterException("Bad element " + std::string((const char *) ptr->name));