final public function getService($identifier = null, array $config = array())
    {
        if (!isset($this->__service_container)) {
            throw new AnObjectException("Failed to call ".get_class($this)."::getService(). No service_container object defined.");
        }
        if (!isset($identifier)) {
            $result =  $this->__service_container;
        } else {
            $result =  $this->__service_container->get($identifier, $config);
        }
        return $result;
    }