Project

General

Profile

1
package eu.dnetlib.client;
2

    
3
import com.google.gwt.user.client.History;
4
import com.google.gwt.user.client.Window;
5
import com.google.gwt.user.client.ui.RootPanel;
6

    
7
/**
8
 * Created by stefania on 3/6/15.
9
 */
10
public class NavigationManager {
11

    
12
    private static NavigationManager instance = null;
13

    
14
    private ContentManager contentManager = null;
15
    private MainMenu mainMenu = null;
16
    private BreadcrumbsMenu breadcrumbsMenu = null;
17

    
18
    private NavigationManager() {
19

    
20
    }
21

    
22
    public static final NavigationManager getInstance() {
23

    
24
        if(instance==null)
25
            instance = new NavigationManager();
26

    
27
        return instance;
28
    }
29

    
30
    public void navigate(String token) {
31

    
32
        GoldOAPortal.previousToken = GoldOAPortal.currentToken;
33
        GoldOAPortal.currentToken = token;
34

    
35
        if(breadcrumbsMenu!=null)
36
            breadcrumbsMenu.updateBreadcrumbsMenu(token);
37
        if(mainMenu!=null)
38
            mainMenu.updateMainMenu(token);
39
        if(contentManager!=null)
40
            contentManager.updateContent(token);
41
    }
42

    
43
    public void update() {
44

    
45
        RootPanel.get("menu").clear();
46
        RootPanel.get("breadcrumbs").clear();
47

    
48
        try {
49
            contentManager = new ContentManager();
50
        } catch (Exception e) {
51
            Window.alert("Content manager -> " + e.getMessage());
52
        }
53

    
54
        try {
55
            mainMenu = new MainMenu();
56
        } catch (Exception e) {
57
            Window.alert("Main menu -> " + e.getMessage());
58
        }
59

    
60
        try {
61
            breadcrumbsMenu = new BreadcrumbsMenu();
62
        } catch (Exception e) {
63
            Window.alert("Breadcrumbs menu -> " + e.getMessage());
64
        }
65

    
66
        RootPanel.get("menu").add(mainMenu.asWidget());
67
        RootPanel.get("breadcrumbs").add(breadcrumbsMenu.asWidget());
68
    }
69
}
(16-16/22)