void export_authentication()

in src/authentication.cc [28:61]


void export_authentication(py::module_& m) {
    using namespace py;

    class_<Authentication, std::shared_ptr<Authentication>>(m, "Authentication")
        .def("getAuthMethodName", &Authentication::getAuthMethodName)
        .def("getAuthData", &Authentication::getAuthData)
        .def_static("create", static_cast<AuthenticationPtr (*)(const std::string&, const std::string&)>(
                                  &AuthFactory::create));

    class_<AuthTls, Authentication, std::shared_ptr<AuthTls>>(m, "AuthenticationTLS")
        .def(init<AuthenticationDataPtr&>())
        .def_static("create", static_cast<AuthenticationPtr (*)(const std::string&, const std::string&)>(
                                  &AuthTls::create));

    class_<AuthToken, Authentication, std::shared_ptr<AuthToken>>(m, "AuthenticationToken")
        .def(init<AuthenticationDataPtr&>())
        .def_static("create", static_cast<AuthenticationPtr (*)(const TokenSupplier&)>(&AuthToken::create))
        .def_static("create", static_cast<AuthenticationPtr (*)(const std::string&)>(&AuthToken::create));

    class_<AuthAthenz, Authentication, std::shared_ptr<AuthAthenz>>(m, "AuthenticationAthenz")
        .def(init<AuthenticationDataPtr&>())
        .def_static("create", static_cast<AuthenticationPtr (*)(const std::string&)>(&AuthAthenz::create));

    class_<AuthOauth2, Authentication, std::shared_ptr<AuthOauth2>>(m, "AuthenticationOauth2")
        .def(init<ParamMap&>())
        .def_static("create", static_cast<AuthenticationPtr (*)(const std::string&)>(&AuthOauth2::create));

    class_<AuthBasic, Authentication, std::shared_ptr<AuthBasic>>(m, "AuthenticationBasic")
        .def(init<AuthenticationDataPtr&>())
        .def_static("create", static_cast<AuthenticationPtr (*)(
                                  const std::string& /* username */, const std::string& /* password */,
                                  const std::string& /* method */)>(&AuthBasic::create))
        .def_static("create", static_cast<AuthenticationPtr (*)(const std::string&)>(&AuthBasic::create));
}