package org.springframework.roo.model; import java.beans.PropertyEditor; import java.beans.PropertyEditorSupport; import org.apache.commons.lang3.StringUtils; /** * {@link PropertyEditor} for {@link JavaSymbolName}. * * @author Ben Alex * @since 1.0 */ public class JavaSymbolNameEditor extends PropertyEditorSupport { @Override public String getAsText() { final JavaSymbolName obj = (JavaSymbolName) getValue(); if (obj == null) { return null; } return obj.getSymbolName(); } @Override public void setAsText(String text) throws IllegalArgumentException { if (text == null || "".equals(text)) { setValue(null); } // Symbol names never start with a capital text = StringUtils.uncapitalize(text); setValue(new JavaSymbolName(text)); } }