public GossipManager build() { checkArgument(id != null, "You must specify an id"); checkArgument(cluster != null, "You must specify a cluster name"); checkArgument(settings != null, "You must specify gossip settings"); checkArgument(uri != null, "You must specify a uri"); if (registry == null){ registry = new MetricRegistry(); } if (properties == null){ properties = new HashMap<String,String>(); } if (listener == null){ listener((a,b) -> {}); } if (gossipMembers == null) { gossipMembers = new ArrayList<>(); } if (messageHandler == null) { messageHandler = MessageHandlerFactory.defaultHandler(); } return new GossipManager(cluster, uri, id, properties, settings, gossipMembers, listener, registry, messageHandler) {} ; } }