jacquard_api/network_slices/slice/
update_o_auth_client.rs1#[allow(unused_imports)]
9use alloc::collections::BTreeMap;
10
11#[allow(unused_imports)]
12use core::marker::PhantomData;
13use jacquard_common::CowStr;
14use jacquard_common::types::string::UriValue;
15use jacquard_derive::{IntoStatic, lexicon};
16use serde::{Serialize, Deserialize};
17use crate::network_slices::slice::get_o_auth_clients::OauthClientDetails;
18
19#[lexicon]
20#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, IntoStatic, Default)]
21#[serde(rename_all = "camelCase")]
22pub struct UpdateOAuthClient<'a> {
23 #[serde(borrow)]
25 pub client_id: CowStr<'a>,
26 #[serde(skip_serializing_if = "Option::is_none")]
28 #[serde(borrow)]
29 pub client_name: Option<CowStr<'a>>,
30 #[serde(skip_serializing_if = "Option::is_none")]
32 #[serde(borrow)]
33 pub client_uri: Option<UriValue<'a>>,
34 #[serde(skip_serializing_if = "Option::is_none")]
36 #[serde(borrow)]
37 pub logo_uri: Option<UriValue<'a>>,
38 #[serde(skip_serializing_if = "Option::is_none")]
40 #[serde(borrow)]
41 pub policy_uri: Option<UriValue<'a>>,
42 #[serde(skip_serializing_if = "Option::is_none")]
44 #[serde(borrow)]
45 pub redirect_uris: Option<Vec<UriValue<'a>>>,
46 #[serde(skip_serializing_if = "Option::is_none")]
48 #[serde(borrow)]
49 pub scope: Option<CowStr<'a>>,
50 #[serde(skip_serializing_if = "Option::is_none")]
52 #[serde(borrow)]
53 pub tos_uri: Option<UriValue<'a>>,
54}
55
56
57#[lexicon]
58#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, IntoStatic)]
59#[serde(rename_all = "camelCase")]
60pub struct UpdateOAuthClientOutput<'a> {
61 #[serde(flatten)]
62 #[serde(borrow)]
63 pub value: OauthClientDetails<'a>,
64}
65
66pub struct UpdateOAuthClientResponse;
68impl jacquard_common::xrpc::XrpcResp for UpdateOAuthClientResponse {
69 const NSID: &'static str = "network.slices.slice.updateOAuthClient";
70 const ENCODING: &'static str = "application/json";
71 type Output<'de> = UpdateOAuthClientOutput<'de>;
72 type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
73}
74
75impl<'a> jacquard_common::xrpc::XrpcRequest for UpdateOAuthClient<'a> {
76 const NSID: &'static str = "network.slices.slice.updateOAuthClient";
77 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
78 "application/json",
79 );
80 type Response = UpdateOAuthClientResponse;
81}
82
83pub struct UpdateOAuthClientRequest;
85impl jacquard_common::xrpc::XrpcEndpoint for UpdateOAuthClientRequest {
86 const PATH: &'static str = "/xrpc/network.slices.slice.updateOAuthClient";
87 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
88 "application/json",
89 );
90 type Request<'de> = UpdateOAuthClient<'de>;
91 type Response = UpdateOAuthClientResponse;
92}