Revision 7721 trunk/extensions/extWFS2/src-test/com/iver/cit/gvsig/fmap/layers/gml/GMLWriterTest.java

View differences:

GMLWriterTest.java
7 7
import junit.framework.TestCase;
8 8

  
9 9
import org.cresques.cts.IProjection;
10
import org.cresques.cts.ProjectionPool;
10 11

  
11 12
import com.hardcode.driverManager.DriverLoadException;
12 13
import com.hardcode.gdbms.engine.values.Value;
......
76 77
 *
77 78
 * $Id$
78 79
 * $Log$
79
 * Revision 1.2  2006-09-25 10:22:44  caballero
80
 * Projection
80
 * Revision 1.3  2006-10-02 09:09:45  jorpiell
81
 * Cambios del 10 copiados al head
81 82
 *
83
 * Revision 1.1.2.1  2006/09/29 14:12:53  luisw2
84
 * CRSFactory.getCRS substitutes ProjectionPool.get
85
 *
82 86
 * Revision 1.1  2006/07/24 07:30:33  jorpiell
83 87
 * Se han eliminado las partes duplicadas y se est? usando el parser de GML de FMAP.
84 88
 *
......
89 93
 */
90 94
public class GMLWriterTest extends TestCase {
91 95
	private String gmlFile = "MUNIC.gml";
92

  
96
	
93 97
	protected void setUp(){
94 98
		LayerFactory.setDriversPath("../_fwAndami/gvSIG/extensiones/com.iver.cit.gvsig/drivers");
95 99
		LayerFactory.setWritersPath("../_fwAndami/gvSIG/extensiones/com.iver.cit.gvsig/drivers");
......
103 107
		}
104 108
		System.out.println("****************COMENZANDO****************");
105 109
	}
106

  
110
	
107 111
	public void test1() throws DriverLoadException, DriverException, EditionException, DriverIOException, com.hardcode.gdbms.engine.data.driver.DriverException{
108 112
        // DRIVER DEFINITION (SHAPE TYPE AND FIELDS)
109 113
        ConcreteMemoryDriver driver = new ConcreteMemoryDriver();
110 114
        driver.setShapeType(FShape.LINE);
111

  
115
        
112 116
        ArrayList arrayFields = new ArrayList();
113 117
        arrayFields.add("ID");
114 118
        Value[] auxRow = new Value[1];
115

  
119
  
116 120
        driver.getTableModel().setColumnIdentifiers(arrayFields.toArray());
117

  
121
                
118 122
        //GEOMETRY DEFINITION
119 123
        GeneralPathX gp = new GeneralPathX();
120

  
124
        
121 125
        gp.moveTo(20,80);
122 126
        gp.lineTo(80,60);
123 127
        gp.lineTo(100, 140);
124

  
128
        
125 129
        FShape shp = new FPolyline2D(gp);
126

  
127

  
130
        
131
        
128 132
        // ATRIBUTES
129 133
        auxRow[0] = ValueFactory.createValue(0);
130

  
134
        
131 135
        // ADD RECORD
132 136
        driver.addShape(shp, auxRow);
133

  
137
         
134 138
        //GEOMETRY DEFINITION
135 139
        gp = new GeneralPathX();
136

  
140
        
137 141
        gp.moveTo(20,80);
138 142
        gp.lineTo(80,60);
139 143
        gp.lineTo(100, 140);
140

  
144
        
141 145
        shp = new FPolyline2D(gp);
142

  
143

  
146
        
147
        
144 148
        // ATRIBUTES
145 149
        auxRow[0] = ValueFactory.createValue(1);
146

  
150
        
147 151
        // ADD RECORD
148 152
        driver.addShape(shp, auxRow);
149 153

  
150 154
        // CREATE AND ADD LAYER
151 155
        FLyrVect lyr;
152 156
        String layerName = "Example";
153
       	lyr = (FLyrVect) LayerFactory.createLayer(layerName,driver, CRSFactory.getCRS("EPSG:4326"));
154

  
155

  
157
       	lyr = (FLyrVect) LayerFactory.createLayer(layerName,driver, CRSFactory.getCRS("EPSG:4326"));           	
158
		
159
       	       	
156 160
       	SHPLayerDefinition lyrDef = new SHPLayerDefinition();
157 161
		SelectableDataSource sds = lyr.getRecordset();
158 162
		FieldDescription[] fieldsDescrip = sds.getFieldsDescription();
159 163
		lyrDef.setFieldsDesc(fieldsDescrip);
160 164
		lyrDef.setName(lyr.getName());
161

  
165
       	
162 166
		File newFile = new File(gmlFile);
163

  
167
		
164 168
		GMLWriter writer = (GMLWriter)LayerFactory.getWM().getWriter("GML Writer");
165 169
		writer.setFile(new File(gmlFile));
166
		writer.setSchema(lyrDef);
170
		writer.setSchema(lyrDef);		
167 171
		Rectangle2D rectangle = new Rectangle2D.Double(0,
168 172
				0,
169 173
				100,
170
				100);
171
		writer.setBoundedBy(rectangle, CRSFactory.getCRS("EPSG:23030"));
172

  
174
				100);		
175
		writer.setBoundedBy(rectangle,CRSFactory.getCRS("EPSG:23030"));
176
		
173 177
		writer.preProcess();
174

  
178
		
175 179
		ReadableVectorial adapter = lyr.getSource();
176 180
		for (int i=0; i < adapter.getShapeCount(); i++){
177 181
			IFeature feat = adapter.getFeature(i);
178 182
			IRowEdited editFeat = new DefaultRowEdited(feat, IRowEdited.STATUS_MODIFIED, i);
179 183
			writer.process(editFeat);
180 184
		}
181
		writer.postProcess();
185
		writer.postProcess();		
182 186
	}
187
	
183 188

  
184

  
185

  
189
	
186 190
	private static FLayer createLayer(String layerName, VectorialFileDriver d,
187 191
			File f, IProjection proj) throws DriverException {
188 192
			//TODO Comprobar si hay un adaptador ya

Also available in: Unified diff