Author: dflorey
Date: Thu Feb 16 04:36:08 2006
New Revision: 378234

URL: http://svn.apache.org/viewcvs?rev=378234&view=rev
Log:
Bugfix: Configuration of analyzer per custom property failed
Added fieldname->propertyname map 

Modified:
    
jakarta/slide/trunk/src/stores/org/apache/slide/index/lucene/IndexConfiguration.java

Modified: 
jakarta/slide/trunk/src/stores/org/apache/slide/index/lucene/IndexConfiguration.java
URL: 
http://svn.apache.org/viewcvs/jakarta/slide/trunk/src/stores/org/apache/slide/index/lucene/IndexConfiguration.java?rev=378234&r1=378233&r2=378234&view=diff
==============================================================================
--- 
jakarta/slide/trunk/src/stores/org/apache/slide/index/lucene/IndexConfiguration.java
 (original)
+++ 
jakarta/slide/trunk/src/stores/org/apache/slide/index/lucene/IndexConfiguration.java
 Thu Feb 16 04:36:08 2006
@@ -83,6 +83,8 @@
 
        protected Set knownResourceTypes = new HashSet();
 
+       protected Map fieldnameToPropertyNameMap = new HashMap();
+
        public void addStringProperty(String namespace, String name) {
                PropertyName key = PropertyName.getPropertyName(name, 
namespace);
                this.stringProperties.add(key);
@@ -383,7 +385,14 @@
         * Generates a field name for "normal fields".
         */
        public String generateFieldName(String namespaceUri, String name) {
-               return namespaceUri + name;
+               String fieldName = namespaceUri + name;
+               PropertyName key = (PropertyName) fieldnameToPropertyNameMap
+                               .get(fieldName);
+               if (key == null) {
+                       fieldnameToPropertyNameMap.put(fieldName, PropertyName
+                                       .getPropertyName(name, namespaceUri));
+               }
+               return fieldName;
        }
 
        public String generateKey(String uri, NodeRevisionNumber number) {
@@ -459,14 +468,15 @@
                        if (fieldName.equals(Index.CONTENT_FIELD_NAME)) {
                                return contentAnalyzer.tokenStream(fieldName, 
reader);
                        }
-
-                       Analyzer analyzer = (Analyzer) 
textProperties.get(fieldName);
-                       if (analyzer != null) {
-                               return analyzer.tokenStream(fieldName, reader);
-                       } else {
-                               // TODO should not happen, throw an exception?
-                               return 
this.defaultAnalyzer.tokenStream(fieldName, reader);
+                       PropertyName key = 
(PropertyName)fieldnameToPropertyNameMap.get(fieldName);
+                       if (key != null) {
+                               Analyzer analyzer = (Analyzer) 
textProperties.get(key);
+                               if (analyzer != null) {
+                                       return analyzer.tokenStream(fieldName, 
reader);
+                               }
                        }
+                       // TODO should not happen, throw an exception?
+                       return this.defaultAnalyzer.tokenStream(fieldName, 
reader);
                }
        }
 



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to