public void updated(String pid, Dictionary<String, ?> configuration) throws ConfigurationException { synchronized (m_updateLock) { if (m_log.doDebug()) { m_log.debug("Updated pid=" + pid); } if (!PID.equals(pid) && (null != m_services.get(PID))) { if (m_log.doDebug()) { m_log.debug("Overriding default instance with new pid " + pid); } deleted(PID); } SslServiceWrapper service = m_services.get(pid); if (service == null) { if (m_log.doDebug()) { m_log.debug("create pid=" + pid); } service = new SslServiceWrapper(m_bc, m_log); m_services.put(pid, service); } service.update(configuration); } }
/* * (non-Javadoc) * * @see org.osgi.service.cm.ManagedServiceFactory#deleted(java.lang.String) */ public void deleted(String pid) { final SslServiceWrapper service = m_services.get(pid); if (service != null) { if (m_log.doDebug()) { m_log.debug("delete pid=" + pid); } try { service.update(null); } catch (final ConfigurationException e) { } } }