'Construct a new L{SecondaryAuthorityService} from a tuple giving a
server address and a C{str} giving the name of a domain for which this
is an authority.
@param serverAddress: A two-tuple, the first element of which is a
C{str} giving an IP address and the second element of which is a
C{int} giving a port number.  Together, these define where zone
transfers will be attempted from.
@param domain: A C{bytes} giving the domain to transfer.
@return: A new instance of L{SecondaryAuthorityService}.'

@classmethod
def fromServerAddressAndDomains(cls, serverAddress, domains):

    service = cls(None, [])
    service.primary = serverAddress[0]
    service._port = serverAddress[1]
    service.domains = [SecondaryAuthority.fromServerAddressAndDomain(serverAddress, d) for d in domains]
    return service
