Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / org.gvsig.exportto / org.gvsig.exportto.swing / org.gvsig.exportto.swing.prov / org.gvsig.exportto.swing.prov.jdbc / src / main / java / org / gvsig / export / jdbc / service / ExportJDBCParametersImpl.java @ 44411

History | View | Annotate | Download (14.5 KB)

1
/*
2
 * To change this license header, choose License Headers in Project Properties.
3
 * To change this template file, choose Tools | Templates
4
 * and open the template in the editor.
5
 */
6
package org.gvsig.export.jdbc.service;
7

    
8
import org.gvsig.export.spi.AbstractExportParametersGeometry;
9
import org.gvsig.fmap.dal.store.jdbc.JDBCServerExplorerParameters;
10
import org.gvsig.tools.ToolsLocator;
11
import org.gvsig.tools.dynobject.DynStruct;
12
import org.gvsig.tools.persistence.PersistenceManager;
13
import org.gvsig.tools.persistence.PersistentState;
14
import org.gvsig.tools.persistence.exception.PersistenceException;
15

    
16
/**
17
 *
18
 * @author jjdelcerro
19
 */
20
public class ExportJDBCParametersImpl
21
        extends AbstractExportParametersGeometry
22
        implements ExportJDBCParameters {
23

    
24
    private JDBCServerExplorerParameters explorerParameters;
25
    private String schema;
26
    private String tableName;
27
    private boolean canCreatetable;
28
    private String primaryKeyName;
29
    private String storeName;
30
    private String explorerName;
31
    private boolean translateIdentifiersToLowerCase;
32
    private boolean removeSpacesInIdentifiers;
33
    private boolean translateHyphens;
34
    private String selectRole;
35
    private String insertRole;
36
    private String updateRole;
37
    private String deleteRole;
38
    private String truncateRole;
39
    private String referenceRole;
40
    private String triggerRole;
41
    private String allRole;
42
    private String postCreatingStatement;
43
    private boolean createIndexInGeometryRow;
44
    private boolean updateTableStatistics;
45

    
46
    public ExportJDBCParametersImpl(ExportJDBCServiceFactory factory) {
47
        super(factory);
48
        this.exportAttributes.setNamesTranslator(new ExportJDBCAttributeNamesTranslator(this));
49

    
50
        this.canCreatetable = true;
51
        this.translateIdentifiersToLowerCase = true;
52
        this.removeSpacesInIdentifiers = true;
53
        this.translateHyphens = true;
54
        this.createIndexInGeometryRow = true;
55
        this.updateTableStatistics = true;
56
    }
57

    
58
    public ExportJDBCParametersImpl() {
59
        super(null);
60
    }
61

    
62
    @Override
63
    public String getServiceName() {
64
        return ExportJDBCServiceFactory.SERVICE_NAME;
65
    }
66

    
67
    /**
68
     * @return the explorerParameters
69
     */
70
    @Override
71
    public JDBCServerExplorerParameters getExplorerParameters() {
72
        return explorerParameters;
73
    }
74

    
75
    /**
76
     * @param explorerParameters the explorerParameters to set
77
     */
78
    @Override
79
    public void setExplorerParameters(JDBCServerExplorerParameters explorerParameters) {
80
        this.explorerParameters = explorerParameters;
81
    }
82

    
83
    /**
84
     * @return the schema
85
     */
86
    @Override
87
    public String getSchema() {
88
        return schema;
89
    }
90

    
91
    /**
92
     * @param schema the schema to set
93
     */
94
    @Override
95
    public void setSchema(String schema) {
96
        this.schema = schema;
97
    }
98

    
99
    /**
100
     * @return the tableName
101
     */
102
    @Override
103
    public String getTableName() {
104
        return tableName;
105
    }
106

    
107
    /**
108
     * @param tableName the tableName to set
109
     */
110
    @Override
111
    public void setTableName(String tableName) {
112
        this.tableName = tableName;
113
    }
114

    
115
    /**
116
     * @return the canCreatetable
117
     */
118
    @Override
119
    public boolean canCreatetable() {
120
        return canCreatetable;
121
    }
122

    
123
    /**
124
     * @param canCreatetable the canCreatetable to set
125
     */
126
    @Override
127
    public void setCanCreatetable(boolean canCreatetable) {
128
        this.canCreatetable = canCreatetable;
129
    }
130

    
131
    /**
132
     * @return the primaryKeyName
133
     */
134
    @Override
135
    public String getPrimaryKey() {
136
        return primaryKeyName;
137
    }
138

    
139
    /**
140
     * @param primaryKey the primaryKeyName to set
141
     */
142
    @Override
143
    public void setPrimaryKey(String primaryKey) {
144
        this.primaryKeyName = primaryKey;
145
    }
146

    
147
    /**
148
     * @return the storeName
149
     */
150
    @Override
151
    public String getStoreName() {
152
        return storeName;
153
    }
154

    
155
    /**
156
     * @param storeName the storeName to set
157
     */
158
    @Override
159
    public void setStoreName(String storeName) {
160
        this.storeName = storeName;
161
    }
162

    
163
    /**
164
     * @return the explorerName
165
     */
166
    @Override
167
    public String getExplorerName() {
168
        return explorerName;
169
    }
170

    
171
    /**
172
     * @param explorerName the explorerName to set
173
     */
174
    @Override
175
    public void setExplorerName(String explorerName) {
176
        this.explorerName = explorerName;
177
    }
178

    
179
    /**
180
     * @param translateIdentifiersToLowerCase the
181
     * translateIdentifiersToLowerCase to set
182
     */
183
    @Override
184
    public void setTranslateIdentifiersToLowerCase(boolean translateIdentifiersToLowerCase) {
185
        if (translateIdentifiersToLowerCase != this.translateIdentifiersToLowerCase) {
186
            this.translateIdentifiersToLowerCase = translateIdentifiersToLowerCase;
187
            this.exportAttributes.fixAttributeNames();
188
        }
189
    }
190

    
191
    /**
192
     * @param removeSpacesInIdentifiers the removeSpacesInIdentifiers to set
193
     */
194
    @Override
195
    public void setRemoveSpacesInIdentifiers(boolean removeSpacesInIdentifiers) {
196
        if (removeSpacesInIdentifiers != this.removeSpacesInIdentifiers) {
197
            this.removeSpacesInIdentifiers = removeSpacesInIdentifiers;
198
            this.exportAttributes.fixAttributeNames();
199
        }
200
    }
201

    
202
    /**
203
     * @param translateHyphens the translateHyphens to set
204
     */
205
    @Override
206
    public void setTranslateHyphens(boolean translateHyphens) {
207
        if (translateHyphens != this.translateHyphens) {
208
            this.translateHyphens = translateHyphens;
209
            this.exportAttributes.fixAttributeNames();
210
        }
211
    }
212

    
213
    /**
214
     * @return the selectRole
215
     */
216
    @Override
217
    public String getSelectRole() {
218
        return selectRole;
219
    }
220

    
221
    /**
222
     * @param selectRole the selectRole to set
223
     */
224
    @Override
225
    public void setSelectRole(String selectRole) {
226
        this.selectRole = selectRole;
227
    }
228

    
229
    /**
230
     * @return the insertRole
231
     */
232
    @Override
233
    public String getInsertRole() {
234
        return insertRole;
235
    }
236

    
237
    /**
238
     * @param insertRole the insertRole to set
239
     */
240
    @Override
241
    public void setInsertRole(String insertRole) {
242
        this.insertRole = insertRole;
243
    }
244

    
245
    /**
246
     * @return the updateRole
247
     */
248
    @Override
249
    public String getUpdateRole() {
250
        return updateRole;
251
    }
252

    
253
    /**
254
     * @param updateRole the updateRole to set
255
     */
256
    @Override
257
    public void setUpdateRole(String updateRole) {
258
        this.updateRole = updateRole;
259
    }
260

    
261
    /**
262
     * @return the deleteRole
263
     */
264
    @Override
265
    public String getDeleteRole() {
266
        return deleteRole;
267
    }
268

    
269
    /**
270
     * @param deleteRole the deleteRole to set
271
     */
272
    @Override
273
    public void setDeleteRole(String deleteRole) {
274
        this.deleteRole = deleteRole;
275
    }
276

    
277
    /**
278
     * @return the truncateRole
279
     */
280
    @Override
281
    public String getTruncateRole() {
282
        return truncateRole;
283
    }
284

    
285
    /**
286
     * @param truncateRole the truncateRole to set
287
     */
288
    @Override
289
    public void setTruncateRole(String truncateRole) {
290
        this.truncateRole = truncateRole;
291
    }
292

    
293
    /**
294
     * @return the referenceRole
295
     */
296
    @Override
297
    public String getReferenceRole() {
298
        return referenceRole;
299
    }
300

    
301
    /**
302
     * @param referenceRole the referenceRole to set
303
     */
304
    @Override
305
    public void setReferenceRole(String referenceRole) {
306
        this.referenceRole = referenceRole;
307
    }
308

    
309
    /**
310
     * @return the triggerRole
311
     */
312
    @Override
313
    public String getTriggerRole() {
314
        return triggerRole;
315
    }
316

    
317
    /**
318
     * @param triggerRole the triggerRole to set
319
     */
320
    @Override
321
    public void setTriggerRole(String triggerRole) {
322
        this.triggerRole = triggerRole;
323
    }
324

    
325
    /**
326
     * @return the allRole
327
     */
328
    @Override
329
    public String getAllRole() {
330
        return allRole;
331
    }
332

    
333
    /**
334
     * @param allRole the allRole to set
335
     */
336
    @Override
337
    public void setAllRole(String allRole) {
338
        this.allRole = allRole;
339
    }
340

    
341
    /**
342
     * @return the postCreatingStatement
343
     */
344
    @Override
345
    public String getPostCreatingStatement() {
346
        return postCreatingStatement;
347
    }
348

    
349
    /**
350
     * @param postCreatingStatement the postCreatingStatement to set
351
     */
352
    @Override
353
    public void setPostCreatingStatement(String postCreatingStatement) {
354
        this.postCreatingStatement = postCreatingStatement;
355
    }
356

    
357
    /**
358
     * @return the createIndexInGeometryRow
359
     */
360
    @Override
361
    public boolean getCreateIndexInGeometryRow() {
362
        return createIndexInGeometryRow;
363
    }
364

    
365
    /**
366
     * @param createIndexInGeometryRow the createIndexInGeometryRow to set
367
     */
368
    @Override
369
    public void setCreateIndexInGeometryRow(boolean createIndexInGeometryRow) {
370
        this.createIndexInGeometryRow = createIndexInGeometryRow;
371
    }
372

    
373
    /**
374
     * @return the updateTableStatistics
375
     */
376
    @Override
377
    public boolean getUpdateTableStatistics() {
378
        return updateTableStatistics;
379
    }
380

    
381
    /**
382
     * @param updateTableStatistics the updateTableStatistics to set
383
     */
384
    @Override
385
    public void setUpdateTableStatistics(boolean updateTableStatistics) {
386
        this.updateTableStatistics = updateTableStatistics;
387
    }
388

    
389
    @Override
390
    public boolean getTranslateHyphens() {
391
        return this.translateHyphens;
392
    }
393

    
394
    @Override
395
    public boolean getTranslateIdentifiersToLowerCase() {
396
        return this.translateIdentifiersToLowerCase;
397
    }
398

    
399
    @Override
400
    public boolean getRemoveSpacesInIdentifiers() {
401
        return this.removeSpacesInIdentifiers;
402
    }
403

    
404
    @Override
405
    public ExportJDBCParameters clone() throws CloneNotSupportedException {
406
        ExportJDBCParameters clone = (ExportJDBCParameters) super.clone();
407
        clone.setExplorerParameters((JDBCServerExplorerParameters) this.explorerParameters.getCopy());
408
        return clone;
409
    }
410

    
411
        public static void registerPersistence() {
412

    
413
        PersistenceManager manager = ToolsLocator.getPersistenceManager();
414
        if (manager.getDefinition("ExportJDBCParametersImpl") == null) {
415
            DynStruct definition = manager.addDefinition(ExportJDBCParametersImpl.class,
416
                    "ExportJDBCParametersImpl", "ExportJDBCParametersImpl persistence definition", null, null);
417
            definition.addDynFieldObject("explorerParameters").setClassOfValue(JDBCServerExplorerParameters.class);
418
            definition.addDynFieldString("schema");
419
            definition.addDynFieldString("tableName");
420
            definition.addDynFieldBoolean("canCreatetable");
421
            definition.addDynFieldString("primaryKeyName");
422
            definition.addDynFieldString("storeName");
423
            definition.addDynFieldString("explorerName");
424
            definition.addDynFieldBoolean("translateIdentifiersToLowerCase");
425
            definition.addDynFieldBoolean("removeSpacesInIdentifiers");
426
            definition.addDynFieldBoolean("translateHyphens");
427
            definition.addDynFieldString("selectRole");
428
            definition.addDynFieldString("insertRole");
429
            definition.addDynFieldString("updateRole");
430
            definition.addDynFieldString("deleteRole");
431
            definition.addDynFieldString("truncateRole");
432
            definition.addDynFieldString("referenceRole");
433
            definition.addDynFieldString("triggerRole");
434
            definition.addDynFieldString("allRole");
435
            definition.addDynFieldString("postCreatingStatement");
436
            definition.addDynFieldBoolean("createIndexInGeometryRow");
437
            definition.addDynFieldBoolean("updateTableStatistics");
438
            definition.extend(manager.getDefinition("AbstractExportParametersGeometry"));
439
        }
440
    }
441

    
442
    @Override
443
    public void saveToState(PersistentState state) throws PersistenceException {
444
        super.saveToState(state);
445
        state.set("explorerParameters", explorerParameters);
446
        state.set("schema", schema);
447
        state.set("tableName", tableName);
448
        state.set("canCreatetable", canCreatetable);
449
        state.set("primaryKeyName", primaryKeyName);
450
        state.set("storeName", storeName);
451
        state.set("explorerName", explorerName);
452
        state.set("translateIdentifiersToLowerCase", translateIdentifiersToLowerCase);
453
        state.set("removeSpacesInIdentifiers", removeSpacesInIdentifiers);
454
        state.set("translateHyphens", translateHyphens);
455
        state.set("selectRole", selectRole);
456
        state.set("insertRole", insertRole);
457
        state.set("updateRole", updateRole);
458
        state.set("deleteRole", deleteRole);
459
        state.set("truncateRole", truncateRole);
460
        state.set("referenceRole", referenceRole);
461
        state.set("triggerRole", triggerRole);
462
        state.set("allRole", allRole);
463
        state.set("postCreatingStatement", postCreatingStatement);
464
        state.set("createIndexInGeometryRow", createIndexInGeometryRow);
465
        state.set("updateTableStatistics", updateTableStatistics);
466
    }
467

    
468
    @Override
469
    public void loadFromState(PersistentState state) throws PersistenceException {
470
        super.loadFromState(state);
471
        this.explorerParameters = (JDBCServerExplorerParameters) state.get("explorerParameters");
472
        this.schema = state.getString("schema");
473
        this.tableName = state.getString("tableName");
474
        this.canCreatetable = state.getBoolean("canCreatetable");
475
        this.primaryKeyName = state.getString("primaryKeyName");
476
        this.storeName = state.getString("storeName");
477
        this.explorerName = state.getString("explorerName");
478
        this.translateIdentifiersToLowerCase = state.getBoolean("translateIdentifiersToLowerCase");
479
        this.removeSpacesInIdentifiers = state.getBoolean("removeSpacesInIdentifiers");
480
        this.translateHyphens = state.getBoolean("translateHyphens");
481
        this.selectRole = state.getString("selectRole");
482
        this.insertRole = state.getString("insertRole");
483
        this.updateRole = state.getString("updateRole");
484
        this.deleteRole = state.getString("deleteRole");
485
        this.truncateRole = state.getString("truncateRole");
486
        this.referenceRole = state.getString("referenceRole");
487
        this.triggerRole = state.getString("triggerRole");
488
        this.allRole = state.getString("allRole");
489
        this.postCreatingStatement = state.getString("postCreatingStatement");
490
        this.createIndexInGeometryRow = state.getBoolean("createIndexInGeometryRow");
491
        this.updateTableStatistics = state.getBoolean("updateTableStatistics");
492
        
493
        ExportJDBCAttributeNamesTranslator nameTranslator = (ExportJDBCAttributeNamesTranslator) this.exportAttributes.getNamesTranslator();
494
        nameTranslator.setParameters(this);
495
    }
496
}