DocstoreManager.coffee 1.3 KB

12345678910111213141516171819202122232425262728293031
  1. request = require("request").defaults(jar: false)
  2. logger = require "logger-sharelatex"
  3. settings = require "settings-sharelatex"
  4. module.exports = DocstoreManager =
  5. deleteDoc: (project_id, doc_id, callback = (error) ->) ->
  6. logger.log project_id: project_id, doc_id: doc_id, "deleting doc in docstore api"
  7. url = "#{settings.apis.docstore.url}/project/#{project_id}/doc/#{doc_id}"
  8. request.del url, (error, res, body) ->
  9. return callback(error) if error?
  10. if 200 <= res.statusCode < 300
  11. callback(null)
  12. else
  13. error = new Error("docstore api responded with non-success code: #{res.statusCode}")
  14. logger.error err: error, project_id: project_id, doc_id: doc_id, "error deleting doc in docstore"
  15. callback(error)
  16. getAllDocs: (project_id, callback = (error) ->) ->
  17. logger.log project_id: project_id, "getting all docs for project in docstore api"
  18. url = "#{settings.apis.docstore.url}/project/#{project_id}/doc"
  19. request.get {
  20. url: url
  21. json: true
  22. }, (error, res, docs) ->
  23. return callback(error) if error?
  24. if 200 <= res.statusCode < 300
  25. callback(null, docs)
  26. else
  27. error = new Error("docstore api responded with non-success code: #{res.statusCode}")
  28. logger.error err: error, project_id: project_id, "error getting all docs in docstore"
  29. callback(error)