soup/auto/
websocket_extension.rs

1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from
3// from gir-files (https://github.com/gtk-rs/gir-files)
4// DO NOT EDIT
5
6use crate::ffi;
7use glib::{prelude::*, translate::*};
8
9glib::wrapper! {
10    #[doc(alias = "SoupWebsocketExtension")]
11    pub struct WebsocketExtension(Object<ffi::SoupWebsocketExtension, ffi::SoupWebsocketExtensionClass>);
12
13    match fn {
14        type_ => || ffi::soup_websocket_extension_get_type(),
15    }
16}
17
18impl WebsocketExtension {
19    pub const NONE: Option<&'static WebsocketExtension> = None;
20}
21
22pub trait WebsocketExtensionExt: IsA<WebsocketExtension> + 'static {
23    //#[doc(alias = "soup_websocket_extension_configure")]
24    //fn configure(&self, connection_type: WebsocketConnectionType, params: /*Unknown conversion*//*Unimplemented*/HashTable TypeId { ns_id: 0, id: 25 }/TypeId { ns_id: 0, id: 25 }) -> Result<(), glib::Error> {
25    //    unsafe { TODO: call ffi:soup_websocket_extension_configure() }
26    //}
27
28    #[doc(alias = "soup_websocket_extension_get_request_params")]
29    #[doc(alias = "get_request_params")]
30    fn request_params(&self) -> Option<glib::GString> {
31        unsafe {
32            from_glib_full(ffi::soup_websocket_extension_get_request_params(
33                self.as_ref().to_glib_none().0,
34            ))
35        }
36    }
37
38    #[doc(alias = "soup_websocket_extension_get_response_params")]
39    #[doc(alias = "get_response_params")]
40    fn response_params(&self) -> Option<glib::GString> {
41        unsafe {
42            from_glib_full(ffi::soup_websocket_extension_get_response_params(
43                self.as_ref().to_glib_none().0,
44            ))
45        }
46    }
47
48    #[doc(alias = "soup_websocket_extension_process_incoming_message")]
49    fn process_incoming_message(
50        &self,
51        header: &mut u8,
52        payload: glib::Bytes,
53    ) -> Result<glib::Bytes, glib::Error> {
54        unsafe {
55            let mut error = std::ptr::null_mut();
56            let ret = ffi::soup_websocket_extension_process_incoming_message(
57                self.as_ref().to_glib_none().0,
58                header,
59                payload.into_glib_ptr(),
60                &mut error,
61            );
62            if error.is_null() {
63                Ok(from_glib_full(ret))
64            } else {
65                Err(from_glib_full(error))
66            }
67        }
68    }
69
70    #[doc(alias = "soup_websocket_extension_process_outgoing_message")]
71    fn process_outgoing_message(
72        &self,
73        header: &mut u8,
74        payload: glib::Bytes,
75    ) -> Result<glib::Bytes, glib::Error> {
76        unsafe {
77            let mut error = std::ptr::null_mut();
78            let ret = ffi::soup_websocket_extension_process_outgoing_message(
79                self.as_ref().to_glib_none().0,
80                header,
81                payload.into_glib_ptr(),
82                &mut error,
83            );
84            if error.is_null() {
85                Ok(from_glib_full(ret))
86            } else {
87                Err(from_glib_full(error))
88            }
89        }
90    }
91}
92
93impl<O: IsA<WebsocketExtension>> WebsocketExtensionExt for O {}