]> SALOME platform Git repositories - tools/siman.git/blobdiff - Workspace/Siman/src/org/splat/simer/OpenKnowledge.java
Salome HOME
Siman codebase is refactored. Spring beans are introduced in the context.
[tools/siman.git] / Workspace / Siman / src / org / splat / simer / OpenKnowledge.java
index c454f7f1e75e0012e0ae2d0ed1d6ffb062f6a035..6e5a90381d47ef3ea9e723686f29cfbbcda1d56b 100644 (file)
@@ -7,152 +7,195 @@ import java.util.List;
 import java.util.ResourceBundle;
 import java.util.Vector;
 
-import org.splat.som.KnowledgeElement;
-import org.splat.som.ProgressState;
-import org.splat.som.Scenario;
-import org.splat.som.SimulationContext;
+import org.splat.dal.bo.som.KnowledgeElement;
+import org.splat.dal.bo.som.ProgressState;
+import org.splat.dal.bo.som.Scenario;
+import org.splat.dal.bo.som.SimulationContext;
+import org.splat.service.ProjectElementService;
 import org.splat.som.Step;
 import org.splat.wapp.SimpleMenu;
 
-
 public class OpenKnowledge extends OpenObject {
 
-       private  KnowledgeElement  myknelm ;
-    private  String            credate;
+       private KnowledgeElement myknelm;
+       private String credate;
+       private ProjectElementService _projectElementService;
 
        public class Menu extends SimpleMenu {
-//  ------------------------------------
-      public Menu (List<Step> context)
-      {
-       super("steps", "study");
-       int i = 0;
-       int j = 0;
-        for (Iterator<Step> k=context.iterator(); k.hasNext(); i++) {
-          Step   step   = k.next();
-          int    number = step.getNumber();
-          String icon;
-          if (step.mayContain(KnowledgeElement.class)) j = i + 1;   // Steps are numbered from 1 to N
-          if (!step.isStarted()) icon = "icon.empty.png";
-          else                   icon = "icon.done.png";
-          addItem(String.valueOf(number), "folder.step." + number, icon, "step-knowledge?selection=" + number);
-        }
-        this.selects(String.valueOf(j));
-      }
-    }
-    
-//  ==============================================================================================================================
-//  Constructor
-//  ==============================================================================================================================
-
-    public OpenKnowledge (KnowledgeElement knelm) {
-//  ---------------------------------------------
-      ResourceBundle    label   = ResourceBundle.getBundle("labels", ApplicationSettings.getCurrentLocale());
-      ResourceBundle    custom  = ResourceBundle.getBundle("som", ApplicationSettings.getCurrentLocale());
-      SimpleDateFormat  convert = new SimpleDateFormat(custom.getString("date.format"));
-      StringBuffer      value   = new StringBuffer(knelm.getValue());
-      Scenario          scene   = knelm.getOwnerScenario();
-
-      myknelm     = knelm;
-
-//    Preparation of the display
-      credate     = convert.format(myknelm.getDate());
-      involving   = getAllSteps(knelm.getOwnerScenario());
-      context     = new ArrayList<SimulationContextFacade>();
-      menu        = new Menu(getInvolvedSteps());
-      selection   = menu.getSelection();                            // The default selection is set in the menu definition
-      int   index = Integer.valueOf(selection);
-      for (Iterator<Step> i=involving.iterator(); i.hasNext();) {
-        Step next = i.next();
-        if  (next.getNumber() == index)  ustep = next;
-       for (Iterator<SimulationContext> j=next.getAllSimulationContexts().iterator(); j.hasNext(); ) {
-         context.add( new SimulationContextFacade(j.next()) );
-       }
-      }
-      value.append("<p>")
-           .append("<b>").append(label.getString("label.source")).append(":</b>")
-           .append("<br>").append(label.getString("label.study")).append("&nbsp\"").append(scene.getOwnerStudy().getTitle()).append("\",")
-           .append("<br>").append(scene.getTitle()).append(".")
-           .append("</p>");
-      description = value.toString();
-      setupContents();                              // Initializes documents and knowledge at ustep
-    }
-
-//  ==============================================================================================================================
-//  Public member functions
-//  ==============================================================================================================================
-
-    public String getAuthorName() {
-//  -----------------------------
-      return myknelm.getAuthor().toString();
-    }
-    public String getDate () {
-//  ------------------------
-      return credate;
-    }
-    public Integer getIndex() {
-//  -------------------------
-      return myknelm.getIndex();
-    }
-    public Menu getMenu () {
-//  ----------------------
-      return (Menu)menu;
-    }
-    public ProgressState getProgressState() {
-//  ---------------------------------------
-      return myknelm.getProgressState();
-    }
-    public String getReference() {
-//  ----------------------------
-      return myknelm.getReference();
-    }
-    public KnowledgeElement getKnowledgeObject () {
-//  ---------------------------------------------
-      return myknelm;
-    }
-    public String getTitle() {
-//  ------------------------
-      return myknelm.getTitle();
-    }
-    public String getType () {
-//  ------------------------
-      return ResourceBundle.getBundle("som", ApplicationSettings.getCurrentLocale()).getString("type.knowledge." + myknelm.getType().getName());
-    }
-
-    public void setSelection (String step) {
-//  --------------------------------------
-      selection = step;
-      int index = Integer.valueOf(selection);
-      for (Iterator<Step> i=involving.iterator(); i.hasNext();) {
-        ustep = i.next();
-        if (ustep.getNumber() == index) break;
-      }
-      menu.selects(selection);
-      setupContents();                              // The contents may have changed even if the selection is the same
-    }    
-
-//  ==============================================================================================================================
-//  Private services
-//  ==============================================================================================================================
-
-    private List<Step> getAllSteps (Scenario scenar) {
-//  ------------------------------------------------
-      Vector<Step> result = new Vector<Step>();
-      Step[]       step   = scenar.getSteps();
-      
-      int base = step[0].getNumber();
-      int last = step[step.length-1].getNumber();
-      for (int i=0; i<step.length; i++) {
-        result.add(step[i]);
-      }
-      step = scenar.getOwnerStudy().getSteps();
-      for (int i=step.length-1; i>-1; i--) {
-        if(step[i].getNumber() >= base) continue;
-        result.add(0, step[i]);
-      }
-      for (int i=0; i<step.length; i++) {
-        if(step[i].getNumber() <= last) continue;
-        result.add(step[i]);
-      }
-      return result;
-    }
+               // ------------------------------------
+               public Menu(List<Step> context) {
+                       super("steps", "study");
+                       int i = 0;
+                       int j = 0;
+                       for (Iterator<Step> k = context.iterator(); k.hasNext(); i++) {
+                               Step step = k.next();
+                               int number = step.getNumber();
+                               String icon;
+                               if (step.mayContain(KnowledgeElement.class))
+                                       j = i + 1; // Steps are numbered from 1 to N
+                               if (!step.isStarted())
+                                       icon = "icon.empty.png";
+                               else
+                                       icon = "icon.done.png";
+                               addItem(String.valueOf(number), "folder.step." + number, icon,
+                                               "step-knowledge?selection=" + number);
+                       }
+                       this.selects(String.valueOf(j));
+               }
+       }
+
+       // ==============================================================================================================================
+       // Constructor
+       // ==============================================================================================================================
+
+       public OpenKnowledge(KnowledgeElement knelm) {
+               // ---------------------------------------------
+               ResourceBundle label = ResourceBundle.getBundle("labels",
+                               ApplicationSettings.getCurrentLocale());
+               ResourceBundle custom = ResourceBundle.getBundle("som",
+                               ApplicationSettings.getCurrentLocale());
+               SimpleDateFormat convert = new SimpleDateFormat(
+                               custom.getString("date.format"));
+               StringBuffer value = new StringBuffer(knelm.getValue());
+               Scenario scene = knelm.getOwnerScenario();
+
+               myknelm = knelm;
+
+               // Preparation of the display
+               credate = convert.format(myknelm.getDate());
+               involving = getAllSteps(knelm.getOwnerScenario());
+               context = new ArrayList<SimulationContextFacade>();
+               menu = new Menu(getInvolvedSteps());
+               selection = menu.getSelection(); // The default selection is set in the menu definition
+               int index = Integer.valueOf(selection);
+               for (Iterator<Step> i = involving.iterator(); i.hasNext();) {
+                       Step next = i.next();
+                       if (next.getNumber() == index)
+                               ustep = next;
+                       for (Iterator<SimulationContext> j = next
+                                       .getAllSimulationContexts().iterator(); j.hasNext();) {
+                               context.add(new SimulationContextFacade(j.next()));
+                       }
+               }
+               value.append("<p>").append("<b>")
+                               .append(label.getString("label.source")).append(":</b>")
+                               .append("<br>").append(label.getString("label.study"))
+                               .append("&nbsp\"").append(scene.getOwnerStudy().getTitle())
+                               .append("\",").append("<br>").append(scene.getTitle())
+                               .append(".").append("</p>");
+               description = value.toString();
+               setupContents(); // Initializes documents and knowledge at ustep
+       }
+
+       // ==============================================================================================================================
+       // Public member functions
+       // ==============================================================================================================================
+
+       public String getAuthorName() {
+               // -----------------------------
+               return myknelm.getAuthor().toString();
+       }
+
+       public String getDate() {
+               // ------------------------
+               return credate;
+       }
+
+       public Integer getIndex() {
+               // -------------------------
+               return myknelm.getIndex();
+       }
+
+       public Menu getMenu() {
+               // ----------------------
+               return (Menu) menu;
+       }
+
+       public ProgressState getProgressState() {
+               // ---------------------------------------
+               return myknelm.getProgressState();
+       }
+
+       public String getReference() {
+               // ----------------------------
+               return myknelm.getReference();
+       }
+
+       public KnowledgeElement getKnowledgeObject() {
+               // ---------------------------------------------
+               return myknelm;
+       }
+
+       public String getTitle() {
+               // ------------------------
+               return myknelm.getTitle();
+       }
+
+       public String getType() {
+               // ------------------------
+               return ResourceBundle.getBundle("som",
+                               ApplicationSettings.getCurrentLocale()).getString(
+                               "type.knowledge." + myknelm.getType().getName());
+       }
+
+       public void setSelection(String step) {
+               // --------------------------------------
+               selection = step;
+               int index = Integer.valueOf(selection);
+               for (Iterator<Step> i = involving.iterator(); i.hasNext();) {
+                       ustep = i.next();
+                       if (ustep.getNumber() == index)
+                               break;
+               }
+               menu.selects(selection);
+               setupContents(); // The contents may have changed even if the selection is the same
+       }
+
+       // ==============================================================================================================================
+       // Private services
+       // ==============================================================================================================================
+
+       private List<Step> getAllSteps(Scenario scenar) {
+               // ------------------------------------------------
+               Vector<Step> result = new Vector<Step>();
+               Step[] step = getProjectElementService().getSteps(scenar);
+
+               int base = step[0].getNumber();
+               int last = step[step.length - 1].getNumber();
+               for (int i = 0; i < step.length; i++) {
+                       result.add(step[i]);
+               }
+               step = getProjectElementService().getSteps(scenar.getOwnerStudy());
+               for (int i = step.length - 1; i > -1; i--) {
+                       if (step[i].getNumber() >= base)
+                               continue;
+                       result.add(0, step[i]);
+               }
+               for (int i = 0; i < step.length; i++) {
+                       if (step[i].getNumber() <= last)
+                               continue;
+                       result.add(step[i]);
+               }
+               return result;
+       }
+
+       /**
+        * Get the projectElementService.
+        * 
+        * @return the projectElementService
+        */
+       public ProjectElementService getProjectElementService() {
+               return _projectElementService;
+       }
+
+       /**
+        * Set the projectElementService.
+        * 
+        * @param projectElementService
+        *            the projectElementService to set
+        */
+       public void setProjectElementService(
+                       ProjectElementService projectElementService) {
+               _projectElementService = projectElementService;
+       }
 }
\ No newline at end of file