Revision 1118 org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.dynform/org.gvsig.tools.dynform.impl/src/main/java/org/gvsig/tools/dynform/impl/DefaultDynFormSPIManager.java

View differences:

DefaultDynFormSPIManager.java
30 30
import javax.swing.JPopupMenu;
31 31
import javax.swing.text.DefaultEditorKit;
32 32
import javax.swing.text.JTextComponent;
33
import org.apache.commons.lang3.StringUtils;
33 34

  
34 35
import org.gvsig.tools.ToolsLocator;
35 36
import org.gvsig.tools.dataTypes.DataType;
......
85 86
    }
86 87

  
87 88
    public String makeServiceName(DataType dataType, String subtype) {
88
        String name = null;
89
        if ( subtype == null || subtype.trim().length() == 0 ) {
90
            name = DynFormSPIManager.SERVICE_NAME_PREFIX + dataType.getName();
89
        return makeServiceName(dataType, null, subtype);
90
    }
91

  
92
    public String makeServiceName(DataType dataType, String className, String subtype) {
93
        String name;
94
        if( StringUtils.isBlank(className) ) {
95
            name = DynFormSPIManager.SERVICE_NAME_PREFIX
96
                    + dataType.getName()+".any";
91 97
        } else {
92 98
            name = DynFormSPIManager.SERVICE_NAME_PREFIX
93
                    + dataType.getName() + "."
94
                    + subtype.trim().toLowerCase();
99
                    + dataType.getName()+"."+ className.trim().toLowerCase();
95 100
        }
96

  
101
        if( !StringUtils.isBlank(subtype) ) {
102
            name += "." + subtype.trim().toLowerCase();
103
        }
97 104
        return name;
98 105
    }
99 106

  
......
104 111
        return makeServiceName(ToolsLocator.getDataTypesManager().get(dataType), subtype);
105 112
    }
106 113

  
114
    public String makeServiceName(int dataType, String className, String subtype) {
115
        if ( dataType == DataTypes.UNKNOWN ) {
116
            return DynFormSPIManager.SERVICE_NAME_PREFIX + "unknown";
117
        }
118
        return makeServiceName(ToolsLocator.getDataTypesManager().get(dataType), className, subtype);
119
    }
120

  
107 121
    public JDynFormField createJDynFormField(DynFormFieldDefinition definition, Object value) throws ServiceException {
108 122
        JDynFormField formfield = null;
109 123
        String serviceName = makeServiceName(definition.getDataType(), definition.getSubtype());

Also available in: Unified diff