1 /*
2 * Copyright 2005-2008 The Kuali Foundation
3 *
4 *
5 * Licensed under the Educational Community License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.opensource.org/licenses/ecl2.php
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17 package org.kuali.rice.kew.lookupable;
18
19 import javax.servlet.jsp.PageContext;
20
21 import org.apache.commons.lang.StringUtils;
22 import org.displaytag.decorator.DisplaytagColumnDecorator;
23 import org.displaytag.exception.DecoratorException;
24 import org.displaytag.properties.MediaTypeEnum;
25 import org.kuali.rice.kew.util.KEWConstants;
26
27
28 /**
29 * A ColumnDecorator for columns in a Lookup which adds an extra non-breaking space if the column
30 * is an empty String.
31 *
32 * @author Kuali Rice Team (rice.collab@kuali.org)
33 */
34 public class LookupColumnDecorator implements DisplaytagColumnDecorator {
35
36 public Object decorate(Object columnValue, PageContext pageContext, MediaTypeEnum media) throws DecoratorException {
37 if (columnValue == null) {
38 return KEWConstants.HTML_NON_BREAKING_SPACE;
39 }
40 if (columnValue instanceof String && StringUtils.isEmpty(((String)columnValue).trim())) {
41 return KEWConstants.HTML_NON_BREAKING_SPACE;
42 }
43 return columnValue;
44 }
45
46 }