Revision 25789 branches/v2_0_0_prep/libraries/libFMap_dalfile/src/org/gvsig/fmap/dal/store/shp/SHPStoreParameters.java
SHPStoreParameters.java | ||
---|---|---|
33 | 33 |
import org.gvsig.fmap.dal.store.dbf.DBFStoreParameters; |
34 | 34 |
import org.gvsig.fmap.dal.store.shp.utils.SHP; |
35 | 35 |
import org.gvsig.tools.ToolsLocator; |
36 |
import org.gvsig.tools.dynobject.DelegatedDynObject; |
|
36 | 37 |
import org.gvsig.tools.dynobject.DynClass; |
37 | 38 |
import org.gvsig.tools.dynobject.DynField; |
38 | 39 |
import org.gvsig.tools.dynobject.DynObjectManager; |
... | ... | |
42 | 43 |
|
43 | 44 |
public class SHPStoreParameters extends DBFStoreParameters { |
44 | 45 |
|
45 |
public static final String SHP_DYNCLASS_NAME = "SHPStoreParameters";
|
|
46 |
public static final String DYNCLASS_NAME = "SHPStoreParameters"; |
|
46 | 47 |
|
47 | 48 |
private static final String FIELD_SHXFILENAME = "shxfilename"; |
48 | 49 |
private static final String FIELD_SHPFILENAME = "shpfilename"; |
49 | 50 |
|
51 |
protected static DynClass DYNCLASS = null; |
|
52 |
|
|
50 | 53 |
protected void initialize() { |
51 |
this.delegatedDynObjet = ToolsLocator.getDynObjectManager() |
|
52 |
.createDynObject(registerDynClass()); |
|
54 |
this.delegatedDynObjet = (DelegatedDynObject) ToolsLocator |
|
55 |
.getDynObjectManager() |
|
56 |
.createDynObject(DYNCLASS); |
|
53 | 57 |
} |
54 | 58 |
|
55 | 59 |
public String getDataStoreName() { |
... | ... | |
128 | 132 |
throw new NotYetImplemented(); |
129 | 133 |
} |
130 | 134 |
|
131 |
protected DynClass registerDynClass() { |
|
132 |
DynClass dbfDynClass =super.registerDynClass(); |
|
135 |
protected static void registerDynClass() { |
|
133 | 136 |
DynObjectManager dynman = ToolsLocator.getDynObjectManager(); |
134 |
DynClass dynClass = dynman.get(SHP_DYNCLASS_NAME);
|
|
137 |
DynClass dynClass; |
|
135 | 138 |
DynField field; |
136 |
if (dynClass == null) { |
|
137 |
dynClass = dynman.add(SHP_DYNCLASS_NAME); |
|
139 |
if (DYNCLASS == null) { |
|
140 |
DynClass dbfDynClass = DBFStoreParameters.DYNCLASS; |
|
141 |
dynClass = dynman.add(DYNCLASS_NAME); |
|
138 | 142 |
|
139 | 143 |
field = dynClass.addDynField(FIELD_SHPFILENAME); |
140 |
field.setTheTypeOfAvailableValues(DataTypes.STRING);
|
|
141 |
field.setDescription("The SHP file name");
|
|
142 |
field.setType(DynField.SINGLE);
|
|
144 |
field.setDescription("SHP file name");
|
|
145 |
field.setType(DataTypes.STRING);
|
|
146 |
field.setMandatory(true);
|
|
143 | 147 |
|
144 | 148 |
field = dynClass.addDynField(FIELD_SHXFILENAME); |
145 |
field.setTheTypeOfAvailableValues(DataTypes.STRING);
|
|
146 |
field.setDescription("The DXF file name");
|
|
147 |
field.setType(DynField.SINGLE);
|
|
149 |
field.setDescription("SHX file name");
|
|
150 |
field.setType(DataTypes.STRING);
|
|
151 |
field.setMandatory(true);
|
|
148 | 152 |
|
149 | 153 |
// The SHP store parameters extend the DBF store parameters |
150 | 154 |
dynClass.extend(dbfDynClass); |
155 |
|
|
156 |
DYNCLASS = dynClass; |
|
151 | 157 |
} |
152 |
return dynClass; |
|
153 | 158 |
} |
154 | 159 |
} |
Also available in: Unified diff