diff --git a/src/main/java/de/dpunkt/myaktion/login/MongoDBLoginModule.java b/src/main/java/de/dpunkt/myaktion/login/MongoDBLoginModule.java index 3218781a742c1069acfea30c9384e9aeb05b0456..0ea449d5078c7c2681f4f9a0df6406a1d4b1b4a5 100644 --- a/src/main/java/de/dpunkt/myaktion/login/MongoDBLoginModule.java +++ b/src/main/java/de/dpunkt/myaktion/login/MongoDBLoginModule.java @@ -24,6 +24,12 @@ import com.mongodb.client.model.Filters; public class MongoDBLoginModule extends UsernamePasswordLoginModule { //---------------------------------------------------------------------------------------------- + private String database; + + private String collection; + + //---------------------------------------------------------------------------------------------- + /** * {@inheritDoc} */ @@ -31,6 +37,9 @@ public class MongoDBLoginModule extends UsernamePasswordLoginModule { public void initialize(Subject subject, CallbackHandler callbackHandler, Map<String, ?> sharedState, Map<String, ?> options) { super.initialize(subject, callbackHandler, sharedState, options); + + database = (String) options.get("database"); + collection = (String) options.get("collection"); } //---------------------------------------------------------------------------------------------- @@ -41,8 +50,9 @@ public class MongoDBLoginModule extends UsernamePasswordLoginModule { @Override protected String getUsersPassword() throws LoginException { MongoClient mongoClient = MongoClients.create("mongodb://localhost"); - MongoDatabase database = mongoClient.getDatabase("my-aktion"); - MongoCollection<Document> organizerCollection = database.getCollection("Organizer"); + + MongoDatabase database = mongoClient.getDatabase(this.database); + MongoCollection<Document> organizerCollection = database.getCollection(this.collection); Document organizerDocument = organizerCollection.find(Filters.eq("email", getUsername())).first();