001package net.filebot.format; 002 003public class FileSize extends AutoScaleInteger { 004 005 public FileSize(long value) { 006 super(value, Scale.AUTO); 007 } 008 009 public FileSize(long value, Scale scale) { 010 super(value, scale); 011 } 012 013 @Override 014 public FileSize scale(Scale scale) { 015 return new FileSize(value, scale); 016 } 017 018 public FileSize getGB() { 019 return scale(Scale.G); 020 } 021 022 public FileSize getMB() { 023 return scale(Scale.M); 024 } 025 026 public FileSize getKB() { 027 return scale(Scale.K); 028 } 029 030 @Override 031 public String getUnit(Scale scale) { 032 switch (scale) { 033 case G: 034 return "GB"; 035 case M: 036 return "MB"; 037 case K: 038 return "kB"; 039 default: 040 return "bytes"; 041 } 042 } 043 044}