Explorar o código

WIP: implement transferAttachments()

Syunsuke Komma %!s(int64=3) %!d(string=hai) anos
pai
achega
1b42e1371a
Modificáronse 1 ficheiros con 14 adicións e 2 borrados
  1. 14 2
      packages/app/src/server/service/g2g-transfer.ts

+ 14 - 2
packages/app/src/server/service/g2g-transfer.ts

@@ -114,8 +114,20 @@ export class G2GTransferPusherService implements Pusher {
   }
 
   public async transferAttachments(tk: TransferKey): Promise<void> {
-    // TODO: Attachment batch get
-    // TODO: post each attachment file data to receiver
+    const { appUrl, key } = tk;
+    const Attachment = this.crowi.model('Attachment');
+    const attachments = await Attachment.find();
+
+    // TODO: batch get
+    for await (const attachment of attachments) {
+      try {
+        // TODO: refresh transfer key
+        // TODO: post each attachment file data to receiver
+      }
+      catch (err) {
+        logger.warn(`Error occured when getting Attachment(ID=${attachment.id}) but skipping: `, err);
+      }
+    }
   }
 
   public async startTransfer(tk: TransferKey, collections: string[], optionsMap: any): Promise<void> {