Example usage for org.apache.commons.beanutils ConvertUtils register

List of usage examples for org.apache.commons.beanutils ConvertUtils register

Introduction

In this page you can find the example usage for org.apache.commons.beanutils ConvertUtils register.

Prototype

public static void register(Converter converter, Class clazz) 

Source Link

Document

Register a custom Converter for the specified destination Class, replacing any previously registered Converter.

For more details see ConvertUtilsBean.

Usage

From source file:org.metawidget.integrationtest.swing.allwidgets.SwingAllWidgetsTest.java

public void testAllWidgets() throws Exception {

    TimeZone.setDefault(TimeZone.getTimeZone("GMT"));

    // BeanUtilsBinding

    ConvertUtils.register(
            new org.metawidget.integrationtest.swing.allwidgets.converter.beanutils.DateConverter(DATE_FORMAT),
            Date.class);
    ConvertUtils.register(/*from   w ww.  ja v a  2  s .  com*/
            new org.metawidget.integrationtest.swing.allwidgets.converter.beanutils.NestedWidgetsConverter(),
            NestedWidgets.class);
    runTest(new BeanUtilsBindingProcessor());
}

From source file:org.metawidget.swing.widgetprocessor.binding.beanutils.BeanUtilsBindingProcessorTest.java

public void testScalaBinding() throws Exception {

    // Model/*from www  . j  a  v  a 2  s  .c o  m*/

    Date dateFirst = new GregorianCalendar(1975, Calendar.APRIL, 9).getTime();

    ScalaFoo scalaFoo = new ScalaFoo();
    scalaFoo.bar_$eq(dateFirst);
    ScalaFoo scalaFoo2 = new ScalaFoo();
    scalaFoo.nestedFoo = scalaFoo2;
    ScalaFoo scalaFoo3 = new ScalaFoo();
    scalaFoo2.nestedFoo = scalaFoo3;
    scalaFoo3.bar_$eq(new GregorianCalendar(1976, Calendar.MAY, 16).getTime());

    // BeanUtilsBinding

    ConvertUtils.register(new DateConverter(DATE_FORMAT), Date.class);

    // Inspect

    SwingMetawidget metawidget = new SwingMetawidget();
    metawidget.addWidgetProcessor(new BeanUtilsBindingProcessor(
            new BeanUtilsBindingProcessorConfig().setPropertyStyle(new ScalaPropertyStyle())));
    BaseObjectInspectorConfig config = new BaseObjectInspectorConfig()
            .setPropertyStyle(new ScalaPropertyStyle());
    metawidget.setInspector(new PropertyTypeInspector(config));
    metawidget.setToInspect(scalaFoo);

    // Loading

    JTextField textField = (JTextField) metawidget.getComponent(1);
    DateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
    assertEquals(dateFormat.format(dateFirst), textField.getText());
    JLabel label = (JLabel) metawidget.getComponent(5);
    assertEquals("Not settable", label.getText());

    JTextField nestedTextField = (JTextField) ((SwingMetawidget) metawidget.getComponent(3)).getComponent(1);
    assertEquals("", nestedTextField.getText());

    JTextField nestedNestedTextField = (JTextField) ((SwingMetawidget) ((SwingMetawidget) metawidget
            .getComponent(3)).getComponent(3)).getComponent(1);
    assertEquals(dateFormat.format(scalaFoo3.bar()), nestedNestedTextField.getText());

    // Saving

    Date dateSecond = new GregorianCalendar(1976, Calendar.MAY, 10).getTime();
    textField.setText(dateFormat.format(dateSecond));
    nestedNestedTextField.setText(dateFormat.format(new GregorianCalendar(1977, Calendar.JUNE, 17).getTime()));
    metawidget.getWidgetProcessor(BeanUtilsBindingProcessor.class).save(metawidget);

    GregorianCalendar calendar = new GregorianCalendar();
    calendar.setTime(scalaFoo.bar());
    assertEquals(1976, calendar.get(Calendar.YEAR));
    assertEquals(null, scalaFoo2.bar());
    calendar.setTime(scalaFoo3.bar());
    assertEquals(1977, calendar.get(Calendar.YEAR));

    // Rebinding

    textField = (JTextField) metawidget.getComponent(1);
    assertEquals(dateFormat.format(dateSecond), textField.getText());

    scalaFoo.bar_$eq(dateFirst);
    metawidget.getWidgetProcessor(BeanUtilsBindingProcessor.class).rebind(scalaFoo, metawidget);

    textField = (JTextField) metawidget.getComponent(1);
    assertEquals(dateFormat.format(dateFirst), textField.getText());
}

From source file:org.openhie.openempi.util.TestConversions.java

public static void exploringBeanUtils() {
    Person person = new Person();
    person.setAddress1("2930 Oak Shadow Drive");
    person.setCity("Oak Hill");
    PersonIdentifier id = new PersonIdentifier();
    id.setIdentifier("1234");
    IdentifierDomain domain = new IdentifierDomain();
    domain.setIdentifierDomainName("testDomain");
    domain.setNamespaceIdentifier("testDomain");
    id.setIdentifierDomain(domain);/*from  w w  w. ja  v  a2 s  .  c  o  m*/
    person.addPersonIdentifier(id);

    Nationality nationality = new Nationality();
    nationality.setNationalityCd(100);
    person.setNationality(nationality);
    person.setDateOfBirth(new java.util.Date());

    ConvertingWrapDynaBean bean = new ConvertingWrapDynaBean(person);
    System.out.println("Build a dyna bean using my person:");
    System.out.println(bean.get("address1"));
    System.out.println(bean.get("dateOfBirth"));

    System.out.println("Changing some of the values.");
    bean.set("givenName", "Odysseas");
    bean.set("familyName", "Pentakalos");
    System.out.println(bean.get("nationality.nationalityCd"));
    bean.set("nationality.nationalityCd", "150");
    System.out.println("Value " + bean.get("nationality.nationalityCd") + " is of type "
            + bean.get("nationality.nationalityCd").getClass());
    person = (Person) bean.getInstance();
    System.out.println(person);

    List<String> properties = ConvertUtil.extractProperties(person);
    for (String property : properties) {
        System.out.println("Property name is: " + property);
    }

    //      DynaProperty[] properties = bean.getDynaClass().getDynaProperties();
    //      for (DynaProperty property : properties) {
    //         System.out.println("The map has the property: " + property.getName() + " which is mapped " + property.getType());
    //         if (property.getType().getName().startsWith("org.openhie")) {
    //            WrapDynaClass dynaClass = WrapDynaClass.createDynaClass(property.getType());
    //            DynaProperty[] internalProperties = dynaClass.getDynaProperties();
    //            for (DynaProperty internalProperty : internalProperties) {
    //               System.out.println("The map has the property: " + property.getName() + "." + internalProperty.getName());
    //            }
    //         }
    //      }

    //      BeanMap beanMap = new BeanMap(person);
    //      Set<String> properties = beanMap.keySet();
    //      for (String key : properties) {
    //         System.out.println("The map has the property: " + key);
    //      }

    org.apache.commons.beanutils.converters.DateConverter converter = new org.apache.commons.beanutils.converters.DateConverter();
    converter.setPattern("yyyy.MM.dd HH:mm:ss z");
    String[] patterns = converter.getPatterns();
    for (String pattern : patterns) {
        System.out.println("Pattern is " + pattern);
    }
    Date now = new Date();
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss z");
    System.out.println(sdf.format(now));

    ConvertUtils.register(converter, java.util.Date.class);
    ConvertUtils convertUtils = new ConvertUtils();
    System.out.println(convertUtils.convert("2009.03.06 15:13:29 EST", java.util.Date.class));

    try {
        BeanUtils.setProperty(person, "dateOfBirth", "2009.03.06 15:13:29 EST");
    } catch (IllegalAccessException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (InvocationTargetException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    System.out.println(bean.get("dateOfBirth"));

    System.out.println(bean.getDynaClass().getDynaProperty("dateOfBirth"));
    bean.set("dateOfBirth", "2009.03.06 15:13:29 EST");
    System.out.println(bean.get("dateOfBirth"));
}

From source file:org.openvpms.component.system.common.jxpath.OpenVPMSTypeConverter.java

/**
 * Default constructor/*from  w  ww .ja v a 2s.  co m*/
 */
public OpenVPMSTypeConverter() {
    super();

    // register additional converters
    // TODO do it through injection so we remove the dependency
    ConvertUtils.register(new MoneyConverter(), Money.class);
    ConvertUtils.register(new UtilDateConverter(), Date.class);
}

From source file:org.quickbundle.third.struts.action.RmActionServlet.java

/**
  * <p>Initialize other global characteristics of the controller
  * servlet.</p>/*from w  ww  .j  a  va 2  s.c  o  m*/
  *
  * @throws ServletException if we cannot initialize these resources
  */
protected void initOther() throws ServletException {
    String value;

    value = getServletConfig().getInitParameter("config");

    if (value != null) {
        //QB-RM add *.xml
        if (value.trim().length() > 0 && value.indexOf("*.xml") > -1) { //
            String finalValue = "";
            String[] aValue = value.trim().split(",");
            for (int j = 0; j < aValue.length; j++) {
                String path = aValue[j];
                if (path.trim().length() == 0) {
                    continue;
                }
                //??*.xml
                if (path.trim().endsWith("*.xml")) {
                    File fWarDirStr = RmPathHelper.getWarDir();
                    File fPath = new File(fWarDirStr + File.separator
                            + (path.substring(0, path.length() - "*.xml".length())));
                    for (int i = 0; i < fPath.listFiles().length; i++) {
                        File fPathXml = fPath.listFiles()[i];
                        if (fPathXml.isFile() && fPathXml.toString().toLowerCase().endsWith(".xml")) {
                            String newPath = fPathXml.getAbsolutePath()
                                    .substring((int) fWarDirStr.getAbsoluteFile().toString().length())
                                    .replaceAll("\\\\", "/");
                            finalValue += newPath + ",";
                        }
                    }
                } else {
                    finalValue += path + ",";
                }
            }
            if (finalValue.endsWith(",")) {
                finalValue = finalValue.substring(0, finalValue.length() - ",".length());
            }
            config = finalValue;
        } else {
            config = value;
        }
    }

    // Backwards compatibility for form beans of Java wrapper classes
    // Set to true for strict Struts 1.0 compatibility
    value = getServletConfig().getInitParameter("convertNull");

    if ("true".equalsIgnoreCase(value) || "yes".equalsIgnoreCase(value) || "on".equalsIgnoreCase(value)
            || "y".equalsIgnoreCase(value) || "1".equalsIgnoreCase(value)) {
        convertNull = true;
    }

    if (convertNull) {
        ConvertUtils.deregister();
        ConvertUtils.register(new BigDecimalConverter(null), BigDecimal.class);
        ConvertUtils.register(new BigIntegerConverter(null), BigInteger.class);
        ConvertUtils.register(new BooleanConverter(null), Boolean.class);
        ConvertUtils.register(new ByteConverter(null), Byte.class);
        ConvertUtils.register(new CharacterConverter(null), Character.class);
        ConvertUtils.register(new DoubleConverter(null), Double.class);
        ConvertUtils.register(new FloatConverter(null), Float.class);
        ConvertUtils.register(new IntegerConverter(null), Integer.class);
        ConvertUtils.register(new LongConverter(null), Long.class);
        ConvertUtils.register(new ShortConverter(null), Short.class);
    }
}

From source file:org.shenjitang.mongodbutils.MongoDbOperater.java

public <T> T findOneObj(String dbName, String sql, Class<T> clazz)
        throws JSQLParserException, InstantiationException, IllegalAccessException, InvocationTargetException {
    Map map = findOne(dbName, sql);
    if (map == null) {
        return null;
    }/*from  w ww .  j a va  2  s .c  o  m*/
    T obj = clazz.newInstance();
    ConvertUtils.register(new DateConverter(null), Date.class);
    ConvertUtils.register(new IntegerConverter(null), Integer.class);
    BeanUtils.populate(obj, map);
    return obj;
}

From source file:org.shenjitang.mongodbutils.MongoDbOperater.java

public <T> T findOneObj(String dbName, String collName, Map queryMap, Class<T> clazz)
        throws InstantiationException, IllegalAccessException, InvocationTargetException {
    DB db = mongoClient.getDB(dbName);/*  w  w w  .  j a  v  a 2  s  .co  m*/
    DBCollection coll = db.getCollection(collName);
    BasicDBObject query = new BasicDBObject(queryMap);
    DBObject map = coll.findOne(query);
    if (map == null) {
        return null;
    }
    T obj = clazz.newInstance();
    ConvertUtils.register(new DateConverter(null), Date.class);
    ConvertUtils.register(new IntegerConverter(null), Integer.class);
    BeanUtils.populate(obj, map.toMap());
    return obj;
}

From source file:org.toobsframework.pres.component.manager.ComponentManager.java

public void afterPropertiesSet() throws Exception {
    super.afterPropertiesSet();
    registry = new ConcurrentHashMap<String, org.toobsframework.pres.component.Component>();
    ConvertUtils.register(new DateToStringConverter(), String.class);

    this.insertConfigFile(PresConstants.TOOBS_INTERNAL_ERROR_CONFIG_COMPONENTS);
    loadConfig(Components.class);
}

From source file:org.vulpe.controller.struts.VulpeStrutsStartupExtend.java

@Override
public void contextInitialized(final ServletContextEvent event) {
    // configuration bundle
    LocalizedTextUtil.addDefaultResourceBundle(VulpeConfigHelper.getI18nManager());

    // register converters to struts
    ConvertUtils.register(new DateConverter(), Date.class);
    ConvertUtils.register(new SqlDateConverter(), java.sql.Date.class);
    ConvertUtils.register(new BigDecimalConverter(), BigDecimal.class);
    ConvertUtils.register(new DecimalConverter(), Double.class);
    ConvertUtils.register(new EnumConverter(), Enum.class);
}

From source file:org.waterforpeople.mapping.app.util.DtoMarshaller.java

/**
 * sets up the converters that this marshaller should use
 */// w  w  w.j av  a2 s .c om
private static void configureConverters() {
    String pattern = "MM/dd/yy";
    Locale locale = Locale.getDefault();
    DateLocaleConverter converter = new DateLocaleConverter(locale, pattern);
    converter.setLenient(true);
    ConvertUtils.register(converter, java.util.Date.class);

    TypeEnumConverter enumConverter = new TypeEnumConverter();
    ConvertUtils.register(enumConverter, Question.Type.class);
    ConvertUtils.register(enumConverter, QuestionDto.QuestionType.class);
    ConvertUtils.register(enumConverter, AccessPoint.Status.class);
    ConvertUtils.register(enumConverter, AccessPoint.AccessPointType.class);
    ConvertUtils.register(enumConverter, UnitOfMeasure.UnitOfMeasureSystem.class);
    ConvertUtils.register(enumConverter, UnitOfMeasure.UnitOfMeasureType.class);
    ConvertUtils.register(enumConverter, QuestionHelpMedia.Type.class);
    ConvertUtils.register(enumConverter, QuestionHelpDto.Type.class);
    ConvertUtils.register(enumConverter, OGRFeatureDto.FeatureType.class);
    ConvertUtils.register(enumConverter, Survey.Status.class);
    ConvertUtils.register(enumConverter, Survey.Sector.class);

    // Resetting default values from zero to null
    ConvertUtils.register(new DoubleConverter(null), Double.class);
    ConvertUtils.register(new LongConverter(null), Long.class);
    ConvertUtils.register(new IntegerConverter(null), Integer.class);

    DatastoreTextConverter textConverter = new DatastoreTextConverter();
    ConvertUtils.register(textConverter, Text.class);
    ConvertUtils.register(textConverter, String.class);
}