Skip to content

Instantly share code, notes, and snippets.

@kornysietsma
Created August 9, 2011 06:11
Show Gist options
  • Save kornysietsma/1133496 to your computer and use it in GitHub Desktop.
Save kornysietsma/1133496 to your computer and use it in GitHub Desktop.
Scala talk - solr
import org.apache.solr.client.solrj.SolrQuery
import org.apache.solr.client.solrj.impl.CommonsHttpSolrServer
def build(fullName: String, maxRows: Int): SolrQuery = {
val (firstInitial, firstName, bits, lastName) = split(fullName)
val queryString =
"{!type=dismax mm=-1 qf='name^100.0 name_phonetic^10.0 name_synonym^10.0'} %s %s %s %s"
.format(firstInitial, firstName, bits, "+" + lastName)
val query = new SolrQuery(queryString)
query.setRows(maxRows)
query
}
def search(client: CommonsHttpSolrServer, name: String, maxResults: Int) = {
val query = build(name, maxResults)
val response = client.query(query)
val documentList = response.getResults()
documentList.map(solrDocumentToId _)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment