feat: add sharing endpoints — share, link, revoke, public access
This commit is contained in:
@@ -4,6 +4,10 @@ use application::{
|
||||
catalog::{GetAssetHandler, GetTimelineHandler, ReadAssetFileHandler, UpdateMetadataHandler},
|
||||
identity::{GetProfileHandler, LoginUserHandler, RegisterUserHandler},
|
||||
organization::{CreateAlbumHandler, GetAlbumHandler, ManageAlbumEntriesHandler},
|
||||
sharing::{
|
||||
AccessSharedResourceHandler, GenerateShareLinkHandler, RevokeShareHandler,
|
||||
ShareResourceHandler,
|
||||
},
|
||||
storage::{IngestAssetHandler, RegisterLibraryPathHandler, RegisterVolumeHandler},
|
||||
};
|
||||
use domain::ports::TokenIssuer;
|
||||
@@ -37,11 +41,20 @@ pub struct StorageHandlers {
|
||||
pub register_library_path: Arc<RegisterLibraryPathHandler>,
|
||||
}
|
||||
|
||||
#[derive(Clone)]
|
||||
pub struct SharingHandlers {
|
||||
pub share_resource: Arc<ShareResourceHandler>,
|
||||
pub generate_link: Arc<GenerateShareLinkHandler>,
|
||||
pub revoke: Arc<RevokeShareHandler>,
|
||||
pub access: Arc<AccessSharedResourceHandler>,
|
||||
}
|
||||
|
||||
#[derive(Clone)]
|
||||
pub struct AppState {
|
||||
pub identity: IdentityHandlers,
|
||||
pub catalog: CatalogHandlers,
|
||||
pub organization: OrganizationHandlers,
|
||||
pub storage: StorageHandlers,
|
||||
pub sharing: SharingHandlers,
|
||||
pub token_issuer: Arc<dyn TokenIssuer>,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user