soup/auto/
websocket_extension.rs1use 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_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 {}