package org.geogebra.common.factories;
import org.geogebra.common.util.NumberFormatAdapter;
import org.geogebra.common.util.ScientificFormatAdapter;
public abstract class FormatFactory {
private static volatile FormatFactory prototype;
private static final Object lock = new Object();
public static FormatFactory getPrototype() {
return prototype;
}
public static void setPrototypeIfNull(FormatFactory p) {
synchronized (lock) {
if (prototype == null) {
prototype = p;
}
}
}
public abstract ScientificFormatAdapter getScientificFormat(int sigDigit,
int maxWidth, boolean sciNote);
public abstract NumberFormatAdapter getNumberFormat(int digits);
public abstract NumberFormatAdapter getNumberFormat(String pattern,
int digits);
}