Salome HOME
Processing instruction is defined now in getScenarioInfo using document types mappings.
[tools/siman.git] / Workspace / Siman-Common / src / org / splat / service / ProjectElementService.java
index 186a04847f6e5a73ecc6892bbd600a25d83d92bd..81792bbc6c231a197e6e163897a7fb842681f71f 100644 (file)
@@ -14,6 +14,7 @@ import org.splat.som.Step;
 
 /**
  * Project element service interface.
+ * 
  * @author RKV
  * 
  */
@@ -21,15 +22,29 @@ public interface ProjectElementService {
 
        /**
         * Get the first activity of the project element.
-        * @param elem a study or a scenario 
+        * 
+        * @param elem
+        *            a study or a scenario
         * @return the first activity (step) of the project element
         */
-       public Step getFirstStep(ProjectElement elem);
+       Step getFirstStep(ProjectElement elem);
 
        /**
         * Get activities of the project element.
-        * @param elem a study or a scenario
+        * 
+        * @param elem
+        *            a study or a scenario
         * @return array of activities (steps).
         */
-       public Step[] getSteps(ProjectElement elem);
+       Step[] getSteps(ProjectElement elem);
+
+       /**
+        * Refreshes the internal data potentially out-of-date. This function needs to be called when Publication objects are added to this
+        * Project Element before being saved. The reason is, as saving a persistent object changes its hashcode, hashed data need to be rebuilt
+        * after saving for making functions based on this hashcode such as remove(), working.
+        * 
+        * @param elem
+        *            the project element to refresh
+        */
+       void refresh(ProjectElement elem);
 }