org.eclipse.osgi_3.8.2.v20130124-134944

Throwable
    //   0	138	138	finally
  }
  
  /* Error */
  public java.util.Map<ServiceRegistrationImpl<?>, ServiceUse<?>> getServicesInUseMap()
  {
    // Byte code:
    //   0: aload_0
    //   1: getfield 480	org/eclipse/osgi/framework/internal/core/BundleContextImpl:contextLock	Ljava/lang/Object;
    //   4: dup
    //   5: astore_1
    //   6: monitorenter
    //   7: aload_0
    //   8: getfield 481	org/eclipse/osgi/framework/internal/core/BundleContextImpl:servicesInUse	Ljava/util/HashMap;
    //   11: aload_1
    //   12: monitorexit
    //   13: areturn
    //   14: aload_1
    //   15: monitorexit
    //   16: athrow
    // Line number table:
    //   Java source line #804	-> byte code offset #0
    //   Java source line #805	-> byte code offset #7
    //   Java source line #804	-> byte code offset #14
    // Local variable table:
    //   start	length	slot	name	signature
    //   0	17	0	this	BundleContextImpl
    //   5	10	1	Ljava/lang/Object;	Object
    // Exception table:
    //   from	to	target	type
    //   7	13	14	finally
    //   14	16	14	finally
  }
  
  public void dispatchEvent(Object originalListener, Object l, int action, Object object)
  {
    AbstractBundle tmpBundle = bundle;
    Object previousTCCL = setContextFinder();
    try
    {
      if (isValid()) {
        switch (action)
        {
        case 1: 
        case 2: 
          BundleListener listener = (BundleListener)l;
          if (Debug.DEBUG_EVENTS)
          {
            String listenerName = listener.getClass().getName() + "@" + Integer.toHexString(System.identityHashCode(listener));
            Debug.println("dispatchBundleEvent[" + tmpBundle + "](" + listenerName + ")");
          }
          BundleEvent event = (BundleEvent)object;
          switch (event.getType())
          {
          case -2147483647: 
            if ((listener instanceof BatchBundleListener)) {
              ((BatchBundleListener)listener).batchBegin();
            }
            break;
          case -2147483648: 
            if ((listener instanceof BatchBundleListener)) {
              ((BatchBundleListener)listener).batchEnd();
            }
            break;
          default: 
            listener.bundleChanged((BundleEvent)object);
          }
          break;
        case 3: 
          ServiceEvent event = (ServiceEvent)object;
          
          ServiceListener listener = (ServiceListener)l;
          if (Debug.DEBUG_EVENTS)
          {
            String listenerName = listener.getClass().getName() + "@" + Integer.toHexString(System.identityHashCode(listener));
            Debug.println("dispatchServiceEvent[" + tmpBundle + "](" + listenerName + ")");
          }
          listener.serviceChanged(event);
          
          break;
        case 4: 
          FrameworkListener listener = (FrameworkListener)l;
          if (Debug.DEBUG_EVENTS)
          {
            String listenerName = listener.getClass().getName() + "@" + Integer.toHexString(System.identityHashCode(listener));
            Debug.println("dispatchFrameworkEvent[" + tmpBundle + "](" + listenerName + ")");
          }
          listener.frameworkEvent((FrameworkEvent)object);
          break;
        default: 
          throw new InternalError();
        }
      }
    }
    catch (Throwable t)
    {
      t = t;
      if (Debug.DEBUG_GENERAL)
      {
        Debug.println("Exception in bottom level event dispatcher: " + t.getMessage());
        Debug.printStackTrace(t);
      }
      framework.adaptor.handleRuntimeError(t);
      if (action == 4)
      {
        FrameworkEvent event = (FrameworkEvent)object;
        if (event.getType() == 2) {}
      }
      else
      {
        framework.publishFrameworkEvent(2, tmpBundle, t);
      }
      if (previousTCCL == Boolean.FALSE) {
        return;
      }
      Thread.currentThread().setContextClassLoader((ClassLoader)previousTCCL); return;
    }
    finally
    {
      localObject1 = 
      
        finally;
      if (previousTCCL != Boolean.FALSE) {
        Thread.currentThread().setContextClassLoader((ClassLoader)previousTCCL);
      }
      throw ((Throwable)localObject1);
    }
    if (previousTCCL != Boolean.FALSE) {
      Thread.currentThread().setContextClassLoader((ClassLoader)previousTCCL);
    }
  }
  
  public Filter createFilter(String filter)
    throws InvalidSyntaxException
  {
    checkValid();
    
    return FilterImpl.newInstance(filter);
  }
  
  public void checkValid()
  {
    if (!isValid()) {
      throw new IllegalStateException(Msg.BUNDLE_CONTEXT_INVALID_EXCEPTION);
    }
  }
  
  protected boolean isValid()
  {
    return valid;
  }
  
  public Framework getFramework()
  {
    return framework;
  }
  
  public <S> ServiceRegistration<S> registerService(Class<S> clazz, S service, Dictionary<String, ?> properties)
  {
    ServiceRegistration<S> registration = registerService(clazz.getName(), service, properties);
    return registration;
  }
  
  public <S> ServiceReference<S> getServiceReference(Class<S> clazz)
  {
    ServiceReference<S> reference = getServiceReference(clazz.getName());
    return reference;
  }
  
  public <S> Collection<ServiceReference<S>> getServiceReferences(Class<S> clazz, String filter)
    throws InvalidSyntaxException
  {
    ServiceReference[] refs = getServiceReferences(clazz.getName(), filter);
    if (refs == null)
    {
      Collection<ServiceReference<S>> empty = Collections.EMPTY_LIST;
      return empty;
    }
    List<ServiceReference<S>> result = new ArrayList(refs.length);
    ServiceReference[] arrayOfServiceReference1;
    int j = (arrayOfServiceReference1 = refs).length;
    for (int i = 0; i < j; i++)
    {
      ServiceReference<S> b = arrayOfServiceReference1[i];
      result.add(b);
    }
    return result;
  }
}

/* Location:
 * Qualified Name:     org.eclipse.osgi.framework.internal.core.BundleContextImpl
 * Java Class Version: 1.4 (48.0)
 * JD-Core Version:    0.7.1
 */
package org.eclipse.osgi.framework.internal.core;

import java.io.IOException;
import java.net.URL;
import java.util.Enumeration;
import org.eclipse.osgi.framework.adaptor.BundleData;
import org.eclipse.osgi.framework.debug.Debug;
import org.eclipse.osgi.internal.loader.BundleLoader;
import org.eclipse.osgi.internal.permadmin.SecurityAdmin;
import org.eclipse.osgi.util.NLS;
import org.osgi.framework.BundleException;
import org.osgi.framework.ServiceReference;

public class BundleFragment
  extends AbstractBundle
{
  protected BundleHost[] hosts;
  
  public BundleFragment(BundleData bundledata, Framework framework)
    throws BundleException
  {
    super(bundledata, framework);
    hosts = null;
  }
  
  protected void load()
  {
    if ((Debug.DEBUG_GENERAL) && 
      ((state & 0x2) == 0))
    {
      Debug.println("Bundle.load called when state != INSTALLED: " + this);
      Debug.printStackTrace(new Exception("Stack trace"));
    }
    if (framework.isActive())
    {
      SecurityManager sm = System.getSecurityManager();
      if ((sm != null) && (framework.securityAdmin != null)) {
        domain = framework.securityAdmin.createProtectionDomain(this);
      }
    }
  }
  
  protected boolean reload(AbstractBundle newBundle)
  {
    if ((Debug.DEBUG_GENERAL) && 
      ((state & 0x6) == 0))
    {
      Debug.println("Bundle.reload called when state != INSTALLED | RESOLVED: " + this);
      Debug.printStackTrace(new Exception("Stack trace"));
    }
    boolean exporting = false;
    if (framework.isActive())
    {
      if ((hosts != null) && 
        (state == 4))
      {
        exporting = true;
        hosts = null;
        state = 2;
      }
    }
    else {
      try
      {
        bundledata.close();
      }
      catch (IOException localIOException1) {}
    }
    if (!exporting) {
      try
      {
        bundledata.close();
      }
      catch (IOException localIOException2) {}
    }
    bundledata = bundledata;
    bundledata.setBundle(this);
    if ((framework.isActive()) && (System.getSecurityManager() != null) && (framework.securityAdmin != null)) {
      domain = framework.securityAdmin.createProtectionDomain(this);
    }
    return exporting;
  }
  
  protected void refresh()
  {
    if ((Debug.DEBUG_GENERAL) && 
      ((state & 0x7) == 0))
    {
      Debug.println("Bundle.refresh called when state != UNINSTALLED | INSTALLED | RESOLVED: " + this);
      Debug.printStackTrace(new Exception("Stack trace"));
    }
    if (state == 4)
    {
      hosts = null;
      state = 2;
    }
    manifestLocalization = null;
  }
  
  protected boolean unload()
  {
    if ((Debug.DEBUG_GENERAL) && 
      ((state & 0x7) == 0))
    {
      Debug.println("Bundle.unload called when state != UNINSTALLED | INSTALLED | RESOLVED: " + this);
      Debug.printStackTrace(new Exception("Stack trace"));
    }
    boolean exporting = false;
    if ((framework.isActive()) && 
      (hosts != null))
    {
      if (state == 4)
      {
        exporting = true;
        hosts = null;
        state = 2;
      }
      domain = null;
    }
    if (!exporting) {
      try
      {
        bundledata.close();
      }
      catch (IOException localIOException) {}
    }
    return exporting;
  }
  
  protected Class<?> loadClass(String name, boolean checkPermission)
    throws ClassNotFoundException
  {
    if (checkPermission)
    {
      try
      {
        framework.checkAdminPermission(this, "class");
      }
      catch (SecurityException e)
      {
        throw new ClassNotFoundException(name, e);
      }
      checkValid();
    }
    throw new ClassNotFoundException(NLS.bind(Msg.BUNDLE_FRAGMENT_CNFE, name));
  }
  
  public URL getResource(String name)
  {
    checkValid();
    
    return null;
  }
  
  public Enumeration<URL> getResources(String name)
  {
    checkValid();
    
    return null;
  }
  
  protected void startWorker(int options)
    throws BundleException
  {
    throw new BundleException(NLS.bind(Msg.BUNDLE_FRAGMENT_START, this), 2);
  }
  
  protected void stopWorker(int options)
    throws BundleException
  {
    throw new BundleException(NLS.bind(Msg.BUNDLE_FRAGMENT_STOP, this), 2);
  }
  
  public ServiceReference<?>[] getRegisteredServices()
  {
    checkValid();
    
    return null;
  }
  
  public ServiceReference<?>[] getServicesInUse()
  {
    checkValid();
    
    return null;
  }
  
  synchronized BundleHost[] getHosts()
  {
    return hosts;
  }
  
  protected boolean isFragment()
  {
    return true;
  }
  
  boolean addHost(BundleHost host)
  {
    if (host == null) {
      return false;
    }
    try
    {
      host.attachFragment(this);
    }
    catch (BundleException be)
    {
      framework.publishFrameworkEvent(2, host, be);
      return false;
    }
    synchronized (this)
    {
      if (hosts == null)
      {
        hosts = new BundleHost[] { host };
        return true;
      }
      for (int i = 0; i < hosts.length; i++) {
        if (host == hosts[i]) {
          return true;
        }
      }
      BundleHost[] newHosts = new BundleHost[hosts.length + 1];
      System.arraycopy(hosts, 0, newHosts, 0, hosts.length);
      newHosts[(newHosts.length - 1)] = host;
      hosts = newHosts;
    }
    return true;
  }
  
  protected BundleLoader getBundleLoader()
  {
    return null;
  }
  
  protected BundleContextImpl getContext()
  {
    return null;
  }
}

/* Location:
 * Qualified Name:     org.eclipse.osgi.framework.internal.core.BundleFragment
 * Java Class Version: 1.4 (48.0)
 * JD-Core Version:    0.7.1
 */
package org.eclipse.osgi.framework.internal.core;

import java.io.IOException;
import java.net.URL;
import java.util.Enumeration;
import org.eclipse.osgi.framework.adaptor.BundleClassLoader;
import org.eclipse.osgi.framework.adaptor.BundleData;
import org.eclipse.osgi.framework.adaptor.FrameworkAdaptor;
import org.eclipse.osgi.framework.adaptor.StatusException;
import org.eclipse.osgi.framework.debug.Debug;
import org.eclipse.osgi.framework.log.FrameworkLog;
import org.eclipse.osgi.framework.log.FrameworkLogEntry;
import org.eclipse.osgi.internal.loader.BundleLoader;
import org.eclipse.osgi.internal.loader.BundleLoaderProxy;
import org.eclipse.osgi.internal.permadmin.SecurityAdmin;
import org.eclipse.osgi.internal.serviceregistry.ServiceRegistry;
import org.eclipse.osgi.service.resolver.BundleDescription;
import org.eclipse.osgi.service.resolver.State;
import org.eclipse.osgi.util.NLS;
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleException;
import org.osgi.framework.ServiceReference;

public class BundleHost
  extends AbstractBundle
{
  public static final int LAZY_TRIGGER = 1073741824;
  private BundleLoaderProxy proxy;
  protected BundleContextImpl context;
  protected BundleFragment[] fragments;
  
  public BundleHost(BundleData bundledata, Framework framework)
  {
    super(bundledata, framework);
    context = null;
    fragments = null;
  }
  
  protected void load()
  {
    if (Debug.DEBUG_GENERAL)
    {
      if ((state & 0x2) == 0)
      {
        Debug.println("Bundle.load called when state != INSTALLED: " + this);
        Debug.printStackTrace(new Exception("Stack trace"));
      }
      if (proxy != null)
      {
        Debug.println("Bundle.load called when proxy != null: " + this);
        Debug.printStackTrace(new Exception("Stack trace"));
      }
    }
    if (framework.isActive())
    {
      SecurityManager sm = System.getSecurityManager();
      if ((sm != null) && (framework.securityAdmin != null)) {
        domain = framework.securityAdmin.createProtectionDomain(this);
      }
    }
    proxy = null;
  }
  
  protected boolean reload(AbstractBundle newBundle)
  {
    if ((Debug.DEBUG_GENERAL) && 
      ((state & 0x6) == 0))
    {
      Debug.println("Bundle.reload called when state != INSTALLED | RESOLVED: " + this);
      Debug.printStackTrace(new Exception("Stack trace"));
    }
    boolean exporting = false;
    if (framework.isActive())
    {
      if (state == 4)
      {
        BundleLoaderProxy curProxy = getLoaderProxy();
        exporting = curProxy.inUse();
        if (exporting) {
          curProxy.getBundleLoader().createClassLoader();
        } else {
          BundleLoader.closeBundleLoader(proxy);
        }
        state = 2;
        proxy = null;
        fragments = null;
      }
    }
    else {
      try
      {
        bundledata.close();
      }
      catch (IOException localIOException) {}
    }
    bundledata = bundledata;
    bundledata.setBundle(this);
    if ((framework.isActive()) && (System.getSecurityManager() != null) && (framework.securityAdmin != null)) {
      domain = framework.securityAdmin.createProtectionDomain(this);
    }
    return exporting;
  }
  
  protected void refresh()
  {
    if ((Debug.DEBUG_GENERAL) && 
      ((state & 0x7) == 0))
    {
      Debug.println("Bundle.reload called when state != UNINSTALLED | INSTALLED | RESOLVED: " + this);
      Debug.printStackTrace(new Exception("Stack trace"));
    }
    if (state == 4)
    {
      BundleLoader.closeBundleLoader(proxy);
      proxy = null;
      fragments = null;
      state = 2;
    }
    manifestLocalization = null;
  }
  
  protected boolean unload()
  {
    if ((Debug.DEBUG_GENERAL) && 
      ((state & 0x7) == 0))
    {
      Debug.println("Bundle.unload called when state != UNINSTALLED | INSTALLED | RESOLVED: " + this);
      Debug.printStackTrace(new Exception("Stack trace"));
    }
    boolean exporting = false;
    if ((framework.isActive()) && 
      (state == 4))
    {
      BundleLoaderProxy curProxy = getLoaderProxy();
      exporting = curProxy.inUse();
      if (exporting) {
        curProxy.getBundleLoader().createClassLoader();
      } else {
        BundleLoader.closeBundleLoader(proxy);
      }
      state = 2;
      proxy = null;
      fragments = null;
      domain = null;
    }
    if (!exporting) {
      try
      {
        bundledata.close();
      }
      catch (IOException localIOException) {}
    }
    return exporting;
  }
  
  private BundleLoader checkLoader()
  {
    checkValid();
    if (!isResolved()) {
      if (!framework.packageAdmin.resolveBundles(new Bundle[] { this })) {
        return null;
      }
    }
    if ((Debug.DEBUG_GENERAL) && 
      ((state & 0x3C) == 0))
    {
      Debug.println("Bundle.checkLoader() called when state != STARTING | ACTIVE | STOPPING | RESOLVED: " + this);
      Debug.printStackTrace(new Exception("Stack trace"));
    }
    BundleLoader loader = getBundleLoader();
    if (loader == null)
    {
      if (Debug.DEBUG_GENERAL)
      {
        Debug.println("Bundle.checkLoader() called when loader == null: " + this);
        Debug.printStackTrace(new Exception("Stack trace"));
      }
      return null;
    }
    return loader;
  }
  
  protected Class<?> loadClass(String name, boolean checkPermission)
    throws ClassNotFoundException
  {
    if (checkPermission) {
      try
      {
        framework.checkAdminPermission(this, "class");
      }
      catch (SecurityException e)
      {
        throw new ClassNotFoundException(name, e);
      }
    }
    BundleLoader loader = checkLoader();
    if (loader == null) {
      throw new ClassNotFoundException(NLS.bind(Msg.BUNDLE_CNFE_NOT_RESOLVED, name, getBundleData().getLocation()));
    }
    try
    {
      return loader.loadClass(name);
    }
    catch (ClassNotFoundException e)
    {
      if ((!(e instanceof StatusException)) && ((bundledata.getStatus() & 0x2) != 0) && (!testStateChanging(Thread.currentThread()))) {
        try
        {
          loader.setLazyTrigger();
        }
        catch (BundleException be)
        {
          framework.adaptor.getFrameworkLog().log(new FrameworkLogEntry("org.eclipse.osgi", 2, 0, be.getMessage(), 0, be, null));
        }
      }
      throw e;
    }
  }
  
  public URL getResource(String name)
  {
    BundleLoader loader = null;
    try
    {
      framework.checkAdminPermission(this, "resource");
    }
    catch (SecurityException localSecurityException)
    {
      return null;
    }
    loader = checkLoader();
    if (loader == null)
    {
      Enumeration<URL> result = bundledata.findLocalResources(name);
      if ((result != null) && (result.hasMoreElements())) {
        return (URL)result.nextElement();
      }
      return null;
    }
    return loader.findResource(name);
  }
  
  public Enumeration<URL> getResources(String name)
    throws IOException
  {
    BundleLoader loader = null;
    try
    {
      framework.checkAdminPermission(this, "resource");
    }
    catch (SecurityException localSecurityException)
    {
      return null;
    }
    loader = checkLoader();
    Enumeration<URL> result;
    Enumeration<URL> result;
    if (loader == null) {
      result = bundledata.findLocalResources(name);
    } else {
      result = loader.getResources(name);
    }
    if ((result != null) && (result.hasMoreElements())) {
      return result;
    }
    return null;
  }
  
  /* Error */
  protected void startWorker(int options)
    throws BundleException
  {
    // Byte code:
    //   0: iload_1
    //   1: iconst_1
    //   2: iand
    //   3: ifne +61 -> 64
    //   6: aload_0
    //   7: iconst_1
    //   8: iconst_1
    //   9: invokevirtual 509	org/eclipse/osgi/framework/internal/core/BundleHost:setStatus	(IZ)V
    //   12: aload_0
    //   13: iconst_4
    //   14: iload_1
    //   15: iconst_2
    //   16: iand
    //   17: ifeq +7 -> 24
    //   20: iconst_1
    //   21: goto +4 -> 25
    //   24: iconst_0
    //   25: invokevirtual 509	org/eclipse/osgi/framework/internal/core/BundleHost:setStatus	(IZ)V
    //   28: getstatic 451	org/eclipse/osgi/framework/debug/Debug:MONITOR_ACTIVATION	Z
    //   31: ifeq +33 -> 64
    //   34: new 219	java/lang/Exception
    //   37: dup
    //   38: new 224	java/lang/StringBuffer
    //   41: dup
    //   42: ldc_w 207
    //   45: invokespecial 480	java/lang/StringBuffer:<init>	(Ljava/lang/String;)V
    //   48: aload_0
    //   49: invokevirtual 512	org/eclipse/osgi/framework/internal/core/BundleHost:getBundleData	()Lorg/eclipse/osgi/framework/adaptor/BundleData;
    //   52: invokevirtual 483	java/lang/StringBuffer:append	(Ljava/lang/Object;)Ljava/lang/StringBuffer;
    //   55: invokevirtual 479	java/lang/StringBuffer:toString	()Ljava/lang/String;
    //   58: invokespecial 476	java/lang/Exception:<init>	(Ljava/lang/String;)V
    //   61: invokevirtual 475	java/lang/Exception:printStackTrace	()V
    //   64: aload_0
    //   65: getfield 459	org/eclipse/osgi/framework/internal/core/BundleHost:framework	Lorg/eclipse/osgi/framework/internal/core/Framework;
    //   68: getfield 462	org/eclipse/osgi/framework/internal/core/Framework:active	Z
    //   71: ifeq +13 -> 84
    //   74: aload_0
    //   75: getfield 454	org/eclipse/osgi/framework/internal/core/BundleHost:state	I
    //   78: bipush 32
    //   80: iand
    //   81: ifeq +4 -> 85
    //   84: return
    //   85: aload_0
    //   86: invokevirtual 500	org/eclipse/osgi/framework/internal/core/BundleHost:getInternalStartLevel	()I
    //   89: aload_0
    //   90: getfield 459	org/eclipse/osgi/framework/internal/core/BundleHost:framework	Lorg/eclipse/osgi/framework/internal/core/Framework;
    //   93: getfield 466	org/eclipse/osgi/framework/internal/core/Framework:startLevelManager	Lorg/eclipse/osgi/framework/internal/core/StartLevelManager;
    //   96: invokevirtual 527	org/eclipse/osgi/framework/internal/core/StartLevelManager:getStartLevel	()I
    //   99: if_icmple +46 -> 145
    //   102: iload_1
    //   103: ldc 1
    //   105: iand
    //   106: ifne +38 -> 144
    //   109: iload_1
    //   110: iconst_1
    //   111: iand
    //   112: ifeq +32 -> 144
    //   115: getstatic 470	org/eclipse/osgi/framework/internal/core/Msg:BUNDLE_TRANSIENT_START_ERROR	Ljava/lang/String;
    //   118: aload_0
    //   119: invokestatic 545	org/eclipse/osgi/util/NLS:bind	(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
    //   122: astore_2
    //   123: new 254	org/osgi/framework/BundleException
    //   126: dup
    //   127: aload_2
    //   128: iconst_2
    //   129: new 235	org/eclipse/osgi/framework/internal/core/AbstractBundle$BundleStatusException
    //   132: dup
    //   133: aload_0
    //   134: aload_2
    //   135: iconst_4
    //   136: aload_0
    //   137: invokespecial 492	org/eclipse/osgi/framework/internal/core/AbstractBundle$BundleStatusException:<init>	(Lorg/eclipse/osgi/framework/internal/core/AbstractBundle;Ljava/lang/String;ILjava/lang/Object;)V
    //   140: invokespecial 549	org/osgi/framework/BundleException:<init>	(Ljava/lang/String;ILjava/lang/Throwable;)V
    //   143: athrow
    //   144: return
    //   145: aload_0
    //   146: getfield 454	org/eclipse/osgi/framework/internal/core/BundleHost:state	I
    //   149: iconst_2
    //   150: if_icmpne +62 -> 212
    //   153: aload_0
    //   154: getfield 459	org/eclipse/osgi/framework/internal/core/BundleHost:framework	Lorg/eclipse/osgi/framework/internal/core/Framework;
    //   157: getfield 465	org/eclipse/osgi/framework/internal/core/Framework:packageAdmin	Lorg/eclipse/osgi/framework/internal/core/PackageAdminImpl;
    //   160: iconst_1
    //   161: anewarray 253	org/osgi/framework/Bundle
    //   164: dup
    //   165: iconst_0
    //   166: aload_0
    //   167: aastore
    //   168: iconst_1
    //   169: invokevirtual 526	org/eclipse/osgi/framework/internal/core/PackageAdminImpl:resolveBundles	([Lorg/osgi/framework/Bundle;Z)Z
    //   172: ifne +40 -> 212
    //   175: aload_0
    //   176: invokevirtual 519	org/eclipse/osgi/framework/internal/core/BundleHost:getResolutionFailureException	()Lorg/osgi/framework/BundleException;
    //   179: athrow
    //   180: astore_2
    //   181: new 254	org/osgi/framework/BundleException
    //   184: dup
    //   185: ldc_w 211
    //   188: iconst_4
    //   189: aload_2
    //   190: invokespecial 549	org/osgi/framework/BundleException:<init>	(Ljava/lang/String;ILjava/lang/Throwable;)V
    //   193: athrow
    //   194: astore_2
    //   195: new 254	org/osgi/framework/BundleException
    //   198: dup
    //   199: ldc_w 211
    //   202: bipush 12
    //   204: aload_2
    //   205: invokevirtual 544	org/eclipse/osgi/service/resolver/ResolverHookException:getCause	()Ljava/lang/Throwable;
    //   208: invokespecial 549	org/osgi/framework/BundleException:<init>	(Ljava/lang/String;ILjava/lang/Throwable;)V
    //   211: athrow
    //   212: iload_1
    //   213: iconst_2
    //   214: iand
    //   215: ifeq +48 -> 263
    //   218: aload_0
    //   219: getfield 455	org/eclipse/osgi/framework/internal/core/BundleHost:bundledata	Lorg/eclipse/osgi/framework/adaptor/BundleData;
    //   222: invokeinterface 552 1 0
    //   227: iconst_2
    //   228: iand
    //   229: ifeq +34 -> 263
    //   232: aload_0
    //   233: getfield 454	org/eclipse/osgi/framework/internal/core/BundleHost:state	I
    //   236: iconst_4
    //   237: iand
    //   238: ifeq +24 -> 262
    //   241: aload_0
    //   242: bipush 8
    //   244: putfield 454	org/eclipse/osgi/framework/internal/core/BundleHost:state	I
    //   247: aload_0
    //   248: invokevirtual 504	org/eclipse/osgi/framework/internal/core/BundleHost:completeStateChange	()V
    //   251: aload_0
    //   252: getfield 459	org/eclipse/osgi/framework/internal/core/BundleHost:framework	Lorg/eclipse/osgi/framework/internal/core/Framework;
    //   255: sipush 512
    //   258: aload_0
    //   259: invokevirtual 523	org/eclipse/osgi/framework/internal/core/Framework:publishBundleEvent	(ILorg/osgi/framework/Bundle;)V
    //   262: return
    //   263: getstatic 450	org/eclipse/osgi/framework/debug/Debug:DEBUG_GENERAL	Z
    //   266: ifeq +58 -> 324
    //   269: new 224	java/lang/StringBuffer
    //   272: dup
    //   273: ldc_w 208
    //   276: invokespecial 480	java/lang/StringBuffer:<init>	(Ljava/lang/String;)V
    //   279: aload_0
    //   280: getfield 459	org/eclipse/osgi/framework/internal/core/BundleHost:framework	Lorg/eclipse/osgi/framework/internal/core/Framework;
    //   283: getfield 466	org/eclipse/osgi/framework/internal/core/Framework:startLevelManager	Lorg/eclipse/osgi/framework/internal/core/StartLevelManager;
    //   286: invokevirtual 527	org/eclipse/osgi/framework/internal/core/StartLevelManager:getStartLevel	()I
    //   289: invokevirtual 481	java/lang/StringBuffer:append	(I)Ljava/lang/StringBuffer;
    //   292: ldc_w 206
    //   295: invokevirtual 484	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   298: aload_0
    //   299: invokevirtual 501	org/eclipse/osgi/framework/internal/core/BundleHost:getBundleId	()J
    //   302: invokevirtual 482	java/lang/StringBuffer:append	(J)Ljava/lang/StringBuffer;
    //   305: ldc_w 203
    //   308: invokevirtual 484	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   311: aload_0
    //   312: invokevirtual 500	org/eclipse/osgi/framework/internal/core/BundleHost:getInternalStartLevel	()I
    //   315: invokevirtual 481	java/lang/StringBuffer:append	(I)Ljava/lang/StringBuffer;
    //   318: invokevirtual 479	java/lang/StringBuffer:toString	()Ljava/lang/String;
    //   321: invokestatic 489	org/eclipse/osgi/framework/debug/Debug:println	(Ljava/lang/String;)V
    //   324: iload_1
    //   325: ldc 1
    //   327: iand
    //   328: ifeq +47 -> 375
    //   331: aload_0
    //   332: getfield 454	org/eclipse/osgi/framework/internal/core/BundleHost:state	I
    //   335: iconst_4
    //   336: iand
    //   337: ifeq +38 -> 375
    //   340: aload_0
    //   341: bipush 8
    //   343: putfield 454	org/eclipse/osgi/framework/internal/core/BundleHost:state	I
    //   346: aload_0
    //   347: invokevirtual 504	org/eclipse/osgi/framework/internal/core/BundleHost:completeStateChange	()V
    //   350: aload_0
    //   351: getfield 459	org/eclipse/osgi/framework/internal/core/BundleHost:framework	Lorg/eclipse/osgi/framework/internal/core/Framework;
    //   354: sipush 512
    //   357: aload_0
    //   358: invokevirtual 523	org/eclipse/osgi/framework/internal/core/Framework:publishBundleEvent	(ILorg/osgi/framework/Bundle;)V
    //   361: aload_0
    //   362: invokevirtual 502	org/eclipse/osgi/framework/internal/core/BundleHost:beginStateChange	()V
    //   365: aload_0
    //   366: getfield 454	org/eclipse/osgi/framework/internal/core/BundleHost:state	I
    //   369: bipush 8
    //   371: if_icmpeq +4 -> 375
    //   374: return
    //   375: aload_0
    //   376: bipush 8
    //   378: putfield 454	org/eclipse/osgi/framework/internal/core/BundleHost:state	I
    //   381: aload_0
    //   382: getfield 459	org/eclipse/osgi/framework/internal/core/BundleHost:framework	Lorg/eclipse/osgi/framework/internal/core/Framework;
    //   385: sipush 128
    //   388: aload_0
    //   389: invokevirtual 523	org/eclipse/osgi/framework/internal/core/Framework:publishBundleEvent	(ILorg/osgi/framework/Bundle;)V
    //   392: aload_0
    //   393: aload_0
    //   394: invokevirtual 514	org/eclipse/osgi/framework/internal/core/BundleHost:getContext	()Lorg/eclipse/osgi/framework/internal/core/BundleContextImpl;
    //   397: putfield 457	org/eclipse/osgi/framework/internal/core/BundleHost:context	Lorg/eclipse/osgi/framework/internal/core/BundleContextImpl;
    //   400: lconst_0
    //   401: lstore_2
    //   402: aload_0
    //   403: getfield 459	org/eclipse/osgi/framework/internal/core/BundleHost:framework	Lorg/eclipse/osgi/framework/internal/core/Framework;
    //   406: getfield 463	org/eclipse/osgi/framework/internal/core/Framework:adaptor	Lorg/eclipse/osgi/framework/adaptor/FrameworkAdaptor;
    //   409: invokeinterface 558 1 0
    //   414: astore 4
    //   416: aload 4
    //   418: ifnull +12 -> 430
    //   421: aload 4
    //   423: aload_0
    //   424: iconst_4
    //   425: invokeinterface 557 3 0
    //   430: getstatic 449	org/eclipse/osgi/framework/debug/Debug:DEBUG_BUNDLE_TIME	Z
    //   433: ifeq +33 -> 466
    //   436: invokestatic 485	java/lang/System:currentTimeMillis	()J
    //   439: lstore_2
    //   440: getstatic 448	java/lang/System:out	Ljava/io/PrintStream;
    //   443: new 224	java/lang/StringBuffer
    //   446: dup
    //   447: ldc_w 210
    //   450: invokespecial 480	java/lang/StringBuffer:<init>	(Ljava/lang/String;)V
    //   453: aload_0
    //   454: invokevirtual 511	org/eclipse/osgi/framework/internal/core/BundleHost:getSymbolicName	()Ljava/lang/String;
    //   457: invokevirtual 484	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   460: invokevirtual 479	java/lang/StringBuffer:toString	()Ljava/lang/String;
    //   463: invokevirtual 472	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   466: aload_0
    //   467: getfield 457	org/eclipse/osgi/framework/internal/core/BundleHost:context	Lorg/eclipse/osgi/framework/internal/core/BundleContextImpl;
    //   470: invokevirtual 494	org/eclipse/osgi/framework/internal/core/BundleContextImpl:start	()V
    //   473: aload_0
    //   474: invokevirtual 505	org/eclipse/osgi/framework/internal/core/BundleHost:startHook	()V
    //   477: aload_0
    //   478: getfield 459	org/eclipse/osgi/framework/internal/core/BundleHost:framework	Lorg/eclipse/osgi/framework/internal/core/Framework;
    //   481: getfield 462	org/eclipse/osgi/framework/internal/core/Framework:active	Z
    //   484: ifeq +169 -> 653
    //   487: aload_0
    //   488: bipush 32
    //   490: putfield 454	org/eclipse/osgi/framework/internal/core/BundleHost:state	I
    //   493: getstatic 450	org/eclipse/osgi/framework/debug/Debug:DEBUG_GENERAL	Z
    //   496: ifeq +23 -> 519
    //   499: new 224	java/lang/StringBuffer
    //   502: dup
    //   503: ldc_w 204
    //   506: invokespecial 480	java/lang/StringBuffer:<init>	(Ljava/lang/String;)V
    //   509: aload_0
    //   510: invokevirtual 483	java/lang/StringBuffer:append	(Ljava/lang/Object;)Ljava/lang/StringBuffer;
    //   513: invokevirtual 479	java/lang/StringBuffer:toString	()Ljava/lang/String;
    //   516: invokestatic 489	org/eclipse/osgi/framework/debug/Debug:println	(Ljava/lang/String;)V
    //   519: aload_0
    //   520: invokevirtual 504	org/eclipse/osgi/framework/internal/core/BundleHost:completeStateChange	()V
    //   523: aload_0
    //   524: getfield 459	org/eclipse/osgi/framework/internal/core/BundleHost:framework	Lorg/eclipse/osgi/framework/internal/core/Framework;
    //   527: iconst_2
    //   528: aload_0
    //   529: invokevirtual 523	org/eclipse/osgi/framework/internal/core/Framework:publishBundleEvent	(ILorg/osgi/framework/Bundle;)V
    //   532: goto +121 -> 653
    //   535: astore 5
    //   537: aload_0
    //   538: bipush 16
    //   540: putfield 454	org/eclipse/osgi/framework/internal/core/BundleHost:state	I
    //   543: aload_0
    //   544: getfield 459	org/eclipse/osgi/framework/internal/core/BundleHost:framework	Lorg/eclipse/osgi/framework/internal/core/Framework;
    //   547: sipush 256
    //   550: aload_0
    //   551: invokevirtual 523	org/eclipse/osgi/framework/internal/core/Framework:publishBundleEvent	(ILorg/osgi/framework/Bundle;)V
    //   554: aload_0
    //   555: invokevirtual 506	org/eclipse/osgi/framework/internal/core/BundleHost:stopHook	()V
    //   558: aload_0
    //   559: getfield 457	org/eclipse/osgi/framework/internal/core/BundleHost:context	Lorg/eclipse/osgi/framework/internal/core/BundleContextImpl;
    //   562: invokevirtual 493	org/eclipse/osgi/framework/internal/core/BundleContextImpl:close	()V
    //   565: aload_0
    //   566: aconst_null
    //   567: putfield 457	org/eclipse/osgi/framework/internal/core/BundleHost:context	Lorg/eclipse/osgi/framework/internal/core/BundleContextImpl;
    //   570: aload_0
    //   571: iconst_4
    //   572: putfield 454	org/eclipse/osgi/framework/internal/core/BundleHost:state	I
    //   575: aload_0
    //   576: getfield 459	org/eclipse/osgi/framework/internal/core/BundleHost:framework	Lorg/eclipse/osgi/framework/internal/core/Framework;
    //   579: iconst_4
    //   580: aload_0
    //   581: invokevirtual 523	org/eclipse/osgi/framework/internal/core/Framework:publishBundleEvent	(ILorg/osgi/framework/Bundle;)V
    //   584: aload 5
    //   586: athrow
    //   587: astore 6
    //   589: aload 4
    //   591: ifnull +13 -> 604
    //   594: aload 4
    //   596: aload_0
    //   597: bipush 8
    //   599: invokeinterface 557 3 0
    //   604: getstatic 449	org/eclipse/osgi/framework/debug/Debug:DEBUG_BUNDLE_TIME	Z
    //   607: ifeq +43 -> 650
    //   610: getstatic 448	java/lang/System:out	Ljava/io/PrintStream;
    //   613: new 224	java/lang/StringBuffer
    //   616: dup
    //   617: ldc_w 209
    //   620: invokespecial 480	java/lang/StringBuffer:<init>	(Ljava/lang/String;)V
    //   623: aload_0
    //   624: invokevirtual 511	org/eclipse/osgi/framework/internal/core/BundleHost:getSymbolicName	()Ljava/lang/String;
    //   627: invokevirtual 484	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   630: ldc_w 202
    //   633: invokevirtual 484	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   636: invokestatic 485	java/lang/System:currentTimeMillis	()J
    //   639: lload_2
    //   640: lsub
    //   641: invokevirtual 482	java/lang/StringBuffer:append	(J)Ljava/lang/StringBuffer;
    //   644: invokevirtual 479	java/lang/StringBuffer:toString	()Ljava/lang/String;
    //   647: invokevirtual 472	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   650: aload 6
    //   652: athrow
    //   653: aload 4
    //   655: ifnull +13 -> 668
    //   658: aload 4
    //   660: aload_0
    //   661: bipush 8
    //   663: invokeinterface 557 3 0
    //   668: getstatic 449	org/eclipse/osgi/framework/debug/Debug:DEBUG_BUNDLE_TIME	Z
    //   671: ifeq +43 -> 714
    //   674: getstatic 448	java/lang/System:out	Ljava/io/PrintStream;
    //   677: new 224	java/lang/StringBuffer
    //   680: dup
    //   681: ldc_w 209
    //   684: invokespecial 480	java/lang/StringBuffer:<init>	(Ljava/lang/String;)V
    //   687: aload_0
    //   688: invokevirtual 511	org/eclipse/osgi/framework/internal/core/BundleHost:getSymbolicName	()Ljava/lang/String;
    //   691: invokevirtual 484	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   694: ldc_w 202
    //   697: invokevirtual 484	java/lang/StringBuffer:append	(Ljava/lang/String;)Ljava/lang/StringBuffer;
    //   700: invokestatic 485	java/lang/System:currentTimeMillis	()J
    //   703: lload_2
    //   704: lsub
    //   705: invokevirtual 482	java/lang/StringBuffer:append	(J)Ljava/lang/StringBuffer;
    //   708: invokevirtual 479	java/lang/StringBuffer:toString	()Ljava/lang/String;
    //   711: invokevirtual 472	java/io/PrintStream:println	(Ljava/lang/String;)V
    //   714: aload_0
    //   715: getfield 454	org/eclipse/osgi/framework/internal/core/BundleHost:state	I
    //   718: iconst_1
    //   719: if_icmpne +40 -> 759
    //   722: aload_0
    //   723: getfield 457	org/eclipse/osgi/framework/internal/core/BundleHost:context	Lorg/eclipse/osgi/framework/internal/core/BundleContextImpl;
    //   726: invokevirtual 493	org/eclipse/osgi/framework/internal/core/BundleContextImpl:close	()V
    //   729: aload_0
    //   730: aconst_null
    //   731: putfield 457	org/eclipse/osgi/framework/internal/core/BundleHost:context	Lorg/eclipse/osgi/framework/internal/core/BundleContextImpl;
    //   734: new 254	org/osgi/framework/BundleException
    //   737: dup
    //   738: getstatic 471	org/eclipse/osgi/framework/internal/core/Msg:BUNDLE_UNINSTALLED_EXCEPTION	Ljava/lang/String;
    //   741: aload_0
    //   742: invokevirtual 512	org/eclipse/osgi/framework/internal/core/BundleHost:getBundleData	()Lorg/eclipse/osgi/framework/adaptor/BundleData;
    //   745: invokeinterface 554 1 0
    //   750: invokestatic 545	org/eclipse/osgi/util/NLS:bind	(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
    //   753: bipush 7
    //   755: invokespecial 548	org/osgi/framework/BundleException:<init>	(Ljava/lang/String;I)V
    //   758: athrow
    //   759: return
    // Line number table:
    //   Java source line #302	-> byte code offset #0
    //   Java source line #303	-> byte code offset #6
    //   Java source line #304	-> byte code offset #12
    //   Java source line #305	-> byte code offset #28
    //   Java source line #306	-> byte code offset #34
    //   Java source line #308	-> byte code offset #64
    //   Java source line #309	-> byte code offset #84
    //   Java source line #310	-> byte code offset #85
    //   Java source line #311	-> byte code offset #102
    //   Java source line #313	-> byte code offset #115
    //   Java source line #315	-> byte code offset #123
    //   Java source line #317	-> byte code offset #144
    //   Java source line #320	-> byte code offset #145
    //   Java source line #322	-> byte code offset #153
    //   Java source line #323	-> byte code offset #175
    //   Java source line #324	-> byte code offset #180
    //   Java source line #326	-> byte code offset #181
    //   Java source line #327	-> byte code offset #194
    //   Java source line #328	-> byte code offset #195
    //   Java source line #333	-> byte code offset #212
    //   Java source line #335	-> byte code offset #232
    //   Java source line #337	-> byte code offset #241
    //   Java source line #339	-> byte code offset #247
    //   Java source line #340	-> byte code offset #251
    //   Java source line #342	-> byte code offset #262
    //   Java source line #345	-> byte code offset #263
    //   Java source line #346	-> byte code offset #269
    //   Java source line #349	-> byte code offset #324
    //   Java source line #350	-> byte code offset #331
    //   Java source line #353	-> byte code offset #340
    //   Java source line #355	-> byte code offset #346
    //   Java source line #356	-> byte code offset #350
    //   Java source line #35
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87

Further reading...

For more information on Java 1.5 Tiger, you may find Java 1.5 Tiger, A developer's Notebook by D. Flanagan and B. McLaughlin from O'Reilly of interest.

New!JAR listings


Copyright 2006-2019. Infinite Loop Ltd