Statistics
| Revision:

root / branches / v2_0_0_prep / libraries / libFMap_daldb / src-test / org / gvsig / fmap / dal / store / mysql / MySQLTestWrite.java @ 30754

History | View | Annotate | Download (6.09 KB)

1
/* gvSIG. Geographic Information System of the Valencian Government
2
*
3
* Copyright (C) 2007-2008 Infrastructures and Transports Department
4
* of the Valencian Government (CIT)
5
*
6
* This program is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU General Public License
8
* as published by the Free Software Foundation; either version 2
9
* of the License, or (at your option) any later version.
10
*
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with this program; if not, write to the Free Software
18
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
* MA  02110-1301, USA.
20
*
21
*/
22

    
23
/*
24
* AUTHORS (In addition to CIT):
25
* 2009 IVER T.I   {{Task}}
26
*/
27

    
28
package org.gvsig.fmap.dal.store.mysql;
29

    
30
import org.gvsig.fmap.dal.DataStoreParameters;
31
import org.gvsig.fmap.dal.exception.DataException;
32
import org.gvsig.fmap.dal.feature.BaseTestEditableFeatureStore;
33
import org.gvsig.fmap.dal.feature.EditableFeatureType;
34
import org.gvsig.fmap.dal.feature.FeatureStore;
35
import org.gvsig.fmap.dal.feature.FeatureType;
36
import org.gvsig.fmap.dal.feature.NewFeatureStoreParameters;
37
import org.gvsig.fmap.dal.store.jdbc.JDBCStoreParameters;
38

    
39

    
40
public class MySQLTestWrite extends BaseTestEditableFeatureStore {
41
        private MySQLNewStoreParameters newParams;
42
        private MySQLServerExplorer myExplorer;
43

    
44
        @Override
45
        protected void doSetUp() throws Exception {
46
                // Nothing to do        
47
        }
48

    
49
        public DataStoreParameters getDefaultDataStoreParameters()
50
                        throws DataException {
51
                MySQLStoreParameters parameters = null;
52
                parameters = (MySQLStoreParameters) dataManager
53
                                .createStoreParameters(MySQLStoreProvider.NAME);
54

    
55
                parameters.setHost("localhost");
56
                parameters.setPort(3306);
57
                parameters.setUser("test");
58
                parameters.setPassword("test");
59
                parameters.setDBName("gis");
60
                // parameters.setTable("alfanum_autoid");
61
                parameters.setTable("comunic_lin_300k");
62

    
63
                return parameters;
64
        }
65

    
66
        /*
67
         * (non-Javadoc)
68
         *
69
         * @see org.gvsig.fmap.dal.feature.BaseTestFeatureStore#hasExplorer()
70
         */
71
        @Override
72
        public boolean hasExplorer() {
73
                // TODO Auto-generated method stub
74
                return true;
75
        }
76

    
77
        /*
78
         * (non-Javadoc)
79
         *
80
         * @see org.gvsig.fmap.dal.feature.BaseTestFeatureStore#usesResources()
81
         */
82
        @Override
83
        public boolean usesResources() {
84
                // TODO Auto-generated method stub
85
                return true;
86
        }
87

    
88
        /*
89
        public void testImportDB() throws Exception {
90
                JDBCNewStoreParameters newParasm = (JDBCNewStoreParameters) getDefaultNewDataStoreParameters();
91
                JDBCServerExplorerParameters seParams = (JDBCServerExplorerParameters) dataManager
92
                                .createServerExplorerParameters(JDBCServerExplorer.NAME);
93

94
                assertTrue(myExplorer.add(newParasm, true));
95

96
                FeatureStore store = (FeatureStore) dataManager
97
                                .createStore(getDefaultDataStoreParameters());
98

99
                FeatureStore newstore = (FeatureStore) dataManager
100
                                .createStore(newParasm);
101

102

103

104
                newstore.edit(FeatureStore.MODE_APPEND);
105
                FeatureSet set = store.getFeatureSet();
106
                DisposableIterator iter = set.iterator();
107
                Feature org;
108
                EditableFeature trg;
109
                Iterator attrIter;
110
                FeatureAttributeDescriptor attr;
111
                while (iter.hasNext()) {
112
                        org = (Feature) iter.next();
113
                        trg = newstore.createNewFeature(false);
114
                        attrIter = trg.getType().iterator();
115
                        while (attrIter.hasNext()) {
116
                                attr = (FeatureAttributeDescriptor) attrIter.next();
117
                                trg.set(attr.getName(), org.get(attr.getName()));
118
                        }
119
                        newstore.insert(trg);
120
                }
121
                newstore.finishEditing();
122

123
                iter.dispose();
124
                set.dispose();
125
                store.dispose();
126
                newstore.dispose();
127

128

129
        }
130
        */
131

    
132
        @Override
133
        public NewFeatureStoreParameters getDefaultNewDataStoreParameters()
134
                        throws Exception {
135

    
136

    
137
                JDBCStoreParameters params = (JDBCStoreParameters) getDefaultDataStoreParameters();
138

    
139
                if (this.myExplorer == null) {
140

    
141
                        MySQLServerExplorerParameters seParameters = null;
142
                        seParameters = (MySQLServerExplorerParameters) dataManager
143
                                        .createServerExplorerParameters(MySQLServerExplorer.NAME);
144

    
145
                        seParameters.setHost("localhost");
146
                        seParameters.setPort(3306);
147
                        seParameters.setUser("test");
148
                        seParameters.setPassword("test");
149
                        seParameters.setDBName("gis");
150

    
151

    
152
                        myExplorer = (MySQLServerExplorer) dataManager
153
                                        .createServerExplorer(seParameters);
154
                }
155
                if (this.newParams == null) {
156
                        FeatureStore store = (FeatureStore) dataManager.createStore(params);
157

    
158
                        newParams = (MySQLNewStoreParameters) myExplorer
159
                                        .getAddParameters();
160

    
161

    
162
                        newParams.setTable(params.getTable() + "_test");
163
                        FeatureType ftOrg = store.getDefaultFeatureType();
164
                        EditableFeatureType ftTrg = ftOrg.getEditable();
165

    
166
//                        EditableFeatureType ftTrg = (EditableFeatureType) newParams
167
//                                        .getDefaultFeatureType();
168
                        newParams.setDefaultFeatureType(ftTrg);
169

    
170
//                        FeatureAttributeDescriptor org;
171
//                        EditableFeatureAttributeDescriptor trg;
172
//                        Iterator iter = ftOrg.iterator();
173
//                        while (iter.hasNext()) {
174
//                                org = (FeatureAttributeDescriptor) iter.next();
175
//                                trg = ftTrg.add(org.getName(), org.getDataType());
176
//                                trg.setAllowNull(org.allowNull());
177
//                                trg.setDefaultValue(org.getDefaultValue());
178
//                                trg.setGeometrySubType(org.getGeometrySubType());
179
//                                trg.setGeometryType(org.getGeometryType());
180
//                                trg.setIsAutomatic(org.isAutomatic());
181
//                                trg.setIsPrimaryKey(org.isPrimaryKey());
182
//                                trg.setIsReadOnly(org.isReadOnly());
183
//                                trg.setMaximumOccurrences(org.getMaximumOccurrences());
184
//                                trg.setMinimumOccurrences(org.getMinimumOccurrences());
185
//                                trg.setPrecision(org.getPrecision());
186
//                                trg.setSize(org.getSize());
187
//                                trg.setSRS(org.getSRS());
188
//                                trg.setAdditionalInfo("SQLType", org
189
//                                                .getAdditionalInfo("SQLType"));
190
//                                trg.setAdditionalInfo("SQLTypeName", org
191
//                                                .getAdditionalInfo("SQLTypeName"));
192
//
193
//                        }
194
//                        ftTrg.setDefaultGeometryAttributeName(ftOrg
195
//                                        .getDefaultGeometryAttributeName());
196
//                        ftTrg.setHasOID(ftOrg.hasOID());
197

    
198
                        store.dispose();
199
                }
200

    
201
                return this.newParams;
202
        }
203

    
204
        @Override
205
        public boolean resourcesNotifyChanges() {
206
                // TODO Auto-generated method stub
207
                return false;
208
        }
209

    
210
}