fs.ts 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /* IMPORT */
  2. import * as fs from 'fs';
  3. import {promisify} from 'util';
  4. import {attemptifyAsync, attemptifySync} from './attemptify';
  5. import Handlers from './fs_handlers';
  6. import {retryifyAsync, retryifySync} from './retryify';
  7. /* FS */
  8. const FS = {
  9. chmodAttempt: attemptifyAsync ( promisify ( fs.chmod ), Handlers.onChangeError ),
  10. chownAttempt: attemptifyAsync ( promisify ( fs.chown ), Handlers.onChangeError ),
  11. closeAttempt: attemptifyAsync ( promisify ( fs.close ) ),
  12. fsyncAttempt: attemptifyAsync ( promisify ( fs.fsync ) ),
  13. mkdirAttempt: attemptifyAsync ( promisify ( fs.mkdir ) ),
  14. realpathAttempt: attemptifyAsync ( promisify ( fs.realpath ) ),
  15. statAttempt: attemptifyAsync ( promisify ( fs.stat ) ),
  16. unlinkAttempt: attemptifyAsync ( promisify ( fs.unlink ) ),
  17. closeRetry: retryifyAsync ( promisify ( fs.close ), Handlers.isRetriableError ),
  18. fsyncRetry: retryifyAsync ( promisify ( fs.fsync ), Handlers.isRetriableError ),
  19. openRetry: retryifyAsync ( promisify ( fs.open ), Handlers.isRetriableError ),
  20. readFileRetry: retryifyAsync ( promisify ( fs.readFile ), Handlers.isRetriableError ),
  21. renameRetry: retryifyAsync ( promisify ( fs.rename ), Handlers.isRetriableError ),
  22. statRetry: retryifyAsync ( promisify ( fs.stat ), Handlers.isRetriableError ),
  23. writeRetry: retryifyAsync ( promisify ( fs.write ), Handlers.isRetriableError ),
  24. chmodSyncAttempt: attemptifySync ( fs.chmodSync, Handlers.onChangeError ),
  25. chownSyncAttempt: attemptifySync ( fs.chownSync, Handlers.onChangeError ),
  26. closeSyncAttempt: attemptifySync ( fs.closeSync ),
  27. mkdirSyncAttempt: attemptifySync ( fs.mkdirSync ),
  28. realpathSyncAttempt: attemptifySync ( fs.realpathSync ),
  29. statSyncAttempt: attemptifySync ( fs.statSync ),
  30. unlinkSyncAttempt: attemptifySync ( fs.unlinkSync ),
  31. closeSyncRetry: retryifySync ( fs.closeSync, Handlers.isRetriableError ),
  32. fsyncSyncRetry: retryifySync ( fs.fsyncSync, Handlers.isRetriableError ),
  33. openSyncRetry: retryifySync ( fs.openSync, Handlers.isRetriableError ),
  34. readFileSyncRetry: retryifySync ( fs.readFileSync, Handlers.isRetriableError ),
  35. renameSyncRetry: retryifySync ( fs.renameSync, Handlers.isRetriableError ),
  36. statSyncRetry: retryifySync ( fs.statSync, Handlers.isRetriableError ),
  37. writeSyncRetry: retryifySync ( fs.writeSync, Handlers.isRetriableError )
  38. };
  39. /* EXPORT */
  40. export default FS;