parent
e66af6f91b
commit
13516fe0cc
@ -0,0 +1,24 @@
|
|||||||
|
package fr.uca.iut.config;
|
||||||
|
|
||||||
|
import com.mongodb.client.MongoClient;
|
||||||
|
import com.mongodb.client.MongoClients;
|
||||||
|
import jakarta.enterprise.context.ApplicationScoped;
|
||||||
|
import jakarta.enterprise.inject.Disposes;
|
||||||
|
import jakarta.enterprise.inject.Produces;
|
||||||
|
import org.eclipse.microprofile.config.inject.ConfigProperty;
|
||||||
|
|
||||||
|
@ApplicationScoped
|
||||||
|
public class MongoClientProvider {
|
||||||
|
|
||||||
|
@ConfigProperty(name = "quarkus.mongodb.connection-string")
|
||||||
|
String CONNECTION_STRING;
|
||||||
|
@Produces
|
||||||
|
@ApplicationScoped
|
||||||
|
public MongoClient createMongoClient() {
|
||||||
|
return MongoClients.create(CONNECTION_STRING);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void close(@Disposes MongoClient client) {
|
||||||
|
client.close();
|
||||||
|
}
|
||||||
|
}
|
@ -1,9 +0,0 @@
|
|||||||
package fr.uca.iut.repositories;
|
|
||||||
|
|
||||||
import fr.uca.iut.entities.Move;
|
|
||||||
import io.quarkus.mongodb.panache.PanacheMongoRepository;
|
|
||||||
import jakarta.enterprise.context.ApplicationScoped;
|
|
||||||
|
|
||||||
@ApplicationScoped
|
|
||||||
public class MoveRepository implements PanacheMongoRepository<Move> {
|
|
||||||
}
|
|
@ -1,9 +1,35 @@
|
|||||||
package fr.uca.iut.repositories;
|
package fr.uca.iut.repositories;
|
||||||
|
|
||||||
|
import com.mongodb.client.MongoClient;
|
||||||
|
import com.mongodb.client.MongoCollection;
|
||||||
|
import com.mongodb.client.MongoDatabase;
|
||||||
import fr.uca.iut.entities.Pokemong;
|
import fr.uca.iut.entities.Pokemong;
|
||||||
import io.quarkus.mongodb.panache.PanacheMongoRepository;
|
|
||||||
import jakarta.enterprise.context.ApplicationScoped;
|
import jakarta.enterprise.context.ApplicationScoped;
|
||||||
|
import jakarta.inject.Inject;
|
||||||
|
import org.bson.types.ObjectId;
|
||||||
|
import org.eclipse.microprofile.config.inject.ConfigProperty;
|
||||||
|
|
||||||
|
import static com.mongodb.client.model.Filters.eq;
|
||||||
|
|
||||||
@ApplicationScoped
|
@ApplicationScoped
|
||||||
public class PokemongRepository implements PanacheMongoRepository<Pokemong> {
|
public class PokemongRepository {
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
MongoClient mongoClient;
|
||||||
|
|
||||||
|
@ConfigProperty(name = "quarkus.mongodb.database")
|
||||||
|
String DB_NAME;
|
||||||
|
|
||||||
|
|
||||||
|
private MongoCollection<Pokemong> getCollection() {
|
||||||
|
MongoDatabase db = mongoClient.getDatabase(DB_NAME);
|
||||||
|
return db.getCollection(Pokemong.COLLECTION_NAME, Pokemong.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Pokemong findById(ObjectId id) {
|
||||||
|
return getCollection().find(eq("_id", id))
|
||||||
|
.first();
|
||||||
|
}
|
||||||
|
|
||||||
|
// TODO add similar methods for persist, delete, etc...
|
||||||
}
|
}
|
||||||
|
@ -1,9 +0,0 @@
|
|||||||
package fr.uca.iut.repositories;
|
|
||||||
|
|
||||||
import fr.uca.iut.entities.Trainer;
|
|
||||||
import io.quarkus.mongodb.panache.PanacheMongoRepository;
|
|
||||||
import jakarta.enterprise.context.ApplicationScoped;
|
|
||||||
|
|
||||||
@ApplicationScoped
|
|
||||||
public class TrainerRepository implements PanacheMongoRepository<Trainer> {
|
|
||||||
}
|
|
@ -1,9 +0,0 @@
|
|||||||
package fr.uca.iut.repositories;
|
|
||||||
|
|
||||||
import fr.uca.iut.entities.Type;
|
|
||||||
import io.quarkus.mongodb.panache.PanacheMongoRepository;
|
|
||||||
import jakarta.enterprise.context.ApplicationScoped;
|
|
||||||
|
|
||||||
@ApplicationScoped
|
|
||||||
public class TypeRepository implements PanacheMongoRepository<Type> {
|
|
||||||
}
|
|
@ -1,4 +0,0 @@
|
|||||||
package fr.uca.iut.services;
|
|
||||||
|
|
||||||
public class MoveService {
|
|
||||||
}
|
|
@ -1,4 +0,0 @@
|
|||||||
package fr.uca.iut.services;
|
|
||||||
|
|
||||||
public class TrainerService {
|
|
||||||
}
|
|
@ -1,4 +0,0 @@
|
|||||||
package fr.uca.iut.services;
|
|
||||||
|
|
||||||
public class TypeService {
|
|
||||||
}
|
|
@ -1,2 +1,4 @@
|
|||||||
quarkus.mongodb.connection-string=mongodb+srv://<username>:<password>@<cluster>.<node>.mongodb.net
|
quarkus.mongodb.connection-string=mongodb+srv://<username>:<password>@<cluster>.<node>.mongodb.net
|
||||||
quarkus.mongodb.database=<database>
|
quarkus.mongodb.database=<database>
|
||||||
|
quarkus.mongodb.credentials.username=<username>
|
||||||
|
quarkus.mongodb.credentials.password=<password>
|
Loading…
Reference in new issue