Revision 32880 branches/v2_0_0_prep/libraries/libFMap_dal/src/org/gvsig/fmap/dal/feature/impl/DefaultFeatureReference.java
DefaultFeatureReference.java | ||
---|---|---|
15 | 15 |
import org.gvsig.fmap.dal.feature.spi.FeatureProvider; |
16 | 16 |
import org.gvsig.fmap.dal.feature.spi.FeatureReferenceProviderServices; |
17 | 17 |
import org.gvsig.tools.ToolsLocator; |
18 |
import org.gvsig.tools.dynobject.DynClass; |
|
19 |
import org.gvsig.tools.dynobject.DynObjectManager; |
|
20 |
import org.gvsig.tools.persistence.PersistenceException; |
|
18 |
import org.gvsig.tools.dynobject.DynStruct; |
|
21 | 19 |
import org.gvsig.tools.persistence.PersistenceManager; |
22 | 20 |
import org.gvsig.tools.persistence.Persistent; |
23 | 21 |
import org.gvsig.tools.persistence.PersistentState; |
22 |
import org.gvsig.tools.persistence.exception.PersistenceException; |
|
24 | 23 |
|
25 | 24 |
public class DefaultFeatureReference implements |
26 | 25 |
FeatureReferenceProviderServices, Persistent { |
... | ... | |
218 | 217 |
} |
219 | 218 |
|
220 | 219 |
public void saveToState(PersistentState state) throws PersistenceException { |
221 |
PersistenceManager persistenceManager = ToolsLocator |
|
222 |
.getPersistenceManager(); |
|
223 |
|
|
224 | 220 |
state.set("oid", oid); |
225 | 221 |
state.set("myHashCode", myHashCode); |
226 | 222 |
state.set("isNewFeature", isNewFeature); |
... | ... | |
237 | 233 |
} |
238 | 234 |
|
239 | 235 |
public static void registerPersistent() { |
240 |
DynObjectManager dynMan = ToolsLocator.getDynObjectManager(); |
|
241 |
DynClass dynClass = dynMan.add( |
|
242 |
"DefaultFeatureReference_Persistent", |
|
243 |
"DefaultFeatureReference Persistent definition"); |
|
236 |
DynStruct definition = ToolsLocator.getPersistenceManager().addDefinition( |
|
237 |
DefaultFeatureReference.class, |
|
238 |
"Reference", |
|
239 |
"DefaultFeatureReference Persistent definition", |
|
240 |
null, |
|
241 |
null |
|
242 |
); |
|
244 | 243 |
|
245 |
dynClass.addDynFieldSingle("oid", DataTypes.OBJECT, null, |
|
246 |
true, true); |
|
247 |
dynClass.addDynFieldSingle("isNewFeature", DataTypes.BOOLEAN, null, |
|
248 |
true, true); |
|
249 |
dynClass.addDynFieldSingle("store", DataTypes.PERSISTENT, null, true, |
|
250 |
true); |
|
251 |
dynClass.addDynFieldSingle("featureTypeId", DataTypes.STRING, null, |
|
252 |
true, true); |
|
253 |
dynClass.addDynFieldSingle("pk", DataTypes.LIST, null, false, true); |
|
254 |
dynClass.addDynFieldSingle("pkNames", DataTypes.STRING, null, false, |
|
255 |
true); |
|
244 |
definition.addDynField("oid") |
|
245 |
.setType(DataTypes.OBJECT) |
|
246 |
.setMandatory(true) |
|
247 |
.setPersistent(true); |
|
248 |
|
|
249 |
definition.addDynField("isNewFeature") |
|
250 |
.setType(DataTypes.BOOLEAN) |
|
251 |
.setMandatory(true) |
|
252 |
.setPersistent(true); |
|
253 |
|
|
254 |
definition.addDynField("store") |
|
255 |
.setType(DataTypes.OBJECT) |
|
256 |
.setSubtype("DataStore") |
|
257 |
.setClassOfValue(FeatureStore.class) |
|
258 |
.setMandatory(true) |
|
259 |
.setPersistent(true); |
|
256 | 260 |
|
261 |
definition.addDynField("myHashCode") |
|
262 |
.setType(DataTypes.OBJECT) |
|
263 |
.setSubtype("Integer") |
|
264 |
.setClassOfValue(Integer.class) |
|
265 |
.setMandatory(true) |
|
266 |
.setPersistent(true); |
|
267 |
|
|
268 |
definition.addDynField("featureTypeId") |
|
269 |
.setType(DataTypes.STRING) |
|
270 |
.setMandatory(true) |
|
271 |
.setPersistent(true); |
|
257 | 272 |
|
258 |
ToolsLocator.getPersistenceManager().registerClass( |
|
259 |
DefaultFeatureReference.class, dynClass); |
|
273 |
definition.addDynField("ok") |
|
274 |
.setType(DataTypes.LIST) |
|
275 |
.setMandatory(false) |
|
276 |
.setPersistent(true); |
|
260 | 277 |
|
278 |
definition.addDynField("pkNames") |
|
279 |
.setType(DataTypes.STRING) |
|
280 |
.setMandatory(true) |
|
281 |
.setPersistent(true); |
|
282 |
|
|
261 | 283 |
} |
262 | 284 |
|
263 | 285 |
|
Also available in: Unified diff