CommandResult executeCommand(final BsonDocument commandDocument, final ReadPreference readPreference) { return new CommandResult(executor.execute(new CommandReadOperation<BsonDocument>(getName(), commandDocument, new BsonDocumentCodec()), readPreference, getReadConcern())); }
private CommandReadOperation<BsonDocument> createExplainableOperation(final ExplainVerbosity explainVerbosity) { return new CommandReadOperation<BsonDocument>(namespace.getDatabaseName(), asExplainCommand(getCommand(NoOpSessionContext.INSTANCE), explainVerbosity), new BsonDocumentCodec()); }
private CommandReadOperation<BsonDocument> createExplainableOperation(final ExplainVerbosity explainVerbosity) { return new CommandReadOperation<BsonDocument>(namespace.getDatabaseName(), asExplainCommand(getCommand(NoOpSessionContext.INSTANCE), explainVerbosity), new BsonDocumentCodec()); }
private CommandReadOperation<BsonDocument> createExplainableOperation(final ExplainVerbosity explainVerbosity) { return new CommandReadOperation<BsonDocument>(namespace.getDatabaseName(), ExplainHelper.asExplainCommand(getCommand(null), explainVerbosity), new BsonDocumentCodec()); }
private <TResult> TResult executeCommand(@Nullable final ClientSession clientSession, final Bson command, final ReadPreference readPreference, final Class<TResult> resultClass) { notNull("readPreference", readPreference); if (clientSession != null && clientSession.hasActiveTransaction() && !readPreference.equals(ReadPreference.primary())) { throw new MongoClientException("Read preference in a transaction must be primary"); } return executor.execute(new CommandReadOperation<TResult>(getName(), toBsonDocument(command), codecRegistry.get(resultClass)), readPreference, readConcern, clientSession); }
CommandResult executeCommand(final BsonDocument commandDocument, final ReadPreference readPreference) { return new CommandResult(executor.execute(new CommandReadOperation<BsonDocument>(getName(), commandDocument, new BsonDocumentCodec()), readPreference, getReadConcern())); }
private CommandReadOperation<BsonDocument> createExplainableOperation(final ExplainVerbosity explainVerbosity) { return new CommandReadOperation<BsonDocument>(namespace.getDatabaseName(), ExplainHelper.asExplainCommand(getCommand(null), explainVerbosity), new BsonDocumentCodec()); }
private CommandReadOperation<BsonDocument> createExplainableOperation(final ExplainVerbosity explainVerbosity) { return new CommandReadOperation<BsonDocument>(namespace.getDatabaseName(), asExplainCommand(getCommand(NoOpSessionContext.INSTANCE), explainVerbosity), new BsonDocumentCodec()); }
private CommandReadOperation<BsonDocument> createExplainableOperation(final ExplainVerbosity explainVerbosity) { return new CommandReadOperation<BsonDocument>(namespace.getDatabaseName(), asExplainCommand(getCommand(NoOpSessionContext.INSTANCE), explainVerbosity), new BsonDocumentCodec()); }
private <TResult> TResult executeCommand(@Nullable final ClientSession clientSession, final Bson command, final ReadPreference readPreference, final Class<TResult> resultClass) { notNull("readPreference", readPreference); if (clientSession != null && clientSession.hasActiveTransaction() && !readPreference.equals(ReadPreference.primary())) { throw new MongoClientException("Read preference in a transaction must be primary"); } return executor.execute(new CommandReadOperation<TResult>(getName(), toBsonDocument(command), codecRegistry.get(resultClass)), readPreference, readConcern, clientSession); }
private <TResult> TResult executeCommand(@Nullable final ClientSession clientSession, final Bson command, final ReadPreference readPreference, final Class<TResult> resultClass) { notNull("readPreference", readPreference); if (clientSession != null && clientSession.hasActiveTransaction() && !readPreference.equals(ReadPreference.primary())) { throw new MongoClientException("Read preference in a transaction must be primary"); } return executor.execute(new CommandReadOperation<TResult>(getName(), toBsonDocument(command), codecRegistry.get(resultClass)), readPreference, readConcern, clientSession); }