Salome HOME
Refactoring of Database, replacing SQL by DAOs calls. Methods for search by criteria...
[tools/siman.git] / Workspace / Siman / src / org / splat / simer / OpenStudy.java
index 9d1edc110641d5cbf98f2fe90b7a3b5889dd138a..0e19bf08ac32a845a49418a8d973d297af48c349 100644 (file)
@@ -27,10 +27,9 @@ import org.splat.dal.bo.som.DocumentType;
 import org.splat.dal.bo.som.KnowledgeElement;
 import org.splat.dal.bo.som.ProgressState;
 import org.splat.service.ProjectElementService;
-import org.splat.service.PublicationService;
 import org.splat.service.ScenarioService;
 import org.splat.service.StepService;
-import org.splat.service.technical.ProjectSettingsService;
+import org.splat.service.technical.RepositoryService;
 import org.splat.dal.bo.som.Publication;
 import org.splat.som.Revision;
 import org.splat.dal.bo.som.Scenario;
@@ -44,6 +43,11 @@ import org.splat.wapp.ToolBar;
 
 public class OpenStudy extends OpenObject implements OpenStudyServices {
 
+       /**
+        * Serial version ID.
+        */
+       protected final static Logger   logger = org.splat.simer.Action.logger;
+    
     private  Study       mystudy;
     private  StudyRights urightstudy;              // User rights on the open study
        private  StepRights  urightstep;               // User rights on the selected step
@@ -51,15 +55,32 @@ public class OpenStudy extends OpenObject implements OpenStudyServices {
     private  String      credate;
     private  String      lasdate;
     private  Publication selecdoc;
+       /**
+        * Injected project element service.
+        */
        private ProjectElementService _projectElementService;
+       /**
+        * Injected scenario service.
+        */
        private ScenarioService _scenarioService;
+       /**
+        * Injected step service.
+        */
        private StepService _stepService;
-       protected final static Logger   logger = org.splat.simer.Action.logger;
-    
+       /**
+        * Injected repository service.
+        */
+       private RepositoryService _repositoryService;
 //  ==============================================================================================================================
 //  Constructor
 //  ==============================================================================================================================
 
+    /**
+     * Open the given study in the current http session.
+     * @param user the current user
+     * @param study the study to open
+     * @return this open study object
+     */
     public OpenStudy open (User user, Study study) {
 //  -----------------------------------------
       ResourceBundle    custom    = ResourceBundle.getBundle("som", ApplicationSettings.getCurrentLocale());
@@ -178,13 +199,13 @@ public class OpenStudy extends OpenObject implements OpenStudyServices {
     public URL newTemplateBasedDocument (String typename, User author) {
 //  ------------------------------------------------------------------
       String filename = typename + ".xml";     // Only XML templates are writeable
-      File   template = new File(Database.getTemplatePath() + filename);      
+      File   template = new File(getRepositoryService().getTemplatePath() + filename);      
       if   (!template.exists()) return null;
       
       Session      connex  = Database.getSession();
          Transaction  transax = connex.beginTransaction();
       try {
-        File  udir   = Database.getDownloadDirectory(author);
+        File  udir   = getRepositoryService().getDownloadDirectory(author);
         File  credoc = new File(udir.getPath() + "/" + filename);
 
 //      Creation of the meta-document
@@ -476,4 +497,20 @@ public class OpenStudy extends OpenObject implements OpenStudyServices {
        public void setStepService(StepService stepService) {
                _stepService = stepService;
        }
+
+       /**
+        * Get the repositoryService.
+        * @return the repositoryService
+        */
+       public RepositoryService getRepositoryService() {
+               return _repositoryService;
+       }
+
+       /**
+        * Set the repositoryService.
+        * @param repositoryService the repositoryService to set
+        */
+       public void setRepositoryService(RepositoryService repositoryService) {
+               _repositoryService = repositoryService;
+       }
 }
\ No newline at end of file