Revision 33281 branches/v2_0_0_prep/extensions/extDalTransformJoin/src/org/gvsig/app/join/dal/feature/JoinTransform.java

View differences:

JoinTransform.java
372 372
		definition.extend(PersistenceManager.PERSISTENCE_NAMESPACE,
373 373
				ABSTRACT_FEATURESTORE_DYNCLASS_NAME);
374 374

  
375
		definition.addDynField("store2").setType(DataTypes.OBJECT);
376
		definition.addDynField("keyAttr1").setType(DataTypes.STRING);
377
		definition.addDynField("keyAttr2").setType(DataTypes.STRING);
378
		definition.addDynField("prefix1").setType(DataTypes.STRING);
379
		definition.addDynField("prefix2").setType(DataTypes.STRING);
380
		definition.addDynField("attrs").setType(DataTypes.LIST);
375
		definition.addDynFieldObject("store2").setClassOfItems(FeatureStore.class).setMandatory(true);
376
		definition.addDynFieldString("keyAttr1").setMandatory(true);
377
		definition.addDynFieldString("keyAttr2").setMandatory(true);
378
		definition.addDynFieldString("prefix1").setMandatory(true);
379
		definition.addDynFieldString("prefix2").setMandatory(true);
380
		definition.addDynFieldList("attrs").setClassOfItems(String.class).setMandatory(true);
381 381
	}
382 382

  
383 383
	public void saveToState(PersistentState state) throws PersistenceException {
......
387 387
		state.set("keyAttr2", this.keyAttr2);
388 388
		state.set("prefix1", this.prefix1);
389 389
		state.set("prefix2", this.prefix2);		
390
		state.set("attrs", Arrays.asList(this.attrs));
390
		state.set("attrs", this.attrs);
391 391
	}
392 392

  
393 393
	@SuppressWarnings("unchecked")
......
396 396
		FeatureStore store2 = (FeatureStore) state.get("store2");
397 397
		String keyAttr1 = state.getString("keyAttr1");
398 398
		String keyAttr2 = state.getString("keyAttr2");
399
		String prefix2 =  state.getString("prefix2");		
400
		List attrList = (List) state.get("attrs");
401
		String[] attrs = null;
402
		if (attrList == null) {
403
			attrs = null;
404
		} else {
405
			attrs = (String[]) attrList
406
			.toArray(new String[attrList.size()]);
407
		}		
399
		String prefix2 =  state.getString("prefix2");
400
		String[] attrs = (String[]) state.getArray("attrs", String.class);
408 401
		try {
409 402
			initialize(getFeatureStore(), store2, keyAttr1, keyAttr2, prefix1, prefix2, attrs);
410 403
		} catch (DataException e) {

Also available in: Unified diff