]> Untitled Git - lemmy.git/commitdiff
Simplify fetch_posts code
authorFelix Ableitner <me@nutomic.com>
Wed, 8 Apr 2020 16:39:45 +0000 (18:39 +0200)
committerFelix Ableitner <me@nutomic.com>
Wed, 8 Apr 2020 16:39:45 +0000 (18:39 +0200)
server/src/apub/puller.rs

index 7610d4640e0652ed6fd57d458e9df5721b59d6de..a00f4d46896b2f04b1446f8eb69ee88de088d1d4 100644 (file)
@@ -75,18 +75,12 @@ where
 }
 
 fn fetch_remote_community_posts(
-  instance: &Instance,
   community: &Community,
   conn: &PgConnection,
 ) -> Result<Vec<Post>, Error> {
   // TODO: need to add outbox field to Community
-  let endpoint = Url::parse(&format!(
-    "http://{}/federation/c/{}",
-    instance.domain, community.name
-  ))?;
-  let group = fetch_remote_object::<GroupExt>(&endpoint)?;
-  let outbox_uri = Url::parse(&group.extension.get_outbox().to_string())?;
-  let outbox = fetch_remote_object::<OrderedCollection>(&outbox_uri)?;
+  let outbox_url = Url::parse(&format!("{}/outbox", community.actor_id))?;
+  let outbox = fetch_remote_object::<OrderedCollection>(&outbox_url)?;
   let items = outbox.collection_props.get_many_items_base_boxes();
 
   Ok(
@@ -129,7 +123,7 @@ pub fn fetch_all(conn: &PgConnection) -> Result<(), Error> {
     if let Some(community_list) = node_info.metadata.community_list_url {
       let communities = fetch_communities_from_instance(&community_list, conn)?;
       for c in communities {
-        fetch_remote_community_posts(instance, &c, conn)?;
+        fetch_remote_community_posts(&c, conn)?;
       }
     } else {
       warn!(