Remove strong dependencies to various classes not supported by Android
authorMathieu Baudier <mbaudier@argeo.org>
Tue, 7 Jun 2022 10:51:39 +0000 (12:51 +0200)
committerMathieu Baudier <mbaudier@argeo.org>
Tue, 7 Jun 2022 10:51:39 +0000 (12:51 +0200)
org.argeo.cms/src/org/argeo/cms/acr/fs/SyncFileVisitor.java
org.argeo.cms/src/org/argeo/cms/acr/xml/XmlNormalizer.java
org.argeo.cms/src/org/argeo/cms/internal/osgi/DeployConfig.java
org.argeo.cms/src/org/argeo/cms/internal/runtime/CmsUserAdmin.java

index 1370702cb8b9c50630f7f6ed8259b09f2b24db74..2a372878c43dbc321a53584458e345c6e89194bd 100644 (file)
@@ -1,13 +1,13 @@
 package org.argeo.cms.acr.fs;
 
-import java.lang.System.Logger;
-import java.lang.System.Logger.Level;
 import java.nio.file.Path;
 import java.util.Objects;
 
+import org.argeo.api.cms.CmsLog;
+
 /** Synchronises two directory structures. */
 public class SyncFileVisitor extends BasicSyncFileVisitor {
-       private final static Logger logger = System.getLogger(SyncFileVisitor.class.getName());
+       private final static CmsLog log = CmsLog.getLog(SyncFileVisitor.class);
 
        public SyncFileVisitor(Path sourceBasePath, Path targetBasePath, boolean delete, boolean recursive) {
                super(sourceBasePath, targetBasePath, delete, recursive);
@@ -15,16 +15,16 @@ public class SyncFileVisitor extends BasicSyncFileVisitor {
 
        @Override
        protected void error(Object obj, Throwable e) {
-               logger.log(Level.ERROR, Objects.toString(obj), e);
+               log.error(Objects.toString(obj), e);
        }
 
        @Override
        protected boolean isTraceEnabled() {
-               return logger.isLoggable(Level.TRACE);
+               return log.isTraceEnabled();
        }
 
        @Override
        protected void trace(Object obj) {
-               logger.log(Level.TRACE, Objects.toString(obj));
+               log.error(Objects.toString(obj));
        }
 }
index c3cc26cf21448135f2d09685717e08c8c241c56c..7540455f727b90a39a2762d25ad5f234547c5713 100644 (file)
@@ -4,8 +4,6 @@ import java.io.ByteArrayInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
-import java.lang.System.Logger;
-import java.lang.System.Logger.Level;
 import java.nio.file.DirectoryStream;
 import java.nio.file.Files;
 import java.nio.file.Path;
@@ -33,7 +31,7 @@ import org.xml.sax.SAXException;
  * versioning system).
  */
 public class XmlNormalizer {
-       private final static Logger logger = System.getLogger(XmlNormalizer.class.getName());
+//     private final static Logger logger = System.getLogger(XmlNormalizer.class.getName());
 
        private DocumentBuilder documentBuilder;
        private Transformer transformer;
@@ -67,7 +65,7 @@ public class XmlNormalizer {
                try (ByteArrayInputStream in = new ByteArrayInputStream(bytes);
                                OutputStream out = Files.newOutputStream(path)) {
                        normalizeAndIndent(in, out);
-                       logger.log(Level.DEBUG, () -> "Normalized XML " + path);
+//                     logger.log(Level.DEBUG, () -> "Normalized XML " + path);
                }
        }
 
index c36658e116c9a009bf5e22c041972d6acdff9f5e..e45b9508d19026133631e6af48d6a299118af7f2 100644 (file)
@@ -37,15 +37,6 @@ import org.osgi.service.cm.ConfigurationEvent;
 
 /** Manages the LDIF-based deployment configuration. */
 public class DeployConfig {
-       private final static LdapName USER_ADMIN_BASE_DN;
-       static {
-               try {
-                       USER_ADMIN_BASE_DN = new LdapName(
-                                       CmsConstants.OU + "=" + CmsConstants.NODE_USER_ADMIN_PID + "," + CmsConstants.DEPLOY_BASEDN);
-               } catch (InvalidNameException e) {
-                       throw new IllegalArgumentException(e);
-               }
-       }
 
        private final CmsLog log = CmsLog.getLog(getClass());
 //     private final BundleContext bc = FrameworkUtil.getBundle(getClass()).getBundleContext();
@@ -269,6 +260,14 @@ public class DeployConfig {
        }
 
        public Set<Dictionary<String, Object>> getUserDirectoryConfigs() {
+               // not static because class is not supported by Android
+               final LdapName USER_ADMIN_BASE_DN;
+               try {
+                       USER_ADMIN_BASE_DN = new LdapName(
+                                       CmsConstants.OU + "=" + CmsConstants.NODE_USER_ADMIN_PID + "," + CmsConstants.DEPLOY_BASEDN);
+               } catch (InvalidNameException e) {
+                       throw new IllegalArgumentException(e);
+               }
                Set<Dictionary<String, Object>> res = new HashSet<>();
                for (LdapName dn : deployConfigs.keySet()) {
                        if (dn.endsWith(USER_ADMIN_BASE_DN)) {
index 7c4d807746ff481e7bcdd56f7058ecc5d3b8c86c..9364ee4a3069bfdfcf905d41ae74ecc21172180b 100644 (file)
@@ -56,7 +56,7 @@ import org.osgi.service.useradmin.Role;
  * Aggregates multiple {@link UserDirectory} and integrates them with system
  * roles.
  */
-public class CmsUserAdmin extends AggregatingUserAdmin  {
+public class CmsUserAdmin extends AggregatingUserAdmin {
        private final static CmsLog log = CmsLog.getLog(CmsUserAdmin.class);
 
        // GSS API
@@ -77,7 +77,7 @@ public class CmsUserAdmin extends AggregatingUserAdmin  {
 
        public void stop() {
        }
-       
+
        public UserDirectory enableUserDirectory(Dictionary<String, ?> properties) {
                String uri = (String) properties.get(UserAdminConf.uri.name());
                Object realm = properties.get(UserAdminConf.realm.name());
@@ -113,7 +113,7 @@ public class CmsUserAdmin extends AggregatingUserAdmin  {
                addUserDirectory(userDirectory);
                if (isSystemRolesBaseDn(baseDn)) {
                        addStandardSystemRoles();
-               }       
+               }
                if (log.isDebugEnabled()) {
                        log.debug("User directory " + userDirectory.getBaseDn() + (u != null ? " [" + u.getScheme() + "]" : "")
                                        + " enabled." + (realm != null ? " " + realm + " realm." : ""));
@@ -121,7 +121,6 @@ public class CmsUserAdmin extends AggregatingUserAdmin  {
                return userDirectory;
        }
 
-
        protected void addStandardSystemRoles() {
                // we assume UserTransaction is already available (TODO make it more robust)
                try {
@@ -145,7 +144,6 @@ public class CmsUserAdmin extends AggregatingUserAdmin  {
                }
        }
 
-
        @Override
        protected void addAbstractSystemRoles(Authorization rawAuthorization, Set<String> sysRoles) {
                if (rawAuthorization.getName() == null) {
@@ -229,6 +227,13 @@ public class CmsUserAdmin extends AggregatingUserAdmin  {
        }
 
        private GSSCredential logInAsAcceptor(Subject subject, String servicePrincipal) {
+               // not static because class is not supported by Android
+               final Oid KERBEROS_OID;
+               try {
+                       KERBEROS_OID = new Oid("1.3.6.1.5.5.2");
+               } catch (GSSException e) {
+                       throw new IllegalStateException("Cannot create Kerberos OID", e);
+               }
                // GSS
                Iterator<KerberosPrincipal> krb5It = subject.getPrincipals(KerberosPrincipal.class).iterator();
                if (!krb5It.hasNext())
@@ -288,12 +293,4 @@ public class CmsUserAdmin extends AggregatingUserAdmin  {
         * STATIC
         */
 
-       public final static Oid KERBEROS_OID;
-       static {
-               try {
-                       KERBEROS_OID = new Oid("1.3.6.1.5.5.2");
-               } catch (GSSException e) {
-                       throw new IllegalStateException("Cannot create Kerberos OID", e);
-               }
-       }
 }