From 1a7265bfa0c22fb25b20e3b2b8a207938f03a0b7 Mon Sep 17 00:00:00 2001
From: Felix Sidokhine <felix.sidokhine@randstad.ca>
Date: Wed, 13 May 2020 01:06:30 +0300
Subject: [PATCH] Added missing interface

---
 .../jami/jams/authmodule/UserAuthenticationModule.java   | 9 +++++++++
 .../jams/common/authmodule/AuthenticationModule.java     | 3 +++
 2 files changed, 12 insertions(+)

diff --git a/authentication-module/src/main/java/net/jami/jams/authmodule/UserAuthenticationModule.java b/authentication-module/src/main/java/net/jami/jams/authmodule/UserAuthenticationModule.java
index 7380c57a..1ec62345 100644
--- a/authentication-module/src/main/java/net/jami/jams/authmodule/UserAuthenticationModule.java
+++ b/authentication-module/src/main/java/net/jami/jams/authmodule/UserAuthenticationModule.java
@@ -121,4 +121,13 @@ public class UserAuthenticationModule implements AuthenticationModule {
             return false;
         }
     }
+
+    @Override
+    public boolean createUser(AuthenticationSourceType type, String realm, NameServer nameServer, User user) {
+        //This concept doesn't exist for LDAP or AD or any other hosted directory, in this case we simply run
+        //very theoretically, we should allow LDAP to publish to the public registry, but this is a lot
+        //more complex.
+        return RegisterUserFlow.createUser(user,nameServer);
+    }
+
 }
diff --git a/jams-common/src/main/java/net/jami/jams/common/authmodule/AuthenticationModule.java b/jams-common/src/main/java/net/jami/jams/common/authmodule/AuthenticationModule.java
index a9e7b6ad..4facbf63 100644
--- a/jams-common/src/main/java/net/jami/jams/common/authmodule/AuthenticationModule.java
+++ b/jams-common/src/main/java/net/jami/jams/common/authmodule/AuthenticationModule.java
@@ -2,6 +2,8 @@ package net.jami.jams.common.authmodule;
 
 import net.jami.jams.common.authentication.AuthenticationSource;
 import net.jami.jams.common.authentication.AuthenticationSourceType;
+import net.jami.jams.common.jami.NameServer;
+import net.jami.jams.common.objects.user.User;
 
 import java.security.cert.X509Certificate;
 import java.util.HashMap;
@@ -14,4 +16,5 @@ public interface AuthenticationModule {
     String validateAndGetUsername(String token);
     HashMap<AuthModuleKey, AuthenticationSource> getAuthSources();
     boolean testModuleConfiguration(AuthenticationSourceType type, String configuration);
+    boolean createUser(AuthenticationSourceType type, String realm, NameServer nameServer, User user);
 }
-- 
GitLab