def METHOD_NAME(self):
    self.zeroconf = spydaap.zeroconfimpl.ZeroconfImpl(
        self.name, self.port, stype="_daap._tcp"
    )
    self.handler = spydaap.server.makeDAAPHandlerClass(
        str(self.name), self.__cache, self.library, []
    )
    self.httpd = MyThreadedHTTPServer((self.host, self.port), self.handler)
    # signal.signal(signal.SIGTERM, make_shutdown(httpd))
    # signal.signal(signal.SIGHUP, rebuild_cache)
    if self.httpd.address_family == socket.AF_INET:
        self.zeroconf.publish(ipv4=True, ipv6=False)
    else:
        self.zeroconf.publish(ipv4=False, ipv6=True)
    try:
        try:
            logger.info("DAAP server: Listening.")
            self.httpd.serve_forever()
        except select.error:
            pass
    except KeyboardInterrupt:
        self.httpd.shutdown()
    logger.info("DAAP server: Shutting down.")
    self.zeroconf.unpublish()
    self.httpd = None