Author: kmorin Date: 2009-12-11 16:46:53 +0100 (Fri, 11 Dec 2009) New Revision: 340 Modified: wikengo_core-wikitty/wikengo_core-wikitty-api/src/main/java/org/sharengo/wikitty/WikittyExtension.java wikengo_core-wikitty/wikengo_core-wikitty-jdbc-impl/src/main/java/org/sharengo/wikitty/jdbc/WikittyExtensionStorageJDBC.java wikengo_core-wikitty/wikengo_core-wikitty-solr-impl/src/main/resources/schema.xml Log: - changed the id type into string instead of text (otherwise it finds several times the same objects) - improved the field names with spaces Modified: wikengo_core-wikitty/wikengo_core-wikitty-api/src/main/java/org/sharengo/wikitty/WikittyExtension.java =================================================================== --- wikengo_core-wikitty/wikengo_core-wikitty-api/src/main/java/org/sharengo/wikitty/WikittyExtension.java 2009-12-10 17:14:14 UTC (rev 339) +++ wikengo_core-wikitty/wikengo_core-wikitty-api/src/main/java/org/sharengo/wikitty/WikittyExtension.java 2009-12-11 15:46:53 UTC (rev 340) @@ -69,7 +69,7 @@ if (name == null) { throw new IllegalArgumentException("Name must not be null"); } - this.name = name; + this.name = name.replace(" ", FieldType.WORD_SEPARATOR); } public WikittyExtension(String name, String version, @@ -80,11 +80,15 @@ if (version == null) { throw new IllegalArgumentException("Version must not be null"); } - this.name = name; + this.name = name.replace(" ", FieldType.WORD_SEPARATOR); this.version = version; this.requires = requires; if (fields != null) { - this.fields = fields; + this.fields.clear(); + LinkedHashMap<String, FieldType> corretcFields = new LinkedHashMap<String, FieldType>(); + for (Map.Entry<String, FieldType> fieldEntry : fields.entrySet()) { + this.fields.put(fieldEntry.getKey().replace(" ", FieldType.WORD_SEPARATOR), fieldEntry.getValue()); + } } } @@ -101,7 +105,7 @@ static public String computeName(String id) { int i = id.lastIndexOf("["); - String result = id.substring(0, i).replace(FieldType.WORD_SEPARATOR, " "); + String result = id.substring(0, i); return result; } @@ -118,7 +122,7 @@ } public String getName() { - return name.replace(FieldType.WORD_SEPARATOR, " "); + return name; } public String getVersion() { @@ -138,16 +142,19 @@ } public FieldType getFieldType(String fieldName) { - return fields.get(fieldName); + return fields.get(fieldName.replace(" ", FieldType.WORD_SEPARATOR)); } public List<String> getFieldNames() { - List<String> result = new ArrayList<String>(fields.keySet()); + List<String> result = new ArrayList<String>(); + for(String fieldName : fields.keySet()) { + result.add(fieldName); + } return result; } public void addField(String fieldName, FieldType type) { - fields.put(fieldName, type); + fields.put(fieldName.replace(" ", FieldType.WORD_SEPARATOR), type); } public void addTagValue(String tag, String value) { Modified: wikengo_core-wikitty/wikengo_core-wikitty-jdbc-impl/src/main/java/org/sharengo/wikitty/jdbc/WikittyExtensionStorageJDBC.java =================================================================== --- wikengo_core-wikitty/wikengo_core-wikitty-jdbc-impl/src/main/java/org/sharengo/wikitty/jdbc/WikittyExtensionStorageJDBC.java 2009-12-10 17:14:14 UTC (rev 339) +++ wikengo_core-wikitty/wikengo_core-wikitty-jdbc-impl/src/main/java/org/sharengo/wikitty/jdbc/WikittyExtensionStorageJDBC.java 2009-12-11 15:46:53 UTC (rev 340) @@ -171,7 +171,7 @@ for (int i = 0 ; i < ext.getFieldNames().size() ; i++) { FieldType type = ext.getFieldType(ext.getFieldNames().get(i)); batch.append(String.format(conf.getProperty(dataInsertQ), - ext.getId(), ext.getFieldNames().get(i).replace(" ", FieldType.WORD_SEPARATOR), + ext.getId(), ext.getFieldNames().get(i), type.toDefinition(ext.getFieldNames().get(i)), i)); } } else { Modified: wikengo_core-wikitty/wikengo_core-wikitty-solr-impl/src/main/resources/schema.xml =================================================================== --- wikengo_core-wikitty/wikengo_core-wikitty-solr-impl/src/main/resources/schema.xml 2009-12-10 17:14:14 UTC (rev 339) +++ wikengo_core-wikitty/wikengo_core-wikitty-solr-impl/src/main/resources/schema.xml 2009-12-11 15:46:53 UTC (rev 340) @@ -279,8 +279,8 @@ <fields> - <field name="id" type="text_fr" indexed="true" stored="true" required="true" /> - <field name="extensions" type="text_fr" indexed="true" stored="false" multiValued="true"/> + <field name="id" type="string" indexed="true" stored="true" required="true" /> + <field name="extensions" type="string" indexed="true" stored="false" multiValued="true"/> <!-- catchall field, containing all other searchable text fields (implemented via copyField further on in this schema -->