Example usage for org.springframework.beans BeanWrapper registerCustomEditor

List of usage examples for org.springframework.beans BeanWrapper registerCustomEditor

Introduction

In this page you can find the example usage for org.springframework.beans BeanWrapper registerCustomEditor.

Prototype

void registerCustomEditor(Class<?> requiredType, PropertyEditor propertyEditor);

Source Link

Document

Register the given custom property editor for all properties of the given type.

Usage

From source file:net.solarnetwork.node.hw.currentcost.CCMessageParser.java

@Override
protected void registerCustomEditors(BeanWrapper bean) {
    bean.registerCustomEditor(LocalTime.class, LOCAL_TIME_EDITOR);
}

From source file:org.codehaus.griffon.runtime.quartz.CustomTriggerFactoryBean.java

public void afterPropertiesSet() throws ParseException {
    customTrigger = BeanUtils.instantiateClass(triggerClass);

    if (triggerAttributes.containsKey(QuartzConstants.START_DELAY)) {
        Number startDelay = (Number) triggerAttributes.remove(QuartzConstants.START_DELAY);
        customTrigger.setStartTime(new Date(System.currentTimeMillis() + startDelay.longValue()));
    }/*from  w  w w. j  a v  a2  s .co m*/

    if (jobDetail != null) {
        customTrigger.setJobName(jobDetail.getName());
        customTrigger.setJobGroup(jobDetail.getGroup());
    }

    BeanWrapper customTriggerWrapper = PropertyAccessorFactory.forBeanPropertyAccess(customTrigger);
    customTriggerWrapper.registerCustomEditor(String.class, new StringEditor());
    customTriggerWrapper.setPropertyValues(triggerAttributes);
}

From source file:grails.plugins.quartz.CustomTriggerFactoryBean.java

public void afterPropertiesSet() throws ParseException {
    // Create a trigger by the class name
    customTrigger = BeanUtils.instantiateClass(triggerClass);

    // If trigger is a standard trigger, set standard properties
    if (customTrigger instanceof AbstractTrigger) {
        AbstractTrigger<?> at = (AbstractTrigger<?>) customTrigger;

        if (jobDetail != null) {
            at.setJobKey(jobDetail.getKey());
        }//from  ww  w. j a v a 2  s  .c  o  m

        if (triggerAttributes.containsKey(GrailsJobClassConstants.START_DELAY)) {
            Number startDelay = (Number) triggerAttributes.remove(GrailsJobClassConstants.START_DELAY);
            at.setStartTime(new Date(System.currentTimeMillis() + startDelay.longValue()));
        }
    }

    // Set non standard properties.
    BeanWrapper customTriggerWrapper = PropertyAccessorFactory.forBeanPropertyAccess(customTrigger);
    customTriggerWrapper.registerCustomEditor(String.class, new StringEditor());
    customTriggerWrapper.setPropertyValues(triggerAttributes);
}

From source file:com.seovic.core.updater.BeanWrapperUpdater.java

/**
 * {@inheritDoc}/*from w w w  .j  a v  a2 s  .c  o  m*/
 */
public void update(Object target, Object value) {
    BeanWrapper bw = new BeanWrapperImpl(target);
    if (value instanceof Date) {
        bw.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd"), true));
    }
    bw.setPropertyValue(m_propertyName, value);
}

From source file:org.jdal.ui.bind.AbstractBinder.java

private BeanWrapper getBeanWrapper() {
    BeanWrapper wrapper = PropertyAccessorFactory.forBeanPropertyAccess(getModel());
    wrapper.setConversionService(getConversionService());
    wrapper.registerCustomEditor(Date.class,
            new CustomDateEditor(SimpleDateFormat.getDateTimeInstance(), true));

    return wrapper;
}

From source file:com.duowan.common.spring.jdbc.BeanPropertyRowMapper.java

/**
 * Initialize the given BeanWrapper to be used for row mapping.
 * To be called for each row.//  w  w w  . ja v  a  2s .co m
 * <p>The default implementation is empty. Can be overridden in subclasses.
 * @param bw the BeanWrapper to initialize
 */
protected void initBeanWrapper(BeanWrapper bw) {

    bw.registerCustomEditor(byte.class, new DefaultValueCustomNumberEditor(Byte.class, false));
    bw.registerCustomEditor(Byte.class, new DefaultValueCustomNumberEditor(Byte.class, true));
    bw.registerCustomEditor(short.class, new DefaultValueCustomNumberEditor(Short.class, false));
    bw.registerCustomEditor(Short.class, new DefaultValueCustomNumberEditor(Short.class, true));
    bw.registerCustomEditor(int.class, new DefaultValueCustomNumberEditor(Integer.class, false));
    bw.registerCustomEditor(Integer.class, new DefaultValueCustomNumberEditor(Integer.class, true));
    bw.registerCustomEditor(long.class, new DefaultValueCustomNumberEditor(Long.class, false));
    bw.registerCustomEditor(Long.class, new DefaultValueCustomNumberEditor(Long.class, true));
    bw.registerCustomEditor(float.class, new DefaultValueCustomNumberEditor(Float.class, false));
    bw.registerCustomEditor(Float.class, new DefaultValueCustomNumberEditor(Float.class, true));
    bw.registerCustomEditor(double.class, new DefaultValueCustomNumberEditor(Double.class, false));
    bw.registerCustomEditor(Double.class, new DefaultValueCustomNumberEditor(Double.class, true));
    bw.registerCustomEditor(BigDecimal.class, new DefaultValueCustomNumberEditor(BigDecimal.class, true));
    bw.registerCustomEditor(BigInteger.class, new DefaultValueCustomNumberEditor(BigInteger.class, true));

    //TODO boolean null    false

}

From source file:org.solmix.wmix.web.servlet.AbstractWmixFilter.java

@Override
public void init(FilterConfig config) throws ServletException {
    filterConfig = config;/*from   w w  w.j  a v  a2  s . c  om*/
    logInBothServletAndLoggingSystem("Initializing filter: " + getFilterName());

    try {
        PropertyValues pvs = new FilterConfigPropertyValues(getFilterConfig(), requiredProperties);
        BeanWrapper bw = PropertyAccessorFactory.forBeanPropertyAccess(this);
        ResourceLoader resourceLoader = new ServletContextResourceLoader(getServletContext());
        bw.registerCustomEditor(Resource.class, new ResourceEditor(resourceLoader));
        initBeanWrapper(bw);
        bw.setPropertyValues(pvs, true);
    } catch (Exception e) {
        throw new ServletException("Failed to set bean properties on filter: " + getFilterName(), e);
    }

    try {
        init();
    } catch (Exception e) {
        throw new ServletException("Failed to init filter: " + getFilterName(), e);
    }

    logInBothServletAndLoggingSystem(
            getClass().getSimpleName() + " - " + getFilterName() + ": initialization completed");
}

From source file:com.yosanai.java.swing.editor.ObjectEditorTableModel.java

protected void addRows(Object wrappedObject, String prefix, Set<Integer> visited) {
    if (null == visited) {
        visited = new HashSet<Integer>();
    }/* www.  j  av a 2s. c  om*/
    if (null != wrappedObject && !visited.contains(wrappedObject.hashCode())) {
        visited.add(wrappedObject.hashCode());
        BeanWrapper beanWrapper = PropertyAccessorFactory.forBeanPropertyAccess(wrappedObj);
        beanWrapper.setExtractOldValueForEditor(true);
        if (null != dateAndTimePropertyEditor) {
            beanWrapper.registerCustomEditor(Timestamp.class, dateAndTimePropertyEditor);
            beanWrapper.registerCustomEditor(Date.class, dateAndTimePropertyEditor);
        }
        PropertyDescriptor[] propDescs = beanWrapper.getPropertyDescriptors();
        for (PropertyDescriptor propertyDescriptor : propDescs) {
            addRows(beanWrapper, propertyDescriptor, prefix, visited);
        }
    }
}

From source file:com.emc.ecs.sync.service.SyncJobService.java

protected void copyProperties(Object source, Object target, String... ignoredProperties) {
    List<String> ignoredList = Collections.emptyList();
    if (ignoredProperties != null)
        ignoredList = Arrays.asList(ignoredProperties);
    BeanWrapper wSource = new BeanWrapperImpl(source), wTarget = new BeanWrapperImpl(target);
    wSource.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat(ISO_8601_FORMAT), true));
    wTarget.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat(ISO_8601_FORMAT), true));
    for (PropertyDescriptor descriptor : wSource.getPropertyDescriptors()) {
        if (ignoredList.contains(descriptor.getName()))
            continue;
        if (!wSource.isReadableProperty(descriptor.getName()))
            continue;
        if (wTarget.isWritableProperty(descriptor.getName())) {

            // property is readable from source, writeable on target, and not in the list of ignored props
            Object value = wSource.getPropertyValue(descriptor.getName());
            if (value != null)
                wTarget.setPropertyValue(descriptor.getName(), value);
        }//from  w w  w .j a va  2  s.  c  om
    }
}

From source file:org.jasig.springframework.web.portlet.filter.GenericPortletFilterBean.java

@Override
public void init(FilterConfig filterConfig) throws PortletException {
    Assert.notNull(filterConfig, "FilterConfig must not be null");
    if (logger.isDebugEnabled()) {
        logger.debug("Initializing filter '" + filterConfig.getFilterName() + "'");
    }// w ww . ja  va  2  s.c o m

    this.filterConfig = filterConfig;

    // Set bean properties from init parameters.
    try {
        PropertyValues pvs = new FilterConfigPropertyValues(filterConfig, this.requiredProperties);
        BeanWrapper bw = PropertyAccessorFactory.forBeanPropertyAccess(this);
        ResourceLoader resourceLoader = new PortletContextResourceLoader(filterConfig.getPortletContext());
        bw.registerCustomEditor(Resource.class, new ResourceEditor(resourceLoader, this.environment));
        initBeanWrapper(bw);
        bw.setPropertyValues(pvs, true);
    } catch (BeansException ex) {
        String msg = "Failed to set bean properties on filter '" + filterConfig.getFilterName() + "': "
                + ex.getMessage();
        logger.error(msg, ex);
        throw new PortletException(msg, ex);
    }

    // Let subclasses do whatever initialization they like.
    initFilterBean();

    if (logger.isDebugEnabled()) {
        logger.debug("Filter '" + filterConfig.getFilterName() + "' configured successfully");
    }
}