@Override
  public Session open(Class<?> entityType) {
    Objects.requireNonNull(entityType, "context");
    KeyExtractor keyExtractor = keyExtractorFactory.create(entityType);
    return new MongoSession(collectionResolver.resolve(entityType), keyExtractor, pathNaming);
  }
Allows to query and modify mongo documents using criteria API.

<p>Based on <a href="https://mongodb.github.io/mongo-java-driver-reactivestreams/">Mongo reactive streams driver</a>
criteria/mongo/src/org/immutables/criteria/mongo/MongoBackend.java