/** * Gets a Builder for creating a new ServerDescription instance. * * @return a new Builder for ServerDescription. */ public static Builder builder() { return new Builder(); }
public static ServerDescription createServerDescription(final ServerAddress serverAddress, final BsonDocument isMasterResult, final ServerVersion serverVersion, final long roundTripTime) { return ServerDescription.builder() .state(CONNECTED) .version(serverVersion) .address(serverAddress) .type(getServerType(isMasterResult)) .canonicalAddress(isMasterResult.containsKey("me") ? isMasterResult.getString("me").getValue() : null) .hosts(listToSet(isMasterResult.getArray("hosts", new BsonArray()))) .passives(listToSet(isMasterResult.getArray("passives", new BsonArray()))) .arbiters(listToSet(isMasterResult.getArray("arbiters", new BsonArray()))) .primary(getString(isMasterResult, "primary")) .maxDocumentSize(getMaxBsonObjectSize(isMasterResult)) .tagSet(getTagSetFromDocument(isMasterResult.getDocument("tags", new BsonDocument()))) .setName(getString(isMasterResult, "setName")) .minWireVersion(getMinWireVersion(isMasterResult)) .maxWireVersion(getMaxWireVersion(isMasterResult)) .electionId(getElectionId(isMasterResult)) .setVersion(getSetVersion(isMasterResult)) .lastWriteDate(getLastWriteDate(isMasterResult)) .roundTripTime(roundTripTime, NANOSECONDS) .logicalSessionTimeoutMinutes(getLogicalSessionTimeoutMinutes(isMasterResult)) .ok(CommandHelper.isCommandOk(isMasterResult)).build(); }
DefaultServer(final ServerId serverId, final ClusterConnectionMode clusterConnectionMode, final ConnectionPool connectionPool, final ConnectionFactory connectionFactory, final ServerMonitorFactory serverMonitorFactory, final ServerListener serverListener, final CommandListener commandListener, final ClusterClock clusterClock) { this.serverListener = notNull("serverListener", serverListener); this.commandListener = commandListener; this.clusterClock = notNull("clusterClock", clusterClock); notNull("serverAddress", serverId); notNull("serverMonitorFactory", serverMonitorFactory); this.clusterConnectionMode = notNull("clusterConnectionMode", clusterConnectionMode); this.connectionFactory = notNull("connectionFactory", connectionFactory); this.connectionPool = notNull("connectionPool", connectionPool); this.serverStateListener = new DefaultServerStateListener(); this.serverId = serverId; serverListener.serverOpening(new ServerOpeningEvent(this.serverId)); description = ServerDescription.builder().state(CONNECTING).address(serverId.getAddress()).build(); serverMonitor = serverMonitorFactory.create(serverStateListener); serverMonitor.start(); }
public static ServerDescription createServerDescription(final ServerAddress serverAddress, final BsonDocument isMasterResult, final ServerVersion serverVersion, final long roundTripTime) { return ServerDescription.builder() .state(CONNECTED) .version(serverVersion) .address(serverAddress) .type(getServerType(isMasterResult)) .canonicalAddress(isMasterResult.containsKey("me") ? isMasterResult.getString("me").getValue() : null) .hosts(listToSet(isMasterResult.getArray("hosts", new BsonArray()))) .passives(listToSet(isMasterResult.getArray("passives", new BsonArray()))) .arbiters(listToSet(isMasterResult.getArray("arbiters", new BsonArray()))) .primary(getString(isMasterResult, "primary")) .maxDocumentSize(getMaxBsonObjectSize(isMasterResult)) .tagSet(getTagSetFromDocument(isMasterResult.getDocument("tags", new BsonDocument()))) .setName(getString(isMasterResult, "setName")) .minWireVersion(getMinWireVersion(isMasterResult)) .maxWireVersion(getMaxWireVersion(isMasterResult)) .electionId(getElectionId(isMasterResult)) .setVersion(getSetVersion(isMasterResult)) .lastWriteDate(getLastWriteDate(isMasterResult)) .roundTripTime(roundTripTime, NANOSECONDS) .logicalSessionTimeoutMinutes(getLogicalSessionTimeoutMinutes(isMasterResult)) .ok(CommandHelper.isCommandOk(isMasterResult)).build(); }
DefaultServer(final ServerId serverId, final ClusterConnectionMode clusterConnectionMode, final ConnectionPool connectionPool, final ConnectionFactory connectionFactory, final ServerMonitorFactory serverMonitorFactory, final ServerListener serverListener, final CommandListener commandListener, final ClusterClock clusterClock) { this.serverListener = notNull("serverListener", serverListener); this.commandListener = commandListener; this.clusterClock = notNull("clusterClock", clusterClock); notNull("serverAddress", serverId); notNull("serverMonitorFactory", serverMonitorFactory); this.clusterConnectionMode = notNull("clusterConnectionMode", clusterConnectionMode); this.connectionFactory = notNull("connectionFactory", connectionFactory); this.connectionPool = notNull("connectionPool", connectionPool); this.serverStateListener = new DefaultServerStateListener(); this.serverId = serverId; serverListener.serverOpening(new ServerOpeningEvent(this.serverId)); description = ServerDescription.builder().state(CONNECTING).address(serverId.getAddress()).build(); serverMonitor = serverMonitorFactory.create(serverStateListener); serverMonitor.start(); }
/** * Gets a Builder for creating a new ServerDescription instance. * * @return a new Builder for ServerDescription. */ public static Builder builder() { return new Builder(); }