Revision 32880 branches/v2_0_0_prep/libraries/libFMap_mapcontext/src/org/gvsig/fmap/mapcontext/layers/FLayers.java

View differences:

FLayers.java
53 53
import org.cresques.cts.ICoordTrans;
54 54
import org.cresques.cts.IProjection;
55 55
import org.gvsig.compat.print.PrintAttributes;
56
import org.gvsig.fmap.dal.DataTypes;
57 56
import org.gvsig.fmap.dal.exception.DataException;
58 57
import org.gvsig.fmap.dal.exception.ReadException;
59 58
import org.gvsig.fmap.geom.primitive.Envelope;
......
67 66
import org.gvsig.fmap.mapcontext.layers.operations.LayersVisitable;
68 67
import org.gvsig.fmap.mapcontext.layers.operations.LayersVisitor;
69 68
import org.gvsig.fmap.mapcontext.rendering.legend.styling.ILabelable;
69
import org.gvsig.metadata.exceptions.MetadataException;
70 70
import org.gvsig.tools.ToolsLocator;
71 71
import org.gvsig.tools.dispose.Disposable;
72
import org.gvsig.tools.dynobject.DynClass;
73
import org.gvsig.tools.dynobject.DynObjectManager;
72
import org.gvsig.tools.dynobject.DynStruct;
74 73
import org.gvsig.tools.exception.BaseException;
75
import org.gvsig.tools.persistence.PersistenceException;
74
import org.gvsig.tools.persistence.PersistenceManager;
76 75
import org.gvsig.tools.persistence.PersistentState;
76
import org.gvsig.tools.persistence.exception.PersistenceException;
77 77
import org.gvsig.tools.task.Cancellable;
78 78
import org.gvsig.tools.visitor.NotSupportedOperationException;
79 79
import org.gvsig.tools.visitor.Visitor;
......
1253 1253
	 *
1254 1254
	 * @see org.gvsig.metadata.Metadata#getMetadataID()
1255 1255
	 */
1256
	public Object getMetadataID() {
1256
	public Object getMetadataID() throws MetadataException {
1257 1257
		StringBuffer strb = new StringBuffer();
1258 1258
		strb.append("Layers(");
1259 1259
		strb.append(this.getName());
......
1287 1287
	 *
1288 1288
	 * @see org.gvsig.metadata.Metadata#getMetadataName()
1289 1289
	 */
1290
	public String getMetadataName() {
1290
	public String getMetadataName() throws MetadataException {
1291 1291
		StringBuffer strb = new StringBuffer();
1292 1292
		strb.append("Layer Group '");
1293 1293
		strb.append(this.getName());
......
1314 1314

  
1315 1315
	public static void registerPersistent() {
1316 1316
		
1317
		DynObjectManager dynMan = ToolsLocator.getDynObjectManager();
1318
		DynClass dynClass = dynMan.createDynClass(
1319
		"FLayers_Persistent",
1320
		"FLayers Persistent definition");
1317
		PersistenceManager manager = ToolsLocator.getPersistenceManager();
1318
		if( manager.getDefinition(FLyrDefault.class) == null ) {
1319
			FLyrDefault.registerPersistent();
1320
		}
1321
		DynStruct definition = manager.addDefinition(
1322
				FLayers.class,
1323
				"FLayers",
1324
				"FLayers Persistence definition",
1325
				null, 
1326
				null
1327
		);
1328
		definition.extend(PersistenceManager.PERSISTENCE_NAMESPACE, "FLyrDefault");
1321 1329
		
1322
		FLyrDefault.registerPersistent();
1323
		dynClass.extend("FLyrDefault_Persistent");
1324

  
1325
		dynClass.addDynFieldSingle("numLayers", DataTypes.INT, null, true, true);
1326
		dynClass.addDynFieldSingle("layers", DataTypes.LIST, null, true, true);
1327
		dynMan.add(dynClass);
1328

  
1329
		ToolsLocator.getPersistenceManager().registerClass(FLayers.class, dynClass);	
1330
		definition.addDynFieldInt("numLayers").setMandatory(true);
1331
		definition.addDynFieldList("layers").setMandatory(true);
1330 1332
	}
1331 1333

  
1332 1334
	protected void doDispose() throws BaseException {

Also available in: Unified diff