Package org.apache.lucene.facet

# Class MultiFacets

java.lang.Object
org.apache.lucene.facet.Facets
org.apache.lucene.facet.MultiFacets

public class MultiFacets extends Facets
Maps specified dims to provided Facets impls; else, uses the default Facets impl.

## Constructor Summary

Constructors
Constructor
Description
`MultiFacets(Map<String,Facets> dimToFacets)`
Create this, with no default `Facets`.
`MultiFacets(Map<String,Facets> dimToFacets, Facets defaultFacets)`
Create this, with the specified default `Facets` for fields not included in `dimToFacets`.

## Method Summary

Modifier and Type
Method
Description
`FacetResult`
`getAllChildren(String dim, String... path)`
Returns all child labels with non-zero counts under the specified path.
`List<FacetResult>`
`getAllDims(int topN)`
Returns topN labels for any dimension that had hits, sorted by the number of hits that dimension matched; this is used for "sparse" faceting, where many different dimensions were indexed, for example depending on the type of document.
`Number`
`getSpecificValue(String dim, String... path)`
Return the count or value for a specific path.
`FacetResult`
`getTopChildren(int topN, String dim, String... path)`
Returns the topN child labels under the specified path.

### Methods inherited from class org.apache.lucene.facet.Facets

`getTopDims, validateTopN`

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

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

## Constructor Details

### MultiFacets

public MultiFacets(Map<String,Facets> dimToFacets)
Create this, with no default `Facets`.

### MultiFacets

public MultiFacets(Map<String,Facets> dimToFacets, Facets defaultFacets)
Create this, with the specified default `Facets` for fields not included in `dimToFacets`.

## Method Details

### getAllChildren

public FacetResult getAllChildren(String dim, String... path) throws IOException
Description copied from class: `Facets`
Returns all child labels with non-zero counts under the specified path. Users should make no assumptions about ordering of the children. Returns null if the specified path doesn't exist or if this dimension was never seen.

Specified by:
  `getAllChildren` in class `Facets`
Throws:
  `IOException`

### getTopChildren

public FacetResult getTopChildren(int topN, String dim, String... path) throws IOException
Description copied from class: `Facets`
Returns the topN child labels under the specified path. Returns null if the specified path doesn't exist or if this dimension was never seen.

Specified by:
  `getTopChildren` in class `Facets`
Throws:
  `IOException`

### getSpecificValue

public Number getSpecificValue(String dim, String... path) throws IOException
Description copied from class: `Facets`
Return the count or value for a specific path. Returns -1 if this path doesn't exist, else the count.

Specified by:
  `getSpecificValue` in class `Facets`
Throws:
  `IOException`

### getAllDims

public List<FacetResult> getAllDims(int topN) throws IOException
Description copied from class: `Facets`
Returns topN labels for any dimension that had hits, sorted by the number of hits that dimension matched; this is used for "sparse" faceting, where many different dimensions were indexed, for example depending on the type of document.

Specified by:
  `getAllDims` in class `Facets`
Throws:
  `IOException`