Package io.quarkus.mongodb.panache
Class PanacheMongoEntityBase
java.lang.Object
io.quarkus.mongodb.panache.PanacheMongoEntityBase
- Direct Known Subclasses:
PanacheMongoEntity
Represents an entity. If your Mongo entities extend this class they gain auto-generated accessors
to all their public fields, as well as a lot of useful methods. Unless you have a custom ID strategy, you
should not extend this class directly but extend
PanacheMongoEntity instead.- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic longcount()Counts the number of this type of entity in the database.static longcount(String query, Parameters params) Counts the number of this type of entity matching the given query, with named parameters.static longCounts the number of this type of entity matching the given query, with optional indexed parameters.static longCounts the number of this type of entity matching the given query, with named parameters.static longcount(org.bson.Document query) Counts the number of this type of entity matching the given queryvoiddelete()Delete this entity from the database, if it is already persisted.static longdelete(String query, Parameters params) Delete all entities of this type matching the given query, with named parameters.static longDelete all entities of this type matching the given query, with optional indexed parameters.static longDelete all entities of this type matching the given query, with named parameters.static longdelete(org.bson.Document query) Delete all entities of this type matching the given querystatic longDelete all entities of this type from the database.static booleandeleteById(Object id) Delete an entity of this type by ID.static <T extends PanacheMongoEntityBase>
PanacheQuery<T>find(String query, Parameters params) Find entities using a query, with named parameters.static <T extends PanacheMongoEntityBase>
PanacheQuery<T>find(String query, Sort sort, Parameters params) Find entities using a query and the given sort options, with named parameters.static <T extends PanacheMongoEntityBase>
PanacheQuery<T>Find entities using a query and the given sort options, with optional indexed parameters.static <T extends PanacheMongoEntityBase>
PanacheQuery<T>Find entities using a query and the given sort options, with named parameters.static <T extends PanacheMongoEntityBase>
PanacheQuery<T>Find entities using a query, with optional indexed parameters.static <T extends PanacheMongoEntityBase>
PanacheQuery<T>Find entities using a query, with named parameters.static <T extends PanacheMongoEntityBase>
PanacheQuery<T>find(org.bson.Document query) Find entities using a BSON query.static <T extends PanacheMongoEntityBase>
PanacheQuery<T>find(org.bson.Document query, org.bson.Document sort) Find entities using a BSON query and a BSON sort.static <T extends PanacheMongoEntityBase>
PanacheQuery<T>findAll()Find all entities of this type.static <T extends PanacheMongoEntityBase>
PanacheQuery<T>Find all entities of this type, in the given order.static <T extends PanacheMongoEntityBase>
TFind an entity of this type by ID.static <T extends PanacheMongoEntityBase>
Optional<T>Find an entity of this type by ID.static <T extends PanacheMongoEntityBase>
List<T>list(String query, Parameters params) Find entities matching a query, with named parameters.static <T extends PanacheMongoEntityBase>
List<T>list(String query, Sort sort, Parameters params) Find entities matching a query and the given sort options, with named parameters.static <T extends PanacheMongoEntityBase>
List<T>Find entities matching a query and the given sort options, with optional indexed parameters.static <T extends PanacheMongoEntityBase>
List<T>Find entities matching a query and the given sort options, with named parameters.static <T extends PanacheMongoEntityBase>
List<T>Find entities matching a query, with optional indexed parameters.static <T extends PanacheMongoEntityBase>
List<T>Find entities matching a query, with named parameters.static <T extends PanacheMongoEntityBase>
List<T>list(org.bson.Document query) Find entities using a BSON query.static <T extends PanacheMongoEntityBase>
List<T>list(org.bson.Document query, org.bson.Document sort) Find entities using a BSON query and a BSON sort.static <T extends PanacheMongoEntityBase>
List<T>listAll()Find all entities of this type.static <T extends PanacheMongoEntityBase>
List<T>Find all entities of this type, in the given order.static <T extends PanacheMongoEntityBase>
com.mongodb.client.MongoCollection<T>Allow to access the underlying Mongo Collection.static com.mongodb.client.MongoDatabaseAllow to access the underlying Mongo Database.voidpersist()Persist this entity in the database.static voidInsert all given entities.static voidInsert all given entities.static voidInsert all given entities.voidPersist this entity in the database or update it if it already exists.static voidpersistOrUpdate(Iterable<?> entities) Persist all given entities or update them if they already exist.static voidpersistOrUpdate(Object firstEntity, Object... entities) Persist all given entities.static voidpersistOrUpdate(Stream<?> entities) Persist all given entities.static <T extends PanacheMongoEntityBase>
Stream<T>stream(String query, Parameters params) Find entities matching a query, with named parameters.static <T extends PanacheMongoEntityBase>
Stream<T>stream(String query, Sort sort, Parameters params) Find entities matching a query and the given sort options, with named parameters.static <T extends PanacheMongoEntityBase>
Stream<T>Find entities matching a query and the given sort options, with optional indexed parameters.static <T extends PanacheMongoEntityBase>
Stream<T>Find entities matching a query and the given sort options, with named parameters.static <T extends PanacheMongoEntityBase>
Stream<T>Find entities matching a query, with optional indexed parameters.static <T extends PanacheMongoEntityBase>
Stream<T>Find entities matching a query, with named parameters.static <T extends PanacheMongoEntityBase>
Stream<T>stream(org.bson.Document query) Find entities using a BSON query.static <T extends PanacheMongoEntityBase>
Stream<T>stream(org.bson.Document query, org.bson.Document sort) Find entities using a BSON query and a BSON sort.static <T extends PanacheMongoEntityBase>
Stream<T>Find all entities of this type.static <T extends PanacheMongoEntityBase>
Stream<T>Find all entities of this type, in the given order.voidupdate()Update this entity in the database.static voidUpdate all given entities.static voidUpdate all given entities.static PanacheUpdateupdate(String update, Parameters params) Update all entities of this type by the given update document, with named parameters.static PanacheUpdateUpdate all entities of this type by the given update document, with optional indexed parameters.static PanacheUpdateUpdate all entities of this type by the given update document, with named parameters.static voidUpdate all given entities.static PanacheUpdateupdate(org.bson.Document update) Update all entities of this type by the given update BSON document.
-
Constructor Details
-
PanacheMongoEntityBase
public PanacheMongoEntityBase()
-
-
Method Details
-
persist
public void persist()Persist this entity in the database. This will set its ID field if not already set. -
update
public void update()Update this entity in the database. -
persistOrUpdate
public void persistOrUpdate()Persist this entity in the database or update it if it already exists. -
delete
public void delete()Delete this entity from the database, if it is already persisted. -
findById
@GenerateBridge(targetReturnTypeErased=true) public static <T extends PanacheMongoEntityBase> T findById(Object id) Find an entity of this type by ID.- Parameters:
id- the ID of the entity to find.- Returns:
- the entity found, or
nullif not found.
-
findByIdOptional
@GenerateBridge public static <T extends PanacheMongoEntityBase> Optional<T> findByIdOptional(Object id) Find an entity of this type by ID.- Parameters:
id- the ID of the entity to find.- Returns:
- if found, an optional containing the entity, else
Optional.empty().
-
find
@GenerateBridge public static <T extends PanacheMongoEntityBase> PanacheQuery<T> find(String query, Object... params) Find entities using a query, with optional indexed parameters.- Parameters:
query- aquery stringparams- optional sequence of indexed parameters- Returns:
- a new
PanacheQueryinstance for the given query - See Also:
-
find
@GenerateBridge public static <T extends PanacheMongoEntityBase> PanacheQuery<T> find(String query, Sort sort, Object... params) Find entities using a query and the given sort options, with optional indexed parameters.- Parameters:
query- aquery stringsort- the sort strategy to useparams- optional sequence of indexed parameters- Returns:
- a new
PanacheQueryinstance for the given query - See Also:
-
find
@GenerateBridge public static <T extends PanacheMongoEntityBase> PanacheQuery<T> find(String query, Map<String, Object> params) Find entities using a query, with named parameters.- Parameters:
query- aquery stringparams-Mapof named parameters- Returns:
- a new
PanacheQueryinstance for the given query - See Also:
-
find
@GenerateBridge public static <T extends PanacheMongoEntityBase> PanacheQuery<T> find(String query, Sort sort, Map<String, Object> params) Find entities using a query and the given sort options, with named parameters.- Parameters:
query- aquery stringsort- the sort strategy to useparams-Mapof indexed parameters- Returns:
- a new
PanacheQueryinstance for the given query - See Also:
-
find
@GenerateBridge public static <T extends PanacheMongoEntityBase> PanacheQuery<T> find(String query, Parameters params) Find entities using a query, with named parameters.- Parameters:
query- aquery stringparams-Parametersof named parameters- Returns:
- a new
PanacheQueryinstance for the given query - See Also:
-
find
@GenerateBridge public static <T extends PanacheMongoEntityBase> PanacheQuery<T> find(String query, Sort sort, Parameters params) Find entities using a query and the given sort options, with named parameters.- Parameters:
query- aquery stringsort- the sort strategy to useparams-Parametersof indexed parameters- Returns:
- a new
PanacheQueryinstance for the given query - See Also:
-
find
@GenerateBridge public static <T extends PanacheMongoEntityBase> PanacheQuery<T> find(org.bson.Document query) Find entities using a BSON query.- Parameters:
query- aDocumentquery- Returns:
- a new
PanacheQueryinstance for the given query - See Also:
-
find
@GenerateBridge public static <T extends PanacheMongoEntityBase> PanacheQuery<T> find(org.bson.Document query, org.bson.Document sort) Find entities using a BSON query and a BSON sort.- Parameters:
query- aDocumentquerysort- theDocumentsort- Returns:
- a new
PanacheQueryinstance for the given query - See Also:
-
findAll
Find all entities of this type.- Returns:
- a new
PanacheQueryinstance to find all entities of this type. - See Also:
-
findAll
Find all entities of this type, in the given order.- Parameters:
sort- the sort order to use- Returns:
- a new
PanacheQueryinstance to find all entities of this type. - See Also:
-
list
@GenerateBridge public static <T extends PanacheMongoEntityBase> List<T> list(String query, Object... params) Find entities matching a query, with optional indexed parameters. This method is a shortcut forfind(query, params).list().- Parameters:
query- aquery stringparams- optional sequence of indexed parameters- Returns:
- a
Listcontaining all results, without paging - See Also:
-
list
@GenerateBridge public static <T extends PanacheMongoEntityBase> List<T> list(String query, Sort sort, Object... params) Find entities matching a query and the given sort options, with optional indexed parameters. This method is a shortcut forfind(query, sort, params).list().- Parameters:
query- aquery stringsort- the sort strategy to useparams- optional sequence of indexed parameters- Returns:
- a
Listcontaining all results, without paging - See Also:
-
list
@GenerateBridge public static <T extends PanacheMongoEntityBase> List<T> list(String query, Map<String, Object> params) Find entities matching a query, with named parameters. This method is a shortcut forfind(query, params).list().- Parameters:
query- aquery stringparams-Mapof named parameters- Returns:
- a
Listcontaining all results, without paging - See Also:
-
list
@GenerateBridge public static <T extends PanacheMongoEntityBase> List<T> list(String query, Sort sort, Map<String, Object> params) Find entities matching a query and the given sort options, with named parameters. This method is a shortcut forfind(query, sort, params).list().- Parameters:
query- aquery stringsort- the sort strategy to useparams-Mapof indexed parameters- Returns:
- a
Listcontaining all results, without paging - See Also:
-
list
@GenerateBridge public static <T extends PanacheMongoEntityBase> List<T> list(String query, Parameters params) Find entities matching a query, with named parameters. This method is a shortcut forfind(query, params).list().- Parameters:
query- aquery stringparams-Parametersof named parameters- Returns:
- a
Listcontaining all results, without paging - See Also:
-
list
@GenerateBridge public static <T extends PanacheMongoEntityBase> List<T> list(String query, Sort sort, Parameters params) Find entities matching a query and the given sort options, with named parameters. This method is a shortcut forfind(query, sort, params).list().- Parameters:
query- aquery stringsort- the sort strategy to useparams-Parametersof indexed parameters- Returns:
- a
Listcontaining all results, without paging - See Also:
-
list
@GenerateBridge public static <T extends PanacheMongoEntityBase> List<T> list(org.bson.Document query) Find entities using a BSON query. This method is a shortcut forfind(query).list().- Parameters:
query- aDocumentquery- Returns:
- a
Listcontaining all results, without paging - See Also:
-
list
@GenerateBridge public static <T extends PanacheMongoEntityBase> List<T> list(org.bson.Document query, org.bson.Document sort) Find entities using a BSON query and a BSON sort. This method is a shortcut forfind(query, sort).list().- Parameters:
query- aDocumentquerysort- theDocumentsort- Returns:
- a
Listcontaining all results, without paging - See Also:
-
listAll
Find all entities of this type. This method is a shortcut forfindAll().list().- Returns:
- a
Listcontaining all results, without paging - See Also:
-
listAll
Find all entities of this type, in the given order. This method is a shortcut forfindAll(sort).list().- Parameters:
sort- the sort order to use- Returns:
- a
Listcontaining all results, without paging - See Also:
-
stream
@GenerateBridge public static <T extends PanacheMongoEntityBase> Stream<T> stream(String query, Object... params) Find entities matching a query, with optional indexed parameters. This method is a shortcut forfind(query, params).stream().- Parameters:
query- aquery stringparams- optional sequence of indexed parameters- Returns:
- a
Streamcontaining all results, without paging - See Also:
-
stream
@GenerateBridge public static <T extends PanacheMongoEntityBase> Stream<T> stream(String query, Sort sort, Object... params) Find entities matching a query and the given sort options, with optional indexed parameters. This method is a shortcut forfind(query, sort, params).stream().- Parameters:
query- aquery stringsort- the sort strategy to useparams- optional sequence of indexed parameters- Returns:
- a
Streamcontaining all results, without paging - See Also:
-
stream
@GenerateBridge public static <T extends PanacheMongoEntityBase> Stream<T> stream(String query, Map<String, Object> params) Find entities matching a query, with named parameters. This method is a shortcut forfind(query, params).stream().- Parameters:
query- aquery stringparams-Mapof named parameters- Returns:
- a
Streamcontaining all results, without paging - See Also:
-
stream
@GenerateBridge public static <T extends PanacheMongoEntityBase> Stream<T> stream(String query, Sort sort, Map<String, Object> params) Find entities matching a query and the given sort options, with named parameters. This method is a shortcut forfind(query, sort, params).stream().- Parameters:
query- aquery stringsort- the sort strategy to useparams-Mapof indexed parameters- Returns:
- a
Streamcontaining all results, without paging - See Also:
-
stream
@GenerateBridge public static <T extends PanacheMongoEntityBase> Stream<T> stream(String query, Parameters params) Find entities matching a query, with named parameters. This method is a shortcut forfind(query, params).stream().- Parameters:
query- aquery stringparams-Parametersof named parameters- Returns:
- a
Streamcontaining all results, without paging - See Also:
-
stream
@GenerateBridge public static <T extends PanacheMongoEntityBase> Stream<T> stream(String query, Sort sort, Parameters params) Find entities matching a query and the given sort options, with named parameters. This method is a shortcut forfind(query, sort, params).stream().- Parameters:
query- aquery stringsort- the sort strategy to useparams-Parametersof indexed parameters- Returns:
- a
Streamcontaining all results, without paging - See Also:
-
stream
@GenerateBridge public static <T extends PanacheMongoEntityBase> Stream<T> stream(org.bson.Document query) Find entities using a BSON query. This method is a shortcut forfind(query).stream().- Parameters:
query- aDocumentquery- Returns:
- a
Streamcontaining all results, without paging - See Also:
-
stream
@GenerateBridge public static <T extends PanacheMongoEntityBase> Stream<T> stream(org.bson.Document query, org.bson.Document sort) Find entities using a BSON query and a BSON sort. This method is a shortcut forfind(query, sort).stream().- Parameters:
query- aDocumentquerysort- theDocumentsort- Returns:
- a
Streamcontaining all results, without paging - See Also:
-
streamAll
Find all entities of this type. This method is a shortcut forfindAll().stream().- Returns:
- a
Streamcontaining all results, without paging - See Also:
-
streamAll
Find all entities of this type, in the given order. This method is a shortcut forfindAll(sort).stream().- Parameters:
sort- the sort order to use- Returns:
- a
Streamcontaining all results, without paging - See Also:
-
count
Counts the number of this type of entity in the database.- Returns:
- the number of this type of entity in the database.
- See Also:
-
count
Counts the number of this type of entity matching the given query, with optional indexed parameters.- Parameters:
query- aquery stringparams- optional sequence of indexed parameters- Returns:
- the number of entities counted.
- See Also:
-
count
Counts the number of this type of entity matching the given query, with named parameters.- Parameters:
query- aquery stringparams-Mapof named parameters- Returns:
- the number of entities counted.
- See Also:
-
count
Counts the number of this type of entity matching the given query, with named parameters.- Parameters:
query- aquery stringparams-Parametersof named parameters- Returns:
- the number of entities counted.
- See Also:
-
count
Counts the number of this type of entity matching the given query- Parameters:
query- aDocumentquery- Returns:
- he number of entities counted.
- See Also:
-
deleteAll
Delete all entities of this type from the database.- Returns:
- the number of entities deleted.
- See Also:
-
deleteById
Delete an entity of this type by ID.- Parameters:
id- the ID of the entity to delete.- Returns:
- false if the entity was not deleted (not found).
-
delete
Delete all entities of this type matching the given query, with optional indexed parameters.- Parameters:
query- aquery stringparams- optional sequence of indexed parameters- Returns:
- the number of entities deleted.
- See Also:
-
delete
Delete all entities of this type matching the given query, with named parameters.- Parameters:
query- aquery stringparams-Mapof named parameters- Returns:
- the number of entities deleted.
- See Also:
-
delete
Delete all entities of this type matching the given query, with named parameters.- Parameters:
query- aquery stringparams-Parametersof named parameters- Returns:
- the number of entities deleted.
- See Also:
-
delete
Delete all entities of this type matching the given query- Parameters:
query- aDocumentquery- Returns:
- he number of entities counted.
- See Also:
-
persist
Insert all given entities.- Parameters:
entities- the entities to insert- See Also:
-
persist
Insert all given entities.- Parameters:
entities- the entities to insert- See Also:
-
persist
@GenerateBridge(callSuperMethod=true) public static void persist(Object firstEntity, Object... entities) Insert all given entities.- Parameters:
entities- the entities to insert- See Also:
-
update
Update all given entities.- Parameters:
entities- the entities to update- See Also:
-
update
Update all given entities.- Parameters:
entities- the entities to insert- See Also:
-
update
@GenerateBridge(callSuperMethod=true) public static void update(Object firstEntity, Object... entities) Update all given entities.- Parameters:
entities- the entities to update- See Also:
-
persistOrUpdate
Persist all given entities or update them if they already exist.- Parameters:
entities- the entities to update- See Also:
-
persistOrUpdate
Persist all given entities.- Parameters:
entities- the entities to insert- See Also:
-
persistOrUpdate
@GenerateBridge(callSuperMethod=true) public static void persistOrUpdate(Object firstEntity, Object... entities) Persist all given entities.- Parameters:
entities- the entities to update- See Also:
-
update
Update all entities of this type by the given update document, with optional indexed parameters. The returnedPanacheUpdateobject will allow to restrict on which document the update should be applied.- Parameters:
update- the update document, if it didn't contain any update operator, we add$set.. It can also be expressed as aquery string.params- optional sequence of indexed parameters- Returns:
- a new
PanacheUpdateinstance for the given update document - See Also:
-
update
Update all entities of this type by the given update document, with named parameters. The returnedPanacheUpdateobject will allow to restrict on which document the update should be applied.- Parameters:
update- the update document, if it didn't contain any update operator, we add$set. It can also be expressed as aquery string.params-Mapof named parameters- Returns:
- a new
PanacheUpdateinstance for the given update document - See Also:
-
update
Update all entities of this type by the given update document, with named parameters. The returnedPanacheUpdateobject will allow to restrict on which document the update should be applied.- Parameters:
update- the update document, if it didn't contain any update operator, we add$set. It can also be expressed as aquery string.params-Parametersof named parameters- Returns:
- a new
PanacheUpdateinstance for the given update document - See Also:
-
update
Update all entities of this type by the given update BSON document. The returnedPanacheUpdateobject will allow to restrict on which document the update should be applied.- Parameters:
update- the update document, as aDocument.- Returns:
- a new
PanacheUpdateinstance for the given update document - See Also:
-
mongoCollection
@GenerateBridge public static <T extends PanacheMongoEntityBase> com.mongodb.client.MongoCollection<T> mongoCollection()Allow to access the underlying Mongo Collection. -
mongoDatabase
Allow to access the underlying Mongo Database.
-