Revision 20908

View differences:

trunk/libraries/libFMap_dataDB/src-test/org/gvsig/data/datastores/vectorial/db/jdbc/h2/H2Test.java
1003 1003
		newdp.setFeatureType(ftype);
1004 1004
		DBAttributeDescriptor attr;
1005 1005

  
1006
		attr = new DBAttributeDescriptor();
1006
		attr = (DBAttributeDescriptor) ftype.createAttributeDescriptor();
1007 1007
		try {
1008 1008
			attr.loading();
1009 1009
			attr.setName("ID");
......
1013 1013
			attr.stopLoading();
1014 1014
			ftype.add(attr);
1015 1015

  
1016
			attr = new DBAttributeDescriptor();
1016
			attr = (DBAttributeDescriptor) ftype.createAttributeDescriptor();
1017 1017
			attr.loading();
1018 1018
			attr.setName("MYGEOMETRY");
1019 1019
			attr.setType(IFeatureAttributeDescriptor.TYPE_GEOMETRY);
......
1021 1021
			ftype.add(attr);
1022 1022
			ftype.setDefaultGeometry(attr.getName());
1023 1023

  
1024
			attr = new DBAttributeDescriptor();
1024
			attr = (DBAttributeDescriptor) ftype.createAttributeDescriptor();
1025 1025
			attr.loading();
1026 1026
			attr.setName("MYSTRING");
1027 1027
			attr.setSize(50);
......
1031 1031
			ftype.add(attr);
1032 1032

  
1033 1033

  
1034
			attr = new DBAttributeDescriptor();
1034
			attr = (DBAttributeDescriptor) ftype.createAttributeDescriptor();
1035 1035
			attr.loading();
1036 1036
			attr.setName("MYDOUBLE");
1037 1037

  
trunk/libraries/libFMap_dataDB/src-test/org/gvsig/data/datastores/vectorial/db/jdbc/postgresql/postgresqlTest.java
816 816
			e.printStackTrace();fail();
817 817
		}
818 818

  
819
		DBAttributeDescriptor attr =(DBAttributeDescriptor)fs.createAttributeDescriptor();
819
		DBAttributeDescriptor attr =(DBAttributeDescriptor)fs.getDefaultFeatureType().createNewAttributeDescriptor();
820 820
		attr.editing();
821 821
		try {
822 822
			attr.setName("My_new_Field");
trunk/libraries/libFMap_dataDB/src/org/gvsig/data/datastores/vectorial/db/DBStore.java
21 21
        return featureTypes;
22 22
    }
23 23
	/* (non-Javadoc)
24
	 * @see org.gvsig.data.vectorial.FeatureStore#createAttributeDescriptor()
25
	 */
26
	public IFeatureAttributeDescriptor createAttributeDescriptor() {
27
		return new DBAttributeDescriptor(true);
28
	}
29
	/* (non-Javadoc)
30 24
	 * @see org.gvsig.data.IDataStore#isEditable()
31 25
	 */
32 26
	public boolean isEditable() {
trunk/libraries/libFMap_dataDB/src/org/gvsig/data/datastores/vectorial/db/jdbc/h2/H2Utils.java
14 14
import org.gvsig.data.exception.InitializeException;
15 15
import org.gvsig.data.exception.ReadException;
16 16
import org.gvsig.data.vectorial.AttributeDescriptor;
17
import org.gvsig.data.vectorial.FeatureType;
17 18
import org.gvsig.data.vectorial.IFeatureAttributeDescriptor;
18 19
import org.gvsig.data.vectorial.IsNotAttributeSettingException;
19 20

  
......
101 102

  
102 103
				while (true){
103 104
					if  (rsAllMeta.isAfterLast()){
104
						attr = getAttributeFromJDBC(conn,rsMetadata,i);
105
						attr = getAttributeFromJDBC(featureType,conn,rsMetadata,i);
105 106
						featureType.add(attr);
106 107
//						attr.setOrdinal(i-1);
107 108
						break;
108 109
					} else if(rsAllMeta.getString("COLUMN_NAME").equals(colName)){
109
						attr = getAttributeFromJDBC(conn,rsAllMeta);
110
						attr = getAttributeFromJDBC(featureType,conn,rsAllMeta);
110 111
						featureType.add(attr);
111 112
//						attr.setOrdinal(i-1);
112 113
						break;
......
243 244

  
244 245
	}
245 246

  
246
	private static AttributeDescriptor getAttributeFromJDBC(Connection conn,ResultSetMetaData rsMetadata,int colIndex) throws SQLException{
247
		DBAttributeDescriptor column= new DBAttributeDescriptor();
247
	private static AttributeDescriptor getAttributeFromJDBC(FeatureType fType,Connection conn,ResultSetMetaData rsMetadata,int colIndex) throws SQLException{
248
		DBAttributeDescriptor column= (DBAttributeDescriptor) fType.createAttributeDescriptor();
248 249
		try {
249 250
			column.loading();
250 251
			column.setName(rsMetadata.getColumnName(colIndex));
......
318 319

  
319 320
	}
320 321

  
321
	private static AttributeDescriptor getAttributeFromJDBC(Connection conn, ResultSet rsMetadata) throws SQLException{
322
		DBAttributeDescriptor column= new DBAttributeDescriptor();
322
	private static AttributeDescriptor getAttributeFromJDBC(FeatureType fType, Connection conn, ResultSet rsMetadata) throws SQLException{
323
		DBAttributeDescriptor column= (DBAttributeDescriptor) fType.createAttributeDescriptor();
323 324
		try {
324 325
			column.loading();
325 326
			column.setName(rsMetadata.getString("COLUMN_NAME"));
trunk/libraries/libFMap_dataDB/src/org/gvsig/data/datastores/vectorial/db/jdbc/postgresqlbin/PostgresqlBinStoreUtils.java
16 16
import org.gvsig.data.exception.InitializeException;
17 17
import org.gvsig.data.exception.ReadException;
18 18
import org.gvsig.data.vectorial.AttributeDescriptor;
19
import org.gvsig.data.vectorial.FeatureType;
19 20
import org.gvsig.data.vectorial.IFeatureAttributeDescriptor;
20 21
import org.gvsig.data.vectorial.IsNotAttributeSettingException;
21 22

  
......
129 130
			featureType.setTableID(params.tableID());
130 131
			AttributeDescriptor attr;
131 132
			for (i=1;i<=rsMetadata.getColumnCount();i++){
132
				attr = getAttributeFromJDBC(conn,rsMetadata,i);
133
				attr = getAttributeFromJDBC(featureType,conn,rsMetadata,i);
133 134
				featureType.add(attr);
134 135
//				attr.setOrdinal(i-1);
135 136
			}
......
141 142

  
142 143
	}
143 144

  
144
	private static AttributeDescriptor getAttributeFromJDBC(Connection conn,ResultSetMetaData rsMetadata,int colIndex) throws SQLException{
145
		DBAttributeDescriptor column= new DBAttributeDescriptor();
145
	private static AttributeDescriptor getAttributeFromJDBC(FeatureType fType, Connection conn,ResultSetMetaData rsMetadata,int colIndex) throws SQLException{
146
		DBAttributeDescriptor column= (DBAttributeDescriptor) fType.createAttributeDescriptor();
146 147
		try {
147 148
			column.setName(rsMetadata.getColumnName(colIndex));
148 149
			column.setSqlType(rsMetadata.getColumnType(colIndex));
trunk/libraries/libFMap_dataDB/src/org/gvsig/data/datastores/vectorial/db/jdbc/postgresql/PostgresqlStoreUtils.java
15 15
import org.gvsig.data.exception.DataException;
16 16
import org.gvsig.data.exception.InitializeException;
17 17
import org.gvsig.data.exception.ReadException;
18
import org.gvsig.data.vectorial.FeatureType;
18 19
import org.gvsig.data.vectorial.IFeatureAttributeDescriptor;
19 20
import org.gvsig.data.vectorial.IsNotAttributeSettingException;
20 21

  
......
174 175
			featureType.setTableID(params.tableID());
175 176
			DBAttributeDescriptor attr;
176 177
			for (i=1;i<=rsMetadata.getColumnCount();i++){
177
				attr = getAttributeFromJDBC(conn,rsMetadata,i);
178
				attr = getAttributeFromJDBC(featureType,conn,rsMetadata,i);
178 179
				featureType.add(attr);
179 180
//				attr.setOrdinal(i-1);
180 181
				attr.loading();
......
199 200

  
200 201
	}
201 202

  
202
	private static DBAttributeDescriptor getAttributeFromJDBC(Connection conn,ResultSetMetaData rsMetadata,int colIndex) throws SQLException{
203
		DBAttributeDescriptor column= new DBAttributeDescriptor();
203
	private static DBAttributeDescriptor getAttributeFromJDBC(FeatureType fType,Connection conn,ResultSetMetaData rsMetadata,int colIndex) throws SQLException{
204
		DBAttributeDescriptor column= (DBAttributeDescriptor) fType.createAttributeDescriptor();
204 205
		try {
205 206
			column.loading();
206 207
			column.setName(rsMetadata.getColumnName(colIndex));
trunk/libraries/libFMap_dataDB/src/org/gvsig/data/datastores/vectorial/db/DBFeatureType.java
3 3
import java.util.ArrayList;
4 4
import java.util.Iterator;
5 5

  
6
import org.gvsig.data.vectorial.AttributeDescriptor;
6 7
import org.gvsig.data.vectorial.FeatureType;
7 8
import org.gvsig.data.vectorial.IFeatureAttributeDescriptor;
8 9
import org.gvsig.data.vectorial.IFeatureType;
......
47 48
		return this.readOnly;
48 49
	}
49 50

  
51
	/* (non-Javadoc)
52
	 * @see org.gvsig.data.vectorial.IFeatureType#createNewAttributeDescriptor()
53
	 */
54
	public IFeatureAttributeDescriptor createNewAttributeDescriptor() {
55
		return new DBAttributeDescriptor(this,true);
56
	}
57

  
58

  
59
	public IFeatureAttributeDescriptor createAttributeDescriptor() {
60
		return new DBAttributeDescriptor(this,false);
61
	}
62

  
50 63
}
trunk/libraries/libFMap_dataDB/src/org/gvsig/data/datastores/vectorial/db/DBAttributeDescriptor.java
2 2

  
3 3
import org.gvsig.data.vectorial.AttributeDescriptor;
4 4
import org.gvsig.data.vectorial.IFeatureAttributeDescriptor;
5
import org.gvsig.data.vectorial.IFeatureType;
5 6
import org.gvsig.data.vectorial.IsNotAttributeSettingException;
6 7

  
7 8
public class DBAttributeDescriptor extends AttributeDescriptor {
......
20 21
	private boolean signed;
21 22
	private boolean writable = true;
22 23

  
23
	public DBAttributeDescriptor() {
24
		super();
24
	protected DBAttributeDescriptor(IFeatureType featureType) {
25
		super(featureType);
25 26
    }
26 27

  
27
	protected DBAttributeDescriptor(boolean asNew) {
28
		super(asNew);
28
	protected DBAttributeDescriptor(IFeatureType featureType,boolean asNew) {
29
		super(featureType, asNew);
29 30
    }
30 31

  
31
	protected IFeatureAttributeDescriptor newAttribute() {
32
		return new DBAttributeDescriptor();
33
	}
34

  
35 32
	public boolean isAutoIncrement() {
36 33
		if (useNewAttributeValue())
37 34
			return ((DBAttributeDescriptor)newAttributeDescriptor).isAutoIncrement();

Also available in: Unified diff