diff --git a/model/api/src/main/java/org/keycloak/models/KeycloakSession.java b/model/api/src/main/java/org/keycloak/models/KeycloakSession.java
index 6eab3fd..81052d8 100755
--- a/model/api/src/main/java/org/keycloak/models/KeycloakSession.java
+++ b/model/api/src/main/java/org/keycloak/models/KeycloakSession.java
@@ -43,4 +43,5 @@ public interface KeycloakSession {
void close();
+ void enlist(KeycloakTransaction transaction);
}
diff --git a/services/src/main/java/org/keycloak/services/DefaultKeycloakSession.java b/services/src/main/java/org/keycloak/services/DefaultKeycloakSession.java
index 837f45a..6f961ab 100755
--- a/services/src/main/java/org/keycloak/services/DefaultKeycloakSession.java
+++ b/services/src/main/java/org/keycloak/services/DefaultKeycloakSession.java
@@ -141,6 +141,11 @@ public class DefaultKeycloakSession implements KeycloakSession {
}
@Override
+ public void enlist(KeycloakTransaction transaction) {
+ managedTransactions.add(transaction);
+ }
+
+ @Override
public ModelProvider model() {
if (!transaction.isActive()) throw new IllegalStateException("Transaction is not active");
if (model == null) {