38 "SizeRepresentationUtil_units_bytes=bytes",
39 "SizeRepresentationUtil_units_kilobytes=KB",
40 "SizeRepresentationUtil_units_megabytes=MB",
41 "SizeRepresentationUtil_units_gigabytes=GB",
42 "SizeRepresentationUtil_units_terabytes=TB",
43 "SizeRepresentationUtil_units_petabytes=PB"
46 BYTES(Bundle.SizeRepresentationUtil_units_bytes(), 0),
47 KB(Bundle.SizeRepresentationUtil_units_kilobytes(), 1),
48 MB(Bundle.SizeRepresentationUtil_units_megabytes(), 2),
49 GB(Bundle.SizeRepresentationUtil_units_gigabytes(), 3),
50 TB(Bundle.SizeRepresentationUtil_units_terabytes(), 4),
51 PB(Bundle.SizeRepresentationUtil_units_petabytes(), 5);
89 static String getSizeString(Long size) {
98 static SizeUnit getSizeUnit(Long size) {
100 return SizeUnit.values()[0];
103 for (SizeUnit unit : SizeUnit.values()) {
104 long result = size / unit.getDivisor();
110 return SizeUnit.values()[SizeUnit.values().length - 1];
124 static String getSizeString(Long size, DecimalFormat format,
boolean showFullSize) {
129 SizeUnit sizeUnit = getSizeUnit(size);
130 if (sizeUnit ==
null) {
134 String closestUnitSize = String.format(
"%s %s",
135 format.format(((
double) size) / sizeUnit.getDivisor()), sizeUnit.getSuffix());
137 String fullSize = String.format(
"%d %s", size,
SizeUnit.
BYTES.getSuffix());
140 }
else if (showFullSize) {
141 return String.format(
"%s (%s)", closestUnitSize, fullSize);
143 return closestUnitSize;
152 static DefaultCellModel<?> getBytesCell(Long bytes) {
154 return new DefaultCellModel<>(
"");
156 return new DefaultCellModel<>(bytes, SizeRepresentationUtil::getSizeString);