Package railo.runtime.chart

Source Code of railo.runtime.chart.LabelFormatUtil

package railo.runtime.chart;

import java.util.Locale;

import railo.runtime.PageContext;
import railo.runtime.engine.ThreadLocalPageContext;
import railo.runtime.exp.PageException;
import railo.runtime.functions.international.LSCurrencyFormat;
import railo.runtime.functions.international.LSDateFormat;
import railo.runtime.op.Caster;
import railo.runtime.type.dt.DateTime;

public class LabelFormatUtil {


  public static final int LABEL_FORMAT_NUMBER = 0;
  public static final int LABEL_FORMAT_CURRENCY = 1;
  public static final int LABEL_FORMAT_PERCENT = 2;
  public static final int LABEL_FORMAT_DATE = 3;

  public static String formatDate(PageContext pc,double value) {
    DateTime d = Caster.toDate(Caster.toDouble(value),true,null,null);
   
    try {
      return LSDateFormat.call(pc, d);
    } catch (PageException e) {
    }
    return Caster.toString(d,null);
  }

  public static String formatNumber(double value) {
    return Caster.toString(value);
  }

  public static String formatPercent(double value) {
    return Caster.toIntValue(value*100)+" %";
  }

  public static String formatCurrency(PageContext pc,double value) {
    //PageContext pc = Thread LocalPageContext.get();
    Locale locale=pc==null?Locale.US:pc.getLocale();
    return LSCurrencyFormat.local(locale, value);
  }

  public static String format(int labelFormat, double value) {
   
    switch(labelFormat) {
    case LABEL_FORMAT_CURRENCY:  return formatCurrency(ThreadLocalPageContext.get(),value);
    case LABEL_FORMAT_DATE:    return formatDate(ThreadLocalPageContext.get(),value);
    case LABEL_FORMAT_NUMBER:  return formatNumber(value);
    case LABEL_FORMAT_PERCENT:  return formatPercent(value);
    }
    return Caster.toString(value);
  }
}
TOP

Related Classes of railo.runtime.chart.LabelFormatUtil

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.