public TopologyConnectorClientInformation registerOutgoingConnector()

in src/main/java/org/apache/sling/discovery/base/connectors/ping/ConnectorRegistryImpl.java [90:120]


    public TopologyConnectorClientInformation registerOutgoingConnector(
            final ClusterViewService clusterViewService, final URL connectorUrl) {
        if (announcementRegistry == null) {
            logger.error("registerOutgoingConnection: announcementRegistry is null");
            return null;
        }
        TopologyConnectorClient client;
        synchronized (outgoingClientsMap) {
            for (Iterator<Entry<String, TopologyConnectorClient>> it = outgoingClientsMap
                    .entrySet().iterator(); it.hasNext();) {
                Entry<String, TopologyConnectorClient> entry = it.next();
                if (entry.getValue().getConnectorUrl().toExternalForm().equals(connectorUrl.toExternalForm())) {
                    it.remove();
                    logger.info("registerOutgoingConnection: re-registering connector: {}", connectorUrl);
                }
            }
            String serverInfo;
            try {
                serverInfo = InetAddress.getLocalHost().getCanonicalHostName()
                        + ":" + port;
            } catch (Exception e) {
                serverInfo = "localhost:" + port;
            }
            client = new TopologyConnectorClient(clusterViewService,
                    announcementRegistry, config, connectorUrl,
                    serverInfo);
            outgoingClientsMap.put(client.getId(), client);
        }
        client.ping(false);
        return client;
    }