127.0.0.1:8000 watch-together / master server / utils / upload_session.js
master

Tree @master (Download .tar.gz)

upload_session.js @masterraw · history · blame

const utils = require('.');
const log = require('./log').create_logger("upload_session");

// Map of user_id to the storage space available when the upload started in MB
let ongoing_uploads = {};

module.exports = {
    get: function(user) {
        if (user && user.user_id) {
            return ongoing_uploads[user.user_id];
        }
        return ongoing_uploads;
    },
    create: function(user, name, size, temp_dir) {
        log.general.info("Create upload session for", user.user_id);
        ongoing_uploads[user.user_id] = {
            size: size / 1000000, // need MB
            temp_dir: temp_dir,
            video: {
                video_id: utils.uuid(),
                created_by: user.user_id,
                status: utils.status.video.uploading,
                name: name
            }
        };
    },
    delete: function(user) {
        log.general.info("Delete upload session for", user.user_id);
        delete ongoing_uploads[user.user_id];
    }
};