Statistics
| Revision:

gvsig-tools / org.gvsig.tools / library / trunk / org.gvsig.tools / dynform / src / org / gvsig / tools / dynform / impl / dynformfield / integer / JDynFormFieldIntegerFactory.java @ 841

History | View | Annotate | Download (1.85 KB)

1
package org.gvsig.tools.dynform.impl.dynformfield.integer;
2

    
3
import org.gvsig.tools.ToolsLocator;
4
import org.gvsig.tools.dataTypes.DataTypes;
5
import org.gvsig.tools.dynform.api.DynFormLocator;
6
import org.gvsig.tools.dynform.api.DynFormManager;
7
import org.gvsig.tools.dynform.api.JDynFormFieldFactory;
8
import org.gvsig.tools.dynobject.DynField;
9
import org.gvsig.tools.dynobject.DynObject;
10
import org.gvsig.tools.dynobject.DynObjectManager;
11
import org.gvsig.tools.dynobject.DynStruct;
12
import org.gvsig.tools.service.Service;
13
import org.gvsig.tools.service.ServiceException;
14
import org.gvsig.tools.service.spi.ServiceManager;
15

    
16
public class JDynFormFieldIntegerFactory implements JDynFormFieldFactory {
17

    
18
        private String name = null;
19
        private DynStruct parametersDefinition = null;
20
        
21
        public String getName() {
22
                if( name == null ) {
23
                        DynFormManager manager = DynFormLocator.getDynFormManager();
24
                        this.name = manager.makeServiceName(DataTypes.INT, null);
25
                }
26
                return this.name;
27
        }
28

    
29
        public Service create(DynObject parameters, ServiceManager serviceManager)
30
                        throws ServiceException {
31
                return new JDynFormFieldInteger(parameters, serviceManager);
32
        }
33

    
34
        public DynObject createParameters() {
35
                return ToolsLocator.getDynObjectManager().createDynObject(parametersDefinition);
36
        }
37

    
38
        public void initialize() {
39
                if( this.parametersDefinition == null ) {
40
                        String serviceName = this.getName();
41
                    DynObjectManager manager = ToolsLocator.getDynObjectManager();
42
                    this.parametersDefinition = manager.createDynClass(
43
                                    serviceName, "Parameters definition for interger fields in dynamic forms");
44
                    this.parametersDefinition.addDynFieldObject(DynFormManager.FIELD_FIELDDEFINITION)
45
                                .setClassOfValue(DynField.class).setMandatory(true);
46
                    this.parametersDefinition.addDynFieldObject(DynFormManager.FIELD_VALUE)
47
                                .setClassOfValue(DynField.class).setMandatory(true);
48
                }
49
        }
50

    
51

    
52
}