core/ExternalNothing.php
<?php
/*
* *****************************************************************************
* Contributions to this work were made on behalf of the GÉANT project, a
* project that has received funding from the European Union’s Framework
* Programme 7 under Grant Agreements No. 238875 (GN3) and No. 605243 (GN3plus),
* Horizon 2020 research and innovation programme under Grant Agreements No.
* 691567 (GN4-1) and No. 731122 (GN4-2).
* On behalf of the aforementioned projects, GEANT Association is the sole owner
* of the copyright in all material which was developed by a member of the GÉANT
* project. GÉANT Vereniging (Association) is registered with the Chamber of
* Commerce in Amsterdam with registration number 40535155 and operates in the
* UK as a branch of GÉANT Vereniging.
*
* Registered office: Hoekenrode 3, 1102BR Amsterdam, The Netherlands.
* UK branch address: City House, 126-130 Hills Road, Cambridge CB2 1PQ, UK
*
* License: see the web/copyright.inc.php file in the file structure or
* <base_url>/copyright.php after deploying the software
*/
/**
* This file contains the ExternalNothing class. It contains dummy methods for
* the lack of an external entity database.
*
* @author Stefan Winter <stefan.winter@restena.lu>
* @author Tomasz Wolniewicz <twoln@umk.pl>
*
* @package Developer
*
*/
namespace core;
use \Exception;
/**
* This class interacts with the external DB to fetch operational data for
* read-only purposes.
*
* @author Stefan Winter <stefan.winter@restena.lu>
*
* @license see LICENSE file in root directory
*
* @package Developer
*/
class ExternalNothing implements ExternalLinkInterface
{
/**
* constructor, gives us access to the DB handle we need for queries
*/
public function __construct()
{
}
/**
* retrieves the list of all service providers from the eduroam database
*
* @return array list of providers
*/
public function listAllServiceProviders()
{
return [];
}
/**
* nothing to count here, please move along
*
* @return int
*/
public function countAllServiceProviders(): int
{
return 0;
}
public function listExternalEntitiesByRealm($realm, $fields = []): array
{
return [];
}
/**
* retrieves entity information from the eduroam database. Choose whether to get all entities with an SP role, an IdP role, or only those with both roles
*
* @param string $tld the top-level domain from which to fetch the entities
* @param string|NULL $type type of entity to retrieve
* @return array list of entities
*/
public function listExternalEntities($tld, $type)
{
unset($tld); // not needed
unset($type); // not needed
return [];
}
/**
* get all the realms from the external DB
*
* @return array
*/
public function listExternalRealms()
{
return $this->listExternalEntitiesByRealm("");
}
/**
* get all RADIUS/TLS servers for a given federation, with contacts
*
* @return array
*/
public function listExternalTlsServersFederation($tld) {
unset($tld); // not needed
return [];
}
/**
* get all RADIUS/TLS servers for all institutions within a given federation
* including their contact details
*
* @return array
*/
public function listExternalTlsServersInstitution($tld) {
unset($tld); // not needed
return [];
}
}