Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package br.com.mileniospvp.types;
- import java.util.concurrent.TimeUnit;
- public class TimeProfile {
- private final long milliseconds;
- private int seconds;
- private int minutes;
- private int hours;
- private int days;
- private int weeks;
- private int months;
- private int years;
- public static String[] formats = new String[] { "ms", "seconds", "minutes", "hours", "days", "weeks", "months", "years" };
- public TimeProfile(long milliseconds) {
- this.milliseconds = milliseconds;
- this.seconds = (int) TimeUnit.MILLISECONDS.toSeconds(this.milliseconds);
- this.minutes = (int) TimeUnit.MILLISECONDS.toMinutes(this.milliseconds);
- this.hours = (int) TimeUnit.MILLISECONDS.toHours(this.milliseconds);
- this.days = (int) TimeUnit.MILLISECONDS.toDays(this.milliseconds);
- this.years = this.days / 365;
- this.days = this.days % 365;
- this.months = this.days / 30;
- this.days = this.days % 30;
- this.weeks = this.days / 7;
- this.days = this.days % 7;
- }
- public long getMilliseconds() {
- return milliseconds;
- }
- public int getSeconds() {
- return seconds;
- }
- public int getMinutes() {
- return minutes;
- }
- public int getHours() {
- return hours;
- }
- public int getDays() {
- return days;
- }
- public int getWeeks() {
- return weeks;
- }
- public int getMonths() {
- return months;
- }
- public int getYears() {
- return years;
- }
- public void setSeconds(int seconds) {
- this.seconds = seconds;
- }
- public void setMinutes(int minutes) {
- this.minutes = minutes;
- }
- public void setHours(int hours) {
- this.hours = hours;
- }
- public void setDays(int days) {
- this.days = days;
- }
- public void setWeeks(int weeks) {
- this.weeks = weeks;
- }
- public void setMonths(int months) {
- this.months = months;
- }
- public void setYears(int years) {
- this.years = years;
- }
- public String formatToMilliseconds() {
- return milliseconds + " " + formated("milliseconds");
- }
- public String formatToSeconds() {
- return seconds + " " + formated("seconds");
- }
- public String formatToMinutes() {
- return minutes + " " + formated("minutes");
- }
- public String formatToHours() {
- return hours + " " + formated("hours");
- }
- public String formatToDays() {
- return days + " " + formated("days");
- }
- public String formatToWeeks() {
- return weeks + " " + formated("weeks");
- }
- public String formatToMonths() {
- return months + " " + formated("months");
- }
- public String formatToYears() {
- return years + " " + formated("years");
- }
- public String format() {
- return formatToYears() +
- " " + formatToMonths() +
- " " + formatToWeeks() +
- " " + formatToDays() +
- " " + formatToHours() +
- " " + formatToMinutes() +
- " " + formatToSeconds() +
- " (" + formatToMilliseconds() + ")";
- }
- private String formated(String unit) {
- if(unit.equalsIgnoreCase("milliseconds")) {
- return formats[0];
- } else if(unit.equalsIgnoreCase("seconds")) {
- return formats[1];
- } else if(unit.equalsIgnoreCase("minutes")) {
- return formats[2];
- } else if(unit.equalsIgnoreCase("hours")) {
- return formats[3];
- } else if(unit.equalsIgnoreCase("days")) {
- return formats[4];
- } else if(unit.equalsIgnoreCase("weeks")) {
- return formats[5];
- } else if(unit.equalsIgnoreCase("months")) {
- return formats[6];
- } else if(unit.equalsIgnoreCase("years")) {
- return formats[7];
- }
- return formats[0];
- }
- public String toString() {
- return "TimeProfile [milliseconds=" + this.milliseconds + ", seconds=" + this.seconds + ", minutes=" + this.minutes + ", hours=" + this.hours + ", days=" + this.days + ", weeks=" + this.weeks + ", months=" + this.months + ", years=" + this.years + "]";
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment