client-api: Update device endpoints to the new API standards

This commit is contained in:
Jonas Platte 2020-08-29 23:13:42 +02:00
parent d1f409bcb6
commit 961d45a581
No known key found for this signature in database
GPG Key ID: 7D261D771D915378
5 changed files with 84 additions and 0 deletions

View File

@ -15,6 +15,7 @@ ruma_api! {
requires_authentication: true,
}
#[non_exhaustive]
request: {
/// The device to delete.
#[ruma_api(path)]
@ -25,7 +26,23 @@ ruma_api! {
pub auth: Option<AuthData<'a>>,
}
#[derive(Default)]
#[non_exhaustive]
response: {}
error: UiaaResponse
}
impl<'a> Request<'a> {
/// Creates a new `Request` with the given device ID.
pub fn new(device_id: &'a DeviceId) -> Self {
Self { device_id, auth: None }
}
}
impl Response {
/// Creates an empty `Response`.
pub fn new() -> Self {
Self
}
}

View File

@ -15,6 +15,7 @@ ruma_api! {
requires_authentication: true,
}
#[non_exhaustive]
request: {
/// List of devices to delete.
pub devices: &'a [DeviceIdBox],
@ -24,7 +25,23 @@ ruma_api! {
pub auth: Option<AuthData<'a>>,
}
#[derive(Default)]
#[non_exhaustive]
response: {}
error: UiaaResponse
}
impl<'a> Request<'a> {
/// Creates a new `Request` with the given device list.
pub fn new(devices: &'a [DeviceIdBox]) -> Self {
Self { devices, auth: None }
}
}
impl Response {
/// Creates an empty `Response`.
pub fn new() -> Self {
Self
}
}

View File

@ -14,12 +14,14 @@ ruma_api! {
requires_authentication: true,
}
#[non_exhaustive]
request: {
/// The device to retrieve.
#[ruma_api(path)]
pub device_id: &'a DeviceId,
}
#[non_exhaustive]
response: {
/// Information about the device.
#[ruma_api(body)]
@ -28,3 +30,17 @@ ruma_api! {
error: crate::Error
}
impl<'a> Request<'a> {
/// Creates a new `Request` with the given device ID.
pub fn new(device_id: &'a DeviceId) -> Self {
Self { device_id }
}
}
impl Response {
/// Creates a new `Response` with the given device.
pub fn new(device: Device) -> Self {
Self { device }
}
}

View File

@ -13,8 +13,11 @@ ruma_api! {
requires_authentication: true,
}
#[derive(Default)]
#[non_exhaustive]
request: {}
#[non_exhaustive]
response: {
/// A list of all registered devices for this user
pub devices: Vec<Device>,
@ -22,3 +25,17 @@ ruma_api! {
error: crate::Error
}
impl Request {
/// Creates an empty `Request`.
pub fn new() -> Self {
Self
}
}
impl Response {
/// Creates a new `Response` with the given devices.
pub fn new(devices: Vec<Device>) -> Self {
Self { devices }
}
}

View File

@ -13,6 +13,7 @@ ruma_api! {
requires_authentication: true,
}
#[non_exhaustive]
request: {
/// The device to update.
#[ruma_api(path)]
@ -24,7 +25,23 @@ ruma_api! {
pub display_name: Option<String>,
}
#[derive(Default)]
#[non_exhaustive]
response: {}
error: crate::Error
}
impl<'a> Request<'a> {
/// Creates a new `Request` with the given device ID.
pub fn new(device_id: &'a DeviceId) -> Self {
Self { device_id, display_name: None }
}
}
impl Response {
/// Creates an empty `Response`.
pub fn new() -> Self {
Self
}
}