Statistics
| Revision:

root / hci / trunk / eneraptor-web-app / grails-app / services / com / eneraptor / hci / MainMenuService.groovy @ 50

History | View | Annotate | Download (2.86 KB)

1
package com.eneraptor.hci
2

    
3
class MainMenuService {
4

    
5
    static transactional = true
6
        static List mainMenuItems
7
        
8
        static List sysStateSubMenu
9
        static List sysLogSubMenu
10
        static List statisticsSubMenu
11
        static List actionsSubMenu
12
        static List configSubMenu
13

    
14
    def getMainMenu() {
15
                
16
                if(mainMenuItems == null) {
17
                        createMainMenuItems()
18
                }
19

    
20
                return mainMenuItems
21
                        
22
    }
23
        
24
        def createMainMenuItems() {
25
                mainMenuItems = new ArrayList()
26
                mainMenuItems.add(new MenuItem("System state" ,"sysState"  ,"main"))
27
                mainMenuItems.add(new MenuItem("Log"          ,"sysLog"    ,"main"))
28
                mainMenuItems.add(new MenuItem("Statistics"   ,"statistics","main"))
29
                mainMenuItems.add(new MenuItem("Scenarios"      ,"actions"   ,"main"))
30
                mainMenuItems.add(new MenuItem("Configuration","config"    ,"main"))
31
                
32
                sysStateSubMenu = new ArrayList()
33
                sysStateSubMenu.add(new MenuItem("Overview","sysState","main"))
34
                sysStateSubMenu.add(new MenuItem("Last measurements","sysState","measure"))
35
                sysStateSubMenu.add(new MenuItem("Last actions taken","sysState","actions"))
36
                
37
                sysLogSubMenu = new ArrayList()
38
                sysLogSubMenu.add(new MenuItem("Overview","sysLog","main"))
39
                sysLogSubMenu.add(new MenuItem("Browse","sysLog","browse"))
40
                sysLogSubMenu.add(new MenuItem("View logged data graphically","sysLog","graph"))
41
                sysLogSubMenu.add(new MenuItem("Export","sysLog","export"))
42
                sysLogSubMenu.add(new MenuItem("Clear","sysLog","clear"))
43
                
44
                statisticsSubMenu = new ArrayList()
45
                statisticsSubMenu.add(new MenuItem("Overview","statistics","main"))
46
                statisticsSubMenu.add(new MenuItem("Saved graphs","statistics","graphs"))
47
                statisticsSubMenu.add(new MenuItem("Create a new graph","statistics","newGraph"))
48
                statisticsSubMenu.add(new MenuItem("Make reports","statistics","newReport"))
49
                
50
                actionsSubMenu = new ArrayList()
51
                actionsSubMenu.add(new MenuItem("Overview","actions","main"))
52
                actionsSubMenu.add(new MenuItem("View and edit","actions","view"))
53
                actionsSubMenu.add(new MenuItem("Create new","actions","add"))
54
                
55
                configSubMenu = new ArrayList()
56
                configSubMenu.add(new MenuItem("Overview","config","main"))
57
                configSubMenu.add(new MenuItem("Configure HCI","config","hci"))
58
                configSubMenu.add(new MenuItem("Configure the Logic","config","logic"))
59
                configSubMenu.add(new MenuItem("Configure HCI to Logic connection","config","connection"))
60
                
61
        }
62
        
63
        def getSubMenu(String menu) {
64
                
65
                        if     (menu == "sysState"  ) return sysStateSubMenu;
66
                        else if(menu == "sysLog"    ) return sysLogSubMenu;
67
                        else if(menu == "statistics") return statisticsSubMenu;
68
                        else if(menu == "actions"   ) return actionsSubMenu;
69
                        else if(menu == "config"    ) return configSubMenu;
70
                
71
        }
72
        
73
}
74

    
75
class MenuItem {
76
        
77
        String label
78
        String name
79
        String url
80
        
81
        public MenuItem(String l, String n, String url) {
82
                this.label = l
83
                this.name = n
84
                this.url = url
85
        }
86
        
87
}