Example usage for org.apache.commons.lang ObjectUtils defaultIfNull

List of usage examples for org.apache.commons.lang ObjectUtils defaultIfNull

Introduction

In this page you can find the example usage for org.apache.commons.lang ObjectUtils defaultIfNull.

Prototype

public static <T> T defaultIfNull(T object, T defaultValue) 

Source Link

Document

Returns a default value if the object passed is null.

 ObjectUtils.defaultIfNull(null, null)      = null ObjectUtils.defaultIfNull(null, "")        = "" ObjectUtils.defaultIfNull(null, "zz")      = "zz" ObjectUtils.defaultIfNull("abc", *)        = "abc" ObjectUtils.defaultIfNull(Boolean.TRUE, *) = Boolean.TRUE 

Usage

From source file:org.yes.cart.web.page.component.filterednavigation.AbstractProductFilter.java

/**
 * Adapt list of  {@link org.yes.cart.domain.queryobject.FilteredNavigationRecord} into ugly
 * list of attribute name - list of attributes values pair .
 *
 * @param records navigation records/*from  w  ww. j a  v a 2 s .c om*/
 * @return list of pairs
 */
protected List<Pair<Pair<String, String>, List<Pair<Pair<String, Integer>, PageParameters>>>> adaptNavigationRecords(
        final List<FilteredNavigationRecord> records) {
    String head = StringUtils.EMPTY;
    Pair<Pair<String, String>, List<Pair<Pair<String, Integer>, PageParameters>>> currentPair = null;

    final List<Pair<Pair<String, String>, List<Pair<Pair<String, Integer>, PageParameters>>>> headValueList = new ArrayList<Pair<Pair<String, String>, List<Pair<Pair<String, Integer>, PageParameters>>>>();

    for (FilteredNavigationRecord navigationRecord : records) {
        if (!navigationRecord.getName().equalsIgnoreCase(head)) {
            currentPair = new Pair<Pair<String, String>, List<Pair<Pair<String, Integer>, PageParameters>>>(
                    new Pair<String, String>(navigationRecord.getCode(),
                            (String) ObjectUtils.defaultIfNull(navigationRecord.getDisplayName(),
                                    navigationRecord.getName())),
                    new ArrayList<Pair<Pair<String, Integer>, PageParameters>>());
            headValueList.add(currentPair);
            head = navigationRecord.getName();
        }
        currentPair.getSecond()
                .add(new Pair<Pair<String, Integer>, PageParameters>(
                        new Pair<String, Integer>(adaptValueForLinkLabel(navigationRecord.getValue(),
                                navigationRecord.getDisplayValue()), navigationRecord.getCount()),
                        getNavigationParameter(navigationRecord.getCode(), navigationRecord.getValue())));
    }
    return headValueList;
}