Mercurial > dive4elements > river
annotate flys-client/src/main/java/de/intevation/flys/client/client/FLYS.java @ 4248:fc742c039f30
Add model for MeasurementStation client side
Add a client mode representing the MeasurementStation
author | Björn Ricks <bjoern.ricks@intevation.de> |
---|---|
date | Wed, 24 Oct 2012 16:57:53 +0200 |
parents | 03de5c424f95 |
children | ebc22575e413 |
rev | line source |
---|---|
0
4e8be5e7855f
Start of a GWT based client for FLYS-3.0
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.client.client; |
4e8be5e7855f
Start of a GWT based client for FLYS-3.0
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
2 |
4e8be5e7855f
Start of a GWT based client for FLYS-3.0
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
3 import com.google.gwt.core.client.EntryPoint; |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
4 import com.google.gwt.core.client.GWT; |
605
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
5 import com.google.gwt.event.shared.UmbrellaException; |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
6 import com.google.gwt.user.client.rpc.AsyncCallback; |
9
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
7 import com.google.gwt.xml.client.XMLParser; |
3989
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
8 |
217
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
9 import com.smartgwt.client.util.SC; |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
10 import com.smartgwt.client.widgets.HTMLPane; |
605
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
11 import com.smartgwt.client.widgets.Window; |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
12 import com.smartgwt.client.widgets.events.CloseClickEvent; |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
13 import com.smartgwt.client.widgets.events.CloseClickHandler; |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
14 import com.smartgwt.client.widgets.layout.HLayout; |
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
15 import com.smartgwt.client.widgets.layout.VLayout; |
6
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
16 |
611
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
17 import de.intevation.flys.client.client.event.CollectionChangeEvent; |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
18 import de.intevation.flys.client.client.event.CollectionChangeHandler; |
9
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
19 import de.intevation.flys.client.client.services.ArtifactService; |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
20 import de.intevation.flys.client.client.services.ArtifactServiceAsync; |
3865
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
21 import de.intevation.flys.client.client.services.CreateCollectionService; |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
22 import de.intevation.flys.client.client.services.CreateCollectionServiceAsync; |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
23 import de.intevation.flys.client.client.services.DescribeCollectionService; |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
24 import de.intevation.flys.client.client.services.DescribeCollectionServiceAsync; |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
25 import de.intevation.flys.client.client.services.GetArtifactService; |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
26 import de.intevation.flys.client.client.services.GetArtifactServiceAsync; |
29
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
27 import de.intevation.flys.client.client.services.RiverService; |
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
28 import de.intevation.flys.client.client.services.RiverServiceAsync; |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
29 import de.intevation.flys.client.client.services.UserService; |
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
30 import de.intevation.flys.client.client.services.UserServiceAsync; |
6
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
31 import de.intevation.flys.client.client.ui.CollectionView; |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
32 import de.intevation.flys.client.client.ui.FLYSFooter; |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
25
diff
changeset
|
33 import de.intevation.flys.client.client.ui.FLYSHeader; |
1
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
34 import de.intevation.flys.client.client.ui.FLYSView; |
6
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
35 import de.intevation.flys.client.client.ui.FLYSWorkspace; |
1
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
36 import de.intevation.flys.client.client.ui.MainMenu; |
4
89976499e013
Implemented a ProjectList and added a mockup that displays two collections in that list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2
diff
changeset
|
37 import de.intevation.flys.client.client.ui.ProjectList; |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
38 import de.intevation.flys.client.shared.model.Artifact; |
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
39 import de.intevation.flys.client.shared.model.Collection; |
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
40 import de.intevation.flys.client.shared.model.CollectionItem; |
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
41 import de.intevation.flys.client.shared.model.River; |
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
42 import de.intevation.flys.client.shared.model.User; |
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
43 |
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
44 import java.util.ArrayList; |
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
45 import java.util.List; |
3698
8e69aca69074
Catch MissingResourceException on unexpected server exceptions.
Christian Lins <christian.lins@intevation.de>
parents:
3696
diff
changeset
|
46 import java.util.MissingResourceException; |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
47 import java.util.Set; |
1
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
48 |
0
4e8be5e7855f
Start of a GWT based client for FLYS-3.0
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
49 |
4e8be5e7855f
Start of a GWT based client for FLYS-3.0
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
50 /** |
4e8be5e7855f
Start of a GWT based client for FLYS-3.0
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
51 * Entry point classes define <code>onModuleLoad()</code>. |
1
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
52 * |
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
53 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> |
0
4e8be5e7855f
Start of a GWT based client for FLYS-3.0
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
54 */ |
611
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
55 public class FLYS implements EntryPoint, CollectionChangeHandler { |
0
4e8be5e7855f
Start of a GWT based client for FLYS-3.0
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
56 |
217
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
57 /** The message class that provides i18n strings.*/ |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
58 protected FLYSConstants MSG = GWT.create(FLYSConstants.class); |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
59 |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
60 /** The UserService used to retrieve information about the current user. */ |
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
61 protected UserServiceAsync userService = GWT.create(UserService.class); |
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
62 |
29
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
63 /** The RiverService used to retrieve the supported rivers of the server.*/ |
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
64 protected RiverServiceAsync riverService = GWT.create(RiverService.class); |
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
65 |
9
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
66 /** The ArtifactService used to communicate with the Artifact server. */ |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
67 protected ArtifactServiceAsync artifactService = |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
68 GWT.create(ArtifactService.class); |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
69 |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
70 /** The ArtifactService used to communicate with the Artifact server. */ |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
71 protected DescribeCollectionServiceAsync describeCollectionService = |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
72 GWT.create(DescribeCollectionService.class); |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
73 |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
74 /** The GetArtifactService used to open an existing collection. */ |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
75 protected GetArtifactServiceAsync getArtifactService = |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
76 GWT.create(GetArtifactService.class); |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
77 |
3865
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
78 /** The CreateCollectionServiceAsync used to create a new collection */ |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
79 protected CreateCollectionServiceAsync collectionService = |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
80 GWT.create(CreateCollectionService.class); |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
81 |
864
c0e13cf826d7
Cosmetics, doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
845
diff
changeset
|
82 /** The menu bar at the top of the application. */ |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
83 protected MainMenu menu; |
4
89976499e013
Implemented a ProjectList and added a mockup that displays two collections in that list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2
diff
changeset
|
84 |
3549
6a8f83c538e3
Merged revisions 5384 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3501
diff
changeset
|
85 /** The content window. It takes the whole space beneath the menu bar. */ |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
86 protected FLYSView view; |
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
87 |
864
c0e13cf826d7
Cosmetics, doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
845
diff
changeset
|
88 /** The project list that displays the projects of the user. */ |
4
89976499e013
Implemented a ProjectList and added a mockup that displays two collections in that list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2
diff
changeset
|
89 protected ProjectList projectList; |
89976499e013
Implemented a ProjectList and added a mockup that displays two collections in that list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2
diff
changeset
|
90 |
864
c0e13cf826d7
Cosmetics, doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
845
diff
changeset
|
91 /** The FLYSWorkspace. */ |
6
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
92 protected FLYSWorkspace workspace; |
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
93 |
80
a26489e55730
Added footer and a spacer to the webpage layout.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
29
diff
changeset
|
94 /** The footer. */ |
a26489e55730
Added footer and a spacer to the webpage layout.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
29
diff
changeset
|
95 protected FLYSFooter footer; |
a26489e55730
Added footer and a spacer to the webpage layout.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
29
diff
changeset
|
96 |
864
c0e13cf826d7
Cosmetics, doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
845
diff
changeset
|
97 /** The user who is currently logged in. */ |
25
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
98 protected User currentUser; |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
99 |
864
c0e13cf826d7
Cosmetics, doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
845
diff
changeset
|
100 /** The list of rivers supported by the server. */ |
29
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
101 protected River[] rivers; |
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
102 |
864
c0e13cf826d7
Cosmetics, doc.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
845
diff
changeset
|
103 /** This list is used to track the opened projects. */ |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
104 protected List<String> openProjects; |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
105 |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
106 |
4062
145980c21700
Handle error conditions more robust.
Christian Lins <christian.lins@intevation.de>
parents:
3989
diff
changeset
|
107 public static String getExceptionString(FLYSConstants msg, Throwable caught) { |
3989
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
108 try { |
4062
145980c21700
Handle error conditions more robust.
Christian Lins <christian.lins@intevation.de>
parents:
3989
diff
changeset
|
109 return msg.getString(caught.getMessage()); |
3989
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
110 } |
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
111 catch(MissingResourceException ex) { |
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
112 // There are some server error exceptions with |
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
113 // varying text messages that cannot be localized |
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
114 // easily. In this rare cases, use the plain |
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
115 // exception message. |
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
116 GWT.log("Missing resource for: " + caught.getMessage()); |
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
117 return caught.getLocalizedMessage(); |
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
118 } |
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
119 } |
ccac1279eb41
More robust exception handler (#897)
Christian Lins <christian.lins@intevation.de>
parents:
3980
diff
changeset
|
120 |
1
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
121 /** |
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
122 * This is the entry point method. |
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
123 */ |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
124 @Override |
1
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
125 public void onModuleLoad() { |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
126 openProjects = new ArrayList<String>(); |
0
4e8be5e7855f
Start of a GWT based client for FLYS-3.0
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
127 |
787
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
611
diff
changeset
|
128 //GWT.setUncaughtExceptionHandler(new GWT.UncaughtExceptionHandler() { |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
611
diff
changeset
|
129 // public void onUncaughtException(Throwable e) { |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
611
diff
changeset
|
130 // showWarning(e); |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
611
diff
changeset
|
131 // } |
4e0b73b7113b
Added new UI providers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
611
diff
changeset
|
132 //}); |
605
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
133 |
1
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
134 VLayout vertical = new VLayout(); |
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
135 vertical.setLayoutMargin(1); |
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
136 vertical.setWidth100(); |
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
137 vertical.setHeight100(); |
0
4e8be5e7855f
Start of a GWT based client for FLYS-3.0
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
138 |
80
a26489e55730
Added footer and a spacer to the webpage layout.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
29
diff
changeset
|
139 HLayout spacerBar = new HLayout(); |
a26489e55730
Added footer and a spacer to the webpage layout.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
29
diff
changeset
|
140 spacerBar.setWidth("100%"); |
a26489e55730
Added footer and a spacer to the webpage layout.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
29
diff
changeset
|
141 spacerBar.setHeight("20px"); |
a26489e55730
Added footer and a spacer to the webpage layout.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
29
diff
changeset
|
142 spacerBar.setStyleName("bgBlueLight"); |
a26489e55730
Added footer and a spacer to the webpage layout.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
29
diff
changeset
|
143 |
6
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
144 menu = new MainMenu(this); |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
145 view = new FLYSView(); |
80
a26489e55730
Added footer and a spacer to the webpage layout.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
29
diff
changeset
|
146 footer = new FLYSFooter(this); |
1
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
147 |
27
e4155a6833a9
Integrated a header that contains a FLYS and a BfG logo.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
25
diff
changeset
|
148 vertical.addMember(new FLYSHeader()); |
1
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
149 vertical.addMember(menu); |
80
a26489e55730
Added footer and a spacer to the webpage layout.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
29
diff
changeset
|
150 vertical.addMember(spacerBar); |
1
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
151 vertical.addMember(view); |
80
a26489e55730
Added footer and a spacer to the webpage layout.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
29
diff
changeset
|
152 vertical.addMember(footer); |
1
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
153 |
797
cc3f481e9484
Introduced GwtOpenLayers to bring up maps.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
787
diff
changeset
|
154 vertical.draw(); |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
155 |
9
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
156 initConfiguration(); |
229
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
157 |
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
158 Config config = Config.getInstance(); |
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
159 String locale = config.getLocale(); |
9
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
160 |
1425
bc06a671ef60
Removed the URL parameter from service calls. The service
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1294
diff
changeset
|
161 userService.getCurrentUser(locale, new AsyncCallback<User>() { |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
162 @Override |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
163 public void onFailure(Throwable caught) { |
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
164 GWT.log("Could not find a logged in user."); |
4062
145980c21700
Handle error conditions more robust.
Christian Lins <christian.lins@intevation.de>
parents:
3989
diff
changeset
|
165 String msg = getExceptionString(MSG, caught); |
3698
8e69aca69074
Catch MissingResourceException on unexpected server exceptions.
Christian Lins <christian.lins@intevation.de>
parents:
3696
diff
changeset
|
166 SC.warn(msg); |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
167 } |
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
168 |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
169 @Override |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
170 public void onSuccess(User user) { |
25
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
171 GWT.log("Found a user. Set '"+ user.getName() + "'"); |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
172 setCurrentUser(user); |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
173 |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
174 menu.setCurrentUser(user); |
4
89976499e013
Implemented a ProjectList and added a mockup that displays two collections in that list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2
diff
changeset
|
175 |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
176 projectList = new ProjectList(FLYS.this, user); |
6
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
177 workspace = new FLYSWorkspace(); |
4
89976499e013
Implemented a ProjectList and added a mockup that displays two collections in that list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2
diff
changeset
|
178 view.setProjectList(projectList); |
6
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
179 view.setFLYSWorkspace(workspace); |
217
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
180 |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
181 readRivers(); |
2
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
182 } |
bc5d4d2297b9
Introduced a service that retrieves the user who is currently logged in. This user is displayed in the menu bar.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
1
diff
changeset
|
183 }); |
0
4e8be5e7855f
Start of a GWT based client for FLYS-3.0
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
184 } |
6
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
185 |
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
186 |
605
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
187 public void showWarning(Throwable e) { |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
188 StringBuilder sb = new StringBuilder(); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
189 sb.append("<tt>"); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
190 |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
191 if (e instanceof UmbrellaException) { |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
192 UmbrellaException u = (UmbrellaException) e; |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
193 Set<Throwable> throwables = u.getCauses(); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
194 |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
195 for (Throwable t: throwables) { |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
196 sb.append(t.getLocalizedMessage()); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
197 sb.append("<br>"); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
198 } |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
199 } |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
200 else { |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
201 sb.append(e.getLocalizedMessage()); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
202 } |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
203 |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
204 sb.append("</tt>"); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
205 |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
206 Window w = new Window(); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
207 w.setTitle(MSG.unexpected_exception()); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
208 w.setWidth(550); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
209 w.setHeight(300); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
210 w.centerInPage(); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
211 w.setCanDragResize(true); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
212 |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
213 HTMLPane p = new HTMLPane(); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
214 p.setContents(sb.toString()); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
215 |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
216 w.addItem(p); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
217 w.show(); |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
218 } |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
219 |
9e30c776cbef
Improved the exception handling.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
600
diff
changeset
|
220 |
6
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
221 /** |
9
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
222 * This method should be called at system start. It initialzes the client |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
223 * configuration. |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
224 */ |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
225 protected void initConfiguration() { |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
226 String xml = FLYSResources.INSTANCE.initialConfiguration().getText(); |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
227 Config.getInstance(XMLParser.parse(xml)); |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
228 } |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
229 |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
230 |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
231 /** |
25
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
232 * Returns the user that is currently logged in. |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
233 * |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
234 * @return the current user. |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
235 */ |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
236 public User getCurrentUser() { |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
237 return currentUser; |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
238 } |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
239 |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
240 |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
241 /** |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
242 * Sets the current user. |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
243 */ |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
244 public void setCurrentUser(User user) { |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
245 currentUser = user; |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
246 } |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
247 |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
248 |
2da6be38d8b6
Added a User interface and a default implementation to handle users in this client.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
14
diff
changeset
|
249 /** |
28
dfdb927b137d
Improved the main menu - added further buttons (clickable labels).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
27
diff
changeset
|
250 * Returns the project list. |
dfdb927b137d
Improved the main menu - added further buttons (clickable labels).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
27
diff
changeset
|
251 */ |
dfdb927b137d
Improved the main menu - added further buttons (clickable labels).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
27
diff
changeset
|
252 public ProjectList getProjectList() { |
dfdb927b137d
Improved the main menu - added further buttons (clickable labels).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
27
diff
changeset
|
253 return projectList; |
dfdb927b137d
Improved the main menu - added further buttons (clickable labels).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
27
diff
changeset
|
254 } |
dfdb927b137d
Improved the main menu - added further buttons (clickable labels).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
27
diff
changeset
|
255 |
dfdb927b137d
Improved the main menu - added further buttons (clickable labels).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
27
diff
changeset
|
256 |
dfdb927b137d
Improved the main menu - added further buttons (clickable labels).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
27
diff
changeset
|
257 /** |
600
347cf4a5a486
Open projects are removed from screen if the user deletes them (via project list).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
557
diff
changeset
|
258 * Returns the projects workspace that contains all project windows. |
347cf4a5a486
Open projects are removed from screen if the user deletes them (via project list).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
557
diff
changeset
|
259 * |
347cf4a5a486
Open projects are removed from screen if the user deletes them (via project list).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
557
diff
changeset
|
260 * @return the FLYSWorkspace. |
347cf4a5a486
Open projects are removed from screen if the user deletes them (via project list).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
557
diff
changeset
|
261 */ |
347cf4a5a486
Open projects are removed from screen if the user deletes them (via project list).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
557
diff
changeset
|
262 public FLYSWorkspace getWorkspace() { |
347cf4a5a486
Open projects are removed from screen if the user deletes them (via project list).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
557
diff
changeset
|
263 return workspace; |
347cf4a5a486
Open projects are removed from screen if the user deletes them (via project list).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
557
diff
changeset
|
264 } |
347cf4a5a486
Open projects are removed from screen if the user deletes them (via project list).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
557
diff
changeset
|
265 |
347cf4a5a486
Open projects are removed from screen if the user deletes them (via project list).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
557
diff
changeset
|
266 |
347cf4a5a486
Open projects are removed from screen if the user deletes them (via project list).
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
557
diff
changeset
|
267 /** |
29
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
268 * Returns a list of rivers supported by the artifact server. |
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
269 * |
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
270 * @return a list of rivers supported by the artifact server. |
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
271 */ |
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
272 public River[] getRivers() { |
217
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
273 return rivers; |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
274 } |
29
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
275 |
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
276 |
217
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
277 protected void readRivers() { |
229
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
278 Config config = Config.getInstance(); |
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
279 String locale = config.getLocale(); |
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
280 |
1425
bc06a671ef60
Removed the URL parameter from service calls. The service
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1294
diff
changeset
|
281 riverService.list(locale, new AsyncCallback<River[]>() { |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
282 @Override |
217
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
283 public void onFailure(Throwable caught) { |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
284 GWT.log("Could not recieve a list of rivers."); |
4062
145980c21700
Handle error conditions more robust.
Christian Lins <christian.lins@intevation.de>
parents:
3989
diff
changeset
|
285 SC.warn(getExceptionString(MSG, caught)); |
217
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
286 } |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
287 |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
288 @Override |
217
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
289 public void onSuccess(River[] newRivers) { |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
290 GWT.log("Retrieved " + newRivers.length + " new rivers."); |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
291 rivers = newRivers; |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
292 } |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
293 }); |
29
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
294 } |
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
295 |
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
296 |
44c63e7fd0d0
Added a service to list the supported rivers of the artifact server. The FLYS instance serves a method that retrieves this list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
28
diff
changeset
|
297 /** |
6
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
298 * This method creates a new CollectionView and adds it to the workspace. |
217
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
299 * <b>NOTE</b>The user needs to be logged in and there need to at least one |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
300 * river - otherwise a warning is displayed and no CollectionView is |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
301 * created. |
6
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
302 */ |
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
303 public void newProject() { |
217
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
304 if (getCurrentUser() == null) { |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
305 SC.warn(MSG.error_not_logged_in()); |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
306 return; |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
307 } |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
308 |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
309 if (getRivers() == null) { |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
310 SC.warn(MSG.error_no_rivers_found()); |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
311 readRivers(); |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
312 |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
313 return; |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
314 } |
907b61e4d702
Improved the exception handling - added warnings for user authentication errors and errors that occur while fetching supported rivers.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
101
diff
changeset
|
315 |
100
95b30a5d6350
Bugfix: A collection view just creates a single time a new collection - even if we step back to a previous state and go forward afterwards.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
97
diff
changeset
|
316 CollectionView view = new CollectionView(this); |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
317 workspace.addView("new-project", view); |
97
0bec0112c8b3
Integrated the ProjectList into the client. Now, the Collections of a user are displayed in the list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
80
diff
changeset
|
318 |
0bec0112c8b3
Integrated the ProjectList into the client. Now, the Collections of a user are displayed in the list.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
80
diff
changeset
|
319 view.addCollectionChangeHandler(getProjectList()); |
9
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
320 } |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
321 |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
322 |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
323 protected void lockProject(String uuid) { |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
324 if (isProjectLocked(uuid)) { |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
325 return; |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
326 } |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
327 |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
328 openProjects.add(uuid); |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
329 } |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
330 |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
331 |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
332 protected void unlockProject(String uuid) { |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
333 openProjects.remove(uuid); |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
334 } |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
335 |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
336 |
3549
6a8f83c538e3
Merged revisions 5384 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3501
diff
changeset
|
337 /** Whether project uuid is currently opened. */ |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
338 protected boolean isProjectLocked(String uuid) { |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
339 return openProjects.contains(uuid); |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
340 } |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
341 |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
342 |
3549
6a8f83c538e3
Merged revisions 5384 via svnmerge from
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
3501
diff
changeset
|
343 /** Opens (or bring into foreground) project with given id. */ |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
344 public void openProject(final String collectionID) { |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
345 if (collectionID == null) { |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
346 return; |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
347 } |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
348 |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
349 if (isProjectLocked(collectionID)) { |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
350 workspace.bringUp(collectionID); |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
351 return; |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
352 } |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
353 |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
354 lockProject(collectionID); |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
355 |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
356 GWT.log("Open existing project: " + collectionID); |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
357 |
229
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
358 Config config = Config.getInstance(); |
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
359 final String locale = config.getLocale(); |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
360 |
1425
bc06a671ef60
Removed the URL parameter from service calls. The service
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1294
diff
changeset
|
361 describeCollectionService.describe(collectionID, locale, |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
362 new AsyncCallback<Collection>() { |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
363 @Override |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
364 public void onFailure(Throwable caught) { |
4062
145980c21700
Handle error conditions more robust.
Christian Lins <christian.lins@intevation.de>
parents:
3989
diff
changeset
|
365 SC.warn(getExceptionString(MSG, caught)); |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
366 } |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
367 |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
368 @Override |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
369 public void onSuccess(Collection c) { |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
370 final Collection collection = c; |
1294
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
371 |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
372 if (collection.getItemLength() == 0) { |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
373 CollectionView view = new CollectionView( |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
374 FLYS.this, collection, null); |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
375 |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
376 view.addCollectionChangeHandler( |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
377 getProjectList()); |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
378 view.addCloseClickHandler( |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
379 new CloseCollectionViewHandler( |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
380 FLYS.this, collectionID)); |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
381 |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
382 workspace.addView(collectionID, view); |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
383 |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
384 return; |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
385 } |
94d4f040da3a
Bugfix: #326 Made the process of opening existing project more robust if the collection has no artifact set.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
864
diff
changeset
|
386 |
3381
6b5920c7ea6e
Cosmetics, docs.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
1619
diff
changeset
|
387 final CollectionItem item = c.getItem(0); |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
388 |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
389 if (item == null) { |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
390 SC.warn(MSG.error_load_parameterization()); |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
391 return; |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
392 } |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
393 |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
394 getArtifactService.getArtifact( |
229
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
395 locale, |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
396 item.identifier(), |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
397 item.hash(), |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
398 new AsyncCallback<Artifact>() { |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
399 @Override |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
400 public void onFailure(Throwable caught) { |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
401 unlockProject(collectionID); |
4062
145980c21700
Handle error conditions more robust.
Christian Lins <christian.lins@intevation.de>
parents:
3989
diff
changeset
|
402 SC.warn(getExceptionString(MSG, caught)); |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
403 } |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
404 |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
405 @Override |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
406 public void onSuccess(Artifact artifact) { |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
407 CollectionView view = new CollectionView( |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
408 FLYS.this, collection, artifact); |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
409 |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
410 view.addCollectionChangeHandler( |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
411 getProjectList()); |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
412 view.addCloseClickHandler( |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
413 new CloseCollectionViewHandler( |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
414 FLYS.this, collectionID)); |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
415 |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
416 workspace.addView(collectionID, view); |
225
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
417 } |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
418 }); |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
419 |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
420 } |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
421 }); |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
422 } |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
423 |
9040663aee01
Filled the context menu point 'Open project' of the ProjectList with life - it opens a new window displaying the parameterization of the selected project.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
217
diff
changeset
|
424 |
611
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
425 public void closeProject(String uuid) { |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
426 unlockProject(uuid); |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
427 workspace.destroyProject(uuid); |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
428 } |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
429 |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
430 |
9
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
431 /** |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
432 * Create a new Artifact. |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
433 */ |
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
434 public void newArtifact(String factory) { |
229
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
435 Config config = Config.getInstance(); |
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
436 String locale = config.getLocale(); |
14
fe2f4d1dd784
Integrated the httpclient for the communication between client and server. It is now possible to create a new WINFO artifact.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
9
diff
changeset
|
437 |
1425
bc06a671ef60
Removed the URL parameter from service calls. The service
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1294
diff
changeset
|
438 artifactService.create(locale, factory, null, |
229
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
439 new AsyncCallback<Artifact>() { |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
440 @Override |
229
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
441 public void onFailure(Throwable caught) { |
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
442 GWT.log("Could not create the new artifact."); |
4062
145980c21700
Handle error conditions more robust.
Christian Lins <christian.lins@intevation.de>
parents:
3989
diff
changeset
|
443 SC.warn(getExceptionString(MSG, caught)); |
229
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
444 } |
9
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
445 |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
446 @Override |
229
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
447 public void onSuccess(Artifact artifact) { |
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
448 GWT.log("Successfully created a new artifact."); |
924da6695800
Each service is now called with the name of the current locale to set the request object's locale manually in the HttpClient.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
225
diff
changeset
|
449 } |
9
8facd8545a12
Added a global configuration for the client and classes providing methods to retrieve these information.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
6
diff
changeset
|
450 }); |
6
e2b3966b40ca
Added a workspace that handles the collection windows. New button to open a new collection.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
4
diff
changeset
|
451 } |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
452 |
3865
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
453 public void newGaugeDischargeCurve(String river, Long gaugeref) { |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
454 Config config = Config.getInstance(); |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
455 |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
456 final String locale = config.getLocale(); |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
457 final String riv = river; |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
458 final Long ref = gaugeref; |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
459 final FLYS flys = this; |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
460 |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
461 User user = getCurrentUser(); |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
462 |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
463 if (user == null) { |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
464 SC.warn(MSG.error_not_logged_in()); |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
465 return; |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
466 } |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
467 |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
468 collectionService.create(locale, user.identifier(), |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
469 new AsyncCallback<Collection>() { |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
470 @Override |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
471 public void onFailure(Throwable caught) { |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
472 GWT.log("Could not create new collection."); |
4062
145980c21700
Handle error conditions more robust.
Christian Lins <christian.lins@intevation.de>
parents:
3989
diff
changeset
|
473 SC.warn(getExceptionString(MSG, caught)); |
3865
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
474 } |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
475 |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
476 @Override |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
477 public void onSuccess(Collection collection) { |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
478 GWT.log("Successfully created a new collection."); |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
479 final Collection col = collection; |
3980 | 480 artifactService.createGaugeDischargeCurveArtifact( |
3865
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
481 col, locale, riv, ref, |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
482 new AsyncCallback<Artifact>() { |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
483 @Override |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
484 public void onFailure(Throwable caught) { |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
485 GWT.log("Could not create the new artifact."); |
4062
145980c21700
Handle error conditions more robust.
Christian Lins <christian.lins@intevation.de>
parents:
3989
diff
changeset
|
486 SC.warn(getExceptionString(MSG, caught)); |
3865
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
487 } |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
488 |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
489 @Override |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
490 public void onSuccess(Artifact artifact) { |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
491 GWT.log("Successfully created a new artifact."); |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
492 CollectionView view = new CollectionView(flys, |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
493 col, artifact); |
4141
b3bc5e9ba912
Fix for part a) and c) in issue #918
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4062
diff
changeset
|
494 workspace.addView(col.identifier(), view); |
3865
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
495 |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
496 view.addCollectionChangeHandler(getProjectList()); |
4141
b3bc5e9ba912
Fix for part a) and c) in issue #918
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4062
diff
changeset
|
497 view.addCloseClickHandler( |
b3bc5e9ba912
Fix for part a) and c) in issue #918
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4062
diff
changeset
|
498 new CloseCollectionViewHandler( |
b3bc5e9ba912
Fix for part a) and c) in issue #918
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4062
diff
changeset
|
499 FLYS.this, col.identifier())); |
b3bc5e9ba912
Fix for part a) and c) in issue #918
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4062
diff
changeset
|
500 projectList.updateUserCollections(); |
3865
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
501 } |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
502 }); |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
503 } |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
504 }); |
436eec3be6ff
Allow to create a discharge curve from a gauge info
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3698
diff
changeset
|
505 } |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
506 |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
507 @Override |
611
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
508 public void onCollectionChange(CollectionChangeEvent event) { |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
509 Collection oldC = event.getOldValue(); |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
510 |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
511 if (oldC == null) { |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
512 Collection newC = event.getNewValue(); |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
513 lockProject(newC.identifier()); |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
514 } |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
515 } |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
516 |
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
517 |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
518 |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
519 /** |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
520 * This CloseClickHandler is used to remove lock on a specific Collection so |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
521 * that is might be opened again. |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
522 */ |
611
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
523 public class CloseCollectionViewHandler implements CloseClickHandler { |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
524 protected FLYS flys; |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
525 protected String uuid; |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
526 |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
527 public CloseCollectionViewHandler(FLYS flys, String uuid) { |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
528 this.flys = flys; |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
529 this.uuid = uuid; |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
530 } |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
531 |
3501
0de0ef04bcdc
Delete empty project after closing CollectionView (#785).
Christian Lins <christian.lins@intevation.de>
parents:
3381
diff
changeset
|
532 @Override |
1619
f8c03d3af300
Reactivated the Enterprise Blue theme. Fixes some icon and image issues in IE8.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
1493
diff
changeset
|
533 public void onCloseClick(CloseClickEvent event) { |
611
854312c0528c
#21 Newly created projects cannot be opened twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
605
diff
changeset
|
534 flys.closeProject(uuid); |
557
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
535 } |
92c200887b20
#21 There might be just a single window for each project now. Users can't open a project twice.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
229
diff
changeset
|
536 } |
0
4e8be5e7855f
Start of a GWT based client for FLYS-3.0
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff
changeset
|
537 } |
1
0e22a19852e7
Removed useless auto generated classes and added first ui elements with i18n support.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
0
diff
changeset
|
538 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |