refactor(ports): CQRS split — FederationActionPort into four focused sub-ports

This commit is contained in:
2026-05-15 13:49:58 +02:00
parent 8ed7f3d5bc
commit 189901b778
6 changed files with 155 additions and 95 deletions

View File

@@ -555,11 +555,34 @@ impl RemoteActorRepository for TestStore {
}
#[async_trait]
impl FederationActionPort for TestStore {
impl FederationLookupPort for TestStore {
async fn lookup_actor(&self, _handle: &str) -> Result<RemoteActor, DomainError> {
Err(DomainError::NotFound)
}
async fn actor_json(&self, _user_id: &UserId) -> Result<String, DomainError> {
Err(DomainError::NotFound)
}
async fn followers_collection_json(
&self,
_user_id: &UserId,
_page: Option<u32>,
) -> Result<String, DomainError> {
Err(DomainError::NotFound)
}
async fn following_collection_json(
&self,
_user_id: &UserId,
_page: Option<u32>,
) -> Result<String, DomainError> {
Err(DomainError::NotFound)
}
}
#[async_trait]
impl FederationFollowPort for TestStore {
async fn follow_remote(
&self,
_local_user_id: &UserId,
@@ -576,6 +599,16 @@ impl FederationActionPort for TestStore {
Ok(())
}
async fn get_remote_following(
&self,
_user_id: &UserId,
) -> Result<Vec<RemoteActor>, DomainError> {
Ok(vec![])
}
}
#[async_trait]
impl FederationFollowRequestPort for TestStore {
async fn get_pending_followers(
&self,
_user_id: &UserId,
@@ -613,34 +646,10 @@ impl FederationActionPort for TestStore {
) -> Result<(), DomainError> {
Ok(())
}
}
async fn get_remote_following(
&self,
_user_id: &UserId,
) -> Result<Vec<RemoteActor>, DomainError> {
Ok(vec![])
}
async fn actor_json(&self, _user_id: &UserId) -> Result<String, DomainError> {
Err(DomainError::NotFound)
}
async fn followers_collection_json(
&self,
_user_id: &UserId,
_page: Option<u32>,
) -> Result<String, DomainError> {
Err(DomainError::NotFound)
}
async fn following_collection_json(
&self,
_user_id: &UserId,
_page: Option<u32>,
) -> Result<String, DomainError> {
Err(DomainError::NotFound)
}
#[async_trait]
impl FederationFetchPort for TestStore {
async fn fetch_outbox_page(
&self,
_outbox_url: &str,