diff --git a/kop-common-lib/src/main/java/de/itvsh/kop/common/binaryfile/FileId.java b/kop-common-lib/src/main/java/de/itvsh/kop/common/binaryfile/FileId.java index 2bf5619710d525457beff5584ca950c0180178f3..a835af8f3dd36b41818e5433490bbaa0b7cf100c 100644 --- a/kop-common-lib/src/main/java/de/itvsh/kop/common/binaryfile/FileId.java +++ b/kop-common-lib/src/main/java/de/itvsh/kop/common/binaryfile/FileId.java @@ -23,6 +23,7 @@ */ package de.itvsh.kop.common.binaryfile; +import java.util.Objects; import java.util.UUID; import de.itvsh.kop.common.datatype.StringBasedValue; @@ -42,6 +43,9 @@ public class FileId extends StringBasedValue { } public static FileId from(String fileId) { - return new FileId(fileId); + if (Objects.nonNull(fileId)) { + return new FileId(fileId); + } + return null; } } \ No newline at end of file diff --git a/kop-common-lib/src/main/java/de/itvsh/kop/common/grpc/GrpcUtil.java b/kop-common-lib/src/main/java/de/itvsh/kop/common/grpc/GrpcUtil.java index c3c6d3eca32ff47de2a7e60ce483b7296fd0445d..2348cc209229a09ed9a8aa00000ea18db71a82f1 100644 --- a/kop-common-lib/src/main/java/de/itvsh/kop/common/grpc/GrpcUtil.java +++ b/kop-common-lib/src/main/java/de/itvsh/kop/common/grpc/GrpcUtil.java @@ -37,6 +37,11 @@ import lombok.NoArgsConstructor; @NoArgsConstructor(access = AccessLevel.PRIVATE) public class GrpcUtil { + + public static final Key<byte[]> HEADER_KEY_USER_ID = createKeyOf("USER_ID-bin"); + public static final Key<byte[]> HEADER_KEY_CLIENT_NAME = createKeyOf("CLIENT_NAME-bin"); + public static final Key<byte[]> HEADER_KEY_REQUEST_ID = createKeyOf("REQUEST_ID-bin"); + public static Key<String> keyOfString(String key) { return Key.of(key, Metadata.ASCII_STRING_MARSHALLER); } @@ -45,10 +50,12 @@ public class GrpcUtil { return Key.of(key, Metadata.BINARY_BYTE_MARSHALLER); } - public static String getFromHeaders(String key, Metadata headers) { - return Optional.ofNullable(headers.get(createKeyOf(key))) - .map(GrpcUtil::byteToString) - .orElse(null); + public static Optional<String> getFromHeaders(String key, Metadata headers) { + return getFromHeaders(createKeyOf(key), headers); + } + + public static Optional<String> getFromHeaders(Key<byte[]> key, Metadata headers) { + return Optional.ofNullable(headers.get(key)).map(GrpcUtil::byteToString); } public static Collection<String> getCollection(String key, Metadata headers) { @@ -64,4 +71,5 @@ public class GrpcUtil { private static String byteToString(byte[] bytes) { return new String(bytes, StandardCharsets.UTF_8); } + } \ No newline at end of file