File: //usr/local/mailchannels/lib/ServiceSelecter.php
<?php
namespace MailChannels;
/*
* ServiceSelector is a static class that allows users to register services via the registerService function to be found
* later by callers of the getService function.
*/
final class ServiceSelector {
private static $registeredServices = array();
public static function registerService($service, $name=null) {
if ($name) {
self::$registeredServices[$name] = $service;
} else {
self::$registeredServices[get_class($service)] = $service;
}
}
public static function getService($service) {
if (array_key_exists($service, self::$registeredServices)) {
return self::$registeredServices[$service];
}
return false;
}
}