daml-grpc 0.3.0

Daml Ledger GRPC API
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
use std::str::FromStr;

use tonic::Request;
use tonic::metadata::MetadataValue;

use crate::data::{DamlError, DamlResult};

pub fn make_request<T>(payload: T, auth_token: Option<&str>) -> DamlResult<Request<T>> {
    let mut request = Request::new(payload);
    if let Some(token) = auth_token {
        let token = MetadataValue::from_str(&format!("Bearer {token}")).map_err(|e| DamlError::Other(e.to_string()))?;
        request.metadata_mut().insert("authorization", token);
    }
    Ok(request)
}