diff --git a/src/token_granter_wrapper/__init__.py b/src/token_granter_wrapper/__init__.py new file mode 100644 index 0000000..f0df4a1 --- /dev/null +++ b/src/token_granter_wrapper/__init__.py @@ -0,0 +1 @@ +from .token_granter_bindings import * diff --git a/src/token_granter_wrapper/token_granter.pyi b/src/token_granter_wrapper/token_granter.pyi new file mode 100644 index 0000000..944f4ee --- /dev/null +++ b/src/token_granter_wrapper/token_granter.pyi @@ -0,0 +1,6 @@ +class TokenGranter: + def __init__(self, token_granter_url: str) -> None: ... + def grant_access_token( + self, username: str, password: str, temporary: bool + ) -> str: ... + def validate_token(self, username: str, token: str) -> bool: ... diff --git a/src/token_granter_wrapper/token_granter_bindings.cpp b/src/token_granter_wrapper/token_granter_bindings.cpp new file mode 100644 index 0000000..aea2180 --- /dev/null +++ b/src/token_granter_wrapper/token_granter_bindings.cpp @@ -0,0 +1,16 @@ +#include "../../lib/include/token_granter.hpp" + +// EXTERNAL IMPORTS START HERE +#include "../../lib/include/pybind11/include/pybind11/pybind11.h" +#include "../../lib/include/pybind11/include/pybind11/stl.h" +// EXTERNAL IMPORTS END HERE + +namespace py = pybind11; + +PYBIND11_MODULE(token_granter_bindings, m) +{ + py::class_(m, "TokenGranter") + .def(py::init()) + .def("grant_access_token", &TokenGranter::grant_access_token) + .def("validate_token", &TokenGranter::validate_token); +} \ No newline at end of file