Skip to content
This repository was archived by the owner on Apr 20, 2025. It is now read-only.

Commit ef414e4

Browse files
authored
Compression type to chunk entity (#9)
* Compression * Add Compression type to chunk
1 parent 0d2fbd9 commit ef414e4

3 files changed

Lines changed: 22 additions & 2 deletions

File tree

java/src/main/java/com/goofy/GoofyFiles/duplication/DuplicationService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ public Map<String, Object> processAndStoreFileCompressed(
303303
chunkEntity.setData(compressedData);
304304
// Vous pouvez ajouter une propriété pour stocker la taille originale si besoin,
305305
// ex :
306-
// chunkEntity.setOriginalSize(chunk.getData().length);
306+
chunkEntity.setCompressionType(compressionType.name());
307307

308308
// Stocker le hash selon l'algorithme
309309
switch (algorithm) {

java/src/main/java/com/goofy/GoofyFiles/model/ChunkEntity.java

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,13 @@
44
import java.util.ArrayList;
55
import java.util.List;
66

7-
import jakarta.persistence.*;
7+
import jakarta.persistence.Column;
8+
import jakarta.persistence.Entity;
9+
import jakarta.persistence.GeneratedValue;
10+
import jakarta.persistence.GenerationType;
11+
import jakarta.persistence.Id;
12+
import jakarta.persistence.OneToMany;
13+
import jakarta.persistence.Table;
814

915
@Entity
1016
@Table(name = "chunk")
@@ -31,6 +37,9 @@ public class ChunkEntity {
3137
@OneToMany(mappedBy = "chunk")
3238
private List<FileChunkEntity> fileChunks = new ArrayList<>();
3339

40+
@Column(name = "compression_type")
41+
private String compressionType;
42+
3443
// Getters and setters
3544
public Long getId() {
3645
return id;
@@ -79,4 +88,12 @@ public LocalDateTime getCreatedAt() {
7988
public List<FileChunkEntity> getFileChunks() {
8089
return fileChunks;
8190
}
91+
92+
public String getCompressionType() {
93+
return compressionType;
94+
}
95+
96+
public void setCompressionType(String compressionType) {
97+
this.compressionType = compressionType;
98+
}
8299
}

java/src/test/java/com/goofy/GoofyFiles/duplication/DuplicationPerformanceTest.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,9 @@ void testProcessAndStoreFileCompressed(@TempDir Path tempDir) throws IOException
143143
assertNotNull(result.get("duplicateChunks"));
144144
assertNotNull(result.get("totalCompressedSize"));
145145

146+
// Nouvelle assertion pour la méthode de compression
147+
assertEquals(CompressionService.CompressionType.LZ4.name(), result.get("compressionType"));
148+
146149
// Vérifier que la taille compressée totale est inférieure à la somme des
147150
// tailles originales
148151
List<Chunk> chunks = chunkingService.chunkFile(testFile);

0 commit comments

Comments
 (0)