@@ -142,8 +142,13 @@ var FileSystem = (function () {
142
142
FileSystem . prototype . create = function ( ctx , _path , type , _createIntermediates , _callback ) {
143
143
var _this = this ;
144
144
var createIntermediates = _callback ? _createIntermediates : false ;
145
- var callback = _callback ? _callback : _createIntermediates ;
145
+ var callbackFinal = _callback ? _callback : _createIntermediates ;
146
146
var path = new Path_1 . Path ( _path ) ;
147
+ var callback = function ( e ) {
148
+ if ( ! e )
149
+ _this . emit ( 'create' , ctx , path , { type : type , createIntermediates : createIntermediates } ) ;
150
+ callbackFinal ( e ) ;
151
+ } ;
147
152
if ( ! this . _create )
148
153
return callback ( Errors_1 . Errors . InvalidOperation ) ;
149
154
issuePrivilegeCheck ( this , ctx , path , 'canWrite' , callback , function ( ) {
@@ -215,8 +220,13 @@ var FileSystem = (function () {
215
220
FileSystem . prototype . delete = function ( ctx , _path , _depth , _callback ) {
216
221
var _this = this ;
217
222
var depth = _callback ? _depth : - 1 ;
218
- var callback = _callback ? _callback : _depth ;
223
+ var callbackFinal = _callback ? _callback : _depth ;
219
224
var path = new Path_1 . Path ( _path ) ;
225
+ var callback = function ( e ) {
226
+ if ( ! e )
227
+ _this . emit ( 'delete' , ctx , path , { depth : depth } ) ;
228
+ callbackFinal ( e ) ;
229
+ } ;
220
230
if ( ! this . _delete )
221
231
return callback ( Errors_1 . Errors . InvalidOperation ) ;
222
232
issuePrivilegeCheck ( this , ctx , path , 'canWrite' , callback , function ( ) {
@@ -246,15 +256,20 @@ var FileSystem = (function () {
246
256
if ( obj && obj . constructor === Number )
247
257
estimatedSize = obj ;
248
258
}
249
- var callback ;
259
+ var callbackFinal ;
250
260
for ( var _d = 0 , _e = [ _mode , _targetSource , _estimatedSize , _callback ] ; _d < _e . length ; _d ++ ) {
251
261
var obj = _e [ _d ] ;
252
262
if ( obj && obj . constructor === Function )
253
- callback = obj ;
263
+ callbackFinal = obj ;
254
264
}
255
265
var mode = _mode && _mode . constructor === String ? _mode : 'mustExist' ;
256
266
var path = new Path_1 . Path ( _path ) ;
257
267
var created = false ;
268
+ var callback = function ( e , stream , created ) {
269
+ if ( ! e )
270
+ _this . emit ( 'openWriteStream' , ctx , path , { targetSource : targetSource , mode : mode , estimatedSize : estimatedSize , created : created } ) ;
271
+ callbackFinal ( e , stream , created ) ;
272
+ } ;
258
273
if ( ! this . _openWriteStream )
259
274
return callback ( Errors_1 . Errors . InvalidOperation ) ;
260
275
issuePrivilegeCheck ( this , ctx , path , targetSource ? 'canWriteContentSource' : 'canWriteContentTranslated' , callback , function ( ) {
@@ -305,8 +320,13 @@ var FileSystem = (function () {
305
320
var _this = this ;
306
321
var targetSource = _targetSource . constructor === Boolean ? _targetSource : false ;
307
322
var estimatedSize = _callback ? _estimatedSize : _estimatedSize ? _targetSource : - 1 ;
308
- var callback = _callback ? _callback : _estimatedSize ? _estimatedSize : _targetSource ;
323
+ var callbackFinal = _callback ? _callback : _estimatedSize ? _estimatedSize : _targetSource ;
309
324
var path = new Path_1 . Path ( _path ) ;
325
+ var callback = function ( e , stream ) {
326
+ if ( ! e )
327
+ _this . emit ( 'openReadStream' , ctx , path , { targetSource : targetSource , estimatedSize : estimatedSize } ) ;
328
+ callbackFinal ( e , stream ) ;
329
+ } ;
310
330
issuePrivilegeCheck ( this , ctx , path , targetSource ? 'canReadContentSource' : 'canReadContentTranslated' , callback , function ( ) {
311
331
_this . fastExistCheckEx ( ctx , path , callback , function ( ) {
312
332
if ( ! _this . _openReadStream )
@@ -321,10 +341,15 @@ var FileSystem = (function () {
321
341
} ;
322
342
FileSystem . prototype . move = function ( ctx , _pathFrom , _pathTo , _overwrite , _callback ) {
323
343
var _this = this ;
324
- var callback = _callback ? _callback : _overwrite ;
344
+ var callbackFinal = _callback ? _callback : _overwrite ;
325
345
var overwrite = _callback ? _overwrite : false ;
326
346
var pathFrom = new Path_1 . Path ( _pathFrom ) ;
327
347
var pathTo = new Path_1 . Path ( _pathTo ) ;
348
+ var callback = function ( e , overrided ) {
349
+ if ( ! e )
350
+ _this . emit ( 'move' , ctx , pathFrom , { pathFrom : pathFrom , pathTo : pathTo , overwrite : overwrite , overrided : overrided } ) ;
351
+ callbackFinal ( e , overrided ) ;
352
+ } ;
328
353
issuePrivilegeCheck ( this , ctx , pathFrom , 'canRead' , callback , function ( ) {
329
354
issuePrivilegeCheck ( _this , ctx , pathTo , 'canWrite' , callback , function ( ) {
330
355
_this . isLocked ( ctx , pathFrom , function ( e , isLocked ) {
@@ -358,9 +383,14 @@ var FileSystem = (function () {
358
383
var _this = this ;
359
384
var overwrite = _overwrite . constructor === Boolean ? _overwrite : false ;
360
385
var depth = _callback ? _depth : ! _depth ? - 1 : _overwrite . constructor === Number ? _overwrite : - 1 ;
361
- var callback = _callback ? _callback : _depth ? _depth : _overwrite ;
386
+ var callbackFinal = _callback ? _callback : _depth ? _depth : _overwrite ;
362
387
var pathFrom = new Path_1 . Path ( _pathFrom ) ;
363
388
var pathTo = new Path_1 . Path ( _pathTo ) ;
389
+ var callback = function ( e , overrided ) {
390
+ if ( ! e )
391
+ _this . emit ( 'copy' , ctx , pathFrom , { pathTo : pathTo , overwrite : overwrite , overrided : overrided , depth : depth } ) ;
392
+ callbackFinal ( e , overrided ) ;
393
+ } ;
364
394
issuePrivilegeCheck ( this , ctx , pathFrom , 'canRead' , callback , function ( ) {
365
395
issuePrivilegeCheck ( _this , ctx , pathTo , 'canWrite' , callback , function ( ) {
366
396
_this . isLocked ( ctx , pathTo , function ( e , isLocked ) {
@@ -390,8 +420,16 @@ var FileSystem = (function () {
390
420
FileSystem . prototype . rename = function ( ctx , _pathFrom , newName , _overwrite , _callback ) {
391
421
var _this = this ;
392
422
var overwrite = _callback ? _overwrite : false ;
393
- var callback = _callback ? _callback : _overwrite ;
423
+ var callbackFinal = _callback ? _callback : _overwrite ;
394
424
var pathFrom = new Path_1 . Path ( _pathFrom ) ;
425
+ var callback = function ( e , overrided ) {
426
+ if ( ! e )
427
+ _this . emit ( 'rename' , ctx , pathFrom , {
428
+ newName : newName ,
429
+ overrided : overrided
430
+ } ) ;
431
+ callbackFinal ( e , overrided ) ;
432
+ } ;
395
433
issuePrivilegeCheck ( this , ctx , pathFrom , [ 'canRead' , 'canWrite' ] , callback , function ( ) {
396
434
_this . isLocked ( ctx , pathFrom , function ( e , isLocked ) {
397
435
if ( e || isLocked )
@@ -530,7 +568,11 @@ var FileSystem = (function () {
530
568
buffIsLocked . isLocked ( function ( e , isLocked ) {
531
569
if ( e || isLocked )
532
570
return callback ( e ? e : Errors_1 . Errors . Locked ) ;
533
- lm . setLock ( lock , callback ) ;
571
+ lm . setLock ( lock , function ( e ) {
572
+ if ( ! e )
573
+ fs . emit ( 'lock-set' , ctx , pPath , { lock : lock } ) ;
574
+ callback ( e ) ;
575
+ } ) ;
534
576
} ) ;
535
577
} ) ;
536
578
} ,
@@ -539,7 +581,11 @@ var FileSystem = (function () {
539
581
buffIsLocked . isLocked ( function ( e , isLocked ) {
540
582
if ( e || isLocked )
541
583
return callback ( e ? e : Errors_1 . Errors . Locked ) ;
542
- lm . removeLock ( uuid , callback ) ;
584
+ lm . removeLock ( uuid , function ( e , removed ) {
585
+ if ( ! e )
586
+ fs . emit ( 'lock-remove' , ctx , pPath , { uuid : uuid , removed : removed } ) ;
587
+ callback ( e , removed ) ;
588
+ } ) ;
543
589
} ) ;
544
590
} ) ;
545
591
} ,
@@ -553,7 +599,11 @@ var FileSystem = (function () {
553
599
buffIsLocked . isLocked ( function ( e , isLocked ) {
554
600
if ( e || isLocked )
555
601
return callback ( e ? e : Errors_1 . Errors . Locked ) ;
556
- lm . refresh ( uuid , timeout , callback ) ;
602
+ lm . refresh ( uuid , timeout , function ( e , lock ) {
603
+ if ( ! e )
604
+ fs . emit ( 'lock-refresh' , ctx , pPath , { uuid : uuid , timeout : timeout , lock : lock } ) ;
605
+ callback ( e ) ;
606
+ } ) ;
557
607
} ) ;
558
608
} ) ;
559
609
}
@@ -585,7 +635,11 @@ var FileSystem = (function () {
585
635
buffIsLocked . isLocked ( function ( e , isLocked ) {
586
636
if ( e || isLocked )
587
637
return callback ( e ? e : Errors_1 . Errors . Locked ) ;
588
- pm . setProperty ( name , value , attributes , callback ) ;
638
+ pm . setProperty ( name , value , attributes , function ( e ) {
639
+ if ( ! e )
640
+ fs . emit ( 'property-set' , ctx , pPath , { name : name , value : value , attributes : attributes } ) ;
641
+ callback ( e ) ;
642
+ } ) ;
589
643
} ) ;
590
644
} ) ;
591
645
} ,
@@ -599,7 +653,11 @@ var FileSystem = (function () {
599
653
buffIsLocked . isLocked ( function ( e , isLocked ) {
600
654
if ( e || isLocked )
601
655
return callback ( e ? e : Errors_1 . Errors . Locked ) ;
602
- pm . removeProperty ( name , callback ) ;
656
+ pm . removeProperty ( name , function ( e ) {
657
+ if ( ! e )
658
+ fs . emit ( 'property-remove' , ctx , pPath , { name : name } ) ;
659
+ callback ( e ) ;
660
+ } ) ;
603
661
} ) ;
604
662
} ) ;
605
663
} ,
@@ -964,6 +1022,25 @@ var FileSystem = (function () {
964
1022
return callback ( ) ;
965
1023
serializer . serialize ( this , callback ) ;
966
1024
} ;
1025
+ FileSystem . prototype . on = function ( ctx , event , listener ) {
1026
+ var _this = this ;
1027
+ var server = ctx . events ? ctx : ctx . server ;
1028
+ server . on ( event , function ( ctx , fs , path ) {
1029
+ if ( fs === _this )
1030
+ listener ( ctx , path ) ;
1031
+ } ) ;
1032
+ return this ;
1033
+ } ;
1034
+ /**
1035
+ * Trigger an event.
1036
+ *
1037
+ * @param event Name of the event.
1038
+ * @param ctx Context of the event.
1039
+ * @param path Path of the resource on which the event happened.
1040
+ */
1041
+ FileSystem . prototype . emit = function ( event , ctx , path , data ) {
1042
+ ctx . server . emit ( event , ctx , this , path , data ) ;
1043
+ } ;
967
1044
return FileSystem ;
968
1045
} ( ) ) ;
969
1046
exports . FileSystem = FileSystem ;
0 commit comments