@@ -13,7 +13,9 @@ use tokio::sync::{broadcast, mpsc};
1313pub struct TrashController {
1414 persistence : Arc < FolderPersistence > ,
1515 notify : broadcast:: Sender < TrashEvent > ,
16+ #[ allow( dead_code) ]
1617 cloud_service : Arc < dyn FolderCouldServiceV1 > ,
18+ #[ allow( dead_code) ]
1719 user : Arc < dyn WorkspaceUser > ,
1820}
1921
@@ -54,11 +56,6 @@ impl TrashController {
5456 ty : trash. ty . into ( ) ,
5557 } ;
5658
57- self . delete_trash_on_server ( RepeatedTrashIdPB {
58- items : vec ! [ identifier. clone( ) ] ,
59- delete_all : false ,
60- } ) ?;
61-
6259 tracing:: Span :: current ( ) . record ( "putback" , format ! ( "{:?}" , & identifier) . as_str ( ) ) ;
6360 let _ = self . notify . send ( TrashEvent :: Putback ( vec ! [ identifier] . into ( ) , tx) ) ;
6461 rx. recv ( ) . await . unwrap ( ) ?;
@@ -82,7 +79,6 @@ impl TrashController {
8279 let _ = rx. recv ( ) . await ;
8380
8481 notify_trash_changed ( RepeatedTrashPB { items : vec ! [ ] } ) ;
85- self . delete_all_trash_on_server ( ) . await ?;
8682 Ok ( ( ) )
8783 }
8884
@@ -97,7 +93,6 @@ impl TrashController {
9793 self . delete_with_identifiers ( all_trash_identifiers) . await ?;
9894
9995 notify_trash_changed ( RepeatedTrashPB { items : vec ! [ ] } ) ;
100- self . delete_all_trash_on_server ( ) . await ?;
10196 Ok ( ( ) )
10297 }
10398
@@ -110,7 +105,6 @@ impl TrashController {
110105 . await ?;
111106
112107 notify_trash_changed ( trash_revs) ;
113- self . delete_trash_on_server ( trash_identifiers) ?;
114108
115109 Ok ( ( ) )
116110 }
@@ -169,8 +163,6 @@ impl TrashController {
169163 self . persistence
170164 . begin_transaction ( |transaction| {
171165 transaction. create_trash ( trash_revs. clone ( ) ) ?;
172- let _ = self . create_trash_on_server ( trash_revs) ;
173-
174166 notify_trash_changed ( transaction. read_trash ( None ) ?) ;
175167 Ok ( ( ) )
176168 } )
@@ -194,7 +186,6 @@ impl TrashController {
194186 . map ( |trash_rev| trash_rev. into ( ) )
195187 . collect ( ) ;
196188
197- self . read_trash_on_server ( ) ?;
198189 Ok ( RepeatedTrashPB { items } )
199190 }
200191
@@ -211,74 +202,6 @@ impl TrashController {
211202 }
212203}
213204
214- impl TrashController {
215- #[ tracing:: instrument( level = "trace" , skip( self , trash) , err) ]
216- fn create_trash_on_server < T : Into < RepeatedTrashIdPB > > ( & self , trash : T ) -> FlowyResult < ( ) > {
217- let token = self . user . token ( ) ?;
218- let trash_identifiers = trash. into ( ) ;
219- let server = self . cloud_service . clone ( ) ;
220- // TODO: retry?
221- let _ = tokio:: spawn ( async move {
222- match server. create_trash ( & token, trash_identifiers) . await {
223- Ok ( _) => { }
224- Err ( e) => log:: error!( "Create trash failed: {:?}" , e) ,
225- }
226- } ) ;
227- Ok ( ( ) )
228- }
229-
230- #[ tracing:: instrument( level = "trace" , skip( self , trash) , err) ]
231- fn delete_trash_on_server < T : Into < RepeatedTrashIdPB > > ( & self , trash : T ) -> FlowyResult < ( ) > {
232- let token = self . user . token ( ) ?;
233- let trash_identifiers = trash. into ( ) ;
234- let server = self . cloud_service . clone ( ) ;
235- let _ = tokio:: spawn ( async move {
236- match server. delete_trash ( & token, trash_identifiers) . await {
237- Ok ( _) => { }
238- Err ( e) => log:: error!( "Delete trash failed: {:?}" , e) ,
239- }
240- } ) ;
241- Ok ( ( ) )
242- }
243-
244- #[ tracing:: instrument( level = "trace" , skip( self ) , err) ]
245- fn read_trash_on_server ( & self ) -> FlowyResult < ( ) > {
246- let token = self . user . token ( ) ?;
247- let server = self . cloud_service . clone ( ) ;
248- let persistence = self . persistence . clone ( ) ;
249-
250- tokio:: spawn ( async move {
251- match server. read_trash ( & token) . await {
252- Ok ( trash_rev) => {
253- tracing:: debug!( "Remote trash count: {}" , trash_rev. len( ) ) ;
254- let result = persistence
255- . begin_transaction ( |transaction| {
256- transaction. create_trash ( trash_rev. clone ( ) ) ?;
257- transaction. read_trash ( None )
258- } )
259- . await ;
260-
261- match result {
262- Ok ( trash_revs) => {
263- notify_trash_changed ( trash_revs) ;
264- }
265- Err ( e) => log:: error!( "Save trash failed: {:?}" , e) ,
266- }
267- }
268- Err ( e) => log:: error!( "Read trash failed: {:?}" , e) ,
269- }
270- } ) ;
271- Ok ( ( ) )
272- }
273-
274- #[ tracing:: instrument( level = "trace" , skip( self ) , err) ]
275- async fn delete_all_trash_on_server ( & self ) -> FlowyResult < ( ) > {
276- let token = self . user . token ( ) ?;
277- let server = self . cloud_service . clone ( ) ;
278- server. delete_trash ( & token, RepeatedTrashIdPB :: all ( ) ) . await
279- }
280- }
281-
282205#[ tracing:: instrument( level = "debug" , skip( repeated_trash) , fields( n_trash) ) ]
283206fn notify_trash_changed < T : Into < RepeatedTrashPB > > ( repeated_trash : T ) {
284207 let repeated_trash = repeated_trash. into ( ) ;
0 commit comments