client-api: Move get_capabilities into discovery

This commit is contained in:
Kévin Commaille 2022-03-13 09:56:16 +01:00
parent fbe07e8636
commit a0e05c0a31
No known key found for this signature in database
GPG Key ID: DD507DAE96E8245C
6 changed files with 58 additions and 58 deletions

View File

@ -1,54 +0,0 @@
//! `GET /_matrix/client/*/capabilities`
pub mod v3 {
//! `/v3/` ([spec])
//!
//! [spec]: https://spec.matrix.org/v1.2/client-server-api/#get_matrixclientv3capabilities
use ruma_common::api::ruma_api;
use crate::capabilities::Capabilities;
ruma_api! {
metadata: {
description: "Gets information about the server's supported feature set and other relevant capabilities.",
method: GET,
name: "get_capabilities",
r0_path: "/_matrix/client/r0/capabilities",
stable_path: "/_matrix/client/v3/capabilities",
rate_limited: true,
authentication: AccessToken,
added: 1.0,
}
#[derive(Default)]
request: {}
response: {
/// The capabilities the server supports
pub capabilities: Capabilities,
}
error: crate::Error
}
impl Request {
/// Creates an empty `Request`.
pub fn new() -> Self {
Self {}
}
}
impl Response {
/// Creates a new `Response` with the given capabilities.
pub fn new(capabilities: Capabilities) -> Self {
Self { capabilities }
}
}
impl From<Capabilities> for Response {
fn from(capabilities: Capabilities) -> Self {
Self::new(capabilities)
}
}
}

View File

@ -1,4 +1,5 @@
//! Endpoints that cannot change with new versions of the Matrix specification.
//! Server discovery endpoints.
pub mod discover_homeserver;
pub mod get_capabilities;
pub mod get_supported_versions;

View File

@ -1,4 +1,8 @@
//! Endpoints for querying the server's supported feature set
//! `GET /_matrix/client/*/capabilities`
//!
//! Query the capabilities of a server ([spec])
//!
//! [spec]: https://spec.matrix.org/unstable/client-server-api/#capabilities-negotiation
use std::{borrow::Cow, collections::BTreeMap};
@ -10,8 +14,8 @@ use serde_json::{from_value as from_json_value, to_value as to_json_value, Value
use self::iter::{CapabilitiesIter, CapabilityRef};
use crate::PrivOwnedStr;
pub mod get_capabilities;
pub mod iter;
pub mod v3;
/// Contains information about all the capabilities that the server supports.
#[derive(Clone, Debug, Default, Serialize, Deserialize)]

View File

@ -0,0 +1,50 @@
//! `/v3/` ([spec])
//!
//! [spec]: https://spec.matrix.org/v1.2/client-server-api/#get_matrixclientv3capabilities
use ruma_common::api::ruma_api;
use super::Capabilities;
ruma_api! {
metadata: {
description: "Gets information about the server's supported feature set and other relevant capabilities.",
method: GET,
name: "get_capabilities",
r0_path: "/_matrix/client/r0/capabilities",
stable_path: "/_matrix/client/v3/capabilities",
rate_limited: true,
authentication: AccessToken,
added: 1.0,
}
#[derive(Default)]
request: {}
response: {
/// The capabilities the server supports
pub capabilities: Capabilities,
}
error: crate::Error
}
impl Request {
/// Creates an empty `Request`.
pub fn new() -> Self {
Self {}
}
}
impl Response {
/// Creates a new `Response` with the given capabilities.
pub fn new(capabilities: Capabilities) -> Self {
Self { capabilities }
}
}
impl From<Capabilities> for Response {
fn from(capabilities: Capabilities) -> Self {
Self::new(capabilities)
}
}

View File

@ -12,7 +12,6 @@ pub mod account;
pub mod alias;
pub mod appservice;
pub mod backup;
pub mod capabilities;
pub mod config;
pub mod context;
pub mod device;