]> SALOME platform Git repositories - tools/siman.git/blob - Workspace/Siman/src/org/splat/simer/DisplayKnowledgeAction.java
Salome HOME
Code is cleaned.
[tools/siman.git] / Workspace / Siman / src / org / splat / simer / DisplayKnowledgeAction.java
1 package org.splat.simer;
2
3 import java.util.List;
4
5 import org.splat.dal.bo.som.KnowledgeElement;
6 import org.splat.service.KnowledgeElementService;
7 import org.splat.som.Step;
8
9 public class DisplayKnowledgeAction extends DisplayBaseAction {
10
11         /**
12          * Serial version ID.
13          */
14         private static final long serialVersionUID = 8473504456981431762L;
15
16         /**
17          * Current knowledge element details.
18          */
19         protected OpenKnowledge myknelm = null;
20
21         /**
22          * Injected knowledge element service.
23          */
24         private KnowledgeElementService _knowledgeElementService;
25
26         // ==============================================================================================================================
27         // Action methods
28         // ==============================================================================================================================
29
30         public String doOpen() {
31                 myknelm = getOpenKnowledge();
32                 if (myindex != null)
33                         try { // Opening a knowledge from the search result
34                                 int index = Integer.valueOf(myindex);
35                                 if (myknelm != null && myknelm.getIndex() == index) { // - The selected knowledge is currently open
36                                         selection = myknelm.getSelection(); // Current selection
37                                 } else { // - The selected knowledge is new
38                                         KnowledgeElement kelm = getKnowledgeElementService()
39                                                         .selectKnowledgeElement(index);
40                                         myknelm = open(kelm);
41                                         selection = myknelm.getSelection(); // Default selection
42                                 }
43                         } catch (Exception error) {
44                                 logger.error("Reason:", error);
45                                 return ERROR;
46                         }
47                 else if (selection != null) { // Re-opening (refreshing) the currently open knowledge
48                         KnowledgeElement kelm = getKnowledgeElementService()
49                                         .selectKnowledgeElement(myknelm.getIndex());
50                         myknelm = open(kelm); // Closes the previously open knowledge
51                         myknelm.setSelection(selection);
52                 }
53                 getSession().put("menu.knowledge", myknelm.getMenu());
54
55                 return SUCCESS;
56         }
57
58         public String doSelectStep() {
59                 myknelm = getOpenKnowledge();
60
61                 if (selection == null) { // Switch back to the current study
62                         selection = myknelm.getSelection();
63                 } else { // Selection of a step of current study
64                         myknelm.setSelection(selection);
65                 }
66                 return SUCCESS;
67         }
68
69         public String doSelectDocument() {
70                 Execute todo = Execute.valueOf(action);
71                 myknelm = getOpenKnowledge();
72                 if (todo == Execute.develop)
73                         myknelm.developDocument(myindex);
74                 else if (todo == Execute.reduce)
75                         myknelm.reduceHistory(myindex);
76                 else if (todo == Execute.reduceall)
77                         myknelm.reduceDocument(myindex);
78                 return SUCCESS;
79         }
80
81         public String doSelectKnowledge() {
82                 Execute todo = Execute.valueOf(action);
83                 myknelm = getOpenKnowledge();
84                 if (todo == Execute.develop)
85                         myknelm.developKnowledge(myindex);
86                 else if (todo == Execute.reduce)
87                         myknelm.reduceKnowledge(myindex);
88                 return SUCCESS;
89         }
90
91         public String doClose() {
92                 closeKnowledge();
93                 return SUCCESS;
94         }
95
96         // ==============================================================================================================================
97         // Getters
98         // ==============================================================================================================================
99
100         public List<DocumentFacade> getDocuments() {
101                 return myknelm.getDisplayedDocuments();
102         }
103
104         public List<OpenObject.KnowledgeIterator> getKnowledges() {
105                 return myknelm.getDisplayedKnowledges();
106         }
107
108         public List<SimulationContextFacade> getSimulationContexts() {
109                 return myknelm.getDisplayedSimulationContexts();
110         }
111
112         public Step getSelectedStep() {
113                 return myknelm.getSelectedStep();
114         }
115
116         public String getWriteAccess() {
117                 return "false";
118         }
119
120         /**
121          * Get the knowledgeElementService.
122          * 
123          * @return the knowledgeElementService
124          */
125         public KnowledgeElementService getKnowledgeElementService() {
126                 return _knowledgeElementService;
127         }
128
129         /**
130          * Set the knowledgeElementService.
131          * 
132          * @param knowledgeElementService
133          *            the knowledgeElementService to set
134          */
135         public void setKnowledgeElementService(
136                         KnowledgeElementService knowledgeElementService) {
137                 _knowledgeElementService = knowledgeElementService;
138         }
139 }