PersistorManager.js 644 B

1234567891011121314151617181920212223242526
  1. const settings = require('settings-sharelatex')
  2. const logger = require('logger-sharelatex')
  3. logger.log(
  4. {
  5. backend: settings.filestore.backend
  6. },
  7. 'Loading backend'
  8. )
  9. if (!settings.filestore.backend) {
  10. throw new Error('no backend specified - config incomplete')
  11. }
  12. switch (settings.filestore.backend) {
  13. case 'aws-sdk':
  14. module.exports = require('./AWSSDKPersistorManager')
  15. break
  16. case 's3':
  17. module.exports = require('./S3PersistorManager')
  18. break
  19. case 'fs':
  20. module.exports = require('./FSPersistorManager')
  21. break
  22. default:
  23. throw new Error(`unknown filestore backend: ${settings.filestore.backend}`)
  24. }