gvsig-tools / org.gvsig.tools / library / trunk / org.gvsig.tools / dynform / src / org / gvsig / tools / dynform / impl / dynformfield / file / JDynFormFieldFileFactory.java @ 846
History | View | Annotate | Download (1.93 KB)
1 |
package org.gvsig.tools.dynform.impl.dynformfield.file; |
---|---|
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.dynform.impl.dynformfield.AbstractJDynFormField.IllegalFieldValue; |
9 |
import org.gvsig.tools.dynobject.DynField; |
10 |
import org.gvsig.tools.dynobject.DynObject; |
11 |
import org.gvsig.tools.dynobject.DynObjectManager; |
12 |
import org.gvsig.tools.dynobject.DynStruct; |
13 |
import org.gvsig.tools.service.Service; |
14 |
import org.gvsig.tools.service.ServiceException; |
15 |
import org.gvsig.tools.service.spi.ServiceManager; |
16 |
|
17 |
public class JDynFormFieldFileFactory implements JDynFormFieldFactory { |
18 |
|
19 |
private String name = null; |
20 |
private DynStruct parametersDefinition = null; |
21 |
|
22 |
public String getName() { |
23 |
if( name == null ) { |
24 |
DynFormManager manager = DynFormLocator.getDynFormManager(); |
25 |
this.name = manager.makeServiceName(DataTypes.FILE, null); |
26 |
} |
27 |
return this.name; |
28 |
} |
29 |
|
30 |
|
31 |
public Service create(DynObject parameters, ServiceManager serviceManager)
|
32 |
throws ServiceException {
|
33 |
return new JDynFormFieldFile(parameters, serviceManager); |
34 |
} |
35 |
|
36 |
public DynObject createParameters() {
|
37 |
return ToolsLocator.getDynObjectManager().createDynObject(parametersDefinition);
|
38 |
} |
39 |
|
40 |
public void initialize() { |
41 |
if( this.parametersDefinition == null ) { |
42 |
String serviceName = this.getName(); |
43 |
DynObjectManager manager = ToolsLocator.getDynObjectManager(); |
44 |
this.parametersDefinition = manager.createDynClass(
|
45 |
serviceName, "Parameters definition for file fields in dynamic forms");
|
46 |
this.parametersDefinition.addDynFieldObject(DynFormManager.FIELD_FIELDDEFINITION)
|
47 |
.setClassOfValue(DynField.class).setMandatory(true);
|
48 |
this.parametersDefinition.addDynFieldObject(DynFormManager.FIELD_VALUE)
|
49 |
.setClassOfValue(DynField.class).setMandatory(true);
|
50 |
} |
51 |
} |
52 |
|
53 |
|
54 |
} |