Statistics
| Revision:

gvsig-projects-pool / org.gvsig.online / trunk / org.gvsig.online / org.gvsig.online.app / org.gvsig.online.app.mainplugin / src / main / java / org / gvsig / online / app / mainplugin / OnlineExtension.java @ 9518

History | View | Annotate | Download (35.6 KB)

1
/*
2
 * gvSIG. Desktop Geographic Information System.
3
 * 
4
 * Copyright (C) 2007-2020 gvSIG Association.
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 3
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, see <https://www.gnu.org/licenses/>. 
18
 * 
19
 * For any additional information, do not hesitate to contact us
20
 * at info AT gvsig.com, or visit our website www.gvsig.com.
21
 */
22
package org.gvsig.online.app.mainplugin;
23

    
24
import java.awt.Dimension;
25
import java.awt.GridBagConstraints;
26
import java.sql.Timestamp;
27
import java.util.Collections;
28
import java.util.EventListener;
29
import java.util.List;
30
import java.util.Map;
31
import javax.swing.JOptionPane;
32
import org.apache.commons.lang3.StringUtils;
33
import org.gvsig.andami.PluginsLocator;
34
import org.gvsig.andami.plugins.Extension;
35
import org.gvsig.app.ApplicationLocator;
36
import org.gvsig.app.ApplicationManager;
37
import org.gvsig.app.extension.AddLayer;
38
import org.gvsig.app.project.ProjectManager.ProjectEvent;
39
import static org.gvsig.app.project.ProjectNotification.AFTER_LOAD_FROM_FILE;
40
import static org.gvsig.app.project.ProjectNotification.BEFORE_SAVE_TO_FILE;
41
import org.gvsig.fmap.dal.EditingNotificationManager;
42
import org.gvsig.fmap.dal.swing.DALSwingLocator;
43
import org.gvsig.online.app.mainplugin.OnlineDialogsHelper.OnlineDialogInfo;
44
import org.gvsig.online.app.mainplugin.addlayer.WizardOnlineTabular;
45
import org.gvsig.online.app.mainplugin.addlayer.WizardOnlineVectorial;
46
import org.gvsig.online.lib.api.OnlineLocator;
47
import org.gvsig.online.lib.api.OnlineManager;
48
import org.gvsig.online.lib.api.workingcopy.OnlineWorkingcopy;
49
import org.gvsig.online.lib.api.workingcopy.OnlineWorkingcopyDescriptor;
50
import org.gvsig.online.swing.api.OnlineJDownload;
51
import org.gvsig.online.swing.api.OnlineJInitWorkingcopy;
52
import org.gvsig.online.swing.api.OnlineSwingLocator;
53
import org.gvsig.online.swing.api.OnlineSwingManager;
54
import org.gvsig.tools.ToolsLocator;
55
import org.gvsig.tools.arguments.Arguments;
56
import org.gvsig.tools.dynobject.DynObject;
57
import org.gvsig.tools.i18n.I18nManager;
58
import org.gvsig.tools.swing.api.ToolsSwingLocator;
59
import org.gvsig.tools.swing.api.ToolsSwingUtils;
60
import org.gvsig.tools.swing.api.threadsafedialogs.ThreadSafeDialogsManager;
61

    
62

    
63
/**
64
 *
65
 * @author gvSIG Team
66
 */
67
public class OnlineExtension 
68
        extends Extension  
69
//        implements IPreferenceExtension 
70
    {
71

    
72
    private OnlineDialogsHelper dialogsHelper;
73

    
74
    @Override
75
    public void initialize() {
76
        ToolsSwingUtils.registerIcons(
77
                this.getClass(), 
78
                "/images/action",
79
                "online",
80
//                new String[] { "action", "tools-vcsgis-init-server","vcsgis" },
81
                new String[] { "action", "tools-online-init-workspace","online" },
82
//                new String[] { "action", "tools-vcsgis-add-to-workspace","vcsgis" },
83
//                new String[] { "action", "tools-vcsgis-export","vcsgis" },
84
                new String[] { "action", "tools-online-download","online" },
85
                new String[] { "action", "tools-online-showchanges","online" }
86
//                new String[] { "action", "tools-vcsgis-register-workspace","vcsgis" },
87
//                new String[] { "action", "tools-vcsgis-show-revisions","vcsgis" },
88
//                new String[] { "action", "tools-vcsgis-checkout-datamodel","vcsgis" },
89
//                new String[] { "action", "tools-vcsgis-download-workingcopy","vcsgis" }
90
        );        
91
        ToolsSwingUtils.registerSubgroupIconDescription("action", "online", "Acciones asociadas al complemento de Online.\nSe encuentran en el menu 'Heramientas/Online'");
92
        
93
        
94
        this.dialogsHelper = new OnlineDialogsHelper();
95
//        ToolsLocator.getDisposableManager().setStackLimit(200);
96
    }
97

    
98
    @Override
99
    public void postInitialize() {
100
        super.postInitialize();
101
        
102
        ToolsSwingUtils.registerIcons(
103
                this.getClass(), 
104
                "/images/preferences",
105
                "online",
106
                new String[] { "preferences", "online-preferences","online" }
107
        );        
108
        
109
        ApplicationManager application = ApplicationLocator.getApplicationManager();
110
        OnlineManager manager = OnlineLocator.getOnlineManager();
111
        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
112
        swingManager.setDefaultServices(new OnlineSwingServicesImpl());
113

    
114
        DynObject pluginProperties = this.getPlugin().getPluginProperties();
115
        Map<String, OnlineWorkingcopyDescriptor> workspaces = (Map) pluginProperties.getDynValue("workspaces");
116
        manager.restoreWorkingcopy(workspaces);
117
//        swingManager.setRepositoryEntityFeatureTypeEditorMode((int)pluginProperties.getDynValue("RepositoryEntityFeatureTypeEditorMode"));
118

    
119
        PluginsLocator.getPluginsManager().addShutdownTask(
120
                "OnlineSave", 
121
                () -> {
122
                    DynObject pluginProps = getPlugin().getPluginProperties();
123
                    pluginProps.setDynValue("workspaces", manager.getWorkingcopy());
124
//                    pluginProps.setDynValue("RepositoryEntityFeatureTypeEditorMode", swingManager.getRepositoryEntityFeatureTypeEditorMode());
125
                },
126
                false,
127
                100
128
        );
129

    
130
        ApplicationLocator.getManager().registerAddTableWizard(
131
                "Online", 
132
                "Online", 
133
                WizardOnlineTabular.class
134
        );
135
        AddLayer.addWizard(WizardOnlineVectorial.class);
136
        
137
        application.getProjectManager().addProjectListener((EventListener e) -> {
138
            if( e instanceof ProjectEvent ) {
139
                ProjectEvent pe = (ProjectEvent)e;
140
                switch(pe.getId()) {
141
                    case AFTER_LOAD_FROM_FILE:
142
                        OnlineSwingServicesImpl services = (OnlineSwingServicesImpl) OnlineSwingLocator.getOnlineSwingManager().getDefaultServices();
143
                        services.projectLoaded(pe.getProject());
144
                        break;
145
                    case BEFORE_SAVE_TO_FILE:
146
                        break;
147
                }
148
            }
149
        });
150
        
151
        EditingNotificationManager editingNotificationManager = DALSwingLocator.getEditingNotificationManager();
152
        editingNotificationManager.addObserver(new EditingNotificationObserver());
153
    }
154

    
155
    @Override
156
    public void execute(String actionCommand) {
157
        this.execute(actionCommand, null);
158
    }
159
    
160
    @Override
161
    public void execute(String actionCommand, Object[] args) {
162
        Arguments arguments = Arguments.create(args);
163
        switch (actionCommand) {
164
            case "tools-online-showchanges":
165
                this.showChangesDialog((OnlineWorkingcopy) arguments.get("workspace", OnlineWorkingcopy.class, null),
166
                        arguments.getListOf("tablenames", String.class),
167
                        (Timestamp) arguments.get("efectivedate", Timestamp.class, null),
168
                        (String) arguments.get("comment", String.class, null)
169
                );
170
                break;
171

    
172
//            case "tools-vcsgis-init-server":
173
//                showInitializaRepositoryDialog();
174
//                break;
175
            case "tools-online-init-workspace":
176
                showInitWorkspaceDialog();
177
                break;
178
//            case "tools-vcsgis-add-to-workspace":
179
//                showAddToWorkspaceDialog();
180
//                break;
181
            case "tools-online-download":
182
                showDownloadDialog((OnlineWorkingcopy) arguments.get("workspace", OnlineWorkingcopy.class, null),
183
                        arguments.getListOf("tablenames", String.class),
184
                        (Boolean) arguments.get("overwrite", Boolean.class, null)
185
                );
186
                break;
187

    
188
//            case "tools-vcsgis-export":
189
//                showExportDialog();
190
//                break;
191
//            case "tools-vcsgis-register-workspace":
192
//                showRegistrationWorkspaceDialog();
193
//                break;
194
//            case "tools-vcsgis-show_server-entities":
195
//                showServerEntitiesDialog();
196
//                break;
197
//            case "tools-vcsgis-show_server-hooks":
198
//                showServerHooksDialog();
199
//                break;
200
//            case "tools-vcsgis-show-revisions":
201
//                showHistory();
202
//                break;
203
//            case "tools-vcsgis-import-history":
204
//                showImportHistoryDialog();
205
//                break;
206
//            case "tools-vcsgis-create-resource-table":
207
//                showCreateResourceTableDialog();
208
//                break;
209
//            case "tools-vcsgis-logout":
210
//                showLogoutDialog();
211
//                break;
212
//            case "tools-vcsgis-checkout-datamodel":
213
//                showCheckoutDataModelDialog(
214
//                        (OnlineWorkspace) arguments.get("workspace", OnlineWorkspace.class, null),
215
//                        (String) arguments.get("model", String.class, null)
216
//                );
217
//                break;
218
//            case "tools-vcsgis-download-workingcopy":
219
//                showDownloadWorkingcopyDialog();
220
//                break;
221
//            case "tools-vcsgis-prepare-workingcopy":
222
//                showPrepareWorkingcopyDialog();
223
//                break;
224
//            case "tools-vcsgis-backup-history":
225
//                showBackupHistoryDialog();
226
//                break;
227
//            case "tools-vcsgis-restore-history":
228
//                showRestoreHistoryDialog();
229
//                break;
230
//            case "tools-vcsgis-registrationeditingstores":
231
//                showRegistrationOfEditingStoresDialog();
232
//                break;
233
//            case "tools-vcsgis-repositoryentityfeaturetypeeditor":
234
//                showRepositoryEntityFeatureTypeEditorImplDialog();
235
//                break;                
236
//            case "tools-vcsgis-setworkingcopyoffline":
237
//                showSetWorkingCopyOfflineDialog();
238
        }
239
    }
240

    
241
    @Override
242
    public boolean isEnabled() {
243
        return true;
244
    }
245

    
246
    @Override
247
    public boolean isVisible() {
248
        return true;
249
    }
250

    
251
//    private void cleanHighligthed() {
252
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
253
//        swingManager.getDefaultServices().cleanHighligthed();
254
//    }
255
//
256

    
257
//    private void showAddToWorkspaceDialog() {
258
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
259
//
260
//        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
261
//                "AddToWorkingCopy",
262
//                swingManager.createAddToWorkspacePanel(),
263
//                "_VCS_Add_to_workingcopy",
264
//                "_VCS_Add_to_workingcopy",
265
//                "_VCS_Add_to_workingcopy",
266
//                () -> {
267
//                    I18nManager i18n = ToolsLocator.getI18nManager();
268
//                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
269
//                    OnlineJAddToWorkspace addToWorkspacePanel = (OnlineJAddToWorkspace) this.dialogsHelper.getDialog("AddToWorkingCopy").getPanel();
270
//                    int r = addToWorkspacePanel.add();
271
//                    if (r != 0) {
272
//                        dialogsManager.messageDialog(
273
//                                addToWorkspacePanel.getLastErrorMessage(),
274
//                                i18n.getTranslation("_VCS_Add_to_workingcopy"),
275
//                                JOptionPane.WARNING_MESSAGE
276
//                        );
277
//                    }
278
//                }
279
//        );
280
//        Dimension screensize = ApplicationLocator.getApplicationManager().getUIManager().getInternalSize();
281
//        Dimension panelsize = dialog.getPanel().asJComponent().getPreferredSize();
282
//        ToolsSwingUtils.ensureHeightWitdh(
283
//                dialog.getPanel().asJComponent(), 
284
//                Math.max(3*(screensize.height/4), panelsize.height),
285
//                Math.max(2*(screensize.width/4), panelsize.width), 
286
//                7*(screensize.height/8), 
287
//                3*(screensize.width/4)
288
//        );                    
289
//        dialog.show(
290
//                Collections.singletonMap("align", GridBagConstraints.CENTER)
291
//        );
292
//    }
293
//
294
//    private void showImportHistoryDialog() {
295
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
296
//
297
//        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
298
//                "ImportHistory",
299
//                swingManager.createImportHistoryPanel(),
300
//                "_VCS_Import_history",
301
//                "_VCS_Import_history",
302
//                "_VCS_Import_history",
303
//                () -> {
304
//                    I18nManager i18n = ToolsLocator.getI18nManager();
305
//                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
306
//                    OnlineJImportHistory importHistoryPanel = (OnlineJImportHistory) this.dialogsHelper.getDialog("ImportHistory").getPanel();
307
//                    int r = importHistoryPanel.importHistory();
308
//                    if (r != 0) {
309
////                        FeatureStore featureStore = importHistoryPanel.getFeatureStore();
310
////                        String targetName = importHistoryPanel.getTabletName();
311
//                        OnlineWorkspace workspace = importHistoryPanel.getWorkspace();
312
//                        String errmsg = workspace.getErrorMessage(r);
313
//                        if( errmsg==null ) {
314
//                            errmsg = "";
315
//                        }
316
//                        dialogsManager.messageDialog(
317
//                                i18n.getTranslation("_Cant_import_history")
318
//                                    + "\n" 
319
//                                    + errmsg
320
//                                    + "\n" 
321
//                                    + i18n.getTranslation("_see_error_log_for_more_information")
322
//                                    + "\n" 
323
//                                    + "("+ Objects.toString(importHistoryPanel.getLastLogFile()) + ")"
324
//                                    ,
325
//                                i18n.getTranslation("_VCS_Import_history"),
326
//                                JOptionPane.WARNING_MESSAGE
327
//                        );
328
//                    }
329
//                }
330
//        );
331
//        dialog.show(
332
//                Collections.singletonMap("align", GridBagConstraints.CENTER)
333
//        );
334
//    }
335

    
336
    private void showInitWorkspaceDialog() {
337
        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
338

    
339
        I18nManager i18n = ToolsLocator.getI18nManager();
340
        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog("InitializeWorkingCopy",
341
                swingManager.createInitWorkspacePanel(),
342
                i18n.getTranslation("_Online_Initialize_workingcopy"),
343
                i18n.getTranslation("_Online_Initialize_workingcopy"),
344
                i18n.getTranslation("_Online_Initialize_workingcopy"),
345
                () -> {
346
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
347
                    OnlineJInitWorkingcopy panelInitWorkspace = (OnlineJInitWorkingcopy) this.dialogsHelper.getDialog("InitializeWorkingCopy").getPanel();
348
                    int r = panelInitWorkspace.actionPerformed();
349
                    if (r != 0) {
350
                        dialogsManager.messageDialog(
351
                                i18n.getTranslation(
352
                                        "_Cant_initialize_workingcopy_{0}",
353
                                        new String[]{panelInitWorkspace.getWorkspaceName()}
354
                                ),
355
                                i18n.getTranslation("_Online_Initialize_workingcopy"),
356
                                JOptionPane.WARNING_MESSAGE
357
                        );
358
                    }
359
                }
360
        );
361
        dialog.setAutoclose(true);
362
        dialog.show(
363
                Collections.singletonMap("align", GridBagConstraints.CENTER)
364
        );
365
    }
366

    
367
//    private void showInitializaRepositoryDialog() {
368
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
369
//
370
//        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
371
//                "InitializeRepository",
372
//                swingManager.createInitRepositoryPanel(),
373
//                "_VCS_Initialize_repository",
374
//                "_VCS_Initialize_repository",
375
//                "_VCS_Initialize_repository",
376
//                () -> {
377
//                    I18nManager i18n = ToolsLocator.getI18nManager();
378
//                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
379
//                    OnlineJInitServer panel = (OnlineJInitServer) this.dialogsHelper.getDialog("InitializeRepository").getPanel();
380
//                    int r = panel.initialize();
381
//                    if (r != 0) {
382
//                        dialogsManager.messageDialog(
383
//                                i18n.getTranslation(
384
//                                        "_Cant_initialize_server_{0}",
385
//                                        new String[]{panel.getConnectionLabel()}
386
//                                ),
387
//                                i18n.getTranslation("_VCS_Initialize_repository"),
388
//                                JOptionPane.WARNING_MESSAGE
389
//                        );
390
//                    }
391
//                }
392
//        );
393
//        dialog.setAutoclose(true);
394
//        dialog.show(
395
//                Collections.singletonMap("align", GridBagConstraints.CENTER)
396
//        );
397
//    }
398

    
399
    private void showDownloadDialog(OnlineWorkingcopy workspace, List<String> tableNames,Boolean overwrite) {
400
        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
401

    
402
        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
403
                "Download",
404
                swingManager.createDownloadPanel(workspace,tableNames, overwrite),
405
                "_Online_Download",
406
                "_Online_Download",
407
                "_Online_Download",
408
                () -> {
409
                    I18nManager i18n = ToolsLocator.getI18nManager();
410
                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
411
                    OnlineJDownload downloadPanel = (OnlineJDownload) this.dialogsHelper.getDialog("Download").getPanel();
412
                    int r = downloadPanel.actionPerformed();
413
                    if (r != 0) {
414
                        List<String> layerNames = downloadPanel.getSelectedLayers();
415
                        dialogsManager.messageDialog(
416
                                i18n.getTranslation(
417
                                    "_Failed_download_of_{0}",
418
                                    new String[]{ StringUtils.join(layerNames, " ") }
419
                                ),
420
                                i18n.getTranslation("_Online_Download"),
421
                                JOptionPane.WARNING_MESSAGE
422
                        );
423
                    }
424
                }
425
        );
426
        Dimension screensize = ApplicationLocator.getApplicationManager().getUIManager().getInternalSize();
427
        Dimension panelsize = dialog.getPanel().asJComponent().getPreferredSize();
428
        ToolsSwingUtils.ensureHeightWitdh(
429
                dialog.getPanel().asJComponent(), 
430
                Math.max(3*(screensize.height/4), panelsize.height),
431
                Math.max(2*(screensize.width/4), panelsize.width), 
432
                7*(screensize.height/8), 
433
                3*(screensize.width/4)
434
        );                    
435
        dialog.show(
436
                Collections.singletonMap("align", GridBagConstraints.CENTER)
437
        );
438
    }
439

    
440
//    private void showExportDialog() {
441
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
442
//
443
//        final OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
444
//                "Export",
445
//                swingManager.createExportPanel(),
446
//                "_VCS_Export",
447
//                "_Export_to_a_local_table_a_table_of_the_repository",
448
//                "_VCS_Export",
449
//                () -> {
450
//                    I18nManager i18n = ToolsLocator.getI18nManager();
451
//                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
452
//                    OnlineJExport exportPanel = (OnlineJExport) this.dialogsHelper.getDialog("Export").getPanel();
453
//                    int r = exportPanel.export();
454
//                    if (r != 0) {
455
//                        OnlineEntity entity = exportPanel.getTable();
456
//                        dialogsManager.messageDialog(
457
//                                i18n.getTranslation(
458
//                                        "_Failed_export_of_{0}",
459
//                                        new String[]{entity.toString()}
460
//                                ),
461
//                                i18n.getTranslation("_Online_Export"),
462
//                                JOptionPane.WARNING_MESSAGE
463
//                        );
464
//                    }
465
//                }
466
//        );
467
//        dialog.show();
468
//    }
469

    
470
    private void showChangesDialog(OnlineWorkingcopy workspace, List<String> tableNames, Timestamp efectivedate, String comment) {
471
        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
472

    
473
        final OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
474
                "Changes",
475
                swingManager.createChangesPanel(workspace,tableNames, efectivedate, comment),
476
                "_Online_Changes"
477
        );
478
        Dimension screensize = ApplicationLocator.getApplicationManager().getUIManager().getInternalSize();
479
        Dimension panelsize = dialog.getPanel().asJComponent().getPreferredSize();
480
        ToolsSwingUtils.ensureHeightWitdh(
481
                dialog.getPanel().asJComponent(), 
482
                Math.max(3*(screensize.height/4), panelsize.height),
483
                Math.max(2*(screensize.width/4), panelsize.width), 
484
                7*(screensize.height/8), 
485
                3*(screensize.width/4)
486
        );                    
487
        dialog.show(
488
                Collections.singletonMap("align", GridBagConstraints.CENTER)
489
        );
490
    }
491

    
492
//    private void showHistory() {
493
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
494
//
495
//        final OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
496
//                "Revisions",
497
//                swingManager.createRevisionsPanel(),
498
//                "_VCS_Revisions"
499
//        );
500
//        dialog.show();
501
//    }
502
//
503
//    private void showRegistrationWorkspaceDialog() {
504
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
505
//
506
//        final OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
507
//                "RegisterWorkingCopies",
508
//                swingManager.createRegisterWorkspacePanel(),
509
//                "_VCS_Registration_workingcopies"
510
//        );
511
//        dialog.show();
512
//    }
513
//
514
//
515
//    private void showRegistrationOfEditingStoresDialog() {
516
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
517
//
518
//        final OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
519
//                "RegistrationOfEditingStores",
520
//                swingManager.createRegistrationOfEditingStoresPanel(),
521
//                "_VCS_Registration_of_editing_stores"
522
//        );
523
//        dialog.show();
524
//    }
525
//
526
//    private void showServerEntitiesDialog() {
527
//        I18nManager i18nManager = ToolsLocator.getI18nManager();
528
//        WindowManager_v2 winManager = (WindowManager_v2) ToolsSwingLocator.getWindowManager();
529
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
530
//
531
//        final OnlineJShowServerTableForm panel = swingManager.createShowTableServerFormPanel("VCSGIS_ENTITIES");
532
//        winManager.showWindow(
533
//                panel.asJComponent(),
534
//                i18nManager.getTranslation("_VCS_Server_entities"),
535
//                WindowManager.MODE.WINDOW
536
//        );
537
//    }
538
//
539
//    private void showServerHooksDialog() {
540
//        I18nManager i18nManager = ToolsLocator.getI18nManager();
541
//        WindowManager_v2 winManager = (WindowManager_v2) ToolsSwingLocator.getWindowManager();
542
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
543
//
544
//        final OnlineJShowServerTableForm panel = swingManager.createShowTableServerFormPanel("VCSGIS_HOOKS");
545
//        winManager.showWindow(
546
//                panel.asJComponent(),
547
//                i18nManager.getTranslation("_VCS_Server_hooks"),
548
//                WindowManager.MODE.WINDOW
549
//        );
550
//    }
551
//
552
//    private void showCreateResourceTableDialog() {
553
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
554
//
555
//        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
556
//                "CreateResourceTable",
557
//                swingManager.createResourceTablePanel(),
558
//                "_VCS_Create_resource_table",
559
//                "_Create_resource_table_parameters",
560
//                "_VCS_Create_resource_table",
561
//                () -> {
562
//                    I18nManager i18n = ToolsLocator.getI18nManager();
563
//                    OnlineJCreateResourceTable panel = (OnlineJCreateResourceTable) this.dialogsHelper.getDialog("CreateResourceTable").getPanel();
564
//                    panel.createResourceTable();
565
//                }
566
//        );
567
//        dialog.setAutoclose(true);
568
//        dialog.show();
569
//    }
570
//
571
//    private void showLogoutDialog() {
572
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
573
//
574
//        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
575
//                "Logout",
576
//                swingManager.createLogoutPanel(),
577
//                "_VCS_Logout",
578
//                "_Logout_the_current_user_from_a_Online_working_copy",
579
//                "_VCS_Logout",
580
//                () -> {
581
//                    I18nManager i18n = ToolsLocator.getI18nManager();
582
//                    OnlineJLogout panel = (OnlineJLogout) this.dialogsHelper.getDialog("Logout").getPanel();
583
//                    panel.logout();
584
//                }
585
//        );
586
//        dialog.setAutoclose(true);
587
//        dialog.show();
588
//    }
589
//
590
//    private void showCheckoutDataModelDialog(OnlineWorkspace workspace, String model) {
591
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
592
//
593
//        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
594
//                "ConnectDataModel",
595
//                swingManager.createCheckoutDataModelPanel(workspace, model),
596
//                "_VCS_Connect_to_datamodel",
597
//                "_VCS_Connect_to_datamodel",
598
//                "_VCS_Connect_to_datamodel",
599
//                () -> {
600
//                    I18nManager i18n = ToolsLocator.getI18nManager();
601
//                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
602
//                    OnlineJCheckoutDataModel checkoutDataModelPanel = (OnlineJCheckoutDataModel) this.dialogsHelper.getDialog("ConnectDataModel").getPanel();
603
//                    int r = checkoutDataModelPanel.connectToModel();
604
//                    if ( !(r == ERR_OK || r==ERR_USER_CANCELLED) ) {
605
//                        String dataModel = checkoutDataModelPanel.getDataModel();
606
//                        dialogsManager.messageDialog(
607
//                                i18n.getTranslation(
608
//                                        "_Failed_connect_to_{0}",
609
//                                        new String[]{dataModel}
610
//                                ),
611
//                                i18n.getTranslation("_VCS_Connect_to_datamodel"),
612
//                                JOptionPane.WARNING_MESSAGE
613
//                        );
614
//                    }
615
//                }
616
//        );
617
//        dialog.show(
618
//                Collections.singletonMap("align", GridBagConstraints.CENTER)
619
//        );
620
//    }
621
//   
622
//    private void showDownloadWorkingcopyDialog() {
623
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
624
//
625
//        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog("DownloadWorkingcopy",
626
//                swingManager.createDownloadWorkingcopyPanel(),
627
//                "_VCS_Download_workingcopy",
628
//                "_VCS_Download_workingcopy",
629
//                "_VCS_Download_workingcopy",
630
//                () -> {
631
//                    I18nManager i18n = ToolsLocator.getI18nManager();
632
//                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
633
//                    OnlineJDownloadWorkingcopy downloadWorkingcopyPanel = (OnlineJDownloadWorkingcopy) this.dialogsHelper.getDialog("DownloadWorkingcopy").getPanel();
634
//                    int r = downloadWorkingcopyPanel.download(false);
635
//                    if (r != 0) {
636
//                        dialogsManager.messageDialog(
637
//                                i18n.getTranslation(
638
//                                        "_Failed_dowloading_working_copy"
639
//                                ),
640
//                                i18n.getTranslation("_VCS_Download_working_copy"),
641
//                                JOptionPane.WARNING_MESSAGE
642
//                        );
643
//                    }
644
//                }
645
//        );
646
//        dialog.show(
647
//                Collections.singletonMap("align", GridBagConstraints.CENTER)
648
//        );
649
//    }
650
//
651
//    private void showPrepareWorkingcopyDialog() {
652
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
653
//
654
//        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog("PrepareWorkingcopy",
655
//                swingManager.createPrepareWorkingcopyPanel(),
656
//                "_VCS_Prepare_workingcopy",
657
//                "_VCS_Prepare_workingcopy",
658
//                "_VCS_Prepare_workingcopy",
659
//                () -> {
660
//                    I18nManager i18n = ToolsLocator.getI18nManager();
661
//                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
662
//                    OnlineJPrepareWorkingcopy prepareWorkingcopyPanel = (OnlineJPrepareWorkingcopy) this.dialogsHelper.getDialog("PrepareWorkingcopy").getPanel();
663
//                    int r = prepareWorkingcopyPanel.prepare();
664
//                    if (r != 0) {
665
//                        dialogsManager.messageDialog(
666
//                                i18n.getTranslation(
667
//                                        "_Failed_prepare_working_copy"
668
//                                ),
669
//                                i18n.getTranslation("_VCS_Prepare_working_copy"),
670
//                                JOptionPane.WARNING_MESSAGE
671
//                        );
672
//                    }
673
//                }
674
//        );
675
//        dialog.setAutoclose(true);
676
//        dialog.show(
677
//                Collections.singletonMap("align", GridBagConstraints.CENTER)
678
//        );
679
//    }
680
//
681
//    private void showBackupHistoryDialog() {
682
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
683
//
684
//        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog("BackupHistory",
685
//                swingManager.createBackupHistoryPanel(),
686
//                "_VCS_Backup_history",
687
//                "_VCS_Backup_history",
688
//                "_VCS_Backup_history",
689
//                () -> {
690
//                    I18nManager i18n = ToolsLocator.getI18nManager();
691
//                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
692
//                    OnlineJBackupHistory backupHistoryPanel = (OnlineJBackupHistory) this.dialogsHelper.getDialog("BackupHistory").getPanel();
693
//                    int r = backupHistoryPanel.backupHistory();
694
//                    if (r != 0) {
695
//                        dialogsManager.messageDialog(
696
//                                i18n.getTranslation(
697
//                                        "_Failed_doing_backup_history"
698
//                                ),
699
//                                i18n.getTranslation("_VCS_Backup_history"),
700
//                                JOptionPane.WARNING_MESSAGE
701
//                        );
702
//                    }
703
//                }
704
//        );
705
//        dialog.show();
706
//    }
707
//
708
//    private void showRestoreHistoryDialog() {
709
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
710
//
711
//        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog("RestoreHistory",
712
//                swingManager.createRestoreHistoryPanel(),
713
//                "_VCS_Restore_history",
714
//                "_VCS_Restore_history",
715
//                "_VCS_Restore_history",
716
//                () -> {
717
//                    I18nManager i18n = ToolsLocator.getI18nManager();
718
//                    ThreadSafeDialogsManager dialogsManager = ToolsSwingLocator.getThreadSafeDialogsManager();
719
//                    OnlineJRestoreHistory restoreHistoryPanel = (OnlineJRestoreHistory) this.dialogsHelper.getDialog("RestoreHistory").getPanel();
720
//                    int r = restoreHistoryPanel.restoreHistory();
721
//                    if (r != 0) {
722
//                        dialogsManager.messageDialog(
723
//                                i18n.getTranslation(
724
//                                        "_Failed_restoring_history"
725
//                                ),
726
//                                i18n.getTranslation("_VCS_Restore_history"),
727
//                                JOptionPane.WARNING_MESSAGE
728
//                        );
729
//                    }
730
//                }
731
//        );
732
//        dialog.show(
733
//                Collections.singletonMap("align", GridBagConstraints.CENTER)
734
//        );
735
//    }
736
//
737
//    private void showRepositoryEntityFeatureTypeEditorImplDialog() {
738
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
739
//
740
//        final OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
741
//                "RepositoryEntityFeatureTypeEditor",
742
//                swingManager.createRepositoryEntityFeatureTypeEditor(),
743
//                "_VCS_Repository_entity_feature_type_editor"
744
//        );
745
//        dialog.show();
746
//    }
747
//
748
//    private void showSetWorkingCopyOfflineDialog() {
749
//        OnlineSwingManager swingManager = OnlineSwingLocator.getOnlineSwingManager();
750
//
751
//        OnlineDialogInfo dialog = this.dialogsHelper.getOrCreateDialog(
752
//                "SetWorkingCopyOffline",
753
//                swingManager.createSetWorkingCopyOfflinePanel(),
754
//                "_VCS_Set_Working_copy_offline",
755
//                "_VCS_Set_Working_copy_offline",
756
//                "_VCS_Set_Working_copy_offline",
757
//                () -> {
758
//                    OnlineJSetWorkingCopyOffline setWorkingCopyOffline = (OnlineJSetWorkingCopyOffline) this.dialogsHelper.getDialog("SetWorkingCopyOffline").getPanel();
759
//                    setWorkingCopyOffline.setOffline();
760
//                }
761
//        );
762
//        dialog.show(
763
//                Collections.singletonMap("align", GridBagConstraints.CENTER)
764
//        );        
765
//    }
766

    
767
//    @Override
768
//    public IPreference[] getPreferencesPages() {
769
//        List<IPreference> prefs = new ArrayList<>();
770
//        prefs.add(new OnlinePage());
771
//
772
//        return prefs.toArray(new IPreference[prefs.size()]);
773
//    }
774
}