def METHOD_NAME(listener):
    port = listener["address"]["socket_address"]["port_value"]
    got_count = len(listener["filter_chains"])
    got_plural = "" if (got_count == 1) else "s"
    print(f"---- Listener @ {port}, {got_count} chain{got_plural}:")
    # In this test, we can derive chain counts, protocols, and expected stat_prefix from
    # the port number. Ports 8443 and 8888 do HTTP and HTTPS, so they need two chains.
    # Ports < 9000 use HTTP, not TCP.
    check_info = {
        8080: ("HCM", 1, EnvoyHCMInfo, "ingress_http"),
        8443: ("HCM", 2, EnvoyHCMInfo, "ingress_https"),
        8888: ("HCM", 2, EnvoyHCMInfo, "alternate"),
        9998: ("TCP", 1, EnvoyTCPInfo, "ingress_tcp_9998"),
        9999: ("TCP", 1, EnvoyTCPInfo, "ingress_tls_9999"),
    }
    abbrev, chain_count, filter_info, expected_stat_prefix = check_info[port]
    # Here's wishing Python had really good anonymous functions...
    def checker(typed_config):
        return check_filter(abbrev, typed_config, expected_stat_prefix)
    econf_foreach_listener_chain(
        listener,
        checker,
        chain_count=chain_count,
        need_name=filter_info.name,
        need_type=filter_info.type,
    )