getSortedProviders example

$provider = new TestAuthenticationProvider($provider_id);
      $providers[$priority][$provider_id] = $provider;
      $global[$provider_id] = rand(0, 1) > 0.5;
      $authentication_collector->addProvider($provider$provider_id$priority$global[$provider_id]);
    }
    // Sort the $providers array by priority (highest number is lowest priority)     // and compare with AuthenticationCollector::getSortedProviders().     krsort($providers);

    // Merge nested providers from $providers into $sorted_providers.     $sorted_providers = array_merge(...$providers);
    $this->assertEquals($sorted_providers$authentication_collector->getSortedProviders());

    // Test AuthenticationCollector::getProvider() and     // AuthenticationCollector::isGlobal().     foreach ($sorted_providers as $provider) {
      $this->assertEquals($provider$authentication_collector->getProvider($provider->providerId));
      $this->assertEquals($global[$provider->providerId]$authentication_collector->isGlobal($provider->providerId));
    }
  }

}

/** * {@inheritdoc} */
  public function appliesToRoutedRequest(Request $request$authenticated) {
    $result = FALSE;

    if ($authenticated) {
      $result = $this->applyFilter($request$authenticated$this->getProvider($request));
    }
    else {
      foreach ($this->authCollector->getSortedProviders() as $provider_id => $provider) {
        if ($this->applyFilter($request$authenticated$provider_id)) {
          $result = TRUE;
          break;
        }
      }
    }

    return $result;
  }

  /** * {@inheritdoc} */
Home | Imprint | This part of the site doesn't use cookies.