protected function processVariant(
        LoggerInterface $logger,
        SolrIndex $indexInstance,
        $state,
        $class,
        $includeSubclasses,
        $batchSize,
        $taskName
    ) {
        // Set state
        SearchVariant::activate_state($state);

        // Count records
        $query = $class::get();
        if (!$includeSubclasses) {
            $query = $query->filter('ClassName', $class);
        }
        $total = $query->count();

        // Skip this variant if nothing to process, or if there are no records
        if ($total == 0 || $indexInstance->variantStateExcluded($state)) {
            // Remove all records in the current state, since there are no groups to process
            $logger->info("Clearing all records of type {$class} in the current state: " . json_encode($state));
            $this->clearRecords($indexInstance, $class);
            return;
        }

        // For each group, run processing
        $groups = (int)(($total + $batchSize - 1) / $batchSize);
        for ($group = 0; $group < $groups; $group++) {
            $this->processGroup($logger, $indexInstance, $state, $class, $groups, $group, $taskName);
        }
    }
protected function processVariant(
        LoggerInterface $logger,
        SolrIndex $indexInstance,
        $state,
        $class,
        $includeSubclasses,
        $batchSize,
        $taskName
    ) {
        // Set state
        SearchVariant::activate_state($state);

        // Count records
        $query = $class::get();
        if (!$includeSubclasses) {
            $query = $query->filter('ClassName', $class);
        }
        $total = $query->count();

        // Skip this variant if nothing to process, or if there are no records
        if ($total == 0 || $indexInstance->variantStateExcluded($state)) {
            // Remove all records in the current state, since there are no groups to process
            $logger->info("Clearing all records of type {$class} in the current state: " . json_encode($state));
            $this->clearRecords($indexInstance, $class);
            return;
        }

        // For each group, run processing
        $groups = (int)(($total + $batchSize - 1) / $batchSize);
        for ($group = 0; $group < $groups; $group++) {
            $this->processGroup($logger, $indexInstance, $state, $class, $groups, $group, $taskName);
        }
    }
protected function processVariant ( LoggerInterface $ logger , SolrIndex $ indexInstance , $ state , $ class , $ includeSubclasses , $ batchSize , $ taskName ) { // Set state SearchVariant :: activate_state ( $ state ) ; // Count records $ query = $ class :: get ( ) ; if ( ! $ includeSubclasses ) { $ query = $ query -> filter ( 'ClassName' , $ class ) ; } $ total = $ query -> count ( ) ; // Skip this variant if nothing to process, or if there are no records if ( $ total == 0 || $ indexInstance -> variantStateExcluded ( $ state ) ) { // Remove all records in the current state, since there are no groups to process $ logger -> info ( "Clearing all records of type {$class} in the current state: " . json_encode ( $ state ) ) ; $ this -> clearRecords ( $ indexInstance , $ class ) ; return ; } // For each group, run processing $ groups = ( int ) ( ( $ total + $ batchSize - 1 ) / $ batchSize ) ; for ( $ group = 0 ; $ group < $ groups ; $ group ++ ) { $ this -> processGroup ( $ logger , $ indexInstance , $ state , $ class , $ groups , $ group , $ taskName ) ; } }
Process re-index for a given variant state and class

@param LoggerInterface $logger
@param SolrIndex $indexInstance
@param array $state Variant state
@param string $class
@param bool $includeSubclasses
@param int $batchSize
@param string $taskName
Process re - index for a given variant state and class