## Class dispatcher

zeep::dispatcher

## Synopsis

    // In header: </home/maarten/projects/libzeep/zeep/dispatcher.hpp>

    class dispatcher {
    public:
      // types
      typedef unspecified handler_list;

      // construct/copy/destruct
      dispatcher(const std::string &, const std::string &);
      ~dispatcher();

      // public member functions
      template<typename Class, typename Function>
        void register_action(const char *, Class *, Function, unspecified);
      xml::element * dispatch(xml::element *);
      xml::element * dispatch(const std::string &, xml::element *);
      xml::element * make_wsdl(const std::string &);
      void set_response_name(const std::string &, const std::string &);

      // public data members
      std::string m_ns;
      std::string m_service;
      handler_list m_handlers;
    };

## Description

### `dispatcher` public construct/copy/destruct

1.     dispatcher(const std::string & ns, const std::string & service);

2.     ~dispatcher();

### `dispatcher` public member functions

1.     template<typename Class, typename Function>
         void register_action(const char * action, Class * server, Function call,
                              unspecified arg);

2.     xml::element * dispatch(xml::element * in);

   Dispatch a SOAP message and return the result.

3.     xml::element * dispatch(const std::string & action, xml::element * in);

   Dispatch a SOAP message and return the result.

4.     xml::element * make_wsdl(const std::string & address);

   Create a WSDL based on the registered actions.

5.     void set_response_name(const std::string & action, const std::string & name);