]> uap-core.de Git - note.git/commitdiff
add DavContext add_namespace method main
authorOlaf Wintermann <olaf.wintermann@gmail.com>
Mon, 22 Jun 2026 19:44:59 +0000 (21:44 +0200)
committerOlaf Wintermann <olaf.wintermann@gmail.com>
Mon, 22 Jun 2026 19:44:59 +0000 (21:44 +0200)
dav-rs/src/dav/context.rs

index 509027849ac44143da9f3fb3e8cd7b27b5a28d25..0e00bde46e17899a0d3c1637aead48e5d0284f7d 100644 (file)
@@ -27,6 +27,7 @@
  */
 #![allow(dead_code)]
 
+use std::ffi::{c_char, CString};
 use crate::dav::ffi;
 
 pub struct DavContext {
@@ -39,6 +40,14 @@ impl DavContext {
             DavContext { ptr: dav_context_new() }
         }
     }
+
+    pub fn add_namespace(&self, prefix: &str, namespace: &str) {
+        let prefix_cstr = CString::new(prefix).unwrap();
+        let ns_cstr = CString::new(namespace).unwrap();
+        unsafe {
+            dav_add_namespace(self.ptr, prefix_cstr.as_ptr(), ns_cstr.as_ptr());
+        }
+    }
 }
 
 impl Drop for DavContext {
@@ -65,4 +74,6 @@ unsafe extern "C" {
 
     fn dav_context_ref(ctx: *mut ffi::DavContext);
     fn dav_context_unref(ctx: *mut ffi::DavContext);
+
+    fn dav_add_namespace(ctx: *mut ffi::DavContext, prefix: *const c_char, ns: *const c_char);
 }
\ No newline at end of file