Class MongoOperations<QueryType,UpdateType>

java.lang.Object
io.quarkus.mongodb.panache.common.runtime.MongoOperations<QueryType,UpdateType>

public abstract class MongoOperations<QueryType,UpdateType> extends Object
  • Field Details

  • Constructor Details

    • MongoOperations

      public MongoOperations()
  • Method Details

    • createQuery

      protected abstract QueryType createQuery(com.mongodb.client.MongoCollection<?> collection, com.mongodb.client.ClientSession session, org.bson.Document query, org.bson.Document sortDoc)
    • createUpdate

      protected abstract UpdateType createUpdate(com.mongodb.client.MongoCollection collection, Class<?> entityClass, org.bson.Document docUpdate)
    • list

      protected abstract List<?> list(QueryType queryType)
    • stream

      protected abstract Stream<?> stream(QueryType queryType)
    • persist

      public void persist(Object entity)
    • persist

      public void persist(Iterable<?> entities)
    • persist

      public void persist(Object firstEntity, Object... entities)
    • persist

      public void persist(Stream<?> entities)
    • update

      public void update(Object entity)
    • update

      public void update(Iterable<?> entities)
    • update

      public void update(Object firstEntity, Object... entities)
    • update

      public void update(Stream<?> entities)
    • persistOrUpdate

      public void persistOrUpdate(Object entity)
    • persistOrUpdate

      public void persistOrUpdate(Iterable<?> entities)
    • persistOrUpdate

      public void persistOrUpdate(Object firstEntity, Object... entities)
    • persistOrUpdate

      public void persistOrUpdate(Stream<?> entities)
    • delete

      public void delete(Object entity)
    • mongoCollection

      public com.mongodb.client.MongoCollection mongoCollection(Class<?> entityClass)
    • mongoDatabase

      public com.mongodb.client.MongoDatabase mongoDatabase(Class<?> entityClass)
    • getSession

      com.mongodb.client.ClientSession getSession(Object entity)
    • getSession

      public com.mongodb.client.ClientSession getSession(Class<?> entityClass)
    • getSession

      public com.mongodb.client.ClientSession getSession()
    • findById

      public Object findById(Class<?> entityClass, Object id)
    • findByIdOptional

      public Optional findByIdOptional(Class<?> entityClass, Object id)
    • find

      public QueryType find(Class<?> entityClass, String query, Object... params)
    • find

      public QueryType find(Class<?> entityClass, String query, Sort sort, Object... params)
    • bindFilter

      public String bindFilter(Class<?> clazz, String query, Object[] params)
      We should have a query like {'firstname': ?1, 'lastname': ?2} for native one and like firstname = ?1 for PanacheQL one.
    • bindFilter

      public String bindFilter(Class<?> clazz, String query, Map<String,Object> params)
      We should have a query like {'firstname': :firstname, 'lastname': :lastname} for native one and like firstname = :firstname and lastname = :lastname for PanacheQL one.
    • bindUpdate

      String bindUpdate(Class<?> clazz, String query, Object[] params)
      We should have a query like {'firstname': ?1, 'lastname': ?2} for native one and like firstname = ?1 and lastname = ?2 for PanacheQL one. As update document needs an update operator, we add $set if none is provided.
    • bindUpdate

      String bindUpdate(Class<?> clazz, String query, Map<String,Object> params)
      We should have a query like {'firstname': :firstname, 'lastname': :lastname} for native one and like firstname = :firstname and lastname = :lastname for PanacheQL one. As update document needs an update operator, we add $set if none is provided.
    • find

      public QueryType find(Class<?> entityClass, String query, Map<String,Object> params)
    • find

      public QueryType find(Class<?> entityClass, String query, Sort sort, Map<String,Object> params)
    • find

      public QueryType find(Class<?> entityClass, String query, Parameters params)
    • find

      public QueryType find(Class<?> entityClass, String query, Sort sort, Parameters params)
    • find

      public QueryType find(Class<?> entityClass, org.bson.Document query, Sort sort)
    • find

      public QueryType find(Class<?> entityClass, org.bson.Document query, org.bson.Document sort)
    • find

      public QueryType find(Class<?> entityClass, org.bson.Document query)
    • list

      public List<?> list(Class<?> entityClass, String query, Object... params)
    • list

      public List<?> list(Class<?> entityClass, String query, Sort sort, Object... params)
    • list

      public List<?> list(Class<?> entityClass, String query, Map<String,Object> params)
    • list

      public List<?> list(Class<?> entityClass, String query, Sort sort, Map<String,Object> params)
    • list

      public List<?> list(Class<?> entityClass, String query, Parameters params)
    • list

      public List<?> list(Class<?> entityClass, String query, Sort sort, Parameters params)
    • list

      public List<?> list(Class<?> entityClass, org.bson.Document query)
    • list

      public List<?> list(Class<?> entityClass, org.bson.Document query, org.bson.Document sort)
    • stream

      public Stream<?> stream(Class<?> entityClass, String query, Object... params)
    • stream

      public Stream<?> stream(Class<?> entityClass, String query, Sort sort, Object... params)
    • stream

      public Stream<?> stream(Class<?> entityClass, String query, Map<String,Object> params)
    • stream

      public Stream<?> stream(Class<?> entityClass, String query, Sort sort, Map<String,Object> params)
    • stream

      public Stream<?> stream(Class<?> entityClass, String query, Parameters params)
    • stream

      public Stream<?> stream(Class<?> entityClass, String query, Sort sort, Parameters params)
    • stream

      public Stream<?> stream(Class<?> entityClass, org.bson.Document query)
    • stream

      public Stream<?> stream(Class<?> entityClass, org.bson.Document query, org.bson.Document sort)
    • findAll

      public QueryType findAll(Class<?> entityClass)
    • findAll

      public QueryType findAll(Class<?> entityClass, Sort sort)
    • listAll

      public List<?> listAll(Class<?> entityClass)
    • listAll

      public List<?> listAll(Class<?> entityClass, Sort sort)
    • streamAll

      public Stream<?> streamAll(Class<?> entityClass)
    • streamAll

      public Stream<?> streamAll(Class<?> entityClass, Sort sort)
    • count

      public long count(Class<?> entityClass)
    • count

      public long count(Class<?> entityClass, String query, Object... params)
    • count

      public long count(Class<?> entityClass, String query, Map<String,Object> params)
    • count

      public long count(Class<?> entityClass, String query, Parameters params)
    • count

      public long count(Class<?> entityClass, org.bson.Document query)
    • deleteAll

      public long deleteAll(Class<?> entityClass)
    • deleteById

      public boolean deleteById(Class<?> entityClass, Object id)
    • delete

      public long delete(Class<?> entityClass, String query, Object... params)
    • delete

      public long delete(Class<?> entityClass, String query, Map<String,Object> params)
    • delete

      public long delete(Class<?> entityClass, String query, Parameters params)
    • delete

      public long delete(Class<?> entityClass, org.bson.Document query)
    • update

      public UpdateType update(Class<?> entityClass, String update, Map<String,Object> params)
    • update

      public UpdateType update(Class<?> entityClass, String update, Parameters params)
    • update

      public UpdateType update(Class<?> entityClass, String update, Object... params)
    • update

      public UpdateType update(Class<?> entityClass, org.bson.Document update)
    • implementationInjectionMissing

      public IllegalStateException implementationInjectionMissing()