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}