actix-web: new fetch api

This commit is contained in:
Aode (lion) 2021-11-22 16:49:56 -06:00
parent 2d9b101eb7
commit e7a34dd33b

View file

@ -225,7 +225,7 @@ where
let d = D::from(url);
let repo = serve_info.repo_factory.repo();
let res = repo.fetch(&d).await;
let res = repo.fetch(d).await;
match res {
Ok(Some(object)) => HttpResponse::Ok()
@ -306,10 +306,10 @@ where
)]
#[serde(transparent)]
#[allow(private_in_public)]
struct ObjectId<Kind>(apub_core::object_id::ObjectId<Kind>);
struct ObjectId<Kind>(apub_core::object_id::ObjectId<'static, Kind>);
fn object_id<Kind>(url: Url) -> ObjectId<Kind> {
ObjectId(apub_core::object_id::ObjectId::new(url))
ObjectId(apub_core::object_id::ObjectId::new_owned(url))
}
#[derive(
@ -373,11 +373,12 @@ where
Some(other) => return Err(VerifyError::Algorithm(other.to_string()).into()),
};
let key_id = object_id(key_id.parse().map_err(|_| VerifyError::KeyId(key_id))?);
let key_id = key_id.parse().map_err(|_| VerifyError::KeyId(key_id))?;
let key_id = object_id(key_id);
let repo = verifier.factory().repo();
let response = repo
.fetch(&key_id)
.fetch(key_id.clone())
.await
.map_err(E::from)?
.ok_or(VerifyError::KeyNotFound)?;