frostfs-sdk-java/models/src/main/java/info/frostfs/sdk/mappers/StatusMapper.java
Bruk Ori 441d3129dc [#6] cover the models module with junit tests
Signed-off-by: Ori Bruk <o.bruk@yadro.com>
2024-08-21 11:12:33 +03:00

29 lines
811 B
Java

package info.frostfs.sdk.mappers;
import frostfs.status.Types;
import info.frostfs.sdk.dto.Status;
import info.frostfs.sdk.enums.StatusCode;
import static java.util.Objects.isNull;
public class StatusMapper {
private static final String ERROR_UNKNOWN_VALUE_TEMPLATE = "Unknown StatusCode. Value: %s.";
private StatusMapper() {
}
public static Status toModel(Types.Status status) {
if (isNull(status)) {
return new Status(StatusCode.SUCCESS);
}
var statusCode = StatusCode.get(status.getCode());
if (isNull(statusCode)) {
throw new IllegalArgumentException(
String.format(ERROR_UNKNOWN_VALUE_TEMPLATE, status.getCode())
);
}
return new Status(statusCode, status.getMessage());
}
}