pdk_script/bindings/
authentication.rs1use crate::Value;
6
7pub trait AuthenticationBinding {
9 fn client_id(&self) -> Option<String>;
11
12 fn client_name(&self) -> Option<String>;
14
15 fn principal(&self) -> Option<String>;
17
18 fn properties(&self) -> Option<Value>;
20}
21
22impl<K: AuthenticationBinding> AuthenticationBinding for Option<K> {
23 fn client_id(&self) -> Option<String> {
24 self.as_ref().and_then(K::client_id)
25 }
26
27 fn client_name(&self) -> Option<String> {
28 self.as_ref().and_then(K::client_name)
29 }
30
31 fn principal(&self) -> Option<String> {
32 self.as_ref().and_then(K::principal)
33 }
34
35 fn properties(&self) -> Option<Value> {
36 self.as_ref().and_then(K::properties)
37 }
38}