From a9aa52e6a8aea4fb6db05ce697df684583f3e065 Mon Sep 17 00:00:00 2001 From: Wolfgang Bumiller Date: Tue, 3 Dec 2019 13:40:37 +0100 Subject: [PATCH] test another api macro use The api macro now supports hyphens in parameter names and referencing externally defined `Schema`s, so here's an example. Signed-off-by: Wolfgang Bumiller --- src/api2/backup.rs | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/src/api2/backup.rs b/src/api2/backup.rs index 13463716..abe247b9 100644 --- a/src/api2/backup.rs +++ b/src/api2/backup.rs @@ -6,7 +6,7 @@ use hyper::{Body, Response, StatusCode}; use serde_json::{json, Value}; use proxmox::{sortable, identity}; -use proxmox::api::list_subdirs_api_method; +use proxmox::api::{api, list_subdirs_api_method}; use proxmox::api::{ApiFuture, ApiHandler, ApiMethod, Router, RpcEnvironment}; use proxmox::api::router::SubdirMap; use proxmox::api::schema::*; @@ -216,20 +216,18 @@ pub const BACKUP_API_ROUTER: Router = Router::new() .get(&list_subdirs_api_method!(BACKUP_API_SUBDIRS)) .subdirs(BACKUP_API_SUBDIRS); -#[sortable] -pub const API_METHOD_CREATE_DYNAMIC_INDEX: ApiMethod = ApiMethod::new( - &ApiHandler::Sync(&create_dynamic_index), - &ObjectSchema::new( - "Create dynamic chunk index file.", - &sorted!([ - ("archive-name", false, &crate::api2::types::BACKUP_ARCHIVE_NAME_SCHEMA), - ]), - ) -); - +#[api( + input: { + properties: { + "archive-name": { + schema: crate::api2::types::BACKUP_ARCHIVE_NAME_SCHEMA, + }, + }, + }, +)] +/// Create dynamic chunk index file. fn create_dynamic_index( param: Value, - _info: &ApiMethod, rpcenv: &mut dyn RpcEnvironment, ) -> Result { -- 2.39.2