Package org.osgi.service.packageadmin

Examples of org.osgi.service.packageadmin.PackageAdmin


                    for (ServiceName serviceName : resolvableServices) {
                        ServiceController<?> requiredService = serviceContainer.getRequiredService(serviceName);
                        resolvableBundles.add((Bundle) requiredService.getValue());
                    }
                    Bundle[] bundleArr = resolvableBundles.toArray(new Bundle[resolvableBundles.size()]);
                    PackageAdmin packageAdmin = injectedPackageAdmin.getValue();
                    packageAdmin.resolveBundles(bundleArr);
                    // Start the resolvable bundles one-by-one
                    for (ServiceName serviceName : resolvableServices) {
                        OSGiCapability moduleMetaData = installedServices.get(serviceName);
                        startBundle(serviceContainer, serviceName, moduleMetaData);
                    }
View Full Code Here


                        bundlesToStart = new HashMap<ServiceName, Tuple>(startedServices);
                        startedServices.clear();
                    }
                }
                if (bundlesToStart != null) {
                    PackageAdmin packageAdmin = injectedPackageAdmin.getValue();
                    for (Tuple tuple : bundlesToStart.values()) {
                        Bundle bundle = tuple.controller.getValue();
                        Deployment dep = tuple.deployment;
                        if (dep.isAutoStart()) {
                            try {
                                int bundleType = packageAdmin.getBundleType(bundle);
                                if (bundleType != BUNDLE_TYPE_FRAGMENT) {
                                    bundle.start(Bundle.START_TRANSIENT | Bundle.START_ACTIVATION_POLICY);
                                }
                            } catch (BundleException ex) {
                                ROOT_LOGGER.cannotStart(ex, bundle);
View Full Code Here

  private void foundPackageAdmin(final ServiceReference reference)
  {
    registerMBean(PackageStateMBean.class.getName(), new Factory<PackageStateMBean>() {
      public PackageStateMBean create()
      {
        PackageAdmin service = (PackageAdmin) ctx.getService(reference);

        if (service == null) return null;
        else return new PackageState(ctx, service);
      }
    }, PackageStateMBean.OBJECTNAME, _packageStateMbean);
View Full Code Here

  {
    public abstract T create(PackageAdmin pa, StartLevel sl);
    public final T create()
    {
      StartLevel sl = null;
      PackageAdmin pa = null;

      ServiceReference slRef = _startLevel.get();
      if (slRef != null) {
        sl = (StartLevel) ctx.getService(slRef);
      }
View Full Code Here

        }
    }

    private void printExportedPackages(String[] ids, PrintStream out, PrintStream err)
    {
        PackageAdmin pa = getPackageAdmin();
        if (pa == null)
        {
            out.println("PackageAdmin service is unavailable.");
        }
        else
        {
            boolean separatorNeeded = false;

            Bundle[] bundles = null;
            if ((ids == null) || (ids.length == 0))
            {
                bundles = m_context.getBundles();
            }
            else
            {
                bundles = new Bundle[ids.length];
                for (int idIdx = 0; idIdx < ids.length; idIdx++)
                {
                    try
                    {
                        long l = Long.parseLong(ids[idIdx]);
                        Bundle b = m_context.getBundle(l);
                        if (b == null)
                        {
                            err.println("Bundle ID " + ids[idIdx] + " is invalid.");
                        }
                        bundles[idIdx] = b;
                    }
                    catch (NumberFormatException ex)
                    {
                        err.println("Unable to parse id '" + ids[idIdx] + "'.");
                    }
                }
            }

            for (int bundleIdx = 0; bundleIdx < bundles.length; bundleIdx++)
            {
                try
                {
                    if (bundles[bundleIdx] != null)
                    {
                        ExportedPackage[] exports = pa.getExportedPackages(bundles[bundleIdx]);
                        if (separatorNeeded)
                        {
                            out.println("");
                        }
                        String title = bundles[bundleIdx] + " exports packages:";
View Full Code Here

    }

    private void _printImportedPackages(Bundle bundle, PrintStream out, PrintStream err)
    {
        // Get package admin service.
        PackageAdmin pa = getPackageAdmin();
        if (pa == null)
        {
            out.println("PackageAdmin service is unavailable.");
        }
        else
        {
            ExportedPackage[] exports = pa.getExportedPackages((Bundle) null);
            String title = bundle + " imports packages:";
            out.println(title);
            out.println(Util.getUnderlineString(title));
            boolean found = false;
            for (int expIdx = 0; expIdx < exports.length; expIdx++)
View Full Code Here

        }
    }

    private void printRequiringBundles(String[] ids, PrintStream out, PrintStream err)
    {
        PackageAdmin pa = getPackageAdmin();
        if (pa == null)
        {
            out.println("PackageAdmin service is unavailable.");
        }
        else
        {
            boolean separatorNeeded = false;

            Bundle[] bundles = null;
            if ((ids == null) || (ids.length == 0))
            {
                bundles = m_context.getBundles();
            }
            else
            {
                bundles = new Bundle[ids.length];
                for (int idIdx = 0; idIdx < ids.length; idIdx++)
                {
                    try
                    {
                        long l = Long.parseLong(ids[idIdx]);
                        Bundle b = m_context.getBundle(l);
                        if (b == null)
                        {
                            err.println("Bundle ID " + ids[idIdx] + " is invalid.");
                        }
                        bundles[idIdx] = b;
                    }
                    catch (NumberFormatException ex)
                    {
                        err.println("Unable to parse id '" + ids[idIdx] + "'.");
                    }
                }
            }

            for (int bundleIdx = 0; bundleIdx < bundles.length; bundleIdx++)
            {
                try
                {
                    if (bundles[bundleIdx] != null)
                    {
                        RequiredBundle[] rbs = pa.getRequiredBundles(
                            bundles[bundleIdx].getSymbolicName());
                        for (int rbIdx = 0; (rbs != null) && (rbIdx < rbs.length); rbIdx++)
                        {
                            if (rbs[rbIdx].getBundle() == bundles[bundleIdx])
                            {
View Full Code Here

    }

    private void _printRequiredBundles(Bundle bundle, PrintStream out, PrintStream err)
    {
        // Get package admin service.
        PackageAdmin pa = getPackageAdmin();
        if (pa == null)
        {
            out.println("PackageAdmin service is unavailable.");
        }
        else
        {
            RequiredBundle[] rbs = pa.getRequiredBundles(null);
            String title = bundle + " requires bundles:";
            out.println(title);
            out.println(Util.getUnderlineString(title));
            boolean found = false;
            for (int rbIdx = 0; rbIdx < rbs.length; rbIdx++)
View Full Code Here

        }
    }

    private void printFragmentHosts(String[] ids, PrintStream out, PrintStream err)
    {
        PackageAdmin pa = getPackageAdmin();
        if (pa == null)
        {
            out.println("PackageAdmin service is unavailable.");
        }
        else
        {
            Bundle[] bundles = null;
            if ((ids == null) || (ids.length == 0))
            {
                bundles = m_context.getBundles();
            }
            else
            {
                bundles = new Bundle[ids.length];
                for (int idIdx = 0; idIdx < ids.length; idIdx++)
                {
                    try
                    {
                        long l = Long.parseLong(ids[idIdx]);
                        Bundle b = m_context.getBundle(l);
                        if (b == null)
                        {
                            err.println("Bundle ID " + ids[idIdx] + " is invalid.");
                        }
                        bundles[idIdx] = b;
                    }
                    catch (NumberFormatException ex)
                    {
                        err.println("Unable to parse id '" + ids[idIdx] + "'.");
                    }
                }
            }

            for (int bundleIdx = 0; bundleIdx < bundles.length; bundleIdx++)
            {
                // Print a separator for some whitespace.
                if (bundleIdx > 0)
                {
                    out.println("");
                }

                try
                {
                    if ((bundles[bundleIdx] != null) && isFragment(bundles[bundleIdx]))
                    {
                        String title = bundles[bundleIdx] + " is attached to:";
                        out.println(title);
                        out.println(Util.getUnderlineString(title));
                        Bundle[] hosts = pa.getHosts(bundles[bundleIdx]);
                        for (int hostIdx = 0;
                            (hosts != null) && (hostIdx < hosts.length);
                            hostIdx++)
                        {
                            out.println(hosts[hostIdx]);
View Full Code Here

        }
    }

    private void printHostedFragments(String[] ids, PrintStream out, PrintStream err)
    {
        PackageAdmin pa = getPackageAdmin();
        if (pa == null)
        {
            out.println("PackageAdmin service is unavailable.");
        }
        else
        {
            Bundle[] bundles = null;
            if ((ids == null) || (ids.length == 0))
            {
                bundles = m_context.getBundles();
            }
            else
            {
                bundles = new Bundle[ids.length];
                for (int idIdx = 0; idIdx < ids.length; idIdx++)
                {
                    try
                    {
                        long l = Long.parseLong(ids[idIdx]);
                        Bundle b = m_context.getBundle(l);
                        if (b == null)
                        {
                            err.println("Bundle ID " + ids[idIdx] + " is invalid.");
                        }
                        bundles[idIdx] = b;
                    }
                    catch (NumberFormatException ex)
                    {
                        err.println("Unable to parse id '" + ids[idIdx] + "'.");
                    }
                }
            }

            for (int bundleIdx = 0; bundleIdx < bundles.length; bundleIdx++)
            {
                // Print a separator for some whitespace.
                if (bundleIdx > 0)
                {
                    out.println("");
                }

                try
                {
                    if ((bundles[bundleIdx] != null) && !isFragment(bundles[bundleIdx]))
                    {
                        String title = bundles[bundleIdx] + " hosts:";
                        out.println(title);
                        out.println(Util.getUnderlineString(title));
                        Bundle[] fragments = pa.getFragments(bundles[bundleIdx]);
                        for (int fragIdx = 0;
                            (fragments != null) && (fragIdx < fragments.length);
                            fragIdx++)
                        {
                            out.println(fragments[fragIdx]);
View Full Code Here

TOP

Related Classes of org.osgi.service.packageadmin.PackageAdmin

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.