Salome HOME
Siman codebase is refactored. Spring beans are introduced in the context.
[tools/siman.git] / Workspace / Siman / src / org / splat / simer / SearchStudyAction.java
index 4e38b955f192866831434a36e9165dcd611b71cd..26bd2dda4efee44887c05fa8968b09f6b72fabb6 100644 (file)
@@ -6,15 +6,16 @@ import java.util.Map;
 import org.hibernate.Session;
 import org.hibernate.Transaction;
 import org.splat.kernel.InvalidPropertyException;
-import org.splat.kernel.User;
+import org.splat.dal.bo.kernel.User;
 import org.splat.kernel.UserDirectory;
-import org.splat.som.Database;
-import org.splat.som.ProgressState;
-import org.splat.som.ProjectSettings;
-import org.splat.som.SimulationContext;
-import org.splat.som.SimulationContextType;
-import org.splat.som.Study;
-import org.splat.som.Visibility;
+import org.splat.dal.dao.som.Database;
+import org.splat.dal.bo.som.ProgressState;
+import org.splat.service.SearchService;
+import org.splat.service.technical.ProjectSettingsService;
+import org.splat.dal.bo.som.SimulationContext;
+import org.splat.dal.bo.som.SimulationContextType;
+import org.splat.dal.bo.som.Study;
+import org.splat.dal.bo.som.Visibility;
 
 
 public class SearchStudyAction extends SearchBaseAction {
@@ -25,6 +26,8 @@ public class SearchStudyAction extends SearchBaseAction {
     private String            matcontext = null;   // "all" or "any"
     private String            refid      = null;   // Study reference
     private String            words      = null;   // Full text search words
+       private SearchService _searchService;
+       private ProjectSettingsService _projectSettingsService;
 
        private static final long serialVersionUID = -1910481357051393077L;
 
@@ -81,7 +84,7 @@ public class SearchStudyAction extends SearchBaseAction {
           sprop.setVisibility(Visibility.PRIVATE);
           sprop.setActor(user);
 
-          result = Database.selectStudiesWhere(sprop, other);
+          result = getSearchService().selectStudiesWhere(sprop, other);
         }
         else {
           Visibility reparea = null;
@@ -90,7 +93,7 @@ public class SearchStudyAction extends SearchBaseAction {
           sprop.setVisibility(reparea);
           if (reparea == Visibility.PRIVATE) sprop.setActor(user);
 
-          result = Database.selectStudiesWhere(sprop);
+          result = getSearchService().selectStudiesWhere(sprop);
       }
       session.put("search.result", result);                          // For redisplaying the page without re-executing the search
       return "refresh";
@@ -160,8 +163,8 @@ public class SearchStudyAction extends SearchBaseAction {
 
        protected List<SimulationContextType> getInvolvedContexts () {
 //  ------------------------------------------------------------
-      List<ProjectSettings.Step>  steps  = ProjectSettings.getStepsOf(Study.class);
-      ProjectSettings.Step[]      number = steps.toArray(new ProjectSettings.Step[steps.size()]);
+      List<ProjectSettingsService.Step>  steps  = getProjectSettings().getStepsOf(Study.class);
+      ProjectSettingsService.Step[]      number = steps.toArray(new ProjectSettingsService.Step[steps.size()]);
       
       return SimulationContext.selectTypesOf(number);
        }
@@ -204,4 +207,35 @@ public class SearchStudyAction extends SearchBaseAction {
       context = (List<SimulationContext>)filter.get("context");  // Only criteria not part of the form
 
     }
+    /**
+        * Get the searchService.
+        * @return the searchService
+        */
+       public SearchService getSearchService() {
+               return _searchService;
+       }
+
+       /**
+        * Set the searchService.
+        * @param searchService the searchService to set
+        */
+       public void setSearchService(SearchService searchService) {
+               _searchService = searchService;
+       }
+    /**
+     * Get project settings.
+        * @return Project settings service
+        */
+       private ProjectSettingsService getProjectSettings() {
+               return _projectSettingsService;
+       }
+
+       /**
+        * Set project settings service.
+        * @param projectSettingsService project settings service
+        */
+       public void setProjectSettings(
+                       ProjectSettingsService projectSettingsService) {
+               _projectSettingsService = projectSettingsService;
+       }
 }
\ No newline at end of file