Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
G
goyo-syncable-container
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 27
    • Issues 27
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 7
    • Merge Requests 7
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Package Registry
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • kuraemon-goyo
  • packages
  • goyo-syncable-container
  • Merge Requests
  • !4

Merged
Opened Jul 16, 2024 by 工藤 思由@s_kudoDeveloper4 of 4 tasks completed4/4 tasks

アップロード/ダウンロードファイルの結合/圧縮

  • Overview 7
  • Commits 29
  • Changes 9

アップロード/ダウンロードファイルの結合/分解

変更点

型定義

以下の個所にファイル結合時の型定義を追加

  • types/SyncableEntityFileSetSnapshot
  • checkInControl/CheckInControlRecordFileBody
  • downloadControl/DownloadControlRecordFileDownload

実装

アップロード

以下の順で圧縮を行う なお、圧縮規則はCompressionStrategyとして抽象化されており、外部から注入できる

  1. アップロードするファイル列を圧縮規則に従いグループ化
  2. グループ内部のファイル順を圧縮規則に従いソート
  3. グループ単位で圧縮規則に従い圧縮し格納先を指定
  4. 展開先情報のレコードを生成
ダウンロード
  1. ダウンロードレコード(展開先ファイル列)を圧縮済みファイルごとにグループ化
  2. 圧縮済みファイルをダウンロード
  3. 圧縮済みファイルをダウンロードレコードに基づき展開

対応した圧縮

  • raw: 各ファイルそのまま
  • concat: グループ化したファイルを結合
  • gzip: 各ファイルをgzip
  • concatGzip: グループ化したファイルを結合してからgzip
Edited Jul 19, 2024 by Kento Hirata
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
Reference: kuraemon-goyo/packages/goyo-syncable-container!4
Source branch: feature/concatTransferFiles

Revert this merge request

This will create a new commit in order to revert the existing changes.

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.

Cherry-pick this merge request

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.