
com.xlrit.gears.engine.meta.PrintOptions Maven / Gradle / Ivy
package com.xlrit.gears.engine.meta;
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
import java.time.format.DateTimeFormatter;
import java.time.format.FormatStyle;
import java.util.Locale;
public record PrintOptions(DecimalFormat decimalFormat, DateTimeFormatter dateTimeFormatter, DateTimeFormatter dateFormatter, DateTimeFormatter timeFormatter) {
public static final PrintOptions NONE = null;
public static final PrintOptions DEFAULT = getDefault();
private static PrintOptions getDefault() {
return forLocale(Locale.getDefault());
}
public static PrintOptions forLocale(Locale locale) {
DecimalFormat decimalFormat = new DecimalFormat("###0.##", new DecimalFormatSymbols(locale));
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofLocalizedDateTime(FormatStyle.MEDIUM).withLocale(locale); //DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
DateTimeFormatter dateFormatter = DateTimeFormatter.ofLocalizedDate(FormatStyle.MEDIUM).withLocale(locale);
DateTimeFormatter timeFormatter = DateTimeFormatter.ofLocalizedTime(FormatStyle.MEDIUM).withLocale(locale);
return new PrintOptions(decimalFormat, dateTimeFormatter, dateFormatter, timeFormatter);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy