class AutoIndexNodeSearch in Auto Index 8
The method we wish to call on the original object IndexNodeSearch has a protected visibility applied, and therefore we are left with 2 options. Copy and paste the current functionality into this module or extend the existing class. We are extending the existing functionality, implementing it this way will ensure we inherrit all fixes applied to the original plugin.
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
- class \Drupal\search\Plugin\SearchPluginBase implements RefinableCacheableDependencyInterface, ContainerFactoryPluginInterface, SearchInterface uses RefinableCacheableDependencyTrait
- class \Drupal\search\Plugin\ConfigurableSearchPluginBase implements ConfigurableSearchPluginInterface
- class \Drupal\node\Plugin\Search\NodeSearch implements AccessibleInterface, TrustedCallbackInterface, SearchIndexingInterface uses DeprecatedServicePropertyTrait
- class \Drupal\auto_index\Plugin\Search\AutoIndexNodeSearch
- class \Drupal\node\Plugin\Search\NodeSearch implements AccessibleInterface, TrustedCallbackInterface, SearchIndexingInterface uses DeprecatedServicePropertyTrait
- class \Drupal\search\Plugin\ConfigurableSearchPluginBase implements ConfigurableSearchPluginInterface
- class \Drupal\search\Plugin\SearchPluginBase implements RefinableCacheableDependencyInterface, ContainerFactoryPluginInterface, SearchInterface uses RefinableCacheableDependencyTrait
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
Expanded class hierarchy of AutoIndexNodeSearch
File
- src/
Plugin/ Search/ AutoIndexNodeSearch.php, line 15
Namespace
Drupal\auto_index\Plugin\SearchView source
class AutoIndexNodeSearch extends NodeSearch {
/**
* Add a public method to allow us to target single nodes outside of this class.
* @param NodeInterface $node
*/
public function indexSingleNode(NodeInterface $node) {
// Ensure the
$query = db_select('node', 'n', array(
'target' => 'replica',
));
$query
->addField('n', 'nid');
$query
->leftJoin('search_dataset', 'sd', 'sd.sid = n.nid AND sd.type = :type', array(
':type' => $this
->getPluginId(),
));
$query
->condition($query
->andConditionGroup()
->condition('n.nid', $node
->id())
->condition($query
->orConditionGroup()
->where('sd.sid IS NULL')
->condition('sd.reindex', 0, '<>')));
$num_rows = $query
->countQuery()
->execute()
->fetchField();
if ($num_rows < 1) {
return;
}
// Use the implementation of indexNode from the plugin.
$this
->indexNode($node);
// Register a shutdown hook to ensure the totals get recalculated.
drupal_register_shutdown_function('search_update_totals');
}
/**
* {@inheritdoc}
*/
public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
$form['autoindex'] = array(
'#type' => 'details',
'#title' => $this
->t('Auto Indexing'),
'#open' => TRUE,
);
$form['autoindex']['automatic_indexing'] = array(
'#type' => 'checkbox',
'#title' => $this
->t('Automatically index on Create/Update of content.'),
'#default_value' => $this->configuration['automatic_indexing'],
);
return array_merge($form, parent::buildConfigurationForm($form, $form_state));
return parent::buildConfigurationForm($form, $form_state);
}
/**
* {@inheritdoc}
*/
public function submitConfigurationForm(array &$form, FormStateInterface $form_state) {
$this->configuration['automatic_indexing'] = $form_state
->getValue([
'automatic_indexing',
]);
parent::buildConfigurationForm($form, $form_state);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
AutoIndexNodeSearch:: |
public | function |
Form constructor. Overrides NodeSearch:: |
|
AutoIndexNodeSearch:: |
public | function | Add a public method to allow us to target single nodes outside of this class. | |
AutoIndexNodeSearch:: |
public | function |
Form submission handler. Overrides NodeSearch:: |
|
CacheableDependencyTrait:: |
protected | property | Cache contexts. | |
CacheableDependencyTrait:: |
protected | property | Cache max-age. | |
CacheableDependencyTrait:: |
protected | property | Cache tags. | |
CacheableDependencyTrait:: |
public | function | 3 | |
CacheableDependencyTrait:: |
public | function | 3 | |
CacheableDependencyTrait:: |
public | function | 3 | |
CacheableDependencyTrait:: |
protected | function | Sets cacheability; useful for value object constructors. | |
ConfigurableSearchPluginBase:: |
protected | property | The unique ID for the search page using this plugin. | |
ConfigurableSearchPluginBase:: |
public | function |
Calculates dependencies for the configured plugin. Overrides DependentPluginInterface:: |
|
ConfigurableSearchPluginBase:: |
public | function |
Gets this plugin's configuration. Overrides ConfigurableInterface:: |
|
ConfigurableSearchPluginBase:: |
public | function |
Sets the configuration for this plugin instance. Overrides ConfigurableInterface:: |
|
ConfigurableSearchPluginBase:: |
public | function |
Sets the ID for the search page using this plugin. Overrides ConfigurableSearchPluginInterface:: |
|
ConfigurableSearchPluginBase:: |
public | function |
Form validation handler. Overrides PluginFormInterface:: |
|
DependencySerializationTrait:: |
protected | property | An array of entity type IDs keyed by the property name of their storages. | |
DependencySerializationTrait:: |
protected | property | An array of service IDs keyed by property name used for serialization. | |
DependencySerializationTrait:: |
public | function | 1 | |
DependencySerializationTrait:: |
public | function | 2 | |
DeprecatedServicePropertyTrait:: |
public | function | Allows to access deprecated/removed properties. | |
MessengerTrait:: |
public | function | Gets the messenger. | 29 |
MessengerTrait:: |
public | function | Sets the messenger. | |
NodeSearch:: |
protected | property | The Drupal account to use for checking for access to advanced search. | |
NodeSearch:: |
protected | property | The list of options and info for advanced search filters. | |
NodeSearch:: |
protected | property | The current database connection. | |
NodeSearch:: |
protected | property | The replica database connection. | |
NodeSearch:: |
protected | property | ||
NodeSearch:: |
protected | property | The entity type manager. | |
NodeSearch:: |
protected | property | The language manager. | |
NodeSearch:: |
protected | property |
The messenger. Overrides MessengerTrait:: |
|
NodeSearch:: |
protected | property | A module manager object. | |
NodeSearch:: |
protected | property | An array of additional rankings from hook_ranking(). | |
NodeSearch:: |
protected | property | The Renderer service to format the username and node. | |
NodeSearch:: |
protected | property | The search index. | |
NodeSearch:: |
protected | property | A config object for 'search.settings'. | |
NodeSearch:: |
public | function |
Checks data value access. Overrides AccessibleInterface:: |
|
NodeSearch:: |
protected | function | Adds the configured rankings to the search query. | |
NodeSearch:: |
constant | A constant for setting and checking the query string. | ||
NodeSearch:: |
public | function |
Builds the URL GET query parameters array for search. Overrides SearchPluginBase:: |
|
NodeSearch:: |
public static | function |
Creates an instance of the plugin. Overrides SearchPluginBase:: |
|
NodeSearch:: |
public | function |
Gets default configuration for this plugin. Overrides ConfigurableSearchPluginBase:: |
|
NodeSearch:: |
public | function |
Executes the search. Overrides SearchInterface:: |
|
NodeSearch:: |
protected | function | Queries to find search results, and sets status messages. | |
NodeSearch:: |
protected | function | Gathers ranking definitions from hook_ranking(). | |
NodeSearch:: |
public | function |
Returns the search index type this plugin uses. Overrides SearchPluginBase:: |
|
NodeSearch:: |
public | function |
Clears the search index for this plugin. Overrides SearchIndexingInterface:: |
|
NodeSearch:: |
protected | function | Indexes a single node. | |
NodeSearch:: |
public | function |
Reports the status of indexing. Overrides SearchIndexingInterface:: |
|
NodeSearch:: |
public | function |
Verifies if the values set via setSearch() are valid and sufficient. Overrides SearchPluginBase:: |
|
NodeSearch:: |
public | function |
Marks the search index for reindexing for this plugin. Overrides SearchIndexingInterface:: |
|
NodeSearch:: |
protected | function | Parses the advanced search form default values. | |
NodeSearch:: |
protected | function | Prepares search results for rendering. | |
NodeSearch:: |
public | function | Removes the submitted by information from the build array. | |
NodeSearch:: |
public | function |
Alters the search form when being built for a given plugin. Overrides SearchPluginBase:: |
|
NodeSearch:: |
public static | function |
Lists the trusted callbacks provided by the implementing class. Overrides TrustedCallbackInterface:: |
|
NodeSearch:: |
public | function |
Updates the search index for this plugin. Overrides SearchIndexingInterface:: |
|
NodeSearch:: |
public | function |
Constructs a \Drupal\node\Plugin\Search\NodeSearch object. Overrides ConfigurableSearchPluginBase:: |
|
PluginBase:: |
protected | property | Configuration information passed into the plugin. | 1 |
PluginBase:: |
protected | property | The plugin implementation definition. | 1 |
PluginBase:: |
protected | property | The plugin_id. | |
PluginBase:: |
constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
PluginBase:: |
public | function |
Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the definition of the plugin implementation. Overrides PluginInspectionInterface:: |
3 |
PluginBase:: |
public | function |
Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface:: |
|
PluginBase:: |
public | function | Determines if the plugin is configurable. | |
RefinableCacheableDependencyTrait:: |
public | function | 1 | |
RefinableCacheableDependencyTrait:: |
public | function | ||
RefinableCacheableDependencyTrait:: |
public | function | ||
RefinableCacheableDependencyTrait:: |
public | function | ||
SearchPluginBase:: |
protected | property | The keywords to use in a search. | |
SearchPluginBase:: |
protected | property | Array of attributes - usually from the request object. | |
SearchPluginBase:: |
protected | property | Array of parameters from the query string from the request. | |
SearchPluginBase:: |
public | function |
Executes the search and builds render arrays for the result items. Overrides SearchInterface:: |
1 |
SearchPluginBase:: |
public | function |
Returns the currently set attributes (from the request). Overrides SearchInterface:: |
|
SearchPluginBase:: |
public | function |
Returns the searching help. Overrides SearchInterface:: |
1 |
SearchPluginBase:: |
public | function |
Returns the currently set keywords of the plugin instance. Overrides SearchInterface:: |
|
SearchPluginBase:: |
public | function |
Returns the current parameters set using setSearch(). Overrides SearchInterface:: |
|
SearchPluginBase:: |
public | function |
Sets the keywords, parameters, and attributes to be used by execute(). Overrides SearchInterface:: |
1 |
SearchPluginBase:: |
public | function |
Provides a suggested title for a page of search results. Overrides SearchInterface:: |
|
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. | |
TrustedCallbackInterface:: |
constant | Untrusted callbacks throw exceptions. | ||
TrustedCallbackInterface:: |
constant | Untrusted callbacks trigger silenced E_USER_DEPRECATION errors. | ||
TrustedCallbackInterface:: |
constant | Untrusted callbacks trigger E_USER_WARNING errors. |