henrik
05/22/2024, 8:41 AMSolrParser.kt:9:9 Class '<anonymous>' is not abstract and does not implement abstract member 'containsKey'
when extending a java class anonymously in K2. This works fine in 1.9.x. Any ideas how to fix this?
Local object:
object SolrParser {
@JvmStatic
fun asInputDoc(keysAndValues: Map<String, Any?>): SolrInputDocument =
object : SolrInputDocument() {
init {
keysAndValues.forEach { (key, value) -> addField(key, value) }
}
}
From solr-solrj-9.6.0.jar:
public class SolrInputDocument extends SolrDocumentBase<SolrInputField, SolrInputDocument>
implements Iterable<SolrInputField> {
...
@Override
public boolean containsKey(Object key) {
return _fields.containsKey(key);
}
dmitriy.novozhilov
05/22/2024, 9:43 AMdmitriy.novozhilov
05/22/2024, 9:43 AMobject SolrParser {
@JvmStatic
fun asInputDoc(keysAndValues: Map<String, Any?>): SolrInputDocument =
object : SolrInputDocument() {
init {
keysAndValues.forEach { (key, value) -> addField(key, value) }
}
override fun containsKey(key: String?): Boolean {
return super.containsKey(key)
}
override fun get(key: String?): SolrInputField? {
return super.get(key)
}
override fun remove(key: String?): SolrInputField? {
return super.remove(key)
}
}
}
henrik
05/22/2024, 10:02 AM