Massive Argeo APIs refactoring
[lgpl/argeo-commons.git] / org.argeo.cms.e4 / src / org / argeo / cms / e4 / users / UserAdminWrapper.java
index 60d232abac0a690f095753bb2b3900ad0343cc46..16aa78316142a1a37f2340293c7ee15b4437ff9d 100644 (file)
@@ -8,11 +8,9 @@ import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 
-import javax.transaction.Status;
-import javax.transaction.UserTransaction;
-
-import org.argeo.api.NodeConstants;
+import org.argeo.api.cms.CmsConstants;
 import org.argeo.cms.CmsException;
+import org.argeo.osgi.transaction.WorkTransaction;
 import org.argeo.osgi.useradmin.UserAdminConf;
 import org.argeo.osgi.useradmin.UserDirectory;
 import org.osgi.service.useradmin.UserAdmin;
@@ -27,7 +25,7 @@ public class UserAdminWrapper {
 //     private Set<String> uris;
        private Map<UserDirectory, Hashtable<String, String>> userDirectories = Collections
                        .synchronizedMap(new LinkedHashMap<>());
-       private UserTransaction userTransaction;
+       private WorkTransaction userTransaction;
 
        // First effort to simplify UX while managing users and groups
        public final static boolean COMMIT_ON_SAVE = true;
@@ -40,10 +38,10 @@ public class UserAdminWrapper {
         * {@link UserAdminWrapper#commitOrNotifyTransactionStateChange()} once the
         * security model changes have been performed.
         */
-       public UserTransaction beginTransactionIfNeeded() {
+       public WorkTransaction beginTransactionIfNeeded() {
                try {
                        // UserTransaction userTransaction = getUserTransaction();
-                       if (userTransaction.getStatus() == Status.STATUS_NO_TRANSACTION) {
+                       if (userTransaction.isNoTransactionStatus()) {
                                userTransaction.begin();
                                // UiAdminUtils.notifyTransactionStateChange(userTransaction);
                        }
@@ -61,7 +59,7 @@ public class UserAdminWrapper {
        public void commitOrNotifyTransactionStateChange() {
                try {
                        // UserTransaction userTransaction = getUserTransaction();
-                       if (userTransaction.getStatus() == Status.STATUS_NO_TRANSACTION)
+                       if (userTransaction.isNoTransactionStatus())
                                return;
 
                        if (UserAdminWrapper.COMMIT_ON_SAVE)
@@ -97,9 +95,9 @@ public class UserAdminWrapper {
 
                        if (onlyWritable && readOnly)
                                continue;
-                       if (baseDn.equalsIgnoreCase(NodeConstants.ROLES_BASEDN))
+                       if (baseDn.equalsIgnoreCase(CmsConstants.ROLES_BASEDN))
                                continue;
-                       if (baseDn.equalsIgnoreCase(NodeConstants.TOKENS_BASEDN))
+                       if (baseDn.equalsIgnoreCase(CmsConstants.TOKENS_BASEDN))
                                continue;
                        dns.put(baseDn, UserAdminConf.propertiesAsUri(userDirectories.get(userDirectory)).toString());
 
@@ -126,7 +124,7 @@ public class UserAdminWrapper {
                return userAdmin;
        }
 
-       public UserTransaction getUserTransaction() {
+       public WorkTransaction getUserTransaction() {
                return userTransaction;
        }
 
@@ -136,7 +134,7 @@ public class UserAdminWrapper {
 //             this.uris = Collections.unmodifiableSortedSet(new TreeSet<>(properties.keySet()));
        }
 
-       public void setUserTransaction(UserTransaction userTransaction) {
+       public void setUserTransaction(WorkTransaction userTransaction) {
                this.userTransaction = userTransaction;
        }