frostfs-sdk-java/models/src/main/java/info/frostfs/sdk/dto/SplitId.java
Bruk Ori bf2f19f08d [#1] provide naming conventions
Signed-off-by: Ori Bruk <o.bruk@yadro.com>
2024-07-24 15:49:12 +03:00

44 lines
934 B
Java

package info.frostfs.sdk.dto;
import java.util.UUID;
import static info.frostfs.sdk.UUIDExtension.asBytes;
import static info.frostfs.sdk.UUIDExtension.asUuid;
import static java.util.Objects.isNull;
public class SplitId {
private final UUID id;
public SplitId(UUID uuid) {
this.id = uuid;
}
public SplitId() {
this.id = UUID.randomUUID();
}
private SplitId(byte[] binary) {
this.id = asUuid(binary);
}
private SplitId(String str) {
this.id = UUID.fromString(str);
}
public static SplitId createFromBinary(byte[] binaryData) {
return new SplitId(binaryData);
}
public static SplitId createFromString(String stringData) {
return new SplitId(stringData);
}
@Override
public String toString() {
return id.toString();
}
public byte[] toBinary() {
return isNull(id) ? null : asBytes(id);
}
}