package org.jflicks.restlet.servercomponent.system; import java.io.File; import java.util.Hashtable; import java.util.Properties; import org.jflicks.restlet.servercomponent.ServerComponent; import org.osgi.framework.BundleActivator; import org.osgi.framework.BundleContext; import org.osgi.framework.Constants; import org.osgi.framework.ServiceRegistration; import org.restlet.Component; import org.restlet.Server; import org.restlet.data.Parameter; import org.restlet.data.Protocol; import org.restlet.util.Series; /** * Activator for our simple security implementation. * * @author Doug Barnum * @version 3.0 */ public class Activator implements BundleActivator { private SystemServerComponent systemServerComponent; private ServiceRegistration serviceRegistration; public void start(BundleContext bc) { systemServerComponent = new SystemServerComponent(bc); systemServerComponent.start(); Hashtable<String, String> h = new Hashtable<String, String>(); h.put(Constants.SERVICE_PID, systemServerComponent.getId()); serviceRegistration = bc.registerService(ServerComponent.class.getName(), systemServerComponent, h); } public void stop(BundleContext bc) { if (systemServerComponent != null) { Component component = systemServerComponent.getComponent(); if (component != null) { try { component.stop(); } catch (Exception ex) { } component = null; } // Unregister as a ServerComponent. ServiceRegistration sr = systemServerComponent.getServiceRegistration(); if (sr != null) { sr.unregister(); } } // Unregister as a managed service. if (serviceRegistration != null) { serviceRegistration.unregister(); serviceRegistration = null; } } }