Revision 39584
trunk/extensions/extGeoProcessing/src/com/iver/cit/gvsig/geoprocess/core/fmap/DefinitionUtils.java | ||
---|---|---|
158 | 158 |
solution.setShapeType(firstLayer.getShapeType()); |
159 | 159 |
SelectableDataSource firstDatasource = firstLayer.getRecordset(); |
160 | 160 |
SelectableDataSource secondDatasource = secondLayer.getRecordset(); |
161 |
int numFieldsA = firstDatasource.getFieldCount(); |
|
162 |
int numFieldsB = secondDatasource.getFieldCount(); |
|
163 |
FieldDescription[] fields = |
|
164 |
new FieldDescription[numFieldsA + numFieldsB]; |
|
165 |
FieldDescription fieldDesc = null; |
|
166 |
for(int i = 0; i < numFieldsA; i++){ |
|
167 |
fieldDesc = new FieldDescription(); |
|
168 |
fieldDesc.setFieldName(firstDatasource.getFieldName(i)); |
|
169 |
int fieldType = firstDatasource.getFieldType(i); |
|
170 |
fieldDesc.setFieldType(fieldType); |
|
171 |
int fieldLength = getDataTypeLength(fieldType); |
|
172 |
fieldDesc.setFieldLength(fieldLength); |
|
173 |
fieldDesc.setFieldDecimalCount(NUM_DECIMALS); |
|
174 |
fields[i] = fieldDesc; |
|
161 |
FieldDescription[] fields = |
|
162 |
new FieldDescription[firstDatasource.getFieldCount() + secondDatasource.getFieldCount()]; |
|
163 |
|
|
164 |
int i = 0; |
|
165 |
for (FieldDescription fieldDesc:firstDatasource.getFieldsDescription()) { |
|
166 |
fields[i++] = fieldDesc; |
|
175 | 167 |
} |
176 |
|
|
177 |
for(int i = 0; i < numFieldsB; i++){ |
|
178 |
fieldDesc = new FieldDescription(); |
|
179 |
fieldDesc.setFieldName(secondDatasource.getFieldName(i)); |
|
180 |
int fieldType = secondDatasource.getFieldType(i); |
|
181 |
fieldDesc.setFieldType(fieldType); |
|
182 |
int fieldLength = getDataTypeLength(fieldType); |
|
183 |
fieldDesc.setFieldLength(fieldLength); |
|
184 |
fieldDesc.setFieldDecimalCount(NUM_DECIMALS); |
|
185 |
fields[i + numFieldsA] = fieldDesc; |
|
168 |
for (FieldDescription fieldDesc:secondDatasource.getFieldsDescription()) { |
|
169 |
fields[i++] = fieldDesc; |
|
186 | 170 |
} |
171 |
|
|
187 | 172 |
solution.setFieldsDesc(fields); |
188 | 173 |
return solution; |
189 | 174 |
} |
Also available in: Unified diff