Revert Object trait id() ref

This commit is contained in:
Evie Viau 2026-04-25 22:40:47 -07:00
parent 588f431266
commit 754b2a0f3d
9 changed files with 20 additions and 20 deletions

View file

@ -32,10 +32,10 @@ impl Object for SearchableDbObjects {
type Kind = SearchableObjects; type Kind = SearchableObjects;
type Error = anyhow::Error; type Error = anyhow::Error;
fn id(&self) -> &Url { fn id(&self) -> Url {
match self { match self {
SearchableDbObjects::User(p) => &p.federation_id, SearchableDbObjects::User(p) => p.federation_id.clone(),
SearchableDbObjects::Post(n) => &n.federation_id, SearchableDbObjects::Post(n) => n.federation_id.clone(),
} }
} }

View file

@ -69,8 +69,8 @@ impl Object for DbUser {
type Kind = Person; type Kind = Person;
type Error = Error; type Error = Error;
fn id(&self) -> &Url { fn id(&self) -> Url {
self.ap_id.inner() self.ap_id.inner().clone()
} }
fn last_refreshed_at(&self) -> Option<DateTime<Utc>> { fn last_refreshed_at(&self) -> Option<DateTime<Utc>> {

View file

@ -50,8 +50,8 @@ impl Object for DbPost {
type Kind = Note; type Kind = Note;
type Error = Error; type Error = Error;
fn id(&self) -> &Url { fn id(&self) -> Url {
self.ap_id.inner() self.ap_id.inner().clone()
} }
async fn read_from_id( async fn read_from_id(

View file

@ -134,8 +134,8 @@ impl Object for DbUser {
type Kind = Person; type Kind = Person;
type Error = Error; type Error = Error;
fn id(&self) -> &Url { fn id(&self) -> Url {
self.ap_id.inner() self.ap_id.inner().clone()
} }
fn last_refreshed_at(&self) -> Option<DateTime<Utc>> { fn last_refreshed_at(&self) -> Option<DateTime<Utc>> {

View file

@ -47,8 +47,8 @@ impl Object for DbPost {
type Kind = Note; type Kind = Note;
type Error = Error; type Error = Error;
fn id(&self) -> &Url { fn id(&self) -> Url {
self.ap_id.inner() self.ap_id.inner().clone()
} }
async fn read_from_id( async fn read_from_id(

View file

@ -190,7 +190,7 @@ where
// PKey is internally like an Arc<>, so cloning is ok // PKey is internally like an Arc<>, so cloning is ok
data.config data.config
.actor_pkey_cache .actor_pkey_cache
.try_get_with_by_ref(actor_id, async { .try_get_with_by_ref(&actor_id, async {
let private_key_pem = actor.private_key_pem().ok_or_else(|| { let private_key_pem = actor.private_key_pem().ok_or_else(|| {
Error::Other(format!( Error::Other(format!(
"Actor {actor_id} does not contain a private key for signing" "Actor {actor_id} does not contain a private key for signing"

View file

@ -30,7 +30,7 @@ where
type Error = E; type Error = E;
/// `id` field of the object /// `id` field of the object
fn id(&self) -> &Url { fn id(&self) -> Url {
match self { match self {
Either::Left(l) => l.id(), Either::Left(l) => l.id(),
Either::Right(r) => r.id(), Either::Right(r) => r.id(),

View file

@ -53,7 +53,7 @@ pub mod tests;
/// type Kind = Note; /// type Kind = Note;
/// type Error = anyhow::Error; /// type Error = anyhow::Error;
/// ///
/// fn id(&self) -> &Url { self.ap_id.inner() } /// fn id(&self) -> Url { self.ap_id.inner().clone() }
/// ///
/// async fn read_from_id(object_id: Url, data: &Data<Self::DataType>) -> Result<Option<Self>, Self::Error> { /// async fn read_from_id(object_id: Url, data: &Data<Self::DataType>) -> Result<Option<Self>, Self::Error> {
/// // Attempt to read object from local database. Return Ok(None) if not found. /// // Attempt to read object from local database. Return Ok(None) if not found.
@ -110,7 +110,7 @@ pub trait Object: Sized + Debug {
type Error; type Error;
/// `id` field of the object /// `id` field of the object
fn id(&self) -> &Url; fn id(&self) -> Url;
/// Returns the last time this object was updated. /// Returns the last time this object was updated.
/// ///
@ -194,8 +194,8 @@ pub trait Object: Sized + Debug {
redirect_remote_object, redirect_remote_object,
}; };
let id = self.id(); let id = self.id();
let res = if !data.config.is_local_url(id) { let res = if !data.config.is_local_url(&id) {
redirect_remote_object(id) redirect_remote_object(&id)
} else if !self.is_deleted() { } else if !self.is_deleted() {
let json = self.into_json(data).await?; let json = self.into_json(data).await?;
create_http_response(json, federation_context)? create_http_response(json, federation_context)?

View file

@ -73,8 +73,8 @@ impl Object for DbUser {
type Kind = Person; type Kind = Person;
type Error = Error; type Error = Error;
fn id(&self) -> &Url { fn id(&self) -> Url {
&self.federation_id self.federation_id.clone()
} }
async fn read_from_id( async fn read_from_id(
@ -179,7 +179,7 @@ impl Object for DbPost {
type Kind = Note; type Kind = Note;
type Error = Error; type Error = Error;
fn id(&self) -> &Url { fn id(&self) -> Url {
todo!() todo!()
} }