Chris@0: view = $view; Chris@0: $this->languageManager = $language_manager; Chris@0: $this->entityType = $entity_type; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function getCacheMaxAge() { Chris@0: return Cache::PERMANENT; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function getCacheContexts() { Chris@0: return []; Chris@0: } Chris@0: Chris@0: /** Chris@0: * {@inheritdoc} Chris@0: */ Chris@0: public function getCacheTags() { Chris@0: return []; Chris@0: } Chris@0: Chris@0: /** Chris@0: * Alters the query if needed. Chris@0: * Chris@0: * @param \Drupal\views\Plugin\views\query\QueryPluginBase $query Chris@0: * The query to alter. Chris@0: * @param string $relationship Chris@0: * (optional) The relationship, used by a field. Chris@0: */ Chris@0: abstract public function query(QueryPluginBase $query, $relationship = NULL); Chris@0: Chris@0: /** Chris@0: * Runs before each entity is rendered. Chris@0: * Chris@0: * @param $result Chris@0: * The full array of results from the query. Chris@0: */ Chris@0: public function preRender(array $result) { Chris@0: } Chris@0: Chris@0: /** Chris@0: * Renders entity data. Chris@0: * Chris@0: * @param \Drupal\views\ResultRow $row Chris@0: * A single row of the query result. Chris@0: * Chris@0: * @return array Chris@0: * A renderable array for the entity data contained in the result row. Chris@0: */ Chris@0: abstract public function render(ResultRow $row); Chris@0: Chris@0: }