ips1ap101.lib.base.BaseBundle.java Source code

Java tutorial

Introduction

Here is the source code for ips1ap101.lib.base.BaseBundle.java

Source

/*
 * Este programa es software libre; usted puede redistribuirlo y/o modificarlo bajo los trminos
 * de la licencia "GNU General Public License" publicada por la Fundacin "Free Software Foundation".
 * Este programa se distribuye con la esperanza de que pueda ser til, pero SIN NINGUNA GARANTIA;
 * vea la licencia "GNU General Public License" para obtener mas informacin.
 */
package ips1ap101.lib.base;

import com.sun.rave.web.ui.appbase.AbstractPageBean;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
import ips1ap101.lib.core.web.app.ThreadContext;
import org.apache.commons.lang.StringUtils;

/**
 * @author Jorge Campins
 */
public class BaseBundle {

    private static final String BASE_NAME = BaseBundle.class.getName();

    private static final ResourceBundle resourceBundle = ResourceBundle.getBundle(BASE_NAME);

    private static final String DEFAULT = "default";

    private static final String NOMBRE_VISTA_FUNCION_EXPORT = "nombre_vista_funcion_export";

    private static final String LIMITE_FILAS_FUNCION_EXPORT = "limite_filas_funcion_export";

    private static final String OPCION_ORDEN_FUNCION_EXPORT = "opcion_orden_funcion_export";

    private static final String NOMBRE_VISTA_FUNCION_REPORT = "nombre_vista_funcion_report";

    private static final String LIMITE_FILAS_FUNCION_REPORT = "limite_filas_funcion_report";

    private static final String OPCION_ORDEN_FUNCION_REPORT = "opcion_orden_funcion_report";

    private static final String NOMBRE_VISTA_FUNCION_SELECT = "nombre_vista_funcion_select";

    private static final String LIMITE_FILAS_FUNCION_SELECT = "limite_filas_funcion_select";

    private static final String OPCION_ORDEN_FUNCION_SELECT = "opcion_orden_funcion_select";

    public static String getNombreVistaFuncionExport(String key) {
        return getString(key, NOMBRE_VISTA_FUNCION_EXPORT);
    }

    public static String getLimiteFilasFuncionExport(String key) {
        String string = getString(key, LIMITE_FILAS_FUNCION_EXPORT);
        if (string == null) {
            String dominio = StringUtils.substringBeforeLast(key, ".");
            if (key.equals(dominio)) {
            } else {
                string = getString(dominio, LIMITE_FILAS_FUNCION_EXPORT);
            }
        }
        if (string == null) {
            string = getString(DEFAULT, LIMITE_FILAS_FUNCION_EXPORT);
        }
        return string;
    }

    public static String getOpcionOrdenFuncionExport(String key) {
        String string = getString(key, OPCION_ORDEN_FUNCION_EXPORT);
        if (string == null) {
            String dominio = StringUtils.substringBeforeLast(key, ".");
            if (key.equals(dominio)) {
            } else {
                string = getString(dominio, OPCION_ORDEN_FUNCION_EXPORT);
            }
        }
        if (string == null) {
            string = getString(DEFAULT, OPCION_ORDEN_FUNCION_EXPORT);
        }
        return string;
    }

    public static String getNombreVistaFuncionReport(String key) {
        return getString(key, NOMBRE_VISTA_FUNCION_REPORT);
    }

    public static String getLimiteFilasFuncionReport(String key) {
        String string = getString(key, LIMITE_FILAS_FUNCION_REPORT);
        if (string == null) {
            String dominio = StringUtils.substringBeforeLast(key, ".");
            if (key.equals(dominio)) {
            } else {
                string = getString(dominio, LIMITE_FILAS_FUNCION_REPORT);
            }
        }
        if (string == null) {
            string = getString(DEFAULT, LIMITE_FILAS_FUNCION_REPORT);
        }
        return string;
    }

    public static String getOpcionOrdenFuncionReport(String key) {
        String string = getString(key, OPCION_ORDEN_FUNCION_REPORT);
        if (string == null) {
            String dominio = StringUtils.substringBeforeLast(key, ".");
            if (key.equals(dominio)) {
            } else {
                string = getString(dominio, OPCION_ORDEN_FUNCION_REPORT);
            }
        }
        if (string == null) {
            string = getString(DEFAULT, OPCION_ORDEN_FUNCION_REPORT);
        }
        return string;
    }

    public static String getNombreVistaFuncionSelect(String key) {
        return getString(key, NOMBRE_VISTA_FUNCION_SELECT);
    }

    public static String getLimiteFilasFuncionSelect(String key) {
        String string = getString(key, LIMITE_FILAS_FUNCION_SELECT);
        if (string == null) {
            String dominio = StringUtils.substringBeforeLast(key, ".");
            if (key.equals(dominio)) {
            } else {
                string = getString(dominio, LIMITE_FILAS_FUNCION_SELECT);
            }
        }
        if (string == null) {
            string = getString(DEFAULT, LIMITE_FILAS_FUNCION_SELECT);
        }
        return string;
    }

    public static String getOpcionOrdenFuncionSelect(String key) {
        String string = getString(key, OPCION_ORDEN_FUNCION_SELECT);
        if (string == null) {
            String dominio = StringUtils.substringBeforeLast(key, ".");
            if (key.equals(dominio)) {
            } else {
                string = getString(dominio, OPCION_ORDEN_FUNCION_SELECT);
            }
        }
        if (string == null) {
            string = getString(DEFAULT, OPCION_ORDEN_FUNCION_SELECT);
        }
        return string;
    }

    // <editor-fold defaultstate="collapsed">
    //  public static String getColumnaIndicadorInactivo(String key) {
    //      String string = getString(key, COLUMNA_INDICADOR_INACTIVO);
    //      return string;
    //  }
    //
    //  public static String getFuncionIndicadorInactivo(String key) {
    //      String string = getString(key, FUNCION_INDICADOR_INACTIVO);
    //      return string;
    //  }
    //
    //  public static String getColumnaPropietario(String key) {
    //      String string = getString(key, COLUMNA_PROPIETARIO);
    //      return string;
    //  }
    //
    //  public static String getFuncionPropietario(String key) {
    //      String string = getString(key, FUNCION_PROPIETARIO);
    //      return string;
    //  }
    //
    //  public static String getColumnaSegmento(String key) {
    //      String string = getString(key, COLUMNA_SEGMENTO);
    //      return string;
    //  }
    //
    //  public static String getFuncionSegmento(String key) {
    //      String string = getString(key, FUNCION_SEGMENTO);
    //      return string;
    //  }
    // </editor-fold>
    //
    private static final String NAME = "name";

    private static final String TYPE = "type";

    private static final String DATA_TYPE = "data_type";

    public static String getName(String key) {
        if (StringUtils.isBlank(key)) {
            return null;
        }
        String string = getString(key, NAME);
        return string == null ? key : string;
    }

    public static String getType(String key) {
        String string = getString(key, TYPE);
        return string;
    }

    public static String getDataType(String key) {
        String string = getString(key, DATA_TYPE);
        return string;
    }

    public static String getCurrentPageString(String key) {
        return getCurrentPageString(key, key);
    }

    public static String getCurrentPageString(String key, String defaultString) {
        AbstractPageBean page = ThreadContext.getPaginaActual();
        return getString(page, key, defaultString);
    }

    public static String getString(AbstractPageBean page, String key) {
        return getString(page, key, key);
    }

    public static String getString(AbstractPageBean page, String key, String defaultString) {
        Package pack = page == null ? null : page.getClass().getPackage();
        return getString(pack, key, defaultString);
    }

    public static String getString(Package pack, String key) {
        return getString(pack, key, key);
    }

    public static String getString(Package pack, String key, String defaultString) {
        String prefix = pack == null ? "" : pack.getName() + ".";
        return defaultIfBlank(prefix + key, defaultString);
    }

    public static String getString(Class<?> clazz, String key) {
        return getString(clazz, key, key);
    }

    public static String getString(Class<?> clazz, String key, String defaultString) {
        String prefix = clazz == null ? "" : clazz.getName() + ".";
        return defaultIfBlank(prefix + key, defaultString);
    }

    private static final String SEARCH = "search";

    private static final String DETAIL = "detail";

    public static String getPage(String pagina) {
        return getString(pagina);
    }

    public static String getReferenceSearchPage(String pagina, String referencia) {
        String key = pagina + "." + referencia + "." + SEARCH;
        return getString(key);
    }

    public static String getReferenceDetailPage(String pagina, String referencia) {
        String key = pagina + "." + referencia + "." + DETAIL;
        return getString(key);
    }

    private static final String PROPERTY_ENTITY = "property_entity";

    private static final String PROPERTY_COLUMN = "property_column";

    private static final String PROPERTY_SELECT = "property_select";

    public static String getPropertyEntity(String entity, String property) {
        String string = getString(entity, property, PROPERTY_ENTITY);
        return string;
    }

    public static String getPropertyColumn(String entity, String property) {
        String string = getString(entity, property, PROPERTY_COLUMN);
        return string;
    }

    public static Long getPropertySelect(String entity, String property) {
        String string = getString(entity, property, PROPERTY_SELECT);
        return string == null ? null : new Long(string);
    }

    private static String getString(String... keys) {
        if (keys == null || keys.length == 0) {
            return null;
        }
        String join = StringUtils.join(keys, ".");
        return getString(join);
    }

    private static String getString(String key) {
        if (StringUtils.isNotBlank(key)) {
            try {
                return StringUtils.trimToNull(resourceBundle.getString(key));
            } catch (MissingResourceException e) {
            }
        }
        return null;
    }

    public static String defaultIfBlank(String key, String defaultString) {
        if (StringUtils.isNotBlank(key)) {
            try {
                String string = resourceBundle.getString(key);
                return StringUtils.defaultIfBlank(string, defaultString);
            } catch (MissingResourceException e) {
            }
        }
        return defaultString;
    }

}