'Provides selection of the I{service} by name (string) or
index (integer).  In cases where only (1) service is defined
or a I{default} has been specified, the request is forwarded
to the L{PortSelector}.
@param name: The name (or index) of a service.
@type name: (int|str)
@return: A L{PortSelector} for the specified service.
@rtype: L{PortSelector}.'

def __getitem__(self, name):

    if (len(self.__services) == 1):
        port = self.__find(0)
        return port[name]
    default = self.__ds()
    if (default is not None):
        port = default
        return port[name]
    return self.__find(name)
