itizawa 5 лет назад
Родитель
Сommit
646cd6c5e8
1 измененных файлов с 23 добавлено и 2 удалено
  1. 23 2
      src/server/service/file-uploader/gridfs.js

+ 23 - 2
src/server/service/file-uploader/gridfs.js

@@ -1,14 +1,35 @@
 const logger = require('@alias/logger')('growi:service:fileUploaderGridfs');
 const logger = require('@alias/logger')('growi:service:fileUploaderGridfs');
-// const mongoose = require('mongoose');
-// const util = require('util');
+const mongoose = require('mongoose');
+const { createModel } = require('mongoose-gridfs');
+const util = require('util');
 const Uploader = require('./uploader');
 const Uploader = require('./uploader');
 
 
+const COLLECTION_NAME = 'attachmentFiles';
+
 class Gridfs extends Uploader {
 class Gridfs extends Uploader {
 
 
+
   constructor(crowi) {
   constructor(crowi) {
     super(crowi);
     super(crowi);
 
 
     logger.info('Gridfs is constructor');
     logger.info('Gridfs is constructor');
+
+    this.initialize();
+  }
+
+  initialize() {
+    this.AttachmentFile = createModel({
+      modelName: COLLECTION_NAME,
+      bucketName: COLLECTION_NAME,
+      connection: mongoose.connection,
+    });
+    // get Collection instance of chunk
+    // const chunkCollection = mongoose.connection.collection(CHUNK_COLLECTION_NAME);
+
+    // create promisified method
+    this.AttachmentFile.promisifiedWrite = util.promisify(this.AttachmentFile.write).bind(this.AttachmentFile);
+    this.AttachmentFile.promisifiedUnlink = util.promisify(this.AttachmentFile.unlink).bind(this.AttachmentFile);
+
   }
   }
 
 
 }
 }