Clean up code
[lgpl/argeo-commons.git] / org.argeo.cms / src / org / argeo / cms / internal / osgi / CmsActivator.java
index 038d7029ca9cf6b720c1b8c01ef85e95384c32aa..b09956203cc2eb4afa0bfa60b2a1c22cf1fe9f5c 100644 (file)
@@ -4,20 +4,15 @@ import java.security.AllPermission;
 import java.util.Dictionary;
 
 import org.argeo.api.cms.CmsLog;
-import org.argeo.cms.ArgeoLogger;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.Constants;
-import org.osgi.framework.ServiceReference;
 import org.osgi.service.condpermadmin.BundleLocationCondition;
 import org.osgi.service.condpermadmin.ConditionInfo;
 import org.osgi.service.condpermadmin.ConditionalPermissionAdmin;
 import org.osgi.service.condpermadmin.ConditionalPermissionInfo;
 import org.osgi.service.condpermadmin.ConditionalPermissionUpdate;
-import org.osgi.service.http.HttpService;
-import org.osgi.service.log.LogReaderService;
 import org.osgi.service.permissionadmin.PermissionInfo;
-import org.osgi.util.tracker.ServiceTracker;
 
 /**
  * Activates the kernel. Gives access to kernel information for the rest of the
@@ -26,75 +21,26 @@ import org.osgi.util.tracker.ServiceTracker;
 public class CmsActivator implements BundleActivator {
        private final static CmsLog log = CmsLog.getLog(CmsActivator.class);
 
-//     private static Activator instance;
-
        // TODO make it configurable
        private boolean hardened = false;
 
        private static BundleContext bundleContext;
 
-       private LogReaderService logReaderService;
-
-       private CmsOsgiLogger logger;
-//     private CmsStateImpl nodeState;
-//     private CmsDeploymentImpl nodeDeployment;
-//     private CmsContextImpl nodeInstance;
-
-//     private ServiceTracker<UserAdmin, NodeUserAdmin> userAdminSt;
-
-//     static {
-//             Bundle bundle = FrameworkUtil.getBundle(Activator.class);
-//             if (bundle != null) {
-//                     bundleContext = bundle.getBundleContext();
-//             }
-//     }
-
        void init() {
-//             Runtime.getRuntime().addShutdownHook(new CmsShutdown());
-//             instance = this;
-//             this.bc = bundleContext;
-               if (bundleContext != null)
-                       this.logReaderService = getService(LogReaderService.class);
-               initArgeoLogger();
-//             this.internalExecutorService = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors());
-//
-//             try {
-//                     initSecurity();
-////                   initArgeoLogger();
-//                     initNode();
-//
-//                     if (log.isTraceEnabled())
-//                             log.trace("Kernel bundle started");
-//             } catch (Throwable e) {
-//                     log.error("## FATAL: CMS activator failed", e);
-//             }
        }
 
        void destroy() {
                try {
-//                     if (nodeInstance != null)
-//                             nodeInstance.shutdown();
-//                     if (nodeDeployment != null)
-//                             nodeDeployment.shutdown();
-//                     if (nodeState != null)
-//                             nodeState.shutdown();
-//
-//                     if (userAdminSt != null)
-//                             userAdminSt.close();
-
-//                     internalExecutorService.shutdown();
-//                     instance = null;
                        bundleContext = null;
-                       this.logReaderService = null;
-                       // this.configurationAdmin = null;
+//                     this.logReaderService = null;
                } catch (Exception e) {
                        log.error("CMS activator shutdown failed", e);
                }
-               
+
                new GogoShellKiller().start();
        }
 
-       private void initSecurity() {
+       protected void initSecurity() {
                // code-level permissions
                String osgiSecurity = bundleContext.getProperty(Constants.FRAMEWORK_SECURITY);
                if (osgiSecurity != null && Constants.FRAMEWORK_SECURITY_OSGI.equals(osgiSecurity)) {
@@ -130,26 +76,6 @@ public class CmsActivator implements BundleActivator {
 
        }
 
-       private void initArgeoLogger() {
-               logger = new CmsOsgiLogger(logReaderService);
-               if (bundleContext != null)
-                       bundleContext.registerService(ArgeoLogger.class, logger, null);
-       }
-
-//     private void initNode() throws IOException {
-//             // Node state
-//             nodeState = new CmsStateImpl();
-//             registerService(CmsState.class, nodeState, null);
-//
-//             // Node deployment
-//             nodeDeployment = new CmsDeploymentImpl();
-////           registerService(NodeDeployment.class, nodeDeployment, null);
-//
-//             // Node instance
-//             nodeInstance = new CmsContextImpl();
-//             registerService(CmsContext.class, nodeInstance, null);
-//     }
-
        public static <T> void registerService(Class<T> clss, T service, Dictionary<String, ?> properties) {
                if (bundleContext != null) {
                        bundleContext.registerService(clss, service, properties);
@@ -172,99 +98,18 @@ public class CmsActivator implements BundleActivator {
        @Override
        public void start(BundleContext bc) throws Exception {
                bundleContext = bc;
-//             if (!bc.getBundle().equals(bundleContext.getBundle()))
-//                     throw new IllegalStateException(
-//                                     "Bundle " + bc.getBundle() + " is not consistent with " + bundleContext.getBundle());
-               init();
-//             userAdminSt = new ServiceTracker<>(bundleContext, UserAdmin.class, null);
-//             userAdminSt.open();
 
-               ServiceTracker<?, ?> httpSt = new ServiceTracker<HttpService, HttpService>(bc, HttpService.class, null) {
-
-                       @Override
-                       public HttpService addingService(ServiceReference<HttpService> sr) {
-                               Object httpPort = sr.getProperty("http.port");
-                               Object httpsPort = sr.getProperty("https.port");
-                               log.info(httpPortsMsg(httpPort, httpsPort));
-                               close();
-                               return super.addingService(sr);
-                       }
-               };
-               httpSt.open();
-       }
+               init();
 
-       private String httpPortsMsg(Object httpPort, Object httpsPort) {
-               return (httpPort != null ? "HTTP " + httpPort + " " : " ") + (httpsPort != null ? "HTTPS " + httpsPort : "");
        }
 
        @Override
        public void stop(BundleContext bc) throws Exception {
-//             if (!bc.getBundle().equals(bundleContext.getBundle()))
-//                     throw new IllegalStateException(
-//                                     "Bundle " + bc.getBundle() + " is not consistent with " + bundleContext.getBundle());
+
                destroy();
                bundleContext = null;
        }
 
-//     private <T> T getService(Class<T> clazz) {
-//             ServiceReference<T> sr = bundleContext.getServiceReference(clazz);
-//             if (sr == null)
-//                     throw new IllegalStateException("No service available for " + clazz);
-//             return bundleContext.getService(sr);
-//     }
-
-//     public static GSSCredential getAcceptorCredentials() {
-//             return getNodeUserAdmin().getAcceptorCredentials();
-//     }
-//
-//     @Deprecated
-//     public static boolean isSingleUser() {
-//             return getNodeUserAdmin().isSingleUser();
-//     }
-//
-//     public static UserAdmin getUserAdmin() {
-//             return (UserAdmin) getNodeUserAdmin();
-//     }
-//
-//     public static String getHttpProxySslHeader() {
-//             return KernelUtils.getFrameworkProp(CmsConstants.HTTP_PROXY_SSL_DN);
-//     }
-//
-//     private static NodeUserAdmin getNodeUserAdmin() {
-//             NodeUserAdmin res;
-//             try {
-//                     res = instance.userAdminSt.waitForService(60000);
-//             } catch (InterruptedException e) {
-//                     throw new IllegalStateException("Cannot retrieve Node user admin", e);
-//             }
-//             if (res == null)
-//                     throw new IllegalStateException("No Node user admin found");
-//
-//             return res;
-//             // ServiceReference<UserAdmin> sr =
-//             // instance.bc.getServiceReference(UserAdmin.class);
-//             // NodeUserAdmin userAdmin = (NodeUserAdmin) instance.bc.getService(sr);
-//             // return userAdmin;
-//
-//     }
-
-//     public static ExecutorService getInternalExecutorService() {
-//             return instance.internalExecutorService;
-//     }
-
-       // static CmsSecurity getCmsSecurity() {
-       // return instance.nodeSecurity;
-       // }
-
-//     public String[] getLocales() {
-//             // TODO optimize?
-//             List<Locale> locales = CmsStateImpl.getNodeState().getLocales();
-//             String[] res = new String[locales.size()];
-//             for (int i = 0; i < locales.size(); i++)
-//                     res[i] = locales.get(i).toString();
-//             return res;
-//     }
-
        public static BundleContext getBundleContext() {
                return bundleContext;
        }