Example usage for org.apache.solr.common SolrInputDocument keySet

List of usage examples for org.apache.solr.common SolrInputDocument keySet

Introduction

In this page you can find the example usage for org.apache.solr.common SolrInputDocument keySet.

Prototype

@Override
    public Set<String> keySet() 

Source Link

Usage

From source file:com.ngdata.hbaseindexer.parse.DefaultResultToSolrMapperTest.java

License:Apache License

@Test
public void testMap() {
    FieldDefinition fieldDefA = new FieldDefinition("fieldA", "cfA:qualifierA", ValueSource.VALUE, "int");
    FieldDefinition fieldDefB = new FieldDefinition("fieldB", "cfB:qualifierB", ValueSource.VALUE,
            DummyValueMapper.class.getName());
    DefaultResultToSolrMapper resultMapper = new DefaultResultToSolrMapper("index-name",
            Lists.newArrayList(fieldDefA, fieldDefB), Collections.<DocumentExtractDefinition>emptyList());

    KeyValue kvA = new KeyValue(ROW, COLUMN_FAMILY_A, QUALIFIER_A, Bytes.toBytes(42));
    KeyValue kvB = new KeyValue(ROW, COLUMN_FAMILY_B, QUALIFIER_B, Bytes.toBytes("dummy value"));
    Result result = newResult(Lists.newArrayList(kvA, kvB));

    resultMapper.map(result, solrUpdateWriter);
    verify(solrUpdateWriter).add(solrInputDocCaptor.capture());

    SolrInputDocument solrDocument = solrInputDocCaptor.getValue();

    assertEquals(Sets.newHashSet("fieldA", "fieldB"), solrDocument.keySet());

    SolrInputField fieldA = solrDocument.get("fieldA");
    SolrInputField fieldB = solrDocument.get("fieldB");

    assertEquals(Lists.newArrayList(42), fieldA.getValues());
    assertEquals(Lists.newArrayList("A", "B", "C"), fieldB.getValues());
}

From source file:com.ngdata.hbaseindexer.parse.HBaseSolrDocumentExtractorTest.java

License:Apache License

@Test
public void testExtractDocument() {
    byte[] bytesA = new byte[] { 1, 2 };
    byte[] bytesB = new byte[] { 3, 4 };

    Result result = mock(Result.class);

    when(valueExtractor.extract(result)).thenReturn(Lists.newArrayList(bytesA, bytesB));
    doReturn(Lists.newArrayList("A")).when(valueMapper).map(bytesA);
    doReturn(Lists.newArrayList("B")).when(valueMapper).map(bytesB);

    SolrInputDocument solrDocument = new SolrInputDocument();
    documentExtractor.extractDocument(result, solrDocument);

    assertEquals(Sets.newHashSet("fieldName"), solrDocument.keySet());
    assertEquals(Lists.newArrayList("A", "B"), solrDocument.get("fieldName").getValues());
}

From source file:com.ngdata.hbaseindexer.parse.SolrInputDocumentBuilderTest.java

License:Apache License

@Test
public void testAdd() {
    SolrInputDocumentBuilder builder = new SolrInputDocumentBuilder();

    SolrInputDocument docA = new SolrInputDocument();
    SolrInputDocument docB = new SolrInputDocument();

    docA.addField("fieldA", "valueA1");
    docA.addField("fieldA", "valueA2");
    docB.addField("fieldB", "valueB");

    builder.add(docA);/*from  w w w.ja  v  a2 s .  c  o m*/
    builder.add(docB);

    SolrInputDocument merged = builder.getDocument();

    assertEquals(Sets.newHashSet("fieldA", "fieldB"), merged.keySet());

    assertEquals(Lists.newArrayList("valueA1", "valueA2"), merged.getField("fieldA").getValues());
    assertEquals(Lists.newArrayList("valueB"), merged.getField("fieldB").getValues());
}

From source file:com.ngdata.hbaseindexer.parse.SolrInputDocumentBuilderTest.java

License:Apache License

@Test
public void testAdd_WithBaseDocument() {
    SolrInputDocument baseDocument = new SolrInputDocument();
    baseDocument.addField("baseField", "baseValue");

    SolrInputDocumentBuilder builder = new SolrInputDocumentBuilder(baseDocument);

    SolrInputDocument additionalDocument = new SolrInputDocument();
    additionalDocument.addField("additionalField", "additionalValue");
    builder.add(additionalDocument);/*from  w  w  w. j a v  a  2 s . c o  m*/

    SolrInputDocument merged = builder.getDocument();
    assertSame(merged, baseDocument);
    assertEquals(Sets.newHashSet("baseField", "additionalField"), merged.keySet());

}

From source file:com.ngdata.hbaseindexer.parse.SolrInputDocumentBuilderTest.java

License:Apache License

@Test
public void testAdd_WithPrefix() {
    SolrInputDocumentBuilder builder = new SolrInputDocumentBuilder();

    SolrInputDocument docA = new SolrInputDocument();
    SolrInputDocument docB = new SolrInputDocument();

    docA.addField("fieldA", "valueA");
    docB.addField("fieldB", "valueB");

    builder.add(docA, "A_");
    builder.add(docB);//from   w w  w  . j av  a2  s  .  c  o  m

    SolrInputDocument merged = builder.getDocument();

    assertEquals(Sets.newHashSet("A_fieldA", "fieldB"), merged.keySet());

    assertEquals(Lists.newArrayList("valueA"), merged.getField("A_fieldA").getValues());
    assertEquals(Lists.newArrayList("valueB"), merged.getField("fieldB").getValues());
}

From source file:com.ngdata.hbaseindexer.parse.SolrInputDocumentBuilderTest.java

License:Apache License

@Test
public void testAdd_OverlappingFields() {
    SolrInputDocumentBuilder builder = new SolrInputDocumentBuilder();

    SolrInputDocument docA = new SolrInputDocument();
    SolrInputDocument docB = new SolrInputDocument();

    docA.addField("field", "A1", 0.5f);
    docA.addField("field", "A2", 0.5f);
    docB.addField("field", "B1", 1.5f);
    docB.addField("field", "B2", 1.5f);

    builder.add(docA);/*from   ww  w.  j  a v  a  2 s  . c  o m*/
    builder.add(docB);

    SolrInputDocument merged = builder.getDocument();

    assertEquals(Sets.newHashSet("field"), merged.keySet());
    assertEquals(Lists.newArrayList("A1", "A2", "B1", "B2"), merged.get("field").getValues());

    // The boost of the first-added definition of a field is the definitive version
    assertEquals(0.5f * 0.5f * 1.5f * 1.5f, merged.getField("field").getBoost(), 0f);
}

From source file:org.topicquests.solrsherlock.interceptor.tests.FirstTest.java

License:Apache License

Map<String, Object> toMap(SolrInputDocument doc) {
    Iterator<String> itr = doc.keySet().iterator();
    Map<String, Object> result = new HashMap<String, Object>();
    String key;//w  ww. j  a  va 2 s. co m
    Object o;
    Map<String, Object> temp;
    while (itr.hasNext()) {
        key = itr.next();
        o = doc.getFieldValue(key);//doc.get(key); //doc.getField(key);
        System.out.println(o);
        //   temp = (Map<String,Object>)o;
        //   o = temp.get("value");
        //   result.put(key, o);
    }
    return result;
}