module.rs 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. use flowy_client_ws::FlowyWebSocketConnect;
  2. use flowy_database2::DatabaseManager2;
  3. use flowy_document::DocumentManager;
  4. use flowy_document2::manager::DocumentManager as DocumentManager2;
  5. use flowy_folder2::manager::Folder2Manager;
  6. use flowy_user::services::UserSession;
  7. use lib_dispatch::prelude::AFPlugin;
  8. use std::sync::Arc;
  9. pub fn make_plugins(
  10. ws_conn: &Arc<FlowyWebSocketConnect>,
  11. folder_manager: &Arc<Folder2Manager>,
  12. database_manager: &Arc<DatabaseManager2>,
  13. user_session: &Arc<UserSession>,
  14. document_manager: &Arc<DocumentManager>,
  15. document_manager2: &Arc<DocumentManager2>,
  16. ) -> Vec<AFPlugin> {
  17. let user_plugin = flowy_user::event_map::init(user_session.clone());
  18. let folder_plugin = flowy_folder2::event_map::init(folder_manager.clone());
  19. let network_plugin = flowy_net::event_map::init(ws_conn.clone());
  20. let database_plugin = flowy_database2::event_map::init(database_manager.clone());
  21. let document_plugin = flowy_document::event_map::init(document_manager.clone());
  22. let document_plugin2 = flowy_document2::event_map::init(document_manager2.clone());
  23. vec![
  24. user_plugin,
  25. folder_plugin,
  26. network_plugin,
  27. database_plugin,
  28. document_plugin,
  29. document_plugin2,
  30. ]
  31. }