Henrique Santos 10 лет назад
Родитель
Сommit
099d0fef2f

+ 2 - 0
services/filestore/app.coffee

@@ -85,6 +85,8 @@ app.post "/project/:project_id/public/:public_file_id", keyBuilder.publicFileKey
 app.put "/project/:project_id/public/:public_file_id", keyBuilder.publicFileKey, express.bodyParser(), fileController.copyFile
 app.put "/project/:project_id/public/:public_file_id", keyBuilder.publicFileKey, express.bodyParser(), fileController.copyFile
 app.del "/project/:project_id/public/:public_file_id", keyBuilder.publicFileKey, fileController.deleteFile
 app.del "/project/:project_id/public/:public_file_id", keyBuilder.publicFileKey, fileController.deleteFile
 
 
+app.get "project/:project_id/size", keyBuilder.publicProjectKey, projectController.projectSize
+
 app.get "/heapdump", (req, res)->
 app.get "/heapdump", (req, res)->
 	require('heapdump').writeSnapshot '/tmp/' + Date.now() + '.filestore.heapsnapshot', (err, filename)->
 	require('heapdump').writeSnapshot '/tmp/' + Date.now() + '.filestore.heapsnapshot', (err, filename)->
 		res.send filename
 		res.send filename

+ 5 - 0
services/filestore/app/coffee/KeyBuilder.coffee

@@ -42,4 +42,9 @@ module.exports =
 		opts = req.query
 		opts = req.query
 		next()
 		next()
 
 
+	publicProjectKey: (req, res, next)->
+		{project_id} = req.params
+		req.project_id = project_id
+		req.bucket = settings.filestore.stores.user_files
+		next()
 	
 	

+ 18 - 0
services/filestore/app/coffee/ProjectController.coffee

@@ -0,0 +1,18 @@
+settings = require("settings-sharelatex")
+logger = require("logger-sharelatex")
+metrics = require("metrics-sharelatex")
+Errors = require('./Errors')
+
+
+module.exports = projectController =
+
+	projectSize: (req, res)->
+		metrics.inc "projectSize"
+		{project_id, bucket} = req
+		logger.log project_id:project_id, bucket:bucket, "reciving request to project size"
+		FileHandler.getFile bucket, project_id, req, (err)->
+			if err?
+				logger.log err: err, project_id: project_id, bucket: bucket, "error inserting file"
+				res.send 500
+			else
+				res.send 200