Example usage for org.springframework.beans BeanWrapper getPropertyValue

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

Introduction

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

Prototype

@Nullable
Object getPropertyValue(String propertyName) throws BeansException;

Source Link

Document

Get the current value of the specified property.

Usage

From source file:org.lightadmin.core.view.tags.form.DomainTypeElementsTag.java

@Override
public void doTag() throws JspException, IOException {

    DomainTypeBasicConfiguration domainTypeConfiguration = configuration.forDomainType(domainType);
    Assert.notNull(domainTypeConfiguration, "<domainTypeConfiguration> not found for association");

    // TODO: Implement configurable ordering
    List allElements = domainTypeConfiguration.getRepository().findAll();
    allElements = sortByNaturalOrder(allElements, domainTypeConfiguration);

    PersistentProperty idAttribute = domainTypeConfiguration.getPersistentEntity().getIdProperty();
    EntityNameExtractor<Object> nameExtractor = domainTypeConfiguration.getEntityConfiguration()
            .getNameExtractor();//from ww  w  . j  a  v  a  2  s. co m
    JspContext jspContext = getJspContext();
    JspFragment tagBody = getJspBody();
    for (Object element : allElements) {
        BeanWrapper beanWrapper = new DirectFieldAccessFallbackBeanWrapper(element);

        jspContext.setAttribute(idVar, beanWrapper.getPropertyValue(idAttribute.getName()));
        jspContext.setAttribute(stringRepresentationVar,
                exceptionAwareNameExtractor(nameExtractor, domainTypeConfiguration).apply(element));
        tagBody.invoke(null);
    }
}

From source file:org.oncoblocks.centromere.core.test.TestRepository.java

@Override
public Iterable<Object> distinct(String field) {
    Set<Object> values = new HashSet<>();
    for (EntrezGene gene : geneMap.values()) {
        BeanWrapper wrapper = new BeanWrapperImpl(gene);
        if (wrapper.getPropertyValue(field) != null) {
            values.add(wrapper.getPropertyValue(field));
        }/*from   w  ww  .j av  a  2  s .c om*/
    }
    return values;
}

From source file:org.iwethey.forums.web.user.UserController.java

/**
 * Toggle binary settings. Requires a request parameter of "toggle" 
 * that contains the name of the property to toggle.
 *//*from   ww w.  jav  a  2  s.c o  m*/
public ModelAndView toggle(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    User user = (User) request.getAttribute(USER_ATTRIBUTE);

    String propName = RequestUtils.getStringParameter(request, "toggle", null);
    if (user != null && propName != null && !propName.equals("")) {
        BeanWrapper wrap = new BeanWrapperImpl(user);
        Boolean val = (Boolean) wrap.getPropertyValue(propName);

        wrap.setPropertyValue(propName, new Boolean(!val.booleanValue()));
        userManager.saveUserAttributes(user);
    }

    return new ModelAndView(new RedirectView(request.getHeader("referer")));
}

From source file:com.sinosoft.one.data.jade.statement.SimpleInterpreter.java

public void interpret(StatementRuntime runtime) {

    final List<Object> parametersAsList = new LinkedList<Object>();

    // ??  :name ??
    Matcher matcher = NAMED_PARAM_PATTERN.matcher(runtime.getSQL());
    if (!matcher.find()) {
        return;//w w  w .  jav  a  2  s .  c  om
    }

    final StringBuilder builder = new StringBuilder();

    int index = 0;

    do {
        // ??????
        String name = matcher.group(1);
        if (NumberUtils.isDigits(name)) {
            name = matcher.group();//??
        }

        Object value = null;

        // ?  a.b.c ?? 
        int find = name.indexOf('.');
        if (find >= 0) {

            //   BeanWrapper ?
            Object bean = runtime.getParameters().get(name.substring(0, find));
            if (bean != null) {
                BeanWrapper beanWrapper = new BeanWrapperImpl(bean);
                value = beanWrapper.getPropertyValue(name.substring(find + 1));
            }

        } else {
            // ?
            value = runtime.getParameters().get(name);
        }

        // ?
        builder.append(runtime.getSQL().substring(index, matcher.start()));

        if (value instanceof Collection<?>) {

            //  IN (...) ?
            builder.append('(');

            Collection<?> collection = (Collection<?>) value;

            if (collection.isEmpty()) {
                builder.append("NULL");
            } else {
                builder.append('?');
            }

            for (int i = 1; i < collection.size(); i++) {
                builder.append(", ?");
            }

            builder.append(')');

            // ??
            parametersAsList.addAll(collection);

        } else {
            // ?
            builder.append('?');

            // ??
            parametersAsList.add(value);
        }

        index = matcher.end();

    } while (matcher.find());

    // ?
    builder.append(runtime.getSQL().substring(index));
    runtime.setSQL(builder.toString());
    runtime.setArgs(parametersAsList.toArray());
}

From source file:com.gzj.tulip.jade.statement.SimpleInterpreter.java

@Override
public void interpret(StatementRuntime runtime) {

    final List<Object> parametersAsList = new LinkedList<Object>();

    // ??  :name ??
    Matcher matcher = NAMED_PARAM_PATTERN.matcher(runtime.getSQL());
    if (!matcher.find()) {
        return;//from w ww.j  a v a 2s . c  o m
    }

    final StringBuilder builder = new StringBuilder();

    int index = 0;

    do {
        // ??????
        String name = matcher.group(1);
        if (NumberUtils.isDigits(name)) {
            name = matcher.group();//??
        }

        Object value = null;

        // ?  a.b.c ?? 
        int find = name.indexOf('.');
        if (find >= 0) {

            //   BeanWrapper ?
            Object bean = runtime.getParameters().get(name.substring(0, find));
            if (bean != null) {
                BeanWrapper beanWrapper = new BeanWrapperImpl(bean);
                value = beanWrapper.getPropertyValue(name.substring(find + 1));
            }

        } else {
            // ?
            value = runtime.getParameters().get(name);
        }

        // ?
        builder.append(runtime.getSQL().substring(index, matcher.start()));

        if (value instanceof Collection<?>) {

            //  IN (...) ?
            builder.append('(');

            Collection<?> collection = (Collection<?>) value;

            if (collection.isEmpty()) {
                builder.append("NULL");
            } else {
                builder.append('?');
            }

            for (int i = 1; i < collection.size(); i++) {
                builder.append(", ?");
            }

            builder.append(')');

            // ??
            parametersAsList.addAll(collection);

        } else {
            // ?
            builder.append('?');

            // ??
            parametersAsList.add(value);
        }

        index = matcher.end();

    } while (matcher.find());

    // ?
    builder.append(runtime.getSQL().substring(index));
    runtime.setSQL(builder.toString());
    runtime.setArgs(parametersAsList.toArray());
}

From source file:com.fmguler.ven.QueryMapper.java

private boolean objectIdEquals(Object object, Object id) {
    //return obj1.equals(obj2); //objects need to implement equals()
    //TODO: more efficient (invoke getId method)
    BeanWrapper wr = new BeanWrapperImpl(object);
    return id.equals(wr.getPropertyValue("id"));
}

From source file:org.sakaiproject.metaobj.utils.mvc.impl.BeanWrapperBase.java

public Object getPropertyValue(String propertyName) throws BeansException {
    if (isNestedProperty(propertyName)) {
        BeanWrapper nestedBw = getBeanWrapperForPropertyPath(propertyName);
        return nestedBw.getPropertyValue(getFinalPath(propertyName));
    } else {// w ww  . j a  v a  2  s .  c  o m
        return super.getPropertyValue(propertyName);
    }
}

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

/**
 * Get value from model//from ww w .  j  a  v  a  2s  .com
 * @return model value
 */
protected Object getValue() {
    BeanWrapper wrapper = getBeanWrapper();
    Object value = null;
    try {
        value = wrapper.getPropertyValue(propertyName);
    } catch (BeansException e) {
        log.error(e);
    }

    return value;
}

From source file:com.xyxy.platform.modules.core.web.taglib.BSAbstractMultiCheckedElementTag.java

/**
 * Copy & Paste, .//  w  w  w .ja  v  a 2s .  com
 */
private void writeObjectEntry(TagWriter tagWriter, String valueProperty, String labelProperty, Object item,
        int itemIndex) throws JspException {

    BeanWrapper wrapper = PropertyAccessorFactory.forBeanPropertyAccess(item);
    Object renderValue;
    if (valueProperty != null) {
        renderValue = wrapper.getPropertyValue(valueProperty);
    } else if (item instanceof Enum) {
        renderValue = ((Enum<?>) item).name();
    } else {
        renderValue = item;
    }
    Object renderLabel = (labelProperty != null ? wrapper.getPropertyValue(labelProperty) : item);
    writeElementTag(tagWriter, item, renderValue, renderLabel, itemIndex);
}

From source file:de.tudarmstadt.ukp.csniper.webapp.security.dao.AbstractDao.java

/**
 * Finds all entities that have the same type as the given example and all fields are equal to
 * non-null fields in the example.//from   www. j  av a2 s .c  o m
 */
protected <TT> CriteriaQuery<TT> queryByExample(TT aExample, String aOrderBy, boolean aAscending) {
    CriteriaBuilder cb = entityManager.getCriteriaBuilder();
    @SuppressWarnings("unchecked")
    CriteriaQuery<TT> query = cb.createQuery((Class<TT>) aExample.getClass());
    @SuppressWarnings("unchecked")
    Root<TT> root = query.from((Class<TT>) aExample.getClass());
    query.select(root);

    List<Predicate> predicates = new ArrayList<Predicate>();
    BeanWrapper a = PropertyAccessorFactory.forBeanPropertyAccess(aExample);

    // Iterate over all properties
    for (PropertyDescriptor d : a.getPropertyDescriptors()) {
        Object value = a.getPropertyValue(d.getName());

        // Only consider writeable properties. This filters out e.g. the "class" (getClass())
        // property.
        if (value != null && a.isWritableProperty(d.getName())) {
            predicates.add(cb.equal(root.get(d.getName()), value));
        }
    }

    if (!predicates.isEmpty()) {
        query.where(predicates.toArray(new Predicate[predicates.size()]));
    }

    if (aOrderBy != null) {
        if (aAscending) {
            query.orderBy(cb.asc(root.get(aOrderBy)));
        } else {
            query.orderBy(cb.desc(root.get(aOrderBy)));
        }
    }

    return query;
}