frostfs-sdk-java/models/src/main/java/info/frostfs/sdk/mappers/SignatureMapper.java
Bruk Ori 027e1445d6
All checks were successful
DCO / DCO (pull_request) Successful in 26s
[#6] cover the models module with junit tests
Signed-off-by: Ori Bruk <o.bruk@yadro.com>
2024-08-21 11:00:33 +03:00

33 lines
1,021 B
Java

package info.frostfs.sdk.mappers;
import com.google.protobuf.ByteString;
import frostfs.refs.Types;
import info.frostfs.sdk.dto.Signature;
import static java.util.Objects.isNull;
public class SignatureMapper {
private static final String ERROR_UNKNOWN_VALUE_TEMPLATE = "Unknown SignatureScheme. Value: %s.";
private SignatureMapper() {
}
public static Types.Signature toGrpcMessage(Signature signature) {
if (isNull(signature)) {
return null;
}
var scheme = Types.SignatureScheme.forNumber(signature.getScheme().value);
if (isNull(scheme)) {
throw new IllegalArgumentException(
String.format(ERROR_UNKNOWN_VALUE_TEMPLATE, signature.getScheme().name())
);
}
return Types.Signature.newBuilder()
.setKey(ByteString.copyFrom(signature.getKey()))
.setSign(ByteString.copyFrom(signature.getSign()))
.setScheme(scheme)
.build();
}
}