iota_rpc_loadgen/payload/
multi_get_objects.rs

1// Copyright (c) Mysten Labs, Inc.
2// Modifications Copyright (c) 2024 IOTA Stiftung
3// SPDX-License-Identifier: Apache-2.0
4
5use anyhow::Result;
6use async_trait::async_trait;
7
8use crate::payload::{
9    MultiGetObjects, ProcessPayload, RpcCommandProcessor, SignerInfo, validation::check_objects,
10};
11
12#[async_trait]
13impl<'a> ProcessPayload<'a, &'a MultiGetObjects> for RpcCommandProcessor {
14    async fn process(
15        &'a self,
16        op: &'a MultiGetObjects,
17        _signer_info: &Option<SignerInfo>,
18    ) -> Result<()> {
19        let clients = self.get_clients().await?;
20        check_objects(&clients, &op.object_ids, false).await;
21        Ok(())
22    }
23}