public abstract class OakSolrNodeStateConfiguration extends Object implements OakSolrConfiguration, SolrServerConfigurationProvider<EmbeddedSolrServerProvider>
OakSolrConfiguration specified via a given NodeState.
For each of the supported properties a default is provided if either the
property doesn't exist in the node or if the value is null or
empty String.
Subclasses of this should at least provide the NodeState which holds
the configuration.| Modifier and Type | Class and Description |
|---|---|
class |
OakSolrNodeStateConfiguration.Properties
Properties that may be retrieved from the configuration
NodeState. |
| Constructor and Description |
|---|
OakSolrNodeStateConfiguration() |
| Modifier and Type | Method and Description |
|---|---|
String |
getCatchAllField()
Provide a field name that is used as the default "catch all" field for searching over all the data
|
CommitPolicy |
getCommitPolicy()
Provide the commit policy to be used by a given
SolrServer |
protected abstract org.apache.jackrabbit.oak.spi.state.NodeState |
getConfigurationNodeState()
get the
NodeState which contains the properties for the Oak -
Solr configuration. |
String |
getFieldForPathRestriction(org.apache.jackrabbit.oak.spi.query.Filter.PathRestriction pathRestriction)
Provide a field name to search over for the given
Filter.PathRestriction |
String |
getFieldForPropertyRestriction(org.apache.jackrabbit.oak.spi.query.Filter.PropertyRestriction propertyRestriction)
Provide a field name to search over for the given
Filter.PropertyRestriction |
String |
getFieldNameFor(org.apache.jackrabbit.oak.api.Type<?> propertyType)
Provide a field name to be used for indexing / searching a certain
Type |
Collection<String> |
getIgnoredProperties()
Provide the names of the properties that should be neither indexed nor searched by the Solr index
|
String |
getPathField()
Provide the field name for indexing / searching paths
|
int |
getRows()
Provide the number of documents (rows) to be fetched for each Solr query
|
SolrServerConfiguration<EmbeddedSolrServerProvider> |
getSolrServerConfiguration()
Provide a
SolrServerConfiguration to be used to initialize a specific
SolrServer implementation. |
Collection<String> |
getUsedProperties()
Provide the names of the properties that should be indexed and searched by the Solr index
|
boolean |
useForPathRestrictions()
Define if the Solr index should be used to filter by path restrictions
|
boolean |
useForPrimaryTypes()
Define if the Solr index should be used to filter by primary types
|
boolean |
useForPropertyRestrictions()
Define if the Solr index should be used to address property restrictions
|
protected abstract org.apache.jackrabbit.oak.spi.state.NodeState getConfigurationNodeState()
NodeState which contains the properties for the Oak -
Solr configuration.public String getFieldNameFor(org.apache.jackrabbit.oak.api.Type<?> propertyType)
OakSolrConfigurationTypegetFieldNameFor in interface OakSolrConfigurationpropertyType - the Type to be indexed / searchedType, or null
if no specific field has been configured to handle the given Type.@Nonnull public String getPathField()
OakSolrConfigurationgetPathField in interface OakSolrConfiguration@CheckForNull public String getFieldForPathRestriction(org.apache.jackrabbit.oak.spi.query.Filter.PathRestriction pathRestriction)
OakSolrConfigurationFilter.PathRestrictiongetFieldForPathRestriction in interface OakSolrConfigurationpathRestriction - the Filter.PathRestriction used for filtering
search results or null if no specific field has been configured for it.PathRestriction.public String getCatchAllField()
OakSolrConfigurationgetCatchAllField in interface OakSolrConfigurationnull if no specific field
has been configured for it.public String getFieldForPropertyRestriction(org.apache.jackrabbit.oak.spi.query.Filter.PropertyRestriction propertyRestriction)
OakSolrConfigurationFilter.PropertyRestrictiongetFieldForPropertyRestriction in interface OakSolrConfigurationpropertyRestriction - the Filter.PropertyRestriction used for filtering search resultsPropertyRestriction or null if no specific field
has been configured for it.@Nonnull public CommitPolicy getCommitPolicy()
OakSolrConfigurationSolrServergetCommitPolicy in interface OakSolrConfigurationCommitPolicypublic int getRows()
OakSolrConfigurationgetRows in interface OakSolrConfigurationpublic boolean useForPropertyRestrictions()
OakSolrConfigurationuseForPropertyRestrictions in interface OakSolrConfigurationtrue if SolrQueryIndex should be used
for Filter.PropertyRestrictionspublic boolean useForPrimaryTypes()
OakSolrConfigurationuseForPrimaryTypes in interface OakSolrConfigurationtrue if SolrQueryIndex should be used
for filtering by primary typespublic boolean useForPathRestrictions()
OakSolrConfigurationuseForPathRestrictions in interface OakSolrConfigurationtrue if SolrQueryIndex should be used
for filtering by Filter.PathRestrictions@Nonnull public Collection<String> getIgnoredProperties()
OakSolrConfigurationgetIgnoredProperties in interface OakSolrConfigurationCollection of property names for properties to be ignored@Nonnull public Collection<String> getUsedProperties()
OakSolrConfigurationgetUsedProperties in interface OakSolrConfigurationCollection of property names for properties to be ignored@Nonnull public SolrServerConfiguration<EmbeddedSolrServerProvider> getSolrServerConfiguration()
SolrServerConfigurationProviderSolrServerConfiguration to be used to initialize a specific
SolrServer implementation.getSolrServerConfiguration in interface SolrServerConfigurationProvider<EmbeddedSolrServerProvider>SolrServerConfiguration holding the configuration parametersCopyright © 2012-2015 The Apache Software Foundation. All Rights Reserved.