]> SALOME platform Git repositories - tools/siman.git/blobdiff - Workspace/Siman/src/org/splat/simer/SearchKnowledgeAction.java
Salome HOME
Search knowledge is implemented. Unit tests are improved. Lucene index is not used...
[tools/siman.git] / Workspace / Siman / src / org / splat / simer / SearchKnowledgeAction.java
index 031766ffc2027fdd9748b6b0fd71cf2f2fd23169..d8c83c1f686967ccd78d201281bbc9faf090cff3 100644 (file)
@@ -4,12 +4,9 @@ import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 
-import org.splat.dal.bo.kernel.User;
-import org.splat.dal.bo.som.KnowledgeElement;
 import org.splat.dal.bo.som.KnowledgeElementType;
 import org.splat.dal.bo.som.ProgressState;
 import org.splat.dal.bo.som.SimulationContextType;
-import org.splat.dal.bo.som.Visibility;
 import org.splat.kernel.InvalidPropertyException;
 import org.splat.service.KnowledgeElementTypeService;
 import org.splat.service.SearchService;
@@ -95,35 +92,11 @@ public class SearchKnowledgeAction extends
         */
        @Override
        protected String doSearch() throws InvalidPropertyException {
-
                initializationScreenContext(Constants.OPEN);
-               KnowledgeElement.Properties sprop = new KnowledgeElement.Properties();
-
-               // Search matching all criteria
-               sprop.setType(getKnowledgeElementTypeService().selectType(
-                               Integer.valueOf(getFilter().getKtype())));
-               if (getFilter().getWords().length() > 0) {
-                       sprop.setTitle(getFilter().getWords());
-               }
-               if (getFilter().getReference().length() > 0) {
-                       sprop.setReference(getFilter().getReference());
-               }
-               if (getFilter().getSimContexts().size() > 0) {
-                       sprop.setSimulationContexts(getFilter().getSimContexts());
-               }
-               int index = Integer.valueOf(getFilter().getAuthor());
-               if (index > 0) {
-                       User him = getUserService().selectUser(index);
-                       sprop.setAuthor(him);
+               if (getConnectedUser() != null) {
+                       getFilter().setConnectedUserId(getConnectedUser().getIndex());
                }
-               // Set of the visibility
-               KnowledgeElement.Properties other = sprop.copy();
-
-               other.setVisibility(Visibility.PUBLIC);
-               sprop.setVisibility(Visibility.PRIVATE);
-               sprop.setActor(getConnectedUser());
-
-               _result = getSearchService().selectKnowledgeElementsWhere(sprop, other);
+               _result = getSearchService().selectKnowledgeElementsWhere(getFilter());
                getSession().put(RESULT_KEY, _result); // For redisplaying the page without re-executing the search
                return "refresh";
        }
@@ -132,6 +105,11 @@ public class SearchKnowledgeAction extends
        // Getters
        // ==============================================================================================================================
 
+       /**
+        * Get available knowledge types.
+        * 
+        * @return map of knowledge type ids and translations.
+        */
        public Map<Long, String> getKnowledgeTypes() {
                return _knowledgeTypes;
        }