Ride writes: WrapUpRequested/Completed (wrapup create/set_complete), MovieDiscovered (resolve upsert, new+ext id only), PosterSynced (poster handler upsert), MovieDeleted (delete_movie), WatchEventIngested (save). Deps drop event_publisher: wrapup, ingest, delete_review, watchlist add, review logger. Remaining .publish( sites: announce-only: users/delete_account UserDeleted, person/get + get_credits PersonEnrichmentRequested, jobs/enrichment_staleness, http-axum search, movies/sync_poster + poster_sync_handler + image-converter backfill + users/update_profile ImageStored (object storage), activitypub federation_event_bridge (reacting to events). rides write, deferred: social/execute (see report), activitypub review_handler MovieEnrichmentRequested (after save_remote_review).
32 lines
817 B
Rust
32 lines
817 B
Rust
use std::sync::Arc;
|
|
|
|
use domain::ports::{
|
|
MetadataClient, MovieCommand, MovieQuery, RemoteWatchlistRepository, UserRepository,
|
|
WatchlistRepository,
|
|
};
|
|
|
|
pub struct WatchlistAddDeps {
|
|
pub movie_command: Arc<dyn MovieCommand>,
|
|
pub movie_query: Arc<dyn MovieQuery>,
|
|
pub metadata: Arc<dyn MetadataClient>,
|
|
pub watchlist: Arc<dyn WatchlistRepository>,
|
|
}
|
|
|
|
pub struct GetWatchlistForOwnerDeps {
|
|
pub user: Arc<dyn UserRepository>,
|
|
pub watchlist: Arc<dyn WatchlistRepository>,
|
|
pub remote_watchlist: Arc<dyn RemoteWatchlistRepository>,
|
|
}
|
|
|
|
pub struct GetWatchlistDeps {
|
|
pub watchlist: Arc<dyn WatchlistRepository>,
|
|
}
|
|
|
|
pub struct IsOnWatchlistDeps {
|
|
pub watchlist: Arc<dyn WatchlistRepository>,
|
|
}
|
|
|
|
pub struct RemoveFromWatchlistDeps {
|
|
pub watchlist: Arc<dyn WatchlistRepository>,
|
|
}
|