public Set<BgpSpeakerConfig> bgpSpeakers() {
        Set<BgpSpeakerConfig> speakers = Sets.newHashSet();

        JsonNode speakersNode = object.get(SPEAKERS);

        if (speakersNode == null) {
            return speakers;
        }

        speakersNode.forEach(jsonNode -> {
            Set<IpAddress> listenAddresses = Sets.newHashSet();
            jsonNode.path(PEERS).forEach(addressNode ->
                            listenAddresses.add(IpAddress.valueOf(addressNode.asText()))
            );

            Optional<String> name;
            if (jsonNode.get(NAME) == null) {
                name = Optional.empty();
            } else {
                name = Optional.of(jsonNode.get(NAME).asText());
            }

            VlanId vlan = getVlan(jsonNode);

            speakers.add(new BgpSpeakerConfig(name,
                                              vlan,
                                              ConnectPoint.deviceConnectPoint(jsonNode.path(CONNECT_POINT).asText()),
                                              listenAddresses));
        });

        return speakers;
    }
@Test
    public void testEmptyBgpSpeakers() throws Exception {
        assertTrue(emptyBgpConfig.bgpSpeakers().isEmpty());
    }