Skip to content

Commit e222414

Browse files
committed
fix(api): change digest value to string
1 parent a3eb908 commit e222414

File tree

4 files changed

+11
-12
lines changed

4 files changed

+11
-12
lines changed

connect-file-pulse-api/src/main/java/io/streamthoughts/kafka/connect/filepulse/source/FileObjectMeta.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ default ConnectHeaders toConnectHeader() {
8181
ConnectHeaders headers = new ConnectHeaders();
8282
headers.addString("connect.file.name", name());
8383
headers.addString("connect.file.uri", uri().toString());
84-
headers.addLong("connect.file.hash.digest", contentDigest().digest());
84+
headers.addString("connect.file.hash.digest", contentDigest().digest());
8585
headers.addString("connect.file.hash.algorithm", contentDigest().algorithm());
8686
headers.addLong("connect.file.contentLength", contentLength());
8787
headers.addLong("connect.file.lastModified", lastModified());
@@ -96,18 +96,18 @@ default int compareTo(final FileObjectMeta that) {
9696
}
9797

9898
class ContentDigest {
99-
private final long digest;
99+
private final String digest;
100100
private final String algorithm;
101101

102102
@JsonCreator
103-
public ContentDigest(@JsonProperty("digest") final long digest,
103+
public ContentDigest(@JsonProperty("digest") final String digest,
104104
@JsonProperty("algorithm") final String algorithm) {
105-
this.digest = digest;
105+
this.digest = Objects.requireNonNull(digest, "digest should not be null");;
106106
this.algorithm = Objects.requireNonNull(algorithm, "algorithm should not be null");
107107
}
108108

109109
@JsonProperty("digest")
110-
public long digest() {
110+
public String digest() {
111111
return digest;
112112
}
113113

@@ -121,7 +121,7 @@ public boolean equals(Object o) {
121121
if (this == o) return true;
122122
if (!(o instanceof ContentDigest)) return false;
123123
ContentDigest that = (ContentDigest) o;
124-
return digest == that.digest &&
124+
return Objects.equals(digest, that.digest) &&
125125
Objects.equals(algorithm, that.algorithm);
126126
}
127127

connect-file-pulse-api/src/main/java/io/streamthoughts/kafka/connect/filepulse/source/LocalFileObjectMeta.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,9 +117,9 @@ private static ContentDigest hash(final File f) {
117117
byte[] bytes = readStartingBytesFrom(f, 4096);
118118
crc32.update(bytes);
119119
crc32.update(longToBytes(f.length()));
120-
return new ContentDigest(crc32.getValue(), "crc32");
120+
return new ContentDigest(String.valueOf(crc32.getValue()), "crc32");
121121
}
122-
return new ContentDigest(-1, "crc32");
122+
return new ContentDigest("", "crc32");
123123
} catch (IOException e) {
124124
throw new ConnectFilePulseException(
125125
"Error while computing CRC32 hash for file : " + f.getName() + " - " + e.getLocalizedMessage());

connect-file-pulse-plugin/src/test/java/io/streamthoughts/kafka/connect/filepulse/offset/DefaultOffsetPolicyTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public class DefaultOffsetPolicyTest {
3737
"test",
3838
0L,
3939
123L,
40-
new FileObjectMeta.ContentDigest(789L, "dummy"),
40+
new FileObjectMeta.ContentDigest("789", "dummy"),
4141
Collections.singletonMap(LocalFileObjectMeta.SYSTEM_FILE_INODE_META_KEY, "456L")
4242
);
4343

@@ -67,7 +67,7 @@ public void should_get_offset_based_on_path() {
6767
public void should_get_offset_based_on_hash() {
6868
Map<String, Object> result = new DefaultOffsetPolicy("HASH").toPartitionMap(metadata);
6969
Assert.assertEquals(1, result.size());
70-
Assert.assertEquals(789L, result.get("hash"));
70+
Assert.assertEquals("789", result.get("hash"));
7171
}
7272

7373
@Test
@@ -91,7 +91,7 @@ public void should_get_composed_offset_based_on_path_and_hash() {
9191
Map<String, Object> result = new DefaultOffsetPolicy("PATH+HASH").toPartitionMap(metadata);
9292
Assert.assertEquals(2, result.size());
9393
Assert.assertEquals("/tmp/path", result.get("path"));
94-
Assert.assertEquals(789L, result.get("hash"));
94+
Assert.assertEquals("789", result.get("hash"));
9595
}
9696

9797
@Test

connect-file-pulse-plugin/src/test/java/io/streamthoughts/kafka/connect/filepulse/state/FileObjectSerdeTest.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ public class FileObjectSerdeTest {
3737
@Rule
3838
public TemporaryFolder testFolder = new TemporaryFolder();
3939

40-
4140
@Test
4241
public void should_serialize_and_deserialize_given_valid_object() throws IOException {
4342
FileObjectSerde serde = new FileObjectSerde();

0 commit comments

Comments
 (0)