org.apache.solr.search.join

## Class BlockJoinDocSetFacetComponent

- java.lang.Object
- - org.apache.solr.handler.component.SearchComponent
  - - org.apache.solr.search.join.BlockJoinDocSetFacetComponent

- All Implemented Interfaces:
    SolrInfoMBean, NamedListInitializedPlugin
  Direct Known Subclasses:
    BlockJoinFacetComponent

      public class BlockJoinDocSetFacetComponent
      extends SearchComponent

  Calculates facets on children documents and aggregates hits by parent documents. Enables when child.facet.field parameter specifies a field name for faceting. So far it supports string fields only. It requires to search by `ToParentBlockJoinQuery`.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.solr.core.SolrInfoMBean

      `SolrInfoMBean.Category`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `CHILD_FACET_FIELD_PARAMETER`
    `static String` | `COLLECTOR_CONTEXT_PARAM`
    `static String` | `NO_TO_PARENT_BJQ_MESSAGE`

    - ### Fields inherited from class org.apache.solr.handler.component.SearchComponent

      `standard_components`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `BlockJoinDocSetFacetComponent()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `finishStage(ResponseBuilder rb)` Called after all responses have been received for this stage.
    `String` | `getDescription()` Simple one or two line description
    `void` | `handleResponses(ResponseBuilder rb, ShardRequest sreq)` Called after all responses for a single request were received
    `void` | `prepare(ResponseBuilder rb)` Prepare the response.
    `void` | `process(ResponseBuilder rb)` Process the request for this component
    `protected void` | `validateQuery(Query query)`

    - ### Methods inherited from class org.apache.solr.handler.component.SearchComponent

      `distributedProcess, getCategory, getDocs, getName, getSource, getStatistics, getVersion, init, modifyRequest, setName`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### CHILD_FACET_FIELD_PARAMETER

          public static final String CHILD_FACET_FIELD_PARAMETER

      See Also:
        Constant Field Values

    - #### NO_TO_PARENT_BJQ_MESSAGE

          public static final String NO_TO_PARENT_BJQ_MESSAGE

      See Also:
        Constant Field Values

    - #### COLLECTOR_CONTEXT_PARAM

          public static final String COLLECTOR_CONTEXT_PARAM

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### BlockJoinDocSetFacetComponent

          public BlockJoinDocSetFacetComponent()

  - ### Method Detail

    - #### prepare

          public void prepare(ResponseBuilder rb)
                       throws IOException

      Description copied from class: `SearchComponent`
      Prepare the response. Guaranteed to be called before any SearchComponent `SearchComponent.process(org.apache.solr.handler.component.ResponseBuilder)` method. Called for every incoming request. The place to do initialization that is request dependent.
      Specified by:
        `prepare` in class `SearchComponent`
      Parameters:
        `rb` - The `ResponseBuilder`
      Throws:
        `IOException` - If there is a low-level I/O error.

    - #### process

          public void process(ResponseBuilder rb)
                       throws IOException

      Description copied from class: `SearchComponent`
      Process the request for this component
      Parameters:
        `rb` - The `ResponseBuilder`
      Throws:
        `IOException` - If there is a low-level I/O error.

    - #### validateQuery

          protected void validateQuery(Query query)

    - #### handleResponses

          public void handleResponses(ResponseBuilder rb,
                                      ShardRequest sreq)

      Description copied from class: `SearchComponent`
      Called after all responses for a single request were received
      Overrides:
        `handleResponses` in class `SearchComponent`

    - #### finishStage

          public void finishStage(ResponseBuilder rb)

      Description copied from class: `SearchComponent`
      Called after all responses have been received for this stage. Useful when different requests are sent to each shard.
      Overrides:
        `finishStage` in class `SearchComponent`

    - #### getDescription

          public String getDescription()

      Description copied from interface: `SolrInfoMBean`
      Simple one or two line description
      Specified by:
        `getDescription` in interface `SolrInfoMBean`
      Specified by:
        `getDescription` in class `SearchComponent`

Copyright © 2000-2016 Apache Software Foundation. All Rights Reserved.