Class BundleContextShim

java.lang.Object
org.eclipse.osgi.internal.framework.BundleContextImpl
dev.equo.solstice.BundleContextShim
All Implemented Interfaces:
org.eclipse.osgi.framework.eventmgr.EventDispatcher<Object,Object,Object>, org.osgi.framework.BundleContext, org.osgi.framework.BundleReference

public class BundleContextShim extends org.eclipse.osgi.internal.framework.BundleContextImpl
A single-classloader implementation of OSGi which eagerly loads all the OSGi plugins it can find on the classpath.
  • Method Details

    • hydrate

      public static BundleContextShim hydrate(Solstice bundleSet, Map<String,String> props)
    • systemBundle

      public org.osgi.framework.Bundle systemBundle()
    • bundleForSymbolicName

      public ShimBundle bundleForSymbolicName(String name)
    • getBundle

      public org.osgi.framework.Bundle getBundle()
      Specified by:
      getBundle in interface org.osgi.framework.BundleContext
      Specified by:
      getBundle in interface org.osgi.framework.BundleReference
      Overrides:
      getBundle in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • getDataFile

      public File getDataFile(String filename)
      Specified by:
      getDataFile in interface org.osgi.framework.BundleContext
      Overrides:
      getDataFile in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • installBundle

      public org.osgi.framework.Bundle installBundle(String location, InputStream input)
      Specified by:
      installBundle in interface org.osgi.framework.BundleContext
      Overrides:
      installBundle in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • installBundle

      public org.osgi.framework.Bundle installBundle(String location)
      Specified by:
      installBundle in interface org.osgi.framework.BundleContext
      Overrides:
      installBundle in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • getBundle

      public org.osgi.framework.Bundle getBundle(String location)
      Specified by:
      getBundle in interface org.osgi.framework.BundleContext
      Overrides:
      getBundle in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • getBundles

      public org.osgi.framework.Bundle[] getBundles()
      Specified by:
      getBundles in interface org.osgi.framework.BundleContext
      Overrides:
      getBundles in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • getProperty

      public String getProperty(String key)
      Specified by:
      getProperty in interface org.osgi.framework.BundleContext
      Overrides:
      getProperty in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • addBundleListener

      public void addBundleListener(org.osgi.framework.BundleListener listener)
      Specified by:
      addBundleListener in interface org.osgi.framework.BundleContext
      Overrides:
      addBundleListener in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • removeBundleListener

      public void removeBundleListener(org.osgi.framework.BundleListener listener)
      Specified by:
      removeBundleListener in interface org.osgi.framework.BundleContext
      Overrides:
      removeBundleListener in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • addFrameworkListener

      public void addFrameworkListener(org.osgi.framework.FrameworkListener listener)
      Specified by:
      addFrameworkListener in interface org.osgi.framework.BundleContext
      Overrides:
      addFrameworkListener in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • removeFrameworkListener

      public void removeFrameworkListener(org.osgi.framework.FrameworkListener listener)
      Specified by:
      removeFrameworkListener in interface org.osgi.framework.BundleContext
      Overrides:
      removeFrameworkListener in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • getBundle

      public org.osgi.framework.Bundle getBundle(long id)
      Specified by:
      getBundle in interface org.osgi.framework.BundleContext
      Overrides:
      getBundle in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • registerService

      public final org.osgi.framework.ServiceRegistration<?> registerService(String clazz, Object service, Dictionary<String,?> properties)
      Specified by:
      registerService in interface org.osgi.framework.BundleContext
      Overrides:
      registerService in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • registerService

      public final <S> org.osgi.framework.ServiceRegistration<S> registerService(Class<S> clazz, org.osgi.framework.ServiceFactory<S> factory, Dictionary<String,?> properties)
      Specified by:
      registerService in interface org.osgi.framework.BundleContext
      Overrides:
      registerService in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • registerService

      public org.osgi.framework.ServiceRegistration<?> registerService(String[] clazzes, Object service, Dictionary<String,?> properties)
      Specified by:
      registerService in interface org.osgi.framework.BundleContext
      Overrides:
      registerService in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • removeServiceListener

      public void removeServiceListener(org.osgi.framework.ServiceListener listener)
      Specified by:
      removeServiceListener in interface org.osgi.framework.BundleContext
      Overrides:
      removeServiceListener in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • addServiceListener

      public final void addServiceListener(org.osgi.framework.ServiceListener listener, String filter)
      Specified by:
      addServiceListener in interface org.osgi.framework.BundleContext
      Overrides:
      addServiceListener in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • addServiceListener

      public final void addServiceListener(org.osgi.framework.ServiceListener listener)
      Specified by:
      addServiceListener in interface org.osgi.framework.BundleContext
      Overrides:
      addServiceListener in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • registerService

      public final <S> org.osgi.framework.ServiceRegistration<S> registerService(Class<S> clazz, S service, Dictionary<String,?> properties)
      Specified by:
      registerService in interface org.osgi.framework.BundleContext
      Overrides:
      registerService in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • getService

      public final <S> S getService(org.osgi.framework.ServiceReference<S> reference)
      Specified by:
      getService in interface org.osgi.framework.BundleContext
      Overrides:
      getService in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • getServiceObjects

      public <S> org.osgi.framework.ServiceObjects<S> getServiceObjects(org.osgi.framework.ServiceReference<S> reference)
      Specified by:
      getServiceObjects in interface org.osgi.framework.BundleContext
      Overrides:
      getServiceObjects in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • ungetService

      public final boolean ungetService(org.osgi.framework.ServiceReference<?> reference)
      Specified by:
      ungetService in interface org.osgi.framework.BundleContext
      Overrides:
      ungetService in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • getServiceReference

      public final org.osgi.framework.ServiceReference<?> getServiceReference(String clazz)
      Specified by:
      getServiceReference in interface org.osgi.framework.BundleContext
      Overrides:
      getServiceReference in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • getServiceReference

      public final <S> org.osgi.framework.ServiceReference<S> getServiceReference(Class<S> clazz)
      Specified by:
      getServiceReference in interface org.osgi.framework.BundleContext
      Overrides:
      getServiceReference in class org.eclipse.osgi.internal.framework.BundleContextImpl
    • getAllServiceReferences

      public final org.osgi.framework.ServiceReference<?>[] getAllServiceReferences(String clazz, String filter) throws org.osgi.framework.InvalidSyntaxException
      Specified by:
      getAllServiceReferences in interface org.osgi.framework.BundleContext
      Overrides:
      getAllServiceReferences in class org.eclipse.osgi.internal.framework.BundleContextImpl
      Throws:
      org.osgi.framework.InvalidSyntaxException
    • getServiceReferences

      public final org.osgi.framework.ServiceReference<?>[] getServiceReferences(String clazz, String filter) throws org.osgi.framework.InvalidSyntaxException
      Specified by:
      getServiceReferences in interface org.osgi.framework.BundleContext
      Overrides:
      getServiceReferences in class org.eclipse.osgi.internal.framework.BundleContextImpl
      Throws:
      org.osgi.framework.InvalidSyntaxException
    • getServiceReferences

      public final <S> Collection<org.osgi.framework.ServiceReference<S>> getServiceReferences(Class<S> clazz, String filter) throws org.osgi.framework.InvalidSyntaxException
      Specified by:
      getServiceReferences in interface org.osgi.framework.BundleContext
      Overrides:
      getServiceReferences in class org.eclipse.osgi.internal.framework.BundleContextImpl
      Throws:
      org.osgi.framework.InvalidSyntaxException
    • createFilter

      public final org.osgi.framework.Filter createFilter(String filter) throws org.osgi.framework.InvalidSyntaxException
      Specified by:
      createFilter in interface org.osgi.framework.BundleContext
      Overrides:
      createFilter in class org.eclipse.osgi.internal.framework.BundleContextImpl
      Throws:
      org.osgi.framework.InvalidSyntaxException